-
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
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-04 podpisywanie umów z datą wsteczną
- 2025-02-04 Radio internetowe do starego Androida
- 2025-02-04 "ogrodowa linia napowietrzna"
- 2025-02-04 Warszawa => Senior Account Manager <=
- 2025-02-03 Awaria BNP Paribas
- 2025-02-03 kryminalni i dochodzeniowcy
- 2025-02-03 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-03 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 Puszka w ziemię
- 2025-02-03 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2025-02-03 Kraków => Programista Full Stack .Net <=
- 2025-02-03 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-03 Bez żadnego trybu