diff --git a/README.md b/README.md index b1ddde191..e55331ca2 100644 --- a/README.md +++ b/README.md @@ -2,16 +2,31 @@ This is a DoS (Denial of Service) bash script for wireless networks.
#Requirements -Must be run under this Linux distros:
-Kali. Tested on 2.0 and 2016.1
-Wifislax. Tested on 4.11.1
+Tested on these 100% compatible Linux distros:
+-Kali. Tested on 2.0 and 2016.1
+-Wifislax. Tested on 4.11.1
+ +Anyway, can be used with any Linux distro if you have installed the tools what script needs. The script checks for them at the beginning:
+iwconfig +airmon-ng +airodump-ng +aireplay-ng +mdk3 +rfkill +awk + +Other (non 100% compatible) distros tested successfully after installing the missing tools: +-Debian 8 (Jessie) +-Ubuntu 15.10 #Disclaimer This script must be used only for educational purposes and Pen testing.
+Use it only on your own networks.
+We are not responsible of its use.
This script is under GPLv2 (or later) License.
#Use -Under Kali linux must be used with bash (no sh). Example "bash /path/airgeddon.sh"
+Under Kali Linux and other distros must be used with bash (no sh). Example "bash /path/airgeddon.sh"
Under Wifislax can be used with bash or sh. Example "sh /path/airgeddon.sh"
#Project Collaboration diff --git a/airgeddon.sh b/airgeddon.sh index 7e297f192..a6034213b 100644 --- a/airgeddon.sh +++ b/airgeddon.sh @@ -1,6 +1,6 @@ #!/bin/bash -version="2.21" +version="2.22" #Change these lines to select another default language language="english" @@ -30,17 +30,17 @@ function language_strings() { arr["english",1]="This interface $interface is not a wifi card. It doesn't support managed mode" arr["spanish",1]="Este interfaz $interface no es una tarjeta wifi. No soporta modo managed" - arr["english",2]="Kali Linux distro detected. Script can continue..." - arr["spanish",2]="Distro Kali Linux detectada. El script puede continuar..." + arr["english",2]="Kali Linux distro detected, is 100% compatible. Script can continue..." + arr["spanish",2]="Distro Kali Linux detectada, es 100% compatible. El script puede continuar..." arr["english",3]="Script language changed automatically to english" arr["spanish",3]="Cambio automático del idioma del script a español" - arr["english",4]="Wifislax Linux distro detected. Script can continue..." - arr["spanish",4]="Distro Wifislax Linux detectada. El script puede continuar..." + arr["english",4]="Wifislax Linux distro detected, is 100% compatible. Script can continue..." + arr["spanish",4]="Distro Wifislax Linux detectada, es 100% compatible. El script puede continuar..." - arr["english",5]="A distro 100% compatible can't be detected" - arr["spanish",5]="No se ha podido detectar una distro 100& compatible" + arr["english",5]="A distro 100% compatible can't be detected. Checkings must be done" + arr["spanish",5]="No se ha podido detectar una distro 100% compatible. Se deben realizar comprobaciones" arr["english",6]="Welcome to airgeddon script v$version" arr["spanish",6]="Bienvenido al airgeddon script v$version" @@ -49,7 +49,7 @@ function language_strings() { arr["spanish",7]="Este script se ha hecho sólo con fines educativos. Sed buen@s chic@s" arr["english",8]="Known supported 100% compatible distros for this script: Kali and Wifislax" - arr["spanish",8]="Distros conocidas 100% soportadas por este script: Kali y Wifislax" + arr["spanish",8]="Distros conocidas 100% soportadas para este script: Kali y Wifislax" arr["english",9]="Detecting distro..." arr["spanish",9]="Detectando distro..." @@ -127,7 +127,7 @@ function language_strings() { arr["spanish",33]="Comenzando ataque. Una vez empezado, pulse Ctrl+C para pararlo..." arr["english",34]="Selected interface $interface is in monitor mode. Attack can be performed" - arr["spanish",34]="El interfaz seleccionado $interfaz está en modo monitor. El ataque se puede realizar" + arr["spanish",34]="El interfaz seleccionado $interface está en modo monitor. El ataque se puede realizar" arr["english",35]="Deauthentication / Dissasociation mdk3 attack chosen (monitor mode needed)" arr["spanish",35]="Elegido ataque de Desautenticación / Desasociación mdk3 (modo monitor requerido)" @@ -223,7 +223,7 @@ function language_strings() { arr["spanish",65]="Elegida opción de exploración del vecindario (modo monitor requerido)" arr["english",66]="Selected interface $interface is in monitor mode. Exploration can be performed" - arr["spanish",66]="El interfaz seleccionado $interfaz está en modo monitor. La exploración se puede realizar" + arr["spanish",66]="El interfaz seleccionado $interface está en modo monitor. La exploración se puede realizar" arr["english",67]="When started, press Ctrl+C to stop..." arr["spanish",67]="Una vez empezado, pulse Ctrl+C para pararlo..." @@ -249,8 +249,8 @@ function language_strings() { arr["english",74]="This script is under GPLv2 (or later) License" arr["spanish",74]="Este script está bajo Licencia GPLv2 (o posterior)" - arr["english",75]="Thanks to all the people who supported me and Wifislax Staff" - arr["spanish",75]="Gracias a todos aquellos que me han apoyado y al Wifislax Staff" + arr["english",75]="Thanks to Wifislax Staff and all the people who supported me" + arr["spanish",75]="Gracias al Wifislax Staff y a todos aquellos que me han apoyado" arr["english",76]="Invalid menu option was chosen" arr["spanish",76]="Opción del menú no válida" @@ -267,7 +267,7 @@ function language_strings() { arr["english",80]="2. Spanish" arr["spanish",80]="2. Español" - arr["english",81]="Select a language :" + arr["english",81]="Select language :" arr["spanish",81]="Selecciona un idioma :" arr["english",82]="Invalid language was chosen" @@ -352,7 +352,7 @@ function language_strings() { arr["spanish",108]="Vamos a chequear si tienes instalado lo que el script usa" arr["english",109]="Checking..." - arr["spanish",109]="Chequeando..." + arr["spanish",109]="Comprobando..." arr["english",110]="Your distro is compatible. Script can continue..." arr["spanish",110]="Tu distro es compatible. El script puede continuar..." @@ -360,6 +360,15 @@ function language_strings() { arr["english",111]="You need to install some tools before running this script" arr["spanish",111]="Necesitas instalar algunas herramientas antes de lanzar este script" + arr["english",112]="Ubuntu Linux distro detected. Is not a 100% compatible distro..." + arr["spanish",112]="Distro Ubuntu Linux detectada. No es una distro 100% compatible..." + + arr["english",113]="Debian Linux distro detected. Is not a 100% compatible distro..." + arr["spanish",113]="Distro Debian Linux detectada. No es una distro 100% compatible..." + + arr["english",114]="Use it only on your own networks!!" + arr["spanish",114]="Utilízalo solo en tus propias redes!!" + case "$3" in "yellow") echo_yellow "${arr[$1,$2]}" @@ -1225,7 +1234,7 @@ function credits_option() { echo -e $green_color" .-\"\"\"\"-." echo -e " / \ " echo -e " /_ _\ " - echo -e " // \ / \\ " + echo -e " // \ / \\\\\ " echo -e " |\__\ /__/|" echo -e " \ || /" echo -e " \ /" @@ -1297,44 +1306,48 @@ function detect_distro() { distro="Standard Linux" airmon="airmon-ng" - uname -a | grep kali > /dev/null - if [ "$?" = "0" ]; then + uname -a | grep kali -i > /dev/null + if [[ "$?" = "0" ]] && [[ $compatible -eq 0 ]]; then language_strings $language 2 "yellow" distro="Kali" distro_language="english" - if [ "$distro_language" != "$language" ]; then - echo - compatible=1 - language=$distro_language - language_strings $language 3 "yellow" - fi - echo - return + compatible=1 fi - uname -a | grep wifislax > /dev/null - if [ "$?" = "0" ]; then + uname -a | grep wifislax -i > /dev/null + if [[ "$?" = "0" ]] && [[ $compatible -eq 0 ]]; then language_strings $language 4 "yellow" distro="Wifislax" distro_language="spanish" + compatible=1 if hash airmon-zc 2> /dev/null; then airmon="airmon-zc" fi + fi - if [ "$distro_language" != "$language" ]; then - echo - compatible=1 - language=$distro_language - language_strings $language 3 "yellow" - fi - echo - return + uname -a | grep ubuntu -i > /dev/null + if [[ "$?" = "0" ]] && [[ $compatible -eq 0 ]]; then + language_strings $language 112 "yellow" + distro="Ubuntu" + distro_language="english" + compatible=0 fi - language_strings $language 5 "yellow" + uname -a | grep debian -i > /dev/null + if [[ "$?" = "0" ]] && [[ $compatible -eq 0 ]]; then + language_strings $language 113 "yellow" + distro="Debian" + distro_language="english" + compatible=0 + fi + + check_autochange_language echo - language_strings $language 108 "yellow" + + if [ $compatible -eq 1 ]; then + return + fi check_compatibility if [ $compatible -eq 1 ]; then @@ -1345,8 +1358,19 @@ function detect_distro() { exit_script_option } +function check_autochange_language() { + + if [ "$distro_language" != "$language" ]; then + echo + language=$distro_language + language_strings $language 3 "yellow" + fi +} + function check_compatibility() { + language_strings $language 5 "yellow" + language_strings $language 108 "yellow" do_read echo language_strings $language 109 "blue" @@ -1387,6 +1411,7 @@ function welcome() { language_strings $language 6 "blue" echo language_strings $language 7 "green" + language_strings $language 114 "green" echo language_strings $language 8 "blue" language_strings $language 9 "blue" diff --git a/changelog.txt b/changelog.txt index 529dfe550..9bbc4e75b 100644 --- a/changelog.txt +++ b/changelog.txt @@ -48,4 +48,11 @@ Changes to manage Wifislax airmon command in a better way 2.21 Compatibility Wifislax 64bits bug fixed -Removed version from Readme file \ No newline at end of file +Removed version from Readme file + +2.22 +Minor print fail in ascii art at credits fixed +Disclaimer and requirements updated +Some typo errors fixed +Changes on compatibility check structure +Ubuntu and Debian Linux compatibility check added \ No newline at end of file