Inclusión de archivos en un sitio web siempre agregando .php

0

Estoy viendo un sitio web que usa un parámetro de URL para incluir la página actual, como http://host.tld/index.php?page=about .

Si agrego algo que no sea la página actual (por ejemplo, http://host.tld/index.php?page=test ) refleja el parámetro, se agrega con un .php e indica que no se encontró el recurso.

Aquí reflejado XSS ya funciona, pero estoy tratando de incluir otros archivos. Ahora, si coloco /etc/passwd como parámetro, no encontrará el archivo /etc/passwd.php .

He intentado agregar %00 , %2500 y %00 al final del parámetro, ninguno de los cuales funciona:

  • %2500 produce un error:

      

    Advertencia: file_exists () espera que el parámetro 1 sea una ruta válida, la cadena se encuentra en /var/www/html/index.php en la línea 69

  • "test%00.php" refleja el parámetro (prueba) como test.php.php

  • %code% simplemente se agrega al parámetro cuando se refleja, como %code%

El %code% no se agrega en el lado del cliente.

¿Hay alguna otra forma de explotar esto para incluir otros archivos del sistema? La respuesta del servidor indica Apache / 2.4.10 (Debian).

    
pregunta SaAtomic 21.10.2016 - 14:09
fuente

1 respuesta

0

¿Comprobó si puede incluir un archivo remoto (especificó una URL como archivo)? Si se trata de un LFI clásico, entonces es posible que no vayas muy lejos porque los chicos de php eventualmente corrigieron el error al agregar un% 00 para cortar la cadena. Lo que puede hacer ahora es escanear el sistema de archivos del servidor web en busca de archivos php. Tal vez eso te permita detectar nuevos vectores de ataque pero, con la frecuencia, en pentesting debes usar tu creatividad si quieres tener éxito.

    
respondido por el kaidentity 21.10.2016 - 14:41
fuente

Lea otras preguntas en las etiquetas