tihomirocrew/portwell-lpe
GitHub: tihomirocrew/portwell-lpe
针对 Portwell 驱动 CVE-2026-3437 任意物理内存读写漏洞的 PoC 利用代码,可用于本地提权至 SYSTEM。
Stars: 0 | Forks: 0
# cve-2026-3437
通过 `MmMapIoSpace` 在 `portwell.sys` (Portwell Engineering Toolkits v4.8.2) 中进行任意物理内存读写。通过与驱动程序的 IOCTL 接口交互,可实现 LPE/SYSTEM 提权以及 BYOVD。
## 分析
该驱动程序为 `IRP_MJ_DEVICE_CONTROL` 注册了一个分发例程,以处理来自用户态的 `DeviceIoControl` 调用。

在分发例程内部,我们可以找到对 `sub_11F80` 的调用。

查看该函数内部,会发现以下情况:
- 通过 `MmMapIoSpace` 并使用用户提供的物理地址和数据,实现任意物理内存写入
- 对用户提供的参数没有进行适当的验证

回到分发例程,我们还可以找到对 `sub_11E40` 的调用。

查看该函数内部,会发现以下情况:
- 通过 `MmMapIoSpace` 实现任意物理内存读取
- 对用户提供的参数没有进行适当的验证

## 用法
```
sc create portwell binPath=C:\windows\temp\portwell.sys type=kernel
sc start portwell
.\cve-2026-3437.exe
```
## 参考
- 🔍 [SentinelOne 分析](https://www.sentinelone.com/vulnerability-database/cve-2026-3437/)
- 🛡️ [LOLDrivers](https://www.loldrivers.io/drivers/84f92ac1-1e72-420d-9cc0-65c838b90a4d/)
- 📋 [NVD 记录](https://nvd.nist.gov/vuln/detail/CVE-2026-3437)
标签:BYOVD, UML, Web报告查看器, 内核驱动, 协议分析, 权限提升, 网络协议