Traversal de ruta usando el ataque de extensión hash

2

Estoy intentando escribir un PoC para el recorrido de la ruta usando un ataque de extensión hash en un sitio PHP. Mi obstáculo está en especificar una cadena aceptable. La vulnerabilidad está en la URL:

http://127.0.0.1/download.php?file=file.txt&hash=[the valid md5 hash]

Estoy intentando imprimir /etc/passwd usando esto:

http://127.0.0.1/download.php?file=file.txt��/../../../etc/passwd&hash=[extended valid hash]

El backend primero verifica si el MD5 proporcionado es válido y luego imprime el archivo solicitado. Estoy usando las funciones de PHP fopen y fread para eso.

Puedo crear hashes válidos para cadenas arbitrarias pero PHP falla con el siguiente error:

  

Advertencia : fopen() espera que el parámetro 1 sea una ruta válida, cadena dada en /var/www/html/download.php

Nota: Los caracteres �� en la URL se deben al relleno MD5 de la extensión de hash.

    
pregunta cie 19.03.2018 - 15:30
fuente

1 respuesta

4

Desde PHP 5.3.4 , se produce un error si una ruta contiene un byte nulo.

    
respondido por el Benoit Esnard 19.03.2018 - 16:31
fuente

Lea otras preguntas en las etiquetas