逆向工程中涉及到多種多樣的工具(例如IDA Pro,Angr等),熟練使用這些工具可以化繁為簡,使得程式分析工作得以順利開展。本文介紹眾多逆向工具中的一種——Ghidra,它是由美國國家安全域性(NSA,National Security Agency)的研究理事會為 NSA 的網路安全任務開發的軟體逆向工程(SRE)框架,它有助於分析惡意程式碼和病毒等惡意軟體,並可以讓網路安全專業人員更好地瞭解其網路和系統中的潛在漏洞。Ghidra跟IDA Pro用起來很像,但Ghidra是免費的,而且是開源的!
Ghidra支援多種作業系統,例如Windows, Linux,或者MacOS。本文中的範例主要在Windows下完成(其他平臺上也是類似的,因為本文不是一蹴而就的,後面某些截圖是在Ubuntu上做的,但這沒有多大影響)。你可以從【1】中下載Ghidra,它是一個壓縮包,解壓到你指定的目錄後,即可開始使用了。注意:Ghidra的執行需要有Java環境作為支援,所以請確保電腦上已經正確安裝並設定好了JRE和JDK。
現在開啟Windows的命令列程式,切換到Ghidra的安裝目錄,並輸入ghidraRun,程式就被啟動了,如下圖所示: