October 31, 2026
Foothold: A CTF Command Reference That Fills Itself In
A single-page CTF and pentest methodology reference that fills your target details into every command. Three ways in: by phase, by port, orβ¦
By MiraΓ§ Aral
3 min read
Foothold: A CTF Command Reference That Fills Itself In
A single-page CTF and pentest methodology reference that fills your target details into every command. Three ways in: by phase, by port, or paste an Nmap scan.
Every box starts the same way. Nmap, then a dozen tools, the same flags, the same target IP typed over and over. Cheat sheets help β HackTricks, GTFOBins, my own notes β but they're scattered, and I still copy a command and hand-edit it for the target in front of me.
So I built Foothold: a reference that keeps the whole methodology in one place and fills your target details into every command automatically. It runs entirely in the browser β no backend, no database, one file.
Set the target once
At the top is a Target bar: IP, DOMAIN, USER, PASS, HASH, LHOST/LPORT, WORDLIST. Type your values once and every {{VARIABLE}} across the whole interface fills in live β so netexec smb {{IP}} -u {{USER}} -p {{PASS}} becomes a real, copy-ready command everywhere it appears. No more find-and-replace down a cheat sheet.
Three ways in
The same library, reached three ways depending on where you are on a box:
- Playbook β the kill-chain by phase: Recon β Enumeration β Foothold β Privilege Escalation β AD / Lateral β Web β Post.
- By Port β pick a service (21, 22, 88, 445, 1433, 3389, 5985 β¦) and get its commands.
- Scan β paste raw
nmap -sC -sVoutput, a service banner, or just port numbers and names. It pulls out the open ports and the target IP and shows the commands for each.
The Scan view is the one I use most: when I'm stuck I paste what I can see and it drops me on the right reference. And when a scan turns up a port the library doesn't cover yet, it flags it and gives me a one-click Add commands button, pre-filled with that port and a reference link β so the reference grows as I meet new services instead of sending me back to a search engine.
Make it yours
Every built-in command links to the public source it comes from β HackTricks, GTFOBins, official docs β so it's a jumping-off point, not a black box. On top of that it's meant to be lived in:
- Add your own commands from the UI. They get a custom badge and the same
{{variable}}substitution as everything else. - Attach a note to any card β the payload that worked, the creds you found, the gotcha you'll forget by next week.
- Track progress per command, with an unchecked only focus mode for grinding a single box.
- Export / import everything as JSON to move it between machines.
There's no AI and no backend doing this β it's just a design that treats my own notes as first-class content. The library I ship is a starting point; the one I actually use is the one I've been feeding.
How it's built
Foothold is one self-contained index.html β HTML, CSS and vanilla JavaScript, no framework and no build step. The entire command library is a plain DATA array near the top of the file, so adding a service is one object with a title, a command template, a note and a source link. That also means it deploys anywhere static; I host it on GitHub Pages, but dragging the folder onto Vercel or Netlify works just as well.
One honest note on scope: everything in it is reference material compiled from public sources, for authorized testing and CTF practice only.
Try it
I'm filling the library out as I work through more boxes, and the grow-your-own flow means my notes keep folding back into it. If you do CTFs or lab work, open it, set a target, and see if it saves you the retyping.
If something's missing or you'd do it differently, I'd like to hear it.