Дата изменения |
Описание |
---|---|
10/24/2024 |
Обновлен текст для ясности в шаге 2 раздела "Принять меры", в описании "Режим полного принудительного применения" раздела "Временная шкала для обновлений Windows", а также изменены сведения о дате раздела "Раздел реестра центра распространения ключей (KDC) и Раздел реестра для резервного копирования сертификатов" в разделе "Сведения о разделе реестра". |
9/10/2024 |
Изменено описание режима полного принудительного применения в разделе "Время обновления Windows" с учетом новых дат. 11 февраля 2025 г. устройства перейдут в режим принудительного применения, но оставят поддержку, чтобы вернуться в режим совместимости. Полная поддержка разделов реестра будет завершена 10 сентября 2025 г. |
7/5/2024 |
Добавлены сведения о расширении sid в раздел реестра Центра распространения ключей (KDC) в разделе "Сведения о разделе раздела реестра". |
10.10.2023 |
Добавлены сведения об изменениях по умолчанию в разделе "Временная шкала для Windows Обновления" |
6/30/2023 |
Изменена дата полного принудительного применения с 14 ноября 2023 г. на 11 февраля 2025 г. (ранее эти даты были указаны как 19 мая 2023 г. на 14 ноября 2023 г.). |
1/26/2023 |
Изменено удаление режима Отключен с 14 февраля 2023 г. на 11 апреля 2023 г. |
Краткое содержание
CVE-2022-34691, CVE-2022-26931 и CVE-2022-26923 устраняют уязвимость, связанную с повышением привилегий, которая может возникнуть, когда центр распространения ключей Kerberos (KDC) обслуживает запрос на проверку подлинности на основе сертификата. До обновления системы безопасности от 10 мая 2022 г. проверка подлинности на основе сертификата не учитывала знак доллара ($) в конце имени компьютера. Это позволило эмулировать связанные сертификаты (спуфингировать) различными способами. Кроме того, конфликты между именами субъектов-пользователей (UPN) и sAMAccountName ввели другие уязвимости эмуляции (спуфинг), которые мы также устраняем с помощью этого обновления для системы безопасности.
Своевременные действия
Чтобы защитить среду, выполните следующие действия для проверки подлинности на основе сертификата.
-
Обновите все серверы, на которые запущены службы сертификатов Active Directory, и контроллеры домена Windows, обслуживающие проверку подлинности на основе сертификатов, с обновлением от 10 мая 2022 г. (см. раздел Режим совместимости). Обновление от 10 мая 2022 г. будет предоставлять события аудита , определяющие сертификаты, несовместимые с режимом полного принудительного применения.
-
Если в течение месяца после установки обновления на контроллерах домена не создаются журналы событий аудита, продолжайте включать режим полного принудительного применения на всех контроллерах домена. Если к февралю 2025 г. раздел реестра StrongCertificateBindingEnforcement не настроен, контроллеры домена перейдут в режим полного принудительного применения. В противном случае параметр режима совместимости разделов реестра будет по-прежнему учитываться. В режиме полного принудительного применения, если сертификат не удовлетворяет строгим (безопасным) критериям сопоставления (см. раздел Сопоставления сертификатов), проверка подлинности будет отклонена. Однако возможность вернуться в режим совместимости будет оставаться до сентября 2025 г.
События аудита
Обновление Windows от 10 мая 2022 г. добавляет следующие журналы событий.
Не удалось найти надежных сопоставлений сертификатов, и у сертификата не было нового расширения идентификатора безопасности (SID), которое может проверить KDC.
Журнал событий |
Система |
Тип мероприятия |
Предупреждение, если KDC находится в режиме совместимости Ошибка, если KDC находится в режиме принудительного применения |
Источник события |
Kdcsvc |
Идентификатор события |
39 41 (для Windows Server 2008 R2 с пакетом обновления 1 (SP1) и Windows Server 2008 с пакетом обновления 2 (SP2) |
Текст события |
Центр распространения ключей (KDC) обнаружил сертификат пользователя, который был действительным, но не мог быть сопоставлен с пользователем строго (например, с помощью явного сопоставления, сопоставления доверия ключа или идентификатора безопасности). Такие сертификаты следует заменить или сопоставить непосредственно с пользователем с помощью явного сопоставления. Дополнительные сведения см. в https://go.microsoft.com/fwlink/?linkid=2189925. Пользователь: <имя субъекта> Субъект сертификата: <имя субъекта в> сертификата Издатель сертификата: <издателя полное доменное имя (FQDN) > Серийный номер сертификата: <серийный номер> сертификата Отпечаток сертификата: <отпечаток сертификата> |
Сертификат был выдан пользователю до того, как пользователь существовал в Active Directory, и не удалось найти надежное сопоставление. Это событие регистрируется только в том случае, если KDC находится в режиме совместимости.
Журнал событий |
Система |
Тип мероприятия |
Ошибка |
Источник события |
Kdcsvc |
Идентификатор события |
40 48 (для Windows Server 2008 R2 с пакетом обновления 1 (SP1) и Windows Server 2008 с пакетом обновления 2 (SP2) |
Текст события |
Центр распространения ключей (KDC) обнаружил сертификат пользователя, который был действительным, но не мог быть сопоставлен с пользователем строго (например, с помощью явного сопоставления, сопоставления доверия ключа или идентификатора безопасности). Сертификат также предшествовал пользователю, с который он сопоставлен, поэтому он был отклонен. Дополнительные сведения см. в https://go.microsoft.com/fwlink/?linkid=2189925. Пользователь: <имя субъекта> Субъект сертификата: <имя субъекта в> сертификата Издатель сертификата: полное доменное имя издателя <> Серийный номер сертификата: <серийный номер> сертификата Отпечаток сертификата: <отпечаток сертификата> Время выдачи сертификата: <FILETIME> сертификата Время создания учетной записи: <FILETIME объекта-участника в AD> |
Идентификатор безопасности, содержащийся в новом расширении сертификата пользователей, не соответствует идентификатору безопасности пользователей, что означает, что сертификат был выдан другому пользователю.
Журнал событий |
Система |
Тип мероприятия |
Ошибка |
Источник события |
Kdcsvc |
Идентификатор события |
41 49 (для Windows Server 2008 R2 с пакетом обновления 1 (SP1) и Windows Server 2008 с пакетом обновления 2 (SP2) |
Текст события |
Центр распространения ключей (KDC) обнаружил сертификат пользователя, который был действительным, но содержал идентификатор безопасности, отличный от идентификатора безопасности пользователя, с которым он сопоставлен. В результате не удалось выполнить запрос с использованием сертификата. Дополнительные сведения см. в https://go.microsoft.cm/fwlink/?linkid=2189925. Пользователь: <имя субъекта> Идентификатор безопасности пользователя: <идентификатор безопасности> субъекта проверки подлинности Субъект сертификата: <имя субъекта в> сертификата Издатель сертификата: полное доменное имя издателя <> Серийный номер сертификата: <серийный номер> сертификата Отпечаток сертификата: <отпечаток сертификата> Идентификатор безопасности сертификата: <идентификатор безопасности, найденный в новом> расширения сертификата |
Сопоставления сертификатов
Администраторы домена могут вручную сопоставить сертификаты с пользователем в Active Directory с помощью атрибута altSecurityIdentities объекта users. Существует шесть поддерживаемых значений для этого атрибута: три сопоставления считаются слабыми (небезопасными), а остальные три считаются сильными. Как правило, типы сопоставления считаются надежными, если они основаны на идентификаторах, которые нельзя использовать повторно. Поэтому все типы сопоставлений, основанные на именах пользователей и адресах электронной почты, считаются слабыми.
Сопоставление |
Пример |
Type (Тип) |
Замечания |
X509IssuerSubject |
"X509:<I>issuerName<S>SubjectName" |
Слабый |
|
X509SubjectOnly |
"X509:<S>SubjectName" |
Слабый |
|
X509RFC822 |
"X509:<RFC822>user@contoso.com" |
Слабый |
Адрес электронной почты |
X509IssuerSerialNumber |
"X509:<I>IssuerName<SR>1234567890" |
Сильный |
Рекомендуется |
X509SKI |
"X509:<SKI>123456789abcdef" |
Сильный |
|
X509SHA1PublicKey |
"X509:<SHA1-PUKEY>123456789abcdef" |
Сильный |
Если клиентам не удается повторно выпустить сертификаты с новым расширением SID, рекомендуется создать сопоставление вручную с помощью одного из описанных выше надежных сопоставлений. Это можно сделать, добавив соответствующую строку сопоставления к атрибуту users altSecurityIdentities в Active Directory.
Примечание Некоторые поля, такие как "Издатель", "Тема" и "Серийный номер", передаются в формате "вперед". Этот формат необходимо отменить при добавлении строки сопоставления в атрибут altSecurityIdentities . Например, чтобы добавить сопоставление X509IssuerSerialNumber для пользователя, выполните поиск в полях "Издатель" и "Серийный номер" сертификата, который вы хотите сопоставить с пользователем. См. пример выходных данных ниже.
-
Издатель: CN=CONTOSO-DC-CA, DC=contoso, DC=com
-
SerialNumber: 2B000000011AC0000000012
Затем обновите атрибут altSecurityIdentities пользователя в Active Directory, указав следующую строку:
-
"X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>120000000AC1100000002B"
Чтобы обновить этот атрибут с помощью PowerShell, можно использовать приведенную ниже команду. Помните, что по умолчанию только администраторы домена имеют разрешение на обновление этого атрибута.
-
set-aduser 'DomainUser' -replace @{altSecurityIdentities= "X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>1200000000AC110000000002B"}
Обратите внимание, что при обратном изменении номера SerialNumber необходимо сохранить порядок байтов. Это означает, что при отмене номера SerialNumber "A1B2C3" должна быть строка "C3B2A1", а не "3C2B1A". Дополнительные сведения см. в разделе Практическое руководство. Сопоставление пользователя с сертификатом с помощью всех методов, доступных в атрибуте altSecurityIdentities.
Временная шкала обновлений Windows
Важно Этап включения начинается с обновлений для Windows от 11 апреля 2023 г., которые игнорируют параметр раздела реестра Отключенный режим.
После установки обновлений Windows от 10 мая 2022 г. устройства будут находиться в режиме совместимости. Если сертификат можно строго сопоставить с пользователем, проверка подлинности будет выполняться должным образом. Если сертификат может быть сопоставлен только слабо с пользователем, проверка подлинности будет выполняться должным образом. Однако будет зарегистрировано предупреждающее сообщение, если сертификат не старше пользователя. Если сертификат старше пользователя и отсутствует раздел реестра backdating certificate или диапазон находится за пределами компенсации резервной копии, проверка подлинности завершится ошибкой, и будет зарегистрировано сообщение об ошибке. Если настроен раздел реестра резервной копии сертификатов, он заносит в журнал событий предупреждающее сообщение, если даты попадают в резервную компенсацию.
После установки обновлений Windows от 10 мая 2022 г. watch для любого предупреждающего сообщения, которое может появиться через месяц или более. Если предупреждения отсутствуют, настоятельно рекомендуется включить режим полного принудительного применения на всех контроллерах домена, использующих проверку подлинности на основе сертификата. Для включения режима полного принудительного применения можно использовать раздел реестра KDC .
Если раньше не было обновлено до режима аудита или принудительного применения с помощью раздела реестра StrongCertificateBindingEnforcement , контроллеры домена перейдут в режим полного принудительного применения при установке обновления для системы безопасности Windows за февраль 2025 г. Проверка подлинности будет отклонена, если сертификат не может быть строго сопоставлен. Возможность вернуться в режим совместимости будет оставаться до сентября 2025 г. После этой даты раздел реестра StrongCertificateBindingEnforcement больше не будет поддерживаться.
Если проверка подлинности на основе сертификатов основана на слабом сопоставлении, которое невозможно переместить из среды, контроллеры домена можно поместить в режим Отключено с помощью параметра раздела реестра. Корпорация Майкрософт не рекомендует это сделать, и 11 апреля 2023 г. мы удалим отключенный режим.
После установки обновлений Windows от 13 февраля 2024 г. или более поздней версии на Сервере 2019 и более поздних версий и поддерживаемых клиентов с дополнительной функцией RSAT сопоставление сертификатов в Active Directory Users & Computers по умолчанию будет выбирать строгое сопоставление с помощью X509IssuerSerialNumber вместо слабого сопоставления с помощью X509IssuerSubject. Параметр по-прежнему можно изменить при необходимости.
Устранение неполадок
-
Используйте операционный журнал Kerberos на соответствующем компьютере, чтобы определить, какой контроллер домена завершает сбой при входе. Перейдите в Просмотр событий > Журналы приложений и служб\Microsoft \Windows\Security-Kerberos\Operational.
-
Найдите соответствующие события в журнале системных событий на контроллере домена, для чего учетная запись пытается пройти проверку подлинности.
-
Если сертификат старше учетной записи, повторно введите сертификат или добавьте в учетную запись безопасное сопоставление altSecurityIdentities (см. раздел Сопоставления сертификатов).
-
Если сертификат содержит расширение идентификатора безопасности, убедитесь, что идентификатор безопасности соответствует учетной записи.
-
Если сертификат используется для проверки подлинности нескольких разных учетных записей, каждой учетной записи потребуется отдельное сопоставление altSecurityIdentities .
-
Если сертификат не имеет безопасного сопоставления с учетной записью, добавьте его или оставьте домен в режиме совместимости, пока его не удастся добавить.
Примером сопоставления сертификатов TLS является использование веб-приложения интрасети IIS.
-
После установки защиты CVE-2022-26391 и CVE-2022-26923 эти сценарии по умолчанию используют протокол Kerberos Certificate Service for User (S4U) для сопоставления сертификатов и проверки подлинности.
-
В протоколе Kerberos Certificate S4U запрос проверки подлинности передается с сервера приложений на контроллер домена, а не от клиента к контроллеру домена. Таким образом, соответствующие события будут находиться на сервере приложений.
Сведения о разделе реестра
После установки средств защиты CVE-2022-26931 и CVE-2022-26923 в обновлениях Windows, выпущенных с 10 мая 2022 г. по 10 сентября 2025 г. или более поздней версии, доступны следующие разделы реестра.
Этот раздел реестра не будет поддерживаться после установки обновлений для Windows, выпущенных в сентябре 2025 г. или позже.
Важно
Использование этого раздела реестра является временным обходным решением для сред, в которых это требуется, и это необходимо сделать с осторожностью. Использование этого раздела реестра означает следующее для вашей среды:
-
Этот раздел реестра работает только в режиме совместимости, начиная с обновлений, выпущенных 10 мая 2022 г.
-
Этот раздел реестра не будет поддерживаться после установки обновлений для Windows, выпущенных 10 сентября 2025 г.
-
Обнаружение и проверка расширения SID, используемое принудительной привязкой строгих сертификатов, зависит от значения раздела реестра KDC UseSubjectAltName . Расширение SID будет использоваться, если значение реестра не существует или если задано значение 0x1. Расширение sid не будет использоваться, если UseSubjectAltName существует, а для параметра задано значение 0x0.
Подраздел реестра |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc |
Value (Значение) |
StrongCertificateBindingEnforcement |
Тип данных |
REG_DWORD |
Data (Данные) |
1 — проверяет наличие надежного сопоставления сертификатов. Если да, проверка подлинности разрешена. В противном случае KDC будет проверка, если сертификат имеет новое расширение SID и проверит его. Если этого расширения нет, проверка подлинности разрешена, если учетная запись пользователя предшествует сертификату. 2 — проверяет наличие строгого сопоставления сертификатов. Если да, проверка подлинности разрешена. В противном случае KDC будет проверка, если сертификат имеет новое расширение SID и проверит его. Если этого расширения нет, проверка подлинности отклоняется. 0 — отключает строгое сопоставление сертификатов проверка. Не рекомендуется, так как это приведет к отключению всех улучшений безопасности. Если для этого параметра задано значение 0, необходимо также задать для CertificateMappingMethods значение 0x1F, как описано в разделе раздела реестра Schannel ниже, чтобы проверка подлинности на основе сертификата компьютера прошла успешно. |
Требуется перезапуск? |
Нет |
Когда серверное приложение требует проверки подлинности клиента, Schannel автоматически пытается сопоставить сертификат, который клиент TLS предоставляет учетной записи пользователя. Вы можете проверить подлинность пользователей, которые входят с помощью сертификата клиента, создав сопоставления, которые связывают сведения о сертификате с учетной записью пользователя Windows. После создания и включения сопоставления сертификатов каждый раз, когда клиент представляет сертификат клиента, серверное приложение автоматически связывает этого пользователя с соответствующей учетной записью пользователя Windows.
Schannel будет пытаться сопоставить каждый включенный метод сопоставления сертификатов до тех пор, пока он не будет выполнен успешно. Schannel сначала пытается сопоставить сопоставления service-for-user-to-Self (S4U2Self). Сопоставления сертификатов субъекта/издателя, издателя и имени участника-пользователя теперь считаются слабыми и отключены по умолчанию. Битовая сумма выбранных параметров определяет список доступных методов сопоставления сертификатов.
Раздел реестра SChannel по умолчанию был 0x1F и теперь 0x18. Если в серверных приложениях на основе Schannel возникают сбои проверки подлинности, рекомендуется выполнить тест. Добавьте или измените значение раздела реестра CertificateMappingMethods на контроллере домена и задайте для него значение 0x1F и посмотрите, устранена ли проблема. Дополнительные сведения см. в журналах системных событий на контроллере домена. Помните, что изменение значения раздела реестра SChannel на предыдущее значение по умолчанию (0x1F) отменить изменения использование методов сопоставления слабых сертификатов.
Подраздел реестра |
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\Schannel |
Value (Значение) |
CertificateMappingMethods |
Тип данных |
DWORD |
Data (Данные) |
0x0001 — сопоставление сертификата субъекта и издателя (слабое — по умолчанию отключено) 0x0002 — сопоставление сертификата издателя (слабое — отключено по умолчанию) 0x0004 — сопоставление сертификатов имени участника-пользователя (слабое — по умолчанию отключено) 0x0008 — сопоставление сертификатов S4U2Self (strong) 0x0010 — явное сопоставление сертификатов S4U2Self (строгое) |
Требуется перезапуск? |
Нет |
Дополнительные ресурсы и поддержку см. в разделе "Дополнительные ресурсы".
После установки обновлений, которые относятся к CVE-2022-26931 и CVE-2022-26923, проверка подлинности может завершиться ошибкой в случаях, когда сертификаты пользователей старше времени создания пользователей. Этот раздел реестра обеспечивает успешную проверку подлинности при использовании слабых сопоставлений сертификатов в вашей среде, а время сертификата — до времени создания пользователя в пределах заданного диапазона. Этот раздел реестра не влияет на пользователей или компьютеры со строгими сопоставлениями сертификатов, так как время создания сертификата и время создания пользователя не проверяются с помощью надежных сопоставлений сертификатов. Этот раздел реестра не действует, если для параметра StrongCertificateBindingEnforcement задано значение 2.
Использование этого раздела реестра является временным обходным решением для сред, в которых это требуется, и это необходимо сделать с осторожностью. Использование этого раздела реестра означает следующее для вашей среды:
-
Этот раздел реестра работает только в режиме совместимости , начиная с обновлений, выпущенных 10 мая 2022 г. Проверка подлинности будет разрешена в пределах смещений компенсации, но в журнале событий будет зарегистрировано предупреждение о слабой привязке.
-
Включение этого раздела реестра позволяет выполнить проверку подлинности пользователя, когда время сертификата находится до времени создания пользователя в пределах заданного диапазона в качестве слабого сопоставления. Слабые сопоставления не будут поддерживаться после установки обновлений для Windows, выпущенных в сентябре 2025 г. или позже.
Подраздел реестра |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc |
Value (Значение) |
CertificateBackdating Compensationion |
Тип данных |
REG_DWORD |
Data (Данные) |
Значения для обходного решения в приблизительное время года:
Примечание. Если известно время существования сертификатов в вашей среде, задайте для этого раздела реестра значение немного больше времени существования сертификата. Если вы не знаете время существования сертификатов для вашей среды, задайте для этого раздела реестра значение 50 лет. По умолчанию используется значение 10 минут, если этот ключ отсутствует, что соответствует службам сертификатов Active Directory (ADCS). Максимальное значение — 50 лет (0x5E0C89C0). Этот ключ задает разницу во времени (в секундах), которую центр распространения ключей (KDC) будет игнорировать между временем выдачи сертификата проверки подлинности и временем создания учетной записи пользователя или компьютера. Важно Задайте этот раздел реестра только в том случае, если он требуется вашей среде. Использование этого раздела реестра отключит проверка безопасности. |
Требуется перезапуск? |
Нет |
Корпоративные центры сертификации
Корпоративные центры сертификации (ЦС) начнут добавлять новое некритичное расширение с идентификатором объектов (OID) (1.3.6.1.4.1.311.25.2) по умолчанию во всех сертификатах, выданных для онлайн-шаблонов после установки обновления Windows от 10 мая 2022 г. Вы можете остановить добавление этого расширения, задав бит 0x00080000 в значении msPKI-Enrollment-Flag соответствующего шаблона.
Выполните следующую команду certutil, чтобы исключить сертификаты шаблона пользователя из получения нового расширения.
-
Войдите на сервер центра сертификации или присоединенный к домену клиент Windows 10 с помощью администратора предприятия или эквивалентных учетных данных.
-
Откройте командную строку и выберите Запуск от имени администратора.
-
Запустите certutil -dstemplate user msPKI-Enrollment-Flag +0x00080000.
Отключение добавления этого расширения приведет к удалению защиты, предоставляемой новым расширением. Рекомендуется делать это только после одного из следующих действий:
-
Вы подтверждаете, что соответствующие сертификаты недопустимы для шифрования с открытым ключом для начальной проверки подлинности (PKINIT) в проверке подлинности по протоколу Kerberos в KDC.
-
Для соответствующих сертификатов настроены другие надежные сопоставления сертификатов.
Среды с развертываниями ЦС сторонних версий не будут защищены с помощью нового расширения sid после установки обновления Windows от 10 мая 2022 г. Затронутые клиенты должны работать с соответствующими поставщиками ЦС для решения этой проблемы или рассмотреть возможность использования других надежных сопоставлений сертификатов, описанных выше.
Дополнительные ресурсы и поддержку см. в разделе "Дополнительные ресурсы".
Вопросы и ответы
Нет, продление не требуется. ЦС будет поставляться в режиме совместимости. Если требуется строгое сопоставление с помощью расширения ObjectSID, потребуется новый сертификат.
В обновлении Windows от 11 февраля 2025 г. устройства, которые еще не находятся в принудительном применении (для параметра реестра StrongCertificateBindingEnforcement задано значение 2), будут перемещены в раздел Принудительное применение. Если проверка подлинности запрещена, отобразится событие с идентификатором 39 (или событие с идентификатором 41 для Windows Server 2008 R2 с пакетом обновления 1 (SP1) и Windows Server 2008 с пакетом обновления 2 (SP2). На этом этапе вы сможете задать для раздела реестра значение 1 (режим совместимости).
В обновлении Windows от 10 сентября 2025 г. значение реестра StrongCertificateBindingEnforcement больше не будет поддерживаться.
Дополнительные ресурсы
Дополнительные сведения о сопоставлении сертификатов клиента TLS см. в следующих статьях: