Free lesson 1 of 9 from Assembly & Low-Level — Speak the CPU’s language — registers, syscalls, and your own working shellcode.. No account, no card.
C compiles to assembly; assembly assembles to the raw bytes the CPU executes. Reverse engineers read it, exploit developers write it, and malware analysts live in it. In this course you'll go from "what is a register" to writing working shellcode that talks straight to the Linux kernel.
ls -la ~/asm/ cat ~/asm/README.txt # the runner, the starter, and the capstone nasm --version; gdb --version
~/asm/runsc executes raw machine code you pipe into it — your playground for running shellcode.
nasm -f bin ~/asm/hello.asm -o /tmp/h.bin && ~/asm/runsc < /tmp/h.bin. What prints?cd ~/asm && nasm -f bin hello.asm -o /tmp/h.bin && ./runsc < /tmp/h.bin # hello from ring 3
"Ring 3" = user mode. You just ran hand-written machine code that made a kernel call. That's the whole course in one line.
⚖️ Write and run code only in your lab or on systems you own.
9 lessons · knowledge checks · final exam · verifiable certificate · in-browser Live-Lab
Unlock all courses · CHF 9/month Buy only this course · CHF 19