This document provides an introduction to shellcoding, which involves exploiting software vulnerabilities to insert and execute a custom payload. It discusses prerequisites like assembly language and memory structure. Key topics covered include the program stack, calling conventions, system calls, and writing shellcodes to reference data, print to stdout, and execute a program. The document concludes by outlining the steps to create a reverse shell shellcode that connects back to an attacker's server.
Related topics: