web-dev-qa-db-fra.com

Comment puis-je intercepter le trafic SSL de l'application Android où l'épinglage SSL est utilisé?

Je souhaite capturer le trafic SSL d'une Android qui, je pense, utilise l'épinglage SSL.

J'ai essayé d'exécuter une application qui dit qu'elle utilise le tunnel VPN et un certificat racine pour capturer le trafic SSL, et qu'il est capable de capturer le trafic de Chrome et d'autres applications de base, mais quand J'exécute l'application à partir de laquelle je veux capturer le trafic, l'application fonctionne bien, mais l'application de capture affiche Impossible de capturer.

Existe-t-il un guide étape par étape ou une solution simple?

3
user182814

L'épinglage SSL est la couche de sécurité supplémentaire implémentée côté client pour permettre à l'application mobile d'approuver uniquement un certificat SSL particulier lors de l'établissement de la connexion HTTP et non les certificats installés dans le magasin d'approbations des appareils. Étant donné que l'implémentation est l'implémentation côté client, elle peut être facilement contournée à l'aide des techniques suivantes:

Approche automatisée

  1. Modules Xposed tels que SSLUnpinning 2. .
  2. FRIDA (Dynamic Instrumentation Tool) - Script de contournement SSL SSL .
  3. Inspeckage - Inspecteur de package Android

Approche manuelle

Je pense que c'est la dernière solution un peu complexe et la plus fiable pour contourner l'épinglage SSL. Voici les étapes pour effectuer la même chose.

  1. Comprendre l'implémentation du SSL Pinning. Vous pouvez vous référer à cela blog moyen qui explique la mise en œuvre de l'épinglage SSL à l'aide de différentes bibliothèques réseau telles que OkHttp, Volley, Retrofit etc.
  2. Analysez la méthode responsable et mappez-la avec le code SMALI.

Une fois la méthode responsable analysée et identifiée, nous pouvons utiliser l'approche suivante pour contourner l'épinglage SSL:

Application de falsification

  1. Modifiez le code SMALI pour contourner l'épinglage SSL.

  2. Reconstruisez l'application en utilisant APKTool.

  3. Démissionnez et installez l'application et capturez le trafic.

Référence: https://samsclass.info/Android/codemod.html

Runtime Hooking Une fois la méthode responsable identifiée, utilisez des hookers d'exécution tels que FRIDA, JDB pour accrocher la méthode et modifier l'implémentation.

6
Shiv Sahni