通过获取App配置、数据包,去获取url、api、osskey、js等敏感信息。
1、资产信息-IP 域名 网站 -转到对应Web测试 API接口测试 服务测试
2、泄露信息-配置key 资源文件 - key(osskey利用,密钥配置等)
3、代码信息-代码安全 HOOK绕过限制(证书,代理,脱壳等)- 逆向相关
APP中收集资产:通讯抓包,静态提取,动态调试
#APP资产提取:
1、动态抓包 (根据手动点击,触发页面,抓取页面数据包)
Burpsuite+Reqable
参考前期部分抓包技术
技术优点:没有误报
技术缺点:无法做到完整,没有访问到的是不会抓的
打开雷电模拟器
用网上的打包工具将网站打包成apk文件,然后将打包好的文件放入雷电模拟器中安装
配置代理,端口和reqable一样
点击目标app时就会有数据包到reqable上
2、静态提取-反编译
技术优点:数据较为完整
技术缺点:有很多无用的资产
APKDeepLens收集APP的权限、组件信息、IP、Secret。
https://github.com/d78ui98/APKDeepLens
APKLeaks工具,用于检查APK文件中的硬编码URL、API密钥等敏感信息。
https://github.com/dwisiswant0/apkleaks
进到目录下,搜索框中输入cmd,进入命令窗口 ,输入 python apkleaks.py -f apk路径
扫描完成后会生成一个txt文件,根据路径找到文件打开即可
AppInfoScanner对Android、iOS、WEB多场景应用进行信息扫描,收集IP、URL、Server、CDN等信息。
https://github.com/kelvinBen/AppInfoScanner
来到应用的目录下面 输入命令 python app.py -i apk名
在目录下面会生成一个xlsx 的Excel表格 静态提取到的网址可能比抓到多也可能少,主要看app设置和搜索有关,比如:将网址拆成了两半,导致正则表达式没比配到而漏掉
前提条件是app可以进行反编译才行,如果 APK 文件因加壳等原因不可反编译,那么 AppInfoScanner 就无法正常解包和提取字节码,其基于代码层面的数据收集功能会失效。
反编译源码后,打开全局搜索,输入http,就可以获取到网址了
3、动态调试-反调试
技术优点:HOOK可解决不能抓包不能代理等情况
技术优点;搞逆向的人能看到实时的app调用链等
技术缺点:部分APP有反调试等无法做到完整
MobSF是一种自动化的移动应用(Android/iOS/Windows)静态和动态分析的测试,恶意软件分析和安全评估框架。
https://github.com/MobSF/Mobile-Security-Framework-MobSF
先安装这些,切记:所有安装的路径中都不能有中文
先运行setup.bat 文件,在运行run.bat 文件 (不可放在有中文的路径下面,不然会报错)
run.bat 中可以修改端口 ,如果端口冲突了,可以修改
动态测试
逍遥模拟器中开启root模式
打开网址后直接点击动态分析仪
选择安卓的
如果点击安卓后出现的是报错页面,看一下是不是没启动模拟器,是的话要启动模拟器后,在重新运行run.bat 文件
这里找到要动态调试的程序,点击开始动态分析即可
这里可以点击TLS/SSL, 将证书绕过或者失效,然后就可以进行数据抓包了
对页面操作完后,可以点击生成数据报告,刚才操作的页面数据就会在里面了,没点击的就不会有
静态测试
输入IP和端口号 访问,静态测试只需要将apk文件托上去就行了
这里就可以看到许多信息