
IDA反匯編工具 V7.5 中文免費版

- 軟件授權(quán): 免費軟件
- 軟件類型: 國產(chǎn)軟件
- 軟件語言: 簡體中文
- 更新時間: 2022-01-15
- 軟件評分:
- 軟件大小: 49.99M
- 應(yīng)用平臺:
軟件介紹 下載地址
IDA Pro是一款非常專業(yè)的交互式反匯編工具,可將機器代碼轉(zhuǎn)換為人類可讀的格式。軟件提供語法高亮、代碼折疊、編譯錯誤提示等多項功能,為二進制分析領(lǐng)域的未來發(fā)展奠定了堅實的基礎(chǔ),非常實用。
【軟件功能】
IDA Pro是反匯編程序
反匯編程序是一種軟件,用于將機器代碼轉(zhuǎn)換為人類可讀的格式,稱為匯編語言。
我們每天使用的軟件的源代碼并不總是可用。像IDA Pro這樣的反匯編程序能夠創(chuàng)建它們的執(zhí)行映射,以處理器名義以稱為匯編語言的符號表示形式顯示實際由處理器執(zhí)行的二進制指令。通過這種反匯編過程,軟件專家可以分析懷疑是惡意軟件的程序,例如間諜軟件或惡意軟件。但是,匯編語言很難閱讀和理解。這就是為什么在IDA Pro中實施了高級技術(shù)以使該復(fù)雜代碼更具可讀性的原因。在某些情況下,可以將二進制程序還原到相當(dāng)接近的水平,還原為生成二進制程序的原始源代碼。然后可以對該程序的代碼圖進行后處理以進行進一步調(diào)查。
想法圖標也可以看看:
–我們的理念
–支持的處理器
–支持的文件類型
–IDA調(diào)試器概述
–IDA支持,文檔和教程
–使用IDA的令人信服的理由
想法圖標需要獲取高級代碼嗎?
獲取我們的反編譯器并贏得寶貴的時間。甚至還有一個免費的有限演示版供您嘗試…
IDA Pro是調(diào)試器
調(diào)試器是一種計算機程序,可幫助檢測和糾正其他計算機程序中的錯誤。
在軟件分析中(就像在現(xiàn)實生活中一樣),事情很少簡單明了。惡意代碼通常不與分析人員合作。病毒,蠕蟲和特洛伊木馬程序的創(chuàng)建者通常以一種混淆的方式編寫其代碼,這使得閱讀和分析變得異常困難。因此,需要更強大的工具來有效地幫助分析師。IDA Pro中的調(diào)試器通過允許用戶單步執(zhí)行要研究的代碼來補充反匯編程序的靜態(tài)分析功能(在不執(zhí)行程序的情況下檢查代碼)。通過這種方式,調(diào)試器通常會繞開混淆,并幫助獲取功能更強大的靜態(tài)反匯編程序?qū)⒛軌蜻M行深度處理的數(shù)據(jù)。
IDA Pro可在Windows,Linux和Mac OS X上運行,并可以調(diào)試各種特定平臺(Windows 32/64位,Linux 32/64位,OS X x86/x64,iOS,Android等)。這可以在本地或遠程執(zhí)行。遠程調(diào)試器對于安全地剖析潛在有害的程序非常有用。一些IDA調(diào)試器還可以在虛擬環(huán)境中運行該應(yīng)用程序,從而使惡意軟件分析更加安全。
IDA Pro是交互式的
因為在探索未知事物方面,目前還沒有計算機能擊敗人腦,所以IDA Pro具有完全的交互性。IDA始終允許人工分析人員覆蓋其決策或提供提示。內(nèi)置的編程語言和開放的插件體系結(jié)構(gòu)進一步提高了交互性。
插件體系結(jié)構(gòu)允許程序在某些時候調(diào)用外部代碼,而無需事先知道該代碼的所有細節(jié),因此為調(diào)用程序增加了功能。
IDA Pro是可編程的
IDA Pro是一個完整的集成開發(fā)環(huán)境。它由一種非常強大的類宏語言組成,可用于自動執(zhí)行從簡單到中等復(fù)雜性的任務(wù)。對于更高級的任務(wù),開放式插件體系結(jié)構(gòu)允許外部開發(fā)人員增強IDA Pro的功能。
敵對代碼分析
考慮到當(dāng)今惡意代碼的速度和復(fù)雜性,需要一種功能強大的分析解決方案。IDA Pro已成為惡意軟件分析領(lǐng)域的標準,以至于有關(guān)新病毒的信息通常以“IDA數(shù)據(jù)庫”的形式交換。防病毒,惡意軟件和間諜軟件分析師每天都會使用IDA Pro來調(diào)查新的病毒樣本威脅并提供及時的解決方案。
漏洞研究
漏洞披露的話題仍然頗具爭議,但事實上,軟件通常很容易受到外部攻擊。IDA Pro是調(diào)查此類漏洞的理想工具。如果不固定它們,則第三方可能出于不誠實或犯罪意圖對其進行利用。例如,威斯康星州安全分析器是一個非常有趣的項目,旨在研究軟件漏洞,其中IDA Pro扮演著重要角色。
商用現(xiàn)貨(COTS)驗證
許多軟件是在使用它們的國家以外開發(fā)的。由于這些程序難以驗證,并且由于完整的源代碼審核和重建并不總是可行或可行的,因此IDA之類的工具提供了一種方便的方法來檢查程序是否確實按照其聲明的方式運行,是否沒有有害漏洞以及不泄漏任何敏感信息。
隱私保護
軟件正在各個層面入侵我們的生活。在可能被收集,出售或利用的有關(guān)單個用戶的數(shù)據(jù)量激增到前所未有的水平之時,尊重基本隱私權(quán)已成為許多人關(guān)注的問題。IDA Pro幫助調(diào)查可能引起關(guān)注的軟件,從而保護您的基本權(quán)利。
其他用途
IDA Pro在學(xué)術(shù)界引起了很多興趣。在此處可以看到IDA Pro發(fā)揮作用的部分論文清單。
【軟件特點】
讓我們從最明顯的新功能開始:現(xiàn)在IDA完全可以使用CSS文件進行配置,并支持開箱即用的暗模式(基于非常流行的IDASkins Dark主題)。
由于Apple不提供對其設(shè)備上硬件的低級訪問,因此我們的iOS內(nèi)核調(diào)試器依賴于Corellium 仿真器。這是一個以簡單和交互方式調(diào)試iOS內(nèi)核的獨特機會。根據(jù)我們的經(jīng)驗,Corellium非常棒且易于使用。結(jié)合對iOS / macOS內(nèi)核緩存的改進支持
XNU調(diào)試器還可以使用VMWare Fusion GDB存根來調(diào)試x64上的OSX:
一個與調(diào)試器相關(guān)的新聞是快速變基。由于ASLR的廣泛使用,每次都會將進程加載到新地址,并且IDA需要調(diào)整數(shù)據(jù)庫:將所有段移動到操作系統(tǒng)分配給它們的地址。
在IDA 7.3中,我們實施了另一種變基方法,其速度提高了40倍,通常只需幾秒鐘。每次開始新的調(diào)試會話時,您都不再有借口喝咖啡休息時間。這使得我們的調(diào)試器使用起來更加愉快;)
們又增加了一個反編譯器,這次是PowerPC 64bit。我們將免費向已經(jīng)擁有有效PowerPC 32位反編譯器的所有用戶提供。
我們的一些用戶表示對反匯編列表和反編譯器輸出的同步視圖感興趣。這個功能實際上已經(jīng)在以前的版本中可用,但我們采取了機會來改進它:現(xiàn)在相應(yīng)的行被著色,并且更容易將匯編指令與偽代碼匹配。
最后,IDA 7.3引入了期待已久的撤消功能。我們過去不愿意實現(xiàn)它,因為它需要巨大的源代碼重構(gòu)。其次,它帶來了較慢分析的代價(這就是為什么它可能在初始自動分析期間被禁用),更復(fù)雜的代碼庫,以及我們尚未發(fā)現(xiàn)的更多缺陷。
【新版改動】
新增功能
強調(diào)
資料夾檢視
一個樹狀文件夾視圖是許多IDA標準數(shù)據(jù)視圖。您可以創(chuàng)建文件夾并在它們之間移動項目。首先,具有以下視圖:
對于“結(jié)構(gòu)和枚舉”,默認情況下顯示樹形面板,對于其他視圖,可通過“顯示文件夾”上下文菜單項啟用。
您可以創(chuàng)建,重命名和刪除文件夾,并在它們之間移動項目。在處理大型二進制文件時,這將有助于組織信息。
MIPS反編譯器
一個新的反編譯器已添加到我們的產(chǎn)品陣容中。IDA支持的任何32位MIPS二進制文件都可以反編譯,包括緊湊的編碼。臭名昭著的延遲槽是透明,無縫處理的。提供了MIPS反匯編程序-反編譯器比較頁面 ,其中包含一些有趣的示例。
我們已經(jīng)添加了帶有大多數(shù)主要API的類型庫以及來自macOS和iPhone SDK的其他框架。與反編譯器配對時,它們特別有用。
最初可用的類型庫列表
最初可用的類型庫列表
使用CoreFoundation API的x86_64用戶模式代碼示例
使用CoreFoundation API的x86_64用戶模式代碼示例
使用IOKit類的ARM64內(nèi)核代碼示例
使用IOKit類的ARM64內(nèi)核代碼示例
此外,我們改進了對KTRW調(diào)試器的支持。斷點和觀察點可以使用相同的Corellium-ARM64配置立即使用它。
在反編譯器方面,我們添加了對原子ARM64指令 suh的支持, 例如CAS(比較和交換),LDADD(原子加法)以及許多其他功能。它們從stdatomic.h轉(zhuǎn)換為相應(yīng)的C11函數(shù),因此_asm{}在處理為arm64e編譯的代碼時,應(yīng)該看到較少的 塊。
ARM原子
發(fā)光度
Lumina功能可用于MIPS和PPC二進制文件。
其他選定項目
PC:采用Intel CET(控制流實施技術(shù))的ELF二進制文件變得非常普遍,這是由于Debian默認啟用了此編譯器選項,隨后是Fedora和其他Linux發(fā)行版。現(xiàn)在,我們 支持開箱即用的二進制文件,包括反編譯器中的二進制文件。我們還添加了對最近添加到Intel和AMD處理器的一些新指令的支持。
英特爾英語四級考試
ARM:最近針對32位ARM代碼的編譯器更喜歡使用MOVW和MOVT指令對來加載32位常量和地址,而不是像過去常見的那樣加載常量池。盡管IDA在將這些對放在一起時已經(jīng)進行了處理,但是高級優(yōu)化可以將這些對分開放置,從而防止IDA組合它們,發(fā)現(xiàn)全部價值并向目標添加交叉引用。我們已經(jīng) 改進了啟發(fā)式方法來處理此類分散的對,并添加了一個選項,因此可以根據(jù)您的特定二進制文件將分析調(diào)整為更具侵略性。
ARM MOVT
完整的變更清單:
處理器模塊:
ARC:添加了對ARCv2 EM指令集的支持
ARM:添加了一個選項來控制對分散的MOVW + MOVT指令對加載的32位常量的檢測
ARM:改進的功能檢測與延遲的序言設(shè)置
MIPS:增加了對多GOT二進制文件的支持($ gp在二進制文件的不同部分可以具有不同的值)
V850 / RH850:請勿為PIC調(diào)用創(chuàng)建函數(shù)(至下一個地址)
PPC:從e200內(nèi)核(NXP MPC57xx,ST SPC58xx)添加了許多新指令:
緩存繞過存儲(lbdcbx lhdcbx lwdcbx stbdcbx sthdcbx stwdcbx dsncb)
e200z490(AIOP)指令(e_lqw e_stqw e_ldwcb e_ldbrw e_byterevw等)
MPU指令(mpure,mpuwe,mpusync)
PC:在序言分析中增加了對endbr指令的支持
PC:添加了對WAITPKG指令(TPAUSE,UMONITOR和UMWAIT)的解碼
PC:添加了對TSX指令(XRESLDTRK和XSUSLDTRK)的解碼
PC:添加了對指令CLDEMOTE,ENCLV,SERIALIZE的解碼
PC:添加了對直接存儲指令的解碼(MOVDIRI和MOVDIR64B)
PC:添加了對MCOMMIT和RDPRU指令的解碼(AMD Zen2)
檔案格式:
AMIGA:為Amiga大塊文件加載器實現(xiàn)變基(由Vladimir Kononovich提供)
ELF:忽略內(nèi)部編譯器符號gcc2_compiled
ELF:pc:處理使用Intel CET支持(-fcf-protection)編譯的二進制文件中的PLT存根
ELF:接受在文件末尾運行的PT_LOAD段的文件
ELF:MIPS:已實現(xiàn)的重定位R_MIPS_GOT_PAGE,R_MIPS_GOT_OFST
ELF:MIPS:添加對MIPS64復(fù)雜重定位的支持
MACHO:允許用戶配置為新的男子氣概文件加載的類型庫。請參閱macho.cfg中的TIL_CONFIG
TDS:添加了對與exe文件連接的tds文件的支持
安裝程序:
默認為python 3; 將Python 3.8.2與Windows安裝程序捆綁在一起
調(diào)試器:
調(diào)試器:添加了對Bochs 2.6.10的支持
調(diào)試器:添加了對Zilog Z80處理器的調(diào)試支持
調(diào)試器:gdb:改進多線程程序的調(diào)試
調(diào)試器:ios:將iPhone SE 2添加到已知設(shè)備列表中/ li>
調(diào)試器:PIN:支持使用3.13引腳構(gòu)建pintool
調(diào)試器:xnu:改進了對ktrw的支持。現(xiàn)在,使用“ Corellium-ARM64”配置,斷點/監(jiān)視點/寄存器可以按預(yù)期與ktrw一起使用。無需其他手動設(shè)置。
內(nèi)核/雜項:
demangler:為vc++ ++和GCC添加c ++ 20宇宙飛船和co_await運算符
內(nèi)核:將std :: _ Xlength_error()添加到不返回函數(shù)列表中
Lumina:Lumina功能可用于MIPS和PPC二進制文件
FLIRT / TILS / IDS:
TIL:引入了新的macosx類型庫,直接從MacOSX.sdk / iPhoneOS.sdk(包括所有Objective-C和C ++框架)中的標頭構(gòu)建。參見macosx_sdk * .til / iphoneos_sdk * .til
TIL:引入了專門用于XNU內(nèi)核和KEXT二進制文件的新類型庫,它們是直接從XNU源代碼構(gòu)建的。參見xnu.til / xnu_arm.til
FLIRT:為vc1424添加了MFC簽名(Visual Studio 2019.4)
FLIRT:為vc1425添加了MFC簽名(Visual Studio 2019.5)
FLIRT:ICL:為icl200(Intel C ++ 20.0)添加了簽名
FLIRT:ICL:為icl201(Intel C ++ 20.1)添加了簽名
FLIRT:VC:為vc1424添加了簽名(Visual Studio 2019.4)
FLIRT:VC:為vc1425添加了簽名(Visual Studio 2019.5)
用戶界面:
用戶界面:許多IDA視圖現(xiàn)在提供了另一種類似樹的文件夾視圖
用戶界面:添加了用于搜索寄存器定義或寄存器使用的操作(Shift + Alt + Up,Shift + Alt + Down)
UI:現(xiàn)在可以從“函數(shù)調(diào)用”小部件中添加,刪除,啟用和禁用斷點
UI:現(xiàn)在,“ Breakpoints”選擇器還在列中報告狀態(tài)(“啟用/禁用” /“未解決”),而不僅僅是通過圖標。
用戶界面:在會話中,IDA默認會記住并恢復(fù)對話框的位置和大小(可通過RESTORE_DIALOGS_GEOMETRIES配置)
UI:調(diào)試器:當(dāng)前線程現(xiàn)在以粗體顯示
UI:調(diào)試器:在有關(guān)連接失敗的錯誤消息中包含主機名和端口號
用戶界面:消除了同步相似視圖的限制(例如,現(xiàn)在可以同步2個idaview)
UI:顯示在加載過程中要加載的文件的文件名
UI:“根據(jù)數(shù)據(jù)創(chuàng)建結(jié)構(gòu)”:在結(jié)構(gòu)內(nèi)部使用時,請忽略虛擬字段名稱,例如“ field_xxx”
UI:添加了get_synced_group(),以檢索有關(guān)已同步哪些窗口小部件的信息。
外掛程式:
pdb:加快大型PDB的Loaing類型
dscu:引入用于dyldcache處理的子菜單(“文件”>“加載文件”>“ DYLD Shared Cache Utils”)
dscu:允許從ui加載分支孤島(“文件”>“加載文件”>“ DYLD共享緩存實用程序”>“加載分支孤島”)
dscu:允許從給定模塊的依賴項列表中加載一個或多個模塊(文件>加載文件> DYLD共享緩存實用程序>加載依賴項)
dscu:允許從dyldcache單獨加載模塊頭
dscu:允許手動加載格式化的dyld標頭
dscu:允許用戶從任何模塊單獨加載單個部分
dscu:將模塊選擇器轉(zhuǎn)換為多選擇器。現(xiàn)在可以一次加載多個dyldcache模塊(“文件”>“加載文件”>“ DYLD共享緩存實用程序”>“加載模塊”)
導(dǎo)出數(shù)據(jù):將數(shù)據(jù)導(dǎo)出為C數(shù)組時,允許用戶更改變量名稱
導(dǎo)出數(shù)據(jù):將項目導(dǎo)出為C數(shù)組時,請使用數(shù)組變量名稱作為文件名
objc:改進objc_msgSendSuper()調(diào)用站點的反編譯
svdimport:帶有內(nèi)存寄存器定義的新插件,用??于加載和應(yīng)用符合ARM CMSIS的SVD文件