iOS Burp Suite-Konfiguration
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Installation des Burp-Zertifikats auf iOS-Geräten
Für die Analyse von sicherem Webverkehr und SSL pinning auf iOS-Geräten kann Burp Suite entweder über den Burp Mobile Assistant oder durch manuelle Konfiguration genutzt werden. Unten finden Sie eine zusammengefasste Anleitung für beide Methoden:
Automatische Installation mit Burp Mobile Assistant
Der Burp Mobile Assistant vereinfacht den Installationsprozess des Burp-Zertifikats, die Proxy-Konfiguration und SSL pinning. Detaillierte Anleitungen finden Sie in der offiziellen Dokumentation von PortSwigger.
Manuelle Installationsschritte
- Proxy-Konfiguration: Beginnen Sie damit, Burp als Proxy in den Wi‑Fi‑Einstellungen des iPhones zu setzen.
- Zertifikat herunterladen: Rufen Sie
http://burpim Browser des Geräts auf, um das Zertifikat herunterzuladen. - Zertifikatsinstallation: Installieren Sie das heruntergeladene Profil über Einstellungen > Allgemein > VPN & Geräteverwaltung, und aktivieren Sie dann das Vertrauen für die PortSwigger CA unter Zertifikatsvertrauenseinstellungen.
Konfiguration eines Interception Proxy
Die Einrichtung ermöglicht die Analyse des Datenverkehrs zwischen dem iOS‑Gerät und dem Internet über Burp und erfordert ein Wi‑Fi‑Netz, das Client‑zu‑Client‑Verkehr unterstützt. Falls nicht verfügbar, kann eine USB‑Verbindung über usbmuxd als Alternative dienen. Die Tutorials von PortSwigger bieten ausführliche Anleitungen zur Gerätekonfiguration und zur Zertifikatsinstallation.
Transparentes Proxying über OpenVPN + iptables REDIRECT
Wenn die Ziel‑App den konfigurierten HTTP‑Proxy ignoriert, besteht eine Alternative darin, das iOS‑Gerät hinter ein researcher-controlled VPN gateway zu setzen und den Verkehr transparent an Burp oder mitmproxy weiterzuleiten.
Dies ist not a certificate pinning bypass by itself. Es löst lediglich die Netzwerkverbindung, sodass der Geräteverkehr Ihr Interception‑Proxy erreicht, ohne einen pro‑App- oder pro‑Gerät‑Proxy einzurichten. Wenn die App echtes certificate pinning durchführt, wird die HTTPS‑Entschlüsselung weiterhin fehlschlagen, bis das Pinning separat umgangen wird.
Typischer Ablauf:
- Führen Sie einen OpenVPN-Server auf einem Linux‑Host aus und verbinden Sie das iOS‑Gerät, sodass dessen Verkehr auf
tun0ankommt. - Binden Sie Burp oder
mitmproxyan die VPN‑Listener‑IP auf Port8080. - Aktivieren Sie invisible proxying in Burp, da umgeleitete Clients proxy‑unaware sind und so sprechen, als würden sie eine direkte Verbindung zum Ziel herstellen.
- Leiten Sie auf
tun0ankommende TCP‑Ports80und443an den lokalen Proxy‑Listener weiter. - Fügen Sie auf der Ausgangsschnittstelle eine
POSTROUTINGMASQUERADE-Regel hinzu, damit der proxied Traffic das Gateway verlassen kann und Antworten über das VPN zurückkehren. - Installieren und vertrauen Sie der Interception‑Proxy‑CA auf dem iOS‑Gerät, damit Apps, die ausschließlich dem System‑Trust‑Store vertrauen, die generierten Leaf‑Zertifikate akzeptieren.
Beispielregeln:
# 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
Hinweise:
- Dies ist nützlich, wenn du ein erzwungenes Abfangen möchtest, ohne die Ziel-App zu ändern oder einen expliziten Proxy in den iOS-Wi‑Fi‑Einstellungen zu konfigurieren.
- Das Umleiten von
443zu Burp funktioniert nur für Apps, die der installierten CA vertrauen oder für Apps, bei denen TLS-Validierung / pinning bereits umgangen wurde. - Das Beispielskript im upstream-Repository nimmt eine IP und hängt
/24in derPOSTROUTING-Regel an. In der Praxis solltest du das tatsächliche VPN-Client-Subnetz verwenden, anstatt von einem festen/24auszugehen. - Wenn du Burp verwendest, aktiviere Proxy –> Options –> Edit listener –> Request handling –> Support invisible proxying.
mitmproxykann in der gleichen Konfiguration verwendet werden, wenn es an die VPN-Listener-IP gebunden ist und die Anforderungen für den transparent-mode erfüllt sind.
Erweiterte Konfiguration für jailbroken Devices
Für Nutzer mit jailbroken Devices bietet SSH über USB (via iproxy) eine Methode, Traffic direkt durch Burp zu leiten:
- SSH-Verbindung herstellen: Nutze iproxy, um SSH auf localhost weiterzuleiten, sodass das iOS-Gerät eine Verbindung zum Rechner mit Burp herstellen kann.
iproxy 2222 22
- Remote Port Forwarding: Leite den Port 8080 des iOS-Geräts auf localhost des Rechners weiter, um direkten Zugriff auf Burps Oberfläche zu ermöglichen.
ssh -R 8080:localhost:8080 root@localhost -p 2222
- Globaler Proxy: Zuletzt konfiguriere in den Wi‑Fi‑Einstellungen des iOS-Geräts einen manuellen Proxy, um den gesamten Webverkehr durch Burp zu leiten.
Umfassende Netzwerküberwachung/Sniffing
Die Überwachung von nicht-HTTP-Verkehr eines Geräts kann effizient mit Wireshark durchgeführt werden, einem Tool, das alle Arten von Datenverkehr erfassen kann. Für iOS-Geräte wird die Echtzeit-Überwachung des Traffics durch das Anlegen einer Remote Virtual Interface ermöglicht — ein Verfahren, das in diesem Stack Overflow post beschrieben ist. Vor Beginn muss Wireshark auf einem macOS-System installiert sein.
Das Verfahren umfasst mehrere wesentliche Schritte:
- Stelle eine Verbindung zwischen dem iOS-Gerät und dem macOS-Host über USB her.
- Ermittle die UDID des iOS-Geräts — ein notwendiger Schritt für die Traffic‑Überwachung. Dies lässt sich durch Ausführen eines Befehls im macOS-Terminal erreichen:
$ rvictl -s <UDID>
Starting device <UDID> [SUCCEEDED] with interface rvi0
- Nach der Identifizierung der UDID Wireshark öffnen und die Schnittstelle “rvi0” für die Aufzeichnung auswählen.
- Für gezielte Überwachung, z. B. zum Erfassen von HTTP-Traffic zu einer bestimmten IP-Adresse, können Wireshark Capture-Filter verwendet werden:
Burp-Zertifikatinstallation im Simulator
- Burp-Zertifikat exportieren
In Proxy –> Options –> Export CA certificate –> Certificate in DER format
.png)
- Zertifikat per Drag and Drop in den Emulator ziehen
- Im Emulator zu Settings –> General –> Profile –> PortSwigger CA gehen und das Zertifikat überprüfen
- Im Emulator zu Settings –> General –> About –> Certificate Trust Settings gehen und PortSwigger CA aktivieren
.png)
Glückwunsch — Sie haben das Burp-CA-Zertifikat erfolgreich im iOS-Simulator konfiguriert
Tip
Der iOS-Simulator verwendet die Proxy-Konfigurationen von macOS.
macOS Proxy-Konfiguration
Schritte, um Burp als Proxy zu konfigurieren:
- Gehen Sie zu System Preferences –> Network –> Advanced
- Im Reiter Proxies Web Proxy (HTTP) und Secure Web Proxy (HTTPS) aktivieren
- In beiden Optionen 127.0.0.1:8080 eintragen
.png)
- Auf Ok und dann auf Apply klicken
Referenzen
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.


