Exploits

631 views

Published on

Presentation about exploits and how to prevent them. It was presented on http://devclub.eu meet up

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
631
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Exploits

  1. 1. 0011100100010001001011011001011011010001000100010111000ЭКСПЛОЙТЫ0010001000100101111001001011010001010110010111000101001ДМИТРИЙ1001000100010011101000001001010001ЖУЧКОВ01000100010110001000000011011001000100010010110110010010110100010001
  2. 2. <script>alert(xss)</script>
  3. 3.  EAX EBX ECX EDX EIP – instruction pointer ESP – stack pointer
  4. 4. MOV A,BA B
  5. 5.  SUB A,B ADD A,B DIV A,B AND A,B OR A,B XOR A,B et al.
  6. 6. PUSH A POP A ESP ...
  7. 7. void foo(int k, int j){ push ebp; mov ebp, esp; char buf[256]; sub esp, 256; ... mov esp, ebp; pop ebp;} ret;int main(){ push 2; push 1; foo(1, 2); call foo; add esp, 8;}
  8. 8. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: ...EIP -> 20 push 2; 21 push 1; 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  9. 9. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: ... 20 push 2;EIP -> 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  10. 10. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: ... Параметр 1 20 push 2; 21 push 1; Параметр 2EIP -> 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  11. 11. foo:EIP -> 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  12. 12. foo: 01 push ebp;EIP -> 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  13. 13. foo: 01 push ebp; 02 mov ebp, esp;EIP -> 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  14. 14. foo: buf[256] 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256;EIP -> ... 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  15. 15. foo: buf[256] 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ...EIP -> 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  16. 16. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp;EIP -> 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  17. 17. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp;EIP -> 12 ret;main: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ... ...
  18. 18. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фреймEIP -> 23 add esp, 8; EIP возврата ... ...
  19. 19. foo: 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; ... 10 mov esp, ebp; 11 pop ebp; 12 ret;main: ... 20 push 2; 21 push 1; 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возвратаEIP -> ... ...
  20. 20. foo: buf[256] 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256;EIP -> ... 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата [23] ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ...
  21. 21. foo: buf[256] 01 push ebp; 02 mov ebp, esp; 03 sub esp, 256; «полезная нагрузка»EIP -> ... 10 mov esp, ebp; 11 pop ebp; 12 ret; Старый фреймmain: EIP возврата ... Параметр 1 20 push 2; 21 push 1; Параметр 2 22 call foo [01]; Старый фрейм 23 add esp, 8; EIP возврата ...
  22. 22. ••

×