# Provided files

- `target_vm` (downloaded separately): the real target of the challenge. The final exploit should work on it before testing it on the remote instances.
- `./docker-compose.yaml`: build a docker environment to test specific parts of the challenge.
- `./viewer/viewer.jar`: main java application archive.

# Expected limitations

- DNS requests are blocked.
- Outgoing connections are denied.
- A custom apparmor profile is setup on the real target VM (downloaded separately) but is **not applied** by default on the **Docker testing environment**.

# Some notes regarding the provided challenge

Flag/passwords hardcoded in the VM and in the docker-compose project are different on the remote instances.
Your exploit should work on the provided VM before testing it remotely. 

The `getflag` binary is part of the challenge.

# Apply the restricted apparmor profile on Docker

In order to run the docker-compose setup with the restricted apparmor profile, you should load it as root:

```
# apparmor_parser -r -W ./profiles/docker-custom
```

Then, uncomment the following lines on `./docker-compose.yml`:

```
# [...]
    security_opt:
     - apparmor=docker-custom
# [...]
```

To unload the apparmor profile, you could use the -R flag as root:

```
# apparmor_parser -R ./profiles/docker-custom
```
