Analyse approfondie : utilisation de l'outil de capture de paquets Charles pour l'analyse inverse iOS

La capture de paquets est une étape très importante de l'ingénierie inverse.Aujourd'hui, nous présenterons en détail un outil de capture de paquets Charles qui est couramment utilisé dans l'analyse inverse iOS.

1. Introduction, téléchargement et installation de l'outil Charles

insérer la description de l'image ici
Charles est un puissant outil proxy qui peut être utilisé pour intercepter, surveiller et modifier le trafic réseau. Vous pouvez télécharger et installer la version adaptée à votre système d'exploitation depuis le site officiel de Charles . Charles propose trois versions client pour les plateformes Mac, Windows et Linux, ainsi qu'un plug-in Firefox. Aujourd'hui, nous discutons principalement de la version Mac.

2. Paramètres de base de Charles sur Mac

insérer la description de l'image ici
Avant de commencer à capturer des paquets, assurez-vous que Charles a été correctement configuré. Voici les étapes de configuration de base côté Mac :

  1. Installer Charles : Téléchargez et installez la version de Charles pour Mac.
  2. Démarrez Charles : ouvrez l'application Charles et assurez-vous qu'elle est en cours d'exécution.

3. Comment installer le certificat Charles sur iOS

Pour que Charles puisse intercepter le trafic HTTPS sur les appareils iOS, vous devez installer le certificat en suivant ces étapes :

  1. Certificat d'installation :

Mac : Dans le menu Charles, sélectionnez "Aide" -> "Proxyage SSL" -> "Installer le certificat racine Charles"

insérer la description de l'image ici
iOS : dans le menu Charles, sélectionnez « Aide » -> « Proxy SSL » -> « Installer le certificat racine Charles sur un appareil mobile ou un navigateur distant », puis suivez les instructions.

  1. Configurer le proxy de l'appareil : dans les paramètres Wi-Fi de votre appareil iOS, configurez le proxy sur l'adresse IP de votre Mac et le port sur lequel Charles écoute (la valeur par défaut est 8888).

4. Utilisez Charles pour capturer et analyser les paquets

4.1 Récupérer les requêtes ordinaires

Apprendre à utiliser Charles pour capturer des requêtes HTTP ordinaires peut vous aider à comprendre en profondeur le processus de communication de l'application. Voici les étapes de base :

  1. Activer la capture de paquets : dans Charles, assurez-vous que l'option "Proxy" est activée.

  2. Capturez la demande : sur l'appareil iOS, ouvrez l'application cible et utilisez-la, en observant la demande et la réponse affichées dans Charles.

4.2 Capture des requêtes HTTPS

Le cracking des requêtes HTTPS nécessite une configuration supplémentaire, voyons comment procéder :

  1. Activer le proxy SSL : Dans Charles, cochez l'option "SSL Proxying" dans le menu "Proxy".

  2. Ajouter un emplacement de proxy SSL : dans les "Paramètres de proxy SSL" de Charles, ajoutez le nom de domaine que vous souhaitez bloquer.

  3. Installer le certificat : installez le certificat SSL généré par Charles sur votre appareil iOS.

  4. Capturer les requêtes : vous pouvez désormais capturer et analyser les requêtes et les réponses HTTPS dans Charles.

4.3 Interception et modification des demandes

insérer la description de l'image ici
La fonctionnalité « Points d'arrêt » de Charles vous permet de définir des points d'arrêt pour intercepter les demandes ou les réponses à des fins de modification et d'analyse.

  1. Activer les points d'arrêt : dans Charles, sélectionnez "Proxy" -> "Points d'arrêt" et activez-le.

  2. Configurez les points d'arrêt : ajoutez les demandes ou les réponses que vous souhaitez intercepter, apportez les modifications et analyses nécessaires.

5. Comment utiliser Charles pour l'analyse inverse

L'idée de base de l'utilisation de Charles pour effectuer une analyse inverse iOS est la suivante :

  1. Capturer le trafic : utilisez Charles pour capturer le trafic de communication entre l'application et le serveur afin de comprendre la transmission des données de l'application.
  2. Analyser les requêtes : analysez soigneusement les requêtes réseau pour comprendre l'interaction entre votre application et le serveur.
  3. Modifier les données : utilisez les fonctions d'interception et de modification de Charles pour effectuer une falsification des données afin d'explorer le comportement des applications.
  4. Comprendre les API : plongez dans les appels d'API entre les applications et les serveurs en analysant les communications réseau.

Guess you like

Origin blog.csdn.net/zh405123507/article/details/132558245