Получение паролей Wi-Fi с помощью mac

#bash #macos

#bash #macos

Вопрос:

Я пытаюсь использовать оболочку bash для получения профиля wifi для определенной сети, а затем пароля

То, что я ищу, в основном эквивалентно mac netsh wlan show profile name="name" key=clear , который получает именно то, что я хочу с Windows

Я изучил команды airport и networksetup на Mac, но до сих пор не нашел ничего, что либо покажет мне сетевые профили, либо, что еще лучше, что внутри.

У кого-нибудь есть какие-либо идеи или, по крайней мере, что-то, что могло бы указать мне правильное направление?

Ответ №1:

Если можно использовать Node.js сценарий для этого, вы можете взглянуть на wifi-password-cli, который делает именно то, что вы хотите:

 $ wifi-password --help

  Usage
    $ wifi-password [network-name]

  Example
    $ wifi-password
    unicorns
    $ wifi-password foo-network
    foosecretpassword
  

(Пример взят из документации инструмента)

Чтобы использовать его, просто запустите (предполагается, что Node.js уже был установлен в вашей системе ранее):

 $ npm install -g wifi-password-cli
  

Комментарии:

1. Я открыт для использования скрипта, но есть ли способ сделать это, не требующий стороннего программного обеспечения?

2. Возможно, вы посмотрите, как это Node.js скрипт делает это 😉

3. Есть ли способ сделать это без имени пользователя и пароля администратора?

Ответ №2:

Простой способ:

 security find-generic-password -ga "ROUTERNAME" | grep "password:"
  

Добавьте имя Wi-Fi, к которому вы подключены, вместо ИМЕНИ маршрута

Ответ №3:

Просто запустите команду из приложения терминала

 security find-generic-password -wa <WIFI_NAME>
  

Замените <WIFI_NAME> на свое имя Wifi.
Появится запрос на ввод имени пользователя и пароля.