能力值:
( LV2,RANK:10 )
|
-
-
26 楼
非常感谢Lz的开源.
看代码时有个疑问。在初始化EPT时
l1.QuadPart = 0; //这个是最低什么位置开始分配连续的内存 0x0
l2.QuadPart = -1; // 这个是最高到什么位置,-1 = 0xFFFFFFFFFFFFFFFF
l3.QuadPart = 0x200000; // 2MB 那么L3 是怎么理解??
MmAllocateContiguousMemorySpecifyCache(size,l1,l2,l3,type);
同样的,再分配Pdpte时,
FirstPdpteVA = (PULONG64)MmAllocateContiguousMemorySpecifyCache(PAGE_SIZE, l1, l2, l3, MmCached);
PAGE_SIZE 的定义为512 , 按EPT结构来说,分配的size应该为 sizeof(PVOID)*PAGE_SIZE,难道是因为L3?
还有这里的64,是否只初始化了64G?
for (i = 0; i < 64; i++) {
{
*FirstPdpteVA = (i * 0x1000 + FirstPdePA.QuadPart) | EPT_READ | EPT_WRIT | EPT_EXECUTE;
FirstPdpteVA++;
}
}
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
直接编译您的源码在win10运行会出错,但是分配VMXON和VMCS内存时不用MmAllocateContiguousMemorySpecifyCache(),改用MmAllocateNonCachedMemory()就可以运行了,我也不知道为什么
|
能力值:
( LV2,RANK:10 )
|
-
-
28 楼
看看大神的作品
|
能力值:
( LV5,RANK:60 )
|
-
-
29 楼
具体 MSDN MmAllocateContiguousMemorySpecifyCache
实际我只初始化啦4GB内存,内存大的要自己增加
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
看了很久还是不明白。
为什么只是初始化了4GB内存?
EPT 使用了2M 页表,512 * 2M * 4(张PDE) = 4GB 正好
PAGE_SIZE 为 0x1000 (4096) = 512(表项) * 8(size)
应该是 4(张PDE) * PAGE_SIZE 才是4G 吧?
可是代码 是 64 * PAGE_SIZE 。。
可是把64改成4 ,不能运行了。
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
不错,下了支持下@!!
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
赞一个,,,,,,,,,
|
能力值:
( LV2,RANK:10 )
|
-
-
34 楼
谢谢分享
|
能力值:
( LV3,RANK:30 )
|
-
-
35 楼
希望我今年能对VT入门。
|
能力值:
( LV2,RANK:10 )
|
-
-
36 楼
thanks a lot
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
好东西,多谢分享!
|
能力值:
( LV8,RANK:120 )
|
-
-
38 楼
good job
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
少了一个文件,你们是咋编译过的
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
难道还没明白?
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
看不懂,友情支持
|
能力值:
( LV2,RANK:10 )
|
-
-
43 楼
新人表示看不懂,看来还的多学习学习啊
|
能力值:
( LV2,RANK:10 )
|
-
-
44 楼
开启VT成功
地址 0000000000CC18B0 进程ID 1920 Eprocess FFFFFA802678E060
HookEptMemoryPage FFFFFA802678E060 Address 0000000000CC18B0
GiiitPA=FFFFFA8025325D70 GuestPA=00000000353AE8B0
Guest_CR3 0000000000000000 READCR3 0000000000187000
HandleEptViolation***************Cr3 0000000000187000
GUEST_RIP==0000000000CC1BB8 GPA==00000000353AEBB8 GVA==0000000000CC1BB8
读访问=0 写访问=0 执行访问=1 可读权限=0 可写权限=0 可执行权限=0 存在线性地址=1
TranSlation=1
当前页
执行访问异常GuestRip=0000000000CC1BB8 Cr3=0000000000D88000
DrnReadWrih Drn 0000000000000000
MSR_IA32_DEBUGCTL 0000000000000000
VM_EXIT_INTR_ERROR_CODE 0000000000000000
GUEST_PENDING_DBG_EXCEPTIONS 0000000000000000
pGuestRegs->rsp 000000000035F8E8
vmx: int1 guest_rip = 0x7455af20
//判断是不是目标EIP这里无法判断到呢
if (!Fix_HookTRAP_DEBUG(pGuestRegs)) 这个不用启用 一用就蓝屏
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
多谢楼主下载下来学习下~~
|
能力值:
( LV2,RANK:10 )
|
-
-
46 楼
多谢谢了.......学习
|
能力值:
( LV2,RANK:10 )
|
-
-
47 楼
感谢分享, 非常好的VT源码... 现在搞VT的真多啊, 不过好多都没有用过真正方便用户的地方
|
能力值:
( LV2,RANK:10 )
|
-
-
48 楼
支持支持支持支持支持支持支持支持支持支持支持支持▓▓▓▓▓▓▓▓▓支持支持
支持支持支持支持支持支持支持支持支持支持支持支持▓▓▓▓▓▓▓▓▓支持支持
支持支持支持支持支持支持支持支持支持▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓支持支持
支持支持支持支持支持支持支持支▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓支持支持
支持支持支持支持支持支▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓支持支持支持支持支持
支持支持支持支持▓▓▓▓▓▓▓支▓▓▓支持▓▓▓▓▓支持支持支持支持支持支
支持支▓▓▓▓▓▓▓▓▓▓▓▓支持支持支持▓▓▓▓支持支持支持支持支持支持
支▓▓▓▓▓▓▓▓▓▓▓▓▓▓支持支持支持▓▓▓▓支持支持支持支持支持支持
支▓▓▓▓▓▓▓▓▓▓▓▓支持支持支持支▓▓▓▓▓▓▓▓▓▓▓支持支持支持
支▓▓▓▓▓▓▓▓▓▓▓▓支持支持支持▓▓▓▓▓▓▓▓▓▓▓▓▓▓支持支持
支持▓▓▓▓▓▓▓▓▓▓支持支持支▓▓▓▓▓▓支持支▓▓▓▓▓▓▓支持支持
支持支持支持支持▓▓▓▓支持支持支▓▓▓▓支持支持支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支持▓▓支持支▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支持▓▓▓▓支▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支持▓▓▓▓支▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支持▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支持▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支▓▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支▓▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支▓▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓▓支▓▓▓▓支持▓▓▓▓▓支持支持支
支持支持支持支持▓▓▓▓支持支持▓▓▓支持▓▓▓▓支持▓▓▓▓▓支持支持支
支持▓▓支持支▓▓▓▓▓支持支持▓▓▓支持▓▓▓支持支▓▓▓▓▓支持支持支
支持▓▓▓▓▓▓▓▓▓▓支持支持支▓▓支持▓▓支持支持▓▓▓▓▓支持支持支
支持支▓▓▓▓▓▓▓▓▓支持支持支持支持▓▓▓支持支持支▓▓▓▓支持支持支
支持支持支▓▓▓▓▓▓▓支持支持支持支持▓▓▓支▓▓▓▓支持支持支持支持支
支持支持支持▓▓▓▓▓▓支持支持支持支▓▓▓▓支持▓▓▓▓▓支持支持支持支
支持支持支持支持支▓▓▓支持支持支持▓▓▓▓▓支持支▓▓▓▓▓▓▓支持支持
支持支持支持支持支持支持支持支持▓▓▓▓▓▓支持支持支▓▓▓▓▓▓支持支持
支持支持支持支持支持支持支持支▓▓▓▓▓▓支持支持支持▓▓▓▓▓▓▓支持支
支持支持支持支持支持支持支持▓▓▓▓▓支持支持支持支持支▓▓▓▓▓▓支持支
支持支持支持支持支持支持支▓▓▓▓▓支持支持支持支持支持支▓▓▓▓支持支持
支持支持支持支持支持支持▓▓▓支持支持支持支持支持支持支持支▓▓▓支持支持
|
能力值:
( LV2,RANK:10 )
|
-
-
49 楼
支持大神作品,学习学习了。
|
能力值:
( LV2,RANK:10 )
|
-
-
50 楼
感谢分享,努力学习!!
|
|
|