能力值:
( LV9,RANK:280 )
|
-
-
2 楼
NtProtectVirtualMemory无法修改用mdl映射的内存
|
能力值:
( LV7,RANK:110 )
|
-
-
3 楼
可以是可以的,只是它的句柄错误而已!切换进程的时候,他应该是把句柄直接传递进来的吧!直接传递的句柄是错误的,所以会发生非法访问!
|
能力值:
( LV7,RANK:110 )
|
-
-
4 楼
我不明白,既然进程已经切换,为什么不直接写内存呢?这个时候写入的内存是你切换到的进程的内存呢!为什么还要调用别的函数呢?
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
我的句柄是下面这样获取的。
NTSTATUS GetHandleByPid(PHANDLE pHandle, ULONG pid)
{
OBJECT_ATTRIBUTES ObjectAttributes;
CLIENT_ID clientid;
NTSTATUS status = STATUS_UNSUCCESSFUL;
InitializeObjectAttributes(&ObjectAttributes, 0, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, 0, 0);
clientid.UniqueProcess = (HANDLE)pid;
clientid.UniqueThread=0;
status = ZwOpenProcess(pHandle, PROCESS_ALL_ACCESS, &ObjectAttributes, &clientid);
return status;
}。
映射的这片内存是一个函数,要在应用层取执行,其实就是内核层的APC注入。但是应用层执行的时候发现内存没得执行的属性
|
能力值:
( LV9,RANK:280 )
|
-
-
6 楼
分配可执行内存请用ZwAllocateVirtualMemory
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
好吧 我试看看 ,谢了
|
|
|