Android: capture de requêtes HTTP avec un appareil Android non rooté

J’ai une application Android qui utilise un fichier jar tiers. La requête HTTP est envoyée depuis un fichier jar tiers vers le serveur lorsque l’application est en cours d’exécution. Je dois capturer la requête HTTP envoyée depuis un fichier jar tiers. Je me demande s’il existe un moyen facile d’implémenter un périphérique non rooté

Pour démarrer: j’ai essayé de télécharger “proxyDroid” mais il a besoin d’un téléphone rooté. J’ai également essayé de télécharger “shark for root” avec “shark reader” qui nécessite également un périphérique rooté. est un appareil enraciné

J’ai besoin de quelque chose que fiddler / wireshark peut faire pour Windows. Un parsingur de paquets réseau qui pourrait être facilement intégré à une application Android pouvant donner un object de requête avec tous les champs d’en-tête qu’il contient.

Vous pouvez installer Charles (un proxy HTTP / moniteur HTTP / proxy inverse qui permet à un développeur de visualiser tout le trafic HTTP et SSL / HTTPS entre son ordinateur et Internet) sur votre PC ou votre MAC.

Étapes de configuration:

  • Laissez votre téléphone et votre PC ou MAC dans un même réseau local
  • Lancer Charles que vous avez installé (le port proxy par défaut est 8888)
  • Configurez la configuration wifi de votre téléphone: définissez l’IP du délégué sur l’adresse IP de votre PC ou de votre MAC, port du délégué sur 8888
  • Lancez votre application sur votre téléphone. Et surveiller les requêtes http sur Charles.

Je viens d’installer Drony, n’est pas un shareware et ne nécessite pas de root sur un téléphone portable avec Android 3.x ou supérieur

https://play.google.com/store/apps/details?id=org.sandroproxy.drony

Il intercepte les demandes et sont affichées sur un journal

Vous pouvez utiliser fiddler comme webdebugger http://www.telerik.com/fiddler/web-debugging

Fiddler est un outil de débogage du logiciel telerik, qui vous aide à intercepter toutes les requêtes lancées depuis votre machine.

Vous pouvez utiliser cette application Android Packet Capture . Il intercepte toutes les demandes qui sont faites par une application et il est également très facile à utiliser.

Il y a plusieurs façons de le faire, mais l’une d’entre elles est le violoniste.

Configuration du violon

  1. Aller aux options
  2. Dans l’onglet HTTPS , activez Capture HTTPS Connects et Decrypt HTTPS Traffic
  3. Dans l’onglet Connexions , activez Autoriser les ordinateurs distants à se connecter
  4. Redémarrer le violon

Configuration Android

  1. Se connecter au même réseau
  2. Modifier les parameters réseau
  3. Ajouter un proxy pour la connexion avec l’adresse IP (ou le nom d’hôte) de votre PC et le port du fiddler par défaut (8888 / vous pouvez changer cela dans les parameters)

Maintenant, vous pouvez voir le journal complet de votre appareil dans Fiddler

Aussi, vous pouvez trouver une instruction complète ici

vous pouvez utiliser burp-suite. suivez la procédure ci-dessous.

Configurez l’écouteur Burp Proxy

Dans Burp, allez dans l’onglet “Proxy” puis dans l’onglet “Options”. Dans la section “Proxy Listeners”, cliquez sur le bouton “Ajouter”.

Dans l’onglet “Liaison”, dans la zone “Liaison au port”, entrez un numéro de port qui n’est pas utilisé, par exemple “8082”. Sélectionnez ensuite l’option “Toutes les interfaces”, puis cliquez sur “OK”.

Configurez votre appareil pour utiliser le proxy

Dans votre appareil Android, allez dans le menu «Paramètres».

Si votre appareil n’est pas déjà connecté au réseau sans fil que vous utilisez, activez le bouton «Wi-Fi» et appuyez sur le bouton «Wi-Fi» pour accéder au menu «Wi-Fi».

Dans le tableau “Réseaux Wi-Fi”, recherchez votre réseau et appuyez dessus pour afficher le menu de connexion.

Appuyez sur “Connect”. Si vous avez configuré un mot de passe, entrez-le et continuez.

Une fois connecté, maintenez le bouton réseau enfoncé pour afficher le menu contextuel.Appuyez sur “Modifier la configuration réseau”.

Assurez-vous que la case «Afficher les options avancées» est cochée.

Modifiez les “Paramètres proxy” en “Manuel” en appuyant sur le bouton.

Entrez ensuite l’adresse IP de l’ordinateur exécutant Burp dans le «Nom d’hôte du proxy». Entrez le numéro de port configuré dans la section «Auditeurs proxy» plus haut, dans cet exemple «8082». Appuyez sur «Enregistrer».

Tester la configuration

Dans Burp, accédez à l’onglet “Interception proxy” et assurez-vous que l’interception est activée (si le bouton indique “Interception désactivée”, cliquez dessus pour activer le statut d’interception).

Ouvrez le navigateur sur votre appareil Android et accédez à une page Web HTTP (vous pouvez visiter une page Web HTTPS lorsque vous avez installé le certificate CA de Burp sur votre appareil Android).

La demande doit être interceptée dans Burp.

SandroProxy semble être mieux que Drony (par le même développeur): Vous pouvez (mais vous n’avez pas à) afficher et parsingr le trafic dans le navigateur de votre PC.

Devrait également fonctionner dans les émulateurs.

Définir un https://mitmproxy.org/ comme proxy sur un même réseau local

  • Open source
  • Construit en python 3
  • Installable via pip