來源:技術(shù)讓夢想更偉大
作者:李肖遙
最近因為做一些反向工作,所以熟悉了這個IDA Pro軟件,其實就是反匯編,把library下的.a文件重新生成.c文件代碼,然后盲測改成差不多符合規(guī)范的C語言代碼。
說來慚愧,這有點偷盜別人技術(shù)的意思,不過好在他們也沒加密使得過程順利了些,這要感謝這款二進制代碼分析工具,下面我們來介紹一下。
一個強大的反匯編器和一個多功能的調(diào)試器
作為反匯編程序的 IDA Pro 能夠創(chuàng)建其執(zhí)行映射,以符號表示(匯編語言)顯示處理器實際執(zhí)行的二進制指令。
IDA Pro 可以從機器可執(zhí)行代碼生成匯編語言源代碼,并使這些復(fù)雜的代碼更具人類可讀性(這個可讀具有相對性)。
調(diào)試功能通過動態(tài)分析增強了IDA,它支持多個調(diào)試目標并且可以處理遠程應(yīng)用程序,其跨平臺調(diào)試功能可實現(xiàn)即時調(diào)試、輕松連接到本地和遠程進程。
IDA的理念是什么
大腦最重要
IDA 反匯編器提供了盡可能多的交互性,反匯編中的任何內(nèi)容都可以修改、操作、重新排列或重新定義。
靜態(tài)拆解受限
僅僅靜態(tài)反匯編并不能說明全部情況,加密或混淆代碼經(jīng)常出現(xiàn)在當今的惡意代碼中;代碼和數(shù)據(jù)之間的確切區(qū)別是一門藝術(shù)而不是一門科學(xué)。
IDA 反匯編器的交互性得到了內(nèi)部腳本語言、Windows 應(yīng)用程序/內(nèi)核調(diào)試器、Linux 應(yīng)用程序調(diào)試器、80×86 Mac OS X 應(yīng)用程序調(diào)試器(支持 32 位和 64 位)等等的補充……
技術(shù)不斷更新
匯編語言向?qū)е豢磶讉€操作碼就知道程序目的的日子已經(jīng)一去不復(fù)返了,今天的病毒和蠕蟲通常是用高級語言編寫的,所以IDA 反匯編會盡可能接近原始源代碼。
安全是重中之重
除了內(nèi)部測試、代碼審查和安全編碼實踐之外,軟件中的漏洞就會直接報告并盡快發(fā)布熱修復(fù)。
IDA 特點
IDA Pro 已成為分析惡意代碼、漏洞研究和商業(yè)現(xiàn)成驗證的事實上的標準,他有很多的優(yōu)點
交互的
IDA Pro 允許人類分析師覆蓋其決定或提供提示,以便分析師可以無縫快速地使用反匯編器并更直觀地分析二進制代碼。
可編程的
IDA Pro 是一個完整的集成開發(fā)環(huán)境,它由一種非常強大的類宏語言(IDC 或 IDAPython)組成,可用于自動化簡單到中等復(fù)雜的任務(wù)。
集成
IDA 在所有標準平臺上運行并處理多個處理器。它還可以加載和反匯編幾乎任何文件格式,從而提高其分析速度。
開放式插件架構(gòu)
IDA 的功能可以通過使用可編程插件輕松擴展。
Lumina服務(wù)器
Lumina 服務(wù)器保存有關(guān)大量知名函數(shù)的元數(shù)據(jù)(名稱、原型、操作數(shù)類型等),并通過用戶搜索幫助改進反匯編列表。
F.L.I.R.T
快速庫識別和識別技術(shù)為許多編譯器識別標準函數(shù)調(diào)用,該技術(shù)使 IDA 能夠識別由支持的編譯器生成的標準庫函數(shù),并大大提高了生成的反匯編的可用性和可讀性。
怎么獲?。?/span>
就像下圖一樣,將build-release里面的文件反編譯為原始代碼,其實是一個很有趣的過程。
如果大家有興趣可以試試,當然軟件也給大家準備好了,回復(fù)
IDA即可獲取。
???????????????? END ????????????????
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。