Keypatch是Keystone Assembler Engine的IDA Pro的獲獎插件。
KeyPatch由內部3個工具組成。
請參閱此快速教程,以了解如何使用KeyPatch,以及有關其實現方式的幻燈片。
Keypatch已被確認可以在IDA Pro版本6.4、6.6、6.6、6.8、6.9、6.95、7.0、7.5上工作,但應在較舊版本上完美工作。如果發現任何問題,請報告。
有時,我們想在IDA中分析二進製文件時修補二進製文件,但不幸的是,IDA Pro的內置屁股不夠。
開發了Keypatch來解決此問題。由於Keystone的力量,我們的插件提供了一些不錯的功能。
Keypatch可能是您的反向工程工具集中缺少的部分。
pip install six 。keypatch.py複製到IDA插件文件夾,然後重新啟動IDA Pro以使用KeyPatch。C:Program Files (x86)IDA 6.9plugins/Applications/IDA Pro 6.9/idaq.app/Contents/MacOS/plugins/opt/IDA/plugins/ NOTE
有關快速教程,請參見tutorial.md。有關Keypatch的所有功能的完整說明,請繼續閱讀。
要修補您的二進製文件,請按HOTKEY CTRL+ALT+K內部IDA中的“打開Keypatch Patcher”對話框。
Assembly框中鍵入新的彙編指令(您可以使用IDA符號)。Encode框中的編碼,而無需等待ENTER鍵盤。Fixup控件中。ENTER或單擊Patch以使用新代碼覆蓋當前指令,然後自動推進下一個指令。NOPs padding until next instruction boundary 。Save original instructions in IDA comment ,以禁用此功能。Edit | Patch program | Apply patches to input file 。 
CTRL+ALT+K ,或選擇菜單Edit | Keypatch | Fill Range 。Assembly框中,您可以輸入彙編代碼或原始的十六進制。可接受的RAW HEXCODE的一些示例是90 , aa bb , 0xAA, 0xBB 。 
要恢復(撤銷)最後一個修補程序,請選擇菜單Edit | Keypatch | Undo last patching 。
要搜索彙編說明(無需覆蓋二進制),請從菜單編輯中打開鍵盤搜索Edit | Keypatch | Search 。
Assembly框中鍵入彙編指令。Encode框中的編碼,而無需等待ENTER鍵盤。Search按鈕時,Keypatch會查找指令的所有發生,並以新的形式顯示結果。 
要檢查新版本的KeyPatch,請選擇菜單Edit | Keypatch | Check for update 。
在任何時候,您還可以通過右鍵單擊IDA屏幕訪問上述所有鍵入功能,然後從彈出菜單中進行選擇。

有關任何問題,請發送電子郵件至[email protected]。
要將來更新Keypatch,請點擊我們的Twitter @keystone_engine宣布。
我們都知道,在IDA 7.0之前,IDA Pro的Python本身是32位,因此它只能加載32位庫。因此,我們必須構建和安裝Keystone 32位。但是,由於IDA 7.0支持32位和64位,這意味著我們還需要安裝正確的Keystone版本。只需從PIPI安裝,帶有pip (32位),例如以下內容:
pip install keystone-engine完畢?現在返回第2節,為IDA Pro安裝Keypatch。享受!