在现代网络安全和应用开发中,抓包是一个重要的技能。通过抓包,技术人员可以分析应用的数据传输过程,识别潜在的安全问题,并进行优化。然而,随着技术的发展,特别是移动操作系统安全性的提升,抓包变得越来越具有挑战性。
尽管网上有很多关于抓包和绕过代理检测的文章,但在实际操作中发现,很多方法已经失效。因此,本文将介绍一些由演武实验室亲测能够成功绕过检测的方式,以帮助大家更好地进行应用数据的分析和调试。
一、抓包前提-CA证书安装
1.抓包的核心
CA证书 :CA证书校验是否合法
2.抓包流程
- 抓包过程通常通过中间人截获客户端发起的HTTPS请求,伪装成客户端向真实服务器发起请求。
- 中间人截获真实服务器的响应,并伪装成服务器向客户端发送数据。
- 在此过程中,中间人获取了用于加密通信的服务器公钥和对称秘钥,从而能够解密和处理数据。
3.其他问题:
Android6.0 及以下系统可以抓包,而 Android7.0 及以上系统不能再抓包,原因是Android7.0+ 的版本新增了证书验证,所以APP内不再像原来一样默认信任用户的证书。
解决方法:将证书移动至根目录
二、不走代理类怎么绕过
手机设置代理后,功能模块都可以正常访问,百度等网址也可以抓取数据包,唯独目标APP没有数据包,抓包工具无法捕获其任何数据包。这种就是不走代理类的APP。以下是几种绕过这种限制的方法:
方法一:使用iptables强制转发手机流量
- bp设置透明代理
2. 获取应用的UID:
使用adb shell进入设备:adb shell
提升权限为root用户:Su
使用ps -A | grep <APP包名>获取应用的UID
Ps A |grep xxx.andorid.vuls
3. 设置iptables规则:
iptables -t nat -A OUTPUT -p tcp -m owner --uid-owner (应用uid) -j DNAT --to-destination (抓包工具ip:端口)
4. 输入:iptables -t nat -L
此时burp可以对目标APP的数据包进行抓取。
注意:使用完后; 命令来清使用 iptables -t nat -F除所有规则。
方法二:使用VPN方式
- Postern工具
前提条件:
Android 设备安装 Postern 工具;设备在同一局域网下,例如连接同一个 WiFi 网络;
步骤:
1)Android 设备安装好 Postern 工具后,打开 Postern 主界面,添加代理服务器。
2)打开左上角的菜单,选择配置规则,添加规则。
3)选择匹配所有地址,通过代理连接,保存抓包即可
2. httpcanary工具
1)安装httpcanary
2)这里选择跳过→重启手机,利用【movecert】插件挪动证书到根目录
3)默认会抓取所有APP的数据包,排除干扰→选定指定APP→点击飞机→开始抓包
三、检测代理类型抓包
手机设置代理,打开目标APP后→弹出“APP在代理环境下运行,可能存在潜在危险”→点击【确定】后出现闪退现象,无法正常进入目标APP。
绕过方法:
- profxifier(路由抓包)+WiFi共享大师
电脑上通过【WiFi共享大师】开启WiFi,手机连接此WiFi,profxifier抓取应用【WiFi共享大师】的流量,转发到burp监听的端口。
原理:profxifier设置代理抓电脑上【WiFi共享大师】到电脑burp
2. httpcanary 小黄鸟(手机安装)
小黄鸟CA证书配置
1)从下面链接下载安装HTTPCanary
链接: https://github.com/99969/HttpCanary/tree/master
2)导出CA证书
.点击左上角三个杠→点击左下角设置→点击SSL证书设置(配置用于SSL请求的数字证书)→点击导出HttpCanary证书→根据需求选择导出类型----系统证书选(.0)用户证书选(.pem)
未root环境,选择.pem。如果root之后需要更高要求可选.0。
3)安装CA证书
①首先 打开手机设置→找到并点击“安全”→“更多安全设置”→凭据储存下的“从手机储存安装”→CA证书(不同手机系统这步可能不完全相同,但都大同小异按这几个关键词找一下或者直接搜索)
注:如果出现安全性提醒点“仍然安装”就行了
②找到图中这个目录(>HttpCanary>cert)并根据需求选择证书进行安装,这里我选的还是.pem
③提示“已安装”或者在“设置→安全→更多安全设置→受信任的用户凭据→用户”中能看到就完成了
结语:
本文旨在为大家提供一些常用的抓包方法和技巧,希望能够帮助技术人员更好地进行移动应用的分析和调试。通过掌握这些技巧,可以有效应对各种抓包挑战,提升数据分析的效率和准确性。