斗哥这期将给大家带来Android逆向的动态分析,主要简述了Android动态分析环境配置与IDA调试so文件。学习Android逆向动态分析前,一定要有基础环境支持,比如sdk、jdk等,所以在动态分析前先要进行一波基础配置。
0X01 基础环境配置
1、配置adb命令:
adb是android sdk里的一个工具,用这个工具可以直接操作管理android模拟器或者真实的andriod设备。主要功能有:1、运行设备的shell2、管理模拟器或设备的端口映射3、主机和设备之间上传/下载文件4、将本地apk软件安装至模拟器或android设备下载SDK Platform-Tools(如果你的主机已经有sdk就不需要下载,直接添加)将文件解压后将adb.exe所在的Platform-Tools目录绝对路径添加到path环境变量启动终端就能使用adb命令,输入adb就能查看版本与参数介绍
2、配置设备:
准备一个android设备或者模拟器,用来调试apk,下面介绍是夜神模拟器的配置。打开开发者模式(默认不开),设置->关于手机






##0X02 动态分析这里的动态分析主要使用IDA和adb命令配合Android模拟器来分析so
####1.动态环境配置将IDA安装目录E:\IDA 7.0\dbgsrv下符合Android安装系统位数的android_server push到Android目录下(本系统是X86)

启动IDA,进行程序调试启动IDA的32bit程序,点击:Debugger-Run-RemoteArmLinux/Android debugger,打开调试程序的设置对话框:Application:对应调试程序所在的路径Directory:对应调试程序所在的目录路径HostName:输入localhost,Port:PC端口
2.加载程序调试


3.IDA远程调试
在分析加壳程序的壳时,应以调试方式来启动调试程序(adb shell am start-D -n packagename/activityname)ida—>Debugger—>Attacth—->Remote GDB Debugger



0X03 小小总结
斗哥这期Android逆向之动态分析so篇主要讲述了Android逆向的环境配置以及利用IDA配合模拟器动态分析so文件。有疑问的小伙伴们欢迎留言探讨。
来源:freebuf.com 2018-10-22 16:31:06 by: 漏斗社区




