> For the complete documentation index, see [llms.txt](https://ret2basic.gitbook.io/ctfwriteup/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf.md).

# Web2 CTF

- [Grey Cat CTF 2024 (web challs)](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/grey-cat-ctf-2024-web-challs.md)
- [pwn.college](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college.md): {"author": \["ret2basic"]}
- [Introduction](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/introduction.md)
- [What is Computer Systems Security?](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/introduction/what-is-computer-systems-security.md): A chain is only as strong as its weakest link.
- [Program Interaction](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-interaction.md)
- [Linux Command Line](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-interaction/linux-command-line.md)
- [embryoio](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-interaction/embryoio.md)
- [Program Misuse](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-misuse.md)
- [Privilege Escalation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-misuse/privilege-escalation.md)
- [Mitigations](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-misuse/mitigations.md)
- [babysuid](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/program-misuse/babysuid.md)
- [Assembly Refresher](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/assembly-refresher.md)
- [x86 Assembly](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/assembly-refresher/x86-assembly.md)
- [embryoasm](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/assembly-refresher/embryoasm.md)
- [Shellcoding](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/shellcoding.md)
- [Introduction](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/shellcoding/introduction.md)
- [Common Challenges](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/shellcoding/common-challenges.md)
- [Data Execution Prevention](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/shellcoding/data-execution-prevention.md)
- [babyshell](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/shellcoding/babyshell.md)
- [Sandboxing](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/sandboxing.md)
- [chroot](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/sandboxing/chroot.md)
- [seccomp](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/sandboxing/seccomp.md)
- [Escaping seccomp](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/sandboxing/escaping-seccomp.md)
- [babyjail](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/sandboxing/babyjail.md)
- [Debugging Refresher](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/debugging-refresher.md)
- [x86 Assembly](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/debugging-refresher/x86-assembly.md)
- [embryogdb](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/debugging-refresher/embryogdb.md)
- [Binary Reverse Engineering](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering.md)
- [Functions and Frames](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/functions-and-frames.md)
- [Data Access](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/data-access.md)
- [Static Tools](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/static-tools.md)
- [Dynamic Tools](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/dynamic-tools.md)
- [Real-world Applications](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/real-world-applications.md)
- [babyrev](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/binary-reverse-engineering/babyrev.md)
- [Memory Errors](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors.md)
- [High-Level Problems](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/high-level-problems.md)
- [Smashing the Stack](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/smashing-the-stack.md)
- [Causes of Corruption](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/causes-of-corruption.md)
- [Canary](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/canary.md)
- [ASLR](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/aslr.md)
- [Causes of Disclosure](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/causes-of-disclosure.md)
- [babymem](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/memory-errors/babymem.md)
- [Exploitation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation.md)
- [Introduction](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation/introduction.md)
- [Hijacking to Shellcode](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation/hijacking-to-shellcode.md)
- [Side Effects](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation/side-effects.md)
- [JIT Spray](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation/jit-spray.md)
- [toddler1](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/exploitation/toddler1.md)
- [Return Oriented Programming](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/return-oriented-programming.md)
- [Binary Lego](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/return-oriented-programming/binary-lego.md)
- [Techniques](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/return-oriented-programming/techniques.md)
- [Complications](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/return-oriented-programming/complications.md)
- [babyrop](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/return-oriented-programming/babyrop.md)
- [Dynamic Allocator Misuse](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse.md)
- [What is the Heap?](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/what-is-the-heap.md)
- [Dangers of the Heap](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/dangers-of-the-heap.md)
- [tcache](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/tcache.md)
- [Chunks and Metadata](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/chunks-and-metadata.md)
- [Metadata Corruption](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/metadata-corruption.md)
- [babyheap](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/dynamic-allocator-misuse/babyheap.md)
- [Race Conditions](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/race-conditions.md)
- [Introduction](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/race-conditions/introduction.md)
- [Races in the Filesystem](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/race-conditions/races-in-the-filesystem.md)
- [babyrace](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/race-conditions/babyrace.md)
- [Kernel Security](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/kernel-security.md)
- [Environment Setup](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/kernel-security/environment-setup.md)
- [Kernel Modules](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/kernel-security/kernel-modules.md)
- [Privilege Escalation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/kernel-security/privilege-escalation.md)
- [babykernel](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/kernel-security/babykernel.md)
- [Advanced Exploitation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/advanced-exploitation.md)
- [toddler2](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwn.college/advanced-exploitation/toddler2.md)
- [pwnable.kr](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr.md): {"author": \["ret2basic"]}
- [fd](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/fd.md): {"author": \["ret2basic"]}
- [collision](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/collision.md): {"author": \["ret2basic"]}
- [bof](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/bof.md): {"author": \["ret2basic"]}
- [flag](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/flag.md): {"author": \["ret2basic"]}
- [passcode](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/passcode.md): {"author": \["ret2basic"]}
- [random](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/random.md): {"author": \["ret2basic"]}
- [input](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/input.md): {"author": \["ret2basic"]}
- [leg](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/leg.md): {"author": \["ret2basic"]}
- [mistake](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/mistake.md): {"author": \["ret2basic"]}
- [shellshock](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/shellshock.md): {"author": \["ret2basic"]}
- [coin1](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/coin1.md): {"author": \["ret2basic"]}
- [blackjack](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/blackjack.md): {"author": \["ret2basic"]}
- [lotto](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/lotto.md): {"author": \["ret2basic"]}
- [cmd1](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/cmd1.md): {"author": \["ret2basic"]}
- [cmd2](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/cmd2.md): {"author": \["ret2basic"]}
- [uaf](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/uaf.md): {"author": \["ret2basic"]}
- [memcpy](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/memcpy.md): {"author": \["ret2basic"]}
- [asm](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/asm.md): {"author": \["ret2basic"]}
- [unlink](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/unlink.md): {"author": \["ret2basic"]}
- [blukat](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/blukat.md): {"author": \["ret2basic"]}
- [horcruxes](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/pwnable.kr/horcruxes.md): {"author": \["ret2basic"]}
- [ROP Emporium](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium.md)
- [ret2win](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium/ret2win.md)
- [split](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium/split.md)
- [callme](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium/callme.md)
- [write4](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium/write4.md)
- [pivot](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/rop-emporium/pivot.md)
- [Jarvis OJ Pwn Xman Series](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/jarvis-oj-pwn-xman-series.md)
- [Jarvis OJ Crypto RSA Series](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/jarvis-oj-crypto-rsa-series.md)
- [picoMini by redpwn](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn.md)
- [Binary Exploitation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn/binary-exploitation.md): {"authors": \["ret2basic"]}
- [Reverse Engineering](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn/reverse-engineering.md): {"authors": \["ret2basic"]}
- [Cryptography](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn/cryptography.md): {"authors": \["ret2basic"]}
- [Web Exploitation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn/web-exploitation.md): {"authors": \["ret2basic"]}
- [Forensics](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picomini-by-redpwn/forensics.md): {"authors": \["ret2basic"]}
- [picoCTF 2021](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picoctf-2021.md): {"participants" : \["ret2basic", "y4y"]}
- [Reverse Engineering](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picoctf-2021/picoctf-2021-reverse-engineering.md): {"author": \["ret2basic"]}
- [Web Exploitation](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picoctf-2021/picoctf-2021-web-exploitation.md): {"authors": \["y4y", "ret2basic"]}
- [Forensics](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picoctf-2021/forensics.md)
- [picoCTF 2020 Mini-Competition](https://ret2basic.gitbook.io/ctfwriteup/web2-ctf/picoctf-2020-mini-competition.md): {"author" : \["ret2basic"]}
