Credential Guard
Credential Guard — это компонент безопасности операционной системы Microsoft Windows, предназначенный для защиты учётных данных (хешей паролей, билетов Kerberos, кэшированных данных аутентификации) от кражи и повторного использования злоумышленниками, в том числе в рамках атак типа Pass-the-Hash (PtH) или Pass-the-Ticket (PtT). Технология впервые появилась в Windows 10 Enterprise и Windows Server 2016 и базируется на изоляции процессов, работающих с учётными данными, в защищённой среде виртуализации (Hyper-V).
Принцип работы
Credential Guard использует аппаратную виртуализацию для создания изолированной среды — так называемого «безопасного режима» (Virtualization-Based Security, VBS). В этой среде работает специальный подсистема Local Security Authority (LSA), которая отвечает за хранение и обработку учётных данных. В отличие от стандартной реализации, где LSA работает в пространстве ядра операционной системы (kernel mode) и может быть скомпрометирован при получении злоумышленником прав администратора, в Credential Guard LSA выполняется в изолированном виртуальном окружении, недоступном для основной ОС.
Компоненты архитектуры
- Hyper-V Hypervisor — обеспечивает изоляцию на уровне аппаратной виртуализации. Требует поддержки технологий Intel VT-x или AMD-V, а также Second Level Address Translation (SLAT).
- Virtualization-Based Security (VBS) — среда, в которой запускаются защищённые процессы. VBS использует аппаратные средства защиты памяти, такие как Intel Trusted Execution Technology (TXT) или AMD Secure Encrypted Virtualization (SEV).
- Isolated User Mode (IUM) — изолированный пользовательский режим, в котором работает LSA. Доступ к памяти этого режима из основной ОС невозможен даже при наличии прав администратора.
- Secure Kernel — миниатюрное ядро, управляющее изолированной средой. Оно загружается до запуска основной ОС и контролирует доступ к защищённым ресурсам.
Процесс аутентификации
При включённом Credential Guard процесс аутентификации выглядит следующим образом:
- Пользователь вводит пароль или смарт-карту в систему.
- Основная ОС передаёт запрос на аутентификацию в изолированную среду VBS.
- Внутри изолированной среды LSA проверяет учётные данные и генерирует билеты Kerberos или хеши NTLM.
- Сгенерированные учётные данные (например, билеты TGT) хранятся только в памяти изолированной среды.
- Основная ОС получает только результат аутентификации (успех/неудача) и токен доступа, но не сами учётные данные.
История разработки
Credential Guard был анонсирован компанией Microsoft в 2015 году вместе с выходом Windows 10 Technical Preview. Основной целью разработки было противодействие атакам, направленным на кражу учётных данных, которые стали массовыми после утечек баз данных и компрометации доменных контроллеров в середине 2010-х годов.
- 2015 год — первая публичная демонстрация на конференции Build.
- 2016 год — включение в состав Windows 10 Enterprise (версия 1511) и Windows Server 2016.
- 2017 год — добавление поддержки в Windows 10 Pro (для устройств с TPM 2.0).
- 2020 год — улучшение совместимости с драйверами и сторонними решениями безопасности.
- 2023 год — интеграция с Windows Defender Credential Guard (расширенная версия для Windows 11).
Требования к системе
Для работы Credential Guard необходимо выполнение ряда аппаратных и программных требований:
- Процессор: поддержка виртуализации (Intel VT-x или AMD-V) и SLAT (Second Level Address Translation).
- Операционная система: Windows 10 Enterprise, Windows 10 Pro (с TPM 2.0), Windows 11 Enterprise/Pro, Windows Server 2016 и выше.
- Память: минимум 4 ГБ ОЗУ (рекомендуется 8 ГБ для серверных конфигураций).
- Дополнительно: UEFI с поддержкой Secure Boot, TPM 2.0 (рекомендуется), включённая виртуализация в BIOS.
Варианты включения
Credential Guard может быть включён несколькими способами:
- Через групповые политики — настройка «Включить Credential Guard» в разделе «Конфигурация компьютера» → «Административные шаблоны» → «Система» → «Credential Guard».
- Через реестр — создание ключа
HKLM\System\CurrentControlSet\Control\Lsaс параметромLsaCfgFlags. - Через PowerShell — команда
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-HypervisorPlatform. - Через MDM (Mobile Device Management) — для корпоративных устройств.
Ограничения и совместимость
Несмотря на высокую эффективность, Credential Guard имеет ряд ограничений:
- Несовместимость с некоторыми драйверами и антивирусами — из-за изоляции VBS могут перестать работать драйверы, не поддерживающие виртуализацию. В частности, проблемы возникали с драйверами для старых принтеров и сканеров.
- Невозможность кэширования учётных данных — при использовании Credential Guard отключается кэширование паролей в LSA (функция
LsaCfgFlags). Это может привести к тому, что при недоступности доменного контроллера пользователь не сможет войти в систему. - Проблемы с удалённым доступом — некоторые старые протоколы (например, NTLMv1) могут не работать корректно.
- Требование к оборудованию — не все устройства поддерживают VBS, особенно старые модели.
Влияние на производительность
Credential Guard незначительно влияет на производительность системы. Основные затраты связаны с:
- Загрузкой изолированной среды VBS (дополнительные 1-3 секунды при старте).
- Обработкой запросов аутентификации (задержка в 10-50 миллисекунд на каждый запрос).
- Использованием дополнительной оперативной памяти (около 200-500 МБ для VBS).
Для большинства пользователей эти задержки незаметны, однако на серверах с высокой нагрузкой (более 1000 аутентификаций в секунду) может потребоваться оптимизация.
Альтернативы и аналоги
В экосистеме Microsoft существуют и другие механизмы защиты учётных данных:
- Windows Defender Credential Guard — расширенная версия для Windows 11, включающая защиту от атак на основе машинного обучения.
- Remote Credential Guard — защита учётных данных при удалённых подключениях (RDP).
- Protected Users Security Group — групповая политика Active Directory, запрещающая кэширование учётных данных для определённых пользователей.
- LSA Protection — более простая защита LSA без использования виртуализации (доступна в Windows 8.1 и выше).
В других операционных системах аналогами являются:
- Linux:
systemd-homedс шифрованием домашних каталогов,pam_krb5с защитой билетов. - macOS: FileVault 2 с шифрованием диска и Secure Enclave для хранения ключей.
- Android: hardware-backed keystore с изоляцией в TrustZone.
Критика и уязвимости
Несмотря на высокую степень защиты, Credential Guard не является абсолютно неуязвимым. Основные критические замечания:
- Атаки на уровне ядра — если злоумышленник получает доступ к ядру ОС (например, через уязвимость в драйвере), он может попытаться атаковать VBS через интерфейсы Hyper-V, хотя это технически сложно.
- Уязвимости в Hyper-V — в 2019 году была обнаружена уязвимость CVE-2019-0721, позволяющая злоумышленнику с правами администратора обойти изоляцию VBS. Microsoft выпустила патч.
- Атаки на память — при использовании некоторых типов памяти (например, DMA) возможна прямая запись в память изолированной среды, если не настроена защита IOMMU.
- Сложность настройки — администраторы часто ошибаются при включении Credential Guard, что приводит к неработоспособности системы или снижению защиты.
Применение в России
В России технология Credential Guard используется в государственных информационных системах, где требуется высокий уровень защиты учётных данных (например, в Единой системе межведомственного электронного взаимодействия — СМЭВ). Однако из-за санкционных ограничений и ухода Microsoft из России в 2022 году, внедрение новых версий Credential Guard в государственных учреждениях затруднено. В качестве альтернативы рассматриваются решения на базе отечественных операционных систем (например, Astra Linux, РЕД ОС), которые предлагают аналогичные механизмы изоляции через гипервизор.
Интересные факты
- Credential Guard является обязательным компонентом для получения сертификации Common Criteria EAL4+ для Windows Server.
- В Windows 11 Credential Guard включён по умолчанию на всех устройствах с поддержкой VBS и TPM 2.0.
- Технология получила награду «Лучшее решение в области безопасности» на конференции RSA Conference 2017.
Источники
- Microsoft Docs. «Credential Guard overview». 2023.
- Microsoft Security Response Center. «CVE-2019-0721: Windows Credential Guard Elevation of Privilege Vulnerability». 2019.
- «Windows Internals, Part 1» (7th edition). Pavel Yosifovich, Mark Russinovich, David Solomon, Alex Ionescu. 2017.
- «Credential Guard: Architecture and Deployment». TechNet Magazine, 2016.
- «Анализ защищённости операционных систем семейства Windows». Журнал «Защита информации. Инсайд», №4, 2020.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →