Skip to content

Commit

Permalink
add poetry + goadv3 as main branch + sponsoring + docs modifications
Browse files Browse the repository at this point in the history
  • Loading branch information
Mayfly277 committed Nov 28, 2024
1 parent cd514a7 commit 1f851b9
Show file tree
Hide file tree
Showing 19 changed files with 1,576 additions and 118 deletions.
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
<br>
</div>

**GOADv3 - BETA VERSION**
**GOADv3**

:bookmark: GOADv3 Documentation : [https://orange-cyberdefense.github.io/GOAD/](https://orange-cyberdefense.github.io/GOAD/)
:bookmark: Documentation : [https://orange-cyberdefense.github.io/GOAD/](https://orange-cyberdefense.github.io/GOAD/)

## Description
GOAD is a pentest active directory LAB project.
Expand All @@ -22,6 +22,11 @@ This lab use free Windows VM only (180 days). After that delay enter a license o

## Available labs

- GOAD Lab family and extensions overview
<div align="center">
<img alt="GOAD" width="800" src="./docs/img/diagram-GOADv3-full.png">
</div>

- [GOAD](https://orange-cyberdefense.github.io/GOAD/labs/GOAD/) : 5 vms, 2 forests, 3 domains (full goad lab)
<div align="center">
<img alt="GOAD" width="800" src="./docs/img/GOAD_schema.png">
Expand Down
Binary file added docs/img/diagram-GOADv3-full.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/mkdocs/docs/img/diagram-GOADv3-full.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/mkdocs/docs/img/goad_mini.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 6 additions & 1 deletion docs/mkdocs/docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ title: Game Of Active Directory
<img alt="GOAD" src="./img/logo_GOAD3.png">
</div>

Welcome to [GOAD](https://github.com/Orange-Cyberdefense/GOAD/tree/v3-beta) (v3-beta) documentation !
Welcome to [GOAD](https://github.com/Orange-Cyberdefense/GOAD/) documentation !

Game Of Active Directory is a free pentest active directory LAB(s) project (1).
{ .annotate }
Expand All @@ -27,3 +27,8 @@ This repository was build for pentest practice :slight_smile:

!!! info "Windows Licenses"
This lab use free windows VM only (180 days). After that delay enter a license on each server or rebuild all the lab (may be it's time for an update ;))

!!! example ""
**:heart: Sponsor**<br>
This lab is created and maintained mainly by his creator (Cyril Servières a.k.a @m4yfly) on personal time (~80% personal time / ~20% at Orange Cyberdefense).
If you like it maybe consider sponsoring me : [https://github.com/sponsors/Mayfly277](https://github.com/sponsors/Mayfly277)
1 change: 0 additions & 1 deletion docs/mkdocs/docs/installation/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ The goad management script is now written in :simple-python: python to permit mo

git clone https://github.com/Orange-Cyberdefense/GOAD.git
cd GOAD
git checkout -b v3-beta origin/v3-beta
# verify installation
./goad.sh -t check -l GOAD -p virtualbox

Expand Down
48 changes: 43 additions & 5 deletions docs/mkdocs/docs/installation/linux.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,7 @@

=== "Classic"

- [x] To run the Goad installation/management script you will need :
- Python (version between 3.8 and 3.11) with venv module installed
- To run the Goad installation/management script you will need : **Python version >=3.8** with venv module installed

- Install the python3-venv corresponding to your python version

Expand All @@ -135,9 +134,48 @@
```bash
sudo apt install python3.10-venv
```

!!! bug "Python version"
Be sure to use a python version between **python3.8** and python **3.11**. Others python versions are not supported by now due to incompatibility with the fixed version in the requirements.

- Then you are ready to launch

```
./goad.sh
```

- The script will :
- verify python version >=3.8
- create a venv in `~/.goad/.venv`
- launch python requirements installation
- launch ansible-galaxy collections requirements installation
- start goad.py with the venv created

!!! tip
if you got an error during requirements installation, look at the error and delete `~/.goad/.venv` before try again

!!! tip
if you need to force a python version change the variable `py=python3` to `py=python3.10` for example in the `goad.sh` script

=== "With poetry"

- Install python dependencies:
```
poetry install
```

- Install ansible-galaxy requirements:
- If python < 3.11
```
poetry run ansible-galaxy ansible/requirements.yml
```

- If python >= 3.11
```
poetry run ansible-galaxy ansible/requirements_311.yml
```

- Run goad:
```
poetry run python3 goad.py
```

=== "Provisioning with docker"

Expand Down
9 changes: 4 additions & 5 deletions docs/mkdocs/docs/installation/windows.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@
### Prepare WSL distribution
- Open debian console then :

- Verify you are using python version <= 11
- Verify you are using python version >= 3.8
```bash
python3 --version
```
Expand Down Expand Up @@ -138,11 +138,10 @@
- :simple-python: [python](https://www.python.org/downloads/windows/) on your windows (tested ok with python 3.10)
- :simple-git: [git](https://git-scm.com/downloads/win)

- Clone the goad project: `git clone https://github.com/Orange-Cyberdefense/GOAD`
- Checkout the v3-beta branch :
- Checkout GOAD :
```
cd GOAD
git checkout -b v3-beta origin/v3-beta
git clone https://github.com/Orange-Cyberdefense/GOAD
cd GOAD/
```
- Install python dependencies (choose the noansible file) :
```
Expand Down
39 changes: 39 additions & 0 deletions docs/mkdocs/docs/labs/GOAD-Mini.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# GOAD-Mini

This is a minimalist version of goad with only sevenkingdoms.lab domain. This lab was build for a minimalist base to do test and try extensions.

![goad_mini.png](../img/goad_mini.png)

## Servers
**domain : sevenkingdoms.local**
- **kingslanding** : DC01 running on Windows Server 2019 (with windefender enabled by default)

## Users/Groups and associated vulnerabilites/scenarios

**SEVENKINGDOMS.LOCAL**

- LANISTERS
- tywin.lannister: ACL forcechangepassword on jaime.lanister
- jaime.lannister: ACL genericwrite-on-user joffrey.baratheon
- tyron.lannister: ACL self-self-membership-on-group Small Council
- cersei.lannister: DOMAIN ADMIN SEVENKINGDOMS
- BARATHEON: RDP on KINGSLANDING
- robert.baratheon: DOMAIN ADMIN SEVENKINGDOMS
- joffrey.baratheon: ACL Write DACL on tyron.lannister
- renly.baratheon:
- stannis.baratheon: ACL genericall-on-computer kingslanding / ACL writeproperty-self-membership Domain Admins
- SMALL COUNCIL : ACL add Member to group dragon stone / RDP on KINGSLANDING
- petyer.baelish: ACL writeproperty-on-group Domain Admins
- lord.varys: ACL genericall-on-group Domain Admins / Acrossthenarrossea
- maester.pycelle: ACL write owner on group Domain Admins
- DRAGONSTONE : ACL Write Owner on KINGSGUARD
- KINGSGUARD : ACL generic all on user stannis.baratheon
- AccorsTheNarrowSea: cross forest group


## Computers Users and group permissions

- SEVENKINGDOMS
- DC01 : kingslanding.sevenkingdoms.local (Windows Server 2019) (SEVENKINGDOMS DC)
- Admins : robert.baratheon (U), cersei.lannister (U)
- RDP: Small Council (G)
10 changes: 8 additions & 2 deletions docs/mkdocs/docs/labs/index.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
# Labs

- Practice lab(s) :
- [GOAD](GOAD.md) : 5 vms, 2 forests, 3 domains (full goad lab)
- [GOAD-Light](GOAD-Light.md) : 3 vms, 1 forest, 2 domains (smaller goad lab for those with a smaller pc)
- GOAD familly :
- [GOAD](GOAD.md) : 5 vms, 2 forests, 3 domains (full goad lab)
- [GOAD-Light](GOAD-Light.md) : 3 vms, 1 forest, 2 domains (smaller goad lab for those with a smaller pc)
- [GOAD-Mini](GOAD-Mini.md) : 1 vm, 1 domains (only sevenkingdoms.local, minimalist lab)

![GOADfull](../img/diagram-GOADv3-full.png)

- [SCCM](SCCM.md) : 4 vms, 1 forest, 1 domain, with microsoft configuration manager installed
![SCCM overview](../img/SCCMLAB_overview.png)

- Challenge lab :
- [NHA](NHA.md) : A challenge with 5 vms and 2 domains. no schema provided, you will have to find out how break it.
Expand Down
3 changes: 1 addition & 2 deletions docs/mkdocs/docs/providers/ludus.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@
```bash
git clone https://github.com/Orange-Cyberdefense/GOAD.git
cd GOAD
git checkout -b v3-beta origin/v3-beta # switch to origin/v3-beta branch
sudo apt install python3.11-venv
sudo apt install python3.11-venv # because by default ludus use debian 12 with python3.11
export LUDUS_API_KEY='myapikey' # put your api key here
./goad.sh -p ludus
GOAD/ludus/local > check
Expand Down
2 changes: 1 addition & 1 deletion docs/mkdocs/docs/providers/virtualbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
- winrm-elevated

- Provisioning
- Python3 (version between [3.8, 3.11])
- Python3 >=3.8
- goad requirements
- ansible-galaxy goad requirements

Expand Down
2 changes: 1 addition & 1 deletion docs/mkdocs/docs/providers/vmware.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
- winrm-elevated

- Provisioning
- Python3 (version between [3.8, 3.11])
- Python3 >=3.8
- goad requirements
- ansible-galaxy goad requirements

Expand Down
4 changes: 2 additions & 2 deletions docs/mkdocs/docs/thx.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@

And of course to all the [project contributors](https://github.com/Orange-Cyberdefense/GOAD/graphs/contributors) !

## Enterprise
## Enterprise

- [Orange Cyberdefense](https://www.orangecyberdefense.com/fr/)
- [Orange Cyberdefense](https://www.orangecyberdefense.com/fr/) to give me time to work on the project, and let me put the project in GPL on the Orange Cyberdefense's GitHub repository.
5 changes: 4 additions & 1 deletion docs/mkdocs/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ nav:
- index: labs/index.md
- GOAD: labs/GOAD.md
- GOAD-Light: labs/GOAD-Light.md
- GOAD-Mini: labs/GOAD-Mini.md
- NHA: labs/NHA.md
- SCCM: labs/SCCM.md
- MINILAB: labs/MINILAB.md
Expand Down Expand Up @@ -78,9 +79,11 @@ extra:
- icon: fontawesome/brands/github
link: https://github.com/Orange-Cyberdefense/GOAD
- icon: fontawesome/brands/x-twitter
link: https://github.com/mayfly277
link: https://x.com/M4yFly
- icon: fontawesome/brands/discord
link: https://discord.gg/NYy7rsMf3u
- icon: fontawesome/solid/heart
link: https://github.com/sponsors/Mayfly277
markdown_extensions:
- attr_list
- md_in_html
Expand Down
Loading

0 comments on commit 1f851b9

Please sign in to comment.