-
-
未解决
[求助]驱动CR3跨进程读写,奇怪的现象
-
发表于:
2020-10-31 12:54
3230
-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | VOID KWriteProcessMemory(PEPROCESS Process, PVOID Address, ULONG Length, PVOID Buffer )
{
PVOID Pdt = Getpdt(Process);
PVOID oldpdt;
KIRQL irql;
irql = WPOFF();
/ / _disable();
oldpdt = (PVOID)__readcr3();
__writecr3(Pdt);
/ / _enable();
__try {
ProbeForRead(Address, Length, 1 );
RtlCopyMemory(Address, Buffer , Length);
}
__except ( 1 ) {
DbgPrint( "WriteProcessMem Rrror!" );
}
/ / _disable();
__writecr3(oldpdt);
/ / _enable();
WPON(irql);
}
|
测试是在WIN7 64下,想32位的进程00401000的地址写入数据
如果不关保护的话会引起蓝屏,关掉保护强制写入后就出现了一个怪事了。。。
写入倒是值正确的写入了,可关掉进程重新打开地址还是上次写入的数据。。
更奇怪的事把文件名改了再打开还是一样。。。。但是把文件从新复制一遍到虚拟机就刷新了,这是咋回事啊??
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课