Introduction
MobSF (Mobile Security Framework) est l’outil open source de référence pour l’analyse de sécurité des applications mobiles. En 2026, il combine analyse statique, dynamique et détection de vulnérabilités OWASP MASVS. Ce tutoriel vous guide de l’installation avancée à l’automatisation complète des rapports, en passant par l’intégration API et les configurations Docker optimisées. Que vous soyez pentester, développeur mobile ou responsable sécurité, vous obtiendrez des résultats exploitables immédiatement.
Prérequis
- Docker 24+ et Docker Compose v2
- Python 3.11+ (pour les scripts d’automatisation)
- Une machine avec 8 Go RAM minimum
- Fichiers APK/IPA de test
- Connaissances de base en sécurité mobile et YAML
Installation Docker optimisée
version: '3.8'
services:
mobsf:
image: opensecurity/mobile-security-framework-mobsf:latest
container_name: mobsf
ports:
- "8000:8000"
environment:
- MOBSF_ANALYZER_TIMEOUT=3600
- MOBSF_WORKERS=4
volumes:
- ./uploads:/home/mobsf/.MobSF/uploads
- ./reports:/home/mobsf/.MobSF/reports
restart: unless-stoppedCe fichier docker-compose déploie MobSF avec des timeouts et workers adaptés à des analyses lourdes. Les volumes permettent de conserver les uploads et rapports entre redémarrages.
Lancement et vérification
#!/bin/bash
set -e
docker-compose up -d
sleep 15
echo "MobSF accessible sur http://localhost:8000"
curl -s http://localhost:8000 | grep -q "MobSF" && echo "Interface OK" || echo "Erreur de démarrage"Le script démarre MobSF en arrière-plan et vérifie que l’interface web répond correctement avant de poursuivre.
Analyse statique via CLI
#!/bin/bash
APK_PATH=$1
HASH=$(docker exec mobsf python /home/mobsf/Mobile-Security-Framework-MobSF/manage.py runscript analyze_apk --script-args "$APK_PATH" | grep -oP 'hash:\K\w+')
echo "Analyse terminée. Hash: $HASH"Ce script lance une analyse statique complète d’un APK et récupère le hash unique du scan pour les étapes suivantes.
Configuration avancée
{
"static_analysis": {
"enable_string_analysis": true,
"max_string_length": 500,
"detect_secrets": true
},
"dynamic_analysis": {
"frida_timeout": 120,
"network_capture": true
},
"report": {
"format": ["pdf", "json"],
"include_screenshots": true
}
}Fichier de configuration JSON qui active l’analyse approfondie des chaînes, la détection de secrets et la génération de rapports multi-formats.
Automatisation via API
import requests
import time
BASE_URL = "http://localhost:8000/api/v1"
API_KEY = "your_api_key_here"
def upload_and_scan(file_path):
with open(file_path, 'rb') as f:
files = {'file': f}
headers = {'Authorization': API_KEY}
r = requests.post(f"{BASE_URL}/upload", files=files, headers=headers)
data = r.json()
scan_hash = data['hash']
# Attente fin d'analyse
time.sleep(30)
return scan_hashScript Python complet qui envoie un fichier, déclenche l’analyse et récupère le hash. Prêt à être intégré dans un pipeline CI/CD.
Bonnes pratiques
- Toujours exécuter MobSF dans un environnement isolé (Docker)
- Configurer des timeouts adaptés aux applications volumineuses
- Automatiser la récupération des rapports JSON pour les intégrer dans vos outils SIEM
- Mettre à jour l’image Docker toutes les deux semaines
- Sauvegarder régulièrement le dossier reports
Erreurs courantes à éviter
- Oublier d’augmenter la limite de mémoire Docker (erreur OOM)
- Lancer des analyses dynamiques sans Frida activé
- Ignorer les faux positifs liés aux bibliothèques tierces
- Ne pas nettoyer les anciens uploads (saturation disque)
Pour aller plus loin
Découvrez nos formations avancées sur la sécurité mobile et l’automatisation des tests : https://learni-group.com/formations. Vous y apprendrez l’intégration de MobSF dans des pipelines DevSecOps complets.