Hacking - The Art of Exploitation, 2nd Edition
Programming 27 0x080483a3 <main+31>: mov DWORD PTR [esp],0x80484d4 0x080483aa <main+38>: call 0x80482a8 <_init+56 ...
28 0x200 The display format also uses a single-letter shorthand, which is optionally preceded by a count of how many items to ex ...
Programming 29 This is slightly confusing, because sometimes the term word also refers to 2-byte values. In this case a double w ...
30 0x200 The first four bytes are shown both in hexadecimal and standard unsigned decimal notation. A command-line calculator pr ...
Programming 31 variable i for the for loop. If that memory is examined right now, it will contain nothing but random garbage. Th ...
32 0x200 (gdb) x/10i $eip 0x804838b <main+23>: cmp DWORD PTR [ebp-4],0x9 0x804838f <main+27>: jle 0x8048393 <main ...
Programming 33 first instruction is another mov instruction that will write the address 0x8048484 into the memory address contai ...
34 0x200 022 18 12 DC2 122 82 52 R 023 19 13 DC3 123 83 53 S 024 20 14 DC4 124 84 54 T 025 21 15 NAK 125 85 55 U 026 22 16 SYN 1 ...
Programming 35 (gdb) x/6cb 0x8048484 0x8048484: 72 'H' 101 'e' 108 'l' 108 'l' 111 'o' 32 ' ' (gdb) x/s 0x8048484 0x8048484: "He ...
36 0x200 familiar address of EBP minus 4 into the EAX register. The execution of this instruction is shown below. (gdb) x/i $eip ...
Programming 37 (gdb) disass main Dump of assembler code for function main: 0x08048374 <main+0>: push ebp 0x08048375 <ma ...
38 0x200 the English language, knowledge of low-level programming concepts can assist the comprehension of higher-level ones. Wh ...
Programming 39 at the end is used as a delimiter character to tell any function that is dealing with the string to stop operatio ...
40 0x200 Function "strcpy" not defined. Make breakpoint pending on future shared library load? (y or [n]) y Breakpoint 2 (strcpy ...
Programming 41 The address in EIP at the middle breakpoint is different because the code for the strcpy() function comes from a ...
42 0x200 only be in one of 2^32 possible bit combinations. This allows 32-bit signed integers to range from −2,147,483,648 to 2, ...
Programming 43 printf("The 'unsigned int' data type is\t %d bytes\n", sizeof(unsigned int)); printf("The 'short int' data type i ...
44 0x200 pointer.c #include <stdio.h> #include <string.h> int main() { char str_a[20]; // A 20-element character arr ...
Programming 45 7 char *pointer2; // And yet another one 8 9 strcpy(str_a, "Hello, world!\n"); 10 pointer = str_a; // Set the fir ...
46 0x200 addressof.c #include <stdio.h> int main() { int int_var = 5; int *int_ptr; int_ptr = &int_var; // put the add ...
«
1
2
3
4
5
6
7
8
9
10
»
Free download pdf