From 57b5d94f931fde6b9c498da7dac45dbd0ce0fa72 Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Tue, 18 Jul 2017 18:31:54 +0000 Subject: [PATCH 01/18] Small fixes Added "revolver" directory remover in case user needs to run it more then once. --- install/install.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/install/install.sh b/install/install.sh index 41f162c..0d59014 100755 --- a/install/install.sh +++ b/install/install.sh @@ -61,7 +61,7 @@ function mostrarheader(){ conditional_clear echo -e "$red[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]" echo -e "$red[ ]" - echo -e "$red[ $red FLUXION $version" "${yellow} ${red} < F""${yellow}luxion" "${red}I""${yellow}s" "${red}T""${yellow}he ""${red}F""${yellow}uture > " ${blue}" ]" + echo -e "$red[ $red FLUXION $version" "${yellow} ${red} < F""${yellow}luxion" "${red}I""${yellow}s" "${red}T""${yellow}he ""${red}F""${yellow}uture > "${blue}"]" echo -e "$blue[ ]" echo -e "$blue[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]""$transparent" echo @@ -361,6 +361,7 @@ sleep 0.025 xterm $HOLD -title "Remove repositories" -e python remove.py +rm -rf revolver git clone https://github.com/molovo/revolver revolver chmod u+x revolver/revolver mv revolver/revolver /usr/local/bin From 8f17a4a4173f097acee7068ee5021909a824d28f Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Tue, 18 Jul 2017 18:33:31 +0000 Subject: [PATCH 02/18] Small fixes --- install/arch-install.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/install/arch-install.sh b/install/arch-install.sh index e969ee3..f9ce5b2 100755 --- a/install/arch-install.sh +++ b/install/arch-install.sh @@ -58,7 +58,7 @@ function mostrarheader(){ conditional_clear echo -e "$red[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]" echo -e "$red[ ]" - echo -e "$red[ $red FLUXION $version" "${yellow} ${red} < F""${yellow}luxion" "${red}I""${yellow}s" "${red}T""${yellow}he ""${red}F""${yellow}uture > " ${blue}" ]" + echo -e "$red[ $red FLUXION $version" "${yellow} ${red} < F""${yellow}luxion" "${red}I""${yellow}s" "${red}T""${yellow}he ""${red}F""${yellow}uture > "${blue}"]" echo -e "$blue[ ]" echo -e "$blue[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]""$transparent" echo @@ -267,7 +267,7 @@ else fi sleep 0.025 ############################## -echo -ne "Php-cgi........" +echo -ne "Php-cgi........." if ! hash php-cgi 2>/dev/null; then echo -e "\e[1;31mInstalling ..."$transparent"" xterm $HOLD -title "Installing php-cgi" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e pacman -S php-cgi @@ -328,7 +328,7 @@ echo -ne "Unzip..........." sleep 0.025 ############################## -echo -ne "strings.........." +echo -ne "strings........." if ! hash strings 2>/dev/null; then echo -e "\e[1;31mInstalling ..."$transparent"" xterm $HOLD -title "Installing binutils" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e pacman -S binutils @@ -337,7 +337,7 @@ else fi sleep 0.025 ############################# -echo -ne "fuser............" +echo -ne "fuser..........." if ! hash fuser 2>/dev/null; then echo -e "\e[1;31mInstalling ..."$transparent"" xterm $HOLD -title "Installing psmisc" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e pacman -S psmisc From d69f89c6ce54ae64a59f61094492e2998578840a Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Tue, 18 Jul 2017 20:04:57 +0000 Subject: [PATCH 03/18] Path autocomplete Enabled path autocomplete when asked for handshake location --- fluxion.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index b719ed8..b369b3b 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -948,10 +948,9 @@ function handshakelocation { echo -e "handshake location (Example: $red$WORK_DIR.cap$transparent)" echo -e "Press ${yellow}ENTER$transparent to skip" echo - echo -ne "Path: " if [ "$FLUX_AUTO" = "0" ];then - read handshakeloc + read -e -p "Path: " handshakeloc fi fi From 88e6d357432079aebf897325a1db55280988d57c Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Tue, 18 Jul 2017 21:17:02 +0000 Subject: [PATCH 04/18] "CHANNEL" in line 1849 I'm not sure what this part of script is doing, but it looks like this if statement never gets "true". --- fluxion.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fluxion.sh b/fluxion.sh index b369b3b..285ba11 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -1846,7 +1846,7 @@ fi function preattack { # Check if channel is negative - if [ "CHANNEL" = "" ];then + if [ "$CHANNEL" = "" ];then CHANNEL=1 fi # Config HostAPD From 9784622443f6c189ed68bd4549365ecc9d1e4399 Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Wed, 19 Jul 2017 06:03:03 +0100 Subject: [PATCH 05/18] Site selection page split in two columns --- fluxion.sh | 116 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 69 insertions(+), 47 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index 285ba11..6cb18da 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -1350,53 +1350,75 @@ function ConnectionRESET { echo echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_ConnectionRESET" echo - echo -e " "$red"["$yellow"$n"$red"]"$transparent" English [ENG] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" German [GER] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Russian [RUS] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Italian [IT] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Spanish [ESP] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Portuguese [POR] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Chinese [CN] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" French [FR] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Turkish [TR] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Romanian [RO] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Hungarian [HU] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Arabic [ARA] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Greek [GR] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Czech [CZ] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Norwegian [NO] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Bulgarian [BG] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Serbian [SRB] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Polish [PL] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Indonesian [ID] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Dutch [NL] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Danish [DAN] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Hebrew [HE] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Thai [TH] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Portuguese [BR] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Slovenian [SVN] (NEUTRA)";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Belkin [ENG]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Netgear [ENG]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Huawei [ENG]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Verizon [ENG]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Netgear [ESP]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Arris [ESP]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Vodafone [ESP]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" TP-Link [ENG]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Ziggo [NL]";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" KPN [NL]";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Ziggo2016 [NL]";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" FRITZBOX [DE] ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" FRITZBOX [ENG] ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" FRITZBOX [IT]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" GENEXIS_DE [DE] ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Login-Netgear[Login-Netgear] ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Login-Xfinity[Login-Xfinity] ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Telekom ";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" Google";n=` expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent" MOVISTAR [ESP]";n=`expr $n + 1` - echo -e " "$red"["$yellow"$n"$red"]"$transparent"\e[1;31m $general_back"$transparent"" - echo + totallines=46 # number of selection lines to print + itemprinted=0 + + for line in $( seq 1 $((totallines/2+1)) ); do + for column in {0..1}; do + n=$line + if (( $column == 1 )); then + n=$((line+(totallines+1)/2)) + fi + + if (( $itemprinted < $totallines )); then + echo -e -n " "$red"["$yellow"$n"$red"]" + case $n in + 1 ) echo -e -n $transparent" English [ENG] (NEUTRA) ";; + 2 ) echo -e -n $transparent" German [GER] (NEUTRA) ";; + 3 ) echo -e -n $transparent" Russian [RUS] (NEUTRA) ";; + 4 ) echo -e -n $transparent" Italian [IT] (NEUTRA) ";; + 5 ) echo -e -n $transparent" Spanish [ESP] (NEUTRA) ";; + 6 ) echo -e -n $transparent" Portuguese [POR] (NEUTRA) ";; + 7 ) echo -e -n $transparent" Chinese [CN] (NEUTRA) ";; + 8 ) echo -e -n $transparent" French [FR] (NEUTRA) ";; + 9 ) echo -e -n $transparent" Turkish [TR] (NEUTRA) ";; + 10 ) echo -e -n $transparent" Romanian [RO] (NEUTRA) ";; + 11 ) echo -e -n $transparent" Hungarian [HU] (NEUTRA) ";; + 12 ) echo -e -n $transparent" Arabic [ARA] (NEUTRA) ";; + 13 ) echo -e -n $transparent" Greek [GR] (NEUTRA) ";; + 14 ) echo -e -n $transparent" Czech [CZ] (NEUTRA) ";; + 15 ) echo -e -n $transparent" Norwegian [NO] (NEUTRA) ";; + 16 ) echo -e -n $transparent" Bulgarian [BG] (NEUTRA) ";; + 17 ) echo -e -n $transparent" Serbian [SRB] (NEUTRA) ";; + 18 ) echo -e -n $transparent" Polish [PL] (NEUTRA) ";; + 19 ) echo -e -n $transparent" Indonesian [ID] (NEUTRA) ";; + 20 ) echo -e -n $transparent" Dutch [NL] (NEUTRA) ";; + 21 ) echo -e -n $transparent" Danish [DAN] (NEUTRA) ";; + 22 ) echo -e -n $transparent" Hebrew [HE] (NEUTRA) ";; + 23 ) echo -e -n $transparent" Thai [TH] (NEUTRA) ";; + 24 ) echo -e -n $transparent" Portuguese [BR] (NEUTRA) ";; + 25 ) echo -e -n $transparent" Slovenian [SVN] (NEUTRA) ";; + 26 ) echo -e -n $transparent" Belkin [ENG] ";; + 27 ) echo -e -n $transparent" Netgear [ENG] ";; + 28 ) echo -e -n $transparent" Huawei [ENG] ";; + 29 ) echo -e -n $transparent" Verizon [ENG] ";; + 30 ) echo -e -n $transparent" Netgear [ESP] ";; + 31 ) echo -e -n $transparent" Arris [ESP] ";; + 32 ) echo -e -n $transparent" Vodafone [ESP] ";; + 33 ) echo -e -n $transparent" TP-Link [ENG] ";; + 34 ) echo -e -n $transparent" Ziggo [NL] ";; + 35 ) echo -e -n $transparent" KPN [NL] ";; + 36 ) echo -e -n $transparent" Ziggo2016 [NL] ";; + 37 ) echo -e -n $transparent" FRITZBOX [DE] ";; + 38 ) echo -e -n $transparent" FRITZBOX [ENG] ";; + 39 ) echo -e -n $transparent" FRITZBOX [IT] ";; + 40 ) echo -e -n $transparent" GENEXIS_DE [DE] ";; + 41 ) echo -e -n $transparent" Login-Netgear[Login-Netgear] ";; + 42 ) echo -e -n $transparent" Login-Xfinity[Login-Xfinity] ";; + 43 ) echo -e -n $transparent" Telekom ";; + 44 ) echo -e -n $transparent" Google ";; + 45 ) echo -e -n $transparent" MOVISTAR [ESP] ";; + 46 ) echo -e -n $transparent"\e[1;31m $general_back"$transparent"";; + esac + + itemprinted=$((itemprinted+1)) + fi + done + echo + done + + + echo echo -n "#? " read webconf From 53247b994e14eb23514c7d93ddede790fb9e5e8d Mon Sep 17 00:00:00 2001 From: Blaxou Date: Wed, 19 Jul 2017 22:46:53 +0200 Subject: [PATCH 06/18] Changed typos/misstranslating errors --- language/fr | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/language/fr b/language/fr index 4d449d6..d050525 100644 --- a/language/fr +++ b/language/fr @@ -1,5 +1,5 @@ header_setinterface="Sélectionnez une interface" - setinterface_error="Pas de carte wifi detecté, fin..." + setinterface_error="Pas de carte wifi detecté, Fluxion va quitter..." # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_choosescan="Sélectionnez un canal" @@ -11,7 +11,7 @@ header_setinterface="Sélectionnez une interface" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_scan="WIFI Monitor" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - header_scanchan="Scan du reseau" + header_scanchan="Scan du réseau" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Sélectionnez une option d'attaque" askAP_option_1="FakeAP - Hostapd ("$red"Recommandé)" @@ -33,16 +33,16 @@ header_setinterface="Sélectionnez une interface" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> general_back="Retour" general_error_1="Pas trouvé" - general_case_error="Option inconnue. Sélectionnez à nouveau" + general_case_error="Option inconnue. Choisissez à nouveau" general_exitmode="Nettoyage et fermeture" general_exitmode_1="Désactivation de l'interface de monitoring" general_exitmode_2="Désactivation de l'interface" - general_exitmode_3="Désactivation de "$grey" transmission de paquets" - general_exitmode_4="Nettoyage "$grey"iptables" - general_exitmode_5="Restauration "$grey"tput" - general_exitmode_6="Redémarrage "$grey"Network-Manager" + general_exitmode_3="Désactivation de de la "$grey" transmission de paquets" + general_exitmode_4="Nettoyage de "$grey"iptables" + general_exitmode_5="Restauration de "$grey"tput" + general_exitmode_6="Redémarrage de "$grey"Network-Manager" general_exitmode_7="Nettoyage effectué avec succès!" general_exitmode_8="Merci d'avoir utilisé fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Clients actifs" - selection_2="Sélectionnez une cible. Pour relancer un scan, touche $red r$transparent" + selection_2="Sélectionnez une cible. Pour relancer un scan, tape $red r$transparent" From 4b0250055101ef50d0b0ecdcbb25b220b8211464 Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Fri, 21 Jul 2017 14:37:02 +0100 Subject: [PATCH 07/18] Creating "handcheck" script First part of "handcheck" script generating changed from append to overwrite --- fluxion.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fluxion.sh b/fluxion.sh index 6cb18da..9e7aee5 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -2197,7 +2197,7 @@ function handshakecheck { ih=\"0\" else ih= - fi">>$DUMP_PATH/handcheck + fi">$DUMP_PATH/handcheck if [ $authmode = "handshake" ]; then echo "if [ -f $DUMP_PATH/pwattempt.txt ]; then From 34cfa8059ce2d03ea4fb3764e79c34e907f6ba3a Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Fri, 21 Jul 2017 14:40:17 +0100 Subject: [PATCH 08/18] Path for brute force Path for dictionary made autocomplete --- fluxion.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index 9e7aee5..76e2a0b 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -2148,8 +2148,7 @@ $general_case_error"; conditional_clear ;; function Bruteforce { - echo "where is your Dictionary: _" - read Dictionary0 + read -e -p "where is your Dictionary: " Dictionary0 xterm -title "aircrack-ng $Host_MAC --by Princeofguilty" -e "aircrack-ng $DUMP_PATH/$Host_MAC-01.cap -w $Dictionary0" } From 997138abe84685557bdfda342a02df58852ec1b1 Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Fri, 21 Jul 2017 14:50:40 +0100 Subject: [PATCH 09/18] Same "if" statements merged --- fluxion.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index 76e2a0b..8769747 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -2091,10 +2091,7 @@ function attack { sleep 0.4 ifconfig $WIFI up sleep 0.4 - fi - - if [ $fakeapmode = "hostapd" ]; then killall hostapd &> $flux_output_device xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FFFFFF" -title "AP" -e hostapd $DUMP_PATH/hostapd.conf & elif [ $fakeapmode = "airbase-ng" ]; then From 1da06362c431e91e9f874984634ce05db3881933 Mon Sep 17 00:00:00 2001 From: deltaxflux Date: Fri, 21 Jul 2017 23:22:26 +0200 Subject: [PATCH 10/18] Add router script --- README.md | 7 +++++ scripts/router.sh | 70 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100755 scripts/router.sh diff --git a/README.md b/README.md index 4f14777..b65e20f 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,13 @@ # Fluxion is the future of MITM WPA attacks Fluxion is a remake of linset by vk496 with (hopefully) less bugs and more functionality. It's compatible with the latest release of Kali (rolling). The attack is mostly manual, but experimental versions will automatically handle most functionality from the stable releases. +## Router login page +Share your own router page with a simple script +``` +cd scripts +sudo sh router.sh +``` + ## :trident: FAQ #### "Clients are not automatically connected to the fake access point" diff --git a/scripts/router.sh b/scripts/router.sh new file mode 100755 index 0000000..9147bdd --- /dev/null +++ b/scripts/router.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +##################################### < CONFIGURATION > ##################################### + +gateway=`ip route | grep default | awk '{print $3}'` + +#Colors +white="\033[1;37m" +red="\033[1;31m" +blue="\033[1;34m" +transparent="\e[0m" + +############################################################################################# + +clear +echo -e "$red[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]" +echo -e "$red Prepare router page." +echo -e "$blue[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]""$transparent" +echo "[i] Prepare dep." + +# Check which package manager is installed +echo "Package Manager" +if hash pacman 2>/dev/null; then + PACK="pacman -S" +else + if hash apt-get 2>/dev/null; then + PACK="apt-get install" + else + if hash yum 2>/dev/null; then + PACK="yum install" + fi + fi +fi +sleep 0.025 +echo "=================================================================================" + +echo -ne "Httrack........." +if ! hash httrack 2>/dev/null; then + echo -e "\e[1;31mNot installed"$transparent"" + $PACK httrack +else + echo -e "\e[1;32mOK!"$transparent"" +fi +sleep 0.025 +echo "=================================================================================" + +echo -ne "cutycapt........" +if ! hash httrack 2>/dev/null; then + echo -e "\e[1;31mNot installed"$transparent"" + $PACK cutycapt +else + echo -e "\e[1;32mOK!"$transparent"" +fi +sleep 0.025 +echo "=================================================================================" + +if [ ! -d sites ];then + mkdir sites +fi + +############################################################################################# +echo "[i] Download preview picture" +cutycapt --url=http://$gateway --out=sites/$(date | awk '{print $4}').png +echo "=================================================================================" + +cd sites +echo "[i] Download router site" +httrack $gateway +echo "=================================================================================" +echo "[I] DONE" From c8c03be7ac9dea3576c8811a8c8a33497057d8d8 Mon Sep 17 00:00:00 2001 From: deltax Date: Fri, 21 Jul 2017 23:55:26 +0200 Subject: [PATCH 11/18] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index b65e20f..7c801d3 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,9 @@ All contributions are welcome! Code, documentation, graphics or even design sugg A Linux-based operating system. We recommend Kali Linux 2 or Kali 2016.1 rolling. Kali 2 & 2016 support the latest aircrack-ng versions. An external wifi card is recommended. +## Related work + +For development I use vim and tmux. Here are my [dotfiles](https://github.com/deltaxflux/takumi/) ## :octocat: Credits 1. l3op - contributor 2. dlinkproto - contributor From 5ac678e469aba3a6e1b2a155d0c7d437c4aaedcf Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:30:36 +0100 Subject: [PATCH 12/18] Deleted DUMP_PATH Was not in use in script --- install/install.sh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/install/install.sh b/install/install.sh index 0d59014..23cb0fa 100755 --- a/install/install.sh +++ b/install/install.sh @@ -18,11 +18,6 @@ blue='\e[1;34m' yellow='\e[1;33m' transparent="\e[0m" -#DUMP_PATH -rm -rf /tmp/Installer/ -mkdir /tmp/Installer/ -DUMP_PATH="/tmp/Installer/" - function conditional_clear() { if [[ "$INSTALLER_output_device" != "/dev/stdout" ]]; then clear; fi From 6cae165c7ce2ad53958cebcd02c6ec01d200325d Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:35:18 +0100 Subject: [PATCH 13/18] Added Installer function --- install/install.sh | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/install/install.sh b/install/install.sh index 23cb0fa..5e17741 100755 --- a/install/install.sh +++ b/install/install.sh @@ -43,7 +43,6 @@ fi clear #Check for X display - if [ -z "${DISPLAY:-}" ]; then echo -e "\e[1;31mThe script should be executed inside a X (graphical) session."$transparent"" exit 1 @@ -67,7 +66,6 @@ function mostrarheader(){ function setresolution { function resA { - TOPLEFT="-geometry 90x13+0+0" TOPRIGHT="-geometry 83x26-0+0" BOTTOMLEFT="-geometry 90x24+0-0" @@ -77,7 +75,6 @@ function setresolution { } function resB { - TOPLEFT="-geometry 92x14+0+0" TOPRIGHT="-geometry 68x25-0+0" BOTTOMLEFT="-geometry 92x36+0-0" @@ -86,7 +83,6 @@ function setresolution { TOPRIGHTBIG="-geometry 74x30-0+0" } function resC { - TOPLEFT="-geometry 100x20+0+0" TOPRIGHT="-geometry 109x20-0+0" BOTTOMLEFT="-geometry 100x30+0-0" @@ -117,7 +113,7 @@ function setresolution { BOTTOMRIGHT="-geometry 90x20-0-0" TOPLEFTBIG="-geometry 100x70+0+0" TOPRIGHTBIG="-geometry 90x27-0+0" -} + } detectedresolution=$(xdpyinfo | grep -A 3 "screen #0" | grep dimensions | tr -s " " | cut -d" " -f 3) ## A) 1024x600 @@ -137,6 +133,22 @@ case $detectedresolution in esac } + +# Installer function +function installer { + echo -ne "$1.............................." | cut -z -b1-30 + echo "[*] Installing $1" >> /tmp/fluxionlog.txt + xterm $HOLD -title "Installing $1" -e "apt-get --yes install $1 | tee -a /tmp/fluxionlog.txt; echo \${PIPESTATUS[0]} > isok" + if [ "$(cat isok)" == "0" ]; then + echo -e "\e[1;32mOK!"$transparent + else + echo -e "\e[1;31mError (Check /tmp/fluxionlog.txt)."$transparent + fi + echo >> /tmp/fluxionlog.txt + rm -f isok +} + + #Install Main conditional_clear mostrarheader From d41e5ffe91c82b3b5c4df71ccdd491cbcaa1e7cf Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:38:54 +0100 Subject: [PATCH 14/18] Added checking for internet Checks for internet in loop until we get internet --- install/install.sh | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/install/install.sh b/install/install.sh index 5e17741..11b56b9 100755 --- a/install/install.sh +++ b/install/install.sh @@ -48,8 +48,6 @@ if [ -z "${DISPLAY:-}" ]; then exit 1 fi - - function mostrarheader(){ conditional_clear @@ -153,6 +151,21 @@ function installer { conditional_clear mostrarheader + +#Check internet connection +wget -q --spider http://google.com +internet=$? +if [ "$internet" != "0" ]; then + echo "Waiting for internet connection..." + while [ "$internet" != "0" ] + do + sleep 1 + wget -q --spider http://google.com + internet=$? + done +fi + + echo "Updating system..." #cleaning up From 8e52045892909989054fd3080f356634057c782a Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:43:56 +0100 Subject: [PATCH 15/18] Python scripts for repository Deleted python scripts and made repository adding in bash, because it wasn't working (tested in Ubuntu live 17.04) --- install/install.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/install/install.sh b/install/install.sh index 11b56b9..3c58de1 100755 --- a/install/install.sh +++ b/install/install.sh @@ -168,6 +168,15 @@ fi echo "Updating system..." +# adding repository and keys +if [ "$(cat /etc/apt/sources.list | grep 'deb http://http.kali.org/kali kali-rolling main contrib non-free')" = "" ]; then + gpg --keyserver hkp://keys.gnupg.net --recv-key 7D8D0BF6 + apt-key adv --keyserver pgp.mit.edu --recv-keys ED444FF07D8D0BF6 + echo "deb http://http.kali.org/kali kali-rolling main contrib non-free # by fluxion" >> /etc/apt/sources.list +else + echo "[*] Kali repository already exist, skipping." +fi + #cleaning up sudo apt-get install -f -y sudo apt-get autoremove -y @@ -178,8 +187,6 @@ sudo apt-get install xterm --yes clear mostrarheader xterm $HOLD -title "Updating System" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get install software-properties-common --yes -xterm $HOLD -title "Updating System" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e python remove.py -xterm $HOLD -title "Updating System" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e python add.py ############################## @@ -379,7 +386,8 @@ fi sleep 0.025 ############################# -xterm $HOLD -title "Remove repositories" -e python remove.py +# removing repository +echo "$(cat /etc/apt/sources.list | grep -v 'deb http://http.kali.org/kali kali-rolling main contrib non-free # by fluxion')" > /etc/apt/sources.list rm -rf revolver git clone https://github.com/molovo/revolver revolver From b0c6f779f1e077aabf35b86f74775e09d006d7c0 Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:47:43 +0100 Subject: [PATCH 16/18] Logging Made logging for troubleshooting. (All logging goes to /tmp) --- install/install.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/install/install.sh b/install/install.sh index 3c58de1..cfd50bf 100755 --- a/install/install.sh +++ b/install/install.sh @@ -178,12 +178,14 @@ else fi #cleaning up -sudo apt-get install -f -y -sudo apt-get autoremove -y -sudo apt-get autoclean -y -sudo apt-get clean -y -sudo apt-get update -sudo apt-get install xterm --yes +rm -f /tmp/fluxionlog.txt +sudo apt-get install -f -y | tee -a /tmp/fluxionlog.txt +sudo apt-get autoremove -y | tee -a /tmp/fluxionlog.txt +sudo apt-get autoclean -y | tee -a /tmp/fluxionlog.txt +sudo apt-get clean -y | tee -a /tmp/fluxionlog.txt +sudo apt-get update | tee -a /tmp/fluxionlog.txt +sudo apt-get install xterm --yes | tee -a /tmp/fluxionlog.txt +sleep 3 clear mostrarheader xterm $HOLD -title "Updating System" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get install software-properties-common --yes From a8327dde220f4758c17cc3e501f60aad831aeb8c Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:50:56 +0100 Subject: [PATCH 17/18] Changed original installation Changed original install scripts for each program using function --- install/install.sh | 218 +++++---------------------------------------- 1 file changed, 21 insertions(+), 197 deletions(-) diff --git a/install/install.sh b/install/install.sh index cfd50bf..6041e66 100755 --- a/install/install.sh +++ b/install/install.sh @@ -188,205 +188,29 @@ sudo apt-get install xterm --yes | tee -a /tmp/fluxionlog.txt sleep 3 clear mostrarheader -xterm $HOLD -title "Updating System" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get install software-properties-common --yes - ############################## -echo -ne "Aircrack-ng....." - if ! hash aircrack-ng 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent - xterm $HOLD -title "Installing Aircrack-ng" -e apt-get --yes install aircrack-ng - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 - -############################## - -echo -ne "Aireplay-ng....." - if ! hash awk 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Awk" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install gawk - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Airodump-ng....." -if ! hash airodump-ng 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Airodump-ng" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install aircrack-ng -else - echo -e "\e[1;32mOK!"$transparent"" -fi -############################## -echo -ne "Curl............" - if ! hash curl 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Curl" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install curl - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Dhcpd..........." - if ! hash dhcpd 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing isc-dhcp-server" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install isc-dhcp-server - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Hostapd........." - if ! hash hostapd 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Hostapd" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install hostapd - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Iwconfig........" -if ! hash iwconfig 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Iwconfig" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install iwconfig -else - echo -e "\e[1;32mOK!"$transparent"" -fi -sleep 0.025 -############################## - echo -ne "Lighttpd........" - if ! hash lighttpd 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Lighttpd" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install lighttpd - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Macchanger......" - if ! hash macchanger 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Macchanger" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install macchanger - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Mdk3............" - if ! hash mdk3 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Macchanger" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install mdk3 - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 - -############################## - -echo -ne "Nmap............" - if ! hash nmap 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Nmap" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get install --yes nmap - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## -echo -ne "Openssl........." -if ! hash openssl 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Openssl" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install openssl -else - echo -e "\e[1;32mOK!"$transparent"" -fi -sleep 0.025 -############################## -echo -ne "Php-cgi........." - if ! hash php-cgi 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing php-cgi" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install php-cgi - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - - echo -ne "Pyrit..........." - if ! hash pyrit 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Pyrit" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install pyrit - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Python.........." - if ! hash python 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Python" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install python - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "rfkill.........." - if ! hash rfkill 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing Rfkill" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install rfkill - else - echo -e "\e[1;32mOK!"$transparent"" - fi - sleep 0.025 - -############################## - -echo -ne "Unzip..........." - if ! hash unzip 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing unzip" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install unzip - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## - -echo -ne "Xterm..........." - if ! hash xterm 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - apt-get install xterm - else - echo -e "\e[1;32mOK!"$transparent - fi - sleep 0.025 -############################## -echo -ne "strings........." -if ! hash strings 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing binutils" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install binutils -else - echo -e "\e[1;32mOK!"$transparent"" -fi -sleep 0.025 -############################# -echo -ne "fuser..........." -if ! hash fuser 2>/dev/null; then - echo -e "\e[1;31mInstalling ..."$transparent"" - xterm $HOLD -title "Installing psmisc" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e apt-get --yes install psmisc -else - echo -e "\e[1;32mOK!"$transparent"" -fi -sleep 0.025 -############################# +installer software-properties-common +installer aircrack-ng +installer gawk +installer curl +installer dhcpd +installer isc-dhcp-server +installer hostapd +installer lighttpd +installer macchanger +installer mdk3 +installer nmap +installer openssl +installer php-cgi +installer pyrit +installer python +installer rfkill +installer unzip +installer binutils +installer psmisc +installer git +installer net-tools # removing repository echo "$(cat /etc/apt/sources.list | grep -v 'deb http://http.kali.org/kali kali-rolling main contrib non-free # by fluxion')" > /etc/apt/sources.list From fe535913c2324845e8082987751a37b0cd15ebae Mon Sep 17 00:00:00 2001 From: Tomas Vanagas Date: Sat, 22 Jul 2017 16:44:06 +0000 Subject: [PATCH 18/18] Updated fluxion.sh Site selection page used too much space, deleted few "spaces". --- fluxion.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fluxion.sh b/fluxion.sh index 8769747..1966cf2 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -1361,7 +1361,7 @@ function ConnectionRESET { fi if (( $itemprinted < $totallines )); then - echo -e -n " "$red"["$yellow"$n"$red"]" + echo -e -n " "$red"["$yellow"$n"$red"]" case $n in 1 ) echo -e -n $transparent" English [ENG] (NEUTRA) ";; 2 ) echo -e -n $transparent" German [GER] (NEUTRA) ";;