Découvrez à quoi ressemble un rapport Agentic Deep Scan mobile

Le rapport complet et non retouché d'un scan d'AndroGoat, une application Android volontairement vulnérable utilisée pour les formations OWASP. Il montre comment chaque vulnérabilité est reliée au code vulnérable, prouvée et corrigée.

Cible
AndroGoat (Android)
Scan
Mobile Agentic Deep Scan
Longueur
190 pages
Résultat
Risque global : élevé

Cible de formation Android : AndroGoat. Consultez chaque résultat pour connaître la configuration de test et la méthode de reproduction. Aucune donnée client.

Vulnérabilité avec code vulnérableSynthèse des vulnérabilitésCouverture et niveau de risque

Contenu du rapport

Synthèse

Le risque global, le build exact testé et le nombre de vulnérabilités par niveau de gravité, dès les premières pages.

Tableau des vulnérabilités

Chaque vulnérabilité avec son niveau de risque, son statut et une courte description.

Vulnérabilités au niveau du code

Chaque vulnérabilité présente la cause, le code vulnérable et les preuves d'exploitation.

Validation et correctifs

Une seconde passe confirme chaque vulnérabilité, suivie du correctif recommandé et de la façon de le vérifier.

Vulnérabilité annotée

Une vulnérabilité, étape par étape

Comment le rapport mène une vulnérabilité du build exact qui a été testé jusqu’au correctif. Chaque étape renvoie à sa page dans le rapport complet.

  1. Build

    AndroGoat 1.0 (1), package owasp.sat.agoat

    Le rapport identifie l’APK exact testé par son package, sa version et son empreinte SHA-1, avec sa taille et la date du scan.

    Page 2 du rapport
  2. Résultats

    44 vulnérabilités, classées par risque

    34 vulnérabilités confirmées (12 élevées, 16 moyennes, 6 faibles, aucune critique), plus 8 problèmes potentiels à approfondir et 2 mesures de durcissement.

    Page 3 du rapport
  3. Tableau des vulnérabilités

    Répertoriée et suivie

    Le tableau liste chaque problème avec son niveau de risque, son statut et une courte description. Celui-ci est élevé et toujours ouvert.

    Page 4 du rapport
  4. Parcours

    Les écrans de stockage non sécurisé de l’application

    Les écrans de stockage d’AndroGoat enregistrent le nom d’utilisateur et le mot de passe saisis. L’agent a suivi où chacun les écrit : SharedPreferences, une base SQLite, des fichiers temporaires et la carte SD.

    Page 16 du rapport
  5. Vulnérabilité

    Élevée : identifiants stockés en clair

    Les noms d’utilisateur et mots de passe sont écrits en clair dans les SharedPreferences, une base SQLite et des fichiers temporaires, dont un sur le stockage partagé. Les sauvegardes sont aussi activées.

    Page 16 du rapport
  6. Preuve

    Où finit le mot de passe

    L’application décompilée écrit le mot de passe dans users.xml et dans la base aGoat, et le journalise dans la requête SQL. Une sauvegarde adb copie ces deux fichiers. Le rapport signale les deux chemins de stockage qu’il n’a pas pu tester à l’exécution.

    Page 18 du rapport
  7. Correctif

    Chiffrer, et garder les identifiants hors du stockage partagé

    Désactiver les sauvegardes et chiffrer les données stockées sans attendre. Le correctif durable déplace les identifiants vers EncryptedSharedPreferences, adossé au KeyStore, avec un exemple de code.

    Page 19 du rapport
  8. Vérification

    Comment confirmer le correctif

    Rechercher dans l’application décompilée des identifiants passés en clair aux appels de stockage, et vérifier qu’une sauvegarde adb n’expose plus de fichier d’identifiants lisible.

    Page 19 du rapport

Comment l'agent a tranché

Pourquoi c'est un vrai risque

Un scanner signale tout ce qui correspond à une règle. Avant de signaler un problème, l'agent vérifie qu'un indice mène à un vrai dommage. Voici son raisonnement sur un indice trouvé dans l'application AndroGoat.

  1. Étape 1

    Que fait cette adresse dans l'application ?

    Les ressources de l'application contiennent l'adresse d'une base de données Firebase, androgoat-42597.firebaseio.com, dans res/values/strings.xml.

    Page 69 du rapport
  2. Étape 2

    L'application l'utilise-t-elle vraiment ?

    Non. Il n'y a aucune bibliothèque Firebase et aucun code ne lit cette valeur. Une vérification par règles la classerait comme un reste inutilisé et passerait à autre chose.

    Page 70 du rapport
  3. Étape 3

    La base de données elle-même est-elle ouverte ?

    L'agent a envoyé une requête à la base de données sans se connecter. Elle a répondu 200 OK et renvoyé un nom d'utilisateur et un mot de passe.

    Page 70 du rapport
  4. Étape 4

    Alors, est-ce un risque ?

    Oui, élevé. Peu importe que l'application ignore l'adresse : quiconque décompresse l'application peut trouver la base de données et la lire sans compte.

    Page 31 du rapport
  5. Étape 5

    Comment le corriger ?

    Activer Firebase Authentication et les règles de sécurité pour que la lecture de la base de données exige un utilisateur connecté, et retirer l'adresse inutilisée de l'application.

    Page 32 du rapport

Vous voulez ce rapport pour votre propre application ?

Réservez une démo et nous vous présenterons un scan de votre application mobile, de votre application web ou de votre API.