
Application Django qui effectue une analyse SAST et une analyse de malwares pour les APK Android.

MobileAudit - Analyse SAST et des malwares pour les APK Android mobiles
Une application web Django pour effectuer une analyse statique et détecter du contenu malveillant dans les APK Android. Le projet extrait les métadonnées de l'application, analyse le code source pour détecter les faiblesses et agrège les résultats (résultats SAST, bonnes pratiques, informations sur le certificat, chaînes, bases de données, fichiers, VirusTotal, etc.) dans un tableau de bord et une API consultables.
Documentation DeepWiki : https://deepwiki.com/mpast/mobileAudit

Dans chaque analyse, les informations suivantes sont disponibles :

Pour un accès facile, une barre latérale est disponible sur la page de gauche de l'analyse :


L'image est basée sur python buster. Lien vers l'image Docker Hub
Prévu / souhaité
/patterns.
L'application possède des modèles créés pour chaque entité des informations d'analyse afin de pouvoir créer des relations et obtenir les meilleures conclusions pour chaque APK.

Pour voir le schéma complet du modèle, allez à models
Avec Docker-compose :
Le fichier docker-compose.yml fourni vous permet d'exécuter l'application localement en développement.
Pour construire l'image locale et s'il y a des modifications dans le Dockerfile local de l'application, vous pouvez construire l'image avec :
docker-compose build
Ensuite, pour démarrer le conteneur, exécutez :
docker-compose up
Optionnel : exécuter en mode détaché (ne pas voir les logs)
docker-compose up -d
Une fois l'application lancée, vous pouvez la tester en naviguant vers : http://localhost:8888/ pour accéder au tableau de bord.

Il existe également une version TLS utilisant docker-compose.prod.yaml fonctionnant sur le port 443
Pour l'utiliser, exécutez
docker-compose -f docker-compose.prod.yaml up
Ensuite, vous pouvez tester l'application en naviguant vers : https://localhost/ pour accéder au tableau de bord.
Pour plus d'informations, voir TLS
Pour arrêter et supprimer les conteneurs, exécutez
docker-compose down
Intégration d'API REST avec Swagger et ReDoc.
/api/v1/auth-token/
Authorization: Token <ApiKey>

/swagger.json/swagger.yaml/swagger//redoc/nginx/sslopenssl req -x509 -nodes -days 1 -newkey rsa:4096 -subj "/C=ES/ST=Madrid/L=Madrid/O=Example/OU=IT/CN=localhost" -keyout nginx/ssl/nginx.key -out nginx/ssl/nginx.crt
nginx/app_tls.confnginx/app.confPar défaut, il y a un volume dans docker-compose.yml avec la configuration rendant le port 8888 disponible.
- ./nginx/app.conf:/etc/nginx/conf.d/app.conf
Dans un environnement de production, utilisez docker-compose.prod.yaml avec le port 443.
- ./nginx/app_tls.conf:/etc/nginx/conf.d/app_tls.conf
Toutes les variables d'environnement se trouvent dans un fichier .env. Il y a un .env.example avec toutes les variables nécessaires. Elles sont également rassemblées dans app/config/settings.py.
Suggestions minimales de configuration de .env pour le développement local :
Si vous souhaitez contribuer, consultez Contributing
| Image | Tags | Base |
|---|
| mpast/mobile_audit | 3.0.0 | python:3.9.16-buster |
| mpast/mobile_audit | 2.2.1 | python:3.9.7-buster |
| mpast/mobile_audit | 1.3.8 | python:3.9.4-buster |
| mpast/mobile_audit | 1.0.0 | python:3.9.0-buster |