Pokaż wyniki 1 do 7 z 7

Temat: return to esp

  1. #1
    Zarejestrowany
    Aug 2009
    Postów
    236

    Domyślnie return to esp

    no i znowu mam problem
    dowiedzialem sie ostatnio o technice return to esp - sposobie na ominiecie aslr
    ale niestety nie jestem w stanie zrozumiec wszystkiego co pisze autor i tu prosze was o pomoc byscie mi w skrocie mogli wyjasnic na czym to polega
    nie osadzajcie mnie od razu o lenistwo po prostu nie kminie a przeczytalem to juz kilka razy
    ogolnie to zrozumialem tak ze trzeba umiescic shellcode na stosie (zadna nowosc xd) i znaleźć w kodzie instrukcje ktora skacze na stos - ok to kminie autor pisze ze nalezu znaleźć sekwencje FF E4 lub FF D4
    no ok ale gdzie tego szukac i jak za pomoca tego wrocic na stos aby wykonac shellcode
    czy adresem tych sekwencji nalezy nadpisac EIP by skoczyl do nich u powrocil na stos?
    czy shellcode umieszczony gdzie kolwiek na stosie po skoku dzieki tej sekwencji wykona shellcode?

  2. #2
    Zarejestrowany
    Jan 2009
    Postów
    230

    Domyślnie

    FF E4 is the x86 opcode for "jump to stack pointer (jmp ESP)"
    FF D4 : call esp
    tak wiec adres w pamieci gdzie istnieje ta sekwencja ladujemy do eip dalej sie ona wykonuje skaczac do naszego shellcodu.

    Return-oriented exploiting : Ochrona sieci, bezpieczeństwo systemów komputerowych – securitymag.pl
    http://centrum.bezpieczenstwa.pl/art...h07_opcode.pdf


  3. #3
    Zarejestrowany
    Aug 2009
    Postów
    236

    Domyślnie

    i to wszystko? nic wiecej? wielkie dzieki za odpowiedź
    ten drógi artykuł jest świetny

  4. #4
    Zarejestrowany
    May 2010
    Postów
    184

    Domyślnie

    No ale chyba adres tego musi byc w stalej pamieci, inaczej to nie ma sensu.
    wrzucasz adres tego stalego adresu w miejsce jakiegos adresu powrotu, a dalej swoj szelkod.
    jak jakas funkcja 'wroci', to zdejmie ze stosu adres 'jmp esp', a jmp esp skoczy do twojego szelkodu.

  5. #5
    Zarejestrowany
    Aug 2009
    Postów
    236

    Domyślnie

    no tak adres musi byc staly, czyli trzeba skorzystac z biblioteki nierelokowalnej z tego co czytalem
    ile takich bibliotek jest w linuxie?
    czy mozna odwolac sie do kazdej z bibliotek byle by tylko byla sekwencja FF E4 FF D4 ?

  6. #6
    Zarejestrowany
    May 2010
    Postów
    184

    Domyślnie

    nie koniecznie.
    jesli przekazujesz program do stalej pamieci, to moze byc dowolny kod ktory wykona co chcesz.
    jesli wiesz ze jest jakas biblioteka pod jakims adresem, i jest w pamieci bez NX, to mozesz, czemu nie.

  7. #7
    Zarejestrowany
    Aug 2009
    Postów
    236

    Domyślnie

    ale znowu na to zabezpieczenie nx wymyslili return oriented exploiting wymiennie programing
    bede musial sie bardziej zaglebic w ten temat
    no ok return oriented programing itp
    a jak ominac kanarki smierci? czytalem jak zrobic to lokalnie, a zdalnie? znasz moze jakis sposob? dobrze by bylo jak bys znal nazwe tej techniki reszty doszperam sie sam^^

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52