Download presentation
Presentation is loading. Please wait.
1
Reversing an Executable
Ones and Zeros are hard to read, right? (… Actually, yes)
2
What even is a Binary? Technically, it’s a bunch of bits (ones and zeros) BUT EVERYTHING ON COMPUTERS IS BINARY?!?!1!ONE?!? For us: a compiled program.
3
Disassembly? Machine language
Tools: radare2, GDB, IDApro (super fancy) I am not an expert with these tools.
4
Wait, there has to be an Easier way…
Strings! Strings <filename> will print out all strings in the passed file. Can use on binaries too! Hardcoded passwords == BAD This is a good starting point
5
Reverse Engineering a Binary
Analyzing machine language to interpret what the program does. Commands for radare2: r2 <Executable name> aa – Analyze all symbols afl – List all functions <function name> - Print Disassembled Function
6
Commands: Continued Useful gdb commands:
gdb <executable> - Opens gdb on the specified file. break <function name/ *address> - sets a breakpoint info registers – displays the contents of the registers set $addr val – sets the value at $addr to val disassemble <function name> For more fun things, see instructions.txt!
7
Can you Solve ‘em? Go to our Dawgden page. Go to Documents
Intro_To_Reversing c1.txt and c2.txt are both binary executables. Try breaking them! Hint for c1: It’s a good starting point Hint for c2: You don’t even need to guess a password. . .
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.