首页
社区
课程
招聘
[原创]Android动态调试-R2frida和lldb
发表于: 2020-12-10 19:30 7703

[原创]Android动态调试-R2frida和lldb

2020-12-10 19:30
7703

为什么不用IDA,因为贵。 为什么不用gdb,因为lldb的出现,取代gdb只是迟早的事情,可以说gdb是Depracated。

在 Android逆向之ARM64静态分析对app的中的so进行了静态分析,这篇文章介绍两种动态调试的方式,一种是radare2,另一种是lldb。

Radare2 and Frida better together. 两个强大的工具放在一起,必然会产生更为强大的能量,可以称为"Best Dynamic Debugging Tool ",最主要是免费。其本质是Radare2的插件。

唯一的一个缺点,安装过程堪称灾难。我用r2pm -ci r2frida进行的安装。目前只能在Linux下使用。笔者使用Nodejs最新的稳定版本才安装成功。

缺少库文件的问题,解决办法如下,这里只是举例,具体情况可能不一样,笔者是ssl库链接不了。

/usr/bin/ld: 找不到 -ldhnetsdk

1)找到本地的libGL.so 文件路径 ,在终端执行:locate libdhnetsdk.so 命令: /usr/local/ahuasdk/libdhnetsdk.so 2)建立链接: sudo ln -s /usr/local/ahuasdk/libdhnetsdk.so /usr/lib/libdhnetsdk.so

选择淘宝来介绍。

其中BH9500C2JR通过frida-ls-devices获取。在这里插入图片描述

这种情况下是以suspend模式启动app,因此屏幕会卡住。这样就可以hook程序启动的时候或之前的操作,比如onCreate。通过=!dc可恢复。

所有r2frida的命令都必须以\或者=!开头 。

获取Frida版本的命令\?V在这里插入图片描述

\i: Shows target information\ii* : List imports in r2 form.\il: List libraries. Commonly used with the symbol ~, which is the internal grep of r2.\iE : List exports of library, filtering by library name.iEa () : Show address of export symbol.\isa[*] () : Show address of symbol\ic: List classes

部分结果如下:在这里插入图片描述

\/ keyword: Search hex/string pattern in memory ranges (see search.in=?) 以JSON格式显示,搜索关键字rooted,命令为: \/j rooted在这里插入图片描述


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 3
支持
分享
最新回复 (3)
雪    币: 2
活跃值: (515)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
几个月前在r2作者的tg群里,跟着作者的指导尝试了几次调试某个app,r2根本无法像IDA一样调试android so,r2作者和几个使用者说r2可以替代IDA,根本就是扯淡。
2020-12-16 14:27
0
雪    币: 443
活跃值: (1157)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
asdf呵呵 几个月前在r2作者的tg群里,跟着作者的指导尝试了几次调试某个app,r2根本无法像IDA一样调试android so,r2作者和几个使用者说r2可以替代IDA,根本就是扯淡。
r2和frida完全替代IDA还不能,不过有些功能确实挺好的
2020-12-16 23:08
0
雪    币: 207
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
asdf呵呵 几个月前在r2作者的tg群里,跟着作者的指导尝试了几次调试某个app,r2根本无法像IDA一样调试android so,r2作者和几个使用者说r2可以替代IDA,根本就是扯淡。
多谢佬指明方向
2022-8-23 12:26
0
游客
登录 | 注册 方可回帖
返回
//