Analysis of HW.sys: vulnerable verdict, risk score 78/100. 3 YARA matches, 0/76 multi-engine detections. SHA256 0483b32f9544e9c3. Kernel imports, IOCTL codes, MITRE ATT&CK, and code-signing details.
DriverShield analyzed the Windows kernel driver HW.sys and assigned a verdict of Vulnerable with a composite risk score of 78/100, indicating a known or likely vulnerability surface (60-79 band).
| Verdict | Vulnerable (78/100) |
| YARA matches | 3 |
| Multi-engine detections | 0 / 76 |
| File size | 53336 bytes |
| Code-signing signer | Microsoft Windows Hardware Compatibility Publisher |
| Analyzed | 2026-04-04 |
| SHA256 | 0483b32f9544e9c3cc3f206e7bc983ea83f5a9ca44864f2af9b8fc10ff45949f |
| SHA1 | 01e74172e10d8b5f589e26ee8e3e4aec485edc6f |
| MD5 | 9347fbeeaf917fc4a1d64a0b4d61187a |
Version resource data embedded in the HW.sys PE header, as extracted by the analysis engine.
| File description | HW - Windows XP-11 (32/64 bit) kernel mode driver for PC ports/memory/PCI access |
|---|---|
| Product | HW |
| Company | Marvin Test Solutions, Inc. |
| Original filename | HW.sys |
| Internal name | Hw.sys |
| File version | 5.0.2.0 |
| Copyright | Copyright © 1996-2023 Marvin Test Solutions, Inc. 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 | 51 / 100 |
| Known-vulnerable corpus | 100 / 100 |
| Code-signing state | 80 / 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 HW.sys, ranked by exploitation relevance.
| API | Risk | Why it matters |
|---|---|---|
| ZwMapViewOfSection | critical | Highly dangerous - potential for arbitrary code execution, memory corruption, or process termination |
| MmMapLockedPages | critical | Highly dangerous - potential for arbitrary code execution, memory corruption, or process termination |
| MmMapIoSpace | critical | Highly dangerous - potential for arbitrary code execution, memory corruption, or process termination |
| MmGetPhysicalAddress | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| MmAllocateContiguousMemory | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| MmGetSystemRoutineAddress | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| ZwOpenProcess | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| HalGetBusDataByOffset | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| ObReferenceObjectByHandle | medium | Moderate risk - system modification capability |
| ZwSetValueKey | medium | Moderate risk - system modification capability |
| MmUnmapIoSpace | medium | Moderate risk - system modification capability |
| ExAllocatePool | low | Standard kernel API - generally benign |
| KeInitializeEvent | low | Standard kernel API - generally benign |
| DbgPrint | low | Standard kernel API - generally benign |
| ExAllocatePoolWithTag | low | Standard kernel API - generally benign |
| IoDeleteDevice | low | Standard kernel API - generally benign |
| IoDeleteSymbolicLink | low | Standard kernel API - generally benign |
| IoCreateDevice | low | Standard kernel API - generally benign |
| ZwOpenKey | low | Standard kernel API - generally benign |
| IoCreateSymbolicLink | low | Standard kernel API - generally benign |
| KeSetEvent | low | Standard kernel API - generally benign |
| KeWaitForSingleObject | low | Standard kernel API - generally benign |
| RtlInitUnicodeString | low | Standard kernel API - generally benign |
| ZwClose | low | Standard kernel API - generally benign |
| IofCompleteRequest | 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 |
|---|---|---|---|
| 0x0080808B | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #34 |
| 0x0080B883 | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #3616 |
| 0x0080928B | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #1186 |
| 0x0080888B | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #546 |
| 0x0080860F | high | METHOD_NEITHER | FILE_DEVICE_CUSTOM Function #387 |
| 0x00227883 | high | METHOD_NEITHER | FILE_DEVICE_UNKNOWN Function #3616 |
| 0x00802484 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2337 |
| 0x0080248C | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2339 |
| 0x9C40A440 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2320 |
| 0x9C406400 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2304 |
| 0x9C40A584 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2401 |
| 0x9C40A5C4 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2417 |
| 0x9C40A604 | medium | METHOD_BUFFERED | CUSTOM_LENOVO Function #2433 |
| 0x00802494 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2341 |
| 0x9876CCAD | medium | METHOD_IN_DIRECT | CUSTOM_PROCESS Function #811 |
| 0x00340032 | medium | METHOD_OUT_DIRECT | FILE_DEVICE_DISK Function #12 |
| 0x003403A8 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #234 |
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 | 0x7909 | 0x7A00 | 5.49 | CODE, EXEC, READ |
| .rdata | 0x1AC6 | 0x1C00 | 5.97 | IDATA, READ |
| .data | 0x0100 | 0x0200 | 4.98 | IDATA, READ, WRITE |
| .pdata | 0x0438 | 0x0600 | 3.18 | IDATA, READ |
| .rsrc | 0x0408 | 0x0600 | 2.48 | IDATA, READ, DISCARD |
| Control Flow Guard | Not enabled |
|---|---|
| ASLR | Enabled |
| DEP | Enabled |
| Integrity check | Not enforced |
| Mitigation score | 55 / 100 |
| Rule | Severity | Detects |
|---|---|---|
| PUA_VULN_Driver_Marvintestsolutionsinc_Hwsys_Hw_0483 | medium | Detects vulnerable driver mentioned in known-vulnerable driver corpus project using VersionInfo values from the PE header - hw.sys |
| BYOVD_MemRW | critical | Phys memory mapping + device creation |
| SUSP_PhysMem | high | Physical memory mapping |
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.001 | Process Injection: DLL Injection | Defense Evasion |
| T1055.012 | Process Hollowing | Defense Evasion |
| T1068 | Exploitation for Privilege Escalation | Privilege Escalation |
| T1071 | Application Layer Protocol | Command and Control |
| T1112 | Modify Registry | Defense Evasion |
| T1211 | Exploitation for Defense Evasion | Defense Evasion |
| T1489 | Service Stop | Impact |
| T1542.001 | Pre-OS Boot: System Firmware | Persistence |
| T1543.003 | Windows Service | Persistence |
| T1547.001 | Registry Run Keys | Persistence |
| T1553.002 | Subvert Trust Controls: Code Signing | Defense Evasion |
| T1562.001 | Impair Defenses | Defense Evasion |
| T1569.002 | Service Execution | Execution |
| T1601 | Modify System Image | Defense Evasion |
| T1652 | Device Driver Discovery | Discovery |
| Signer | Microsoft Windows Hardware Compatibility Publisher |
|---|---|
| Signer organisation | Microsoft Corporation |
| Issuer | Microsoft Windows Third Party Component CA 2014 |
| Serial | 3300000061C88B129C2A7F1D87000000000061 |
| Valid from | 2023-04-06 19:16 UTC |
| Valid until | 2024-04-03 19:16 UTC (expired) |
| Signature validity | Not verified |
Engine angr, status completed, 100 paths explored at a maximum depth of 100. Vulnerability classes reached: 1. Exploitable paths: 0.
Corpus match: this hash is present in the known-vulnerable driver corpus DriverShield cross-references during analysis, which is why the score carries a full weighting on that component.
Based on DriverShield static and dynamic analysis, HW.sys is flagged as vulnerable and is a potential Bring Your Own Vulnerable Driver (BYOVD) risk. Its composite risk score is 78/100 (verdict: vulnerable). Always validate findings independently before acting.
HW.sys has a DriverShield composite risk score of 78/100, placing it in the vulnerable verdict band. SHA256: 0483b32f9544e9c3cc3f206e7bc983ea83f5a9ca44864f2af9b8fc10ff45949f.
HW.sys is a Windows kernel-mode driver (.sys) analyzed by DriverShield for vulnerabilities, BYOVD abuse potential, and malware indicators. It is code-signed by Microsoft Windows Hardware Compatibility Publisher.
Related: Other drivers signed by Microsoft Windows Hardware Compatibility Publisher · What an IOCTL dispatch code is · How YARA matching feeds the score · BYOVD research index · full driver database · CVE library · code signing atlas