Published onAugust 3, 2026Pwn Learning Path #9: Planning My First ret2libc Leakpwn-learning-pathpwnret2libcropgot-pltMy current pwn milestone: understand the two-stage ret2libc flow from a puts leak to a calculated system("/bin/sh") call.
Published onAugust 2, 2026Pwn Learning Path #8: A Real Compiler-Generated MOVAPS Crashpwn-learning-pathpwnropssestack-alignmentReproducing the ROP alignment problem with normal C SSE intrinsics and inspecting the MOVAPS instruction generated by GCC.
Published onAugust 1, 2026Pwn Learning Path #7: Fixing a ROP Stack Alignment Crashpwn-learning-pathpwnropstack-alignmentgdbThe payload reached win but still crashed: diagnosing MOVAPS, understanding 16-byte alignment, and fixing the chain with one RET.
Published onJuly 31, 2026Pwn Learning Path #6: Finding RIP Offsets With Cyclic Patternspwn-learning-pathpwnbuffer-overflowgdbpwntoolsWhy I stopped guessing buffer-overflow offsets, how to inspect RSP when RET crashes, and how a cyclic pattern revealed offset 93.
Published onJuly 30, 2026Pwn Learning Path #5: Controlling Three Function Argumentspwn-learning-pathpwnropret2wincalling-conventionAdding RDX to the chain completed my first three-register ROP setup and reinforced how the AMD64 calling convention shapes payloads.