首页
社区
课程
招聘
[求助]PsSetCreateProcessNotifyRoutine的问题
发表于: 2009-7-13 11:08 4429

[求助]PsSetCreateProcessNotifyRoutine的问题

2009-7-13 11:08
4429
使用PsSetCreateProcessNotifyRoutine注册回调函数后,试图利用如下代码获得获得PEB中的LDR,
	if (Create)
	{
		PsLookupProcessByProcessId(ProcessId,&pepro);
		//方法1:从PEB中获取			
		imagename=(char*)(pepro+0x174);
		if (strncmp("notepad.exe",imagename,11)!=0)		
		{
			return;
		}
		peb=*((DWORD*)(pepro+0x1b0));			//peb=peprocess->Peb
		pldrdata=(PPEB_LDR_DATA)*((DWORD*)(peb+0xc));
		loadhead=(PLDR_MODULE)&(pldrdata->InLoadOrderModuleList);
		curmodule=(PLDR_MODULE)loadhead->InLoadOrderModuleList.Flink;

但是peb+0xc这个地址的内容(就是ldr_data )老是为NULL,所以我想问一下,在这个callback执行的时候,难道peb这个字段还没有初始化吗?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 290
活跃值: (20)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
对头是这么的
那时还没有初始化,要获取路径从SectionObject
2009-7-13 14:53
0
游客
登录 | 注册 方可回帖
返回
//