我正在尝试使用 Raspberry Pi Model B+ 作为 WiFi 接入点,其 IP 地址为 192.168.0.1。此接入点应将所有 HTTP 和 HTTPS 流量重定向到端口 8080 上 IP 地址为 192.168.0.29 的另一台计算机。
在 192.168.0.29 上,我使用 Burp Proxy 来监听传入的连接。我已为 Burp 配置了“支持隐形代理”选项。
我已成功设置 WiFi 接入点,并能够将各种客户端计算机连接到该接入点。通过接入点的互联网连接也正常运行。
我已经使用 hostapd 来设置 wifi 接入点。
但是,当我尝试添加代理配置时,接入点停止工作。我可以看到传出的请求正在通过 192.168.0.29 上的代理,但我没有在代理或尝试使用代理的客户端计算机上收到任何响应。
我在我的 Pi 上使用以下配置:
sudo iptables-legacy -t nat -A POSTROUTING -j MASQUERADE
sudo iptables-legacy -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.0.29:8080
sudo iptables-legacy -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 192.168.0.29:8080
Burp 正在监听,并且“支持隐形代理”选项已激活。但是我看不到传入的响应,只看到传出的请求。
这是 curl 请求的结果https://webhook.site/
curl "https://webhook.site/213c00e4-5ec8-4c8d-a89a-34d542c6d81/network=PiAP" -v [17/12/22 14:07:10]
* Trying 46.4.105.116:443...
* Connected to webhook.site (46.4.105.116) port 443 (#0)
* ALPN: offers h2
* ALPN: offers http/1.1
* CAfile: /etc/ssl/cert.pem
* CApath: none
* (304) (OUT), TLS handshake, Client hello (1):
* (304) (IN), TLS handshake, Server hello (2):
* (304) (IN), TLS handshake, Unknown (8):
* (304) (IN), TLS handshake, Certificate (11):
* (304) (IN), TLS handshake, CERT verify (15):
* (304) (IN), TLS handshake, Finished (20):
* (304) (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / AEAD-AES256-GCM-SHA384
* ALPN: server did not agree on a protocol. Uses default.
* Server certificate:
* subject: C=PortSwigger; O=PortSwigger; OU=PortSwigger CA; CN=webhook.site
* start date: Dec 3 13:00:10 2022 GMT
* expire date: Dec 3 13:00:10 2023 GMT
* subjectAltName: host "webhook.site" matched cert's "webhook.site"
* issuer: C=PortSwigger; ST=PortSwigger; L=PortSwigger; O=PortSwigger; OU=PortSwigger CA; CN=PortSwigger CA
* SSL certificate verify ok.
> GET /213c00e4-5ec8-4c8d-a89a-34d542c6d81/network=PiAP HTTP/1.1
> Host: webhook.site
> User-Agent: curl/7.84.0
> Accept: */*
>
^C
我没有看到传入请求https://webhook.site,这让我怀疑传出的请求是否真的按预期工作。
这是 ifconfig 的输出:
ifconfig | grep 192
inet 192.168.0.29 netmask 0xffffff00 broadcast 192.168.0.255
这是跟踪路由
traceroute google.com
traceroute to google.com (142.250.181.206), 64 hops max, 52 byte packets
1 192.168.0.1 (192.168.0.1) 16.717 ms 4.513 ms 3.043 ms
2 fritz.box (192.168.178.1) 3.710 ms 3.758 ms 3.484 ms
3 ip1f11XXXX.dynamic.kabel-deutschland.de (31.17.8X.XXX) 17.808 ms 35.506 ms 14.934 ms
4 ip5886XXXX.static.kabel-deutschland.de (88.134.21X.XXX) 16.788 ms 14.614 ms 14.202 ms
5 ip5886XXXX.dynamic.kabel-deutschland.de (88.134.18X.XXX) 13.349 ms 13.917 ms 16.057 ms
6 145.254.3.88 (145.254.3.88) 20.858 ms 18.649 ms 17.655 ms
7 145.254.2.217 (145.254.2.217) 26.106 ms 16.028 ms 17.017 ms
8 72.14.194.138 (72.14.194.138) 17.006 ms