Objection动态分析App
一、Objection针对所有支持的平台,提供了下列核心功能2
(一)Android特殊功能2
(二)iOS特殊功能2
二、搭建Objection测试环境2
三、使用Objection测试分析移动App3
一、Objection针对所有支持的平台,提供了下列核心功能
(1)修复iOS和Android应用程序,嵌入了Frida实用工具。
(2)与文件系统交互,枚举条目以及上传/下载的文件。
(3)执行各种内存相关任务,例如列举加载的模块以及相关的输出。
(4)尝试绕过或模拟越狱/root环境。
(5)发现加载的类,并列举对应的方法。
(6)执行常见SSL绑定绕过。
(7)针对目标应用程序,从方法调用中动态导出参数。
(8)与内联SQLite数据库交互,无需下载其他数据库或使用外部工具。
(9)执行自定义Frida脚本。
(10)动态分析在运行代码的情况下,通过跟踪分析相关的内存,如寄存器内容,函数执行结果,内存使用情况等等,分析函数功能,明确代码逻辑。
(一)Android特殊功能
(1)枚举应用程序的活动、服务和广播接收器。
(2)开启目标应用程序中的任意活动。
(3)监控类方法、报告执行活动。
(二)iOS特殊功能
(1)导出iOS钥匙串,并存储至文件中。
(2)从常见存储中导出数据,例如NSUserDefaults以及共享NSHTTPCookieStorage。
(3)将信息以可读形式导出。
(4)绕过TouchID限制。
(5)监控类中的所有方法执行。
(6)监控iOS剪贴板。
(7)在无需外部解析工具的情况下,将已编码的.plist文件导出为可读形式。
二、搭建Objection测试环境
python --version
python3 --version(建议安装python3最新版本)
frida --version
pip install objection
objection version
三、使用Objection测试分析移动App
objection -g com.***.***.cn explore
objection -g com.***.cn explore
监视方法的参数、调用栈及返回值
android hooking watch class_method java.lang.StringBuilder.toString --dump-args --dump-backtrace --dump-return
监视目标类下的所有方法的调用情况,以防so中有未察觉到的反射调用
android hooking watch class com.***.mb.common.system.ConnectReceiver
android hooking watch class com.***.cn.splash.DexOptService
mv frida-server-12.11.12-android-arm fs121112
chmod 755 fs121112
通过objection动态分析App,因要分析的App会自动断掉USB连接,所以在测试机上用运行frida服务,并监听8888端口,用电脑去连接监听的端口
./fs121112 -l 0.0.0.0:8888
frida-ps -H 10.22.6.209:8888
配合加载Wallbreaker插件,更方便的搜索查看Android内存中的类结构、实例、内部数据等
objection -N -h 10.22.6.209 -p 8888 -g com.***.cn explore -P /home/gyp/gyp/SecurityAnalysis/objection/plugins
objection -N -h 10.22.6.209 -p 8888 -g com.***.cn explore -P
~/gyp/SecurityAnalysis/objection/plugins/
android hooking list services
android hooking list receivers
配合加载Wallbreaker插件,更方便的搜索查看Android内存中的类结构、实例、内部数据等
plugin wallbreaker classdump com.***.cn.cache.ArtistCacheManager --fullname
plugin wallbreaker classdump com.***.cn.splash.DexOptService --fullname
plugin wallbreaker classdump com.***.mrs.util.MatrixReportBroadcast --fullname
监视目标类下的所有方法的调用情况,以防so中有未察觉到的反射调用,通过动静态结合分析了解大致逻辑对应的类,然后hook该类
android hooking watch class com.***.cb.common.system.ConnectReceiver
android hooking watch class com.***.cn.splash.DexOptService
android hooking watch class com.***.mgrs.util.MatrixReportBroadcast
监视方法的参数、调用栈及返回值
android hooking watch class_method com.***.mrgs.util.MatrixReportBroadcast.onReceive --dump-args --dump-backtrace --dump-return
android hooking watch class_method com.***.cn.sdk.g.b.d.a --dump-args --dump-backtrace --dump-return
Android App弹窗堆栈
android hooking watch class_method android.app.Dialog.show --dump-args --dump-backtrace --dump-return