hotwa.sh How it works Live range
Seeded red & blue cyber range

Every team gets a different, unbreakable instance.

Hotwash turns one authored challenge into a per-team seeded variant, then re-solves it automatically before release. A leaked flag is worthless to everyone else — and traceable to whoever leaked it. Nothing ships broken, because an independent solver has already proven it.

❯ hotwash engage serve --scenario ransomware

Two guarantees, everything else serves them

🎯

Uncopyable flags

Each team's flag derives from its seed. Share it and it's simply wrong for the next team — and the submission log points back to the owner.

✓

Never-broken challenges

Before any instance is served, an independent solver recovers every flag from the generated artifacts or live target. An instance that can't be solved is never handed out.

⚔

Red & blue, first-class

Offensive and defensive challenges share one model, one scoreboard, one report — including detection-engineering challenges graded on rules you write.

Live attack & defend

Red works a real kill chain against a seeded network. Every move emits telemetry; a behaviour-analytics layer raises alerts to blue, who remediates in real time.

Cut the attacker's active path — isolate a host, disable an account, patch a service — and that's a point for defense. Red has to find another way, or get contained before the clock runs out.

reconenumerateinitial access cred accesslateralprivescobjective

One binary, three modes

Training — offline, single player Events — teams, scoreboard, live targets Classroom — LTI 1.3, graded Air-gapped ready After-action reports