Event ID 3005 — Kernel-mode Driver Validation
Applies To: Windows Server 2008
Code Integrity checks each kernel-mode driver for a digital signature when an attempt is made to load the driver into memory. If the kernel-mode driver is not signed, the operating system might not load it. Whether an unsigned driver is loaded without a digital signature depends on the platform of the operating system.
- For x64-based computers, all kernel-mode drivers must be digitally signed.
- For x86-based or Itanium-based computers, the following kernel-mode drivers require a digital signature: bootvid.dll, ci.dll, clfs.sys, hal.dll, kdcom.dll, ksecdd.sys, ntoskrnl.exe, pshed.dll, spldr.sys, tpm.sys, and winload.exe.
Note: If a kernel debugger is attached to the computer, Code Integrity still checks for a digital signature on every kernel-mode driver, but the operating system will load the drivers.
Event Details
Product: | Windows Operating System |
ID: | 3005 |
Source: | Microsoft-Windows-CodeIntegrity |
Version: | 6.0 |
Symbolic Name: | CiImageFileHashNotFoundDebuggerAttached |
Message: | Code Integrity is unable to verify the image integrity of the file %2 because a file hash could not be found on the system. The image is allowed to load because kernel mode debugger is attached. |
Resolve
Update kernel-mode driver with kernel debugger attached
When a kernel debugger is attached to the computer, Code Integrity checks the driver file for a digital signature but the operating system still loads it. If a kernel debugger is attached to the computer, no further action is required, but we recommend that you update the kernel-mode driver by using Device Manager.
To perform this procedure, you must be a member of the local Administrators group, or you must have been delegated the appropriate authority.
To update a kernel-mode driver by using Device Manager:
- Copy the signed kernel-mode driver to a location on the local computer.
- Click Start, and then click Control Panel.
- Double-click Device Manager.
- If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.
- Right-click the item that needs its driver updated, and then click Update Driver Software.
- Click Browse my computer for driver software.
- Click Browse, browse to the folder where the new driver file exists, and then click Next.
- Click Finish.
Verify
You can verify that a kernel-mode driver was successfully validated and loaded by checking its driver status using the command prompt.
To perform this procedure, you must be a member of the local Administrators group, or you must have been delegated the appropriate authority.
To verify a kernel-mode driver was successfully validated and loaded:
- Click Start, point to All Programs, point to Accessories.
- Right-click Command Prompt, and then click Run as administrator.
- If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Continue.
- Type sc query type= driver, and then press ENTER.
- In the list, find the appropriate driver and ensure that 4 RUNNING is displayed in the STATE column.
Note: If you know the driver name, type sc querydriver, where driver is the name of the driver file without the extension, at the command prompt, and then press ENTER.