- Open
- Attack & Defense
- Simple
- Infrastructure
- System
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.
Introduction Installation Configuration Usage Features
To install and set up the Oasis project, follow these steps:
Clone the repository:
git clone https://github.com/yourusername/Oasis.git
cd Oasis
For running Oasis, you need podman (docker cannot be used due to avoid using privileged containers) installed and docker-compose or podman-compose. After that you can run the following command to start the Oasis infrastructure:
python3 start.py start
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 based on the configuration given (start_time, end_time, customizable from the oasis json). For special cases, you can use this command.
If you want generate the Oasis json config, edit it and after start Oasis run:
python3 start.py start -C
This will generate the config only, you can start oasis later
To stop the services run:
python3 start.py stop
python3 start.py --clean # Only if you want remove all the volumes and configs
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
SERVICE=ServiceName ACTION=CHECK_SLA TEAM_ID=0 ROUND=0 ./checker.py
Put Flag
SERVICE=ServiceName ACTION=PUT_FLAG TEAM_ID=0 ROUND=0 FLAG=FLAG ./checker.py
Get Flag
SERVICE=ServiceName ACTION=GET_FLAG TEAM_ID=0 ROUND=0 FLAG=FLAG ./checker.py
- 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.