~/ctf
CTF writeups
Offensive-security methodology from Capture the Flag competitions, written to learn in public: reasoning and approach over flag spoilers. Each competition has its own page with results, context, and writeups by category.
Index
Competitions
Pick an event for its results, format, team, and per-challenge writeups.
October 3-4, 2026
RowdyHacks XII
The University of Texas at San Antonio (UTSA)
1st of 62 teams, all 28 challenges solved, 5,825 points
RowdyHacks is UTSA's annual student hackathon. Its Capture the Flag spanned eight categories, from web and cryptography to binary exploitation and ICS/OT.
28 writeups →
July 2026
BroncoCTF 2026
Santa Clara University
8th of 753 teams, 3,777 points
BroncoCTF is Santa Clara University's jeopardy-style Capture the Flag, with challenges across web, cryptography, forensics, and OSINT.
1 writeup →
July 2026
UIUCTF 2026
SIGPwny, University of Illinois Urbana-Champaign
UIUCTF is the University of Illinois Urbana-Champaign's Capture the Flag, run by the SIGPwny security club and known for hard web and cryptography problems.
1 writeup →
Background
What is a CTF?
A Capture the Flag (CTF) is a legal, sanctioned competition where players solve security challenges to recover hidden tokens called flags. Everything runs against infrastructure the organizers set up for exactly that purpose, so it is a safe way to practice offensive techniques without touching real systems.
These writeups follow a red-team learning approach: enumerate, form a hypothesis, test it, and document what worked and what did not. They describe only authorized practice. There are no live flags, no unauthorized targets, and no guidance for acting against systems you do not own or have explicit permission to test. Each one ends with a short takeaway: the vulnerability, why the exploit worked, and what carries over to real engagements.
Method
How I structure a writeup
Longer writeups follow this outline in full. Short challenge notes keep the challenge, the approach and the takeaway, which is enough to follow a quick solve.
- 01Challenge, event, category, and difficulty
- 02Goal and initial observations
- 03Enumeration and recon
- 04Failed attempts (the useful part)
- 05Breakthrough and solution summary
- 06Takeaway: why it worked and what transfers
- 07Tools used and lessons learned