![将 OpenVPN 流量重定向到 Burp Suite](https://linux22.com/image/725179/%E5%B0%86%20OpenVPN%20%E6%B5%81%E9%87%8F%E9%87%8D%E5%AE%9A%E5%90%91%E5%88%B0%20Burp%20Suite.png)
我有一个 Linux Mint VM,我将其作为 iOS 设备的透明代理。我的目的是通过 VM 传输来自 iOS 设备的所有流量,并使用 Burp Suite 拦截它,因为我正在分析的应用程序不遵守系统代理设置(该应用程序是用 Xamarin 编写的)。
以前的指南制作透明代理需要 PPTP VPN,iOS 10 及以上版本不再支持该功能。我尝试在虚拟机上创建一个 OpenVPN 服务器,iptables 规则如下(大致基于上述指南):
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 443 -j REDIRECT --to-port 8080
iptables -t nat -A POSTROUTING -s 10.8.0.0/8 -o enp0s3 -j MASQUERADE
上述规则的一些上下文:enp0s3
是我的 VM 的桥接适配器,tun0
是默认的 OpenVPN 接口。
问题是,VPN 仅在规则PREROUTING
不存在时才有效。如果我将规则添加PREROUTING
到 iptables,客户端将无法连接到互联网上的任何网页(但奇怪的是,它能够连接到网络内的本地 Web 服务器)。
其他解决方案我尝试过但没有奏效的是:
iptables -t nat -A PREROUTING --source 10.0.0.0/8 -p tcp -m tcp --dport 80 -j DNAT --to 127.0.0.1:8080
有没有办法将流量从 OpenVPN(或任何其他现代 VPN,如 L2TP over IPSec、Cisco IPSec)转发/重定向到 Burp Suite 进行流量分析,还是我运气不好?