能力值:
( LV5,RANK:70 )
|
-
-
2 楼
peb
ZwQueryVirtualMemory
内核和用户态通信,用户态去取(这个不知道符不符合你的要求)
|
能力值:
( LV4,RANK:50 )
|
-
-
3 楼
谢谢这个应该是可以 但是还有其他的吗。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
5种。听别人说的。
|
能力值:
( LV5,RANK:60 )
|
-
-
5 楼
Eprocess->VadRoot
这个要熟悉内存管理,这是只要存在的模块就无法被隐藏的,ZwQueryVirtualMemory也就是遍厉这个结构
|
能力值:
( LV5,RANK:60 )
|
-
-
6 楼
HANDLE GetModuleBaseAddressOfProcess(IN PEPROCESS pPe/*=NULL*/,
IN PCWSTR lpModuleName/*=L"ntdll.dll"*/)
{
if(pPe ==NULL )return NULL ;
HANDLE hModule = NULL;
RTL_OSVERSIONINFOW os={0};
ULONG_PTR uPebPtr;
ULONG_PTR uLdr=NULL ;
ULONG uPebOffset=0;
ULONG uLdrOffset=0xc;
UNICODE_STRING usModuleName={0};
if(lpModuleName )
RtlInitUnicodeString (&usModuleName ,lpModuleName );
RtlGetVersion (&os);
if(KeGetCurrentIrql() != PASSIVE_LEVEL)
return NULL;
if(os.dwMajorVersion==5)
{
switch(os.dwMinorVersion)
{
case 1://xp sp3
uPebOffset=0x1b0;
break;
case 2://2003 sp2
uPebOffset=0x1a0;
break;
}
}
else if(os.dwMajorVersion==6)
{
switch(os.dwMinorVersion)
{
case 0://2008
break;
case 1:
#ifdef _WIN64
//win7x64 sp1, 2008R2x64 sp1
uPebOffset=0x338;
uLdrOffset=0x18;
#else
//win7x32 sp1
uPebOffset=0x1a8;
#endif
}
}
if(uPebOffset==0)
{
dprintf ("this function do not supported current os.\r\n");
return NULL ;
}
KeDetachProcess();
KeAttachProcess(pPe );
__try{
uPebPtr =(ULONG_PTR)((UCHAR *)pPe +uPebOffset);
if((uLdr=*(ULONG_PTR*)uPebPtr)==NULL )
{
return NULL;
}
uLdr +=uLdrOffset;
PEB_LDR_DATA *pld=(PEB_LDR_DATA*)(*(ULONG_PTR*)uLdr);
LIST_ENTRY *pList=pld->InLoadOrderModuleList.Flink;
LIST_ENTRY *p=pList;
do{
PLDR_MODULE pModule=(PLDR_MODULE)p;
if(pModule->BaseAddress)
{
if(lpModuleName )
{
if(RtlEqualUnicodeString(&usModuleName ,&pModule->BaseDllName,TRUE ))
{
hModule=pModule->BaseAddress;
dprintf("\"%ws\" base address = %#x\r\n",pModule->BaseDllName.Buffer,hModule);
break;
}
}else{
dprintf("BaseAddr = %#x\t ---> %ws\r\n",
pModule->BaseAddress,pModule->BaseDllName.Buffer);
}
}
p=p->Flink;
}while(p!=pList);
}__except (1){
dprintf ("This is an exception on GetModuleBaseAddressOfProcess()...\r\n");
}
KeDetachProcess();
return hModule;
}
|
能力值:
( LV4,RANK:50 )
|
-
-
7 楼
谢谢各位。。这些正是想要的
|
|
|