-
-
[原创]Android动态逆向分析工具(二)——Andbug扩展功能
-
2014-1-5 10:40
18887
-
[原创]Android动态逆向分析工具(二)——Andbug扩展功能
本文所述功能是在andbug原有功能的基础上实现的信息的功能,包括对apk运行时行为监控功能的实现,以及获取apk更详细信息的功能的实现。
Andbug作为一个用于动态逆向分析apk的工具来说目前只实现了相对简单的功能,还不能算是一个完整功能的调试器。好在原作者将工具的所有代码都开源了,我们可以根据自己的实际需求增加信息功能,本文作者主要增加了对apk运行时的行为进行动态监控的功能,详细信息位于:https://github.com/anbc/AndBug/。还有很多功能需要我们进一步实现,本文后面部分也会列出一些,文本作者认为需要增加的功能点。
一、扩展功能实现
1、davlik虚拟的对java的支持情况
具体含义请查阅相关资料
2、类的详情
命令:class-detail java.io.File
功能:展示出指定类的成员方法、成员变量和静态变量的信息
3、方法的详细内容
命令:method-detail java.io.File mkdir
4、对apk的运行进行监控
4.1执行监控命令
命令:./andbug monitor -p com.android.browser
功能:对浏览器的运行情况进行监控
4.2、监控点在monitor_fun.conf 文件中配置
4.3、监控到的日志信息
4.4、可视化处理后的监控数据
需要进一步完善的功能
1、断点设置功能
目前的断点设置功能,仅支持类和方法上设置断点,在代码的其他未知还不支持设置断点。要想实现一个完整的逆向调试器,需要实现更丰富的断点功能。
2、单步调试功能
目前调试器还不支持单步调试功能,只能在具体函数调用处设置断点对该处程序的运行情况进行查询,需要进一步增加单步调试功能,包括
调试时与代码的关联处理
目前虽然后关联源码的的功能,但是很不完善。关联是需要进一步分别支持汇编代码和java代码不同源码形式的关联,并且将源码显示和断点设置,单步调试等功能联动起来,才是一个完整的逆向调试功能。
4、对运行中的apk应用的行为进行动态监控
这部分作者已经增加了一部分功能,但是还很不完善,很多功能需要细化。欢迎大家一起交流。
5、其他功能的丰富
目前就想到了这些待实现的功能,可以丰富的功能还有很多。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工
作,每周日13:00-18:00直播授课