首页
社区
课程
招聘
[原创]X64下的解析句柄表
发表于: 2014-12-7 17:46 9041

[原创]X64下的解析句柄表

2014-12-7 17:46
9041
寻找PspCidTable:
SIZE_T FindCidTable()
{
	SIZE_T  CidTableAddr = 0;
	UNICODE_STRING ustPsFuncName;
	RtlInitUnicodeString(&ustPsFuncName, L"PsLookupProcessByProcessId");
	PUCHAR startAddr = (PUCHAR)MmGetSystemRoutineAddress(&ustPsFuncName);
	//DbgPrint("startAddr:0x%02X,startAddr+1:0x%02X\n", *startAddr, *(startAddr+1));

	for (ULONG64 i = 0; i < 100; i++)
	{
		if (*(startAddr + i) == 0x48 &&
			*(startAddr + i + 1) == 0x8b &&
			*(startAddr + i + 2) == 0x0d)
		{
			CidTableAddr = (SIZE_T)(*(PULONG)(startAddr + i + 3) + (startAddr + i + 3 + 4)) & 0xFFFFFFFEFFFFFFFF;
			DbgPrint("CidTableAddr:%p\n", CidTableAddr);
			break;
		}
	}
	return CidTableAddr;
}
相关结构:
原32位结构:
typedef struct _HANDLE_TABLE
{
     ULONG TableCode;
     PEPROCESS QuotaProcess;
     PVOID UniqueProcessId;
     EX_PUSH_LOCK HandleLock;
     LIST_ENTRY HandleTableList;
     EX_PUSH_LOCK HandleContentionEvent;
     PHANDLE_TRACE_DEBUG_INFO DebugInfo;
     LONG ExtraInfoPages;
     ULONG Flags;
     ULONG StrictFIFO: 1;
     LONG FirstFreeHandle;
     PHANDLE_TABLE_ENTRY LastFreeHandleEntry;
     LONG HandleCount;
     ULONG NextHandleNeedingPool;
} HANDLE_TABLE, *PHANDLE_TABLE;


现在x64结构:

typedef struct _HANDLE_TABLE
{
	ULONG64 TableCode;
	PEPROCESS QuotaProcess;
	PVOID UniqueProcessId;
	EX_PUSH_LOCK HandleLock;
	LIST_ENTRY HandleTableList;
	EX_PUSH_LOCK HandleContentionEvent;
	PHANDLE_TRACE_DEBUG_INFO DebugInfo;
	LONG ExtraInfoPages;
	ULONG Flags;
	//ULONG StrictFIFO : 1;
	LONG64 FirstFreeHandle;
	PHANDLE_TABLE_ENTRY LastFreeHandleEntry;
	LONG HandleCount;
	ULONG NextHandleNeedingPool;
} HANDLE_TABLE, *PHANDLE_TABLE;

32位和64位结构体有点差别,注意LONG64 FirstFreeHandle;

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

上传的附件:
收藏
免费 3
支持
分享
最新回复 (4)
雪    币: 219
活跃值: (878)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
2
为什么没人顶呢
2015-8-22 01:00
0
雪    币: 155
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
Kdversionblock只在startup的那颗cpu的kpcr上才会有。
2015-8-22 10:00
0
雪    币: 19
活跃值: (328)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
换个系统就不行了。
2015-8-22 13:25
0
雪    币: 22
活跃值: (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
受教了,感谢
2015-8-24 20:43
0
游客
登录 | 注册 方可回帖
返回