Event ID 3002 Code Integrity: Image hash not valid — решение
Симптомы ошибки недействительного хеша (Event ID 3002)
В журнале безопасности или целостности кода появляется событие Event ID 3002: Windows Code Integrity determined that the image hash of a file is not valid. The file could be corrupt due to unauthorized modification or the invalid hash could indicate a potential disk device error.
| Симптом | Возможная причина |
|---|---|
| Сбой запуска системных библиотек (.dll) | Файл был модифицирован вредоносным ПО или поврежден сбоем диска |
| Ошибки при запуске служб Windows | Несоответствие контрольной суммы файла каталогу безопасности (.cat) |
| Отказ загрузки драйверов | Повреждение структуры системного тома |
Пошаговое восстановление целостности файлов при ошибке 3002
- Проверьте файловую систему на наличие поврежденных секторов:
# Проверка системного раздела диска на ошибки:
chkdsk C: /f /r(При запросе подтверждения нажмите Y и перезагрузите сервер для выполнения проверки до старта служб).
- Восстановите хранилище компонентов через DISM:
# Проверка и восстановление системного хранилища компонентов Windows:
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth- Проверьте и восстановите целостность всех файлов через SFC:
# Полное сканирование системных файлов:
sfc /scannow- Перестройте базы каталогов безопасности Windows:
# Остановка службы криптографии:
Stop-Service -Name CryptSvc -Force
# Переименование поврежденной папки кэша каталогов:
Rename-Item -Path "C:\Windows\System32\catroot2" -NewName "catroot2.old"
# Запуск службы для пересоздания базы:
Start-Service -Name CryptSvcВажно: Если ошибка указывает на файл сторонней программы, полностью переустановите это приложение или проверьте систему автономным антивирусным сканером.
Частые вопросы (FAQ)
Означает ли Event 3002, что сервер заражен вирусом?
Это возможно, так как вирус мог внедрить свой код в системный DLL файл, изменив его хеш. Однако чаще всего это следствие внезапного отключения питания или сбоя SSD/HDD накопителя.
Что делать, если SFC пишет: 'Windows Resource Protection found corrupt files but was unable to fix them'?
Сначала выполните команду DISM /Online /Cleanup-Image /RestoreHealth (требуется доступ в интернет или смонтированный установочный ISO образ), а затем повторите sfc /scannow.
Зачем пересоздавать папку catroot2?
В папке catroot2 хранятся подписи и хеши каталогов файлов. Если база данных CryptSvc повреждается, Windows считает валидные файлы поврежденными.
Как узнать имя конкретного файла, вызвавшего Event 3002?
Откройте подробности события (вкладка Details/Подробности) в Event Viewer — в поле 'FileName' будет указан точный путь к сбойному файлу.