Commit 653bd234 authored by Chris James's avatar Chris James

updated slides with notes and README

parent f4eb9603
......@@ -12,5 +12,7 @@ Each of the folders comes with a set of questions and answers, and a walkthrough
Early on, most of the files are sitting in the same folder as the binary itself, but in later stages I've placed one or more of the files in ".zip" archives to dissuade you from looking at them too quickly, and rather to try a little harder before looking at the answers/solution.
If you've only the PDF version of the slides, make sure to check out the last two pages for references and notes about each slide's topics. The notes are also available on the presentation slides at .
Please don't hesitate to contact me at with any questions, comments, or suggestions about any of this! I hope you enjoy this as much as I have in making it, and wish you luck on your road to understanding. Happy hacking!
The presentation on google has notes on every slide with resources concerning the various aspects of reversing:
But I've also compiled a list of the notes and which slides they're from:
0x11: Compiling source
Working with Hexadecimal:
High-level article on compilers:
Commands Used: cat, gcc
0x12: Looking at the Binary
What is File Magic?:
Commands used: file, strings, xxd, less, objdump, grep,
For help with these commands, just use `man <command>` to show the manual pages.
For information on how linux PIPES (“|”) work, check out:
0x20: Memory and Registers
Subject matter learned in Computer Organization: processor pipelining, memory types vs speed, Instruction decoding.
High-level Register reference:
0x21: Memory
Virtual-Physical memory mapping learned in OS
High-level overview of Linux Memory Management:
0x22: Process memory layout
Elf File format:
Process memory overview:
Take note that the above link reverses address direction (high-on-top) whereas the better way is (low-on-top)
0x23 Registers:
Learned about memory timings and CPU caching in Comp Org
Register reference:
Syscall table:
0x31: Assembly Instructions
High-level overview of Assembly:
x86 Instruction reference:
Video tutorial of basic assembly:
0x32: Function Prologue and Epilogue
Look here for which registers are preserved across function/syscalls:
Stack frame layout on x86-64:
Ridiculously drawn (with terrible audio) but accurate:
0x33: Stack Frames
Use `man ascii` to see what ordinal values correspond to which letters of the alphabet! (or visit a page like
0x34: Quick note about Endianness
More about endianness:
0x40: Radare2
Official radare2 repo (with install instructions):
My custom radare2 Cheat Sheet:
Unofficial radare2 Cheat Sheet (a little outdated):
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment