Pentest & Bug Bounty
  • 🥷Pentest et Bug Bounty
    • 👾Pentest Methodology
    • 💸Bug Bounty Methodology
      • 📓Ecrire un bon rapport
      • ⚖️Aspect Juridique (FR)
  • 👣OSINT / Recon
    • 🧦Sock Puppet
    • 🧠Mindmaps
    • 🏢Entreprise
    • 👀Leaks
    • 👊Manuel / Dorks
      • Google dorks
      • Github dorks
      • Twitter Dorks
      • Shodan Dorks
    • 👥Réseaux sociaux (SOCMINT)
      • 🕵️Telegram OSINT
      • 👻Snapchat OSINT
      • 🤵‍♂️Linkedin OSINT
      • 🗣️Facebook OSINT
      • 🎼Tik tok OSINT
      • 📷Instagram OSINT
      • 🐦Twitter OSINT
      • 🔊Discord OSINT
    • 🖇️Domaines et Sous-domaines
    • 🚪Scan de ports / web
    • ✉️Emails
    • 🔗Réseau
    • 📷Screenshots
    • 📹Live camera
    • 🧔Reconnaissance faciale / images
    • 🌆Images
    • 🗺️Maps
    • 👁️Active Directory
    • ☁️Cloud
    • Autre
  • 🌐Pentest Web
    • ✊Brute force / Fuzzing
    • 💉Injections
      • 🍪XSS
        • PDF injection
      • 📄HTMLi
      • 📃XXE
      • 7️⃣SSTI
      • 🔢SQLi
        • 👫UNION based
        • ⏳Time based
        • 🥽Boolean based / Error Based
        • 📤Out-Of-Band
      • ↩️CRLF
      • 🐚OS injection
      • ☕Log4Shell
      • 🥠CSV
      • 🍻ESI
      • 😎XSLT
      • 💌Injections dans emails
      • 🔀ELi
        • OGNLi
    • ↪️Open redirect
    • 📁Path Traversal / LFI / RFI
    • 🔓Bypass
      • 〰️WAF / Filter bypass
      • 2️2FA
    • ☠️Charges utiles
    • 📚CMS (Content Management System)
      • WordPress
      • Joomla!
      • Magento
      • Drupal
    • 🎭SOP bypass
      • CORS
      • postMessage()
      • JSONP
    • 🖱️Clickjacking
    • ⚙️Insecure deserialization
    • ☣️Web Cache Poisoning / Deception
    • 🤝HTTP Smuggling
    • 👋OAuth
    • ⛔SAML
    • 🗝️JSON Web Token
    • 🎣CSRF
      • 🚀Cross-site WebSocket Hijacking (CSWSH)
    • 🎯IDOR
    • 🕹️SSRF
      • Cloud SSRF
      • Protocol Smuggling
    • ⚙️APIs
      • 🍽️REST
      • 📶GraphQL
    • ❓Mot de passe oublié
    • 🛒Fonctions d'achat et de facturation
    • 👽Broken authentication / register
    • 🏁Panneaux d'administration
    • ⏬Upload features
    • 🔗Broken Link Hijacking
    • 🎮Prise de contrôle de sous-domaine
    • 🛂Prise de contrôle de DNS
    • ☝️One liners
    • 🚧Misconfigurations
    • 🗿Analyse statique
      • PHP
      • Ruby On Rails
      • Perl
      • JAVA
      • Javascript
      • Python
      • Golang
      • .NET
    • 🪣AWS S3
    • 🤖Captcha
    • 🪞Race conditions
    • ☄️.git exposé
    • 💭Business logic
    • 🥡Prototype pollution
    • 💣Dependency confusion
    • 🛑DoS
      • 🤯ReDoS
      • 👏Hash flooding
      • 🧨Cookie bomb
    • Autre
      • Flask
      • Symphony
      • Spring Boot
      • Django
      • Jenkins
  • 🌩️Pentest Cloud
    • IaC (Infrastructure as Code)
      • Terraform
      • Helm
      • Kustomize
    • AWS
      • Enumeration
    • Azure
      • Entra ID
      • Azure Resource Manager (ARM)
        • Enumeration
    • GCP
      • GCP IAM
      • Authentification
      • Enumeration
    • Kubernetes
  • 🕸️Pentest Réseau
    • 🪡Protocoles réseau
    • 📡Wifi
    • 🔋BLE
    • 📍VPN
  • 🗂️Pentest AD
    • 👺GPP
    • ➡️Mouvements latéraux
      • 🔪Pass The Hash
      • 🗡️Over Pass The Hash
    • 📜ADCS
  • 📱Pentest Mobile
    • 🤖Android
      • 👾Méthodologie
      • 🌳Setup environnement
      • 🍇Collecte d'informations
      • 🔠Enumeration des données locales
      • 🔙Reverse engineering
        • 🪢Dé-obfuscation
      • ⛰️Analyse statique (Android)
      • 🐞Debug
      • 🎰Stockage de données non sécurisé
        • 📰Logs
        • 🤝Shared Preferences
        • 🔤Strings
        • 🗄️SQLite DB
        • 🗃️Realm DB
        • 🧠Mémoire
        • 📍Copy/Paste buffer caching
        • ⌨️Keyboard press caching
        • 🔙Backup
        • Carte SD
      • 🌩️Firebase/Appspot misconfig
      • 🔗Deeplinks vulns
        • Interception de contenu
        • WebView hijacking (via deeplink)
        • Invalid Digital assets links
      • 🖼️WebView vulns
        • WebView Hijacking
        • Exfiltration de données
        • RXSS
        • Vol de token
      • Guides outils
        • ⛏️Outil Drozer
          • Injections SQL (Android)
          • Path traversal (Android)
        • 🔬Outil Objection
        • 🪝Outil Frida
        • Outil Medusa / Mango
      • Bypass
        • 📲Contournement de détection d'emulateur
          • 📂Fichiers d'emulateurs
          • 🙋‍♂️Network Operator Name
        • 🦷Contournement des détections de rootage
          • 🧮Root management
          • 🗝️Clé de signature du noyau
          • 🧊Props dangereux
          • 🦸‍♂️Binaire "su"
          • ❌Permissions sur les repertoires
        • ☝️Contournement des protections biometriques
        • 📜SSL pinning bypass
        • Contournement de code PIN
      • 🔳Lecteur de code QR/EAN/Barres...
      • 💔Injection de backdoor
      • 🪧Task hijacking
      • 🎭Overlay attacks
        • Tapjacking
        • Invisible Keyboard
      • 📵Résilience
        • ⌨️Third Party Keyboards
        • ©️Allowed Copy/Paste on sensitive fields
        • 🛤️Background screen caching
        • 🖋️Schémas de signature
        • ⬆️In-App updates
      • 🤯Corruption de Mémoire
    • 🍏iOS
      • 🥅Méthodologie
      • 🧱Setup environnement (iOS)
      • ⏮️Reverse engineering (iOS)
      • 🏔️Analyse statique (iOS)
      • 🧿Contournement de détection de Jailbreak
      • 📌SSL pinning bypass (iOS)
      • 👇Contournement d'authentification biométrique
      • 🐛Contournement d'anti-Hooking/Debugging
      • 🙈Stockage de données non sécurisé (iOS)
        • 💭Mémoire (iOS)
        • 🏓Copy/Paste buffer caching (iOS)
        • 🍪Cookies (iOS)
        • 🗞️Logs (iOS)
        • ⌨️Cache du clavier (IOS)
        • Backup (IOS)
      • 📱Background screen caching
      • 🧑‍🚀WebView vulns (iOS)
      • Deeplinks vulns (iOS)
      • Lecteur de code QR
      • Firebase misc
  • 👷Pentest physique
    • 🔐Crochetage
    • 💳RFID
    • ⚙️Equipements
    • 💾Hardware Hacking
      • 📈UART
      • 🧪JTAG
      • ⚡SWD
      • 🪢SPI
      • 🚌I²C
      • 🔴Fault Injection
      • Side-Channel Attacks
    • 🐣Firmware hacking
  • 🖨️Pentest IoT
    • ⏪Replay de stream camera
    • 🗣️Assistants vocaux
    • 📹Camera IP
    • ⬇️DoS
    • 🖨️Imprimantes
    • 🎬Chromecast
  • 💀Hacking protocols
    • 😩Telnet - port 23
    • 🔐SSH - port 22
    • 📤FTP - port 21
    • ❔Whois - port 43
    • 👉DNS - port 53
    • 🐕‍🦺Kerberos - port 88
    • 💼SNMP - ports 161-162
    • 📨SMB - ports 445-139
    • 📧SMTP - ports 25-587
    • 🎦RTSP - port 554
    • 🔎MS-RPC - ports 135-593
    • ➕Rsync - port 873
    • 🔢MS-SQL - port 1433
    • 🏗️Docker - port 2375
    • 🔡MySQL - port 3306
    • 📝LDAP - ports 389, 636, 3268, 3269
    • 🖥️RDP - port 3389
    • ⌨️VNC - ports 5800,5801,5900,5901
  • 😈Ingénierie sociale
    • 🧠Concepts / Principes / Attaques
    • 🪧Ethique
    • 👤Profils comportementaux
  • 🔓Crack
  • 🛠️Autres outils utiles
    • 🚿Sandbox / Sanitizer
    • 🔤Générateurs de wordlists personnalisées
  • 🌜Post-Exploitation
    • 👔Énumération /Élévation de privilèges
      • 🐧Linux
        • CVE-2022-0847 (Dirty Pipe)
        • CVE 2021-4034 (PwnKit)
        • CVE 2021-3560 (Polkit)
      • 🪟Windows
        • 🖨️PrintNightmare
        • 🖨️SpoolFool
        • 🆔Usurpation de SAMAccountName
        • ⏲️Scheduled task/job (T1573.005)
        • 🐝HiveNightmare
        • 🔑Stored Credentials
        • 🎩SeImpersonatePrivilege
        • 🎒SeBackupPrivilege
        • 🍞Unquoted Service Path
        • 🧩DLL Hijacking
        • ©️SeBackupPrivilege
      • ⛴️Docker
    • 👻Effacement des traces
    • ⚓Persistance / Downloaders
    • 🛡️Defense evasion
    • 📦Exfiltration de Données
  • 🔎Forensic
    • 💡Méthodologie
    • 📺Live forensic
    • 💻Mémoire non volatile
    • 🕊️Mémoire volatile
    • 📄File forensic
Propulsé par GitBook
Sur cette page
  • Description
  • Résumé
  • Commandes utiles
  • Dump de mémoire
  • Frappes clavier vers l'appareil
  • Voir / Modifier les configuration de l'outil
  • Lister les librairies natives d'un package
  • Afficher les stack traces d'une fonction
  • Hook une activité pour en exrtraire les arguments
  • Exporter les modules chargés pour un usage futur
  • Enumerer les fonctions exportées d'une librairie native:
  • Lister/Créer/Supprimer des alias
  • Modules
  • Recherche de modules
  • Choix des modules
  • Réinistialisation des modules
  • Suppression d'un ou plusieurs modules (Tout ce qui commence par ...)
  • Scripts et modules custom
  • Mango
  • Installer l'agent sur le device
  • Importer un APK pour analyse
  • Depuis le device
  • Enumeration
  • Enumeration des composants
  • Recherche par mot clé dans le AndroidManifest
  • Evaluation de la surface d'attaque
  • Setup d'environnement
  • Installer le certificat Burp
  • Activer le mode Debug dans le AndroidManifest
  • Configurer le proxy du device
  • Analyse dynamique
  • Envoie de notifications aux listener
  • Initialiser une session frida-trace
  • Ouvrir des deeplinks

Cet article vous a-t-il été utile ?

  1. Pentest Mobile
  2. Android
  3. Guides outils

Outil Medusa / Mango

PrécédentOutil FridaSuivantBypass

Dernière mise à jour il y a 3 mois

Cet article vous a-t-il été utile ?

Description

Medusa est un framework extensible et modularisé qui automatise les processus et les techniques pratiqués lors de l'analyse dynamique des applications Android et iOS.

Lien vers le repo github:

Résumé

Medusa fonctionne de la même manière que Metasploit ce qui en fait un outil parfait pour les utilisateurs déjà à l'aise avec le fonctionnement et les commandes de Metasploit. Il regroupe un ensemble de scripts Frida classés en modules par catégories (exp: http_communications, root_detection). Cela permet une organisation et un gain de temps considérable car tout est déjà installé et disponible depuis une seule et même interface.

Commandes utiles

Dump de mémoire

medusa> dump com.target.xyz

Frappes clavier vers l'appareil

medusa> type "Hello World!"

Voir / Modifier les configuration de l'outil

medusa> set
Name                  Value                           Description                                                 
==================================================================================================================
allow_style           Terminal                        Allow ANSI text style sequences in output (valid values:    
                                                      Always, Never, Terminal)                                    
always_show_hint      False                           Display tab completion hint even when completion suggestions
                                                      print                                                       
debug                 False                           Show full traceback on exception                            
echo                  False                           Echo command issued into output                             
editor                None                            Program used by 'edit'                                      
feedback_to_output    False                           Include nonessentials in '|', '>' results                   
max_completion_items  50                              Maximum number of CompletionItems to display during tab     
                                                      completion                                                  
quiet                 False                           Don't print nonessential feedback                           
timing                False                           Report execution times

Lister les librairies natives d'un package

medusa> libs com.target.xyz

Afficher les stack traces d'une fonction

medusa> jtrace com.target.xyz.function

Hook une activité pour en exrtraire les arguments

medusa> hook -a com.target.xyz.test.MyActvity

Exporter les modules chargés pour un usage futur

medusa> export exportname.medusa

Enumerer les fonctions exportées d'une librairie native:

medusa> enumerate com.target.xyz libtest.so

Lister/Créer/Supprimer des alias

medusa> alias create <alias> <command>

Exemple:

medusa> alias list
medusa> alias create pin search ssl
medusa> pin
http_communications/instagram_ssl_pinning_bypass
http_communications/snapchat_ssl_pinning_bypass
http_communications/universal_SSL_pinning_bypass
http_communications/ssl-pinning-bypass
http_communications/tiktok_ssl_pinning_bypass
http_communications/openssl_boringssl_key_capture
http_communications/libssl_ssl_set_custom_verify
http_communications/facebook_ssl_pinning_bypass
madusa> alias delete pin

Modules

Il est possible de lister les catégories disponibles avec la commande:

medusa> show categories

Recherche de modules

De manière plus précise, on peut êgalement faire des recherches par mot clés dans les noms des modules disponibles.

Exemple:

medusa> search universal 
http_communications/universal_SSL_pinning_bypass 
root_detection/universal_root_detection_bypass 

On peut également si besoin utiliser la commande info pour lire des informations sur un module spécifique.

medusa> info <module>

Choix des modules

orsqu'on trouve le(s) module(s) souhaités, on peut alors les ajouter aux modules en attente de lancement avec la commande:

medusa> use <module>

Enfin, on exécute les modules en exécutant l'application grâce à la commande:

medusa> run -f com.target.xyz

Note: l'ordre d'exécution des modules est définie par l'ordre dans lequel ils ont été choisis

Exemple:

medusa> use root_detection/universal_root_detection_bypass
...
...
medusa> use http_communications/universal_SSL_pinning_bypass
...
...

medusa> run -f com.target.xyz
---------LOADING ANTI ROOT DETECTION SCRIPT-------------------
Loaded 11200 classes!
...
...

-------------Universal ssl pinning bypass V2------------------

===
* Injecting hooks into common certificate pinning methods *
===
...
...

Tips: la commande swap permet d'inverser l'ordre d'execution entre deux modules en attente.

Current Mods:
0) http_communications/universal_SSL_pinning_bypass
1) root_detection/universal_root_detection_bypass

medusa> swap 0 1

Current Mods:
0) root_detection/universal_root_detection_bypass
1) http_communications/universal_SSL_pinning_bypass

Réinistialisation des modules

medusa> reset

Suppression d'un ou plusieurs modules (Tout ce qui commence par ...)

medusa> rem <module>

Si un module a été modifié

medusa> reload <module>

Scripts et modules custom

Si aucun des modules préinstallés ne convient, il est possible d'importer un script avec la commande suivante:

medusa> import [tab]

Les scripts custom sont stockés dans /medusa/snippets/, il est donc possible d'ajouter simplement des scripts personnels en les stockants dans ce répértoire.

Exemple: /medusa/snippets/example.js => import example

Attention: La partie Java.perform(function() { } doit être supprimée du script pour être compatible.

Note: Afin de vérifier le code du module on peut utiliser la commande:

medusa> snippet example

Mango

Mango fait partie de Medusa mais à été séparé du script python medusa.py (c'est un autre script nommé mango.py). Il est séparé car ses cas d'usage sont différents et se concentres principalement sur de l'analyse statique à quelques exceptions prés.

Installer l'agent sur le device

mango> installagent

Importer un APK pour analyse

Depuis le PC

mango> import /path/to/target.apk

Depuis le device

medusa> pull com.target.xyz

Cela créer un fichier .db qui contient les informations de l'application et qui peut être réutilisé comme une session. De plus, Mango affiche les informations importantes du AndroidManifest dés l'importation de l'application.

Enumeration

Enumeration des composants

mango> show [activities, activityAlias, applications, database, deeplinks, exposure, info, intentFilters, manifest, permissions, providers, receivers, services, strings]

Recherche par mot clé dans le AndroidManifest

mango> search keyword

Evaluation de la surface d'attaque

mango> show exposure

Setup d'environnement

Mango contient également quelques outils pour préparer son environnement de travail.

Installer le certificat Burp

mango> InstallBurpCert

Activer le mode Debug dans le AndroidManifest

mango> patch /path/to/target.apk

Configurer le proxy du device

mango> proxy set <ip>:<port>

mango> proxy reset

Analyse dynamique

Envoie de notifications aux listener

mango> notify "test" "hello world!"

Initialiser une session frida-trace

mango> trace com.target.xyz.*

Ouvrir des deeplinks

mango> deeplink app://deeplink

📱
🤖
https://github.com/Ch0pin/medusa
Exemple de résultats
Exemple de script
Exemple d'appication importée