eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJak działa debugger? ramki stosuRe: Jak działa debugger? ramki stosu
  • Data: 2013-05-04 23:04:09
    Temat: Re: Jak działa debugger? ramki stosu
    Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 03.05.2013 08:47, Edek wrote:

    >
    > To jeszcze nic. Mając dowolną labelkę może być wiele dróg, jakimi
    > program do nich doszedł.
    >
    > Ale prawdopodobnie proces jest możliwy,

    IDA tak działa - sprawdza program flow i rejestruje adresy skoków (po
    skoku musimy być na prawidłowej instrukcji) - w ten sposób z czasem
    tworzy graf przepływu sterowania a przy tym ignoruje takie "standardowe"
    sztuczki jak skakanie do segmentu danych(który z o dziwo ma +x ;) ), czy
    skakanie do EIP+2.

    Jest cała szkoła - jak pisać kod tak, żeby debugowanie za pomocą IDY
    było możliwie trudne - jedna z ciekawszych sztuczek(przy czym ma już
    kilka lat, więc pewnie nauczyli się to obchodzić): umieść na początku
    funkcji kilka instrukcji, printf("%s",ESP+xxx), potem skok gdzie
    indziej. Skacz do funkcji za pomocą if(!foo) bar(); else (foo+bar)(); -
    disassembler pójdzie tylko pierwszą ścieżką bo druga jest osiągalna
    tylko w runtime.


    --
    Pozdrawiam
    Michoo

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: