Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
phpMyAdmin-CVE-2020-5504-Exploit — 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é. | Kitploit
Outils/GitHubGitHub/cerberusmrxi/phpmyadmin-cve-2020-5504-exploit
ReconnaissanceScanners de VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité WebTests d'IntrusionSécurité des Bases de Données

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
GitHub
cerberusmrxi/phpmyadmin-cve-2020-5504-exploit

phpMyAdmin-CVE-2020-5504-Exploit

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é.

Voir le dépôt
il y a 1 jourPas encore vérifié
Partager

CVE-2020-5504 phpMyAdmin Security Assessment Tool

Cadre de tests de sécurité et de recherche autorisés pour identifier et valider CVE-2020-5504 dans les déploiements phpMyAdmin

VersionPythonLicenseSecurity ResearchCVEPull Requests

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.


Captures d'écran

Sortie CLIUtilisation
Sortie CLIUtilisation

Vue d'ensemble

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.

Objectifs du projet

Le cadre est organisé autour de quatre objectifs :

  1. Identifier les installations phpMyAdmin et collecter les indicateurs liés à la version.

  2. Valider l'exposition suspectée à l'aide de vérifications contrôlées et non destructives lorsque c'est possible.

  3. Évaluer les cibles autorisées à l'aide de limites configurables, d'un comportement de nouvelle tentative et d'un proxy optionnel.

  4. Rapporter les résultats dans des formats faciles à examiner, archiver et intégrer dans les flux de travail.

Ce que ce projet n'est pas

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.


Sommaire

  • Vue d'ensemble

  • Utilisation responsable

  • Fonctionnalités

  • Déroulement de l'évaluation

  • Prérequis

  • Installation

  • Utilisation

  • Modes de fonctionnement

  • Options de ligne de commande

  • Configuration

  • Rapports

  • Architecture

  • Dépannage

  • Recommandations de remédiation

  • Développement

  • Contribution

  • Journal des modifications

  • Licence

  • Remerciements

  • Contact et support

  • Références


Utilisation responsable

Une autorisation est requise

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.

Gestion des données

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.

Mesures de protection opérationnelles

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.


Fonctionnalités

DomaineCapacitéDescription
DécouvertePrise d'empreinte automatiséeIdentifie les déploiements phpMyAdmin probables et collecte les indicateurs de version.
ValidationVé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 travailPlusieurs modes de fonctionnementPrend en charge les flux de travail de détection, de vérification, de recherche et d'essai à blanc.
Gestion de sessionGestion des jetons CSRFExtrait et gère les valeurs liées à CSRF requises par le flux de l'application.
AuthentificationValidation multi-signauxUtilise plusieurs indicateurs pour réduire les faux résultats d'authentification.
ÉvaluationÉnumération de bases de donnéesPrend 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'injectionTechniques aveuglesPrend en charge les flux de travail de recherche basés sur le booléen et sur le temps lorsque l'implémentation le permet.
RapportsJSON, HTML et TXTProduit une sortie structurée, stylisée et en texte brut pour différents publics.
FiabilitéNouvelles tentatives et backoffRelance les requêtes en échec transitoire avec un comportement configurable.
IntégrationsPrise en charge du proxyPeut être utilisé avec Burp Suite ou un autre proxy d'interception HTTP.
ErgonomieInterface terminal richeFournit une sortie avec code couleur, des indicateurs de progression et des messages d'état lisibles.
DiagnosticsJournalisation détailléeExpose des informations de diagnostic supplémentaires pour un dépannage autorisé.

Déroulement de l'évaluation

Le flux de travail recommandé est volontairement échelonné afin que les évaluateurs puissent commencer par l'activité à plus faible impact et n'étendre le périmètre que lorsque cela est autorisé.``` ┌──────────────────┐ │ Define scope │ Confirm written authorization and test boundaries └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Detect │ Identify phpMyAdmin and collect version indicators └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Verify │ Perform controlled vulnerability checks └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Assess, if │ Continue only when explicitly authorized │ approved │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Report │ Preserve evidence, limits, timestamps, and conclusions └──────────────────┘

root@kitploit:~
Un résultat positif doit être examiné à la lumière de la version cible, du contexte d'authentification, des preuves de la requête et du périmètre de l'engagement. Un résultat négatif ne prouve pas que le déploiement est sécurisé ; il peut refléter des différences de version, des contrôles d'accès, du routage, une personnalisation de l'application, une limitation de débit ou une visibilité insuffisante.

---

## Prérequis

### Prérequis d'exécution

| Exigence | Référence prise en charge |
| --- | --- |
| Système d'exploitation | Linux, macOS ou Windows |
| Python | 3.6 ou plus récent, sous réserve de compatibilité des dépendances |
| Gestionnaire de paquets | `pip` |
| Contrôle de version | Git, lors de l'installation depuis le dépôt |
| Accès réseau | Connectivité vers une cible d'évaluation explicitement autorisée |

### Dépendances Python

Le projet requiert actuellement les paquets suivants :```
requests>=2.31.0
rich>=13.7.0
colorama>=0.4.6
dataclasses>=0.6; python_version < "3.7"

Pour des installations reproductibles, privilégiez le fichier requirements.txt du dépôt plutôt que d'installer les paquets individuellement.


Installation

Linux et macOS```bash

git clone https://github.com/CerberusMrXi/phpMyAdmin-CVE-2020-5504-Exploit cd phpMyAdmin-CVE-2020-5504-Exploit

python3 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip python -m pip install -r requirements.txt

chmod +x start.sh quick.sh exploit.py

root@kitploit:~
Démarrez l'interface guidée avec :```bash
./start.sh

Windows```

git clone https://github.com/CerberusMrXi/phpMyAdmin-CVE-2020-5504-Exploit Set-Location phpMyAdmin-CVE-2020-5504-Exploit

py -m venv .venv ..venv\Scripts\Activate.ps1 python -m pip install --upgrade pip python -m pip install -r requirements.txt

.\start.bat

root@kitploit:~
Si la stratégie d'exécution PowerShell empêche le lanceur de s'exécuter, utilisez le point d'entrée PowerShell documenté du dépôt dans un environnement autorisé :```
powershell -ExecutionPolicy Bypass -File .\start.ps1

Installation manuelle des dépendances

Utilisez ceci uniquement lorsque requirements.txt n'est pas disponible ou lorsque vous gérez intentionnellement les dépendances vous-même :```bash python -m pip install "requests>=2.31.0" "rich>=13.7.0" "colorama>=0.4.6"

root@kitploit:~
---

## Utilisation

Les exemples ci-dessous utilisent `https://authorized.example/phpmyadmin` comme espace réservé. Remplacez-le uniquement par une cible qui se trouve explicitement dans votre périmètre autorisé.

### Mode de détection

Le mode de détection est le point de départ recommandé. Il est destiné à établir l'empreinte de l'application et à collecter des indicateurs de version sans tenter d'exploitation.```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode detect

Les drapeaux abrégés de l'interface d'origine sont également pris en charge le cas échéant :```bash python exploit.py -u https://authorized.example/phpmyadmin -m detect

root@kitploit:~
### Mode de vérification

Le mode de vérification est destiné aux tests de vulnérabilité contrôlés. À utiliser uniquement lorsque l'engagement autorise explicitement les activités de validation et que les identifiants requis ont été fournis selon une méthode approuvée.```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode verify \
  --username "$PMADB_USERNAME" \
  --password "$PMADB_PASSWORD"

Évitez de placer de vrais mots de passe directement dans les commandes, car les lignes de commande peuvent être stockées dans l'historique du shell ou exposées à l'inspection des processus locaux.

Mode Recherche

Le mode Recherche peut effectuer des activités d'évaluation autorisées plus étendues et de l'énumération de données. Il doit être limité à des environnements de test dédiés ou à des engagements avec une approbation écrite explicite pour le périmètre demandé.```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode research
--username "$PMADB_USERNAME"
--password "$PMADB_PASSWORD"
--max-databases 20
--max-tables 50

root@kitploit:~
### Mode dry-run

Le mode dry-run est utile pour valider la construction des commandes, examiner le comportement du workflow et tester la configuration sans effectuer d'actions intrusives.```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --dry-run

Évaluation assistée par proxy

Acheminez le trafic via un proxy d'interception autorisé lorsque vous devez inspecter les requêtes et les réponses au cours d'un test :```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--proxy http://127.0.0.1:8080

root@kitploit:~
N'utilisez un proxy que lorsque les règles de l'engagement l'autorisent et qu'il est configuré pour éviter de collecter ou de conserver des données sensibles inutiles.

### Évaluation ciblée de la base de données

Lorsque le document de périmètre identifie une base de données spécifique, limitez l'évaluation à cette base de données lorsque l'implémentation le permet :```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode research \
  --database target_database \
  --max-tables 25

Diagnostics détaillés

Activez la sortie détaillée lorsque vous examinez une connexion échouée, une réponse inattendue ou un problème de configuration :```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--verbose

root@kitploit:~
### Interface interactive

Le lanceur interactif est recommandé pour les nouveaux utilisateurs, car il propose des invites guidées, une sélection de mode, des indicateurs de progression et une sortie d’état codée par couleur.```bash
# Linux/macOS
./start.sh

# Windows
start.bat

Modes de fonctionnement

ModeObjectifImpact attenduUtilisation recommandée
detectIdentifier l'application et relever les indicateurs de version.Aucun ou minimeReconnaissance initiale dans un périmètre autorisé.
verifyVérifier si la cible semble vulnérable à l'aide de contrôles encadrés.FaibleConfirmation lors d'une évaluation autorisée.
researchMener une évaluation plus large et une énumération autorisée.ÉlevéLaboratoires dédiés ou missions avec approbation explicite.
dry-runSimuler le comportement du flux de travail sans effectuer d'actions intrusives.AucunValidation de la configuration et des commandes.

Les noms de modes décrivent le flux de travail prévu, et non une garantie de comportement dans toute configuration. Examinez l'implémentation et les règles d'engagement avant d'utiliser un mode contre un système en production.


Options de la ligne de commande

Les options suivantes sont représentées par l'interface actuelle du projet. Exécutez python exploit.py --help pour confirmer les noms d'options exacts disponibles dans votre copie.

OptionDescriptionExemple
-u, --urlURL de base phpMyAdmin autorisée.--url https://authorized.example/phpmyadmin
-m, --modeSélectionne detect, verify ou research.--mode verify
--dry-runSimule le flux de travail sans actions intrusives.--dry-run
--usernameNom d'utilisateur pour un compte de test approuvé.--username "$PMADB_USERNAME"
--passwordMot de passe pour un compte de test approuvé.--password "$PMADB_PASSWORD"
-p, --proxyURL du proxy HTTP.--proxy http://127.0.0.1:8080
-f, --formatFormat de rapport tel que json, html ou txt.--format html
-o, --outputChemin du fichier de sortie.--output report.html
-d, --databaseLimite l'activité à une base nommée lorsque c'est pris en charge.--database target_database
-t, --timeoutDélai d'expiration de la requête en secondes.--timeout 30
--max-databasesNombre maximal de bases à énumérer.--max-databases 20
--max-tablesNombre maximal de tables à énumérer.--max-tables 50
--max-columns

Important : La désactivation de la vérification du certificat TLS affaiblit la sécurité du transport et doit être limitée à des conditions de test encadrées. Ne la considérez jamais comme un correctif de production.


Configuration

Variables d'environnement

L'outil peut utiliser les variables proxy standard lorsque le trafic doit être acheminé via un proxy approuvé :```bash export HTTP_PROXY=http://127.0.0.1:8080 export HTTPS_PROXY=http://127.0.0.1:8080

root@kitploit:~
Ne stockez pas d'identifiants dans un fichier `.env` commité. Si des variables d'environnement sont utilisées pour les identifiants de test, protégez la session shell et effacez-les après la mission :```bash
export PMADB_USERNAME='authorized-test-user'
export PMADB_PASSWORD='use-an-approved-secret-source'

# Remove them when finished
unset PMADB_USERNAME PMADB_PASSWORD

Configuration YAML

Créez config.yaml pour des paramètres d'évaluation persistants et non secrets :```yaml scan: timeout: 10 retries: 3 max_databases: 50 max_tables: 100 max_columns: 50 max_rows: 100 delay_between_requests: 0.5

report: format: json output: report.json include_sensitive: false

root@kitploit:~
Ne conservez pas d'identifiants dans ce fichier, sauf s'il est protégé par le processus de gestion des secrets approuvé par votre organisation. Ajoutez les fichiers de configuration locaux contenant des valeurs sensibles à `.gitignore`.

---

## Rapports

Le framework prend en charge la sortie JSON, HTML et TXT. Sélectionnez le format qui correspond au public et aux exigences de conservation de la mission.

### Rapport JSON

JSON convient à l'automatisation, à l'archivage et à l'ingestion dans les pipelines d'évaluation. Une structure de rapport représentative est présentée ci-dessous ; les champs exacts peuvent varier selon la version et le mode.```json
{
  "scan_info": {
    "target": "https://authorized.example/phpmyadmin",
    "timestamp": "2024-01-15T10:30:00Z",
    "mode": "verify",
    "scanner": "CVE-2020-5504 Security Assessment Tool v1.2",
    "author": "Sudeepa Wanigarathna"
  },
  "fingerprint": {
    "is_phpmyadmin": true,
    "version": "5.0.0",
    "confidence": "CONFIRMED"
  },
  "verification": {
    "vulnerable": true,
    "confidence": "CONFIRMED",
    "status": "VULNERABLE_CONFIRMED"
  },
  "authentication": {
    "authenticated": true,
    "user": "authorized-test-user",
    "score": 8
  },
  "extracted_data": {
    "databases": ["information_schema", "mysql", "test"]
  }
}

Rapport HTML

La sortie HTML est destinée à la revue humaine. Elle peut inclure des sections stylisées, des indicateurs de statut, des résumés de preuves, des métadonnées et des mises en page imprimables. Stockez les rapports générés dans un emplacement à accès contrôlé.

Rapport TXT

La sortie TXT est utile pour la revue en terminal, la collecte de journaux, les pièces jointes de tickets et les environnements où un formatage riche n'est pas souhaitable.

Liste de contrôle pour la gestion des rapports

Avant de partager un rapport, confirmez qu'il ne contient que des informations autorisées par la mission. Examinez les URL, noms d'utilisateur, noms de bases de données, valeurs d'enregistrements, cookies, jetons, en-têtes de requête et sorties de débogage pour détecter des secrets ou des données personnelles. Masquez ou supprimez le contenu sensible lorsqu'il n'est pas nécessaire pour étayer la constatation.


Architecture

Le projet est organisé comme un pipeline d'évaluation par étapes :``` Target │ ├── Fingerprinting │ ├── Version detection │ └── Path discovery │ ├── Vulnerability checks │ ├── Controlled verification │ └── Confidence analysis │ ├── Authentication │ ├── CSRF token extraction │ ├── Multi-signal validation │ └── Session management │ ├── Authorized assessment │ ├── Database enumeration │ ├── Table extraction │ └── Scoped data requests │ └── Reporting ├── JSON ├── HTML └── TXT

root@kitploit:~
### Couche d'analyse des réponses

La couche d'analyse des réponses centralise l'interprétation des réponses HTTP et du comportement de l'application. L'interface conceptuelle suivante illustre les responsabilités prévues :```
ResponseAnalyzer
 ├── status_code( )
 ├── content_type()
 ├── authenticated()
 ├── error_detected()
 ├── verification_result()
 └── extract_metadata()

Centraliser ces contrôles permet de maintenir la cohérence des étapes de prise d'empreintes, d'authentification, de vérification et de rapport.

Flux d'authentification```

Login request │ ▼ CSRF token extraction │ ▼ Login submission │ ▼ Cookie and session validation │ ▼ Authenticated-page access test │ ▼ Expected-content verification │ ▼ Authenticated result

root@kitploit:~
---

## Dépannage

### Erreurs de certificat SSL

Si un environnement de test contrôlé utilise un certificat interne ou auto-signé, n'utilisez l'option TLS du projet que lorsque le risque est compris et que la mission l'autorise :```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode detect \
  --no-verify-ssl

La solution préférée est de corriger la chaîne de certificats ou la configuration de confiance plutôt que de désactiver la vérification.

Délais de connexion

N'augmentez le délai d'attente qu'après avoir vérifié le routage, la configuration DNS, la configuration du proxy et la disponibilité de la cible :```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode detect
--timeout 30

root@kitploit:~
Utilisez des taux de requêtes et des délais prudents pour éviter de placer une charge inutile sur la cible.

### Échecs d'authentification

Confirmez que le compte de test est valide, que le compte est autorisé à accéder à la cible et que l'URL fournie pointe vers la bonne installation de phpMyAdmin. Examinez la sortie verbose pour les indicateurs CSRF, cookie, redirection et type de contenu sans partager les identifiants ni les valeurs de session.

### Paquet `rich` manquant

Installez les dépendances du projet dans l'environnement virtuel actif :```bash
python -m pip install -r requirements.txt

Si la version actuelle le prend en charge, désactivez le formatage riche pour une expérience de terminal minimale :```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode detect
--no-rich

root@kitploit:~
### Permission refusée sur Linux ou macOS

Rendez le lanceur exécutable :```bash
chmod +x start.sh exploit.py

Résultats inattendus

Considérez les résultats inattendus comme une raison de vous arrêter et d'enquêter. Vérifiez la version cible, le comportement du reverse-proxy, l'état de l'authentification, les preuves de requête/réponse, les limites configurées, le comportement de nouvelle tentative, et si un autre contrôle de sécurité a modifié la réponse. Ne relancez pas de manière répétée un mode à fort impact simplement pour obtenir un résultat favorable.


Guide de remédiation

L'avis officiel de phpMyAdmin recommande de mettre à niveau les installations concernées comme suit :[1]

Branche concernéeVersions concernéesAction recommandée
phpMyAdmin 4.xAntérieures à 4.9.4Mettez à niveau vers 4.9.4 ou une version ultérieure.
phpMyAdmin 5.x5.0.0Mettez à niveau vers 5.0.1 ou une version ultérieure.

Les organisations devraient également examiner les privilèges des comptes MySQL, restreindre les interfaces d'administration, imposer une authentification forte, limiter l'exposition au réseau, surveiller l'activité administrative et suivre les recommandations actuelles de version et de sécurité du fournisseur. Ces mesures complètent le correctif ; elles ne le remplacent pas.

Après la remédiation, répétez la validation dans un environnement approuvé et conservez les preuves indiquant la version installée, le chemin de déploiement, la date du test et le résultat. Évitez de tester les systèmes de production, sauf si l'autorisation inclut explicitement la vérification post-remédiation.


Développement

Configuration locale```bash

git clone https://github.com/CerberusMrXi/phpMyAdmin-CVE-2020-5504-Exploit cd phpMyAdmin-CVE-2020-5504-Exploit

python3 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip python -m pip install -r requirements-dev.txt

root@kitploit:~
Sous Windows, activez l'environnement avec :```
.\.venv\Scripts\Activate.ps1

Tests```bash

python -m pytest tests/

root@kitploit:~
### Attentes en matière de qualité du code

Les contributions doivent suivre la norme PEP 8, utiliser des indications de type lorsque c'est pertinent, inclure des docstrings descriptives, préserver une gestion claire des erreurs et éviter de journaliser les identifiants, cookies, jetons ou données extraites inutilement. Les modifications qui affectent le périmètre d'évaluation, le comportement des requêtes, l'authentification ou les rapports doivent inclure des tests et des mises à jour de la documentation.

### Disposition suggérée du dépôt```
.
├── exploit.py
├── requirements.txt
├── requirements-dev.txt
├── config.yaml.example
├── start.sh
├── start.bat
├── start.ps1
├── tests/
├── docs/
│   └── images/
└── reports/

Ne commitez pas les rapports générés, les identifiants, les artefacts de session ou les données spécifiques à la cible. Ajoutez-les au .gitignore si nécessaire.


Contributing

Les contributions sont les bienvenues lorsqu'elles améliorent la fiabilité, la documentation, la couverture de tests, l'accessibilité ou les flux de travail d'évaluation sûrs.

  1. Forkez le dépôt.

  2. Créez une branche ciblée, par exemple feature/improved-fingerprint-parser.

  3. Apportez le plus petit changement cohérent qui résout le problème.

  4. Ajoutez ou mettez à jour les tests et la documentation.

  5. Exécutez la suite de tests localement.

  6. Commitez avec un message clair.

  7. Poussez la branche et ouvrez une pull request décrivant le changement, les tests effectués et toute implication en matière de sécurité ou de compatibilité.```bash git checkout -b feature/improved-fingerprint-parser git add . git commit -m "Improve fingerprint result handling" git push origin feature/improved-fingerprint-parser

root@kitploit:~
Veuillez ne pas soumettre de modifications qui ajoutent des cibles non autorisées, affaiblissent les protections, exposent de véritables identifiants, incluent des données de systèmes en direct ou encouragent des tests en dehors d'un périmètre documenté.

---

## Journal des modifications

### Version 1.2

- Correction de l'erreur de l'attribut `details` de `FingerprintResult`.

- Ajout d'un chemin de secours lorsque le formatage de terminal rich est indisponible.

- Amélioration des modèles de détection de version.

- Renforcement de la gestion des erreurs tout au long du workflow.

- Ajout d'un contrôle de vérification TLS pour les tests contrôlés.

- Amélioration de la compatibilité multiplateforme.

### Version 1.1

- Ajout d'un module de fingerprinting dédié.

- Implémentation d'un mode de vérification sécurisé.

- Ajout d'une validation d'authentification multi-signaux.

- Ajout de la génération complète de rapports.

- Intégration de l'interface de terminal rich.

### Version 1.0

- Version initiale.

- Ajout de la fonctionnalité d'évaluation de base des injections SQL.

- Ajout de l'énumération des bases de données.

- Ajout de la sortie JSON.

---

## Licence

Ce projet est sous licence MIT. Consultez le fichier [LICENSE](https://github.com/cerberusmrxi/phpmyadmin-cve-2020-5504-exploit/blob/HEAD/LICENSE) pour le texte complet.```
MIT License

Copyright (c) 2024 Sudeepa Wanigarathna

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

Le logiciel est fourni sans garantie. Consultez le fichier LICENSE complet avant de redistribuer le projet.


Remerciements

Ce projet remercie l'équipe phpMyAdmin pour son avis de sécurité et ses correctifs, les chercheurs qui ont signalé la vulnérabilité, ainsi que les mainteneurs open source des bibliothèques utilisées par le framework.


Contact et support

CanalLien
AuteurSudeepa Wanigarathna
Profil GitHub@sudeepawanigarathna
Suivi des problèmesProblèmes du dépôt
E-mail[email protected]

Pour les signalements de vulnérabilités concernant ce projet, évitez de publier des détails sensibles publiquement. Utilisez un contact de sécurité privé ou le processus documenté de signalement de sécurité du dépôt une fois celui-ci configuré.


Références

https://www.phpmyadmin.net/security/PMASA-2020-1/ "Avis de sécurité phpMyAdmin PMASA-2020-1"

https://nvd.nist.gov/vuln/detail/CVE-2020-5504 "Base de données nationale des vulnérabilités NIST: CVE-2020-5504"


La sécurité par une divulgation responsable.

Retour en haut

Télécharger l’outil
Nombre maximal de colonnes à énumérer.
--max-columns 50
--max-rowsNombre maximal de lignes à demander lorsque c'est pris en charge.--max-rows 100
-v, --verboseActive la sortie de diagnostic.--verbose
--no-verify-sslDésactive la vérification du certificat TLS uniquement pour les tests encadrés.--no-verify-ssl
--no-richDésactive le formatage riche du terminal.--no-rich