Local Security Authority Process (lsass.exe)¶
Local Security Authority Process (lsass.exe) — системный процесс операционной системы Microsoft Windows, отвечающий за проверку подлинности пользователей, применение политик безопасности и управление локальными правами доступа. Процесс запускается автоматически при старте Windows и работает от имени учётной записи SYSTEM. Является неотъемлемым компонентом подсистемы безопасности Windows NT и присутствует во всех современных версиях ОС — от Windows 2000 до Windows 11.
¶Назначение и функции
LSASS выполняет ряд критически важных задач:
- Проверка подлинности. Обрабатывает учётные данные пользователей при входе в систему, проверяя пароли, билеты Kerberos и одноразовые коды многофакторной аутентификации.
- Управление политиками безопасности. Применяет локальные политики аудита, паролей и блокировки учётных записей.
- Формирование токенов доступа. После успешной аутентификации формирует токен безопасности, содержащий идентификаторы пользователя, группы и привилегии, который затем используется всеми запущенными процессами.
- Кэширование учётных данных. Хранит в памяти хэши паролей и билеты Kerberos, что позволяет пользователю работать при временной недоступности контроллера домена.
- Поддержка CredSSP и DPAPI. Участвует в протоколах защищённого передания учётных данных и в защищённом хранилище паролей (Data Protection API).
¶Устройство и архитектура
LSASS реализован в виде исполняемого файла %SystemRoot%\System32\lsass.exe и загружает собственные модули-провайдеры аутентификации:
| Модуль | Назначение |
|---|---|
| msauth.dll | Аутентификация Microsoft (NTLM) |
| mskerberos.dll | Протокол Kerberos |
| mscldap.dll | Аутентификация через LDAP |
| schannel.dll | TLS/SSL-аутентификация |
При старте системы LSASS инициализирует Security Account Manager (SAM) для работы с локальными базами учётных записей и, в домене, подключается к Active Directory через LSASRV. Процесс взаимодействует с Winlogon при входе пользователя и с LSA Server, который реализует серверную часть подсистемы локальной безопасности.
¶Взаимодействие с другими компонентами
LSASS плотно интегрирован с другими подсистемами Windows:
- Winlogon — передаёт LSASS учётные данные при входе в систему через интерфейс Gina (в современных версиях — через Credential Provider).
- Kerberos KDC — в домене LSASS выступает клиентом и локальным компонентом службы KDC, обрабатывая запросы TGT и service-билетов.
- Windows Credential Guard — при включённой виртуализации безопасности хэши паролей изолируются в отдельной виртуальной машине, защищая их от чтения из основного ОС-окружения.
- NTLM — при недоступности домена LSASS обрабатывает проверку NTLM-хэшей локально или пересылает их на контроллер.
¶Проблемы безопасности
Из-за того, что LSASS хранит в памяти хэши паролей и билеты Kerberos, процесс является основной целью атакующих, стремящихся получить учётные данные.
¶Mimikatz и извлечение хэшей
Инструмент Mimikatz, созданный французским исследователем Бенжаменом Дельпом, позволяет извлекать из памяти LSASS NTLM-хэши и билеты Kerberos. Для этого требуется повышение привилегий на целевой машине. Извлечённые хэши могут использоваться для перемещения по сети (pass-the-hash), а билеты Kerberos — для атак pass-the-ticket.
¶Атаки на LSASS
- Прямые атаки на память. Чтение памяти процесса через средства Windows (например,
comsvcs.dllMiniDump) или внешние утилиты. - Отказ в обслуживании. Принудительное завершение LSASS приводит к немедленной перезагрузке системы (в Windows Vista и новее) — это свойство иногда используется вредоносным ПО для затруднения анализа.
- Инъекции кода. Загрузка вредоносной DLL в адресное пространство LSASS для перехвата процесса аутентификации.
¶Меры защиты
Microsoft внедрил ряд защитных механизмов:
- Credential Guard (Windows 10 Enterprise) — изолирует секреты в виртуальной машине Hyper-V.
- Protected Process Light (PPL) — LSASS запускается как защищённый процесс, что ограничивает доступ к его памяти даже для процессов с правами администратора.
- LsaCfgFlags — принудительная активация Credential Guard через реестр.
- Аудит LSASS — возможность включения расширенного аудита доступа к процессу через политику безопасности.
- Рекомендации по настройке — ограничение удалённого доступа, включение LAPS для локальных администраторов, сегментация сети.
¶Диагностика и управление
Диспетчер задач Windows отображает LSASS как «Процесс системы локальной безопасности» (Local Security Authority Process). Нормальная потребление памяти процессом — от 10 до 50 МБ; резкий рост может указывать на утечку памяти или вредоносную активность. Остановить LSASS средствами диспетчера задач невозможно — система завершит работу. Для диагностики используются средства Process Monitor, Process Explorer и журналы Windows Event Log (Security-SLA).
¶Интересные факты
- В ранних версиях Windows NT проверка подлинности выполнялась в режиме ядра, а LSASS был вынесен в пользовательское пространство для повышения устойчивости системы.
- Имя процесса lsass.exe часто имитируется вредоносным ПО (например,
lsass.exeс дополнительными символами или в других каталогах) — это один из признаков компрометации. - В Windows Server Core LSASS работает с минимальным набором модулей, что снижает поверхность атаки.
¶Источники
- Документация Microsoft Learn: Local Security Authority
- Документация Microsoft Learn: Credential Guard
- Delphi B. Mimikatz — официальный репозиторий проекта
- Russinovich M., Solomon D., Ionescu A. Windows Internals, Part 1. Microsoft Press
