Как узнать, к каким Wi-Fi сетям подключался компьютер и пароли от этих Wi-Fi сетей

Если вы забыли пароль от Wi-Fi сети, к которой подключён ваш компьютер, либо вы хотите узнать, к каким сетям ранее подключался компьютер, который находится перед вами, и какие у них пароли, то эта заметка для вас. Т.е. данная инструкция подойдёт если у вас имеется физический доступ к компьютеру. И неважно, включен он или выключен, работает под Windows или под Linux, у вас доступ к жёсткому диску или к предварительно сделанному образу с системного диска.

Если вас интересует, к каким сетям ранее подключался компьютер, к которому у вас нет физического доступа, то в некоторой степени вам могут помочь программы Airodump-ng, iSniff-GPS; а если ещё и хочется попытаться взломать пароли от этих Wi-Fi сетей, то нужно изучать «WPA2 Half Handshake (половина рукопожатия): программы для взлома Wi-Fi пароля и сценарии атак» и в целом здесь.

Как узнать пароли от Wi-Fi в Windows

Если вы хотите узнать, какой пароль у Wi-Fi к которому вы подключены в данный момент, то это можно сделать из графического интерфейса. Перейдите в «Центр управления сетями и общим доступом», кликните на имя сети, как показано на скриншоте:

В открывшемся окне нажмите «Свойства беспроводной сети»:

Перейдите на вкладку «Безопасность» и поставьте галочку «Отображать вводимые знаки»:

Для того, чтобы узнать, к каким сетям подключался этот компьютер ранее и какие пароли у этих сетей, есть несколько способов. Один из них – с использованием командной строки Windows, второй – с использованием стороннего программного обеспечения.

Откройте командную строку (нажмите Win+x и выберите «Командная строка (администратор)). Для просмотра доступных профилей, введите команду:

netsh wlan show profile

Чтобы вывести пароли для всех сетей, введите:

netsh wlan show profile name=* key=clear

А чтобы вывести пароль для конкретной сети, введите команду вида:

netsh wlan show profile name="имя_сети" key=clear

В ней замените имя_сети на настоящее имя интересующей сети, например, в моём случае:

netsh wlan show profile name="dlink" key=clear

В моём случае, показано всего четыре профиля, и только для них можно вывести пароли в открытом виде. Но я точно знаю, что этот компьютер подключался к большему количеству беспроводных сетей. Существует программа с графическим интерфейсом для просмотра всех ранее введённых паролей Wi-Fi сетей – это WirelessKeyView. Хотя у программы закрыт исходный код, она является бесплатной.

Программа очень проста в использовании – её нужно просто запустить:

Будут показаны беспроводные сети и пароли, к которым ранее подключался компьютер.

Как узнать пароли Wi-Fi сетей у выключенного компьютера с Windows

В Windows XP беспроводные ключи хранятся в реестре HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WZCSVC\Parameters\Interfaces\[Interface Guid]. Они хорошо зашифрованы, поэтому их нельзя увидеть с RegEdit. Тем не менее, WirelessKeyView умеет восстанавливать пароли для выключенных компьютеров под управлением Windows XP, в том числе для мёртвых систем, которые невозможно загрузить. Для этого перейдите в продвинутые опции программы и укажите пути до соответствующих папок.

Кстати, Windows XP, после того, как вы вводите WPA-PSK ключ, автоматически конвертирует его в 256-битный ключ. Именно его может показать WirelessKeyView, но она не может его конвертировать обратно в исходный ключ, который был набран. Тем не менее, этот длинный ключ можно использоваться для подключения к беспроводной сети в точности, как и оригинальный. В Windows Vista и более поздних, WPA-PSK пароль не конвертируется, поэтому программа может показать исходный пароль.

В Windows Vista и более поздних пароли от беспроводных сетей хранятся в c:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\[Interface Guid]. Пароли хорошо зашифрованы и хранятся в файлах .xml.

Некоторую дополнительную информацию, в том числе пример кода для расшифровки пароля в Windows Vista и более поздних, можно найти здесь. Там же написано, что пароли расшифровывать нужно в контексте системы, где они были зашифрованы. Говоря простым языком – расшифровать их можно под пользователем, под которым они были зашифрованы, т.е. их нельзя расшифровать на выключенном компьютере или скопировав файлы на другой компьютер.

Как узнать пароли от Wi-Fi в Linux

В Linux для подключения к Wi-Fi используются Network Manager или WPA supplicant. Network Manager – это программа с графическим интерфейсом, а  WPA supplicant обеспечивает Wi-Fi соединение для тех, кто предпочитает всё делать из командной строки.

Обе эти программы хранят настройки соединений в открытом виде. Но прежде чем перейти к командам, можно воспользоваться графическим интерфейсом, чтобы узнать, к каким Wi-Fi сетям был подключён компьютер на Linux. Для этого кликните на значёк Wi-Fi рядом с часами и выберите “Сетевые соединения”. Вы увидите сети, к которым подключён компьютер сейчас или был подключён ранее:

Чтобы узнать пароль, выберите интересующую вас сеть и нажмите “Изменить”. Далее перейдите во вкладку “Защита Wi-Fi” и поставьте галочку “Показывать пароль”:

Обратите внимание, что нам даже не потребовался пароль администратора – достаточно того, что произведён вход от имени любого пользователя.

Как уже было сказано, Network Manager хранит все свои настройки подключения в открытом виде. В папке /etc/NetworkManager/system-connections/. Чтобы посмотреть, какие там файлы наберите:

ls -l /etc/NetworkManager/system-connections/

Чтобы просмотреть имена и пароли Wi-Fi сетей выполните:

sudo egrep -h -s -A 9 --color -T 'ssid=' /etc/NetworkManager/system-connections/*

WPA supplicant обычно хранит свои настройки в файле /etc/wpa_supplicant.conf или в файлах с расширением .conf в папке /etc/wpa_supplicant/. Тем не менее возможен запуск этой программы с ключём, после которого указан файл с произвольным именем и в произвольном расположении. Если WPA supplicant запускается автоматически при каждой загрузке компьютера, то можно изучить файл /etc/rc.local на наличие команды WPA supplicant которая будет указывать на файл с настройками беспроводной сети. Можно поискать указание на файл посмотрев статус службы (для просмотра статуса служб не требуется прав суперпользователя):

systemctl status wpa_supplicant.service

Если же WPA supplicant запускался вручную, то эти команды можно поискать в истории:

grep supplicant ~/.bash_history

Чтобы посмотреть, что находится в папке /etc/wpa_supplicant/:

ls -l /etc/wpa_supplicant/

Для вывода содержимого файла используйте команду cat, например:

cat /etc/wpa_supplicant/wpa_supplicant.conf

Обычно, файлы настроек WPA supplicant доступны для чтения всем, т.е. для этого не требуется привилегий суперпользователя.

Как узнать пароли от Wi-Fi в выключенном Linux (из образа системы)

Если компьютер под управлением Linux выключен, то возможно загрузиться с Live системы, либо подключить жёсткий диск с интересующей системой к включённому компьютеру. Если вы ведёте исследование из Linux, то достаточно смонтировать файловую систему целевого носителя и изучить те файлы, о которых сказано чуть выше. Также вы можете это сделать из Windows, для этого обратитесь к заметке «Как из Windows просмотреть содержимое диска Linux и скопировать с него файлы».

Рекомендуется Вам:

2 комментария to Как узнать, к каким Wi-Fi сетям подключался компьютер и пароли от этих Wi-Fi сетей

  1. артем:

    Алексей,подскажите где научиться cmd windows?

    • Alexey Alexey:

      Команды из этой заметки я подсмотрел в программе Wifresti.

      Можно много найти лекций, переводов справки по запросу «Справочник по параметрам командной строки».

      В документации Microsoft можно найти список команд. Не знаю, насколько он полный и актуальный, но сама справка (по крайне мере по некоторым командам), не актуальна. Ещё один список команд.

      Самый полный список доступных команд можно получить, пожалуй, если заглянуть в папку C:\Windows\System32\ - имена файлов с расширением .exe можно запустить в командной строке. Чтобы получить по ним справку, наберите

      команда /?

      Например:

      forfiles /?

      Если программа позволяет работать в разных контекстах (как netsh), то можно войти в эту команду и постепенно передвигаться по контекстам как по дереву, используя help. Например, вводим

      netsh

      Далее вводим

      help

      Смотрим доступные варианты, вводим

      wlan
      help

      для просмотра, что доступно в контексте работы с беспроводными картами.

      Например, нас заинтересовало show – Отображение информации:

      show

      Для получения дополнительной информации по заинтересовавшему пункту:

      show profile help

      Получается «методом научного тыка», но зато информация актуальна и более понятна чем мутнейшая официальная документация и её переводы.

      Ещё обратите внимание на Windows PowerShell – позволяет использовать как обычные команды, так и языки программирования, в том числе с запросами к системным API – это даёт огромные возможности по автоматизации и управлению системой.

      Возможно, по всем этим вопросам есть нормальные книги и сайты, но мне они не попадались. Если кому-то попадались – пишите здесь ссылки и названия.

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

Ваш e-mail не будет опубликован.