binary-analysis-patterns
精通二進位分析、反組譯與反編譯。識別指令模式、呼叫慣例與控制流程邏輯,協助分析可執行檔與編譯後程式碼。
簡介
此技能為逆向工程與二進位分析提供了一套完整的工具包。它賦予開發人員、資安研究人員與系統工程師必要的知識,以拆解包括 x86-64、ARM64 與 ARM32 在內的多種架構下的編譯二進位檔案。無論您是在執行靜態分析、除錯未知程式碼或進行安全性稽核,此技能皆能協助將底層機器指令轉化為可操作的邏輯,讓您能夠在二進位層級理解程式的運作方式。
-
提供跨架構的組語函式序言 (prologue)、結尾 (epilogue) 與堆疊框架管理的詳細參考資料。
-
深入解析多種呼叫慣例,包含 System V AMD64、Microsoft x64、ARM64 與 ARM32,確保能準確分析暫存器使用與參數傳遞。
-
針對常見控制流程結構(如 if-else、各種迴圈型態與複雜的 switch-case 跳轉表)的邏輯重構模式。
-
資料結構分析,包含陣列索引、指標運算、結構記憶體佈局(含填補 Padding)與連結串列遍歷方法。
-
針對字串操作 (strlen, strcpy, memcpy)、算術優化與進階位元運算技巧的程式碼模式識別。
-
針對從堆疊復原變數、區域變數識別以及基於暫存器與記憶體偏移量進行函式簽章重建的反編譯指南。
-
專為無原始程式碼時的靜態分析工作流程設計;可用於審查已編譯的可執行檔或驗證軟體完整性。
-
適用於惡意軟體分析、漏洞研究以及理解遺留程式碼庫中的效能瓶頸。
-
提供高階程式語言構造與其組語實作之間的明確對照,有助於推論原始程式碼邏輯。
-
此技能將分析範圍限制在已知的架構模式中;請注意,混淆或加殼程式碼在應用這些靜態模式前,可能需要額外的解殼或動態分析技術。
-
建議結合 IDA Pro、Ghidra 或 Binary Ninja 等反組譯工具使用,以驗證人工觀察結果與自動化分析輸出。
倉庫統計
- Star 數
- 34,561
- Fork 數
- 3,746
- Open Issue 數
- 5
- 主要語言
- Python
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年4月30日 上午09:27