Analyzing windows driver malware
Skill meltedinhex/analyst-ai-pack/skills/analyzing-windows-driver-malware
Analyzes malicious and vulnerable Windows kernel drivers (.sys) by parsing the PE for the native subsystem, identifying DriverEntry/IRP dispatch and IOCTL handlers, and flagging BYOVD and kernel-callback abuse. Activates for requests to analyze a Windows driver, examine a .sys sample, or assess a BYOVD/kernel driver threat.From its SKILL.md
npx -y skills add meltedinhex/analyst-ai-pack --skill analyzing-windows-driver-malwareAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 21 stars21 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.8 KB, 468 tokens by cl100k_base, as published. Nobody here has run it
Analyzing Windows Driver Malware
When to Use
- You have a
.syskernel driver (malicious rootkit driver or a vulnerable driver used for BYOVD) and need to identify its entry, IRP/IOCTL handlers, and dangerous kernel operations. - You are assessing privilege-escalation or kernel-stealth risk.
Do not use this by loading the driver — analyze it statically. Loading kernel code is dangerous and is the threat itself.
Prerequisites
- The driver
.sys(read inertly).
Safety & Handling
- Read bytes statically; never install/load the driver. Note its signing status for BYOVD context.
Workflow
Step 1: Confirm it is a kernel driver
python scripts/analyst.py inspect driver.sys
Verifies the PE native subsystem (1), kernel imports (ntoskrnl.exe, hal.dll), and reports
imported kernel APIs.
Step 2: Identify dispatch and dangerous primitives
Flag IRP/IOCTL handling (IoCreateDevice, IoCreateSymbolicLink, IRP_MJ_DEVICE_CONTROL),
arbitrary read/write primitives (MmMapIoSpace, ZwMapViewOfSection, MmCopyMemory), and
callback registration (PsSetCreateProcessNotifyRoutine, ObRegisterCallbacks).
Step 3: Assess BYOVD/stealth potential
Map exposed IOCTLs to capabilities (physical memory access, process kill, token theft) that BYOVD abuse relies on.
Step 4: Document
Record the driver's handlers, dangerous primitives, signing status, and risk.
Validation
- Native subsystem and kernel imports confirm a driver.
- Dispatch/IOCTL and dangerous-primitive imports are reported with evidence.
- Capabilities are tied to concrete imported APIs.
Pitfalls
- Legitimate vendor drivers that are nonetheless exploitable (BYOVD) — context matters.
- Drivers resolving APIs dynamically, hiding imports.
- Confusing user-mode helper components with the kernel driver itself.
References
- See
references/api-reference.mdfor the inspector. - WDK and ATT&CK T1068 references (linked in frontmatter).
What ships with it: 3 files
4.4 KB alongside SKILL.md, 1 of them executable
references/
- api-reference.md1.3 KB
scripts/
- analyst.pyruns2.8 KB
- LICENSE340 B