Skip to content
shellcodes

Series

Shellcode fundamentals

5 posts in this series. Read them in order or jump to any one.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

All posts in this series

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.
Annotated shellcode examples for Linux x86 and x64 — execve /bin/sh and reverse TCP — with the bytes, the disassembly, and the gotchas.
How Linux shellcode works — syscalls, registers, and position-independent code — and how to assemble, encode, and test it safely.
Compare ways to generate shellcode — msfvenom, hand-rolled assembly, and a browser-based generator — with the trade-offs and when to use each.
Turn raw shellcode bytes back into assembly — decode hex and escape formats, disassemble with Capstone, and spot bad characters before you run it.