能力值:
( LV2,RANK:10 )
|
-
-
26 楼
表哥牛批嗷
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
xiaofu
试了下,可以用,牛批
什么编辑器啊 还能有表情
|
能力值:
( LV8,RANK:158 )
|
-
-
28 楼
枚举PXE索引获取ptebase
PVOID64 KGetPteBase_SEH() { ULONG64 Cr3 = MmiGetCr3();; ULONG64 Result = 0; for (int i = 0; i < 512; ++i) { ULONG64 Page_Table = MmiMakeVirtualAddress_PXE(i); MmiSetPteBase(Page_Table); PULONG64 pxe_va = MmiGetPxeAddress(0); ULONG64 Entry = 0; //Entry = pxe_va[i]; //Sleep(100); if (!MmIsAddressValid(pxe_va))continue; if (!MmiSafeMemcpy(&Entry, &pxe_va[i], 8))continue; if (MmiEntryToAddress(Entry) == Cr3) { Result = Page_Table; break; } } MmiClearPteBase(); return Result; }
最后于 2019-10-27 21:33
被cslime编辑
,原因: 枚举PXE索引
|
能力值:
( LV10,RANK:160 )
|
-
-
29 楼
mark
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
大表哥牛逼
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
表哥出手 鹅厂失眠
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
不懂明文包怎么搜,有现成的特征吗大佬
|
能力值:
( LV3,RANK:20 )
|
-
-
33 楼
大佬牛皮,学习思路
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
ULONG64 HvFindPTE() { // Get PTE_BASE from MmGetVirtualForPhysical UNICODE_STRING ApiName = {0}; RtlInitUnicodeString(&ApiName, L"MmGetVirtualForPhysical"); PVOID p_MmGetVirtualForPhysical = MmGetSystemRoutineAddress(&ApiName); if (!p_MmGetVirtualForPhysical) { return; }
static const UCHAR kPatternWin10x64[] = { 0x48, 0x8b, 0x04, 0xd0, // mov rax, [rax+rdx*8] 0x48, 0xc1, 0xe0, 0x19, // shl rax, 19h 0x48, 0xba, // mov rdx, ????????`???????? ; PTE_BASE };
__try { for (ULONG i = 0; i < 255; i++) { //文雅而不失响亮 if (RtlCompareMemory(p_MmGetVirtualForPhysical, kPatternWin10x64,10) == 10) { HvUtilLogDebug("ok %d \n",i); (ULONG64)p_MmGetVirtualForPhysical = *(PLONG64)((ULONG64)p_MmGetVirtualForPhysical + 10); return (ULONG64)(p_MmGetVirtualForPhysical);
} (ULONG64)p_MmGetVirtualForPhysical = (ULONG64)p_MmGetVirtualForPhysical + 1; } } __except (1) { HvUtilLogDebug("Find err"); }
}
|
能力值:
( LV1,RANK:0 )
|
-
-
36 楼
老哥 您能否写个LOLff 或者可以加一下大佬的联系方式吗
|
能力值:
( LV1,RANK:0 )
|
-
-
37 楼
大佬能否留个联系方式交流下
|
能力值:
( LV2,RANK:10 )
|
-
-
38 楼
路过留个mark
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
路过留个mark
|
能力值:
( LV4,RANK:50 )
|
-
-
40 楼
周壑的那个方法是真的野,我都不知道 他是怎么想到的。
|
能力值:
( LV2,RANK:10 )
|
-
-
42 楼
xiaofu
试了下,可以用,牛批
我算出来的结果跟你一样,为啥我PTE BASE里没有物理页呢 大佬
|
能力值:
( LV12,RANK:320 )
|
-
-
43 楼
测试了win10 1803已经没有页表自映射了。
|
能力值:
( LV4,RANK:40 )
|
-
-
44 楼
yirucandy
测试了win10 1803已经没有页表自映射了。
1803这不还是自映射嘛
|
能力值:
( LV12,RANK:320 )
|
-
-
45 楼
原来是__readcr3()取出来末尾有个标记位,要置0再比较,跟操作系统版本没关系。 可以看https://bbs.pediy.com/thread-260177.htm这篇帖子。
最后于 2020-6-19 08:27
被yirucandy编辑
,原因:
|
能力值:
( LV5,RANK:60 )
|
-
-
46 楼
wbaby1988
不是一个导出函数直接可以获取么 KeCapturePersistentThreadState
吐槽一下,这函数兼容性其实不咋地,首先PTEBASE在正式版本中是14393之后才加入KdDebuggerDataBlock,其次14393及之后ForceDumpDisabled这个全局变量能决定这个函数是否拷贝KdDebuggerDataBlock,ForceDumpDisabled是由注册表“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl”有关项控制的,只有开机时的IoInitSystem流程才会修改它。要保证KeCapturePersistentThreadState在所有机子上成功执行,必须先定位ForceDumpDisabled并强制给它设为1
|
能力值:
( LV12,RANK:380 )
|
-
-
47 楼
表哥牛逼奥
|
能力值:
( LV2,RANK:10 )
|
-
-
48 楼
小伙子很厉害哦
|
|
|