Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - ChimoC

#1231
BUenas:

A ver si consigo alguna de fechas y apellidos y os la subo. Aunque se las tengo que pedir a un colega que creo que está perdido en combate (por lo menos su disco duro)

Si lo pillo os lo subo a algun lado (pero no os hagais ilusiones que casi seguro que va a ser que no)

Un saludete

ChimoC
#1232
Buenas:

Que teneis una chincheta de |FluiD| que se ha currado un programita ....os voy a dar palos a los doss  ;D ;D ;D ;D

http://foro.elhacker.net/hacking_wireless/generador_de_diccionarios_stringenerator_v12_winlinux-t286349.0.html

Un saludo

ChimoC
#1233
Buenas:

En VMware sólo te reconoce dispositivos USB, y al ser tu tarjet auna minipci......NO te la reconocerá

Un saludo

ChimoC
#1234
Buenas:

Esto post dice cómo inyectar....pero si todo el mundo hace preguntas en este post, al final será un churro-lio de post que no sabrás dónde buscar.

Por eso lo que digo es que las preguntas las hagais en un nuevo post, y si sale algo nuevo, pues se edita el mensaje inicial de este post y ya no hay lio alguno.

Un saludo y por favor posts en nuevos hilos, y si hay que modificar algo de éste ya se hará

ChimoC
#1235
BUenas:

|FluiD| No te cabrees por un tipo que no sabe ni lo que es un ordendor...de esos te vas a encontrar a varios.

nekage: No postees dudas aqui sobre el uso de esta herramienta ya que directamente te las voy a borrar

Un saludo

ChimoC
#1236
Buenas:

Por favor, si quereis hacer preguntas hacerlas en un nuevo post y así no machacamos éste

Un saludo

ChimoC
#1237
Buenas:

Títulos DESCRIPTIVOS del problema del user y no "eso"

Un saludo

ChimoC
#1238
Buenas:

Martin-Ph03n1X
: Envía un privado a Anelkaos

Un saludo

ChimoC
#1239
Buenas:

@Glezo: A mi no me suenan.. no obstante manda un privado a *dudux con las claves y ESSID y BSSID

Un saludo

ChimoC
#1240
Buenas:

Un nuevo wlandecrypter modificado (NO contiene nuevas MACS) del user BlackHole (de la página hermana http://foro.seguridadwireless.net/enlaces-descarga-aplicaciones-wireless-linux/wlandecrypter-1-3/ ):

Éste es el link de descarga http://www.filedropper.com/wlandecrypter13tar Aunque veas que es 1.3 NO hay diferencia con el 1.2 sino que es una reestructuración.

Así que como se lo ha currado hay que publicarlo, que para eso somos comunidad:

/*****************************************************************************
* Fichero: wlandecrypter.c
* Autor: Nilp0inteR (nilp0inter2k6[at]gmail[dot]com)
* Fecha: 23-03-2006
* Actualizado: 22-11-2006 por nilp0inter
*
* Modificado v0.6 :     15-12-2007 por *dudux    dudux[at]elhacker[dot]net
* Modificado v0.7 :     22-11-2008 por *dudux    dudu[at]seguridadwireless[dot]net
* Modificado v0.8 :     12-04-2009 por *dudux    dudu[at]seguridadwireless[dot]net
* Modificado v1.0 :     10-05-2009 por *dudux  // bea vuela muy alto...el cielo es nuestro niña
* Modificado v1.1 : 18-05-2009 por *dudux     Añadida funcion para ESSIDs cambiados
* Modificado:           www.seguridadwireless.net
*
* Actualizado v1.2b: 18-11-2009 Niroz&NiñoMelon. Añadidas opciones '-l', '-e' y '-a'.
* Añade router Xavi E0:91:53.
* También se eliminó la constante MAXINDEX y el código relacionado con ella.
*
* Actualizado v1.2: 08-12-2009 Niroz&NiñoMelon. Añdidas opciones '-l', '-e' y '-a'.
* Añade routers Comtrend, Xavi, Thomson y Huawei.
* Se eliminó la constante MAXINDEX y el código relacionado con ella.
*
* Modificado v1.3: Enero/Febrero 2010 por BlackHole
* Reprogramación completa del código para facilitar su expansión futura.
* Ver notas en cada función a lo largo del programa.
*
* Descripcion: Generador de diccionario de claves por defecto para los
* routers de Timofonik Zyxel, Xavy, Comtrend, Thomson y Huawei.
*
* Este programa es software libre; puedes redistribuirlo y/o modificarlo
* bajo los terminos de la Licencia Publica General GNU (GPL) publicada
* por la Free Software Foundation; en su version numero 2, o (bajo tu
* criterio) la ultima version. Mira http://www.fsf.org/copyleft/gpl.txt.
*
* Este programa se distribuye SIN GARANTIA de ningun tipo. USALO bajo tu proio riesgo.
*
* Recomendaciones: wlandecrypter es multiplataforma, solo las ultimas versiones estan empaquetadas
*                  para  linux y  versiones de la Livecd WIFIWAY y WIFISLAX
*                  Hoy en dia estan para todo el mundo
*
*                 * Wlandecrypter 0.7 para  PDAs (Zaurus) gracias a burton de seguridadwireless
*                 * Wlandecrypter 0.5 para Macintosh
*                            --->http://wiki.adictolinux.org/index.php/Wlandecrypter_en_Mac_Os_X
*                 * Wlandecrypter 0.5 para windows no se nada,creo que nilp0inter compilo hasta la v0.5
*
* wlandecrypter 1.2 para windows y Macintosh en foro.seguridadwireless.net, o compila este mismo codigo.
*
* Mira tambien:  wlaninject , wlandestroy , wepattack , weplab y aircrack-ng
*
*****************************************************************************/

#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>


#define VERSION 1
#define SUBVERSION 3
#define DATEVERSION "2010/02/19"


//--------------------------------------------------
// Numero de modelos de routers en la base de datos
//--------------------------------------------------

#define MAXROUTER 18 // Recordar actualizar el valor al número EXACTO de routers catalogados
#define MAXINIT 2 // Añadido v1.3: número máximo de familias de claves en un router


//--------------------------------------------------------------------------------
// Definición del tipo de dato Router
// v1.3: BlackHole (31/1/2010)
//       Se cambia la anterior estructura rígida por punteros a cadenas estáticas
//       Esto permite versatilidad y libertad completa de ampliación
//-----------------------------.........------------------------------------------

typedef struct Router
{
char *bssid; // Almacena BSSID
char *notas; // Almacena nombre del router
char *init[MAXINIT]; // Almacena las partes fijas de la clave asociadas a un router
// Cambiado v1.3: array de punteros a cadenas
} tRouter;


//--------------------
// Variables globales
//--------------------

FILE *fichero;
tRouter routers[MAXROUTER];
unsigned int baseMAC;
unsigned int wlanID;
unsigned int indeterminado=0;
unsigned int experimental=0;


//-----------------------------------------------------------
// Función: datosRouters
// Introduce los datos de los modelos conocidos
// v1.3: El array de routers pasa a ser global
//       GCC ya inicializa a NULL toda la estructura tRouter
//       Pendiente comprobar otros compiladores
//-----------------------------------------------------------

void datosRouters(void)
{
// Z-com
routers[0].bssid   = "00:60:B3";
routers[0].init[0] = "Z001349";
routers[0].notas   = "Z-com";

// Xavvy
routers[1].bssid   = "00:01:38";
routers[1].init[0] = "X000138";
routers[1].notas   = "Xavi 7768r";

// Comtrend
routers[2].bssid   = "00:03:C9";
routers[2].init[0] = "C0030DA";
routers[2].notas   = "Comtrend 535";

// Zyxel : Gracias a thefkboss de foro.elhacker.net por esta observacion
routers[3].bssid   = "00:A0:C5";
routers[3].init[0] = "Z001349";
routers[3].notas   = "ZyXEL 650HW/660HW";

// Comtrend NUEVO, gracias a dnreinad por el coche xD
routers[4].bssid   = "00:16:38";
routers[4].init[0] = "C0030DA";
routers[4].notas   = "Comtrend 536+";

// P-660HW-D1,gracias a Tertulia de foro.elhacker.net  ;)
routers[5].bssid   = "00:13:49";
routers[5].init[0] = "Z001349";
routers[5].init[1] = "Z0002CF"; // añadido v0.7 ....
routers[5].notas   = "Zyxel 660HW-D1";

        // ZyGate Communications
        routers[6].bssid   = "00:02:CF";
        routers[6].init[0] = "Z0002CF";
        routers[6].init[1] = "Z0023F8"; // añadida v1.0 gracias a thedoctor77 ;)
        routers[6].notas   = "ZyGate";

        // Comtrend nuevos 2007-2008  *dudux y dnreinad
        routers[7].bssid   = "00:1A:2B";
        routers[7].init[0] = "C0030DA";
        routers[7].init[1] = "C001D20"; // añadido v0.7 ....
        routers[7].notas   = "Comtrend DSL";

        // Zygate v06. gracias pianista y Sycho por estar atento
        routers[8].bssid   = "00:19:CB";
        routers[8].init[0] = "Z0002CF";
        routers[8].init[1] = "Z0019CB"; // añadido v0.8 (2009) Zyxel FTTH
        routers[8].notas   = "ZyXEL 660HW (FTTH)";  // gracias Sycho :P

        // Comtrend hrodgar v0.6
        routers[9].bssid   = "00:19:15";
        routers[9].init[0] = "C0030DA";
        routers[9].notas   = "Comtrend (2008)";

        // Nuevos version0.7
        // Comtrend 2008 Mugen de el foro.elhacker.net  ;)
        routers[10].bssid   = "00:30:DA";
        routers[10].init[0] = "C0030DA";
        routers[10].notas   = "Comtrend 536+";

        // Comtrend nuevos 2008
        routers[11].bssid   = "00:1D:20";
        routers[11].init[0] = "C001D20";
        routers[11].notas   = "Comtrend 536+";

        //Nuevo version0.9
        // Zyxel P660HW-D1  2009 Gracias a Zim_Zum y a buckynet de seguridadwireless.net
        routers[12].bssid   = "00:23:F8";
        routers[12].init[0] = "Z0023F8";
        routers[12].notas   = "ZyXEL 660HW-D1";

        // Nuevo version1.0
        // Xavy 2009   zim_zum y *dudux
        routers[13].bssid   = "00:01:36";
        routers[13].init[0] = "X000138";
        routers[13].notas   = "Xavi 7768r (2009)";

// *dudux v1.2
// Comtrend 2009
routers[14].bssid   = "00:03:DA";
routers[14].init[0] = "C0030DA";
routers[14].notas   = "Comtrend (2009)";

// *dudux v1.2
// Thomsom 2009
routers[15].bssid   = "00:1F:9F";
routers[15].init[0] = "T5YF69A";
routers[15].notas   = "Thomsom (2009)";

// Niroz&Melon v1.2
// Xavi 7968. Solos 4610 RD / Solos 461x
routers[16].bssid   = "E0:91:53";
routers[16].init[0] = "XE09153";
routers[16].notas   = "Xavi 7968-Solos 4610RD/461x";

// Ferlan v1.2
// Huawei EchoLife HG520v FTTH (Fibra optica)
routers[17].bssid   = "00:18:02";
routers[17].init[0] = "H4A69BA";
routers[17].init[1] = "H538FBF";
routers[17].notas   = "Huawei EchoLife HG520v (FTTH)";
}


//----------------------------------------------------------
// Funcion: salirError
// Centraliza mensajes de error y realiza salida controlada
// v1.3: BlackHole (4/2/2010)
//       Acentos eliminados intencionadamente para no tener
//       que gestionar codificación UTF-8 o ISO-8859-1
//----------------------------------------------------------

void salirError (int errnum)
{
char *errmsg[8];

errmsg[0]="Numero invalido de parametros";
errmsg[1]="Opcion no reconocida";
errmsg[2]="ESSID no especificado";
errmsg[3]="ESSID invalido. Se esperaba formato WLAN_XX";
errmsg[4]="BSSID no especificado";
errmsg[5]="BSSID invalido. Se esperaba formato XX:XX:XX:XX:XX:XX";
errmsg[6]="BSSID no encontrado. Usar -l para ver lista";
errmsg[7]="Error al abrir o crear el fichero";

if (fichero != NULL) fclose(fichero);
fprintf(stderr," [-Error] %s\n\n",errmsg[errnum]);
exit(errnum);
}


//---------------------------------------------------------------------------
// Funcion: muestraVersion
// Muestra la versión del programa
// v1.3: BlackHole (31/1/2010)
//       Se añade la fecha, para builds que no merecen incremento de version
//---------------------------------------------------------------------------

void muestraVersion(void)
{
fprintf(stderr, "\n wlandecrypter v%i.%i (%s)\n\n", VERSION, SUBVERSION, DATEVERSION);
}


//-------------------------------------------------------------
// Funcion: muestraUso
// Muestra las opciones de uso del programa
// v1.3: BlackHole (4/2/2010)
//       Se fuerzan las opciones del programa al principio
//       para simplificar el código del analisis de parámetros
//-------------------------------------------------------------

void muestraUso(void)
{
fprintf(stderr, " [http://www.seguridadwireless.net]\n");
fprintf(stderr, " 2006 Nilp0inteR   2009 Niroz&Melon\n");
fprintf(stderr, " 2007-2009 dudux   2010 BlackHole\n\n");
fprintf(stderr, " uso: wlandecrypter [-x] <BSSID> <ESSID> [fichero]\n");
fprintf(stderr, "      wlandecrypter -a <ESSID> [fichero]\n");
fprintf(stderr, "      wlandecrypter -l\n\n");
fprintf(stderr, "      -l : lista en pantalla todos los routers registrados\n");
fprintf(stderr, "      -a : genera diccionario para todos los routers y una WLAN_XX\n");
fprintf(stderr, "      -x : genera diccionario experimental para routers desconocidos\n\n");
fprintf(stderr, "      Si <ESSID> = WLAN_?? genera todas las redes desde WLAN_00 a WLAN_FF\n\n");
}


//-------------------------------------------------
// Función: listaRouters
// Lista en pantalla todos los routers registrados
// v1.2: Niroz&Melon
// v1.3: BlackHole (Febrero 2010)
//       Usa nueva tabla estática de routers
//       Ordena lista por BSSID para verlos mejor
//-------------------------------------------------

int ordena_bssid(const void *a, const void *b)
{
tRouter *x = (tRouter *)a;
tRouter *y = (tRouter *)b;
return strcmp(x->bssid, y->bssid);
}

void listaRouters(void)
{
unsigned short int i;

qsort(routers, MAXROUTER, sizeof(tRouter), ordena_bssid);

for (i=0; i<MAXROUTER; i++)
{
fprintf(stdout, "BSSID: %s:XX:XX:XX - Router modelo: %s\n", routers[i].bssid, routers[i].notas);
}

fprintf(stderr,"\n");
}


//-------------------------------------------------------------
// Función: compruebaEssid
// Comprueba que el ESSID concuerde con un patrón WLAN_XX
// v1.3: BlackHole (4/2/2010)
//       Devuelve el final del ESSID para usarse en los bucles
//       (18/2/2010) Revisión del código para usar strtoul
//-------------------------------------------------------------

unsigned int compruebaEssid (char *essid)
{
unsigned int i;

if (strlen(essid) != 7) salirError(3);

for (i=0;i<strlen(essid);i++) essid[i]=toupper(essid[i]); //pasamos a mayúsculas

if (strncmp("WLAN_", essid, 5) != 0) salirError(3);

if (!isxdigit(essid[5]) || !isxdigit(essid[6]))
{
if (essid[5]=='?' && essid[6] =='?') indeterminado=1; //generará todas las claves

else salirError(3);
}

return strtoul(&essid[5],NULL,16);
}


//------------------------------------------------------------------
// Función: compruebaBssid
// Comprueba que el BSSID concuerde con un patrón XX:XX:XX:XX:XX:XX
// v1.3: BlackHole (18/2/2010)
//       Devuelve el principio de la MAC para el modo experimental
//------------------------------------------------------------------

unsigned int compruebaBssid (char *bssid)
{
unsigned int i;
char *s;

if (strlen(bssid) != 17) salirError(5);

for (i=0;i<strlen(bssid);i++) bssid[i]=toupper(bssid[i]); //pasamos a mayúsculas

for (i=0;i<5;i++) if (bssid[i*3+2]!=':') salirError(5);

for (i=0;i<6;i++) if (!isxdigit(bssid[i*3]) || !isxdigit(bssid[i*3+1])) salirError(5);

return (strtoul(bssid,&s,16)<<16) | (strtoul(s+1,&s,16)<<8) | strtoul(s+1,NULL,16);
}


//--------------------------------------------------------
// Función: buscaBssid
// Busca el BSSID en la tabla de routers
// Devuelve el identificador del router o -1 si no existe
//--------------------------------------------------------

int buscaBssid(char *bssid)
{
unsigned int i;

for(i=0;i<MAXROUTER;i++)
{
if (strncmp(routers[i].bssid,bssid,8)==0) return i;
}

return -1;
}


//------------------------------------------------------------------------------------------------
// Función: generaClaves
// Imprime las claves en un fichero
// v1.1: *dudux (idea de tupy de elhacker.net)
//       Nueva opción WLAN_?? para cuando se conserva la clave pero el ESSID ha sido cambiado
//       Ejemplo: WLAN_MARTINEZ  00:01:38:XX:XX:XX
//       Genera todas las claves que existirían desde WLAN_00 a WLAN_FF para un determinado BSSID
//       Implica 2^24 claves y 224 MB de datos por cada familia de claves asociada a un router
// v1.3: BlackHole (1/2/2010)
//       Se mezclan funciones essidCambiado e imprimeClaves en una sola
//       Usa nueva tabla estática de routers
//       Optimizado el código en dos simples bucles
//------------------------------------------------------------------------------------------------

unsigned long int generaClaves (FILE *fichero, int routerID, unsigned int wlanID)
{
unsigned int i,j;
unsigned long int numclaves=0;

for (j=0; j<MAXINIT; j++)
{
if (routers[routerID].init[j] != NULL)
{
if (indeterminado)
{
for (i=0; i<16777216; i++)
fprintf(fichero,"%s%06X\n",routers[routerID].init[j],i);
numclaves+=i;
}
else
{
for (i=0; i<65536; i++)
fprintf(fichero,"%s%04X%02X\n",routers[routerID].init[j],i,wlanID);
numclaves+=i;
}
}
}

return numclaves;
}


//-------------------------------------------------------------------------------------------
// Funcion: generaExperimental
// Genera un listado experimental para routers desconocidos.
// v1.2: Niroz&Melon (Nov 2009)
//       Ya que en algunos de los ultimos routers, las claves siguen el patrón X112233xxxxAB
//       (ejemplo: router Xavi con MAC 11:22:33:xx:xx:xx y WLAN_AB) probar a generar una
//       lista que siga dicho patrón para futuros routers de los fabricantes conocidos.
// v1.3: BlackHole (18/2/2010)
//       Cambio radical del código pues la tabla de routers es ahora estática
//       Se genera el listado al vuelo con dos simples bucles
//       Genera un fichero de ~4 MB para un WLAN_XX determinado y 1120 MB para WLAN_??
//-------------------------------------------------------------------------------------------

unsigned long int generaExperimental (FILE *fichero, unsigned int baseMAC, unsigned int wlanID)
{
unsigned int i,j;
unsigned long int numclaves=0;
char fabricantes[]="CZXTH"; // Comtrend,ZyXEL,Xavi,Thomson,Huawei

for (j=0; j<strlen(fabricantes); j++)
{
if (indeterminado)
{
for (i=0; i<16777216; i++)
fprintf(fichero,"%c%06X%06X\n",fabricantes[j],baseMAC,i);
numclaves+=i;
}
else
{
for (i=0; i<65536; i++)
fprintf(fichero,"%c%06X%04X%02X\n",fabricantes[j],baseMAC,i,wlanID);
numclaves+=i;
}
}

return numclaves;
}


//--------------------------------------------------------------------------------------
// Funcion: generaTodasClaves
// Genera las claves de una WLAN_XX para todos los routers registrados, sin tener en
// cuenta la BSSID introducida. Sirve para cuando el usuario coloca un router diferente
// al entregado por el operador, pero mantiene la configuración del original.
//
// v1.2: Creada por Niroz&Melon (27/11/2009)
// v1.3: BlackHole (1/2/2010)
//       Usa nueva tabla estática de routers
//       Optimizado el código en tres simples bucles
//       Genera un fichero de ~20 MB para un WLAN_XX determinado y ~5 GB para WLAN_??
//--------------------------------------------------------------------------------------

unsigned long int generaTodasClaves(FILE *fichero, unsigned int wlanID)
{
unsigned int i,j,k;
unsigned long int numclaves=0;

for (k=0; k<MAXROUTER; k++)
{
for (j=0; j<MAXINIT; j++)
{
if (routers[k].init[j] != NULL)
{
if (indeterminado)
{
for (i=0; i<16777216; i++)
fprintf(fichero,"%s%06X\n",routers[k].init[j],i);
numclaves+=i;
}
else
{
for (i=0; i<65536; i++)
fprintf(fichero,"%s%04X%02X\n",routers[k].init[j],i,wlanID);
numclaves+=i;
}
}
}
}

return numclaves;
}


////////////////////////
// Programa principal //
////////////////////////

int main(int argc, char *argv[])
{
int pos = 1;
int routerID;
unsigned long int numclaves;

muestraVersion();
datosRouters(); // Se puebla la matriz de routers con los datos

if (argc == 1)
{
muestraUso();
return 0;
}

if (strcmp("-l", argv[1]) == 0) // Lista routers
{
if (argc > 2) salirError(0);
listaRouters();
return 0;
}

if (strcmp("-a", argv[1]) == 0) // Todos los routers registrados
{
if (argc > 4) salirError(0);
if (argc < 3) salirError(2);

wlanID = compruebaEssid (argv[2]);
fprintf(stderr," [+] BSSID: Indiferente\n");
fprintf(stderr," [+] Modelo: Todos los conocidos\n");

if (argc == 4)
{
fichero = fopen(argv[3],"a+");
if (fichero == NULL) salirError(7);
fprintf(stderr," [+] Generando fichero de claves: %s\n", argv[3]);
numclaves = generaTodasClaves(fichero, wlanID);
fclose(fichero);
fprintf(stderr," [+] Fichero guardado OK\n");
}
else
{
fprintf(stderr," [+] Seleccionada salida estandar\n");
numclaves = generaTodasClaves(stdout, wlanID);
}

fprintf(stderr," [+] Generadas %lu claves (%lu KB)\n",numclaves,(numclaves/1024)*14);
fprintf(stderr," [+] Proceso finalizado con exito\n\n");
return 0;
}

if (strcmp("-x", argv[1]) == 0)
{
experimental = 1;
pos++;
}
else if (argv[1][0]=='-') salirError(1);

if (argc > pos+3) salirError(0);
if (argc < pos+1) salirError(4);

baseMAC = compruebaBssid (argv[pos]);
routerID = buscaBssid(argv[pos]);

if ((routerID < 0) && (!experimental)) salirError(6);
if (argc < pos+2) salirError(2);

wlanID = compruebaEssid (argv[pos+1]);

if (experimental)
{
fprintf(stderr," [+] BSSID: %s\n", argv[pos]);
fprintf(stderr," [+] Modelo: Desconocido\n");
}
else
{
fprintf(stderr," [+] BSSID: %s:XX:XX:XX\n", routers[routerID].bssid);
fprintf(stderr," [+] Modelo: %s\n", routers[routerID].notas);
}

if (argc == pos+3)
{
fichero = fopen(argv[pos+2],"a+");
if (fichero == NULL) salirError(7);
fprintf(stderr," [+] Generando fichero de claves: %s\n", argv[pos+2]);

if (experimental) numclaves = generaExperimental(fichero, baseMAC, wlanID);
else numclaves = generaClaves(fichero, routerID, wlanID);

fclose(fichero);
fprintf(stderr," [+] Fichero guardado OK\n");
}
else
{
fprintf(stderr," [+] Seleccionada salida estandar\n");

if (experimental) numclaves = generaExperimental(stdout, baseMAC, wlanID);
else numclaves = generaClaves(stdout, routerID, wlanID);
}

fprintf(stderr," [+] Generadas %lu claves (%lu KB)\n",numclaves,(numclaves/1024)*14);
fprintf(stderr," [+] Proceso finalizado con exito\n\n");

return 0;
}

//---------------------------------------------------------------------------------- EOF


Un saludo

ChimoC