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 al final del parámetro, ninguno de los cuales funciona: %00
-
%2500produce 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) comotest.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).