Je suis curieux de savoir comment connaître l'URL de l'API utilisée par une application Android (toute application que j'ai installée) si elle appelle un serveur en ligne (par exemple, un service RESTful). Je suppose que je dois capturer des paquets sur le périphérique et peut-être les analyser dans Wireshark ou quelque chose pour trouver l'URL? Je suis assez compétent en développement Java/Android, mais un peu perdu en matière d'analyse de réseau.
vous pouvez le faire avec l’aide de wirehark . Je liste les étapes ici
emulator @<AVD name>
)adb install app_file_name.apk
sélectionnez l'interface que vous souhaitez capturer et cliquez sur Démarrer pour lancer la capture. vous pouvez voir la capture d'écran à http://i.stack.imgur.com/C891Q.png ou ci-dessous
maintenant, commencez à utiliser cette application pour que les paquets soient transférés et queharleshark la capture. vous verrez des détails dans brutshark comme celui-ci, à l’écran http://i.stack.imgur.com/9Brdl.png ou plus bas
si vous avez utilisé une application couvrant toutes sortes d'activités, vous pouvez empêcher Warshark de capturer des paquets.
maintenant, lancez votre activité principale pour analyser les paquets avec soin, mais tous ne sont pas utiles à notre travail. laisse donc filtrer les paquets qui sont pertinents pour vous. laisse votre adresse IP est 192.168.0.32 puis filtrez tous les paquets dont l’IP est celle-ci. donc l'expression du filtre sera ip.addr==192.168.0.32
appliquera ce filtre. Néanmoins, nous appliquons un autre filtre pour répertorier uniquement les paquets pertinents, de sorte que l’application accède éventuellement à l’API avec le protocole HTTP, alors appliquez le filtre HTTP. expression serait http
. vous pouvez appliquer les deux filtres en même temps ip.addr==192.168.0.32 and http
appuyez sur entrée pour appliquer. maintenant, vous verrez les paquets les plus pertinents pour vous. vous pouvez voir la capture d'écran à http://i.stack.imgur.com/rZ6Vu.png ou ci-dessous
voir attentivement les informations pour les paquets listés, vous verrez beaucoup de détails importants, clés d'API, cookies, etc.
Une méthode très rapide.
Allez sur PlayStore, recherchez Capture de paquets
Téléchargez, installez et lancez.
C'est facile, simple et rapide. Il vous donnera des détails sur les API, les URL et les réponses avec leurs en-têtes.
Cette application suit le concept de Packet Sniffing . Ainsi, cela pourrait ne pas fonctionner avec beaucoup d'applications sécurisées comme WhatsApp, Facebook, Twitter.
UPDATE 1:
Le Capture de paquets n'est plus disponible dans le Play Store, essayez OS Monitor
Utiliser un proxy de débogage. Cliquez sur le bouton de lecture et vous pourrez capturer des URL et afficher plus de détails.
https://play.google.com/store/apps/details?id=com.dans.apps.webd