
Framework d'exploitation autorisé d'injection SQL pour CVE-2020-5504 dans phpMyAdmin, avec énumération automatisée des bases de données, injection aveugle, prise en charge des proxys et génération de rapports structurés pour les tests d'intrusion et la recherche en sécurité.
Cadre de tests de sécurité et de recherche autorisés pour identifier et valider CVE-2020-5504 dans les déploiements phpMyAdmin
Vue d'ensemble · Fonctionnalités · Installation · Utilisation · Rapports · Architecture · Contribution
Avis d'utilisation responsable : Ce projet est destiné uniquement aux systèmes que vous possédez ou que vous êtes explicitement autorisé à évaluer. Ne l'utilisez pas contre des systèmes publics, tiers ou de production sans autorisation écrite et sans périmètre de test défini.
| Sortie CLI | Utilisation |
|---|---|
![]() | ![]() |
CVE-2020-5504 est une vulnérabilité d'injection SQL affectant la page des comptes utilisateurs de phpMyAdmin. Selon l'avis officiel de phpMyAdmin, les versions 4.x antérieures à 4.9.4 et la version 5.0.0 de phpMyAdmin sont concernées ; l'avis recommande de passer à la version 4.9.4 ou ultérieure pour la branche 4.x et à la version 5.0.1 ou ultérieure pour la branche 5.x.[1] La National Vulnerability Database indique que l'exploitation nécessite un compte MySQL valide pour accéder au serveur.[2]
Ce projet fournit un flux de travail structuré pour les tests d'intrusion autorisés, la validation contrôlée et la recherche en sécurité. Il est conçu pour aider les évaluateurs à établir l'empreinte d'une cible, à vérifier si la cible semble affectée, à documenter les preuves et à produire des rapports structurés pour le suivi de la remédiation.
Le cadre est organisé autour de quatre objectifs :
Identifier les installations phpMyAdmin et collecter les indicateurs liés à la version.
Valider l'exposition suspectée à l'aide de vérifications contrôlées et non destructives lorsque c'est possible.
Évaluer les cibles autorisées à l'aide de limites configurables, d'un comportement de nouvelle tentative et d'un proxy optionnel.
Rapporter les résultats dans des formats faciles à examiner, archiver et intégrer dans les flux de travail.
Ce projet ne remplace pas l'application des correctifs, les recommandations du fournisseur, la configuration sécurisée ou un processus formel d'autorisation de tests d'intrusion. Il ne garantit pas la détection de chaque déploiement, configuration, version ou condition réseau. Tous les résultats doivent être examinés manuellement et traités comme des preuves d'évaluation plutôt que comme un verdict de sécurité automatique.
N'exécutez cet outil contre un actif que lorsque vous disposez d'une autorisation explicite du propriétaire de l'actif. L'autorisation doit définir la cible, la fenêtre de test autorisée, les techniques autorisées, les adresses IP source, les exigences de traitement des données, les contacts d'escalade et les conditions d'arrêt.
Ne testez jamais des systèmes exposés sur Internet simplement parce qu'ils sont accessibles. L'accessibilité n'est pas une autorisation.
Les modes d'évaluation peuvent produire des informations sur les bases de données, les tables, les colonnes ou les enregistrements. Traitez toutes les sorties comme potentiellement sensibles. Stockez les rapports avec des contrôles d'accès appropriés, évitez de placer des secrets dans l'historique du shell, chiffrez les rapports lorsque vos règles d'engagement l'exigent et supprimez en toute sécurité les données temporaires après l'engagement.
Avant de commencer une évaluation, confirmez que vous disposez d'une procédure de sauvegarde ou de récupération valide, d'un canal de communication avec le propriétaire du système et d'un plan de restauration ou d'arrêt documenté. Préférez un environnement de test isolé chaque fois qu'il est disponible. Utilisez le mode le moins intrusif qui répond à la question de l'évaluation.
| Domaine | Capacité | Description |
|---|---|---|
| Découverte | Prise d'empreinte automatisée | Identifie les déploiements phpMyAdmin probables et collecte les indicateurs de version. |
| Validation | Vérification de vulnérabilité | Effectue des vérifications contrôlées avec une gestion des résultats basée sur le niveau de confiance. |
| Flux de travail | Plusieurs modes de fonctionnement | Prend en charge les flux de travail de détection, de vérification, de recherche et d'essai à blanc. |
| Gestion de session | Gestion des jetons CSRF | Extrait et gère les valeurs liées à CSRF requises par le flux de l'application. |
| Authentification | Validation multi-signaux | Utilise plusieurs indicateurs pour réduire les faux résultats d'authentification. |
| Évaluation | Énumération de bases de données | Prend en charge l'énumération autorisée des bases de données, des tables, des colonnes et des données sélectionnées. |
| Recherche d'injection | Techniques aveugles | Prend en charge les flux de travail de recherche basés sur le booléen et sur le temps lorsque l'implémentation le permet. |
| Rapports | JSON, HTML et TXT | Produit une sortie structurée, stylisée et en texte brut pour différents publics. |
| Fiabilité | Nouvelles tentatives et backoff | Relance les requêtes en échec transitoire avec un comportement configurable. |
| Intégrations | Prise en charge du proxy | Peut être utilisé avec Burp Suite ou un autre proxy d'interception HTTP. |
| Ergonomie | Interface terminal riche | Fournit une sortie avec code couleur, des indicateurs de progression et des messages d'état lisibles. |
| Diagnostics | Journalisation détaillée | Expose des informations de diagnostic supplémentaires pour un dépannage autorisé. |