Shellcode Basics: Build Environment, Required Tools and Series Resources
· 12:10 · Watch on YouTube ↗
Summary
A shellcode-series introduction covers the Flare VM setup, NASM and Visual Studio Code, course scripts, runtime API resolution using PEB traversal and hashed exports, and assembling 32-bit shellcode as a raw binary.
Key points
- The demonstrated build environment uses Flare VM, Visual Studio Code and NASM; the presenter recommends checking that NASM is installed and available in the command-line path.
- Course resources include an assembly template and Python scripts for generating API hashes and XOR-encrypting shellcode with an unpacking stub.
- The shellcode resolves modules by walking the Process Environment Block (PEB), then locates APIs by parsing PE exports and matching hashes instead of using API-name strings.
- The example assembles 32-bit shellcode into a raw binary without a PE or ELF file format, so the operating system cannot treat it as a normal executable file.
- The series plans to cover debugging with WinDbg and x64dbg and disassembly with IDA; the eventual example is expected to perform a basic action such as displaying a message box.
