金融类IOS APP端渗透测试实战分享

admin 2024年3月8日01:01:10评论24 views字数 1101阅读3分40秒阅读模式
文章目录

前言

绕过越狱检测绕过证书固定追踪加解密函数Mitmproxy+BurpSuite 交互式数据传输出洞

前言

金融类APP的测试始终是一项挑战,尤其是在Android应用的防护策略日益完善,加壳和加固机制多样化的背景下,这种情况更突显了iOS APP测试的重要性。本文将以作者对金融类iOS App的一次渗透测试实践为基础,分享一些iOS App安全测试的方法和经验。

测试工具:越狱iPhone Frida BurpSuite Mitmproxy

绕过越狱检测

通过App Store安装APP,运行APP发现提示处于越狱状态并闪退。

金融类IOS APP端渗透测试实战分享

这里有两个解决思路:

  1. 屏蔽越狱插件 or frida hook写绕过越狱脚本
  2. 通过AppstorePlus下载低版本APP程序

这里通过两种方式结合,下载安装安装低版本APP并加载屏蔽越狱插件成功运行该APP。

绕过证书固定

运行APP,设置BurpSuite代理发现抓不到包。

尝试启用SSL Kill Switch 2 插件以绕过该APP的证书固定。

金融类IOS APP端渗透测试实战分享

重新点击运行APP并点击功能,通过设置代理成功抓到数据包。

金融类IOS APP端渗透测试实战分享

追踪加解密函数

多次请求数据包发现请求和响应均为乱码,考虑传输数据包进行了加密

解决思路:

  1. 砸壳,反编译源二进制程序,查找分析发包/加密函数
  2. frida-trace跟踪 sm2/sm3/sm4/aes/rsa等含有加密关键字的函数

这里使用了frida-trace跟踪,通过多次点击功能按钮确认使用了AES加密

frida-trace -UF -m "*[* *aes*:*]"

金融类IOS APP端渗透测试实战分享

编写frida-trace脚本

金融类IOS APP端渗透测试实战分享

打印参数值以获得其AES加密的key和iv

金融类IOS APP端渗透测试实战分享

复制BurpSuite中数据包的HEX数据使用该key和iv进行解密尝试。

金融类IOS APP端渗透测试实战分享

成功解密出明文数据。

Mitmproxy+BurpSuite 交互式数据传输

由于请求包与响应包均为加密数据包,使用Mitmproxy编写脚本,以方便BurpSuite进行测试。

金融类IOS APP端渗透测试实战分享

Mitmproxy脚本调试通过后,即可结合BurpSuite进行双向加解密。

IPhone 设置代理7070端口

mitmdump -p 7070 -s up.py --mode upstream:http://127.0.0.1:8080 -k --ssl-insecure --no-http2

mitmdump -p 9090 -s down.py -k --ssl-insecure

BurpSuite监听8080端口,设置上游代理为9090端口

金融类IOS APP端渗透测试实战分享

成功实现请求响应均为明文数据,可进行常规测试。

出洞

最后就是猎杀的时刻~

金融类IOS APP端渗透测试实战分享

本文作者:Depin, 转载请注明来自FreeBuf.COM

原文始发于微信公众号(Hacking黑白红):金融类IOS APP端渗透测试实战分享

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月8日01:01:10
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   金融类IOS APP端渗透测试实战分享http://cn-sec.com/archives/2557489.html

发表评论

匿名网友 填写信息