Konfiguracja Burp Suite dla iOS
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Instalacja certyfikatu Burp na urządzeniach iOS
Do analizy bezpiecznego ruchu webowego i SSL pinning na urządzeniach iOS można użyć Burp Suite poprzez Burp Mobile Assistant lub wykonać ręczną konfigurację. Poniżej znajduje się skrócony przewodnik dotyczący obu metod:
Automatyczna instalacja z Burp Mobile Assistant
Burp Mobile Assistant upraszcza proces instalacji certyfikatu Burp, konfiguracji proxy i SSL Pinning. Szczegółowe instrukcje znajdują się w PortSwigger’s official documentation.
Ręczna instalacja — kroki
- Konfiguracja proxy: Rozpocznij od ustawienia Burp jako proxy w ustawieniach Wi‑Fi iPhone’a.
- Pobranie certyfikatu: Przejdź do
http://burpw przeglądarce urządzenia, aby pobrać certyfikat. - Instalacja certyfikatu: Zainstaluj pobrany profil przez Settings > General > VPN & Device Management, następnie włącz zaufanie do PortSwigger CA w Certificate Trust Settings.
Konfiguracja proxy przechwytującego
Ta konfiguracja umożliwia analizę ruchu między urządzeniem iOS a internetem przez Burp i wymaga sieci Wi‑Fi obsługującej ruch klient‑do‑klienta. Jeśli to niemożliwe, alternatywą może być połączenie USB za pomocą usbmuxd. Tutoriale PortSwigger zawierają szczegółowe instrukcje dotyczące konfiguracji urządzenia oraz instalacji certyfikatu.
Przezroczyste proxy przez OpenVPN + iptables REDIRECT
Jeśli targetowana aplikacja ignoruje skonfigurowane proxy HTTP, alternatywą jest umieszczenie urządzenia iOS za bramą VPN kontrolowaną przez badacza i przeźroczyste przekierowanie ruchu do Burp lub mitmproxy.
To nie jest samo w sobie obejście certificate pinning. Rozwiązuje tylko kwestie sieciowe, tak aby ruch urządzenia dotarł do twojego interception proxy bez konfigurowania proxy per‑app lub per‑device. Jeśli aplikacja stosuje rzeczywiste certificate pinning, deszyfrowanie HTTPS nadal się nie powiedzie, dopóki pinning nie zostanie osobno obejścięty.
Typowy przebieg:
- Uruchom serwer OpenVPN na hoście Linux i podłącz urządzenie iOS tak, aby jego ruch trafiał na
tun0. - Powiąż Burp lub
mitmproxyz adresem nasłuchu VPN na porcie8080. - Włącz invisible proxying w Burp, ponieważ przekierowani klienci nie są świadomi proxya i będą komunikować się, jakby łączyli się bezpośrednio z celem.
- Przekieruj TCP
80i443przychodzące natun0do lokalnego nasłuchu proxy. - Dodaj regułę
POSTROUTINGMASQUERADE na interfejsie wychodzącym, aby przekierowany ruch mógł opuszczać bramę, a odpowiedzi wracały przez VPN. - Zainstaluj i oznacz jako zaufany CA interception proxy na urządzeniu iOS, aby aplikacje opierające się wyłącznie na systemowym magazynie zaufania zaakceptowały wygenerowane certyfikaty końcowe.
Przykładowe reguły:
# Redirect VPN client traffic into the local interception proxy
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 443 -j REDIRECT --to-ports 8080
# Allow VPN client traffic to egress back to the Internet
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Notes:
- To przydatne, gdy chcesz forced interception bez zmieniania docelowej aplikacji lub konfigurowania jawnego proxy w ustawieniach Wi‑Fi iOS.
- Przekierowanie
443na Burp działa tylko dla aplikacji, które ufają zainstalowanemu CA albo dla aplikacji, w których walidacja TLS / pinning została już ominięta. - Przykładowy skrypt z repo upstream pobiera IP i dopisuje
/24w regulePOSTROUTING. W praktyce użyj actual VPN client subnet zamiast zakładać stałe/24. - Jeśli używasz Burp, włącz Proxy –> Options –> Edit listener –> Request handling –> Support invisible proxying.
mitmproxymoże być użyty w tej samej konfiguracji, jeśli jest związany z VPN listener IP i spełnione są wymagania transparent-mode.
Zaawansowana konfiguracja dla urządzeń z jailbreakiem
Dla użytkowników z urządzeniami z jailbreakiem, SSH over USB (przez iproxy) oferuje metodę routingu ruchu bezpośrednio przez Burp:
- Establish SSH Connection: Użyj iproxy do przekierowania SSH na localhost, co pozwoli urządzeniu iOS połączyć się z komputerem uruchamiającym Burp.
iproxy 2222 22
- Remote Port Forwarding: Przekieruj port 8080 urządzenia iOS na localhost komputera, aby umożliwić bezpośredni dostęp do interfejsu Burp.
ssh -R 8080:localhost:8080 root@localhost -p 2222
- Global Proxy Setting: Na koniec skonfiguruj ustawienia Wi‑Fi na urządzeniu iOS, aby używały manualnego proxy, kierując cały ruch webowy przez Burp.
Full Network Monitoring/Sniffing
Monitorowanie ruchu urządzeń nie-HTTP można efektywnie przeprowadzić za pomocą Wireshark, narzędzia zdolnego do przechwytywania wszelkich form ruchu danych. Dla urządzeń iOS monitorowanie ruchu w czasie rzeczywistym ułatwia stworzenie Remote Virtual Interface, proces szczegółowo opisany w this Stack Overflow post. Przed rozpoczęciem wymagana jest instalacja Wireshark na systemie macOS.
Procedura obejmuje kilka kluczowych kroków:
- Nawiąż połączenie między urządzeniem iOS a hostem macOS przez USB.
- Określ UDID urządzenia iOS, konieczny krok do monitorowania ruchu. Można to zrobić, wykonując polecenie w Terminalu macOS:
$ rvictl -s <UDID>
Starting device <UDID> [SUCCEEDED] with interface rvi0
- Po zidentyfikowaniu UDID, należy otworzyć Wireshark i wybrać interfejs “rvi0” do przechwytywania danych.
- Do monitorowania ukierunkowanego, np. przechwytywania ruchu HTTP związanego z konkretnym adresem IP, można użyć Capture Filters w Wireshark:
Burp Cert Installation in Simulator
- Export Burp Certificate
In Proxy –> Options –> Export CA certificate –> Certificate in DER format
.png)
- Drag and Drop certyfikat do Emulatora
- W Emulatorze przejdź do Settings –> General –> Profile –> PortSwigger CA i zweryfikuj certyfikat
- W Emulatorze przejdź do Settings –> General –> About –> Certificate Trust Settings i włącz PortSwigger CA
.png)
Gratulacje — pomyślnie skonfigurowano certyfikat Burp CA w iOS simulatorze
Tip
iOS simulator będzie korzystał z konfiguracji proxy MacOS.
Konfiguracja proxy na MacOS
Kroki konfiguracji Burp jako proxy:
- Go to System Preferences –> Network –> Advanced
- In Proxies tab mark Web Proxy (HTTP) and Secure Web Proxy (HTTPS)
- In both options configure 127.0.0.1:8080
.png)
- Kliknij Ok i następnie Apply
Źródła
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.


