Quantcast
Channel: 看雪安全论坛
Viewing all articles
Browse latest Browse all 9556

【原创】Android动态逆向分析工具(二)——Andbug扩展功能

$
0
0
  本文所述功能是在andbug原有功能的基础上实现的信息的功能,包括对apk运行时行为监控功能的实现,以及获取apk更详细信息的功能的实现。
  Andbug作为一个用于动态逆向分析apk的工具来说目前只实现了相对简单的功能,还不能算是一个完整功能的调试器。好在原作者将工具的所有代码都开源了,我们可以根据自己的实际需求增加信息功能,本文作者主要增加了对apk运行时的行为进行动态监控的功能,详细信息位于:https://github.com/anbc/AndBug/。还有很多功能需要我们进一步实现,本文后面部分也会列出一些,文本作者认为需要增加的功能点。
  

一、扩展功能实现
1、davlik虚拟的对java的支持情况
附件 86284
具体含义请查阅相关资料

2、类的详情
命令:class-detail java.io.File
功能:展示出指定类的成员方法、成员变量和静态变量的信息
附件 86285

附件 86286

3、方法的详细内容
命令:method-detail java.io.File mkdir
附件 86287

4、对apk的运行进行监控
4.1执行监控命令
命令:./andbug monitor -p com.android.browser
功能:对浏览器的运行情况进行监控

附件 86288

4.2、监控点在monitor_fun.conf 文件中配置
附件 86289

4.3、监控到的日志信息
附件 86290


4.4、可视化处理后的监控数据
附件 86291

需要进一步完善的功能
1、断点设置功能
  目前的断点设置功能,仅支持类和方法上设置断点,在代码的其他未知还不支持设置断点。要想实现一个完整的逆向调试器,需要实现更丰富的断点功能。

2、单步调试功能
  目前调试器还不支持单步调试功能,只能在具体函数调用处设置断点对该处程序的运行情况进行查询,需要进一步增加单步调试功能,包括
  
调试时与代码的关联处理
  目前虽然后关联源码的的功能,但是很不完善。关联是需要进一步分别支持汇编代码和java代码不同源码形式的关联,并且将源码显示和断点设置,单步调试等功能联动起来,才是一个完整的逆向调试功能。

4、对运行中的apk应用的行为进行动态监控
  这部分作者已经增加了一部分功能,但是还很不完善,很多功能需要细化。欢迎大家一起交流。

5、其他功能的丰富
  目前就想到了这些待实现的功能,可以丰富的功能还有很多。

上传的图像
文件类型: png 图片1.png (94.4 KB)
文件类型: png 图片2.png (358.0 KB)
文件类型: png 图片3.png (282.1 KB)
文件类型: png 图片4.png (64.4 KB)
文件类型: png 图片5.png (39.9 KB)
文件类型: png 图片6.png (76.6 KB)
文件类型: png 图片7.png (267.1 KB)
文件类型: png 图片8.png (134.6 KB)

Viewing all articles
Browse latest Browse all 9556

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>