T1003.001: Память процесса LSASS

Злоумышленники могут попытаться получить доступ к учетным данным, хранящимся в памяти процесса службы проверки подлинности локальной системы безопасности (LSASS). После входа пользователя система генерирует и сохраняет в памяти процесса LSASS различные учетные данные. Эти учетные данные могут быть получены пользователем с администраторскими полномочиями или от имени учетной записи SYSTEM и применяться для перемещения внутри периметра с использованием альтернативных сущностей для аутентификации.

Помимо работы непосредственно в памяти, дамп памяти процесса LSASS может быть снят с целевого хоста и проанализирован на локальной системе.

Например, на целевом хосте может быть использована утилита ProcDump:

  • procdump -ma lsass.exe lsass_dump

А локально — Mimikatz:

  • sekurlsa::Minidump lsassdump.dmp
  • sekurlsa::logonPasswords

Также могут использоваться встроенные средства Windows, такие как comsvcs.dll:

  • rundll32.exe C:\Windows\System32\comsvcs.dll MiniDump PID lsass.dmp full.

Аналогично технике Внедрение в IFEO может быть использован механизм тихого завершения процесса (silent exit) для создания дампа памяти lsass.exe через службу регистрации ошибок Windows (WerFault.exe).

При запуске системы в процесс LSASS загружаются DLL-библиотеки поставщиков поддержки безопасности (Windows Security Support Provider, или SSP). После загрузки в LSA DLL-библиотеки SSP получают доступ к хранящимся в Windows зашифрованным и незашифрованным паролям, например паролям доменов любых вошедших в систему пользователей или PIN-кодам смарт-карт. Конфигурация SSP хранится в двух ключах реестра: HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages и HKLM\SYSTEM\CurrentControlSet\Control\Lsa\OSConfig\Security Packages. Злоумышленник может изменить эти ключи реестра, чтобы добавить новые SSP, которые будут загружаться при следующем запуске системы или при вызове API-функции Windows AddSecurityPackage.

Для доступа к учетным данным могут использоваться следующие SSP:

  • MSV: интерактивный вход, вход для выполнения пакетных заданий и вход от имени службы осуществляются с помощью пакета аутентификации MSV.
  • Wdigest: протокол дайджест-аутентификации используется при обмене данными по протоколу Hypertext Transfer Protocol (HTTP) и в фреймворке Simple Authentication Security Layer (SASL).
  • Kerberos: предпочитаемый вариант для взаимной клиент-серверной аутентификации в домене в Windows 2000 и более поздних версиях.
  • CredSSP: обеспечивает единый вход (SSO) и проверку подлинности на уровне сети для служб удаленных рабочих столов.

Какие продукты Positive Technologies покрывают технику

Экспертиза MaxPatrol SIEM

process_chains_and_logons: PT-CR-912: LSASS_Memory_Dump_Via_Migrated_Process: Получен дамп памяти процесса lsass.exe через мигрированный процесс mitre_attck_cred_access: PT-CR-303: Comsvcs_Minidump_Usage: Пользователь сохранил информацию процесса lsass через библиотеку comsvcs.dll mitre_attck_cred_access: PT-CR-1078: Kekeo_Credentials_Relay_Via_NTLM: Обнаружено возможное использование утилиты kekeo, чтобы получить дамп учетных данных mitre_attck_cred_access: PT-CR-2494: Subrule_LetMeowIn_LSASS_Dump: Получение доступа к копии процесса lsass.exe, созданной путем дублирования существующего дескриптора lsass.exe. Это может свидетельствовать о попытке сохранить память созданной копии в отдельный файл mitre_attck_cred_access: PT-CR-297: Abusing_CredSSP: Изменены параметры CredSSP для использования менее безопасных алгоритмов проверки подлинности пользователя mitre_attck_cred_access: PT-CR-770: LSASS_DLL_Injection: Внедрена библиотека в процесс сервиса проверки подлинности локальной системы безопасности (LSASS). После входа пользователя в систему система создает различные учетные данные и хранит их в памяти процесса LSASS mitre_attck_cred_access: PT-CR-771: LSASS_Dump_Via_SilentProcessExit: Возможное создание дампа памяти процесса lsass.exe с помощью SilentProcessExit mitre_attck_cred_access: PT-CR-1079: Subrule_NTLM_Logon: По двум связкам событий обнаружено использование утилиты kekeo mitre_attck_cred_access: PT-CR-2495: LSASS_Handle_Duplicate: Дублирование существующего дескриптора процесса lsass.exe и получение доступа к созданной копии. Это может свидетельствовать о попытке создать копию процесса lsass.exe для сохранения его памяти в отдельный файл mitre_attck_cred_access: PT-CR-774: MalSecLogon_LSASS_Dump: Обнаружено создание дампа памяти процесса lsass.exe с помощью службы Seclogon mitre_attck_cred_access: PT-CR-764: AvDump_LSASS_Dump: Обнаружено создание дампа памяти процесса lsass.exe с помощью утилиты AvDump mitre_attck_cred_access: PT-CR-915: Subrule_LSASS_For_DragonCastle: Процесс lsass.exe загрузил подозрительную библиотеку и изменил раздел системного реестра mitre_attck_cred_access: PT-CR-917: Subrule_Shares_For_DragonCastle: Обнаружены последовательные подключения к сетевым ресурсам mitre_attck_cred_access: PT-CR-1768: PPLmedic_Process_Dump: Сохранение информации процесса с помощью PPLmedic mitre_attck_cred_access: PT-CR-565: LSASS_Memory_Dump: Прочитана информация процесса LSASS mitre_attck_cred_access: PT-CR-2313: MultiDump_LSASS_Dump: Использована утилита MultiDump с целью создания дампа памяти процесса LSASS без предупреждений Windows Defender mitre_attck_cred_access: PT-CR-2496: LetMeowIn_LSASS_Dump: Возможное использование утилиты LetMeowIn, чтобы сохранить память процесса lsass.exe для извлечения паролей или NTLM-хешей. Утилита создает копию процесса lsass.exe путем дублирования его дескриптора mitre_attck_cred_access: PT-CR-564: LSASS_Dump_Via_TaskManager: Создан дамп памяти процесса lsass mitre_attck_cred_access: PT-CR-767: Failed_LSASS_Injection: Обнаружена перезагрузка системы из-за процесса lsass.exe mitre_attck_cred_access: PT-CR-776: PPLdump_Usage: Подозрительная цепочка процессов получила доступ к процессу LSASS. Это может указывать на использование вредоносной утилиты PPLdump mitre_attck_cred_access: PT-CR-2124: LSASS_Dump_Via_RPC: Обращение к памяти процесса LSASS. Получив доступ к памяти процесса LSASS после подключения соответствующей утилиты (например, Mimikatz) к RPC-серверу, злоумышленники могут сохранить эту память в отдельный файл для извлечения из него в дальнейшем паролей и NTLM-хешей mitre_attck_cred_access: PT-CR-1720: PPLFault_Process_Dump: Сохранение информации процесса с помощью PPLFault mitre_attck_cred_access: PT-CR-311: Remote_Password_Dump: Удаленный доступ к SAMR, WINREG, SVCCTL и C:\Windows\system32 в течение 90 секунд после проверки подлинности пользователя mitre_attck_cred_access: PT-CR-775: Physmem2profit_LSASS_Dump: Обнаружено использование инструмента Physmem2profit для создания дампа памяти процесса lsass.exe mitre_attck_cred_access: PT-CR-1769: Subrule_PPLmedic_DllLoad: Утилита PPLmedic внедрила в реестр файл DDL mitre_attck_cred_access: PT-CR-1767: Subrule_PPLmedic_WerFaultSecure: Аномальное создание файла процессом WerFaultSecure mitre_attck_cred_access: PT-CR-567: ProcDump_Usage: Информация процесса LSASS сохранена с помощью утилиты ProcDump mitre_attck_cred_access: PT-CR-1206: LSASS_Shtinkering_Dump: Обнаружено создание дампа с помощью процесса WerFault.exe mitre_attck_cred_access: PT-CR-1074: Create_Remote_Thread_Into_LSASS: Создан поток в адресном пространстве процесса lsass.exe mitre_attck_cred_access: PT-CR-544: LSASS_Memory_Access_SubRule: Попытка получить доступ к данным процесса LSASS.exe mitre_attck_cred_access: PT-CR-1205: DragonCastle_LSASS_Dump: Информация о ключах пользователей извлечена с помощью утилиты DragonCastle mitre_attck_cred_access: PT-CR-2311: Subrule_LOLBins_LSASS_Dump: Легитимный процесс LOLBins обратился к содержимому памяти процесса LSASS или сохранил его в файл mitre_attck_cred_access: PT-CR-1766: Subrule_PPLmedic_Svchost: Аномальное создание файла процессом svchost mitre_attck_cred_access: PT-CR-772: LSASS_PSSCapture_Snapshot: Обнаружено создание копии процесса lsass.exe mitre_attck_cred_access: PT-CR-1077: Failed_DefaultCredentials_Delegation: Обнаружена неудачная попытка разрешить передачу учетных данных, установленных по умолчанию mitre_attck_lateral_movement: PT-CR-1372: Remote_SSP_Dump: Использование скрипта из измененного набора инструмента Impacket, позволяющего удаленно сделать дамп памяти процесса lsass hacking_tools: PT-CR-758: Lazagne_Usage: Обнаружено использование утилиты LaZagne для создания дампа учетных данных hacking_tools: PT-CR-585: Impacket_Secretsdump: Обнаружено использование утилиты Secretsdump из набора Impacket hacking_tools: PT-CR-747: Cobalt_Strike_DumpHashes: Создан дамп памяти процесса LSASS с помощью программного обеспечения Cobalt Strike mitre_attck_defense_evasion: PT-CR-773: LSASS_SilentProcessExit_Keys: Созданы разделы реестра для дампа памяти процесса lsass.exe с помощью SilentProcessExit mitre_attck_defense_evasion: PT-CR-313: WDigest_Enable: Включен метод проверки подлинности WDigest mitre_attck_execution: PT-CR-954: Tttracer_LOLBin: Обход средств защиты с помощью tttracer.exe

Способы обнаружения

IDDS0017Источник и компонент данныхКоманда: Выполнение командОписание

Отслеживайте выполнение команд с аргументами, которые могут использоваться для получения доступа к учетным данным, хранящимся в памяти процесса службы проверки подлинности локальной системы безопасности (LSASS). Работая со средствами удаленного доступа, злоумышленники могут использовать их встроенные функции или интегрировать их с имеющимися инструментами, например Mimikatz. Некоторые сценарии PowerShell также позволяют создавать дампы учетных данных, например модуль PowerSploit Invoke-Mimikatz. Для сбора данных о работе этого модуля и их последующего анализа может потребоваться дополнительная настройка функций журналирования.

Примечание. При запуске блоков сценариев PowerShell в журнале Microsoft-Windows-PowerShell/Operational генерируется событие с идентификатором 4104, в которое записывается содержимое этих блоков; анализ этих событий может показать, использовались ли блоки для создания дампа LSASS.

IDDS0024Источник и компонент данныхРеестр Windows: Изменение ключа реестра WindowsОписание

Отслеживайте изменения в записях реестра, связанных с доступом к учетным данным, которые хранятся в памяти процесса LSASS. Например, злоумышленники могут изменять файлы SAM и SYSTEM.

IDDS0028Источник и компонент данныхСеанс входа в систему: Создание сеанса входа в системуОписание

Отслеживайте попытки входа в систему с использованием учетных данных, извлеченных из памяти процесса LSASS. Например, отслеживайте в системе действия, похожие на работу инструмента Secretsdump, которые не были инициированы контроллером домена.

IDDS0022Источник и компонент данныхФайл: Создание файлаОписание

Отслеживайте нетипичное создание дампов памяти для процесса LSASS (lsass{*}.dmp).

IDDS0009Источник и компонент данныхПроцесс: Вызовы API ОСОписание

Отслеживайте вызовы API, с помощью которых злоумышленники могут попытаться получить доступ к учетным данным, хранящимся в памяти процесса службы проверки подлинности локальной системы безопасности (LSASS). Для дампа процесса LSASS могут применяться такие вызовы API ОС, как OpenProcess и MiniDumpWriteDump. Выполнение этих функций может вызвать появление событий с идентификатором 4663 в журналах безопасности (Microsoft Security Auditing) и событий с идентификатором 10 (Microsoft Sysmon).

Примечание. Большинство инструментов EDR не поддерживают прямой мониторинг вызовов API, так как конечная система генерирует их слишком много. Однако они могут создавать оповещения или события на основе абстракции вызовов API ОС. Для отслеживания процедуры выполнения (включая вызовы API ОС) отдельного PE-бинарного файла можно использовать инструменты динамического анализа вредоносного ПО (то есть песочницы).

IDDS0009Источник и компонент данныхПроцесс: Создание процессаОписание

Отслеживайте запуск новых процессов, которые могут указывать на создание дампа учетных данных. В журналах Windows 8.1 и Windows Server 2012 R2 проверяйте, был ли процесс lsass.exe запущен как защищенный процесс. По возможности отслеживайте события Sysmon с идентификатором 1 и (или) события безопасности Windows с идентификатором 4688 на предмет активности процессов.

Примечание. В отличие от Procdump, в синтаксисе командной строки Rundll32/MiniDump вместо имени процесса, дамп которого нужно создать, используется его идентификатор. И поскольку идентификатор процесса LSASS является недетерминированным, обнаружение файла MiniDump не всегда указывает на создание дампа LSASS. Чтобы снизить количество ложных срабатываний, может потребоваться дополнительная настройка инструментов. Выполняя мониторинг функций DLL в командной строке, всегда проверяйте порядковый номер функции.

Аналитика 1. Procdump

(source=WinEventLog:"*Security" EventCode="4688") OR (source=WinEventLog:"*Microsoft-Windows-Sysmon/Operational" EventCode="1") AND Image="procdump*.exe" | where CommandLine LIKE "%lsass%"

Аналитика 2. Создание MiniDump через rundll32

(source=WinEventLog:"*Security" EventCode="4688") OR (source=WinEventLog:"*Microsoft-Windows-Sysmon/Operational" EventCode="1") AND Image="\*rundll32.exe" | where CommandLine LIKE "%comsvcs.dll MiniDump%" OR CommandLine="_comsvcs.dll,#24")

IDDS0009Источник и компонент данныхПроцесс: Обращение к процессуОписание

Отслеживайте взаимодействие нетипичных процессов с lsass.exe. Программы для создания дампа учетных данных, такие как Mimikatz, обращаются к этому процессу, определяют местоположение ключа секретов LSA и расшифровывают разделы памяти, в которых хранятся учетные данные. Такие программы также могут использовать методы отраженного внедрения кода в процессы, чтобы скрыть возможные индикаторы вредоносной активности.

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

Примечание. События обращения к процессу в Sysmon (с идентификатором 10) могут генерировать большое количество ложных срабатываний. Чтобы сократить их число, требуется изменить файл конфигурации Sysmon. Рекомендуется использовать подход, аналогичный реализованному в проекте Sysmon Modular Configuration (https://github.com/olafhartong/sysmon-modular), и отфильтровывать безопасные процессы, которые генерируют много событий обращения к процессам.

Значение GrantedAccess в приведенной ниже аналитике использования Mimikatz выбрано исключительно для иллюстрации метода детектирования обращения Mimikatz к LSASS. В реальной среде значения GrantedAccess могут изменяться с выходом новых версий Mimikatz, поэтому специалистам по обнаружению следует всегда проверять актуальность значений GrantedAccess, используемых в аналитиках.

Аналитика 1. Mimikatz

(source=WinEventLog:"Microsoft-Windows-Sysmon/Operational" EventCode="10" AND TargetImage= "lsass.exe" AND (GrantedAccess=0x1410 OR GrantedAccess=0x1010 OR GrantedAccess=0x1438 OR GrantedAccess=0x143a OR GrantedAccess=0x1418) CallTrace="C:\windows\SYSTEM32\ntdll.dll+|C:\windows\System32\KERNELBASE.dll+20edd|UNKNOWN()")

Аналитика 2. Procdump

((sourceType=WinEventLog:"*Microsoft-Windows-Sysmon/Operational" EventCode="10") AND TargetImage= "*lsass.exe" AND SourceImage= "*procdump.exe")

Аналитика 3. Диспетчер задач Windows

((sourceType=WinEventLog:"*Microsoft-Windows-Sysmon/Operational" EventCode="10") AND TargetImage="*lsass.exe" AND SourceImage= "c:\windows*\taskmgr.exe")

Меры противодействия

IDM1017НазваниеОбучение пользователейОписание

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

IDM1025НазваниеЦелостность привилегированных процессовОписание

В Windows 8.1 и Windows Server 2012 R2 включите функцию Protected Process Light для LSA.

IDM1026НазваниеУправление привилегированными учетными записямиОписание

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

IDM1027НазваниеПарольные политикиОписание

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

IDM1028НазваниеИзменение конфигурации ОСОписание

По возможности отключите или ограничьте NTLM. По возможности отключите аутентификацию WDigest.

IDM1040НазваниеПредотвращение некорректного поведенияОписание

Включите правила Attack Surface Reduction (ASR) в Windows 10 для защиты LSASS и предотвращения кражи учетных данных .

IDM1043НазваниеЗащита от получения учетных данныхОписание

В Windows 10 компания Microsoft внедрила новое средство защиты под названием Credential Guard для защиты секретов LSA, которые могут быть использованы для получения учетных данных с помощью форм сброса учетных данных. Оно не настроен по умолчанию и имеет системные требования к аппаратному обеспечению и прошивке системы. Оно также защищает не от всех форм дампинга учетных данных.