Lo primero de todo un poco de teoría para entender mejor las cosas:¿Que es el ataque de fragmentación?
Cita:
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
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:
Cita:
xor( keystream, iv , prga , 36) en el caso de 8 bytes
xor( keystream, iv , prga , 432) en el caso de 408 bytes
|
|
Explicado por *dudux
Ahora pasemos a la acción:
En este tutorial utilizaré Backtrack y la nueva eRize ERZW54-USB04RS1W con chipset REALTEK 8187L,ya que se discute mucho el tema de si el 8187L soporta el ataque de fragmentación o no,vamos a verlo:
Lo primero que vamos a hacer es subir a 30 la potencia de la tarjeta en cuestión,para ello abrimos una shell y tecleamos:
Código:
#iwpriv wlan0 highpower 1
#iwconfig wlan0 txpower 30
#iwconfig
Como podemos comprobar el Tx-Power de la tarjeta esta a 30:
Ahora lanzamos Airodump-ng para ver las redes al alcance,para ello en una shell tecleamos:
Código:
airodump-ng wlan0
Donde
wlan0 es nustra interfaz en este caso,lo demás lo dejamos como está.
Despues de elegir la red con cifrado wep a editar,pulsamos Ctrl+C para parar esa ventana y la dejamos ahí ya que luego copiaremos de ella los datos que vamos a necesitar.
Bien ahora abrimos una shell y tecleamos:
Código:
iwconfig rate 1M channel 4 mode monitor
Con esta linea de comandos hemos puesto la tarjeta en modo monitor,le hemos bajado el rate a 1M que por defecto suelen venir a 11,y la ponemos a trabajar solo en el canal 4 así no hay interferencias,lo demás lo dejais como está.
Bien ahora vamos a empezar a capturar tráfico de esa red,para ello tecleamos en la shell:
Código:
airodump-ng --ivs -w prueba -c 4 wlan0
Donde:
-w es el nombre de las capturas que guardaremos.
-c el canal del AP
wlan0 nuestra interfaz en este caso
Lo demas lo dejamos como está.
Bien en este caso tenemos un cliente conectado,estamos de suerte porque vamos a utilizar la mac de ese cliente para el ataque.Sino tuvieramos clientes conectados tendriamos que que llevar a cabo primero el Ataque 1:Asociación falsa,si teneis dudas sobre este ataque leed esto primero:
Guía completa Aircrack-ng
y una vez asociados o no continuamos,Ahora vamos a lanzar el ataque de fragmentación para ello en una shell tecleamos:
Código:
aireplay-ng -5 -b (BSSID) -h (mac del cliente) wlan0
Donde:
-5 flag de aireplay para lanzar el ataque de fragmentación
-b BSSID es la mac del AP en cuestión
-h la mac del cliente asociado al Ap
Wlan0 la interfaz en este caso