-
-
[原创] 一种新的虚拟内存转物理内存方式
-
发表于: 2天前 210
-
在Windows 11 24H2后 Windows自带的storport.sys新增了一个RaUnitGetContiguousPhysicalAddressIoctl 这个IOCTL没有做任何校验 实际功能如下:
1. IoGetRequestorProcess(Irp)
2. 若请求进程 != 当前进程 → KeStackAttachProcess(到调用者地址空间)
3. MmIsAddressValid(VirtualAddress)
失败 → STATUS_INVALID_ADDRESS (0xC0000141)
4. PhysicalAddress = MmGetPhysicalAddress(VirtualAddress)
5. 若 Flags bit0 置位:
RaidLockContiguousPhysicalPages(Unit, PA, Length)
6. KeUnstackDetachProcess
7. 把 PA 写回 IRP buffer,IofCompleteRequest
直接向设备发送ioctl请求即可进行翻译。可惜这个功能只在24H2上新增 以前的版本没有
冰与火的战歌:Windows内核攻防实战高级班!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。
赞赏
赞赏
雪币:
留言: