IDA作為一款支持多個(gè)平臺(tái)系統(tǒng)的反編譯軟件,被各界人員所廣泛使用,功能十分強(qiáng)大。那么IDA在幫助我們反編譯解析文件的過程中,究竟做了一些什么操作呢?
實(shí)際上,IDA本質(zhì)是一個(gè)數(shù)據(jù)庫(kù)應(yīng)用程序,在分析可執(zhí)行文件時(shí),IDA會(huì)自動(dòng)針對(duì)此文件創(chuàng)建和填充數(shù)據(jù)庫(kù),之后我們對(duì)此文件執(zhí)行的一系列修改和操作,最終都只是對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改。IDA強(qiáng)大的地方在于它提供了各種可用于分析和操作數(shù)據(jù)庫(kù)的工具。
一、創(chuàng)建IDA數(shù)據(jù)庫(kù)
當(dāng)我們打開IDA后,選擇“New”新建一個(gè)文件反編譯任務(wù),隨后選擇需要反編譯的文件,此時(shí)IDA會(huì)彈出一個(gè)保存數(shù)據(jù)庫(kù)界面,提示我們?cè)O(shè)置此文件數(shù)據(jù)庫(kù)的保存路徑,保存類型為i64類型,具體如下圖1。
設(shè)置完成之后,一路點(diǎn)擊確定直到文件在IDA中分析完成并打開,此時(shí)我們?cè)跀?shù)據(jù)庫(kù)保存路徑下即可查看到下圖2紅框標(biāo)出的四個(gè)文件。
其中id0類型文件是一個(gè)二叉樹形式的數(shù)據(jù)庫(kù);id1類型文件包含了描述每個(gè)程序字節(jié)的標(biāo)記;nam類型文件包含了與Names窗口顯示的給定程序位置有關(guān)的索引信息;til類型文件則存儲(chǔ)了與數(shù)據(jù)庫(kù)本地類型定義相關(guān)的信息。
一旦出現(xiàn)了上述四個(gè)文件,說明IDA關(guān)于該文件的數(shù)據(jù)庫(kù)創(chuàng)建成功。
二、保存IDA數(shù)據(jù)庫(kù)
創(chuàng)建數(shù)據(jù)庫(kù)成功后,我們可以在IDA中對(duì)反編譯文件進(jìn)行各種編輯操作,當(dāng)我們關(guān)閉文件時(shí),會(huì)彈出下圖3所示的保存數(shù)據(jù)庫(kù)的界面,該界面提供了三個(gè)保存數(shù)據(jù)庫(kù)的選項(xiàng),我們需要按需選擇。
第一個(gè)選項(xiàng):Don not pack database(不打包數(shù)據(jù)庫(kù)),使用此選項(xiàng),則數(shù)據(jù)庫(kù)的四個(gè)文件將不會(huì)被打包成一個(gè)IDB文件,建議不要使用此選項(xiàng)。
第二個(gè)選項(xiàng):Pack database (Store)(不壓縮打包數(shù)據(jù)庫(kù)),使用此選項(xiàng),會(huì)將上述的四個(gè)數(shù)據(jù)庫(kù)文件通過“不壓縮”的形式打包成一個(gè)文件,建議使用此選項(xiàng)。
第三個(gè)選項(xiàng):Pack database (Deflate)(壓縮打包數(shù)據(jù)庫(kù)),使用此選項(xiàng),會(huì)將上述的四個(gè)數(shù)據(jù)庫(kù)文件通過“壓縮”的形式打包成一個(gè)文件。
我們選擇第二個(gè)選項(xiàng)進(jìn)行數(shù)據(jù)庫(kù)保存,保存過后即會(huì)生成一個(gè)i64格式的數(shù)據(jù)庫(kù)文件,如圖4。通過雙擊該數(shù)據(jù)庫(kù)文件可快速在IDA中打開到上一次編輯時(shí)的狀態(tài)界面。
三、IDA數(shù)據(jù)庫(kù)的好處
IDA將某個(gè)可執(zhí)行文件解析后保存到數(shù)據(jù)庫(kù)中,從速度角度出發(fā),我們?cè)俅未蜷_此文件時(shí),不需要再重復(fù)解析第二次,節(jié)省了計(jì)算機(jī)資源;從安全角度出發(fā),當(dāng)我們?cè)诜治鰫阂廛浖r(shí),無(wú)需重復(fù)在分析人員之間傳遞惡意軟件本身,我們只需要傳遞惡意軟件的分析數(shù)據(jù)庫(kù)即可。
打開數(shù)據(jù)庫(kù)的方式也很方便,在Open菜單中,我們選擇打開的類型為i64類型,然后找到數(shù)據(jù)庫(kù)文件打開就可以了。
IDA通過數(shù)據(jù)庫(kù)的方式進(jìn)行文件反編譯編輯與保存,同時(shí)保障著我們的使用安全。了解這方面的相關(guān)知識(shí),有利于我們對(duì)IDA的進(jìn)一步使用
京ICP備09015132號(hào)-996 | 違法和不良信息舉報(bào)電話:4006561155
© Copyright 2000-2026 北京哲想軟件有限公司版權(quán)所有 | 地址:北京市海淀區(qū)西三環(huán)北路50號(hào)豪柏大廈C2座11層1105室
北京哲想軟件集團(tuán)旗下網(wǎng)站:哲想軟件 | 哲想動(dòng)畫