#ifdef SECURE RtlCopyMemory(KernelBuffer, UserBuffer, (SIZE_T)POOL_BUFFER_SIZE); #else DbgPrint("[+] Triggering Buffer Overflow in NonPagedPool\n"); //sizeof(KernelBuffer) = 504,Size=544 RtlCopyMemory(KernelBuffer, UserBuffer, Size); #endif if (KernelBuffer) { //到这里就蓝屏 ExFreePoolWithTag(KernelBuffer, (ULONG)POOL_TAG); KernelBuffer = NULL; } }
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
yy虫子yy RtlCopyMemory后就ExFreePoolWithTag? 这是要干嘛?然而这段代码并不能说明什么 蓝屏原因很多,用windbg分析下dump
吴俊 就是从用户内存空间复制了一段数据到内核内存空间,复制的大小超过了内核池申请的大小。我刚才测试了,在32位上能运行,64位不行。HackSysExtremeVulnerableDriver这个实验64位 ...