Android: Capture de requêtes HTTP avec un appareil android non enraciné

J'ai une application android qui utilise un pot tiers dedans. La requête Http est envoyée par jar tiers au serveur lorsque l'application est en cours d'exécution. J'ai besoin de capturer la requête HTTP envoyée par jar tiers. Je me demande s'il existe un moyen facile de mettre en œuvre avec périphérique non enraciné

Pour démarrer : J'ai essayé de télécharger "proxyDroid" mais il faut un téléphone enraciné J'ai également essayé de télécharger "shark for root "avec" Shark reader " qui a également besoin d'un appareil enraciné J'essayai beaucoup d'autres applications qui pourraient capturer la demande complète, mais tout ce dont il a besoin est rooted device

J'ai besoin de quelque chose que fiddler/wireshark peut faire pour windows. Un analyseur de paquets réseau qui pourrait être facilement intégré à l'application android qui pourrait donner un objet de requête avec tous les champs d'en-tête.

46
demandé sur Venkatesh 2013-07-16 23:04:32

8 réponses

Vous pouvez installer Charles - un proxy HTTP / HTTP monitor / Reverse Proxy qui permet à un développeur d'afficher tout le trafic HTTP et SSL / HTTPS entre leur machine et Internet-sur votre PC ou MAC.

Étapes de configuration:

  • Laissez votre téléphone et PC ou MAC dans un même LAN
  • Lancez 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'ip de votre PC ou MAC, le port du délégué sur 8888
  • Lancer votre application dans votre téléphone. Et surveiller les requêtes http sur Charles.
43
répondu SFeng 2018-09-12 01:21:47

Je viens d'installer Drony, n'est pas shareware et il ne nécessite pas de racine 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 requêtes et s'affiche sur un journal

10
répondu Mauricio Gracia Gutierrez 2015-05-26 14:49:03

Vous pouvez utiliser cette application android Capture de Paquets. Il intercepter toutes les demandes qui sont faites par une application et aussi il est très facile à utiliser.

7
répondu Sudhanshu Gaur 2017-03-22 15:46:13

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 chaque requête initiée à partir de votre machine.

6
répondu Citizen Ken 2015-03-03 07:06:50

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

Configuration Du Violon

  1. allez dans options
  2. Dans HTTPS onglet, activer Capture HTTPS Relie et Déchiffrer le trafic HTTPS
  3. Dans Connexions onglet, activer Permettre à des ordinateurs distants à se connecter
  4. Redémarrer fiddler

Configuration Android

  1. se Connecter à meme réseau
  2. modifier paramètres réseau
  3. ajoutez un proxy pour la connexion avec l'adresse IP ( ou le nom d'hôte ) de votre PC et le port de fiddler par défaut ( 8888 / vous pouvez modifier cela dans les paramètres)

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

Vous pouvez également trouver une instruction complète ici

5
répondu Arash Hatami 2018-06-25 21:02:55

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

Configurez L'écouteur de Proxy Burp

Dans Burp, allez dans L'onglet" Proxy "puis dans" Options "tab.In 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 actuellement utilisé, par exemple "8082".Sélectionnez ensuite L'option" Toutes les interfaces "et cliquez sur"OK".

Configurez votre appareil pour utiliser le proxy

Dans votre appareil Android, allez pour 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 "Connecter".Si vous avez configuré un mot de passe, entrez-le et continuez.

Une fois connecté, maintenez enfoncé le bouton réseau pour afficher le menu contextuel.Appuyez Sur " Modifier config réseau".

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

Changez les " paramètres du 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 Proxy".Entrez le numéro de port configuré dans la section "proxy Listeners" plus tôt, dans cet exemple "8082".Appuyez Sur "Enregistrer".

Testez la configuration

Dans Burp, allez dans L'onglet" Proxy Intercept", et assurez - vous que l'interception est " on " (si le bouton indique "Intercept est désactivé" puis cliquez dessus pour basculer l'état d'interception).

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

La requête doit être interceptée dans Burp.

2
répondu Vis 2016-09-25 08:38:36

SandroProxy semble être mieux que Drony (par le même développeur): Vous pouvez (mais ne pas avoir à) facilement afficher et analyser le trafic dans le navigateur de votre PC.

Devrait également fonctionner dans les émulateurs.

2
répondu Nicolai Weitkemper 2017-06-25 13:56:07

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

  • Open Source
  • Construit en python 3
  • Installable via pip
0
répondu AlexisCaffa 2018-05-05 01:14:07