diff --git a/CHANGELOG.md b/CHANGELOG.md index a366b14b5..b9d31d267 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +### 9.23 + - Fixed error printing hints + - Fixed problem with default values on options file creation + ### 9.22 - Improved certificates validations and error messages - Removed useless internet access DNS resolution method for captive portal Evil Twin, now pure dnsspoof diff --git a/Dockerfile b/Dockerfile index 0f1b4e813..bb1b993a8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,6 +16,9 @@ ENV HASHCAT2_URL="https://github.com/v1s1t0r1sh3r3/hashcat2.0.git" ENV BETTERCAP162_URL="https://github.com/v1s1t0r1sh3r3/bettercap1.6.2.git" ENV DEBIAN_FRONTEND="noninteractive" +#Update repo sources +RUN sed -i 's|parrot.sh|parrot.sh/mirrors|' /etc/apt/sources.list.d/parrot.list + #Update system RUN apt update diff --git a/README.md b/README.md index e2f74e020..e01daf8f4 100644 --- a/README.md +++ b/README.md @@ -90,7 +90,7 @@ All the needed info about how to "install | use | enjoy" `airgeddon` is present [Hat Tip To]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Hat%20Tip%20To [Inspiration]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Inspiration -[Version-shield]: https://img.shields.io/badge/version-9.22-blue.svg?style=flat-square&colorA=273133&colorB=0093ee "Latest version" +[Version-shield]: https://img.shields.io/badge/version-9.23-blue.svg?style=flat-square&colorA=273133&colorB=0093ee "Latest version" [Bash4.2-shield]: https://img.shields.io/badge/bash-4.2%2B-blue.svg?style=flat-square&colorA=273133&colorB=00db00 "Bash 4.2 or later" [License-shield]: https://img.shields.io/badge/license-GPL%20v3%2B-blue.svg?style=flat-square&colorA=273133&colorB=bd0000 "GPL v3+" [Docker-shield]: https://img.shields.io/docker/automated/v1s1t0r1sh3r3/airgeddon.svg?style=flat-square&colorA=273133&colorB=f9ff5a "Docker rules!" diff --git a/airgeddon.sh b/airgeddon.sh index 7e500c49e..fa48af0a3 100755 --- a/airgeddon.sh +++ b/airgeddon.sh @@ -2,8 +2,8 @@ #Title........: airgeddon.sh #Description..: This is a multi-use bash script for Linux systems to audit wireless networks. #Author.......: v1s1t0r -#Date.........: 20190908 -#Version......: 9.22 +#Date.........: 20190924 +#Version......: 9.23 #Usage........: bash airgeddon.sh #Bash Version.: 4.2 or later @@ -115,8 +115,8 @@ declare -A possible_alias_names=( ) #General vars -airgeddon_version="9.22" -language_strings_expected_version="9.22-1" +airgeddon_version="9.23" +language_strings_expected_version="9.23-1" standardhandshake_filename="handshake-01.cap" timeout_capture_handshake="20" tmpdir="/tmp/" @@ -323,7 +323,7 @@ known_arm_compatible_distros=( declare main_hints=(128 134 163 437 438 442 445 516 590 626) declare dos_hints=(129 131 133) declare handshake_hints=(127 130 132 136) -declare handshake_dos_hints=(142) +declare dos_handshake_hints=(142) declare decrypt_hints=(171 179 208 244 163) declare personal_decrypt_hints=(171 178 179 208 244 163) declare enterprise_decrypt_hints=(171 179 208 244 163 610) @@ -2891,9 +2891,12 @@ function custom_certificates_integration() { hostapd_wpe_cert_path="${scriptfolder}${hostapd_wpe_cert_path}" fi - echo - language_strings "${language}" 329 "green" - read -rp "> " hostapd_wpe_cert_pass + hostapd_wpe_cert_pass="" + while [[ ! ${hostapd_wpe_cert_pass} =~ ^.{4,1023}$ ]]; do + echo + language_strings "${language}" 329 "green" + read -rp "> " hostapd_wpe_cert_pass + done fi else hostapd_wpe_cert_path="${default_certs_path}" @@ -2905,17 +2908,16 @@ function custom_certificates_integration() { language_strings "${language}" 649 "blue" echo - local certsresult - certsresult=$(validate_certificates "${hostapd_wpe_cert_path}" "${hostapd_wpe_cert_pass}") - if [ "${certsresult}" = "0" ]; then + validate_certificates "${hostapd_wpe_cert_path}" "${hostapd_wpe_cert_pass}" + if [ "$?" = "0" ]; then language_strings "${language}" 650 "yellow" language_strings "${language}" 115 "read" return 0 - elif [ "${certsresult}" = "1" ]; then + elif [ "$?" = "1" ]; then language_strings "${language}" 237 "red" language_strings "${language}" 115 "read" return 1 - elif [ "${certsresult}" = "2" ]; then + elif [ "$?" = "2" ]; then language_strings "${language}" 326 "red" language_strings "${language}" 115 "read" return 1 @@ -2930,20 +2932,18 @@ function custom_certificates_integration() { function validate_certificates() { debug_print - local certsresult - certsresult=0 if ! [ -f "${1}server.pem" ] || ! [ -r "${1}server.pem" ] || ! [ -f "${1}ca.pem" ] || ! [ -r "${1}ca.pem" ] || ! [ -f "${1}server.key" ] || ! [ -r "${1}server.key" ]; then - certsresult=1 + return 1 else if ! openssl x509 -in "${1}server.pem" -inform "PEM" -checkend "0" &> "/dev/null" || ! openssl x509 -in "${1}ca.pem" -inform "PEM" -checkend "0" &> "/dev/null"; then - certsresult=2 + return 2 elif ! openssl rsa -in "${1}server.key" -passin "pass:${2}" -check &> "/dev/null"; then - certsresult=3 + return 3 fi fi - echo "${certsresult}" + return 0 } #Create custom certificates @@ -8743,7 +8743,7 @@ function set_std_internet_routing_rules() { if [ "${et_mode}" = "et_captive_portal" ]; then if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule ip nat PREROUTING tcp dport 80 counter dnat to ${et_ip_router}:80 - "${iptables_cmd}" add rule ip nat PREROUTING tcp dport 443 counter dnat to ${et_ip_router}:443 + "${iptables_cmd}" add rule ip nat PREROUTING tcp dport 443 counter dnat to ${et_ip_router}:80 "${iptables_cmd}" add rule ip filter INPUT tcp dport 80 counter accept "${iptables_cmd}" add rule ip filter INPUT tcp dport 443 counter accept else @@ -14062,8 +14062,8 @@ function env_vars_initialization() { nonboolean_options_env_vars["${ordered_options_env_vars[9]},default_value"]="mdk4" nonboolean_options_env_vars["${ordered_options_env_vars[12]},default_value"]="xterm" - nonboolean_options_env_vars["${ordered_options_env_vars[9]},rcfile_text"]="#Available values: mdk3, mdk4 - Define which mdk version is going to be used - Default value mdk4" - nonboolean_options_env_vars["${ordered_options_env_vars[12]},rcfile_text"]="#Available values: xterm, tmux - Define the needed tool to be used for windows handling - Default value xterm" + nonboolean_options_env_vars["${ordered_options_env_vars[9]},rcfile_text"]="#Available values: mdk3, mdk4 - Define which mdk version is going to be used - Default value ${nonboolean_options_env_vars[${ordered_options_env_vars[9]},'default_value']}" + nonboolean_options_env_vars["${ordered_options_env_vars[12]},rcfile_text"]="#Available values: xterm, tmux - Define the needed tool to be used for windows handling - Default value ${nonboolean_options_env_vars[${ordered_options_env_vars[12]},'default_value']}" declare -gA boolean_options_env_vars boolean_options_env_vars["${ordered_options_env_vars[0]},default_value"]="true" @@ -14087,8 +14087,8 @@ function env_vars_initialization() { boolean_options_env_vars["${ordered_options_env_vars[6]},rcfile_text"]="#Enabled true / Disabled false - Print help hints on menus - Default value ${boolean_options_env_vars[${ordered_options_env_vars[6]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[7]},rcfile_text"]="#Enabled true / Disabled false - Enable 5Ghz support (it has no effect if your cards are not 5Ghz compatible cards) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[7]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[8]},rcfile_text"]="#Enabled true / Disabled false - Force to use iptables instead of nftables (it has no effect if nftables are not present) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[8]},'default_value']}" - boolean_options_env_vars["${ordered_options_env_vars[10]},rcfile_text"]="#Enabled true / Disabled false - Development mode for faster development skipping intro and all initial checks - Default value ${boolean_options_env_vars[${ordered_options_env_vars[9]},'default_value']}" - boolean_options_env_vars["${ordered_options_env_vars[11]},rcfile_text"]="#Enabled true / Disabled false - Debug mode for development printing debug information - Default value ${boolean_options_env_vars[${ordered_options_env_vars[10]},'default_value']}" + boolean_options_env_vars["${ordered_options_env_vars[10]},rcfile_text"]="#Enabled true / Disabled false - Development mode for faster development skipping intro and all initial checks - Default value ${boolean_options_env_vars[${ordered_options_env_vars[10]},'default_value']}" + boolean_options_env_vars["${ordered_options_env_vars[11]},rcfile_text"]="#Enabled true / Disabled false - Debug mode for development printing debug information - Default value ${boolean_options_env_vars[${ordered_options_env_vars[11]},'default_value']}" readarray -t ENV_VARS_ELEMENTS < <(printf %s\\n "${!nonboolean_options_env_vars[@]} ${!boolean_options_env_vars[@]}" | cut -d, -f1 | sort -u) readarray -t ENV_BOOLEAN_VARS_ELEMENTS < <(printf %s\\n "${!boolean_options_env_vars[@]}" | cut -d, -f1 | sort -u) diff --git a/binaries/arch/airgeddon-git-9.22-1-any.pkg.tar.xz b/binaries/arch/airgeddon-git-9.22-1-any.pkg.tar.xz deleted file mode 100644 index afaa5ed28..000000000 Binary files a/binaries/arch/airgeddon-git-9.22-1-any.pkg.tar.xz and /dev/null differ diff --git a/binaries/arch/airgeddon-git-9.23-1-any.pkg.tar.tar.xz b/binaries/arch/airgeddon-git-9.23-1-any.pkg.tar.tar.xz new file mode 100644 index 000000000..d849cb458 Binary files /dev/null and b/binaries/arch/airgeddon-git-9.23-1-any.pkg.tar.tar.xz differ diff --git a/binaries/kali/airgeddon_9.22-1_all.deb b/binaries/kali/airgeddon_9.22-1_all.deb deleted file mode 100644 index 03107092c..000000000 Binary files a/binaries/kali/airgeddon_9.22-1_all.deb and /dev/null differ diff --git a/binaries/kali/airgeddon_9.23-1_all.deb b/binaries/kali/airgeddon_9.23-1_all.deb new file mode 100644 index 000000000..52cc460e5 Binary files /dev/null and b/binaries/kali/airgeddon_9.23-1_all.deb differ diff --git a/imgs/wiki/airgeddon_scrs1.png b/imgs/wiki/airgeddon_scrs1.png index 743d5e932..0ae9dcd6e 100644 Binary files a/imgs/wiki/airgeddon_scrs1.png and b/imgs/wiki/airgeddon_scrs1.png differ diff --git a/known_pins.db b/known_pins.db index 1a2b043b4..5a056fb7f 100644 --- a/known_pins.db +++ b/known_pins.db @@ -2,7 +2,7 @@ #Title........: known_pins.db #Description..: This is a WPS PIN database for routers that generate generic passwords. #Author.......: v1s1t0r -#Date.........: 20190822 +#Date.........: 20190918 #Bash Version.: 4.2 or later #Set PIN database. Keys are the first 6 bssid digits and are ordered @@ -404,6 +404,7 @@ function set_pin_database() { PINDB["C43DC7"]="82234515 63753349 20388560 20205287 51419981" PINDB["C46E1F"]="11695059 73307334 36545780" PINDB["C4E984"]="72914908 79016018 84847621" + PINDB["C4EA1D"]="43876969" PINDB["C528D2"]="95685656" PINDB["C81760"]="12345678" PINDB["C83A35"]="28818885 01756401 11195207 11203124 11210085 11214809 11215042 11213840 11194569 11195764 11214885 11216643 05365852 48343763 61724242 12345678 60641687 15002648 61436800 18698800 02814087 38015687 23664173 62047043 11651123" diff --git a/language_strings.sh b/language_strings.sh index 96522ab2e..ab79bebe3 100644 --- a/language_strings.sh +++ b/language_strings.sh @@ -2,7 +2,7 @@ #Title........: language_strings.sh #Description..: All the translated strings that airgeddon uses are located here. #Author.......: v1s1t0r -#Date.........: 20190907 +#Date.........: 20190927 #Bash Version.: 4.2 or later #Set language_strings file version @@ -11,7 +11,7 @@ function set_language_strings_version() { debug_print - language_strings_version="9.22-1" + language_strings_version="9.23-1" } #Set different language text strings @@ -2952,7 +2952,7 @@ function language_strings() { arr["ITALIAN",174]="Sembra che tu abbia una versione di bettercap non supportata da airgeddon. L'ultima versione di bettercap supportata è ${maximum_bettercap_supported_version}. Se vuoi far funzionare questo attacco devi eseguire un downgrade del pacchetto. Per ulteriori informazioni consultare la sezione Bettercap della nostra Wiki: ${normal_color}${urlgithub_wiki}/Bettercap Tips" arr["POLISH",174]="Wygląda na to, że masz nieobsługiwaną przez airgeddon wersję bettercap. Ostatnia obsługiwana wersja bettercap to ${maximum_bettercap_supported_version}. Jeśli chcesz, aby ten atak działał, musisz obniżyć wersje. Aby uzyskać więcej informacji, zobacz sekcję Bettercap Wiki: ${normal_color}${urlgithub_wiki}/Bettercap Tips" arr["GERMAN",174]="Anscheinend ist die benutzte bettercap version von airgeddon nicht unterstützt. Die letzte unterstützte bettercap Version ist ${maximum_bettercap_supported_version}. Wenn Sie diesen Angriff beuntzen wollen, sollten Sie ein Downgrade des bettercap-Pakets durchführen. Weitere Informationen finden Sie im Abschnitt Bettercap des Wiki: ${normal_color}${urlgithub_wiki}/Bettercap Tips" - arr["TURKISH",174]="Airgeddon bettercap sürümününüz desteklenmiyor gibi görünüyor. Son çıkan en iyi desteklenen sürüm ${maximum_bettercap_supported_version}. Bu saldırıyı gerçekleştirmek istiyorsanız, paketin bir sürümünün düşürülmesi gerekir. Daha fazla bilgi için, Wiki'nin Bettercap bölümüne bakın: ${normal_color}${urlgithub_wiki}/Bettercap Tips" + arr["TURKISH",174]="airgeddon bettercap sürümününüz desteklenmiyor gibi görünüyor. Son çıkan en iyi desteklenen sürüm ${maximum_bettercap_supported_version}. Bu saldırıyı gerçekleştirmek istiyorsanız, paketin bir sürümünün düşürülmesi gerekir. Daha fazla bilgi için, Wiki'nin Bettercap bölümüne bakın: ${normal_color}${urlgithub_wiki}/Bettercap Tips" arr["ENGLISH",175]="2. (aircrack + crunch) Bruteforce attack against capture file" arr["SPANISH",175]="2. (aircrack + crunch) Ataque de fuerza bruta sobre fichero de captura" @@ -4471,11 +4471,11 @@ function language_strings() { arr["FRENCH",301]="Pour les attaques d'entreprise, si vous disposez des certificats légitimes du réseau objetive et de le mot de passe, vous pouvez les utiliser. Si vous ne les avez pas, vous pouvez générer avec airgeddon des certificats avec les mêmes données et les utiliser pour que l'attaque soit plus crédible" arr["CATALAN",301]="Per als atacs enterprise, si tens els certificats legítims de la xarxa objectiu i la contrasenya, podràs utilitzar-los. Si no els tens, pots generar amb airgeddon uns certificats amb les mateixes dades i utilitzar-los per que l'atac sigui més creïble" arr["PORTUGUESE",301]="Para ataques corporativos, se você tiver os certificados legítimos da rede e sua senha, poderá usá-los. Se você não tiver, pode gerar os certificados com airgeddon usando os mesmos dados tornando o ataque mais confiável" - arr["RUSSIAN",301]="${pending_of_translation} Для корпоративных атак, если у вас есть действительные сертификаты целевой сети и ваш пароль, вы можете использовать их. Если у вас их нет, вы можете создать с помощью сертификатов Airgeddon те же данные и использовать их для повышения вероятности атаки" + arr["RUSSIAN",301]="Для enterprise атак, если у вас есть действительные сертификаты целевой сети и пароль для них, вы можете использовать их. Если у вас их нет, вы можете создать сертификаты с помощью airgeddon с такими же данными и использовать их для повышения доверия у жертвы" arr["GREEK",301]="Για enterprise επιθέσεις, εάν έχετε τα νόμιμα πιστοποιητικά του δικτύου προορισμού και τον κωδικό πρόσβασής σας, μπορείτε να τα χρησιμοποιήσετε. Αν δεν τα έχετε, μπορείτε να χρησιμοποιήσετε το airgeddon για να δημιουργήσετε ορισμένα πιστοποιητικά με τα ίδια δεδομένα και να τα χρησιμοποιήσετε για να κάνετε την επίθεση πιο αξιόπιστη" arr["ITALIAN",301]="Per gli attacchi enterprise, se si dispone dei certificati legittimi della rete obiettivo e della sua password, è possibile utilizzarli. Se non li hai, puoi generareli con airgeddon con gli stessi dati e usarli per rendere l'attacco più credibile" arr["POLISH",301]="${pending_of_translation} W przypadku ataków korporacyjnych, jeśli masz prawidłowe certyfikaty sieci docelowej i hasło, możesz ich użyć. Jeśli ich nie masz, możesz wygenerować za pomocą certyfikatów airgeddon z tymi samymi danymi i wykorzystać je, aby atak był bardziej wiarygodny" - arr["GERMAN",301]="Wenn Sie bei Unternehmensangriffen über die legitimen Zertifikate des Zielnetzwerks und Ihr Kennwort verfügen, können Sie diese verwenden. Wenn Sie diese nicht haben, können Sie mit Airgeddon-Zertifikaten mit denselben Daten erstellen und sie verwenden, um den Angriff glaubwürdiger zu machen" + arr["GERMAN",301]="Wenn Sie bei Unternehmensangriffen über die legitimen Zertifikate des Zielnetzwerks und Ihr Kennwort verfügen, können Sie diese verwenden. Wenn Sie diese nicht haben, können Sie mit airgeddon-Zertifikaten mit denselben Daten erstellen und sie verwenden, um den Angriff glaubwürdiger zu machen" arr["TURKISH",301]="Kurumsal saldırılarda, hedef ağın yasal sertifikalarına ve şifreniz varsa bunları kullanabilirsiniz. Onlara sahip değilseniz, aynı verilere sahip airgeddon sertifikalarıyla oluşturabilir ve saldırıyı daha inanılır hale getirmek için bunları kullanabilirsiniz" arr["ENGLISH",302]="Do you want to store in a file the sniffed captured passwords? ${blue_color}If you answer no (\"n\") they will be only shown on screen ${normal_color}${visual_choice}" @@ -4766,12 +4766,12 @@ function language_strings() { arr["GERMAN",325]="Bitte warten. Wir bitten um ein wenig Geduld..." arr["TURKISH",325]="Bekleyin. Lütfen sabırlı olun..." - arr["ENGLISH",326]="Certificates are invalid or outdated, so the attack can't be performed" + arr["ENGLISH",326]="Certificates are invalid or expired, so the attack can't be performed" arr["SPANISH",326]="Los certificados no son válidos o están caducados, por lo que el ataque no se puede realizar" arr["FRENCH",326]="Les certificats ne sont pas valides ou ont expiré. Donc l'attaque ne peut pas être effectuée" arr["CATALAN",326]="Els certificats no són vàlids o estan caducats, de manera que l'atac no es pot realitzar" arr["PORTUGUESE",326]="Os certificados são inválidos ou expiraram, o ataque não pode ser executado" - arr["RUSSIAN",326]="${pending_of_translation} Сертификаты недействительны или устарели, поэтому атака не может быть выполнена" + arr["RUSSIAN",326]="Сертификаты недействительны или устарели, поэтому атака не может быть выполнена" arr["GREEK",326]="Τα certificates είναι άκυρα ή έχουν λήξει, οπότε η επίθεση δεν μπορεί να εκτελεστεί" arr["ITALIAN",326]="I certificati non sono validi o sono scaduti, quindi l'attacco non può essere eseguito" arr["POLISH",326]="${pending_of_translation} Certyfikaty są nieprawidłowe lub nieaktualne, więc nie można wykonać ataku" @@ -4819,7 +4819,7 @@ function language_strings() { arr["FRENCH",330]="La clé privée n'est pas valide ou le mot de passe est incorrect. Donc l'attaque ne peut pas être effectuée" arr["CATALAN",330]="La clau privada no és vàlida o la contrasenya és errònia, de manera que l'atac no es pot realitzar" arr["PORTUGUESE",330]="Sua chave privada não é válida ou a senha está errada, o ataque não pode ser executado" - arr["RUSSIAN",330]="${pending_of_translation} Закрытый ключ неверен или пароль неверен, поэтому атака не может быть выполнена" + arr["RUSSIAN",330]="Закрытый ключ неверен или пароль неверен, поэтому атака не может быть выполнена" arr["GREEK",330]="Το ιδιωτικό κλειδί δεν είναι έγκυρο ή ο κωδικός πρόσβασης είναι λάθος, επομένως η επίθεση δεν μπορεί να εκτελεστεί" arr["ITALIAN",330]="La chiave privata non è valida o la password è errata, quindi l'attacco non può essere eseguito" arr["POLISH",330]="${pending_of_translation} Klucz prywatny jest nieprawidłowy lub hasło jest nieprawidłowe, więc nie można wykonać ataku" @@ -5928,7 +5928,7 @@ function language_strings() { arr["ITALIAN",422]="L'aggiornamento automatico viene disattivato quando airgeddon viene eseguito in un contenitore Docker. Se vuoi aggiornarlo scaricare di nuovo l'immagine con il tag \"latest\"" arr["POLISH",422]="Automatyczna aktualizacja została wyłączona, gdy airgeddon jest uruchomiony w kontenerze Docker. Jeśli chcesz go zaktualizować, pobierz ponownie obraz oznaczony jako \"latest\"" arr["GERMAN",422]="Die automatische Aktualisierung wird deaktiviert, wenn airgeddon in einem Docker-Container ausgeführt wird. Wenn Sie es aktualisieren möchten, laden Sie das Bild erneut mit dem Tag \"latest\"" - arr["TURKISH",422]="Airgeddon bir Docker konteynerinde çalışırken otomatik güncelleme devre dışı bırakıldı. Güncellemek isterseniz, \"latest\" etiketli görüntüyü tekrar indirin" + arr["TURKISH",422]="airgeddon bir Docker konteynerinde çalışırken otomatik güncelleme devre dışı bırakıldı. Güncellemek isterseniz, \"latest\" etiketli görüntüyü tekrar indirin" arr["ENGLISH",423]="5. WEP \"All-in-One\" attack" arr["SPANISH",423]="5. Ataque WEP \"Todo-en-Uno\"" @@ -6576,7 +6576,7 @@ function language_strings() { arr["ITALIAN",476]="Non è stato rilevato un server X grafico, se è presente controllare il corretto funzionamento. È essenziale per airgeddon. Lo script non può continuare" arr["POLISH",476]="Nie wykryto graficznego systemu X Window. Jeśli go masz, sprawdź czy działa poprawnie. Jest niezbędne dla airgeddon. Skrypt nie może kontynuować" arr["GERMAN",476]="Kein X Window-Grafiksystem wurde erkannt. Wenn Sie es haben, prüfen Sie, ob es richtig funktioniert. Es ist für airgeddon sehr wichtig. Das Skript kann nicht weiterfahren" - arr["TURKISH",476]="Bir grafik X pencere sistemi tespit edilmedi. Zaten sahipseniz, düzgün çalıştığını kontrol edin. Airgeddon için şarttır. Komut devam edemiyor" + arr["TURKISH",476]="Bir grafik X pencere sistemi tespit edilmedi. Zaten sahipseniz, düzgün çalıştığını kontrol edin. airgeddon için şarttır. Komut devam edemiyor" arr["ENGLISH",477]="The options in this menu containing the word \"permanently\" modify airgeddon to save the settings for the next time that is to be launched. However, you can always return to this menu to change the value of the option again" arr["SPANISH",477]="Las opciones de este menú que contienen la palabra \"permanentemente\", modifican airgeddon para que incluso la siguiente vez que sea iniciado siga guardando la configuración. No obstante, siempre puedes volver a este menú a cambiar de nuevo el valor de la opción" @@ -7939,7 +7939,7 @@ function language_strings() { arr["FRENCH",590]="Vous pouvez modifier manuellement le fichier ${rc_path} pour modifier ses options. Vous pouvez également écrire \"flags\" sur la ligne de commande. Plus d'information sur: ${urlgithub_wiki}/Options" arr["CATALAN",590]="Pots modificar manualment el fitxer ${rc_path} per modificar les seves opcions. També pots llançar \"flags\" a la línia d'ordres. Més informació a: ${urlgithub_wiki}/Options" arr["PORTUGUESE",590]="Você pode modificar manualmente o arquivo ${rc_path} para alterar suas opções ou usar argumentos ao executar airgeddon na linha de comando. Mais informações em: ${urlgithub_wiki}/Options" - arr["RUSSIAN",590]="${pending_of_translation} Вы можете вручную изменить файл ${rc_path}, чтобы изменить его параметры. Вы также можете указать \"flags\" в командной строке. Дополнительная информация об опциях: ${urlgithub_wiki}/Options" + arr["RUSSIAN",590]="Вы можете вручную изменить файл ${rc_path}, чтобы изменить его опции. Вы также можете указать \"flags\" в командной строке. Дополнительная информация об опциях: ${urlgithub_wiki}/Options" arr["GREEK",590]="Μπορείτε να τροποποιήσετε χειροκίνητα το αρχείο ${rc_path} για να αλλάξετε τις επιλογές του. Μπορείτε επίσης να βάλετε \"flags\" στη γραμμή εντολών. Περισσότερες πληροφορίες στο: ${urlgithub_wiki}/Options" arr["ITALIAN",590]="Puoi modificare manualmente il file ${rc_path} per modificarne le opzioni. Puoi anche lanciare \"flags\" sulla linea di comando. Maggiori informazioni su: ${urlgithub_wiki}/Options" arr["POLISH",590]="${pending_of_translation} Możesz ręcznie zmodyfikować plik ${rc_path} aby zmienić jego opcje. Możesz także wpisać \"flags\" w linii poleceń. Więcej informacji: ${urlgithub_wiki}/Options" diff --git a/pindb_checksum.txt b/pindb_checksum.txt index d2a932cbc..778d2e664 100644 --- a/pindb_checksum.txt +++ b/pindb_checksum.txt @@ -1 +1 @@ -e42698082d3e83e03ae6e842a61faad8 +511908c8edd00226a2db23966eddaabf