Analysis of LnvMSRIO.sys: malicious verdict, risk score 88/100. 3 YARA matches, 0/76 multi-engine detections. SHA256 7023f08c9f99076a. Kernel imports, IOCTL codes, MITRE ATT&CK, and code-signing details.
DriverShield analyzed the Windows kernel driver LnvMSRIO.sys and assigned a verdict of Malicious with a composite risk score of 88/100, indicating malicious indicators (80-100 band).
| Verdict | Malicious (88/100) |
| YARA matches | 3 |
| Multi-engine detections | 0 / 76 |
| File size | 40432 bytes |
| Code-signing signer | DigiCert Trusted Root G4 |
| Analyzed | 2026-04-01 |
| SHA256 | 7023f08c9f99076a5fb82a0f661847e2951800f095fca1793a0e6bd9c949b478 |
| SHA1 | f496bc9b6e77fef03f945b48f86b840baf61fe47 |
| MD5 | 517917ff2e5008c791d007cecab5e335 |
Version resource data embedded in the LnvMSRIO.sys PE header, as extracted by the analysis engine.
| File description | Lenovo filter driver |
|---|---|
| Product | Lenovo filter driver |
| Company | Lenovo |
| Original filename | LnvMSRIO.sys |
| Internal name | LnvMSRIO.sys |
| File version | 3.1.0.36 |
| Copyright | Copyright (C) 2024, Lenovo. All Rights Reserved |
Each component is scored 0-100 and then weighted into the composite. See the analysis methodology for the exact formula.
| Component | Sub-score |
|---|---|
| Multi-engine consensus | 0 / 100 |
| YARA signature matches | 85 / 100 |
| Dangerous kernel imports | 100 / 100 |
| IOCTL dispatch surface | 100 / 100 |
| Known-vulnerable corpus | 0 / 100 |
| Code-signing state | 0 / 100 |
| Packing and entropy | 0 / 100 |
| Dynamic behaviour | 0 / 100 |
| CVE cross-reference | 0 / 100 |
Kernel-mode APIs resolved from the Import Address Table of LnvMSRIO.sys, ranked by exploitation relevance.
| API | Risk | Why it matters |
|---|---|---|
| MmMapIoSpace | critical | Highly dangerous - potential for arbitrary code execution, memory corruption, or process termination |
| HalGetBusDataByOffset | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| HalSetBusDataByOffset | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| PsSetCreateProcessNotifyRoutineEx | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| MmUnmapIoSpace | medium | Moderate risk - system modification capability |
| DbgPrintEx | low | Standard kernel API - generally benign |
| ExAllocatePool2 | low | Standard kernel API - generally benign |
| IoCreateDevice | low | Standard kernel API - generally benign |
| ProbeForRead | low | Standard kernel API - generally benign |
| IoCreateSymbolicLink | low | Standard kernel API - generally benign |
| ProbeForWrite | low | Standard kernel API - generally benign |
| RtlInitUnicodeString | low | Standard kernel API - generally benign |
| IofCompleteRequest | low | Standard kernel API - generally benign |
| IoDeleteSymbolicLink | low | Standard kernel API - generally benign |
| IoDeleteDevice | low | Standard kernel API - generally benign |
Control codes reachable through the driver dispatch routine. Codes tied to published exploit code are flagged, since they are the primary Bring Your Own Vulnerable Driver (BYOVD) entry points.
| Code | Severity | Transfer | Description |
|---|---|---|---|
| 0x9C402088 | critical (known exploit) | METHOD_BUFFERED | MSR write (LnvMSRIO) |
| 0x9C406104 | high (known exploit) | METHOD_BUFFERED | Physical memory read (LnvMSRIO) |
| 0x9C402084 | high (known exploit) | METHOD_BUFFERED | MSR read (LnvMSRIO) |
| 0x0022BB07 | high | METHOD_NEITHER | FILE_DEVICE_UNKNOWN Function #3777 |
| 0x0080830F | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #195 |
| 0x002200F0 | medium | METHOD_BUFFERED | FILE_DEVICE_UNKNOWN Function #60 |
| 0x0080248C | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2339 |
| 0x00802484 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2337 |
| 0x00342444 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #2321 |
| 0x9C4060D4 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2101 |
| 0x9C40208C | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2083 |
| 0x9C402000 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2048 |
| 0x9C40A0DC | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2103 |
| 0x9C406144 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2129 |
| 0x9C40A0D8 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2102 |
| 0x9C4060CC | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2099 |
| 0x00224F0D | medium | METHOD_IN_DIRECT | FILE_DEVICE_UNKNOWN Function #963 |
| 0x0022FF15 | medium | METHOD_IN_DIRECT | FILE_DEVICE_UNKNOWN Function #4037 |
| 0x0034031C | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #199 |
| 0x00340032 | medium | METHOD_OUT_DIRECT | FILE_DEVICE_DISK Function #12 |
Section layout and Shannon entropy. High entropy in a code section is a packing or encryption indicator.
| Section | Virtual size | Raw size | Entropy | Flags |
|---|---|---|---|---|
| .text | 0x273D | 0x2800 | 5.8 | CODE, EXEC, READ |
| .rdata | 0x0BAC | 0x0C00 | 4.35 | IDATA, READ |
| .data | 0x0308 | 0x0200 | 0.6 | IDATA, READ, WRITE |
| .pdata | 0x0240 | 0x0400 | 2.53 | IDATA, READ |
| INIT | 0x0522 | 0x0600 | 4.27 | CODE, EXEC, READ, DISCARD |
| .rsrc | 0x0380 | 0x0400 | 2.94 | IDATA, READ, DISCARD |
| .reloc | 0x0034 | 0x0200 | 0.64 | IDATA, READ, DISCARD |
| Control Flow Guard | Enabled |
|---|---|
| ASLR | Enabled |
| DEP | Enabled |
| Integrity check | Enforced |
| Mitigation score | 100 / 100 |
| Rule | Severity | Detects |
|---|---|---|
| BYOVD_MemRW | critical | Phys memory mapping + device creation |
| SUSP_PhysMem | high | Physical memory mapping |
| SUSP_Callbacks | medium | Kernel callback registration |
Techniques this driver could enable if loaded by an adversary.
| ID | Technique | Tactic |
|---|---|---|
| T1003 | OS Credential Dumping | Credential Access |
| T1003.001 | OS Credential Dumping: LSASS Memory | Credential Access |
| T1006 | Direct Volume Access | Defense Evasion |
| T1014 | Rootkit | Defense Evasion |
| T1055.012 | Process Hollowing | Defense Evasion |
| T1068 | Exploitation for Privilege Escalation | Privilege Escalation |
| T1071 | Application Layer Protocol | Command and Control |
| T1542.001 | Pre-OS Boot: System Firmware | Persistence |
| T1543.003 | Windows Service | Persistence |
| T1562.006 | Indicator Blocking | Defense Evasion |
| T1564.001 | Hidden Files and Directories | Defense Evasion |
| T1569.002 | Service Execution | Execution |
| T1601 | Modify System Image | Defense Evasion |
| T1652 | Device Driver Discovery | Discovery |
| Signer | DigiCert Trusted Root G4 |
|---|---|
| Signer organisation | DigiCert Inc |
| Issuer | DigiCert Trusted Root G4 |
| Serial | 59B1B579E8E2132E23907BDA777755C |
| Valid from | 2013-08-01 12:00 UTC |
| Valid until | 2038-01-15 12:00 UTC |
| Signature validity | Verified |
Engine angr, status completed, 100 paths explored at a maximum depth of 100. Vulnerability classes reached: 1. Exploitable paths: 0.
Based on DriverShield static and dynamic analysis, LnvMSRIO.sys is flagged as malicious and should be treated as dangerous. Its composite risk score is 88/100 (verdict: malicious). Always validate findings independently before acting.
LnvMSRIO.sys has a DriverShield composite risk score of 88/100, placing it in the malicious verdict band. SHA256: 7023f08c9f99076a5fb82a0f661847e2951800f095fca1793a0e6bd9c949b478.
LnvMSRIO.sys is a Windows kernel-mode driver (.sys) analyzed by DriverShield for vulnerabilities, BYOVD abuse potential, and malware indicators. It is code-signed by DigiCert Trusted Root G4.
Related: Other drivers signed by DigiCert Trusted Root G4 · What an IOCTL dispatch code is · How YARA matching feeds the score · BYOVD research index · full driver database · CVE library · code signing atlas