Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Version: 1.15 Junio 9, 2007
By: darkAudax
Traducción: Última revisión el 18 de Julio de 2007
Durante mucho tiempo se discutió como usar una tarjeta wireless para generar paquetes
con los que obtener la clave WEP de un punto de acceso. Este tutorial describe 4
procedimientos con ejemplos sobre como hacer esto. Los ejemplos provienen de hechos
reales y no son solo teoría. Cada uno de ellos nos han servido para obtener la clave
WEP.
La idea básica es usar la tarjeta wireless como cliente para generar paquetes de datos
con IVs, que podremos usar para obtener la clave WEP. Normalmente el punto de
acceso genera paquetes de datos con IVs; entonces ¿por qué necesitamos asociar un
cliente wireless al punto de acceso? Aquí están unas pocas razones:
Me gustaría dar las gracias al equipo de desarrollo de la suite aircrack-ng por crear estás
herramientas tan potentes. Y también a toda la gente que viene al foro con ideas y
técnicas descritas en este tutorial. Yo realmente estoy asombrado por las técnicas de este
tutorial. Mi misión ha sido simplemente juntarlas en un lugar en el que se describen de
forma detallada.
*
V Tienes una tarjeta wireless con las mismas características que el cliente habitual.
Por ejemplo G y G, A y A. No sirve una tarjeta B si el cliente tiene una tarjeta
G. Etc«
V Tienes airodump-ng instalado correctamente.
V Tu tarjeta wireless está instalada y puede inyectar paquetes.
V Estás físicamente suficientemente cerca del cliente habitual para enviarle
paquetes a él y recibirlos de él.
V Tienes Wireshark instalado. Además tienes conocimientos básicos sobre como
usarlo.
V Estás usando la versión estable 0.9 de aircrack-ng. Esto es muy importante
puesto que hay un bug en la versión 0.6.2 con aireplay-ng que no soporta las
opciones -k y -l con las direcciones IP.
En los ejemplos, la opción ³doble guión bssid´ se muestra como ´- -bssid´. Acuérdate
de borrar el espacio entre los dos guiones cuando lo uses. Esto tambien se aplica a ´- -
ivs´, ´- -arpreplay´, ´- -deauth´, ´- -channel´, ´- -arp´ y ´- -fakeauth´.
*
Los paquetes ARP no son los únicos que podemos usar. Pero nos centramos en estos
porque son los que garantizan que tengamos éxito y además son los más fáciles de
encontrar en un archivo de capturas. Decimos que los ARPs nos garantizan el éxito
porque el cliente debe responder a una petición arp (arp request) directamente. Recuerda
que no es cualquier ARP. Debe ser un ARP para el cliente específico al que queremos
atacar.
Primero, tenemos que haber capturado paquetes del punto de acceso en cuestión. Para
reducir el tamaño, podíamos haber usado el filtro BSSID y especificar el canal. En
nuestro ejemplo:
Esto selecciona los paquetes que salen o llegan al punto de acceso y que tienen una
longitud entre 68 y 86 inclusive.
Una vez que tengas localizados los paquetes, puedes usar otro filtro para reducir la
búsqueda a un cliente específico: (wlan.bssid == 00:14:6c:7e:40:80 and
(frame.pkt_len>=68 and frame.pkt_len le 86) and (wlan.da == ff:ff:ff:ff:ff:ff or wlan.sa
== 00:0f:b5:46:11:19))
Cambia el valor de ³wlan.sa´ por el de tu cliente que quieres atacar. Cambia la longitud
del paquete para reducir las posibilidades si ves que es necesario.
Aquí ponemos un resumen de que paquetes se trata. Los paquetes están númerados
desde el primero al último por orden. Si le echas un vistazo a el archivo arp de ejemplo
con WireShark verás los siguientes números de paquete:
V 391 - Este es un ³arp request´ de un cliente cableado a otro que está siendo
retransmitido (broadcast) por el AP. Este paquete nunca ha sido contestado por
lo que debe haberse perdido.
V 416 - Este es un nuevo ³arp request´ porque el primero (391) no ha sido
contestado.
V 417 - Esta es la respuesta. El cliente envia un ³arp response´ al cliente cableado
a través del AP. Presta atención al corto periodo de tiempo entre el ³arp request´
y el ³arp response´.
V 501 - Un cliente wireless envia un ³arp request´ a otro a través del AP. Este
paquete es una petición al AP para que reenvie el ³arp request´ a otro cliente.
V 503 - El AP reenvia el ³arp request´ a todos los clientes wireless.
V 504 - El cliente envia la respuesta o ³arp response´ a la otra tarjeta wireless a
través del AP. Este paquete es realmente una petición al AP para que envie la
respuesta ³arp response´ a la estación wireless
V 506 - Este es el ³ARP response´ retransmitido desde el AP al cliente wireless.
Los dos posibles paquetes que podemos usar son 416 o 503. Puedes escoger cualquiera
de los dos. El 503 es mejor puesto que genera dos paquetes por cada uno que nosostros
inyectemos: La respuesta del cliente al AP y la del AP al cliente wireless. Básicamente
doblarás la velocidad (rate) de inyección. Para la gente que pregunta como incrementar
la velocidad de inyección, esta es una técnica.
Una vez que has encontrado uno o mas de estos paquetes haz click derecho y márcalo
(Mark packet). Despues vas al menu ³File´ y haz click en ³save as´ y selecciona
³marked packets only´ para gravar el paquete con un nombre como por ejemplo
³dsarprequests.cap´ u otro nombre que quieras tu. Ahora tienes un archivo con un ³ARP
requests´.
Y
Y
YY
Y
Cerciórate de que no usas la opción ´- -ivs´ si quieres utilizar más adelante el método
PTW con aircrack-ng (aircrack-ng -z). El método PTW requiere los paquetes enteros y
solo funciona con ARPs. Ahora usa el ataque de inyección interactivo en otra consola:
Y
Y
Y
Y
Y
!
Y
Y
!
YY
Y
Y
Y
""""""""""""
#
Y
Tendrás que cambiar ´-b´ por la dirección MAC del punto de acceso deseado. Añade el
tamamño mínimo ´-m´ y máximo ´-n´ del paquete. Lo habitual es poner un mínimo de
68 y un máximo de 86. No está de mas experimentar con otros valores.
Las características del paquete que estamos buscando son:
ù
Y
Y$
% &
'
"(%
'
)(%
*+,-
.%%/(
(
12
""""""""""""
%
12
3."
4
####
####
####
. 56
4
3
#
Y
3
Y3
7 6
4
8
Y
8
333
8
3
Y
9 : 9
48
8
8
#38
Y
Y 3
Y#
8
; < # =
4
8
3
:
Y$
>
Recuerda que necesitarás probar algunos paquetes para conseguir que funcione. El ARP
debe ser de un cliente wireless. Una vez que estes inyectando paquetes y tengas
suficientes, inicia aircrack-ng para obtener la clave WEP.
Primero necesitamos generar el archivo xor. Este archivo nos da la posibilidad de crear
nuevos paquetes encriptados para inyectarlos.
Cambia -h por la dirección MAC del cliente asociado con el AP. Puedes tambien hacer
una falsa autenticación y usar esta MAC. Es solo porque es más simple usar una MAC
ya asociada al AP.
% &
'
"(%
'
)(%
*+,-
.%%/(
(
12
""""""""""""
%
12
"".
4
####
####
####
. 56
4
#
#
8
33
Y
6 ? : /@
4
##
YY
Y
8
Y4
0 A
48
8
8
3
3
"B C
4
3
/ / 6
43
8
3#
D) E
:
Y$
>
%Y!
Y$
YF 8833 Y
G##
3
*
=
-
H
4
0
H
0
H
#Y
G##
*
=
-
H
4
0
H
0
H
#Y
G##
8
*
8=
-
H
4
0
(.
H
0
H
#Y
8
G##
*
3=
-
H
4
0
H
0
H
3
#Y
83
G##
*
=
-
H
4
0
8
H
0
H
3
#Y
3
G##
*
=
-
H
4
0
H
0
H
8
#Y
G##
*=
-
H
4
0
H
0
H
#Y
G##
*8=
-
H
4
0
H
0
H
#Y
G##
*3=
-
H
4
0
H
0
H
#Y
38
G##
*=
-
H
4
0
3
H
0
H
#Y
G##
3
*=
-
H
4
0
.
H
0
H
#Y
G##
*=
-
H
4
0
(
H
0
H
3
#Y
G##
8
*8=
-
H
4
0
H
0
H
#Y
G##
*3=
-
H
4
0
H
0
H
8
#Y
G##
*=
-
H
4
0
H
0
H
#Y
8
G##
*=
-
H
4
0
H
0
H
3
#Y
83
G##
*8=
-
H
4
0
(
H
0
H
#Y
G##
*8=
-
H
4
0
.
H
0
H
#Y
G##
*8=
-
H
4
0
(
H
0
H
38
#Y
3
G##
*8=
-
H
4
0
H
0
H
#Y
38
G##
3
*8=
-
H
4
0
H
0
H
#Y
3
G##
*=
-
H
4
0
H
0
H
#Y
8
G##
8
*=
-
H
4
0
H
0
(
H
#Y
G##
*=
-
H
4
0
H
0
8
H
8
#Y
G##
*=
-
H
4
0
(
H
0
2
H
38
#Y
3
G##
*=
-
H
4
0
H
0
H
#Y
G##
3
*3=
-
H
4
0
8
H
0
H
#Y
G##
3
*3 =
-
H
4
0
H
0
H
#Y
G##
3
*38=
-
H
4
0
H
0
H
8
#Y
G##
3
*33=
-
H
4
0
H
0
H
#Y
8
G##
33
*3=
-
H
4
0
.8
H
0
H
#Y
G##
3
*3=
-
H
4
0
H
0
H
8
#Y
G##
38
*=
-
H
4
0
H
0
88
H
#Y
8
G##
3
*8=
-
H
4
0
.
H
0
8
H
8
#Y
8
G##
3
*3=
-
H
4
0
2
H
0
2
H
#Y
G##
3
*=
-
H
4
0
H
0
H
#Y
G##
*=
-
H
4
0
H
0
.
H
#Y
3
G##
*=
-
H
4
0
.
H
0
"
H
#Y
8
G##
*8=
-
H
4
0
3
H
0
H
#Y
G##
*3=
-
H
4
0
.8
H
0
"
H
38
#Y
3
G##
3
*=
-
H
4
0
3
H
0
H
#Y
8
G##
*=
-
H
4
0
8(
H
0
H
#Y
G##
8
*=
-
H
4
0
2
H
0
H
#Y
38
G##
*=
-
H
4
0
H
0
H
#Y
G##
*=
-
H
4
0
H
0
H
#Y
G##
*=
-
H
4
0
.
H
0
H
#Y
G##
8
*=
-
H
4
0
H
0
H
8
#Y
G##
8
*=
-
H
4
0
H
0
H
#Y
G##
8
*=
-
H
4
0
H
0
H
8
#Y
G##
8
*=
-
H
4
0
H
0
H
#Y
3
G##
83
*=
-
H
4
0
2.
H
0
H
8
#Y
%
Y$
'
3
)
2,
Y
Y
Y$
Y
83
Y
YY
$Y
2ù,
Y
Y
+Y
/I
$
!
# Y
"2/J(K
%Y!
Y
4
YF
888 Y
%Y!
$
Y
YF
888 4
*
L-
!!!
YF
888 Y
Y
#
#
YF
888 Y'
$
/F
* -
88 3
(2.YY
.%%/(
%2##
JJ'
Y
%C2,
*4YY-'
Y
%C2,
*4YY-'
48
*4-'
2ù,
*4-
Y
Y
Ahora tenemos la IP del cliente wireless y podemos usar el archivo xor para crear un
paquete ARP. Asegurate completamente de que incluyes las opciones -j y -o.
Y$
#
Y
Y
".3
"".
@
33
$
33 3
Este comando es correcto para la versión 0.6.2. Había un bug en la versión 0.6.2 que
consistia en que las opciones -k y -l estaban intercambiadas.
Despues de crear el paquete, usa tcpdump para revisarlo. Mira a continuación, parece
que está correcto!
!!!
Y#
Y
Y
#
#
Y#
Y'
$
/F
* -
88 38
+,
3
(2.YY
.%%/(
%2##
(YY
/I
,Y
M
/(
Desencripta el paquete con: airdecap-ng -e teddy -w <put your WEP key here>
arpforge.cap Echale un vistazo al paquete desencriptado: tcpdump -n -r arpforge-
dec.cap Debería aparecer algo como esto:
Y
#
#
Y#
Y'
$
C1.
*
-
38 83
Y
Y
33 3
33
Parece que está bien, ya que sabemos que nuestro cliente tiene la IP 192.168.55.109 y
queremos capturar un ³arp request´ con destino ese cliente.
Y
Y
Y#
Y
Y
En este punto, debeías ser capaz de generar paquetes de datos para usarlos con aircrack-
ng y obtener la clave WEP.
Sobra decir, que hay un truco que funciona en la mayoría de los APs. Usa una IP
255.255.255.255. Por defecto, aireplay-ng usa 255.255.255.255 para ambas IPs de
origen y de destino.
Y
Y
3
".3
Y
+Y
#
Y
YY
Y$
% &
'
"(%
'
) (%
*+,-
.%%/(
(
12
".3
%
12
(
4
#
3
. " 56
4
8
3Y
3
? N O
4
8
Y
88
8
Y
- 0 P? Q
48
38
38
#8
Y
3
##
#
4
#Y
8
88
#3
#
@ A
43
3
YY
8
#3#
#
#
8
9 7 G6 .
4
3
Y8
Y
Y
/ 1R *
4
3Y
#
8
Y33
Y
! !2 :
4
Y
#
Y
83
Y
8
3
S 3 7
:
Y$
>
%Y!
Y$
YF 83 Y
(YY
Y$
#K
%
#Y
Y$
A
ùJ2T(
Y$
KK
)Y
2ù,
Y$
K
)
8
#
Y
$
Y
A
ùJ2T(
Y$
KK
)Y
2ù,
Y$
K
)
3
#
Y
$
Y
A
ùJ2T(
Y$
KK
)Y
2ù,
Y$
K
%Y!
$
Y
#Y
83 4
C
Y
Y
Y$
Y$
#
#
Y
3
$ Y