7.2.4 ida动态分析(第四十二课)
以下为图文内容:7.2.4 ida动态分析
0x01 ida动态分析
ida动态分析可以说是利用工具ida进行动态调试跟踪,这样步步跟踪可以实现到数据追
踪的效果,数据追踪即是寄存器中的数据,堆栈数据等,这些数据对逆向来说是目的,因
此,ida动态分析是逆向必不可少的环节。
0x02 动态分析前奏
动态分析必须预先准备一台手机(建议是真机),然后就是ida工具,实现ida工具的远
程连接是必要的,而ida实现远程调试需要手机运行相关脚本,通过端口转发进行调试,
那么相关脚本是ida工具自带的,端口转发必须通过adb工具,adb工具还需要实现动态
调试前的启动程序前断点。
相关操作代码如下:
adb shell
su
./data/local/tmp/as
adb forward tcp:23946 tcp:23946
adb shell am start -D -n com.a.easyjni/com.a.easyjni.MainActivity
jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8600
Adb工具是sdk文件中的platform-tools下的环境配置工具
因此,需要进行环境变量的设置
这样,命令行中就可以输入adb如下图所示即表明环境配置成功。
输入ddms后打开dalvik debug monitor工具,,调试工具对进程获取相关方法,以及
对应进程端口,日志信息等等,给后面准备下一步。
找到ida 中找到相关的脚本:android_server,然后修改名为as,导入到手机/data/
local/tmp中,启动该脚本,默认端口为23946。
使用端口映射到本机端口,使用adb forward
因此运行代码为:adb forward tcp:23946 tcp:23946
接下来只需要用ida对本机端口23946进行连接即可
找到需要调试的应用:
开始调试后进入到该界面,然后直接运行:
最后一步便是需要用到ddms上的对应的调试应用的端口
如下图所示,相关的应用端口为:8600
**** Hidden Message *****
阔以阔以,我觉得很好! 是不是啊?这么强?看看~~ 学习一下,太好了。 谢谢分享 谢谢分享 今天是个好日子啊,遇到这么好的东西,希望楼主多多分享! 谢谢分享 实力型偶像!感谢分享 感谢楼主的分享