Если вы читаете это, скорее всего столкнулись с подозрительной ситуацией: драйвер установился без предупреждения, система ведёт себя странно, или вы просто хотите убедиться, что защита Windows работает как положено. Driver Signature Enforcement (DSE) — это механизм, который не даёт загружаться неподписанным драйверам. Его отключение или подмена — популярный приём как среди пиратов, так и среди злоумышленников. Разберёмся, как это проверить и что делать.
- Зачем вообще заботиться о Driver Signature Enforcement
- Быстрая проверка через командную строку
- Глубокая проверка системных файлов
- Шаг 1: Скачайте и запустите SigCheck
- Шаг 2: Проверьте целостность системы через DISM
- Шаг 3: Анализ загрузочного сектора и загрузчика
- Какие признаки указывают на подмену
- Сравнение методов проверки: что выбрать
- Что делать, если обнаружили проблему
- Ситуация 1: DSE временно отключён, но файлы целы
- Ситуация 2: Найдены неизвестные неподписанные драйверы
- Ситуация 3: Подозрение на подмену ядра или winload.efi
- Частые ошибки при проверке и восстановлении
- Рекомендации на будущее
- Итог: как действовать прямо сейчас
Зачем вообще заботиться о Driver Signature Enforcement
Windows требует цифровую подпись для драйверов ядра. Это не прихоть Microsoft — единственный способ гарантировать, что код, получающий полный доступ к системе, действительно от заявленного разработчика и не был изменён. Когда DSE работает корректно, неподписанный драйвер просто не загрузится. Если его отключили или подменили — в систему может попать что угодно: кейлоггер, бэкдор, майнер.
Типичные сценарии, когда стоит проверить:
- вы ставили «взломанную» программу, которая попросила отключить проверку подписи;
- компьютер стал заметно тормозить без видимых причин;
- антивирус ругается на системные файлы или драйверы;
- вы получили ПК от кого-то и не знаете, что там натворили до вас.
Быстрая проверка через командную строку
Самый простой способ — встроенная утилита SigChecker из состава Windows SDK, но есть более быстрый путь. Откройте командную строку от администратора и введите:
bcdedit /set testsigning off— если после выполнения вы получите сообщение «The operation completed successfully», значит, проверка подписи активна и была в нормальном состоянии. А вот если появится ошибка доступа или неожиданный ответ, это повод насторожиться.- Теперь проверьте текущее состояние параметра:
Не рекомендую случайно включать тестовый режим, если вы до этого его не использовали — это может сломать загрузку некоторых легальных драйверов. В данном случае мы смотрим результат, но не сохраняем изменения.
Более надёжный способ проверить факт отключения DSE без изменения настроек:
- Откройте msinfo32 (нажмите Win+R, введите msinfo32).
- Перейдите в «Программная среда» → «Системная информация» и найдите строку «Test-Signing» или «NoInteractiveServices».
- Если видите, что параметр TESTSIGNING ON — DSE отключён, и любой неподписанный драйвер может загружаться.
Но это не самый глубокий метод. Бывает, что злоумышленники идут дальше и подменяют файлы ядра так, чтобы думали, что DSE работает, а на самом деле он молча пропускает вредоносный код.
Глубокая проверка системных файлов
Driver Signature Enforcement обеспечивается ядром Windows и цепочкой криптографических проверок. Ключевые файлы-участники:
- ci.dll — библиотека целостности кода (Code Integrity);
- ntoskrnl.exe — само ядро;
- winload.efi / winload.exe — загрузчик ОС.
Если они подменены — DSE может быть выключена на уровне ядра, и проверки выше ничего не покажут. Вот как это выявить:
Шаг 1: Скачайте и запустите SigCheck
Официально утилита доступна как часть Windows SDK, но я бы советовал брать её из проверенных источников вроде сайта Sysinternals (Microsoft). Альтернатива — используние встроенной утилиты sfc /scannow, но она проверяет не все компоненты подписи. Лучше всего взять DriverView с NirSoft и приглядеться к списку драйверов:
- Скачайте DriverView с официального сайта NirSoft.
- Запустите от имени администратора.
- Отсортируйте по столбцу «Signed» / «Verified».
- Посмотрите, есть ли драйверы со значением «Not signed» или с подозрительным сертификатом.
Если среди загруженных драйверов есть неподписанные, но при этом вы не ставили их специально — скорее всего, DSE было отключено во время их установки или подмена произошла раньше.
Шаг 2: Проверьте целостность системы через DISM
Откройте PowerShell администратора и выполните:
DISM /Online /Cleanup-Image /CheckHealth— быстрый тест.DISM /Online /Cleanup-Image /ScanHealth— более глубокий анализ, занимает 5–10 минут.- Если в отчёте появятся упоминания о повреждённых файлах ядра или хранилища компонентов, это тревожный сигнал.
Если DISM сообщает, что хранилище компонентов повреждено и не может быть восстановлено — возможно, файлы были подменены вручную.
Шаг 3: Анализ загрузочного сектора и загрузчика
Самые изощрённые атаки подменяют winload.efi. Проверить можно так:
- Убедитесь, что включён Secure Boot в UEFI. Если он выключен без вашего ведома — это красный флаг.
- В командной строке проверьте состояние:
Confirm-SecureBootUEFI(в PowerShell). Должно быть True. - Если False, а вы не отключали — проверьте настройки BIOS/UEFI и журналы событий.
Какие признаки указывают на подмену
Помимо инструментальной проверки, есть косвенные признаки, которые сложно заметить, но если вы здесь, значит, что-то уже напрягло:
- Программы, которые «ломают» DSE (например, Driver Signature Enforcement Overrider), оставляют следы в реестре и папке C:\Windows\System32\drivers\ в виде временных файлов и модифицированных драйверов.
- В журнале событий (eventvwr.msc) → «Журналы Windows» → «Система» ищите события с источников «CodeIntegrity» и «DeviceGuard». Если там есть события с идентификаторами 3033 или 3034 — значит, загружались неподписанные драйверы, что при работающем DSE невозможно.
- Необъяснимое появление скрытых учётных записей или служб с названиями, похожими на системные, но с опечатками.
Если нашли хотя бы один из этих признаков, пора принимать меры.
Сравнение методов проверки: что выбрать
Разные подходы дают разную глубину анализа. Вот таблица, которая поможет сориентироваться:
| Метод | Сложность | Что обнаруживает | Надёжность |
|---|---|---|---|
| bcdedit + DriverView | Низкая | Явное отключение DSE, наличие неподписанных драйверов | Средняя — не видит скрытую подмену ядра |
| DISM + sfc /scannow | Средняя | Повреждение системных файлов, изменение компонентов | Высокая для стандартных атак |
| Проверка Secure Boot | Низкая | Отключение аппаратной проверки загрузчика | Высокая на уровне загрузки |
| Анализ журналов Event Viewer | Средняя | Факты загрузки неподписанного кода (события 3033/3034) | Очень высокая, но требует расшифровки |
| Проверка цифровых подписей через SigCheck | Низкая | Подмену конкретных файлов | Высокая для анализа отдельных драйверов |
Что делать, если обнаружили проблему
Конкретные шаги зависят от того, насколько глубоко проникновение и что именно вы защищаете.
Ситуация 1: DSE временно отключён, но файлы целы
Если вы видите, что TESTSIGNING ON, но DISM и sfc ничего не находят подозрительного, скорее всего, отключение сделали для установки какого-то легального, но без подписи драйвера (например, старое оборудование). В этом случае:
- Включите проверку подписи:
bcdedit /set testsigning off, перезагрузитесь. - Удалите или обновите драйверы, из-за которых отключали DSE.
- Убедитесь, что Secure Boot включён.
- После перезагрузки повторно проверьте через DriverView и журналы.
Ситуация 2: Найдены неизвестные неподписанные драйверы
Если в системе появились драйверы без подписи, и вы не ставили их осознанно:
- Сохраните их имена (правый клик → свойства в DriverView).
- Поищите в интернете информацию о конкретном файле. Часто вредоносные драйверы маскируются под системные имена с опечатками.
- Если это точно не ваш легальный драйвер — удалите файл вручную из System32\drivers и прочистите реестр (осторожно!) от ссылок на него.
- Запустите DISM /Online /Cleanup-Image /RestoreHealth и sfc /scannow.
- Меняйте пароли и проверяйте систему антивирусом с актуальными базами.
Ситуация 3: Подозрение на подмену ядра или winload.efi
Это самый серьёзный случай. Если вы видите, что Secure Boot отключен, но вы не отключали, или sfc постоянно находит и «исправляет» одни и те же файлы — возможно, атака на уровне загрузчика.
Рекомендации:
- Отключите интернет, физически отсоедините сетевой кабель/Wi-Fi.
- Сделайте загрузочную флешку с чистой Windows и с неё запустите проверку файлов (можно через WinPE).
- Лучше всего — переустановка системы с форматированием системного раздела, потому что если загрузчик подменён, вы никогда не будете уверены в чистоте ОС.
- После переустановки обязательно включите Secure Boot и проверьте, что DSE активна по умолчанию.
Частые ошибки при проверке и восстановлении
Люди часто натыкаются на следующие грабли:
- Слепо отключают DSE «для установки программы», не понимая, что после этого любой драйвер станет доступен для загрузки, включая вредоносный.
- Путают легальные драйверы без подписи и подозрительные. То, что драйвер не подписан, не всегда значит, что он вредоносный — но это повод внимательнее его изучить.
- Запускают sfc /scannow и думают, что всё проверено. На самом деле sfc не видит подмену на уровне ядра, если она сделана хитро.
- Игнорируют события в журнале, считая их техническими. А между тем там прямая информация о попытках загрузки неподписанного кода.
- Не восстанавливают систему после удаления драйверов, оставляя дыры в реестре и конфигурации.
Рекомендации на будущее
Чтобы не попасть в подобную ситуацию снова:
- Всегда держите Secure Boot включённым, если нет веских причин его отключать.
- Не используйте программы, которые массово отключают DSE — они часто идут в комплекте с пиратским ПО и могут содержать закладки.
- Регулярно смотрите в DriverView на предмет неподписанных драйверов, особенно после установки сомнительного софта.
- Не игнорируйте предупреждения антивируса о системных драйверах — это может быть реальной угрозой.
- Делайте резервные копии важных данных и образ системы, чтобы в случае серьёзного проникновения можно было быстро откатиться на известно чистое состояние.
Итог: как действовать прямо сейчас
Если вы заподозрили, что Driver Signature Enforcement был отключён или подменён, действуйте по такой схеме:
- Проверьте текущее состояние через
msinfo32и наличие TESTSIGNING ON. - Запустите DriverView и поищите неподписанные драйверы. Запишите их имена.
- Проанализируйте журнал событий Windows на предмет событий CodeIntegrity 3033/3034.
- Запустите DISM и sfc для оценки целостности системных файлов.
- Убедитесь, что Secure Boot включён (особенно если вы не трогали UEFI).
- Если нашли подозрительные драйверы — удалите их, восстановите систему и проверьте антивирусом.
- Если подозрения серьёзные (подмена winload или ядра) — переустановите ОС с форматированием системного раздела.
Главное понимать: DSE — это не просто формальность, а реальный барьер, который не даёт загрузиться непроверенному коду на самом глубоком уровне. Его отключение без крайней необходимости — как снять замок с входной двери, потому что «да кому мы нужны». Если уж пришлось отключать — включайте обратно сразу после того, как закончили установку, и обязательно проверяйте систему целиком. И помните: если атака была на уровне загрузчика, простое включение DSE уже не поможет, нужна переустановка.
