Windows включает функцию безопасности, называемую целостностью кода ядра , которая помогает защитить систему, гарантируя, что драйверы ядра, загруженные в систему, выполняются с целостностью и криптографически подписаны центром, которому доверяет майкрософт.
Если вы видите это сообщение, это означает, что драйвер или программное обеспечение в режиме ядра неправильно подписаны или не соответствуют требованиям к целостности кода Windows.
Windows требует, чтобы все новые драйверы были отправлены и подписаны с помощью программы совместимости оборудования Windows (WHCP). Windows ранее были доверенными драйверами, подписанными программой с истекшим сроком действия. Однако с обновлением для системы безопасности за апрель 2026 г. эти драйверы больше не являются доверенными по умолчанию. Объявление доступно здесь: https://go.microsoft.com/fwlink/?linkid=2356646.
Что такое политика драйверов Windows?
Политика драйверов Windows — это политика в ядре Windows, которая ограничивает, какие драйверы режима ядра могут загружаться на вашем устройстве. Если активен, могут загружаться только следующие драйверы:
-
Драйверы правильно подписаны в процессе сертификации Microsoft WHCP
-
Драйверы, которые отображаются в политике драйверов Windows, разрешают список авторитетных водителей, подписанных перекрестной программой
Драйверы, которые не подписаны microsoft WHCP или не отображаются в политике драйверов Windows, будут заблокированы в область системах с поддержкой.
Эта функция помогает защитить вас от потенциально небезопасных или непроверенных драйверов, уменьшая риск вредоносных программ, нестабильности системы и уязвимостей системы, вызванных непроверенными драйверами и издателями драйверов.
Как работает эта возможность?
Политика драйвера Windows использует двухэтапный подход, например интеллектуальное управление приложениями , для постепенного повышения защиты устройства:
Режим оценки (аудит)
При первой активации функции она запускается в режиме оценки . На этом этапе:
-
Драйверы, которые будут заблокированы политикой, проверяются, но по-прежнему разрешено загружать . Это гарантирует, что устройство будет работать нормально, пока Windows определяет, подходит ли принудительное применение для вашей системы.
-
Windows отслеживает, сколько драйверов в вашей системе будет затронуто политикой.
-
Если во время оценки обнаруживается драйвер, нарушающий политику, ход выполнения оценки сбрасывается . Это означает, что обратный отсчет до принудительного применения начинается с начала, что дает Windows больше времени для наблюдения за использованием драйверов вашей системы.
Критерии оценки
Windows отслеживает следующие критерии, чтобы определить, когда устройство готово к принудительному применению:
-
Время безотказной работы системы : ваше устройство должно активно использовать 100 часов .
-
Сеансы загрузки . С момента начала оценки устройство должно быть перезагружено не менее 3 раз (2 раза в Windows Server).
-
Нет нарушений политики . Если драйвер, который будет заблокирован, загружается в течение периода оценки, счетчики сеансов безотказной работы и загрузки сбрасываются до нуля , что увеличивает период оценки.
Если устройство постоянно загружает драйверы, которые соответствуют политике и соответствуют этим критериям, система считается хорошим кандидатом для принудительного применения.
Режим принудительного применения
После выполнения условий оценки Windows автоматически переходит в режим принудительного применения . На этом этапе:
-
Устройства защищены от драйверов, которые не соответствуют требованиям к подписи в политике драйверов Windows.
-
Эти драйверы заблокированы для загрузки и создания диагностических данных майкрософт для проверки, а также записей в журнале событий Windows, которые можно просмотреть.
-
Список разрешенных конкретных драйверов и издателей включен в политику, чтобы позволить некоторым широко используемым устаревшим драйверам, которые еще не были сертифицированы WHCP, продолжать работу.
После включения режима принудительного применения политика остается в силе при перезагрузках.
Вопросы и ответы
Если драйвер заблокирован этой политикой, вы можете увидеть следующее:
-
Аппаратное устройство работает неправильно.
-
Периферийное устройство или компонент (принтер, сетевой адаптер, GPU и т. д.) не распознается.
-
Не удается запустить приложение, зависящее от драйвера ядра.
Вы можете проверить, отвечает ли политика драйвера Windows, проверив журналы событий целостности кода с помощью следующих двух методов.
Запрос событий целостности кода вручную
-
Щелкните правой кнопкой мыши кнопку Пуск и выберите Просмотр событий .
-
В левой области перейдите к разделу Журналы приложений и служб > Microsoft > Windows > CodeИнтеграция > Operational
-
Просмотрите или отфильтруйте журнал для событий со следующими идентификаторами:
-
Событие с идентификатором 3076 — драйвер прошел аудит (он был бы заблокирован, но был разрешен, так как политика находится в режиме аудита).
-
Событие с идентификатором 3077 — драйвер был заблокирован для загрузки, так как он нарушил политику принудительного применения.
В сведениях о событии найдите поле Идентификатор политики . События, вызванные этой функцией, будут ссылаться на один из следующих идентификаторов guid политики:
-
Политика аудита : {784C4414-79F4-4C32-A6A5-F0FB42A51D0D}
-
Принудительное применение политики : {8F9CB695-5D48-48D6-A329-7202B44607E3}
Запрос событий целостности кода с помощью PowerShell
Вы можете использовать PowerShell для быстрого поиска событий, связанных с этой функцией:
# Find audit events (Event ID 3076) from the Windows Driver audit policy
$events = Get-WinEvent -LogName 'Microsoft-Windows-CodeIntegrity/Operational' -FilterXPath "*[System[EventID=3076]]" -ErrorAction SilentlyContinue |
Where-Object { $_.Message -like '*784C4414-79F4-4C32-A6A5-F0FB42A51D0D*' }
$results = $events | ForEach-Object {
$xml = [xml]$_.ToXml()
$data = $xml.Event.EventData.Data
[PSCustomObject]@{
TimeCreated = $_.TimeCreated
DriverName = ($data | Where-Object { $_.Name -eq 'File Name' }).'#text'
ProductName = ($data | Where-Object { $_.Name -eq 'ProductName' }).'#text'
ParentProcess = ($data | Where-Object { $_.Name -eq 'Process Name' }).'#text'
}
}
$results | Select-Object DriverName, ProductName, ParentProcess -Unique | Format-Table -AutoSize -Wrap
# Find block events (Event ID 3077) from the Windows Driver enforced policy
$events = Get-WinEvent -LogName 'Microsoft-Windows-CodeIntegrity/Operational' -FilterXPath "*[System[EventID=3077]]" -ErrorAction SilentlyContinue |
Where-Object { $_.Message -like '*8F9CB695-5D48-48D6-A329-7202B44607E3*' }
$results = $events | ForEach-Object {
$xml = [xml]$_.ToXml()
$data = $xml.Event.EventData.Data
[PSCustomObject]@{
TimeCreated = $_.TimeCreated
DriverName = ($data | Where-Object { $_.Name -eq 'File Name' }).'#text'
ProductName = ($data | Where-Object { $_.Name -eq 'ProductName' }).'#text'
ParentProcess = ($data | Where-Object { $_.Name -eq 'Process Name' }).'#text'
}
}
$results | Select-Object DriverName, ProductName, ParentProcess -Unique | Format-Table -AutoSize -Wrap
Сведения о событии будут включать имя драйвера, который был проверен или заблокирован, а также имя процесса, который пытался загрузить драйвер, что поможет определить, какой драйвер или устройство затронут.
Если вы являетесь пользователем устройства или ИТ-администратором
-
Проверьте журналы событий , выполнив описанные выше действия, чтобы определить, какой драйвер заблокирован.
-
Проверьте клиентский компонент Центра обновления Windows на наличие обновленных драйверов. Сертифицированные по WHCP и подписанные драйверы могут быть доступны через клиентский компонент Центра обновления Windows. Перейдите в раздел Параметры > клиентский компонент Центра обновления Windows > Дополнительные параметры > Необязательные обновления > обновления драйверов для проверка доступных обновлений драйверов.
-
Посетите веб-сайт производителя . Скачайте последнюю версию драйвера с официальной страницы поддержки поставщика . Более новые версии, скорее всего, будут подписаны по протоколу WHCP.
4. Обратитесь к поставщику оборудования или программного обеспечения , который публикует драйвер. Спросите их, доступна ли сертифицированная WHCP-версия драйвера и где к ней получить доступ. Большинство поставщиков уже WHCP сертифицируют свои драйверы.
Если вы являетесь издателем драйверов
При разработке и распространении драйверов в режиме ядра для Windows необходимо убедиться, что драйверы подписаны с помощью процесса WHCP:
-
Присоединитесь к Центру разработки оборудования для Windows . Зарегистрируйтесь в Центре разработки оборудования Windows с действительным сертификатом подписи кода EV (расширенная проверка).
-
Создайте отправку . На панели мониторинга оборудования создайте новый продукт и отправьте пакет драйверов для сертификации.
-
Запустите тесты HLK . Используйте комплект оборудования Windows (HLK) для выполнения необходимых тестов для типа драйвера и категории устройства.
-
Отправить для подписывания . После прохождения тестов отправьте результаты HLK вместе с пакетом драйвера. Корпорация Майкрософт подпишет драйвер с помощью сертификата WHCP.
-
Распространение подписанного драйвера . После подписания опубликуйте сертифицированный WHCP драйвер через клиентский компонент Центра обновления Windows и (или) свой веб-сайт.
Важно: Драйверы, подписанные с использованием только кросс-сертификатов без сертификации WHCP, могут быть заблокированы в системах с политикой драйвера Windows в режиме принудительного применения.
Предупреждение: Отключение этой функции снижает безопасность устройства. Мы рекомендуем оставить его включенным и работать с издателями драйверов, чтобы получить драйверы, подписанные WHCP.
Политика драйвера Windows — это подписанная политика целостности кода, хранящейся в системном разделе EFI и защищенной компонентами ранней загрузки Windows. Чтобы отключить эту функцию, необходимо выполнить следующие действия вручную, чтобы вредоносное программное обеспечение, работающее от имени администратора, не несанкционированное изменение функции:
Шаг 1. Отключение безопасной загрузки
-
Перезагрузите компьютер и войдите в меню параметров встроенного ПО UEFI (BIOS). Обычно это можно сделать, нажав клавишу во время загрузки (например , F2 , F10 , Del или ESC — проверка документации изготовителя устройства).
-
Кроме того, в Windows: перейдите в раздел Параметры > Восстановление системы > > Расширенный запуск > Перезапустить сейчас . Затем выберите Устранение неполадок > Дополнительные параметры > параметры встроенного ПО UEFI > Перезапустить .
-
-
В параметрах встроенного ПО найдите параметр Безопасная загрузка (обычно на вкладке Безопасность или Загрузка ).
-
Установите для параметра Безопасная загрузка значение Отключено .
-
Сохраните изменения и закройте параметры встроенного ПО.
Шаг 2. Удаление файлов политики из системного раздела EFI
1. Откройте PowerShell от имени администратора .
2. Подключите системный раздел EFI, выполнив:
mountvol S: /s
Вместо "S:" можно использовать любую доступную букву диска.
3. Удалите файл политики аудита:
del S:\EFI\Microsoft\Boot\CiPolicies\Active\{784C4414-79F4-4C32-A6A5-F0FB42A51D0D}.cip
4. Если политика принудительного применения также присутствует, удалите ее:
del S:\EFI\Microsoft\Boot\CiPolicies\Active\{8F9CB695-5D48-48D6-A329-7202B44607E3}.cip
5. Кроме того, проверка для и удалите политики из системного каталога Windows:
del %windir%\System32\CodeIntegrity\CiPolicies\Active\{784C4414-79F4-4C32-A6A5-F0FB42A51D0D}.cip
del %windir%\System32\CodeIntegrity\CiPolicies\Active\{8F9CB695-5D48-48D6-A329-7202B44607E3}.cip
6. Отключите раздел EFI:
mountvol S: /d
Шаг 3. Перезагрузка компьютера
Перезагрузите устройство, чтобы изменения вступили в силу. После перезапуска политика больше не будет активной, и все подписанные драйверы, в том числе без сертификации WHCP, будут разрешены к загрузке.
Шаг 4. Повторное включение безопасной загрузки
После удаления файлов политики повторно включите безопасную загрузку в параметрах встроенного ПО UEFI, чтобы сохранить другие защиты от безопасной загрузки.
Функция запускается в режиме оценки , где она регистрирует, но не блокирует несертифицированные драйверы. После того как система соответствует критериям оценки (достаточное время работы и перезагрузка без нарушений политики), политика автоматически переходит в режим принудительного применения , а драйверы, не подписанные WHCP, будут заблокированы. Это может привести к остановке загрузки драйверов, которые работали ранее.
В настоящее время нет способа обойти политику для отдельных водителей. Вы можете полностью отключить эту функцию (см. выше) или (желательно) обратиться к издателю драйвера и попросить его предоставить версию драйвера с подписью WHCP.
Эта функция применяется только к драйверам режима ядра . Эта политика не влияет на приложения пользовательского режима.
Вы можете проверка, выполнив следующие команды от имени администратора в PowerShell:
$evalPolicy = (citool -lp -json | ConvertFrom-Json).Policies | Where-Object { $_.PolicyID -eq "784c4414-79f4-4c32-a6a5-f0fb42a51d0d" }
$enforcedPolicy = (citool -lp -json | ConvertFrom-Json).Policies | Where-Object { $_.PolicyID -eq "8F9CB695-5D48-48D6-A329-7202B44607E3" }
if ($enforcedPolicy.IsEnforced -and $enforcedPolicy.IsAuthorized) { Write-Host "✅ The feature is in enforcement mode" -ForegroundColor Green }
elseif($evalPolicy.IsEnforced -and $evalPolicy.IsAuthorized) { Write-Host "✅ The feature is in evaluation mode" -ForegroundColor Green }
else { Write-Host "❌ The feature is not available on this system" -ForegroundColor Red }
Да — Windows Server 2025 г. и более новых серверных платформ. Однако в Windows Server для сеанса загрузки требуется 2 перезагрузки (по сравнению с 3 в клиентских выпусках). Все остальные критерии одинаковы.
При сбросе или переустановке Windows функция запускается в режиме оценки. Счетчики оценки будут сброшены, и переход к принудительному применению начнется снова с самого начала.
Дополнительные сведения
Если у вас по-прежнему возникают проблемы с заблокированным драйвером, посетите форумы сообщества Майкрософт или обратитесь в службу поддержки Майкрософт .
Мы будем рады вашему отзыву об этой функции. Чтобы поделиться своим опытом, выполните приведенные далее действия.
-
В Windows откройте Центр отзывов (нажмите клавиши WIN+F ).
2. На шаге 2 — выбор категории выберите Безопасность и конфиденциальность > элемент управления приложениями .