This lab will allow you to:
- Understand: the mechanics of three classic network attacks: SYN Flood, TCP Port Scan, and DNS Reflection/Amplification.
- Implement: each attack using Python and Scapy on a virtualized network topology.
- Capture: network traffic and provide evidence that each attack was successfully carried out.
Your goal is to implement the three following attacks from the attacker machine, while capturing the resulting traffic on the target machine.
Lab Presentation
This lab takes place in a small virtualized network composed of four machines:
attacker— the machine from which you will launch the attacks.target— the victim machine receiving the attacks.dns— a simple DNS server used in the reflection attack.monitor— a passive observer connected to the network, used to capture traffic.
📥 Download the Base Lab
To begin the exercise, download the archive below. It contains the full network topology and a code template to help you implement the attacks.
Launching the Lab (Kathará)
This lab uses Kathará, a container-based network emulator. You do not need to know how it works internally. Here are the only commands you need:
# Start all containers — run this at the root of the extracted archive kathara lstart # Open a terminal on a specific machine (attacker, target, dns, monitor) kathara connect <machine> # Stop and destroy all containers when you are done kathara wipe
For more details, refer to the official Kathará documentation.
Step-by-Step Workflow
Step 1 — Answer the preliminary questions. Before the main task, answer a set of questions about the topology and the attacks. You must pass them all to unlock the submission form.
Step 2 — Implement & run the attacks. [1]
Complete the three functions in shared/attacks.py, then on two separate terminals:
# On the target: start capturing traffic BEFORE launching the attacks kathara connect target tcpdump -i eth0 -w /shared/capture.pcap #On the attacker: run your completed attack script kathara connect attacker python3 /shared/attacks.py # Once all attacks are done, stop the capture
Step 3 — Submit capture.pcap using the next task.
The grader will automatically verify that all three attacks are present and generate a detailed report.
| [1] | The port scan should complete in under 5 minutes. Avoid scanning all 65535 ports. |
INGInious