Извлечение сохраненных паролей Wi-Fi на Python

WiFi иконка

В предыдущей статье я показал, как вытащить пароли из Chrome на Python. Сейчас покажу, как написать небольшой скрипт на Python для извлечения сохраненных паролей Wi-Fi Windows и Linux.

Еще по теме: Взлом WiFi на Python

Извлечение сохраненных паролей Wi-Fi на Python

Нам не потребуется устанавливать сторонние библиотеки, так как мы будем взаимодействовать с командой netsh в Windows и папкой NetworkManager в дистрибутивах Linux.

Статья в образовательных целях, для обучения этичных хакеров. Несанкционированный доступ к чужой информации является незаконным и рассматривается как уголовное преступление. Ни редакция spy-soft.net, ни автор не несут ответственности за ваши действия.

Мы напишем скрипт, который будет обрабатывать разный код для разных сред, так что если вы используете любую из этих платформ, он автоматически определит это и выведет сохраненные пароли соответствующим образом.

Я назвал файл extract_wifi_passwords.py.

Импорт библиотек:

Извлечение сохраненных паролей Wi-Fi Windows на Python

На Windows для получения всех имен Wi-Fi (SSID) мы используем команду netsh wlan show profiles; ниже приведена функция, которая использует модуль subprocess для вызова этой команды и разбора ее в Python:

Мы используем регулярные выражения для поиска профилей сетей. Затем мы можем использовать команду show profile [ssid] key=clear, чтобы получить пароль для этой сети:

Сначала мы вызываем get_windows_saved_ssids(), чтобы получить все SSID, с которыми мы подключались ранее. Затем мы инициализируем наш именованный кортеж для включения ssid, ciphers и ключа.

Мы вызываем show profile [ssid] key=clear для каждого извлеченного SSID, затем разбираем шифры и ключ (пароль) с помощью re.findall(), и выводим их с помощью простой функции `print_windows_profile()`:

Итак, print_windows_profiles() выводит все SSID вместе с шифрами и ключами (паролями).

Извлечение сохраненных паролей Wi-Fi Linux на Python

Все ранее подключенные и сохраненные сети (в виде файлов INI) находятся в каталоге:

Нам просто нужно прочитать эти файлы и вывести их в удобном формате:

Как упоминалось, мы используем функцию os.listdir() для перечисления всех файлов в этом каталоге. Затем мы используем configparser для чтения файла INI и перебираем элементы. Если мы находим поля, которые нас интересуют, мы просто включаем их в наши данные.

Существует и другая информация, но мы ограничимся ssid, auth-alg, key-mgmt и psk (пароль).

Теперь давайте вызовем функцию:

Завершение и запуск extract_wifi_passwords.py

Наконец, создадим функцию, которая, в зависимости от операционной системы, вызывает print_linux_profiles(), либо print_windows_profiles().

Запуск скрипта:

Вот результат на моей машине с Windows:

Python извлечение паролей WiFi

А это результат на моей машине с Linux:

Python вытащить пароли WiFi

Заключение

Уверен, этот код будет полезен в изучении Python и для быстрого получения сохраненных паролей Wi-Fi. Кстати, рекомендую прочитать статью «Как написать троян на Python», в частности главу «Создание WiFi-стилера на Python».

ПОЛЕЗНЫЕ ССЫЛКИ:

Ban32

Хакер-самоучка, который может взломать тостер и настроить его на отправку вам утреннего приветствия в коде Морзе.

Добавить комментарий