Project 69: Brute-Force Detection Simulation

Module: Module 7: Wireless, Systems & Mobile Security  |  Level: Intermediate  | 
Primary tool: Fail2ban (free, open-source) + Hydra  |  Estimated time: 75–120 minutes

Objective: Generate an authorized brute-force attempt and confirm your defensive tool actually blocks it.

Free lab environment

LetsDefend (free tier) + CyberDefenders (free challenges) — https://letsdefend.io/ and https://cyberdefenders.org/blueteam-ctf-challenges/

Both platforms offer free-tier SOC-analyst simulations with real (sanitized) logs, alerts, and packet captures, so you can practice detection and triage without needing your own production environment.

Lab workflow

  1. Access the free lab scenario (OverTheWire Bandit for the attack side; your own VM with Fail2ban for the defense side) and read the provided context before looking at any alert.
  2. Using Fail2ban (free, open-source) + Hydra, review the available logs/alerts with the specific goal of learning to generate an authorized brute-force attempt and confirm your defensive tool actually blocks it.
  3. For each candidate indicator, write down why it is suspicious in plain English before deciding it’s a true positive — this discipline avoids alert-fatigue-driven guessing.
  4. Draft the detection rule or logic (in plain English or pseudocode) that would have caught this automatically in the future.
  5. Cross-check your conclusion against the platform’s model answer or scoring, if provided, and note any gap between your reasoning and the expected answer.
  6. Write up your finding as a short incident note: what happened, how you knew, what you’d do next.

Evidence & screenshot requirements

Submit the following with your report (see this module’s practical assignment for exact upload details):

  • Fail2ban’s log showing it banned the offending source after threshold attempts
  • your written summary of the exact threshold/window you configured and why

Expected deliverable

A concise lab-report entry containing: scope/target, exact commands or payloads used, your key
observation, the required screenshots above, and — where applicable — the specific remediation for what
you found. Vague answers (“sanitize input”, “use a firewall”) without naming the exact mechanism will not
receive full credit.

Safety & authorization

Only test the specific free lab target named above, or infrastructure you personally own. Do not target
third-party systems, real user accounts, or production services without explicit written authorization.
Never deploy anything from this project outside an isolated lab environment.