📖使用Singbox和Tun虚拟网卡进行高效抓包
00 分钟
2024-7-3
2024-7-4
type
status
date
slug
summary
tags
category
icon
password
在某些请求无法应用代理的情况下,传统的抓包方案可能会失效。这时,可以采用一种有效的替代方案,即使用Tun虚拟网卡。在网络层拦截请求并将其交给指定的代理进行抓包,可以确保全面的数据捕获。
举个例子,我直接用singbox的tun,贴个配置:
tun.json
其中1081端口为采用中间人攻击抓包的代理端口,可以用mitmweb、fiddler等工具
这里贴个mitmweb的命令行:
其中,1080端口为代理分流端口,
如果不需要分流可以去掉这个参数
如果需要分流,我这里给个singbox的参考分流配置(独立运行的第二个singbox,和上面的tun区分开来):
config.json
其中outbound中的proxy可以自行设置为自己的梯子节点
 
 
分享一下我的思路,我需要捕获 iOS 应用的流量,但使用系统代理无法看到请求。为了解决这个问题,我在 Mac 上启动了 Charles(Fiddler 应该也类似,只是我很久没有用过 Windows 和 Fiddler 了)。
以下是具体步骤:
  1. 安装证书:首先,在 iPhone 上安装 Charles 的证书。
  1. 设置监听端口:假设 Charles 的监听端口为 12345。
  1. 配置代理:在 iPhone 上打开小火箭(Shadowrocket),使用 HTTP 代理(理论上 SOCKS5 代理也可以),IP 地址设置为电脑的 IP,端口设置为 12345。
  1. 开启全局代理:在小火箭中开启全局代理。
这样,iPhone 上的所有流量都会被转发到 Charles,从而可以进行抓包分析。
 
 
Proxifier 的程序,可以针对不同的进程、域名和端口进行拦截,并且可以配合任意抓包工具使用。
另外,字节的一位大佬开发了一款内核抓包工具 eCapture,该工具利用 eBPF 技术,在 Linux/Android 内核上捕获 SSL/TLS 明文数据,无需 CA 证书。它能够抓取 TLS 握手密钥,并导入 Wireshark 进行解密。
上一篇
DockerHub 国内镜像源列表
下一篇
利用github和cloudflare搭建零成本搭建个人博客