知识点
1、单向校验-XP框架&Frida&HOOK
2、双向校验-Frida&HOOK&导入证书
一、演示案例-APP-综合分析-Mobexler&MobSF识别
mobsf
移动安全框架 (MobSF) 是一种自动化的一体化移动应用程序 (Android/iOS/Windows) 渗透测试、恶意软件分析和安全评估框架,能够执行静态和动态分析。MobSF 支持移动应用程序二进制文件(APK、XAPK、IPA 和 APPX)以及压缩源代码,并提供 REST API 以与您的 CI/CD 或 DevSecOps 管道无缝集成。动态分析器可帮助您执行运行时安全评估和交互式仪器测试。
Mobexler
Mobexler是基于Elementary OS的定制虚拟机,旨在帮助进行Android和iOS应用程序的渗透测试。Mobexler预装了各种开源工具,脚本,黑客必备软件等,这些都是安全测试Android和iOS应用程序所必需的(该虚拟机自带mobsf)
官方地址:https://mobexler.com/
二、演示案例-APP-某社交-双向证书绕过&Frida&HOOK
然后就要自己去排查,先检查是不是反代理、如果不是就是反证书校验,先测单向证书校验,如果还不行就要考虑目标使用了双向证书校验。
Firda安装
Firda 是一款易用的跨平台Hook工具, Java层到Native层的Hook无所不能,是一种 动态 的插桩工具,可以插入代码到原生App的内存空间中,动态的去监视和修改行为,原生平台包括Win、Mac、Linux、Android、iOS全平台。
Hook是干嘛的,就是假如一个APP打开需要执行1,2,3,但是可以利用hook技术让这个APP打开的时候,只执行3,让1,2停止。
测试环境:
Python3 夜神模拟器 frida-server Burpsuite
1、本地PC安装Frida
pip install frida
pip install frida-tools
2、模拟器安装Frida
注意:版本要与本地Frida一致
下载:https://github.com/frida/frida/releases
真机:ARM版本及位数 模拟器:无ARM的位数
模拟器查看系统位数:
getprop ro.product.cpu.abi
从本地把frida-server
上传到模拟器目录下并重新命名
nox_adb.exe push frida-server /data/local/xxx
cd /data/local/
chmod 777 frida-server
./frida-server
本地连接判断
frida-ps -U
方案1:Firda+HOOK-JS+BurpSuite(推荐)
注:此方法不是所有的APP都能通杀,有的APP可能走的其他协议(TCP/UDP等)
https://github.com/apkunpacker/FridaScripts
模拟器执行:
./frida-server
获取包名:ls /data/data
或 Apk资源器查看
本地执行:
frida -U -f 包名 -l hookjs文件
方案2:burp导入证书
0、利用场景:能反编译,有证书文件
1、解压获取apk的证书文件
可以把apk
后缀改为zip
,在解压。
手工去进行相关证书查找,一般找后缀为下面这三个的文件
或者使用mobsf
工具自动化探测
2、反编译后得到证书文件的密钥
3、Burp导入证书后实现对应抓包
导入完毕后BP就能直接抓到数据包了,不需要额外在配置
三、演示案例-APP-某游戏-单向证书绕过&XP框架&Frida
方案1:Xposed+SSL模块+BurpSuite
逍遥模拟器安装xp
请参考:https://blog.csdn.net/m0_60571842/article/details/135983262
夜神模拟器安装xp
直接市场下载后激活即可
方案2:Firda+HOOK-JS+BurpSuite
https://github.com/apkunpacker/FridaScripts
模拟器执行:
./frida-server
获取包名:ls /data/data
或 Apk资源器查看
本地执行:
frida -U -f 包名 -l hookjs文件