我已经从Google Play下载了一些Android应用程序。我已经通过逆向工程工具Smali
获得了apktool
代码。我想为这些应用程序生成调用图。我在堆栈溢出和Google上看到了很多链接,大多数建议的工具要么用于c/c++
,要么用于Java
,它们当然需要我没有的源代码。
有什么方法可以自动生成调用图?谢谢。
最佳答案
apkinspector-http://code.google.com/p/apkinspector/
该项目的目的是帮助分析师和逆向工程师可视化已编译的Android软件包及其相应的DEX代码。 APKInspector为用户提供分析功能和图形功能,以深入了解恶意应用程序:
我尝试在我的计算机(Debian 6.0)中安装apkinspector:
sudo aptitude install libxext-dev
source compile python-qt and python-sip
http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.9.4/
sudo aptitude install python-tk
easy_install ipython
(sudo aptitude install python-pip & sudo pip install ipython)
vi androguard/androlyze.py
change "import IPython.ipapi" to "import IPython.core.ipapi"
change "from IPython import IPShellEmbed" to "import IPython"
change "IPShellEmbed" to "IPython.embed"
但是不幸的是它不能使用!!!
因此,我尝试使用Ruby编写自己的工具,该工具可以在here中找到