Guide

Capturer le HTTPS sur un iPhone, sans Mac

Tout se passe sur le téléphone : installez l'app, faites confiance à son certificat, choisissez les hôtes à déchiffrer, activez le VPN. Les requêtes déchiffrées arrivent dans votre dashboard une seconde plus tard — en Wi-Fi comme en cellulaire.

La méthode habituelle pour lire le HTTPS d'un iPhone est un proxy de bureau : un portable sur le même Wi-Fi, un réglage de proxy manuel sur le téléphone, un certificat installé à la main et une session qui meurt dès que vous passez en cellulaire. Busymate DevTools retire le portable de la boucle. L'app exécute un moteur de capture à l'échelle du système directement sur l'appareil grâce à NetworkExtension d'Apple, ne déchiffre que les hôtes que vous mettez dans une liste et transmet chaque requête à un dashboard web que vous pouvez ouvrir n'importe où.

Ce guide vous mène d'un téléphone vide à votre première requête déchiffrée. Il utilise le mode VPN, le tunnel sur l'appareil qui couvre aussi bien le Wi-Fi que le cellulaire. Si vous préférez capturer via un proxy Wi-Fi, l'app propose aussi un mode PAC ; il est mentionné là où c'est utile, mais vous n'en avez pas besoin pour terminer ici.

Avant de commencer

Ce qu'il vous faut

Pas d'ordinateur, pas de câble, pas de jailbreak. Quatre choses, toutes sur le téléphone ou dans un onglet de navigateur.

  • Un iPhone ou un iPad sous un iOS récent, avec l'App Store disponible.

  • Un compte Busymate — connectez-vous avec Apple ou avec un e-mail et un mot de passe. La connexion est ce qui appaire le téléphone à votre dashboard.

  • Deux minutes dans l'app Réglages pour installer le profil du certificat et activer la confiance totale à son égard.

  • Les noms d'hôte de l'API que vous voulez lire. Seuls les hôtes que vous ajoutez sont déchiffrés ; tout le reste passe intact.

Pas à pas

Faites-le dans l'ordre

Six étapes, dans cet ordre. La carte d'état de l'app vous indique quand la partie certificat est terminée, vous n'avez donc jamais à deviner.

  1. 01

    Installez l'app et acceptez le consentement de capture

    Installez Busymate DevTools depuis l'App Store et ouvrez-la. Au premier lancement, une feuille de consentement à la capture réseau s'affiche. Apple l'exige parce que l'app inspecte le trafic de l'appareil, et l'app ne s'appairera pas et ne commencera pas à capturer tant que vous n'aurez pas accepté. C'est une étape unique — si quelque chose tentait un jour de démarrer le tunnel sans votre consentement, la même feuille réapparaîtrait.

  2. 02

    Connectez-vous — cela appaire le téléphone

    Une feuille de connexion recouvre l'app jusqu'à ce que le téléphone soit appairé. Choisissez Se connecter avec Apple ou saisissez votre e-mail et votre mot de passe. Il n'y a ni étape d'activation séparée ni code à saisir : l'app échange votre session connectée contre un identifiant d'appareil longue durée, le stocke dans le trousseau de l'appareil et ferme la feuille.

    Ouvrez le dashboard dans n'importe quel navigateur et regardez l'onglet Devices — le téléphone y est déjà et apparaît Online. Vous pouvez le renommer d'un côté ou de l'autre ; le nom se synchronise dans les deux sens en temps réel, et l'appareil conserve son identité malgré les renommages.

    L'écran de connexion de Busymate DevTools sur un iPhone
  3. 03

    Installez le profil du certificat

    En bas de l'écran d'accueil se trouve la carte d'état. Pour l'instant elle affiche un bouclier jaune et indique Not Ready, parce que le téléphone ne fait pas encore confiance au certificat que l'app utilise pour déchiffrer le HTTPS. Touchez la carte pour ouvrir les étapes de configuration, puis touchez Download.

    L'app ouvre Safari sur un profil de configuration. iOS affiche une bannière Profil téléchargé ; ouvrez l'app Réglages, touchez cette bannière en haut, puis touchez Installer sur le profil Busymate DevTools. C'est le même profil que vous pouvez récupérer à la main à l'adresse ci-dessous.

    Le profil de certificat que l'app ouvre pour vous
    text
    https://busymate.net/ca.mobileconfig
  4. 04

    Activez la confiance totale pour le certificat

    Installer le profil ne suffit pas. iOS exige un interrupteur de confiance distinct et explicite pour tout certificat racine installé par l'utilisateur, et c'est l'étape que la plupart des gens oublient. Allez dans Réglages, puis Général, puis Informations, puis Réglages des certificats, et activez Busymate DevTools dans la liste de confiance totale.

    Revenez dans l'app. Elle revérifie la confiance toutes les quelques secondes tant que la feuille de configuration est ouverte, et à chaque retour au premier plan, si bien qu'en une seconde ou deux la carte d'état passe au vert et indique Ready. L'écran d'accueil remplace la mention de configuration incomplète par les commandes de capture. La confiance survit à une réinstallation de l'app — vous ne le faites qu'une fois par téléphone.

    L'écran d'accueil de Busymate DevTools avec la carte d'état et l'interrupteur de capture
  5. 05

    Ajoutez les hôtes à déchiffrer

    Faire confiance au certificat n'ouvre pas tout. L'app ne déchiffre que les domaines de sa liste SSL proxy ; toute autre connexion continue de passer, mais reste chiffrée et s'affiche avec un cadenas fermé, uniquement le nom d'hôte et un compteur de requêtes. Ouvrez la liste depuis l'engrenage de la carte d'état — Settings, puis Tunnel, puis SSL Proxying —, touchez Add Domain et saisissez un hôte.

    Un nom d'hôte simple correspond exactement à cet hôte. Un astérisque et un point en tête correspondent au domaine parent et à tous ses sous-domaines à n'importe quelle profondeur, ce qui est généralement ce que vous voulez pour une API. Deux interrupteurs liés se trouvent dans la même section Tunnel : Inspect All Requests journalise toutes les connexions du téléphone au lieu des seuls hôtes listés, et MITM All Hosts déchiffre tous les hôtes HTTPS — plus lourd, à laisser désactivé sauf besoin précis. Ignore Hosts masque entièrement du flux le bruit de fond comme la télémétrie.

    Vous pouvez aussi gérer cette liste depuis le dashboard : modifiez-y les domaines SSL proxy de l'appareil et le changement est poussé en direct vers le téléphone, si bien qu'un collègue peut ajouter un hôte pour vous sans toucher l'appareil.

    L'écran des réglages de Busymate DevTools sur un iPhone, où se trouve la liste SSL proxy
  6. 06

    Activez le VPN et lisez le trafic

    Sur l'écran d'accueil, la ligne Status porte l'interrupteur VPN. Activez-le. Vous verrez un bref Syncing, puis Connected ; l'icône de l'app se fige sur un anneau vert avec un badge VPN, et le même badge VPN apparaît dans la barre d'état d'iOS. À partir de cet instant, chaque requête du téléphone, en Wi-Fi comme en cellulaire, est transmise à votre dashboard, et le tunnel reste actif quand vous changez d'app.

    Utilisez l'app que vous déboguez. Puis regardez le dashboard : les nouvelles lignes apparaissent en haut du flux dès qu'elles se produisent, une par requête, et la barre latérale des appareils vous permet de vous concentrer sur ce seul téléphone. Cliquez sur n'importe quelle ligne pour ouvrir la requête et la réponse complètes — en-têtes et corps, JSON mis en forme. Sur le téléphone lui-même, Settings, puis Tools, puis Network Log montre la même capture groupée par domaine, avec un cadenas ouvert sur chaque hôte que vous avez choisi de déchiffrer.

    Le Network Log de l'app sur un iPhone, requêtes groupées par domaine

Dépannage

Ce qui peut mal tourner

Presque toutes les configurations bloquées se résument à l'un de ces cinq cas, et chacun a un signe visible.

  • La carte d'état reste jaune après l'installation du profil

    La confiance totale est encore désactivée. L'installation du profil et l'interrupteur de confiance sont deux étapes distinctes dans iOS ; retournez dans Réglages, Général, Informations, Réglages des certificats et activez Busymate DevTools. La carte passe au vert d'elle-même dès que c'est fait.

  • Un hôte affiche un cadenas fermé et aucun corps

    Cet hôte n'est pas dans la liste SSL proxy, ou vous l'avez ajouté pendant que le VPN tournait. Ajoutez-le, puis désactivez et réactivez le VPN pour que le tunnel prenne en compte la nouvelle liste — une capture en mode PAC n'a pas besoin de ce redémarrage, le tunnel oui.

  • L'app que vous déboguez refuse de se connecter dès que l'hôte est déchiffré

    L'app épingle son propre certificat et en refuse tout autre, ce qu'aucune capture sur l'appareil ne peut contourner. Retirez l'hôte de la liste pour qu'il repasse chiffré, et lisez le guide sur le pinning pour savoir ce que vous pouvez encore voir.

  • La carte PAC indique Unavailable — VPN active

    C'est attendu, pas une erreur. VPN et PAC s'excluent mutuellement ; tant que le tunnel est actif, iOS masque l'état du proxy Wi-Fi, et l'app le dit honnêtement. Désactivez le VPN si vous voulez plutôt utiliser PAC.

  • Rien n'arrive du tout dans le dashboard

    Vérifiez les trois portes dans l'ordre : la feuille de consentement a été acceptée, le téléphone apparaît Online dans l'onglet Devices, et l'interrupteur Status indique Connected. Si l'app n'a brièvement pas pu joindre le backend sous un trafic intense, elle affiche une petite bannière avec le nombre d'entrées perdues, de sorte qu'aucune perte n'est jamais silencieuse.

FAQ

Les questions qu'on nous pose

Je n'ai vraiment besoin ni d'un Mac, ni d'un câble, ni d'un réglage de proxy ?

Exact. La capture, le déchiffrement et la transmission tournent tous sur le téléphone. Un ordinateur n'intervient que si vous choisissez d'y lire le dashboard — et le navigateur du téléphone fait l'affaire aussi.

Capture-t-il le trafic cellulaire et celui des autres apps ?

En mode VPN, oui : le tunnel sur l'appareil couvre toutes les apps du téléphone, en Wi-Fi comme en cellulaire. L'alternative PAC ne couvre que le Wi-Fi, parce que c'est un réglage de proxy Wi-Fi et non un tunnel.

Tout est-il déchiffré une fois le certificat approuvé ?

Non. La confiance ne fait que rendre le déchiffrement possible. L'app déchiffre les hôtes de votre liste SSL proxy et rien d'autre, sauf si vous activez délibérément MITM All Hosts. Les apps qui épinglent leur certificat restent chiffrées quoi qu'il arrive.

Votre première requête déchiffrée est à quelques touches

Installez l'app, amenez la carte d'état au vert et regardez le trafic du téléphone arriver dans votre dashboard.

Ask your mate