Перебор и брутфорс учетных записей Microsoft Exchange через Outlook Web Access

В тестировании на проникновение, особенно при проверке криптостойкости паролей и социальной инженерии, часто требуется произвести перебор электронных почтовых ящиков пользователей и попытаться подобрать к ним пароли (или в дальнейшем использовать полученные ящики для социальной инженерии). Иногда удаётся успешно произвести перебор и брутфорс по протоколу SMTP, но как правило, SMTP сервер блокирует подобные действия (Как произвести перебор учетных записей через SMTP — описывается в статье Перебор почтовых адресов). Если в качестве почтового сервера используется Microsoft Exchange, то можно попробовать перебор и брутфорс через Web интерфейс почты. Если имя учетной записи такое же, как и имя почты, а как правило так и есть, то мы сможем провести перебор, если они различаются (что бывает крайне редко) то можно будет либо перечислить только имена пользователей, либо провести перебор паролей для известных имен пользователей.
Для перебора и брутфорса нам потребуется Metasploit Framework и 2 словаря.

Словарь с паролями (pass.txt):

Парольный словарь можно взять готовый или составить самостоятельно. Вообще составление словаря это довольно творческое дело.

Словарь с именами учетных записей (login.txt):

Обычно в компании существует шаблон для учетных записей (которые часто равны имени почтового ящика), поэтому узнав несколько существующих учетных записей, можно составить словарь для остальных возможных учетных записей, так же для массовой генерации можно воспользоваться утилитой CredCompilator, описанной в статье: Генерация сложных имен для перебора учетных записей и паролей.

После создания словарей, запускаем Metasploit Framework:

Если в Metasploit Framework подключена база данных, то вся информация будет сохранена в базе данных, а если не подключена, то можно отправлять копию вывода консоли в файл с помощью команды:

Выбираем модуль auxiliary/scanner/owa_login:

Указываем файл с паролями:

Указываем файл с логинами:

Указываем имя сервера, на котором есть Outlook Web Access (OWA):

Запускаем:

Результатом работы будет лог следующего вида:

Где
FAILED LOGIN, BUT USERNAME IS VALID — учетная запись существует, но пароль не подошёл (подходит для перечисления учетных записей).
FAILED LOGIN — такой учетной записи не существует.

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

Соответственно для перебора учетных записей можно использовать всего один пароль в файле паролей, а для подбора паролей на уже найденные учетные записи — полноценный словарь.

Теперь остаётся обработать логи с помощью grep, awk, sed и прочих утилит, чтобы получить список почтовых адресов и успешно подобранных паролей.

Заказать Аудит Безопасности или Пентест Вашей IT-инфраструктуры

Быть уверенным в своей IT-инфраструктуре — это быть уверенным в завтрашнем дне.

Для того, чтобы сделать заказ:

Заполните форму обратной связи и мы обязательно с вам свяжемся:
Форма обратной связи
Позвоните нам по телефону:
+7(909)952-44-33
Напишите нам на электронную почту:
order@blackdiver.net
Напишите нам в Telegram:
Telegram
Другие способы связи Вы сможете найти в разделе Контакты.