逆向工具angr的快捷教程(1):安裝、排雷、CFG範例

Angr是一個基於Python開發的二進制程序分析(Binary analysis)框架,可以用於開展動態符號執行(Symbolic Execution)和多種靜態分析。作爲系列文章的第一篇,本文將介紹安裝angr的基本步驟,尤其是其中可能遇到的各種坑。然後,我們會利用angr對程序進行靜態分析,生成相應的CFG,並以此演示angr的基本用法。首先聲明的是,筆者是在Ubuntu系統上使用angr的。因此,下面的例子、錯誤提示及解決辦法,也僅限於Ubuntu環境。

排雷過程中主要解決下面幾條錯誤提示(當然如果你沒有遇到它們,那是最好不過的了):

virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=XXXX and that PATH is set properly.

Error while finding module specification for 'virtualenvwrapper.hook_loader'
(ModuleNotFoundError: No module named 'virtualenvwrapper')

Error: deactivate must be sourced. Run 'source deactivate' instead of 'deactivate'.


一、安裝以及過程中可能遇到的問題

簡單的安裝請參考【1】。這裏需要說明的是,官方建議在一個虛擬的Python環境下使用angr,畢竟這種逆向工具搞不好會影響到你係統裏原有的其他配置。構建Python虛擬環境的方法很多,例如你可以使用Docker(文獻【2】中給出但是在Docker下配置Tensorflow深度學習環境的方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章