Exploit › Module 7 › Lesson 1
Pwn CTF Types
Name pwn CTF challenge types at literacy level — stack, heap, format, misc — awareness on $PWN_LAB, not invasion recipes.
Visual · t24_pwn_ctf_types
Pwn CTF types = named categories. $PWN_LAB awareness. Original Cyberlium.
Opening
CTF pwn challenges teach memory safety under rules — they are not permission to attack random servers.
Pwn (binary exploitation) CTF categories at literacy level: stack buffer challenges, heap exploitation challenges, format string challenges, integer/memory misc, ret2win-style constrained toys, and sandbox/SECcomp-aware challenges. Analyst awareness: read challenge description, note remote vs local, check rules and time box. Cyberlium names types so YOU recognize lab briefs and authorized CTF platforms — NOT so you transfer skills to stranger production, NOT so you ship step-by-step takeover recipes here. Pair with Module 6: even in CTF, Cyberlium homework stays observe/triage unless separate authorized advanced brief explicitly allows — this module is awareness and naming. Document challenge type label in notes when practicing on $PWN_LAB mirrors.
1. Named challenge types
Stack: overflow-class toys with return address literacy (no chain homework here). Heap: UAF/double-free named. Format: format string read/write named at concept level.
Misc: integer wrap, off-by-one — link to Module 2 corruption classes.
Command guide
Try these commands — Named challenge types
═══ LINUX (Binary Analysis & Reverse Engineering) ═══
Disassemble main function using Intel assembly syntax
Command — copy this
objdump -d -M intel -j .text ./target_binary 2>/dev/null | head -30
Check binary security mitigations (NX, Canary, ASLR, PIE)
Command — copy this
checksec --file=./target_binary 2>/dev/null || readelf -l ./target_binary | grep GNU_STACK
Generate unique cyclic pattern for buffer overflow offset calculation
Command — copy this
python3 -c "
from itertools import product
chars = [b'A', b'B', b'C']
pattern = b''.join(b''.join(p) for p in product(b'ABCDEFGHIJKLMNOPQRSTUVWXYZ', b'abcdefghijklmnopqrstuvwxyz', b'0123456789'))[:128]
print('Cyclic Test Pattern (128 bytes):', pattern.decode())
"GDB debugging session quick start gdb -q ./target_binary (gdb) disassemble main (gdb) info registers
Primary tools to practice this lesson: curl, python3. Reference sites: pwn.college (https://pwn.college/); LiveOverflow (https://www.youtube.com/c/LiveOverflow); CWE-119 (https://cwe.mitre.org/data/definitions/119.html). Run every command in the box — install first, then the usage lines — only on YOUR lab / program scope.
2. Reading a pwn challenge
Note: binary provided, libc version hint, remote service host only inside CTF VPN — never arbitrary internet targets.
Flag format and scoring — ethics: no attacking scoreboard or other teams' infra.
3. Boundary
Awareness on $PWN_LAB and enrolled CTF — not 'pwn types' as excuse for prod testing.
Refused: mapping CTF type names to employer app attack without authorization.
4. What you ship: pwn CTF types card
Six type names + one-line each + CTF-rules awareness + $PWN_LAB scope line.
5. What you record before the next lesson
Pwn CTF types card path.
6. Wrong vs right: weaponized exploits vs memory-safety literacy
Worked failure — same MSF word, opposite target. Right never needs a café Wi-Fi or classmate laptop.
Wrong
Label employer web app as 'stack pwn' and fuzz without scope.
Right
Pwn CTF types card for awareness. Next: pwntools Named.
Mission: pwn CTF types card
1) Name six pwn CTF types one line each. 2) Link two types to Module 2 classes. 3) Write CTF infra ethics line. 4) Write $PWN_LAB-only practice line.
Stuck? Ask Cyberlium AI Mentor
Ask Mentor: “ret2win — literacy label only?”
Knowledge Check
APPLY: Pwn CTF types lesson teaches:
Multiple choice
Knowledge Check
APPLY: True or False: CTF type names justify prod fuzzing.
True or False
Knowledge Check
APPLY: Stack pwn challenges relate to:
Multiple choice