Series
Shellcode fundamentals
5 posts in this series. Read them in order or jump to any one.
- What is shellcode? A complete guide
Shellcode explained: what it is, why exploits use it, how it is written and encoded, and how to generate and test it safely in your browser.
- Shellcode examples: Linux x86 and x64, byte by byte
Annotated shellcode examples for Linux x86 and x64 — execve /bin/sh and reverse TCP — with the bytes, the disassembly, and the gotchas.
- Linux shellcode explained: from C to bytes
How Linux shellcode works — syscalls, registers, and position-independent code — and how to assemble, encode, and test it safely.
- How to generate shellcode (3 ways, compared)
Compare ways to generate shellcode — msfvenom, hand-rolled assembly, and a browser-based generator — with the trade-offs and when to use each.
- How to decode and disassemble shellcode
Turn raw shellcode bytes back into assembly — decode hex and escape formats, disassemble with Capstone, and spot bad characters before you run it.