Analysis of usbaapl64.sys: suspicious verdict, risk score 31/100. 0 YARA matches, 0/76 multi-engine detections. SHA256 4dec2fc20329f248. Kernel imports, IOCTL codes, MITRE ATT&CK, and code-signing details.
DriverShield analyzed the Windows kernel driver usbaapl64.sys and assigned a verdict of Suspicious with a composite risk score of 31/100, indicating some risk signals warranting review (30-59 band).
| Verdict | Suspicious (31/100) |
| YARA matches | 0 |
| Multi-engine detections | 0 / 76 |
| File size | 54784 bytes |
| Analyzed | 2026-04-14 |
| SHA256 | 4dec2fc20329f248135da24cb6694fd972dcce8b1bbea8d872fde41939e96aaf |
| SHA1 | 9d76d3df84ca8b3b384577cb87b7aba0ee33f08d |
| MD5 | f957092c63cd71d85903ca0d8370f473 |
Version resource data embedded in the usbaapl64.sys PE header, as extracted by the analysis engine.
| File description | Apple Mobile Device USB Driver |
|---|---|
| Product | Apple Mobile Device USB Driver |
| Company | Apple, Inc. |
| Original filename | usbaapl.sys |
| Internal name | usbaapl.sys |
| File version | 1, 67, 0, 0 |
| Copyright | © Apple, 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 | 0 / 100 |
| Dangerous kernel imports | 100 / 100 |
| IOCTL dispatch surface | 78 / 100 |
| Known-vulnerable corpus | 0 / 100 |
| Code-signing state | 50 / 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 usbaapl64.sys, ranked by exploitation relevance.
| API | Risk | Why it matters |
|---|---|---|
| MmMapLockedPagesSpecifyCache | critical | Highly dangerous - potential for arbitrary code execution, memory corruption, or process termination |
| MmGetSystemRoutineAddress | high | Potentially dangerous - could be used for privilege escalation or security bypass |
| ZwSetValueKey | medium | Moderate risk - system modification capability |
| KeBugCheckEx | medium | Moderate risk - system modification capability |
| RtlInitUnicodeString | low | Standard kernel API - generally benign |
| ZwClose | low | Standard kernel API - generally benign |
| KeDelayExecutionThread | low | Standard kernel API - generally benign |
| IoDeleteDevice | low | Standard kernel API - generally benign |
| KeSetEvent | low | Standard kernel API - generally benign |
| IoCreateDevice | low | Standard kernel API - generally benign |
| IofCompleteRequest | low | Standard kernel API - generally benign |
| KeWaitForSingleObject | low | Standard kernel API - generally benign |
| ExFreePool | low | Standard kernel API - generally benign |
| IoBuildDeviceIoControlRequest | low | Standard kernel API - generally benign |
| KeInitializeEvent | low | Standard kernel API - generally benign |
| ExAllocatePoolWithTag | 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 |
|---|---|---|---|
| 0x0022001F | high | METHOD_NEITHER | FILE_DEVICE_UNKNOWN Function #7 |
| 0x0022044F | high | METHOD_NEITHER | FILE_DEVICE_UNKNOWN Function #275 |
| 0x00220117 | high | METHOD_NEITHER | FILE_DEVICE_UNKNOWN Function #69 |
| 0x0034004B | high | METHOD_NEITHER | FILE_DEVICE_DISK Function #18 |
| 0x00343337 | high | METHOD_NEITHER | FILE_DEVICE_DISK Function #3277 |
| 0x002200F0 | medium | METHOD_BUFFERED | FILE_DEVICE_UNKNOWN Function #60 |
| 0x002200B4 | medium | METHOD_BUFFERED | FILE_DEVICE_UNKNOWN Function #45 |
| 0x0080EC81 | medium | METHOD_IN_DIRECT | FILE_DEVICE_CUSTOM Function #2848 |
| 0x0080249C | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2343 |
| 0x0080248C | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2339 |
| 0x00802494 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #2341 |
| 0x00220408 | medium | METHOD_BUFFERED | FILE_DEVICE_UNKNOWN Function #258 |
| 0x00343D00 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #3904 |
| 0x00808689 | medium | METHOD_IN_DIRECT | FILE_DEVICE_CUSTOM Function #418 |
| 0x00220B15 | medium | METHOD_IN_DIRECT | FILE_DEVICE_UNKNOWN Function #709 |
| 0x0080BDC0 | medium | METHOD_BUFFERED | FILE_DEVICE_CUSTOM Function #3952 |
| 0x00340039 | medium | METHOD_IN_DIRECT | FILE_DEVICE_DISK Function #14 |
| 0x00340038 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #14 |
| 0x00340048 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #18 |
| 0x00340046 | medium | METHOD_OUT_DIRECT | FILE_DEVICE_DISK Function #17 |
| 0x00340059 | medium | METHOD_IN_DIRECT | FILE_DEVICE_DISK Function #22 |
| 0x00340044 | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #17 |
| 0x0034004C | medium | METHOD_BUFFERED | FILE_DEVICE_DISK Function #19 |
| 0x00340041 | medium | METHOD_IN_DIRECT | FILE_DEVICE_DISK Function #16 |
Showing 24 of 26 extracted control codes.
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 | 0x98CC | 0x9A00 | 6.18 | CODE, EXEC, READ |
| .rdata | 0x09E4 | 0x0A00 | 5.04 | IDATA, READ |
| .data | 0x1640 | 0x1800 | 3.23 | IDATA, READ, WRITE |
| .pdata | 0x05E8 | 0x0600 | 4.44 | IDATA, READ |
| INIT | 0x08BA | 0x0A00 | 4.69 | CODE, EXEC, READ, WRITE, DISCARD |
| .rsrc | 0x0390 | 0x0400 | 2.99 | IDATA, READ, DISCARD |
| .reloc | 0x018A | 0x0200 | 3.08 | IDATA, READ, DISCARD |
| Control Flow Guard | Not enabled |
|---|---|
| ASLR | Not enabled |
| DEP | Not enabled |
| Integrity check | Not enforced |
| Mitigation score | 0 / 100 |
Techniques this driver could enable if loaded by an adversary.
| ID | Technique | Tactic |
|---|---|---|
| T1003.001 | OS Credential Dumping: LSASS Memory | Credential Access |
| 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 |
| T1543.003 | Windows Service | Persistence |
| T1547.001 | Registry Run Keys | Persistence |
| T1553.002 | Subvert Trust Controls: Code Signing | Defense Evasion |
| T1553.006 | Code Signing Policy Modification | Defense Evasion |
| T1569.002 | Service Execution | Execution |
| T1652 | Device Driver Discovery | Discovery |
Engine angr, status completed, 81 paths explored at a maximum depth of 81. Vulnerability classes reached: 0. Exploitable paths: 2.
Based on DriverShield static and dynamic analysis, usbaapl64.sys shows some suspicious signals and warrants manual review. Its composite risk score is 31/100 (verdict: suspicious). Always validate findings independently before acting.
usbaapl64.sys has a DriverShield composite risk score of 31/100, placing it in the suspicious verdict band. SHA256: 4dec2fc20329f248135da24cb6694fd972dcce8b1bbea8d872fde41939e96aaf.
usbaapl64.sys is a Windows kernel-mode driver (.sys) analyzed by DriverShield for vulnerabilities, BYOVD abuse potential, and malware indicators.
Related: What an IOCTL dispatch code is · BYOVD research index · full driver database · CVE library · code signing atlas