iOS-capture
Vastleggen op een iPhone / iPad is altijd al een hoofdpijndossier geweest. Gewone tools vereisen meestal ofwel een jailbreak, of ze kunnen alleen een proxy opzetten (wat nog steeds betekent dat je een profiel en een certificaat moet installeren, en apps met certificate pinning kunnen dan nog steeds niet worden vastgelegd). iOS-capture biedt drie methodes zonder jailbreak, van “systeemverzoeken zien met nul configuratie” tot “volledig verkeer voor het hele apparaat” tot “volledige leesbare tekst voor één app.” Eén daarvan zal je doel raken.
1. Algemene voorbereiding
Section titled “1. Algemene voorbereiding”- Apparaat verbinden: gebruik een datakabel om de iPhone / iPad met de computer te verbinden, en tik dan op Vertrouwen op het apparaat.
- Geen jailbreak nodig: alle drie de methodes zijn voor niet-gejailbreakte apparaten.
- Compatibel met nieuwe systemen: nieuwere versies van iOS (inclusief iOS 17 en hoger) zijn overgestapt op een nieuw apparaatkanaal, en verbinden en vastleggen werken hier nog steeds.
- Als hetzelfde apparaat ook op het netwerk verschijnt, kies dan het bijpassende USB-/netwerk-item.
2. Hoe je kiest tussen de drie methodes
Section titled “2. Hoe je kiest tussen de drie methodes”| Jouw behoefte | Wat te gebruiken | Wat je kunt zien | Certificaat installeren / opnieuw ondertekenen nodig? |
|---|---|---|---|
| Snel zien welke HTTPS-verzoeken het systeem verstuurde (adres / status / headers) | Capture op systeemniveau | Werkt ook voor gewone apps (bij gewone apps is de body niet zichtbaar) | Geen van beide; alleen een diagnostisch profiel |
| Al het verkeer voor het hele apparaat (inclusief niet-HTTP, handshake / SNI) | NIC-capture | Volledige data (standaard versleutelde tekst, op verzoek te ontsleutelen) | Niet nodig om versleutelde tekst te bekijken; opnieuw ondertekenen alleen nodig om een specifieke app te ontsleutelen |
| De volledige leesbare uitwisseling (inclusief de body) van een bepaalde app | Capture op applicatielaag | Volledige leesbare tekst voor één app | De doel-app moet opnieuw worden ondertekend met een ontwikkelcertificaat |
Geen van de drie vereist een jailbreak. Capture op systeemniveau is bijzonder moeiteloos: zelfs voor gewone apps en App Store-apps zie je welke HTTPS-adressen ze aanroepen, iets wat gewone tools niet kunnen op een niet-gejailbreakte iPhone.
3. Capture op systeemniveau: het meest moeiteloos, werkt ook voor gewone apps
Section titled “3. Capture op systeemniveau: het meest moeiteloos, werkt ook voor gewone apps”Wil je snel zien welke HTTPS-verzoeken deze iPhone heeft verstuurd, zonder een certificaat te installeren, een proxy op te zetten of met certificate pinning te maken te krijgen? Dit is de meest moeiteloze methode.
- Toont een lijst van de HTTP(S)-transacties die het systeem verstuurt: verzoekmethode, volledige URL (het adres is leesbare tekst, zelfs voor HTTPS), statuscode, verzoekheaders en antwoordheaders.
- Geen CA-certificaat te installeren, geen proxy op te zetten, geen certificate pinning om mee om te gaan.
- Hoeveel je kunt zien wordt beperkt door de systeemdiagnoselogs zelf:
- Gewone apps en App Store-apps: meestal zie je alleen het verzoekadres en de verzoekheaders.
- Apps ondertekend met een ontwikkelcertificaat: je ziet de volledige verzoek-/antwoordbody.
Vereiste: je moet het bijbehorende apparaatdiagnoseprofiel installeren (eenmalig is genoeg).
4. NIC-capture: zie alles op dit apparaat
Section titled “4. NIC-capture: zie alles op dit apparaat”Legt al het netwerkverkeer van het apparaat vast, ongeacht app of protocol, inclusief niet-HTTP QUIC en eigen protocollen.
- Wat je standaard ziet: standaard is dit versleutelde pakketten + metadata (doeladres, poort en de SNI-hostnaam uit de TLS-handshake), genoeg om helder te zien “met welke plekken dit apparaat verbinding maakte en met welk protocol.”
- Leesbare tekst willen: gebruik “Dit programma ontsleutelen” op de doel-app om zijn leesbare tekst te ontsleutelen; dit vereist dat de app opnieuw is ondertekend met een ontwikkelcertificaat.
5. Capture op applicatielaag: volledige leesbare tekst voor één app
Section titled “5. Capture op applicatielaag: volledige leesbare tekst voor één app”Gericht op één app, verkrijgt deze methode de volledige leesbare tekst (inclusief de body) die de app verstuurt en ontvangt. Certificate pinning kan dit niet tegenhouden, omdat het van binnenuit de app leest.
- Herstart het doelprogramma: je kunt de app eerst sluiten en opnieuw starten om ook het vroege opstartverkeer vast te leggen.
- Zet “socketverkeer” aan als terugval wanneer leesbare tekst niet kan worden gedecodeerd: voor apps die statisch linken / een eigen bibliotheek gebruiken en waarvan de gebruikelijke methodes geen leesbare tekst kunnen verkrijgen, zet je deze schakelaar aan om een pad op lager niveau naar de data te nemen.
- Alleen apps die opnieuw zijn ondertekend met een ontwikkelcertificaat zijn selecteerbaar in de app-lijst; de rest is grijs.
Vereiste: de doel-app moet opnieuw worden ondertekend met een ontwikkelcertificaat; App Store-apps en systeem-apps moeten eerst opnieuw worden ondertekend voordat ze als doel kunnen worden gebruikt.
6. Je kunt ook proxy-capture gebruiken
Section titled “6. Je kunt ook proxy-capture gebruiken”Naast de drie methodes hierboven kan een iPhone / iPad ook proxy-capture gebruiken: richt de wifi-proxy van het apparaat op deze machine, installeer het root-certificaat, en je kunt HTTPS-leesbare tekst vastleggen net als op een computer en de volledige set aan herschrijf- en replaymogelijkheden gebruiken. Dit is geschikt voor het debuggen van apps die via de systeemproxy lopen, of scenario’s die op regels gebaseerde herschrijving / replay van mobiel verkeer vereisen.
- Certificaat installeren: scan de QR-code op de telefoon voor installatie met één tik → Certificaatbeheer en -installatie
- Capture- en herschrijfmogelijkheden: → Proxy-capture
7. Wanneer je iOS-capture gebruikt
Section titled “7. Wanneer je iOS-capture gebruikt”- Om snel te onderzoeken “welke endpoints een app aanriep en wat ze teruggaven” is capture op systeemniveau het makkelijkst, en zelfs gewone apps werken.
- Om al het verkeer van het hele apparaat te zien (inclusief niet-HTTP), gebruik NIC-capture.
- Als je de doel-app opnieuw kunt ondertekenen en de volledige leesbare body wilt, gebruik capture op applicatielaag.
- Om tegelijk te bekijken en te bewerken (mobiele verzoeken herschrijven / opnieuw versturen), gebruik proxy-capture.
Terug naar Proxy-capture · Gerelateerd: Gegevens bekijken en decoderen · Certificaatbeheer en -installatie