1、 android程序结构分析
a)安卓系统结构,不同目录 /system /data /cache
b)Android重要组件
2、apk文件(android package)安卓打包文件
3、诊断环境
010编辑器,可以使用模板对16进制文件直接按照结构来解析和编辑。dex文件可以 直接从网络下载模板,非常方便。 二进制模板文件(bt)采用类C文件编写。对于C结构直接定义的消息等,可以直接拷贝进来使用。
这个在后面做自定义的 16进制接口消息解析和接口方面测试的时候,是可以应用的很好 的工具。堪称今天学习最大的收获。
4、androguard
androguard使用 python,内部包含系列静态分析工具。
建议安装santoku系统,集成了一系列的开源安全工具,包括Androguard、Burp Suite、ApkTool等等。
也可以手动安装,参考链接:http://blog.csdn.net/u013107656/article/details/51509488
Android静态分析工具包括 ApkTool、BakSmali 、Androguard 、dex2jar、jd-gui ,这些工具中除了 Androguard 不能在Windows 平台上运行外,其它的都能支持跨平台,可以在Windows 平台上良好的运行。
如果读者觉得单独下载配置这些工具麻烦,不妨使用另一款集成分析环境santoku。santoku 实质是一款定制的 Ubuntu 12.04 系统镜像,与其它Ubuntu系统相比,它具有如下特点:
1. 集成了大量主流的Android程序分析工具,为分析人员节省分析环境配置所需的时间。
2. 集成移动设备取证工具。支持Android、IPhone 等移动设备的取证工作。
3. 集成渗透测试工具。
4. 集成网络数据分析工具。在分析 Android病毒、木马等程序时,这些工具特别有用。
5. 采用 LXDE 作为系统的桌面环境,界面与 Windows XP非常相似,符合中国人使用习惯。
6. 正处于beta 阶段,但整个项目显得很有活力,相信将来的更新和维护也会不错。
7. 只能允许在64位平台的软硬件上。Santoku Linux 0.4 is a 64-bit OS and will only work with 64-bit hardware and software
santoku 的初衷是为了提供一套完整的移动设备司法取证环境。但很显然它集成的Android 程序分析工具,会给我们的分析工作带来很多便捷。
以下引用: 开源静态分析工具androguard体验(一) - 研之庭 - 博客频道 - http://blog.csdn.net/xbalien29/article/details/21885297
虽然在windows端免费版的IDA、VTS等工具都可用来静态分析,但相对来说这些工具用来人工分析在合适不过,但对于项目开发,相对来说都忽视很好扩展。而在androguard却很适合进行扩展或者移植成为自己项目的某一模块,虽然早有耳闻,但也最近才动手体验几把。当然,androguard也被很多人再次开发过了,包括一些提供上传入口的检测网站,静态分析部分感觉都有使用该模块,很多静态分析工具都基于它,其中还有一款ApkInspector也很出名。
androguard主要用来进行静态分析,其默认采用ded作为反编译的软件,同时提供了很多模块供分析人员使用。项目地址 https://code.google.com/p/androguard/ 安装方法见wiki部分。如果觉得麻烦可以下载santoku,该系统是订制Ubuntu,主要用于移动设备,包括很多分析工具集合androguard、drozer也在其中,类似于kali。
这次主要是对其中几个模块进行了初步使用:
其他分析工具:
1、dex2jar: 反编译
2、JD-GUI:Java decompiler 反编译
3、AstroGrep:快速文件文本检索工具
当然书上介绍的比较网络上提供的差很多,各种APK反编译集成工具把各类小工具集成到一起了,下载安装一个,搞定一切。当然原理相同。