Presentation is loading. Please wait.

Presentation is loading. Please wait.

Reversing an Executable

Similar presentations


Presentation on theme: "Reversing an Executable"— Presentation transcript:

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. . .


Download ppt "Reversing an Executable"

Similar presentations


Ads by Google