
IP 주소가 192.168.0.1인 Raspberry Pi Model B+를 WiFi 액세스 포인트로 사용하려고 합니다. 이 액세스 포인트는 모든 HTTP 및 HTTPS 트래픽을 포트 8080에서 IP 주소 192.168.0.29를 사용하는 다른 시스템으로 리디렉션해야 합니다.
192.168.0.29에서 들어오는 연결을 수신하는 Burp Proxy를 사용하고 있습니다. 저는 '보이지 않는 프록시 지원' 옵션으로 Burp를 구성했습니다.
WiFi 액세스 포인트를 성공적으로 설정했으며 다양한 클라이언트 시스템에 연결할 수 있습니다. 액세스 포인트를 통한 인터넷 연결도 제대로 작동하고 있습니다.
Wi-Fi 액세스 포인트를 설정하기 위해 Hostapd를 사용했습니다.
그러나 프록시 구성을 추가하려고 하면 액세스 포인트가 작동을 멈춥니다. 나가는 요청이 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가 수신 중이며 '보이지 않는 프록시 지원' 옵션이 활성화되었습니다. 그러나 나가는 요청만 들어오는 응답을 볼 수 없습니다.
이것은 컬 요청의 결과입니다.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