Ga naar inhoud

Android-capture

HTTPS vastleggen op Android met een proxy loopt vaak vast op “het certificaat is geïnstalleerd, maar de app accepteert het nog steeds niet.” Op nieuwere systemen vertrouwen apps standaard geen gebruikerscertificaten, en apps met certificate pinning zijn helemaal niet vast te leggen. Android-capture kiest een andere aanpak: capture van het hele apparaat met automatische ontsleuteling, zonder ooit een certificaat op de telefoon te installeren. Zowel fysieke apparaten als emulators worden ondersteund, en zelfs apps met certificate pinning of eigen versleuteling krijgen hun leesbare tekst van binnenuit gelezen.


  • Apparaat verbinden: verbind het met een datakabel met de computer en zet USB-debugging aan; emulators worden meestal automatisch gedetecteerd.
  • Root vereist: alle drie de methodes vereisen een geroot apparaat.
  • Geen certificaat te installeren: geen van de methodes is een man-in-the-middle-proxymethode, dus er is geen certificaat op de telefoon te installeren, wat precies is waarom ze minder rompslomp geven dan proxy-capture op Android. Als er wel een certificaat nodig is, kan een geroot apparaat het vertrouwde certificaat ook automatisch installeren, zodat je de handmatige stappen bespaart.
  • Werkt meteen: de hulpcomponenten die voor de capture nodig zijn, worden automatisch gedownload en gecachet op basis van de apparaatarchitectuur, zonder dat jij handmatig iets hoeft in te richten.

Verkeer vastleggen binnen een Android-emulator op de computer gaat bijna hetzelfde als bij een fysiek apparaat, en is vaak zelfs eenvoudiger:

  • Automatisch gedetecteerd: emulators van bekende merken worden automatisch gevonden, zonder datakabel en zonder handmatige verbinding (alleen fysieke apparaten hebben USB nodig).
  • Meestal al geroot: emulators zijn doorgaans al geroot of kunnen met één klik geroot worden, wat mooi aan de capture-vereiste voldoet.
  • Geef de voorkeur aan “NIC-sleutel”: de systeemkernel van een emulator is vaak ouder en ondersteunt “NIC-capture” mogelijk niet, dus kies gewoon NIC-sleutel, wat de beste compatibiliteit met emulators heeft.

Verder is alles hetzelfde als bij een fysiek apparaat: selecteer het emulatorapparaat en leg vast met de methodes hieronder.


Jouw situatie Wat te gebruiken Opmerkingen
Ouder apparaat / emulator / niet zeker hoe nieuw NIC-sleutel (aanbevolen standaard) Beste compatibiliteit; werkt op vrijwel elk geroot apparaat
Een nieuwer geroot fysiek apparaat NIC-capture Het eenvoudigst, op zichzelf staand
Alleen geïnteresseerd in één app, of die kan niet worden ontsleuteld in NIC-modus Capture op applicatielaag Leest leesbare tekst van binnenuit de app, ongehinderd door certificate pinning / eigen versleuteling

De eerste twee zijn capture van het hele apparaat met automatische ontsleuteling en zonder certificaat te installeren; de derde richt zich op één app en kan zelfs de zwaarst gepantserde apps aan.


Legt al het verkeer op de NIC van het apparaat (standaard wifi) vast en ontsleutelt het automatisch, zonder dat je een specifieke app hoeft te kiezen en zonder certificaat te installeren.

  • Beste compatibiliteit: het is niet kieskeurig over de kernel, en oudere apparaten en diverse emulators werken allemaal, wat het grootste voordeel is ten opzichte van NIC-capture. Als je niet zeker weet hoe nieuw het apparaat is, is dit de veiligste keuze.
  • Een paar apps tonen mogelijk alleen versleutelde tekst: individuele apps die niet-standaard versleutelingscomponenten meeleveren, kunnen verkeer hebben dat niet ontsleuteld kan worden; schakel in dat geval over naar capture op applicatielaag hieronder om het precies aan te pakken.

Hoe te gebruiken: selecteer het apparaat → selecteer de NIC (standaard wifi) → start de capture.


Legt eveneens al het verkeer op de NIC van het apparaat vast en ontsleutelt het automatisch. Wat het onderscheidt, is dat het op zichzelf staat en het eenvoudigst in gebruik is (de data en de informatie die nodig is om te ontsleutelen worden samen verpakt).

  • Vereiste: vereist een nieuwer apparaat (nieuwere kernel). Als het apparaat te oud is om in aanmerking te komen, krijg je bij het starten van de capture een duidelijk bericht “NIC-capture niet ondersteund”; schakel dan gewoon over naar NIC-sleutel.

Hoe te gebruiken: selecteer het apparaat → selecteer de NIC (standaard wifi) → start de capture.


Gericht op één app, leest het leesbare tekst rechtstreeks van binnenuit, en noch certificate pinning noch eigen versleuteling kan dit tegenhouden.

  • Niet beperkt door de tekortkomingen van NIC-modus: apps die in NIC-modus niet kunnen worden ontsleuteld (certificate pinning, eigen versleuteling) krijgen hier ook hun leesbare tekst gelezen, omdat het van binnenuit de app leest, zonder als man-in-the-middle op te treden en zonder afhankelijk te zijn van NIC-ontsleuteling.
  • Zet “socketverkeer” aan als terugval wanneer het 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.
  • Herstart het doelprogramma: je kunt de app eerst sluiten en opnieuw starten om het vroege opstartverkeer vast te leggen.
  • Richt zich alleen op de app die je hebt geselecteerd (niet op verkeer van het hele apparaat).

Hoe te gebruiken: kies de doel-app (selecteer uit de lijst met geïnstalleerde apps, of vul een pakketnaam / procesnaam in; laat leeg om de app op de voorgrond vast te leggen) → vink “doelprogramma herstarten” aan als je opstartverkeer wilt vastleggen → start de capture.


Naast de drie methodes hierboven kan een Android-apparaat 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.


  • Voor het analyseren van de netwerkverzoeken van een telefoonapp en het onderzoeken van problemen met endpoints, met automatische ontsleuteling van het hele apparaat en zonder gepriegel met certificaten.
  • Om vanuit een totaaloverzicht van het apparaat te zien met welke endpoints een apparaat of een app daadwerkelijk verbinding maakte en wat het verstuurde.
  • Wanneer een app certificate pinning gebruikt en NIC-modus niet kan ontsleutelen, gebruik dan capture op applicatielaag om precies de leesbare tekst te bemachtigen.
  • Om tegelijk te bekijken en te bewerken (herschrijven / opnieuw versturen), gebruik proxy-capture.

Terug naar Proxy-capture · Gerelateerd: Gegevens bekijken en decoderen · Certificaatbeheer en -installatie