MiniTool pwdrvio.sys Kernel Write-What-Where — Local Privilege Escalation Primitive (CVE-2026-36981)
by canomer · 2026-07-05
- Severity
- High
- CVE
- CVE-2026-36981
- Category
- binary
- Affected product
- MiniTool pwdrvio.sys kernel driver
- Affected versions
- Not specified in source
- Disclosed
- 2026-07-05
- Patch status
- patched
Archive entry
intelseclab/poc-archiveMetadata
| Field | Value |
|---|---|
| Date Added | 2026-07-05 |
| Last Updated | 2026-05-10 |
| Author / Researcher | canomer |
| CVE / Advisory | CVE-2026-36981 |
| Category | binary |
| Severity | High |
| CVSS Score | Not specified in source |
| Status | PoC |
| Tags | minitool, kernel-driver, write-what-where, lpe, arbitrary-kernel-write, windows |
| Related | N/A |
Affected Target
| Field | Value |
|---|---|
| Software / System | MiniTool pwdrvio.sys kernel driver |
| Versions Affected | Not specified in source |
| Language / Platform | C PoC (debugger-assisted) |
| Authentication Required | Local, unprivileged user |
| Network Access Required | No |
Summary
MiniTool’s pwdrvio.sys kernel driver exposes a write-what-where condition through its IOCTL interface, allowing an unprivileged local attacker to write attacker-controlled data to an attacker-controlled kernel address. The included PoC demonstrates a debugger-assisted arbitrary kernel-write primitive that can be leveraged toward full privilege escalation. Coordinated disclosure ran from vendor notification in February 2026 through public disclosure in May 2026.
Vulnerability Details
Root Cause
The pwdrvio.sys IOCTL handler accepts both a destination kernel address and data to write from the calling (unprivileged) process without validating that the address is safe to write to.
Attack Vector
- As a local, unprivileged user, open a handle to the pwdrvio.sys device.
- Send a crafted IOCTL request specifying an attacker-chosen kernel address and attacker-controlled data.
- The driver writes the data to the specified kernel address, providing a write-what-where primitive usable to escalate privileges (e.g. by overwriting a token or credential structure).
Impact
Local unprivileged user can obtain an arbitrary kernel-write primitive, enabling privilege escalation to SYSTEM.
Environment / Lab Setup
Target: Windows system with the vulnerable MiniTool pwdrvio.sys driver loaded
Attacker: C compiler, a kernel debugger (for the demonstrated PoC), local unprivileged Windows account
Proof of Concept
PoC Script
See
LPE_PoC.cin this folder.
| |
Uses the pwdrvio.sys IOCTL interface to perform a debugger-assisted arbitrary kernel write, demonstrating the underlying write-what-where primitive that can be leveraged toward privilege escalation.
Detection & Indicators of Compromise
Signs of compromise:
- Unprivileged processes sending IOCTLs to pwdrvio.sys
- Unexplained privilege escalation events on systems with MiniTool software installed
Remediation
| Action | Detail |
|---|---|
| Primary fix | Update to a patched MiniTool driver release once the vendor issues one |
| Interim mitigation | Remove or restrict loading of pwdrvio.sys where MiniTool software is not actively required |
References
Notes
Mirrored from https://github.com/canomer/CVE-2026-36981-Kernel-EoP-PoC on 2026-07-05.
| |