为何抓不到APP的请求包

本文探讨了为何某些App的请求包无法被常规抓包工具捕获的问题。通过对比Wireshark、tcpdump及Burp的不同表现,揭示了基于socket实现的HTTP请求如何绕过代理服务器,同时介绍了NoPeProxy插件的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题: 为什么会抓不到App发出的请求包?

背景

某次App安全研究测试发现,正常情况下可以抓到请求包,但是却抓不到某点击操作发起的请求链接,但tcpdump却可以抓到,且Burp使用Nope Proxy插件也可抓到,并被wireshark解析为Http协议,依此进行了研究学习,欢迎更多类似例子的学习讨论。

问题解决

实际上Wireshark解析的请求包为HTTP协议,但是基于计算机网络知识,http协议实际上是应用层协议,而TCP则是传输层协议,理论上,http基于tcp协议实现,也即是,我们可以使用socket连接来实现自己的HTTP协议,从而发起HTTP请求。

因此,由于是socket实现(TCP)的http协议,因此不会经过代理服务器(抓包工具一般都无法抓取非http(s)协议),因此抓不到该HTTP请求包。

由于tcpdump是可以抓取所有协议的,所以抓到该请求包是正常的情况。

而至于为什么使用NoPe Proxy插件的Burp就可以抓到该请求包呢?

实际上,NoPe的原理是将所有的域名解析指向Burp代理,也即实际上发出的请求,都不是正确的ip地址,而是指向了burp的ip地址,因此可以抓到该请求包。

其他思路

抓不到包的原因还有很多,比如APP使用SSL Pinning,使用Hook等手段去除证书绑定校验即可;还有可能APP存在恶意环境检测,监测到Root、Debug等则直接不发送网络请求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值