Analysis of usbd.sys: clean verdict, risk score 13/100. 0 YARA matches. SHA256 45009db1e837cd09. Kernel imports, IOCTL codes, MITRE ATT&CK, and code-signing details.
DriverShield analyzed the Windows kernel driver usbd.sys and assigned a verdict of Clean with a composite risk score of 13/100, indicating no notable risk signals (0-29 band).
| Verdict | Clean (13/100) |
| YARA matches | 0 |
| File size | 34176 bytes |
| Code-signing signer | Microsoft Windows |
| Analyzed | 2026-03-22 |
| SHA256 | 45009db1e837cd096a13586620b50b889fbd133c587f116e629d321370d8f7b1 |
| SHA1 | 082700b2e79d842be791853818f362aeb4c18210 |
| MD5 | e339038c80ebacd722d56c22269431a8 |
Version resource data embedded in the usbd.sys PE header, as extracted by the analysis engine.
| File description | Universal Serial Bus Driver |
|---|---|
| Product | Microsoft® Windows® Operating System |
| Company | Microsoft Corporation |
| Original filename | usbd.sys |
| Internal name | usbd.sys |
| File version | 10.0.19041.4474 (WinBuild.160101.0800) |
| Copyright | © Microsoft Corporation. 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 | 0 / 100 |
| Dangerous kernel imports | 30 / 100 |
| IOCTL dispatch surface | 24 / 100 |
| Known-vulnerable corpus | 0 / 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 usbd.sys, ranked by exploitation relevance.
| API | Risk | Why it matters |
|---|---|---|
| MmGetSystemRoutineAddress | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| ZwQueryValueKey | low | Standard kernel API - generally benign |
| IofCompleteRequest | low | Standard kernel API - generally benign |
| KeWaitForSingleObject | low | Standard kernel API - generally benign |
| ExAllocatePoolWithTag | low | Standard kernel API - generally benign |
| KeSetEvent | low | Standard kernel API - generally benign |
| ZwClose | low | Standard kernel API - generally benign |
| ExFreePool | low | Standard kernel API - generally benign |
| KeInitializeEvent | low | Standard kernel API - generally benign |
| RtlInitUnicodeString | 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 |
|---|---|---|---|
| 0x0034830D | medium | METHOD_IN_DIRECT | FILE_DEVICE_DISK Function #195 |
| 0x00802484 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2337 |
| 0x00222B05 | medium | METHOD_IN_DIRECT | FILE_DEVICE_UNKNOWN Function #2753 |
| 0x0080BB89 | medium | METHOD_IN_DIRECT | FILE_DEVICE_CUSTOM Function #3810 |
| 0x0080B389 | medium | METHOD_IN_DIRECT | FILE_DEVICE_CUSTOM Function #3298 |
| 0x008091B6 | medium | METHOD_OUT_DIRECT | FILE_DEVICE_CUSTOM Function #1133 |
| 0x00340398 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #230 |
| 0x0034002E | medium | METHOD_OUT_DIRECT | FILE_DEVICE_DISK Function #11 |
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 | 0x298A | 0x2A00 | 6.1 | CODE, EXEC, READ |
| .rdata | 0x0B38 | 0x0C00 | 4.59 | IDATA, READ |
| .data | 0x02C8 | 0x0200 | 1.16 | IDATA, READ, WRITE |
| .pdata | 0x03FC | 0x0400 | 4.24 | IDATA, READ |
| .idata | 0x0478 | 0x0600 | 3.47 | IDATA, READ |
| PAGE | 0x0606 | 0x0800 | 5.13 | CODE, EXEC, READ |
| .edata | 0x0300 | 0x0400 | 4.39 | IDATA, READ |
| INIT | 0x0284 | 0x0400 | 4.18 | CODE, EXEC, READ, DISCARD |
| GFIDS | 0x008C | 0x0200 | 1.26 | IDATA, READ, DISCARD |
| .rsrc | 0x0400 | 0x0400 | 3.35 | IDATA, READ, DISCARD |
| .reloc | 0x0218 | 0x0400 | 2.77 | IDATA, READ, DISCARD |
| Control Flow Guard | Enabled |
|---|---|
| ASLR | Enabled |
| DEP | Enabled |
| Integrity check | Not enforced |
| Mitigation score | 85 / 100 |
Techniques this driver could enable if loaded by an adversary.
| ID | Technique | Tactic |
|---|---|---|
| T1071 | Application Layer Protocol | Command and Control |
| T1211 | Exploitation for Defense Evasion | Defense Evasion |
| T1543.003 | Windows Service | Persistence |
| T1553.002 | Subvert Trust Controls: Code Signing | Defense Evasion |
| T1652 | Device Driver Discovery | Discovery |
| Signer | Microsoft Windows |
|---|---|
| Signer organisation | Microsoft Corporation |
| Issuer | Microsoft Windows Production PCA 2011 |
| Serial | 330000045FF3C96C1A7FF7DA1D00000000045F |
| Valid from | 2023-11-16 19:20 UTC |
| Valid until | 2024-11-14 19:20 UTC (expired) |
| Signature validity | Not verified |
Engine angr, status no_findings, 0 paths explored at a maximum depth of 0. Vulnerability classes reached: 0. Exploitable paths: 0.
Based on DriverShield static and dynamic analysis, usbd.sys is assessed as clean, with no notable risk signals. Its composite risk score is 13/100 (verdict: clean). Always validate findings independently before acting.
usbd.sys has a DriverShield composite risk score of 13/100, placing it in the clean verdict band. SHA256: 45009db1e837cd096a13586620b50b889fbd133c587f116e629d321370d8f7b1.
usbd.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.
Related: Other drivers signed by Microsoft Windows · What an IOCTL dispatch code is · BYOVD research index · full driver database · CVE library · code signing atlas