做逆向調(diào)試的小伙伴應(yīng)該都遇到過這種問題:在同時(shí)使用兩大神器OD(或Windbg)和IDA逆向某程序時(shí),調(diào)試中模塊基址經(jīng)常變化,而在IDA中默認(rèn)為0x400000(或0x10000000),所以在調(diào)試到某個(gè)點(diǎn)想到IDA整體對(duì)比分析一下的時(shí)候,發(fā)現(xiàn)計(jì)算地址真的好麻煩,特別時(shí)在經(jīng)常需要計(jì)算的時(shí)候,這個(gè)問題尤為明顯。
通常步驟是:
打開calc.exe,切換到程序員項(xiàng)
復(fù)制當(dāng)前地址0xD60F00D,復(fù)制模塊基址0x5200000,算出偏移0x840f00d
復(fù)制IDA中對(duì)應(yīng)模塊基址0x10000000,加上剛才的偏移得到對(duì)應(yīng)在IDA中地址,g跳轉(zhuǎn)到對(duì)應(yīng)地址
下次又要算一次,重復(fù)復(fù)制基址,減偏移,加偏移,如此往復(fù)。
特色功能
支持回車快速計(jì)算
支持windbg 64位地址格式,如00007ff6`6cbe825b
支持多窗口多模塊計(jì)算
支持32位、64位地址
自動(dòng)判斷是否為16進(jìn)制數(shù)據(jù),支持0x,h標(biāo)記,如果是12345之類純數(shù)字無法判斷,最好直接勾選16進(jìn)制選框
支持10進(jìn)制和16進(jìn)制快速轉(zhuǎn)換(也支持回車快速計(jì)算哦!)
描述一次典型使用場景:
復(fù)制調(diào)試中模塊基址粘貼到基址(調(diào)試)框
復(fù)制IDA中模塊基址粘貼到基址(IDA)框
復(fù)制調(diào)試中某地址粘貼到地址1(或地址2)
回車,得到對(duì)應(yīng)IDA中地址1(或地址2)以及偏移1(或偏移2)
再次計(jì)算該模塊其他地址,只需要重復(fù)3、4即可
如果從IDA地址計(jì)算到調(diào)試中,復(fù)制IDA地址到對(duì)應(yīng)地址框,回車即可
如果還需要計(jì)算其他模塊地址轉(zhuǎn)換,點(diǎn)+按鈕新增窗口,重復(fù)1-6即可
如果開窗口太多,在模塊標(biāo)記欄填入模塊名字,防止混亂出錯(cuò)