Premiers pas avec Fiddler Classic

salut! Après avoir pris connaissance de Charles Proxy, la plupart des lecteurs ont souhaité en savoir plus sur les outils de surveillance et d'analyse du trafic HTTP / HTTPS. Parlons de Fiddler, qui est populaire auprès de nombreux testeurs. Il est peu probable qu'il soit possible de décrire toutes les fonctionnalités de Fiddler dans un seul article, alors regardons les fonctionnalités de base que nous utilisons chaque jour.







Fiddler est:

Une application de serveur proxy multiplateforme pour le débogage HTTP. Il permet à l'utilisateur d'afficher le trafic des ports HTTP, HTTPS et TCP activé auquel il accède depuis, vers ou via l'ordinateur local. Cela inclut les demandes et les réponses, y compris les en-têtes HTTP et les métadonnées (par exemple, les cookies, les informations de mise en cache et de codage), avec des fonctionnalités conçues pour aider les développeurs et les testeurs à analyser les connexions et à échanger des messages.




Les premiers pas



1. Installation et lancement



Vous devez d'abord télécharger et installer l'application.



Si vous avez un système d'exploitation MAC ou Linux, vous devrez pour cela vous rendre dans la section appropriée pour télécharger une version spéciale de Fiddler Everywhere . Dans cet article, nous examinerons l'utilisation de Fiddler Classic pour Windows.



2. Choisir un navigateur pour renifler



Tout d'abord, choisissons le navigateur que nous voulons proxy. À titre d'exemple, nous prendrons le navigateur Mozilla Firefox. Pour ce faire, allez dans l'onglet Parcourir -> puis sélectionnez le navigateur dont nous avons besoin.







3. Nous commençons à détecter le trafic



Après avoir choisi le navigateur dont nous avons besoin, nous devons installer le certificat. Pour ce faire, allez dans l'onglet Outils -> Options .







Dans la boîte de dialogue qui s'ouvre, nous devons sélectionner l'onglet HTTPS .







Ensuite, vous devez cocher la case " DĂ©crypter le trafic HTTPS ". Ensuite, autorisez l'installation du certificat.







Après avoir installé le certificat, ouvrons, par exemple, le site Web de Yula dans un navigateur. Dans la section de gauche, nous voyons toutes les demandes adressées à l'hôte api.youla.io



et pas seulement. Parmi les demandes, nous sélectionnons la demande dont nous avons besoin, par exemple, pour l'émission de toutes les marchandises: https://api.youla.io/api/v1/products











Pour décoder la réponse, vous devez cliquer sur «Le corps de la réponse est incodé. Cliquez pour décoder. ".



4. Configuration d'un proxy sur Android



Pour que les invites de l'application Android apparaissent, vous devez autoriser la connexion à distance. Pour ce faire, allez dans l'onglet Outils -> Options . Dans la boîte de dialogue qui s'ouvre, nous devons sélectionner l'onglet Connexions .







Ensuite, vous devez cocher les cases « Autoriser les ordinateurs distants à se connecter » et « Capturer les requêtes FTP ». Fiddler écoute maintenant sur le port 8888 (c'est le port par défaut, vous pouvez le changer à partir du paramètre ci-dessus). Pour appliquer les paramètres, cliquez sur "OK" et redémarrez Fiddler.

Nous devons maintenant configurer notre appareil Android. Décroche le téléphone, ouvre Propriétés réseau → Nom du réseau WiFi → Serveur proxy → Manuel → Hostname : * votre adresse IP * / Port : * 8888 * → Sauvegardez les propriétés du réseau changé (l'adresse IP de votre PC sur lequel Fiddler est installé est indiqué). Suivez le



lien http://ipv4.fiddler:8888



et téléchargez le certificat FiddlerRoot, puis le téléchargement automatique du certificat commencera. Ouvrez-le, définissez un nom pour le certificat et vous avez maintenant accès au trafic de l'application Android.







A titre d'exemple, allons à l'application Yula et ouvrons une fiche pour n'importe quel produit. Sur le côté gauche de l'écran, nous trouverons une demande de fiche produit, ce sont: https://api.youla.io/api/v1/product/5fc60e5e211e77413a1dc323



... Et dans la partie supérieure droite est - demande de demande, dans la partie inférieure droite - réponse. N'oubliez pas de cliquer sur «Le corps de la réponse est incodé. Cliquez pour décoder. "Pour décoder la réponse.







5. Configuration d'un proxy sur iOS



Prenez votre iPhone, ouvrez Propriétés du réseau → Nom du réseau WiFi → Serveur proxy → Manuel → Nom d'hôte : * Notre IP * / Port : * 8888 * → Enregistrez les propriétés de réseau modifiées.



Maintenant, vous devez suivre le lien http://ipv4.fiddler:8888



, télécharger le certificat FiddlerRoot, " Autoriser " le téléchargement du profil de configuration.







Ensuite, allez dans Paramètres → Profil chargé → Installer .







Ensuite, allez dans Paramètres → Général → À propos de cet appareil → Certificats de confiance → recherchez le certificat installé et définissez-le sur « Approuvé ».







A titre d'exemple, allons à l'application Yula et ouvrons une fiche pour n'importe quel produit. Du côté gauche , nous trouvons une demande de produit de carte est: https://api.youla.io/api/v1/product/5fc60e5e211e77413a1dc323



. Et dans la partie supérieure droite il y a - demande de demande, dans la partie inférieure gauche - réponse. Pour décoder la réponse, vous devez cliquer sur «Le corps de la réponse est codé. Cliquez pour décoder. ".







Opérations sur les requêtes



Sur la droite, dans la fenêtre où se trouvent la demande et la réponse, il y a des outils supplémentaires:



Statistiques - vous permet d'obtenir diverses statistiques à la fois pour une demande et pour un groupe de celles sélectionnées;



Inspecteurs - vous permet d'afficher les en-têtes et de demander des données sous diverses formes;







Filtres - vous permet de suivre des demandes spécifiques;







Chronologie - Une représentation visuelle des demandes terminées sur une chronologie.







Usurpation de données dans Fiddler Classic



Imaginons que nous devions tester la mise en page sur le client. Vous devez vérifier comment un grand nombre de bonus utilisateur sera affiché. Une des options que beaucoup vous proposeront: changer le nombre de bonus dans la base de données et vérifier sur le client. Oui, vous aurez raison! Cependant, le serveur peut avoir un cache et vous devez attendre un certain temps jusqu'à ce que le nombre de bonus soit mis à jour, ou simplement vous connecter à la base de données elle-même et exécuter la demande - cela prend un certain temps. Il existe une option plus simple: changer la réponse du serveur! Fiddler Classic propose plusieurs options pour l'usurpation de données, examinons certaines d'entre elles:



1.1 Points d'arrĂŞt automatiques





Le point d'arrêt est une sorte de point d'arrêt pour une requête. Lorsqu'une requête de la liste donnée est trouvée, elle est affichée à droite et vous pouvez interagir avec elle.

Tout d'abord, mettons un point d'arrêt sur demande, c'est-à-dire sur demande. Allons dans Règles -> Points d'arrêt automatiques et sélectionnez « Avant les demandes »







Exécutons une requête pour un utilisateur https://api.youla.io/api/v1/user/5e6222bbbedcc5975d2375f8



et après avoir exécuté une requête d'un client, dans notre cas c'est l'application Android Yula, la requête de requête est affichée à droite. Nous pouvons le modifier.







Afin d'envoyer une demande, cliquez sur Exécuter jusqu'à l'achèvement . Notre demande sera envoyée au serveur.

Mais nous voulons, par exemple, modifier le nombre de bonus qu'un utilisateur a sur le client. Pour ce faire, nous devons modifier la réponse du serveur. Alors sélectionnons " Après les réponses " dans Règles -> Points d'arrêt automatiques .







Nous avons une application et un profil utilisateur qui compte actuellement 45 bonus sur son compte:







La requĂŞte dans laquelle ce nombre de bonus intervient: https://api.youla.io/api/v1/user/5e6222bbbedcc5975d2375f8





Sur le côté gauche de l'écran, on voit la réponse du serveur.







Trouvez le paramètre requis - "bonus_cnt": 45. Ensuite, changez la valeur du paramètre bonus_cnt, par exemple, à 1 000 000 de bonus, et cliquez sur « Run to Completion ».







Le nouveau montant des bonus sera affiché sur le client. Nous sommes riches!







1.2 RĂ©pondeur automatique





L'AutoResponder est une sorte de point d'arrêt pour une demande. Lorsqu'une requête de la liste donnée est trouvée, elle est affichée à droite et vous pouvez interagir avec elle.



SĂ©lectionnez la demande dont nous avons besoin et faites-la glisser vers la droite.







Après le glisser-déposer, cela ressemblera à ceci:







Ensuite, nous devons changer la règle, pour cela nous changerons:

METHOD:PUT EXACT:https://api.youla.io/api/v1/user/5e6222bbbedcc5975d2375f8?adv_id=99d548bc-0ca0-434e-b016-24611313d9de&app_id=android%2F10777&uid=85c9a921c27fb0e8&usr_latitude=55.9332685&usr_longitude=37.5032966&timestamp=1607977265





En:

REGEX:.+/user/5e6222bbbedcc5975d2375f8*





Nous ne nous soucions pas de la partie avant "/ user / 5e6222bbbedcc5975d2375f8" et ensuite, enregistrez en cliquant sur Enregistrer . Ensuite, faites un clic droit sur la demande -> Modifier la réponse .







Dans la fenêtre qui s'ouvre, allez à RAW, changez la réponse:







Changez la valeur de "45" Ă  "1 000 000" bonus:







Sauvegardons la réponse modifiée en cliquant sur «Enregistrer» et redemandons l'écran «Profil utilisateur». Nous sommes riches:







Simulation de vitesse



Cette fonctionnalité est fournie dans le script. Vous pouvez modifier son comportement en allant dans les paramètres Règles -> Personnaliser les règles et en éditant les valeurs du bloc de script: Pour activer cette fonction, allez dans Règles -> Performances et sélectionnez " Simuler les vitesses du modem ".



if (m_SimulateModem) {

// 300 .

oSession ["-"] = "300";

// 150 .

oSession ["-"] = "150";

}





















Conception de requĂŞtes



Imaginons que nous devions envoyer une demande nous-mêmes et voir la réponse. Il existe un outil Request Builder pour cette tâche. À l'aide de cet outil, vous pouvez créer vous-même des requêtes HTTP. À titre d'exemple, demandons des produits depuis l'écran d'accueil du service Yula.

Tout d'abord, sélectionnons la méthode dont nous avons besoin, dans notre cas, c'est une requête GET. Ensuite, nous rédigerons la requête elle-même: http://api.youla.io/api/v1/products











La prochaine étape consiste à exécuter notre requête en cliquant sur Exécuter. Sur la gauche, nous voyons une demande de produit terminée. Sélectionnons cette demande et, via l'outil Inspectors, examinons la demande et la réponse:







Sommaire



Dans cet article, nous avons tenté de décrire certaines des fonctions de Fiddler Classic, qui sont utilisées par les testeurs d'applications mobiles et Web. C'est tout, ne vous arrêtez pas à un seul instrument, essayez différentes choses.



All Articles