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-2018-7600 | Kitploit
Herramientas/GitHubGitHub/raytran54/cve-2018-7600
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebAprendizaje y EducaciónLabs y Práctica
GitHubraytran54/cve-2018-7600

CVE-2018-7600

Ver Repositorio
hace 2 añosAú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

TRAN CONG DANH - SVTT - Mentor: LUU VAN LAN - CVE-2018-7600 - Día de inicio: 26/06/2024.

Tabla de contenidos:

  1. Resumen del CVE
  2. Requisitos previos
  3. Análisis del CVE
  4. Mitigación

Resumen del CVE

  • Un atacante podría llamar a una solicitud Ajax de la API de Formularios de Drupal que contenga la función call_user_func auto do
  • Drupal anterior a 7.58, 8.x anterior a 8.3.9, 8.4.x anterior a 8.4.6 y 8.5.x anterior a 8.5.1

Requisitos previos

  • En este laboratorio, uso:

    • Ubuntu 20.04( PHP 7.2, MariaDB )
    • La versión de Drupal que uso en este laboratorio es 8.3.8
    • Visual Studio Code para depurar
    • Kali 23.4 para ejecutar el exploit de Drupal

Análisis del CVE

  • Encontramos que las claves que usan call_user_func son #pre_render, #post_render, #access_callback, #submit, #lazy_builder, #validate image
  • La tarea ahora es encontrar qué parámetro enviado por el usuario tiene un render, puede cambiar la clave y recibir la clave #post_render para invocarla. image
  • Cuando se redimensiona la imagen, el servidor llama a la API de Drupal image
  • La función &$array incluida aquí es la matriz de elementos predeterminados al enviarla; probemos a depurar sin código: image image
  • Supongamos que modificas el valor de mail al subir: image image

image

  • Al llamar al método getValue($array, $parents), el proceso es el siguiente:

$ref impide las referencias a $array.

Primer bucle: $ref referencia a $array['a'].

Segundo bucle: $ref referencia a $array['a']['b'].

Tercer bucle: $ref referencia a $array['a']['b']['c'].

Como resultado final, $ref quedará referenciado al valor 42.

root@kitploit:~
$array = [
    'a' => [
        'b' => [
            'c' => 42
        ]
    ]
];
$parents = ['a', 'b', 'c'];
  • Después de recibir el valor $form de la función getValue. $form se convertirá en un argumento para la función Render

image image image

  • La definición de call_user_func

image

  • El resultado cuando uso el archivo de exploit:

image

Mitigación

  • Parche ** Los desarrolladores de Drupal han publicado un parche que añade una clase RequestSanitizer con un método stripDangerousValues ​​para eliminar todos los elementos de entrada de la matriz cuyas claves comiencen con “#”. Este método limpia la entrada en $_GET, $_POST y $_COOKIES.

** Drupal 8.6.5 /core/lib/Drupal/Core/DrupalKernel.php image /core/lib/Drupal/Core/Security/RequestSanitizer.php image image ** La función stripDangerousValues ​​verifica todos los parámetros de entrada uno a uno; los primeros elementos de la matriz de entrada tienen un valor que comienza con “#” y los valores ​​que no están en la lista blanca se eliminan.

Descargar herramienta