Эффективное получение хеша паролей в Windows. Часть 6

Эффективное получение хеша паролей в Windows. Часть 6

Windows сохраняет пароли в обратимом виде не только в секретах LSA, но и в других местах.

Автор:Bernardo Damele A. G.

Учетные записи сетевых служб

Windows сохраняет пароли в обратимом виде не только в секретах LSA, но и в других местах.

Когда вы заходите на сетевой ресурс, например, общую папку, прокси-сервер с NTLM-аутентификацией, СУБД, почтовый сервер и.т.п, то часто вы можете сохранить свой пароль, просто поставив галочку в поле “Запомнить пароль”.

На самом деле в таких случаях Windows сохраняет имена пользователей и пароли в диспетчере учетных данных (Credential Manager). Хранение учетных данных позволяет Windows использовать технологию единого доступа (SSO), введенную еще в Windows XP. Благодаря SSO, каждый раз, когда пользователю необходимо аутентифицироваться на сетевом ресурсе, ему не нужно заново вводить свои учетные данные.

Пароли в диспетчере учетных данных шифруются с помощью подсистемы DPAPI, и их можно получить в незашифрованном виде.

В диспетчере учетных данных вы можете также просматривать, редактировать и добавлять информацию. На системах Windows Vista и выше диспетчер доступен в Control Panel\User Accounts and Family Safety\Credential Manager или Control Panel\User Accounts and Family Safety\User Accounts \\Manage your credentials (Панель управления\Учетные записи пользователей\Администрирование учетных записей).

Для схожих целей в Windows существует Защищенное хранилище (Protected Storage). Приложения типа Internet Explorer и Outluook Express сохраняют в защищенном хранилище пароли от почтовых учетных записей; почтовые пароли шифруются с помощью CryptoAPI, причем ключ шифрования генерируется из пользовательского пароля, следовательно, почтовые пароли также можно получить в незашифрованном виде.

Сторонние программы (Chrome, RealVNC Client, Thunderbird и др.) сохраняют пароли от web-сайтов разными способами: некоторые в реестре, другие с помощью Windows API сохраняют их в диспетчере учетных записей или в защищенном хранилище, третьи хранят пароли в файлах. Но в независимости от того, какой именно способ используется программой, пароли хранятся в обратимом виде, и, значит, у нас есть возможность получить незашифрованные пароли от сайтов.

Получение информации из диспетчера учетных записей

Способы взаимодействия с диспетчером учетных данных документированы Microsoft и применены в некоторых утилитах, позволяющих слить информацию из диспетчера.

В первую очередь я рекомендую Network Password Recovery (netpass) от NirSoft. Утилита работает стабильно и представляет собой самостоятельный EXE-файл. Убедитесь, что на 64-разрядных архитектурах вы запускаете 64-разрядную версию программы.

Cain & Abel также может успешно слить информацию из диспетчера учетных данных. Единственная проблема заключается в том, что утилита работает только локально, и поэтому, если на целевой системе прав устанавливать программное обеспечение у вас нет, лучше утилиту не использовать.

Также рекомендую Network Password Recovery (не путать с одноименной утилитой от NirSoft) от Passcape. Но имейте в виду, что пробная версия показывает только три первых символа полученных паролей.

Не следует использовать пост-эксплойт модуль windows/gather/credentials/enum_cred_store из фреймворка Metasploit, так как модуль всегда завершается аварийно, вне зависимости от версии Windows.

Получение информации из защищенного хранилища

Первое место отдаю Protected Storage PassView (pspv) от NirSoft. Утилита работает стабильно и представляет собой самостоятельный EXE-файл.

Еще одна рекомендуемая утилита (в действительности пакет утилит) – это carrot.

А вот утилита fgdump в данном случае неэффективна, ее использовать не советую.

Получение учетных данных из сторонних программ

NirSoft предлагает широкий выбор утилит для получения учетных данных из стороннего программного обеспечения. Многие из этих утилит объединены в самостоятельный EXE-файл, carrot.

Также если удалось запустить Meterpreter на целевой системе, то вам очень пригодятся фреймворк Metasploit: во фреймворке есть несколько пост-эксплойт модулей, специально для таких целей. Некоторые из модулей работают стабильно, а другие пока бета-версии и часто завершаются аварийно.

К каким угрозам ведет получение учетных записей сетевых служб

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

Важный шаг на пути к компрометации всей сети – это получение информации о том, какую роль играет именно захваченная вами машина. Если рабочая станция используется ежедневно, то высоки шансы, что пользователь этой рабочей станции имеет доступ к корпоративной почте, внутренним web-сайтам, корпоративному прокси-серверу и другим службам. И, что еще более вероятно, пользователь везде, где можно выбрал “Запомнить пароль”.

“Бесплатный” доступ к таким корпоративным сервисам даже с правами низкопривилегированного пользователя на самом деле бесценен. Автоматический ввод учетных данных поможет вам расширить контроль в сети, а также показать заказчику, что к защите даже самой незначительной, удаленной от демилитаризованной зоны рабочей станции нужно подходить с особой внимательностью.

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

Описанные в этой статье утилиты я добавил в таблицу. Буду рад вашим отзывам и предложениям!

Наш контент расширяется быстрее Вселенной!

Большой взрыв знаний каждый день в вашем телефоне

Подпишитесь, пока мы не вышли за горизонт событий