trasovadlo na nezname binarky
Ales Horak
hales na charon.fi.muni.cz
Čtvrtek Září 23 10:25:57 CEST 1999
Dzon <dzon na writeme.com> pise:
>> > > Kdo znate afdp, vite co mam na mysli: neco maleho co by dokazalo
>> > > trasovat program po assemblerovych instrukcich tak, aby bylo videt
>> > > co program prave dela [vc. graf. obrazovek].
>> > gdb ? Ty graficke obrazovky jsou ale problem...
>> Vzdalene z jinyho pocitace pres telnet/ssh? Jinak je to prikaz myslim
>> 'si'.
>Coze? proc vzdalene?
jiste, pro to neni zadny duvod. jen mozna kdyz se jedna o nejakou
konzolovou grafiku, pak muzu pres ssh odjinud program trasovat bez
jakekohokoliv vizualniho naruseni behu programu (prepinani konzoli).
>Kdysi jsem na DO$u cracknul asi dve veci [trasovani az k bodu zlomu,
>bod zlomu zjistim tim ze koukam co mi 'vec' ukazuje, vc. grafiky],
>tak me zajimalo jestli je neco podobneho mozne se soucasnymi nastroji
>na Linuxu.
>What does 'si' do? %-(
(gdb) help si
Step one instruction exactly.
Argument N means do this N times (or till program stops for another
reason).
ja jsem na tohle uspesne nekolikrat pouzil kombinaci:
- objdump --disassemble binarka > binarka.asm
- vi binarka.asm
- gdb binarka
- disp/i $pc ... zobrazuje po kazdem kroku nasledujici instrukci
- tb *0xYYYYYYY ... init adresa z binarka.asm
- r
- si nebo ni, atd. ... krokovat, breakpointovat apod. ve vi pritom
(patricne syntaxhighlightovany) sleduju, kde
jsem v kodu, a muzu si jej doplnovat o
komentare.
rekl bych, ze nekde by melo existovat i neco pritulnejsiho (tyhle dve veci
by meli jit celkem jednoduse spojit, neumi to treba emacs?), ale i tak to
jde.
--
Ales Horak
Fakulta informatiky
Masarykova Univerzita Brno
Další informace o konferenci Linux