
Controlador de kernel para Linux/Android para los chipsets RTL8812AU/21AU y RTL8814AU con soporte de modo monitor e inyección de tramas para pruebas de seguridad inalámbrica.
Solo para uso con Linux y Android
* Use "ip" e "iw" en lugar de "ifconfig" e "iwconfig"
Se describe más abajo, ¡LEA EL README!
Nota: Hay una regresión con el TP-Link AC600 y potencialmente otros dispositivos. Actualmente la solución alternativa es hacer pull desde un commit anterior. Consulte este comentario
[Dispositivo] Alfa Networks AWUS036ACH
[Chipset] 88XXau (rtl8812au)
[Rama] v5.6.4.1
[Distancia] 10m a la vista
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 11.6 MBytes 97.4 Mbits/sec 0 96.2 KBytes
[ 5] 1.00-2.00 sec 11.2 MBytes 93.8 Mbits/sec 0 100 KBytes
[ 5] 2.00-3.00 sec 11.2 MBytes 93.8 Mbits/sec 0 100 KBytes
[ 5] 3.00-4.00 sec 11.2 MBytes 93.8 Mbits/sec 0 100 KBytes
[ 5] 4.00-5.00 sec 11.2 MBytes 93.8 Mbits/sec 0 100 KBytes
[ 5] 5.00-6.00 sec 11.4 MBytes 95.9 Mbits/sec 0 105 KBytes
[ 5] 6.00-7.00 sec 11.2 MBytes 93.8 Mbits/sec 0 105 KBytes
[ 5] 7.00-8.00 sec 11.3 MBytes 94.9 Mbits/sec 0 157 KBytes
[ 5] 8.00-9.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 9.00-10.00 sec 11.2 MBytes 94.3 Mbits/sec 0 157 KBytes
[ 5] 10.00-11.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 11.00-12.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 12.00-13.00 sec 11.2 MBytes 94.4 Mbits/sec 0 157 KBytes
[ 5] 13.00-14.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 14.00-15.00 sec 11.2 MBytes 94.4 Mbits/sec 0 157 KBytes
[ 5] 15.00-16.00 sec 10.9 MBytes 91.7 Mbits/sec 0 157 KBytes
[ 5] 16.00-17.00 sec 11.2 MBytes 94.4 Mbits/sec 0 157 KBytes
[ 5] 17.00-18.00 sec 11.2 MBytes 94.4 Mbits/sec 0 157 KBytes
[ 5] 18.00-19.00 sec 11.2 MBytes 94.4 Mbits/sec 0 157 KBytes
[ 5] 19.00-20.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 20.00-21.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 21.00-22.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
[ 5] 22.00-23.00 sec 11.2 MBytes 93.8 Mbits/sec 0 157 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-23.15 sec 260 MBytes 94.2 Mbits/sec 0 sender
[ 5] 0.00-23.15 sec 0.00 Bytes 0.00 bits/sec receiver
Este controlador se puede instalar usando [DKMS]. Este es un sistema que recompilará e instalará automáticamente un módulo del kernel cuando se instale o actualice un nuevo kernel. Para usar DKMS, instale el paquete dkms, que en sistemas basados en Debian se hace así:
$ sudo apt-get install dkms
$ git clone -b v5.6.4.2 https://github.com/aircrack-ng/rtl8812au.git
cd rtl*
Para instalar el controlador, abra una terminal en el directorio con el código fuente y ejecute el siguiente comando:
$ sudo make dkms_install
Para eliminar el controlador de su sistema, abra una terminal en el directorio con el código fuente y ejecute el siguiente comando:
$ sudo make dkms_remove
Para compilar e instalar el controlador con 'make' use
$ make && make install
Dependencias de paquetes / compilación (Kali)
$ sudo apt-get update
$ sudo apt-get install bc mokutil build-essential libelf-dev linux-headers-`uname -r`
Dependencias de paquetes / compilación
$ sudo apt-get update
$ sudo apt-get install bc mokutil build-essential libelf-dev pve-headers-`uname -r`
$ sudo apt-get install raspberrypi-kernel-headers
Luego cambie la plataforma en el Makefile a arquitectura ARM de 32 bits (RPi 1/2/3/ & 0/Zero):
$ sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
$ sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
O, para ARM64 (RPI 3B+, 4B y Zero2) deberá ejecutar:
$ sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
$ sed -i 's/CONFIG_PLATFORM_ARM64_RPI = n/CONFIG_PLATFORM_ARM64_RPI = y/g' Makefile
Además, si recibe un mensaje de error sobre unrecognized command line option ‘-mgeneral-regs-only’ (por ejemplo, Raspbian Buster), deberá ejecutar los siguientes comandos para la arquitectura ARM y luego volver a intentar la compilación e instalación:
$ export ARCH=arm
$ sed -i 's/^MAKE="/MAKE="ARCH=arm\ /' dkms.conf
O, para ARM64 ejecute lo siguiente antes de recompilar:
$ export ARCH=arm64
$ sed -i 's/^MAKE="/MAKE="ARCH=arm64\ /' dkms.conf
La compilación del controlador puede exceder la RAM en algunas RPi, lo que resulta en un error gcc: fatal error: Killed signal terminated program cc1. El espacio de intercambio se puede aumentar en /etc/dphys-swapfile, por ejemplo a 2000 megabytes, seguido de /etc/init.d/dphys-swapfile restart. Sin embargo, compilar en swap es muy lento.
Para configurar el modo monitor
$ airmon-ng check kill
También puede desmarcar la casilla "Conectarse automáticamente a esta red cuando esté disponible" en nm-connection-editor. Esto solo funciona si tiene una conexión wifi guardada.
$ sudo ip link set wlan0 down
$ sudo iw dev wlan0 set type monitor
$ sudo ip link set wlan0 up
Para configurar la potencia de transmisión
$ sudo iw wlan0 set txpower fixed 3000
options 88XXau rtw_led_ctrl=0
el valor puede ser 0 o 1
$ echo "0" > /proc/net/rtl8812au/$(nombre de su interfaz)/led_ctrl
el valor puede ser 0 o 1
$ cat /proc/net/rtl8812au/$(nombre de su interfaz)/led_ctrl
0: no cambia, 1: cambia de usb2.0 a usb 3.0 2: cambia de usb3.0 a usb 2.0
$ rmmod 88XXau
$ modprobe 88XXau rtw_switch_usb_mode=int (0: no cambiar 1: cambiar de usb2 a usb3 2: cambiar de usb3 a usb2)
Las versiones más recientes de NetworkManager cambian a una dirección MAC aleatoria. Algunos usuarios prefieren usar una dirección fija. Simplemente agregue estas líneas a continuación
[device]
wifi.scan-rand-mac-address=no
al final del archivo /etc/NetworkManager/NetworkManager.conf y reinicie NetworkManager con el comando:
$ sudo service NetworkManager restart
Alfa Networks - https://www.alfa.com.tw/
Realtek. - https://www.realtek.com
aircrack-ng - https://www.aircrack-ng.org
astsam - https://github.com/astsam
evilphish - https://github.com/evilphish
fariouche - https://github.com/fariouche
CGarces - https://github.com/CGarces
ZerBea - https://github.com/ZerBea
lwfinger - https://github.com/lwfinger
Ulli-Kroll. - https://github.com/Ulli-Kroll