如何配置 RPi 以作为使用 Burp 作为代理的 wifi 接入点?

如何配置 RPi 以作为使用 Burp 作为代理的 wifi 接入点?

我正在尝试使用 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

相关内容