
Framework autorizado de explotación de inyección SQL para CVE-2020-5504 en phpMyAdmin, con enumeración automatizada de bases de datos, inyección ciega, soporte de proxy e informes estructurados para pruebas de penetración e investigación de seguridad.
Marco de investigación y pruebas de seguridad autorizadas para identificar y validar CVE-2020-5504 en implementaciones de phpMyAdmin
Resumen · Características · Instalación · Uso · Informes · Arquitectura · Contribuciones
Aviso de uso responsable: Este proyecto está pensado únicamente para sistemas de tu propiedad o para los que tengas autorización explícita de evaluar. No lo utilices contra sistemas públicos, de terceros o de producción sin permiso por escrito y un alcance de pruebas definido.
| Salida CLI | Uso |
|---|---|
![]() | ![]() |
CVE-2020-5504 es una vulnerabilidad de inyección SQL que afecta a la página de cuentas de usuario de phpMyAdmin. Según el aviso oficial de phpMyAdmin, están afectadas las versiones 4.x anteriores a 4.9.4 y phpMyAdmin 5.0.0; el aviso recomienda actualizar a 4.9.4 o posterior para la línea 4.x y a 5.0.1 o posterior para la línea 5.x.[1] La Base de Datos Nacional de Vulnerabilidades registra que la explotación requiere una cuenta MySQL válida para acceder al servidor.[2]
Este proyecto proporciona un flujo de trabajo estructurado para pruebas de penetración autorizadas, validación controlada e investigación de seguridad. Está diseñado para ayudar a los evaluadores a identificar un objetivo, verificar si parece estar afectado, documentar evidencia y producir informes estructurados para el seguimiento de la remediación.
El marco se organiza en torno a cuatro objetivos:
Identificar instalaciones de phpMyAdmin y recopilar indicadores relacionados con la versión.
Validar la posible exposición mediante comprobaciones controladas y no destructivas cuando sea posible.
Evaluar objetivos autorizados usando límites configurables, comportamiento de reintentos y proxy opcional.
Reportar los hallazgos en formatos fáciles de revisar, archivar e integrar en flujos de trabajo.
Este proyecto no sustituye a los parches, las directrices del proveedor, la configuración segura ni a un proceso formal de autorización de pruebas de penetración. No garantiza la detección de todas las implementaciones, configuraciones, versiones o condiciones de red. Todos los resultados deben revisarse manualmente y tratarse como evidencia de evaluación, no como un veredicto automático de seguridad.
Ejecuta esta herramienta contra un activo únicamente cuando tengas autorización clara del propietario del activo. La autorización debe definir el objetivo, la ventana de pruebas permitida, las técnicas autorizadas, las IP de origen, los requisitos de manejo de datos, los contactos de escalamiento y las condiciones de detención.
Nunca pruebes sistemas expuestos a internet solo porque sean accesibles. La accesibilidad no es un permiso.
Los modos de evaluación pueden producir información sobre bases de datos, tablas, columnas o registros. Trata toda la salida como potencialmente sensible. Almacena los informes con controles de acceso adecuados, evita colocar secretos en el historial del shell, cifra los informes cuando lo exijan las reglas de tu compromiso y elimina de forma segura los datos temporales al finalizar el compromiso.
Antes de iniciar una evaluación, confirma que dispones de un procedimiento conocido de copia de seguridad o recuperación, un canal de comunicación con el propietario del sistema y un plan documentado de reversión o detención. Prefiere un entorno de pruebas aislado siempre que esté disponible. Utiliza el modo menos intrusivo que responda a la pregunta de la evaluación.
| Área | Capacidad | Descripción |
|---|---|---|
| Descubrimiento | Huella digital automatizada | Identifica posibles implementaciones de phpMyAdmin y recopila indicadores de versión. |
| Validación | Verificación de vulnerabilidades | Realiza comprobaciones controladas con un manejo de resultados orientado a la confianza. |
| Flujo de trabajo | Múltiples modos de operación | Admite flujos de trabajo de detección, verificación, investigación y dry-run. |
| Gestión de sesiones | Gestión de tokens CSRF | Extrae y gestiona los valores relacionados con CSRF necesarios para el flujo de la aplicación. |
| Autenticación | Validación de múltiples señales | Utiliza múltiples indicadores para reducir falsos resultados de autenticación. |
| Evaluación | Enumeración de bases de datos | Admite la enumeración autorizada de bases de datos, tablas, columnas y datos seleccionados. |
| Investigación de inyecciones | Técnicas ciegas | Admite flujos de trabajo de investigación basados en booleanos y en tiempo, cuando la implementación lo permite. |
| Informes | JSON, HTML y TXT | Produce salida estructurada, con estilos y en texto plano para diferentes audiencias. |
| Fiabilidad | Reintentos y backoff | Reintenta solicitudes transitorias con comportamiento configurable. |
| Integraciones | Soporte de proxy | Puede usarse con Burp Suite u otro proxy de intercepción HTTP. |
| Usabilidad | Interfaz de terminal enriquecida | Proporciona salida con códigos de color, indicadores de progreso y mensajes de estado legibles. |
| Diagnósticos | Registro verboso | Expone información de diagnóstico adicional para la resolución autorizada de problemas. |
El flujo de trabajo recomendado está intencionalmente escalonado para que los evaluadores puedan comenzar con la actividad de menor impacto y aumentar el alcance solo cuando esté autorizado.``` ┌──────────────────┐ │ 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 └──────────────────┘
Un resultado positivo debe revisarse en función de la versión objetivo, el contexto de autenticación, la evidencia de la solicitud y el alcance del compromiso. Un resultado negativo no demuestra que el despliegue sea seguro; puede reflejar diferencias de versión, controles de acceso, enrutamiento, personalización de la aplicación, limitación de velocidad o visibilidad insuficiente.
---
## Requisitos
### Requisitos de ejecución
| Requisito | Base compatible |
| --- | --- |
| Sistema operativo | Linux, macOS o Windows |
| Python | 3.6 o posterior, sujeto a la compatibilidad de dependencias |
| Gestor de paquetes | `pip` |
| Control de versiones | Git, al instalar desde el repositorio |
| Acceso a la red | Conectividad con un objetivo de evaluación explícitamente autorizado |
### Dependencias de Python
El proyecto actualmente espera los siguientes paquetes:```
requests>=2.31.0
rich>=13.7.0
colorama>=0.4.6
dataclasses>=0.6; python_version < "3.7"
Para instalaciones reproducibles, prefiere el archivo requirements.txt del repositorio en lugar de instalar paquetes individualmente.
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
Inicie la interfaz guiada con:```bash
./start.sh
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
Si la directiva de ejecución de PowerShell impide que el lanzador se ejecute, use el punto de entrada de PowerShell documentado del repositorio en un entorno autorizado:```
powershell -ExecutionPolicy Bypass -File .\start.ps1
Usa esto solo cuando requirements.txt no esté disponible o cuando estés gestionando las dependencias intencionalmente por tu cuenta:```bash
python -m pip install "requests>=2.31.0" "rich>=13.7.0" "colorama>=0.4.6"
---
## Uso
Los ejemplos siguientes utilizan `https://authorized.example/phpmyadmin` como marcador de posición. Reemplázalo únicamente por un objetivo que esté explícitamente dentro de tu alcance aprobado.
### Modo de detección
El modo de detección es el punto de partida recomendado. Está diseñado para identificar la aplicación y recopilar indicadores de versión sin intentar explotarla.```bash
python exploit.py \
--url https://authorized.example/phpmyadmin \
--mode detect
Las banderas de formato corto de la interfaz original también son compatibles cuando corresponda:```bash python exploit.py -u https://authorized.example/phpmyadmin -m detect
### Modo de verificación
El modo de verificación está diseñado para pruebas de vulnerabilidad controladas. Úselo únicamente cuando el compromiso permita explícitamente la actividad de validación y las credenciales requeridas se hayan proporcionado mediante un método aprobado.```bash
python exploit.py \
--url https://authorized.example/phpmyadmin \
--mode verify \
--username "$PMADB_USERNAME" \
--password "$PMADB_PASSWORD"
Evita colocar contraseñas reales directamente en los comandos, ya que las líneas de comandos pueden almacenarse en el historial del shell o quedar expuestas a la inspección de procesos locales.
El modo de investigación puede realizar una actividad de evaluación autorizada más amplia y enumeración de datos. Debe limitarse a entornos de prueba dedicados o compromisos con aprobación escrita explícita para el alcance solicitado.```bash
python exploit.py
--url https://authorized.example/phpmyadmin
--mode research
--username "$PMADB_USERNAME"
--password "$PMADB_PASSWORD"
--max-databases 20
--max-tables 50
### Modo dry-run
El modo dry-run es útil para validar la construcción de comandos, revisar el comportamiento del flujo de trabajo y probar la configuración sin realizar acciones intrusivas.```bash
python exploit.py \
--url https://authorized.example/phpmyadmin \
--dry-run
Enruta el tráfico a través de un proxy de intercepción autorizado cuando necesites inspeccionar las solicitudes y respuestas durante una prueba:```bash
python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--proxy http://127.0.0.1:8080
Use un proxy solo cuando lo permitan las reglas del compromiso y esté configurado para evitar recopilar o retener datos sensibles innecesarios.
### Evaluación de base de datos específica
Cuando el documento de alcance identifique una base de datos específica, limita la evaluación a esa base de datos donde la implementación lo soporte:```bash
python exploit.py \
--url https://authorized.example/phpmyadmin \
--mode research \
--database target_database \
--max-tables 25
Habilita la salida detallada al investigar una conexión fallida, una respuesta inesperada o un problema de configuración:```bash
python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--verbose
### Interfaz interactiva
El lanzador interactivo se recomienda para usuarios noveles porque ofrece indicaciones guiadas, selección de modo, indicadores de progreso y salida de estado codificada por colores.```bash
# Linux/macOS
./start.sh
# Windows
start.bat
| Modo | Propósito | Impacto esperado | Uso recomendado |
|---|---|---|---|
detect | Obtener la huella digital de la aplicación e identificar indicadores de versión. | Ninguno o mínimo | Reconocimiento inicial en un alcance aprobado. |
verify | Probar si el objetivo parece vulnerable mediante comprobaciones controladas. | Bajo | Confirmación durante una evaluación autorizada. |
research | Realizar una evaluación más amplia y enumeración autorizada. | Alto | Laboratorios dedicados o trabajos con aprobación explícita. |
dry-run | Simular el comportamiento del flujo de trabajo sin realizar acciones intrusivas. | Ninguno | Validación de configuración y comandos. |
Los nombres de los modos describen el flujo de trabajo previsto, no una garantía de comportamiento bajo cualquier configuración. Revisa la implementación y las reglas de compromiso antes de usar cualquier modo contra un sistema en vivo.
Las siguientes opciones corresponden a la interfaz actual del proyecto. Ejecuta python exploit.py --help para confirmar los nombres exactos de las opciones disponibles en tu copia local.
| Opción | Descripción | Ejemplo |
|---|---|---|
-u, --url | URL base autorizada de phpMyAdmin. | --url https://authorized.example/phpmyadmin |
-m, --mode | Selecciona detect, verify o research. | --mode verify |
--dry-run | Simula el flujo de trabajo sin acciones intrusivas. | --dry-run |
--username | Nombre de usuario para una cuenta de prueba aprobada. | --username "$PMADB_USERNAME" |
--password | Contraseña para una cuenta de prueba aprobada. | --password "$PMADB_PASSWORD" |
-p, --proxy | URL del proxy HTTP. | --proxy http://127.0.0.1:8080 |
-f, --format | Formato del informe, como json, html o txt. | --format html |
-o, --output | Ruta del archivo de salida. | --output report.html |
-d, --database | Limita la actividad a una base de datos con nombre cuando se admita. | --database target_database |
-t, --timeout | Tiempo de espera de la solicitud en segundos. | --timeout 30 |
--max-databases | Número máximo de bases de datos a enumerar. | --max-databases 20 |
--max-tables | Número máximo de tablas a enumerar. | --max-tables 50 |
Importante: Deshabilitar la verificación de certificados TLS debilita la seguridad del transporte y debe limitarse a condiciones de prueba controladas. No lo trates nunca como una solución para producción.
La herramienta puede usar variables de proxy estándar cuando el tráfico deba enrutarse a través de un proxy aprobado:```bash export HTTP_PROXY=http://127.0.0.1:8080 export HTTPS_PROXY=http://127.0.0.1:8080
No almacene credenciales en un archivo `.env` versionado. Si se utilizan variables de entorno para credenciales de prueba, proteja la sesión de shell y elimínelas después del compromiso:```bash
export PMADB_USERNAME='authorized-test-user'
export PMADB_PASSWORD='use-an-approved-secret-source'
# Remove them when finished
unset PMADB_USERNAME PMADB_PASSWORD
Crea config.yaml para ajustes de evaluación persistentes y no secretos:```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
Mantén las credenciales fuera de este archivo a menos que el archivo esté protegido por el proceso aprobado de gestión de secretos de tu organización. Añade los archivos de configuración locales que contengan valores sensibles a `.gitignore`.
---
## Informes
El framework admite salida en JSON, HTML y TXT. Selecciona el formato que coincida con la audiencia y los requisitos de retención del encargo.
### Informe JSON
JSON es adecuado para automatización, archivado e ingesta en pipelines de evaluación. A continuación se muestra una estructura de informe representativa; los campos exactos pueden variar según la versión y el modo.```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"]
}
}
La salida HTML está pensada para la revisión humana. Puede incluir secciones con estilos, indicadores de estado, resúmenes de evidencia, metadatos y diseños imprimibles. Almacene los informes generados en una ubicación con control de acceso.
La salida TXT es útil para la revisión en terminal, la recopilación de registros, los adjuntos de tickets y los entornos donde no se desea un formato enriquecido.
Antes de compartir un informe, confirme que solo contiene información permitida por el compromiso. Revise URL, nombres de usuario, nombres de bases de datos, valores de registros, cookies, tokens, cabeceras de solicitud y salida de depuración en busca de secretos o datos personales. Redacte o elimine el contenido sensible cuando no sea necesario para respaldar el hallazgo.
El proyecto está organizado como un pipeline de evaluación por etapas:``` 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
### Capa de análisis de respuestas
La capa de análisis de respuestas centraliza la interpretación de las respuestas HTTP y el comportamiento de la aplicación. La siguiente interfaz conceptual ilustra las responsabilidades previstas:```
ResponseAnalyzer
├── status_code( )
├── content_type()
├── authenticated()
├── error_detected()
├── verification_result()
└── extract_metadata()
Centralizar estas comprobaciones ayuda a mantener la coherencia entre las etapas de fingerprinting, autenticación, verificación e informes.
Login request │ ▼ CSRF token extraction │ ▼ Login submission │ ▼ Cookie and session validation │ ▼ Authenticated-page access test │ ▼ Expected-content verification │ ▼ Authenticated result
---
## Solución de problemas
### Errores de certificado SSL
Si un entorno de prueba controlado utiliza un certificado interno o autofirmado, utilice la opción TLS del proyecto solo cuando se comprenda el riesgo y el compromiso lo permita:```bash
python exploit.py \
--url https://authorized.example/phpmyadmin \
--mode detect \
--no-verify-ssl
La solución preferida es corregir la cadena de certificados o la configuración de confianza en lugar de deshabilitar la verificación.
Aumente el tiempo de espera solo después de verificar el enrutamiento, DNS, configuración de proxy y disponibilidad del destino:```bash
python exploit.py
--url https://authorized.example/phpmyadmin
--mode detect
--timeout 30
Utilice tasas de solicitud y demoras conservadoras para evitar imponer una carga innecesaria al objetivo.
### Fallos de autenticación
Confirme que la cuenta de prueba es válida, que la cuenta tiene permiso para acceder al objetivo y que la URL proporcionada apunta a la instalación correcta de phpMyAdmin. Revise la salida detallada en busca de indicadores de CSRF, cookie, redirección y content-type, sin compartir credenciales ni valores de sesión.
### Falta el paquete `rich`
Instale las dependencias del proyecto dentro del entorno virtual activo:```bash
python -m pip install -r requirements.txt
Si la versión actual lo admite, desactive el formato enriquecido para una experiencia de terminal mínima:```bash
python exploit.py
--url https://authorized.example/phpmyadmin
--mode detect
--no-rich
### Permiso denegado en Linux o macOS
Haga ejecutable el lanzador:```bash
chmod +x start.sh exploit.py
Trate los resultados inesperados como un motivo para detenerse e investigar. Compruebe la versión del objetivo, el comportamiento del proxy inverso, el estado de autenticación, las evidencias de solicitud/respuesta, los límites configurados, el comportamiento de reintento y si otro control de seguridad alteró la respuesta. No vuelva a ejecutar repetidamente un modo de alto impacto solo para obtener un resultado preferido.
El aviso oficial de phpMyAdmin recomienda actualizar las instalaciones afectadas de la siguiente manera:[1]
| Línea afectada | Versiones afectadas | Acción recomendada |
|---|---|---|
| phpMyAdmin 4.x | Anteriores a 4.9.4 | Actualice a 4.9.4 o posterior. |
| phpMyAdmin 5.x | 5.0.0 | Actualice a 5.0.1 o posterior. |
Las organizaciones también deben revisar los privilegios de las cuentas MySQL, restringir las interfaces administrativas, imponer una autenticación sólida, limitar la exposición de red, supervisar la actividad administrativa y seguir las guías de seguridad y de versiones actuales del proveedor. Estas medidas complementan los parches; no los sustituyen.
Después de la remediación, repita la validación en un entorno aprobado y conserve evidencia que muestre la versión instalada, la ruta de despliegue, la fecha de prueba y el resultado. Evite probar sistemas en producción a menos que la autorización incluya explícitamente la verificación posterior a la remediación.
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
En Windows, activa el entorno con:```
.\.venv\Scripts\Activate.ps1
python -m pytest tests/
### Expectativas de calidad del código
Las contribuciones deben seguir PEP 8, usar type hints cuando sea práctico, incluir docstrings descriptivos, preservar un manejo de errores claro y evitar registrar credenciales, cookies, tokens o datos extraídos innecesarios. Los cambios que afecten el alcance de la evaluación, el comportamiento de las solicitudes, la autenticación o los informes deben incluir pruebas y actualizaciones de documentación.
### Estructura sugerida del repositorio```
.
├── exploit.py
├── requirements.txt
├── requirements-dev.txt
├── config.yaml.example
├── start.sh
├── start.bat
├── start.ps1
├── tests/
├── docs/
│ └── images/
└── reports/
No confirmes informes generados, credenciales, artefactos de sesión ni datos específicos del objetivo. Añádelos a .gitignore cuando corresponda.
Las contribuciones son bienvenidas cuando mejoran la fiabilidad, la documentación, la cobertura de pruebas, la accesibilidad o los flujos de trabajo de evaluación seguros.
Haz un fork del repositorio.
Crea una rama específica, como feature/improved-fingerprint-parser.
Realiza el cambio coherente más pequeño que resuelva el problema.
Añade o actualiza pruebas y documentación.
Ejecuta la suite de pruebas localmente.
Realiza un commit con un mensaje claro.
Sube la rama y abre una solicitud de extracción describiendo el cambio, las pruebas realizadas y cualquier implicación de seguridad o compatibilidad.```bash git checkout -b feature/improved-fingerprint-parser git add . git commit -m "Improve fingerprint result handling" git push origin feature/improved-fingerprint-parser
Por favor, no envíes cambios que añadan objetivos no autorizados, debiliten las salvaguardas, expongan credenciales reales, incluyan datos de sistemas en vivo o fomenten pruebas fuera de un ámbito documentado.
---
## Registro de cambios
### Versión 1.2
- Se corrigió el error del atributo `details` de `FingerprintResult`.
- Se añadió una ruta alternativa cuando el formato enriquecido de terminal no está disponible.
- Se mejoraron los patrones de detección de versiones.
- Se reforzó el manejo de errores en todo el flujo de trabajo.
- Se añadió control de verificación TLS para pruebas controladas.
- Se mejoró la compatibilidad multiplataforma.
### Versión 1.1
- Se añadió un módulo dedicado de fingerprinting.
- Se implementó un modo de verificación seguro.
- Se añadió la validación de autenticación con múltiples señales.
- Se añadió la generación de informes exhaustivos.
- Se integró la interfaz de terminal enriquecida.
### Versión 1.0
- Lanzamiento inicial.
- Se añadió la funcionalidad de evaluación de inyección SQL de referencia.
- Se añadió la enumeración de bases de datos.
- Se añadió la salida JSON.
---
## Licencia
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo [LICENSE](https://github.com/cerberusmrxi/phpmyadmin-cve-2020-5504-exploit/blob/HEAD/LICENSE) para ver el texto completo.```
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.
El software se proporciona sin garantía. Revise el archivo LICENSE completo antes de redistribuir el proyecto.
Este proyecto agradece al equipo de phpMyAdmin por su aviso de seguridad y sus parches, a los investigadores que reportaron la vulnerabilidad y a los mantenedores de código abierto responsables de las bibliotecas utilizadas por el framework.
| Canal | Enlace |
|---|---|
| Autor | Sudeepa Wanigarathna |
| Perfil de GitHub | @sudeepawanigarathna |
| Seguimiento de incidencias | Incidencias del repositorio |
| Correo electrónico | [email protected] |
Para informes de vulnerabilidades sobre este proyecto, evite publicar detalles sensibles públicamente. Utilice un contacto de seguridad privado o el proceso documentado de notificación de seguridad del repositorio una vez configurado.
https://www.phpmyadmin.net/security/PMASA-2020-1/ "phpMyAdmin PMASA-2020-1 aviso de seguridad"
https://nvd.nist.gov/vuln/detail/CVE-2020-5504 "NIST National Vulnerability Database: CVE-2020-5504"
Seguridad mediante divulgación responsable.
--max-columns| Número máximo de columnas a enumerar. |
--max-columns 50 |
--max-rows | Número máximo de filas a solicitar cuando se admita. | --max-rows 100 |
-v, --verbose | Habilita la salida de diagnóstico. | --verbose |
--no-verify-ssl | Deshabilita la verificación de certificados TLS solo para pruebas controladas. | --no-verify-ssl |
--no-rich | Deshabilita el formato enriquecido de la terminal. | --no-rich |