DeadMatter позволяет извлекать учётные данные, NTLM-хэши и секреты DPAPI из дампов оперативной памяти.

На проектах нередко встречаются среды, защищённые серьёзными EDR-решениями или антивирусами. Казалось бы, получить права администратора на машине — уже половина дела. Но многие современные защитные решения устроены так, что даже локальный или доменный админ не может просто взять и выключить их. Управление ими ведётся централизованно — с отдельной системы, которая зачастую вообще не входит в домен. По сути, это командный центр — чем-то напоминающий C2-сервер. Отсюда администраторы раскатывают обновления, запускают скрипты и выполняют команды на всех целевых устройствах, где стоит агент.
В хорошо выстроенных инфраструктурах такие системы намеренно отделены от основного домена. Они могут размещаться на Linux-серверах или изолированных Windows-машинах с уникальными УЗ. Сделано это специально, чтобы атакующий, уже пробравшийся во внутреннюю сеть, не мог двигаться дальше. Вдобавок доступ к консолям управления, как правило, закрыт веб-интерфейсом с дополнительной аутентификацией — очередной слой защиты.
Ситуация может казаться патовой. Ты внутри сети, возможностей для эскалации мало, а защита не отключается и не обходится в лоб. В таких случаях стоит сменить подход: не бороться с защитой напрямую, а сосредоточиться на ее обходе. Один из самых рабочих способов — снять дамп системной памяти и покопаться в нём в поисках учётных данных.
Подпишись на наши каналы в телеграме и в Max, там ты найдешь огромное количество качественного контента, без инфошума и воды!
Что такое DeadMatter
DeadMatter — специализированный инструмент, написанный на C#, предназначенный для извлечения чувствительных данных из дампов памяти. Его главное преимущество — способность восстанавливать учётные данные из различных типов файлов, связанных с памятью, без использования традиционных методов «живого» извлечения, которые современные защитные решения, как правило, блокируют. Инструмент сканирует сырые данные в поисках паттернов, характерных для учётных данных. Это позволяет восстанавливать информацию даже в тех случаях, когда дамп памяти неполный или не соответствует предсказуемому формату.
Современные EDR и антивирусные решения весьма эффективно обнаруживают попытки напрямую снять дамп процесса LSASS. Подобные действия либо блокируются, либо немедленно фиксируются как подозрительные. Альтернативный подход — снять полный дамп памяти и выгрузить его для офлайн-анализа. В результате можно получить NTLM-хэши паролей, ключи DPAPI и другие артефакты, связанные с активными сеансами входа в систему.
Компиляция DeadMatter
Репозиторий DeadMatter не содержит предварительно скомпилированного бинарного файла, а значит придётся собирать его самостоятельно. Это можно сделать либо через Visual Studio, либо с помощью .NET Framework.
Процесс сборки через PowerShell:
PS > dotnet build -c release

Скомпилированный исполняемый файл Deadmatter.exe будет находиться в директории binRelease. Процесс сборки, как правило, завершается без проблем при условии корректной установки необходимых .NET компонентов.
Если вы предпочитаете не компилировать инструмент самостоятельно или столкнулись с проблемами в процессе сборки, использование предварительно скомпилированной версии позволит сэкономить время. Скомпилированный исполняемый файл можно найти тут (https://github.com/soupbone89/Compiled-Binaries/tree/main/DeadMatter).
Прежде чем двигаться дальше, важно понять ключевое ограничение данного подхода. Описываемая техника основана на возможности извлечения учётных данных из памяти, что существенно зависит от состояния Credential Guard. Если Credential Guard включён, многие чувствительные структуры учётных данных защищены и изолированы, что делает их недоступными через традиционные методы анализа памяти.
Во многих реальных средах, особенно в Windows 10 Pro или Windows Server до 2025, Credential Guard зачастую отключён. Такие системы по-прежнему широко используются в корпоративных инфраструктурах, хотя в более свежих версиях он, как правило, включён по умолчанию.
Рекомендуется перед началом работы проверить статус Credential Guard:
PS > Get-CimInstance -ClassName Win32_DeviceGuard -Namespace rootMicrosoftWindowsDeviceGuard

Если результат - отключён (Credential Guard {0}), можно приступать к снятию дампа памяти.
Снятие дампа оперативной памяти
Снятие дампа оперативной памяти может быть выполнено с помощью различных forensic-инструментов. Одним из наиболее простых и доступных вариантов является FTK Imager. В интерфейсе программы присутствует опция «Capture Memory», позволяющая создать полный дамп памяти системы.

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

Следующим шагом является эксфильтрация данных. Современные системы располагают значительным объёмом оперативной памяти. Сервера, как правило, работают с базовым объёмом 16–32 гигабайта, а специализированные системы, такие как сервера Microsoft Exchange, могут иметь существенно больший объём.
Сырой дамп памяти такого размера будет весьма большим, однако сжатие позволяет сократить его объём. Дамп размером 32 гигабайта может быть сжат до 8–12 ГБ, что делает его более удобным для передачи.
Извлечение учётных данных
После успешной передачи следующим шагом является извлечение учётных данных. Для обработки полного дампа памяти в формате raw, можно выполнить следующую команду:
PS > Deadmatter.exe -f memory_dump.raw

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

DeadMatter также поддерживает альтернативные режимы работы, позволяющие сосредоточиться на конкретных техниках извлечения. Например, можно указать инструменту игнорировать структурированный парсинг и выполнять поиск непосредственно по сырым данным.
PS > Deadmatter.exe -f memory_dump.raw -m carve
В случаях работы с файлом минидампа, инструмент позволяет задать как технику, так и целевую версию Windows.
PS > Deadmatter.exe -f lsass.dmp -m mimikatz -w WIN_10_1507 -v
Также доступны более продвинутые параметры. Например, можно одновременно извлечь учётные данные и ключи DPAPI, выполнив при этом брутфорс.
PS > Deadmatter.exe -f memory_dump.raw -b -d
Методы защиты
Для защиты от таких атак, необходимо включить Credential Guard, который изолирует учётные данные от памяти LSASS для предотвращения их дампа и последующих атак типа pass-the-hash. Полная блокировка всех криминалистических инструментов не является рекомендуемым подходом, поскольку они зачастую необходимы для легитимных DFIR операций. Более эффективным решением является ведение чётко определённого белого списка разрешённых инструментов. Это позволяет однозначно разграничить ожидаемую активность и потенциально несанкционированное или подозрительное поведение.
Заключение
В современных средах средства контроля безопасности, такие как EDR, делают традиционные техники извлечения учётных данных всё более затруднительными. Наличия административного доступа зачастую уже недостаточно для обхода этих защитных механизмов. Сочетая инструменты цифровой криминалистики с наступательной безопасностью, можно извлекать ценную информацию способами, позволяющими избежать обнаружения. Получение дампа памяти легитимными инструментами и автономный анализ представляют собой одну из наиболее эффективных стратегий в подобных ситуациях.
Подпишись на наши каналы в телеграме и в Max, там ты найдешь огромное количество качественного контента, без инфошума и воды!