Skip to content

TheRomanXpl0it/Oasis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Oasis

  • Open
  • Attack & Defense
  • Simple
  • Infrastructure
  • System

Introduction

Oasis is an open-source project designed to provide a simple and robust infrastructure for attack and defense simulations. It facilitates cybersecurity training and testing through various components and services.

Table of Contents

Introduction Installation Usage Features Configuration Documentation

Installation

To install and set up the Oasis project, follow these steps:

Clone the repository:

git clone https://github.com/yourusername/Oasis.git
cd Oasis

Install sysbox (you need to use a fixed version of sysbox in this repository until the official release will be released and the issue will be fixed):

📦 Sysbox .deb files here (for x86 and arm64)

If you can't install sysbox you can still run Oasis but using privileged docker mode, that is not recommended for security reasons.

Create compose.yml file:

python3 start.py start

if you want to use privileged mode, you can use the following command:

#UNSAFE, DON'T SHARE VMs WITH UNTRUSTED USERS
python3 setup.py start --privileged

Build the Docker containers:

docker compose up -d --build

To connect to the VMs, you need to use one of the wireguard configurations in the wireguard folder.

Instead you can run python3 start.py compose exec team<team_id> bash to connect to the VMs.

To manage the game network run:

python3 start.py compose exec router ctfroute unlock|lock

This will be automatically handled by the game server. For special cases, you can use this command.

To stop the services run:

python3 start.py stop
python3 start.py --clean # Only if you want remove all the volumes and configs

Usage

Running Services To run the services included in the Oasis project:

Navigate to the appropriate service directory, for example:

cd gameserver/checkers

Execute the service using the provided scripts:

python checker.py

Check SLA

ACTION=CHECK_SLA TEAM_ID=0 ROUND=0 ./checker.py

Put Flag

ACTION=PUT_FLAG TEAM_ID=0 ROUND=0 FLAG=FLAG ./checker.py

Get Flag

ACTION=GET_FLAG TEAM_ID=0 ROUND=0 FLAG=FLAG ./checker.py

Features

  • Attack and Defense Simulations: Simulate various cybersecurity attack and defense scenarios.
  • Multiple Services: Includes services like Notes and Polls with checkers and exploits for each.
  • Infrastructure Setup: Uses Docker Compose for easy setup and management of the infrastructure.
  • Extensible: Easily add new services, checkers, and exploits.

Configuration

Docker Compose

The compose.yml file includes configurations for setting up the necessary Docker containers and networks. Adjust the configurations as needed for your environment.

Documentation

For detailed documentation on each component and service, refer to the respective README.md files in their directories:

  • Checkers
  • Exploits
  • Service 1 - Notes
  • Service 2 - Polls