Alle eingehenden/ausgehenden Daten einer Android-App auslesen?
Hi,
Wie kann ich alle Daten die eine Android App bekommt (zum Beispiel von einem Server oder Google firebase) auslesen und mir anzeigen lassen?
Ein Beispiel für firebase wäre das wenn die App Set(...,...) Benutzt dann wird ja was in firebase geschrieben, wie kann ich das "abfangen" und auslesen?
Btw ich möchte das nur bei meiner eigenen App (ein Spiel) machen um zu schauen ob es sicher gehen Hacker ist.
(Das Spiel ist in Java und kotlin und benutzt eine firebase Realtime Database mit appchecktoken. Können Angreifer diesen appchecktoken auslesen?)
Vielen Dank im voraus
2 Antworten
Wenn sich dein Android über eine Fritzbox verbindet, kannst du dort einen Paketmittschnitt durchführen und die Kommunikation danach mit Wireshark auswerten. Die Fritzbox kann das, du brauchst nichts zusätzlich. Bei anderen Routern gibt es diese Möglichkeit eventuell auch.
Wenn du es nicht so low level brauchst, könnte NetGuard (android app) dir helfen. Es protokolliert, mit welchem Server die Apps kommunizieren und kann gezielt auch einzelne Serverzugriffe blockieren bzw. freigeben. Den Datenverkehr selbst siehst du da aber leider nicht.
Sorry, habe die Antwort aus Versehen als neue Antwort geschrieben...
Oh, pcap gibt es auch für Android, das wusste ich noch gar nicht. Danke für die Info! :)
pcapandroid dürfte dem Namen nach (npcap ist der PC Treiber für Mitschnitte) ganz normale Paketmitschnitte schreiben. Die müsstest du in Wireshark auf dem PC öffnen und damit dann auch komfortabel analysieren können. In die Bedienung muss man sich ein wenig reinfuchsen, aber es gibt gute Dokumentationen dazu. Das wichtigste ist sicher die Filterfunktion, um nur den gewünschten Traffic anzuzeigen.
In der App kann man direkt nach einer App filtern und ob die Verbindung aktiv oder geschlossen sein soll
Kann man irgendwo online diesen payload decrypten und wenn nicht man braucht für wireshark doch bestimmt einen decryption Key oder?
Wireshark kann nach allem filtern, was im Traffic vorkommt, in der Regel filtert man aber meist nach IP Adressen der beteiligten Server und Clients.
Online ist mir leider nichts bekannt und ja, ohne Key kann das Wireshark natürlich auch nicht decrypten.
Wenn es deine App ist, müsstest du ja den Key erzeugt haben. In der Regel sind Keys in einer Keystore Datei hinterlegt, aus der man sie mit dem passenden Passwort extrahieren kann.
Danke für die schnelle Antwort :)
Ich habe eine Android App die zeichnet den Netzwerk Traffic auf (pcapndroid) und da sieht man Dan die url, Location vom Ziel Server und so und die Bytes die gesendet werden, die kann man sich auch im plain Text anzeigen lassen aber leider encrypted xD
Hast du eine Idee wie ich das decrypten kann?