Reverse Engineering for Beginners
CHAPTER 7. SCANF() CHAPTER 7. SCANF() By pressing “space”, we can see howIDArepresents a function as a graph: Figure 7.7:Graph m ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() It is possible to fold nodes in this mode and give them names as well (“group nodes”). Let ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() 7.3.3 MSVC: x86 + OllyDbg Let’s try to hack our program in OllyDbg, forcing it to thinksca ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() Whilescanf()executes, in the console we enter something that is definitely not a number, l ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() 7.3.4 MSVC: x86 + Hiew This can also be used as a simple example of executable file patchi ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() Move the cursor to address.00401027(where theJNZinstruction, we have to bypass, is located ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() sub rsp, 56 lea rcx, OFFSET FLAT:$SG2924 ; 'Enter X:' call printf lea rdx, QWORD PTR x$[rs ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() Listing 7.14: Non-optimizing GCC 4.9.1 ARM64 1 .LC0: 2 .string "Enter X:" 3 .LC1: 4 .strin ...
CHAPTER 7. SCANF() CHAPTER 7. SCANF() .text:004006B4 la $t9, puts .text:004006B8 lui $a0, 0x40 .text:004006BC jalr $t9 ; puts .t ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS Chapter 8 Accessing passed arguments Now we figured ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS call _printf add esp, 8 ; return 0 xor eax, eax pop ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS imul eax, [ebp+arg_4] ; 2nd argument add eax, [ebp+a ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS lea eax, DWORD PTR [r8+rcx] ret 0 f ENDP As we can s ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS ; EDX - 3rd argument imul esi, edi lea eax, [rdx+rsi ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS }; int main() { printf ("%lld\n", f(0x11223344556677 ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS The very firstMOV R3, R0, instruction is, apparently ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS #include <stdio.h> #include <stdint.h> u ...
CHAPTER 8. ACCESSING PASSED ARGUMENTS CHAPTER 8. ACCESSING PASSED ARGUMENTS 8.4 MIPS Listing 8.10: Optimizing GCC 4.4.5 .text:00 ...
CHAPTER 9. MORE ABOUT RESULTS RETURNING CHAPTER 9. MORE ABOUT RESULTS RETURNING Chapter 9 More about results returning In x86, t ...
CHAPTER 9. MORE ABOUT RESULTS RETURNING CHAPTER 9. MORE ABOUT RESULTS RETURNING call puts leave ret Let’ s write a bash script t ...
«
1
2
3
4
5
6
7
8
9
10
»
Free download pdf