能力值:
( LV2,RANK:10 )
|
-
-
2 楼
贴dump图。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
WinDBG提示是:访问冲突, second change
加载驱动不是直接蓝屏,一开始不出错,要等个5、6秒左右就出错
我在My_Function中的最开头用KdPrint打印信息,发现根本没运行到My_Function来
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
__asm
{
cli
mov eax,cr0
and eax,not 10000h
mov cr0,eax
}
__asm
{
mov eax,cr0
or eax,10000h
mov cr0,eax
sti
}
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
不是这个原因吧
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
不是楼上的原因,内存开关和中断请求级都加了的!
DisableMemoryProtect();
irql = KeRaiseIrqlToDpcLevel();
//参数:目的、来源、长度
RtlCopyMemory((PVOID)My_HookAddress, JmpAddress, 6); //开始 Hook,写入跳转代码到要 Hook 的地址
*(ULONG *)(My_HookAddress + 1) = (ULONG)My_Function; //在 jmp 后4个字节写入自己的处理函数的地址
KeLowerIrql(irql);
EnableMemoryProtect();
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
你发上来的代码似乎没啥问题……请放完整的bin或代码
顺便附上我测试通过的hook代码,你可以参考下,排除排除问题
void Hook (PVOID HookAdd,PVOID NewAdd,PVOID ProxyNewAdd)
{
ULONG PatchSize;
BYTE HookCode[5] = { 0xE9, 0, 0, 0, 0 };
BYTE JmpCode[7] = { 0xEA, 0, 0, 0, 0, 0x08, 0x00 };
PatchSize = GetPatchSize(HookAdd,5);
RtlCopyMemory( (PBYTE)ProxyNewAdd,(PBYTE)HookAdd,PatchSize);
*( (PULONG)(JmpCode + 1) ) = (ULONG) ( (PBYTE)HookAdd + PatchSize );
RtlCopyMemory( (PBYTE)ProxyNewAdd+ PatchSize, JmpCode, 7);
*( (ULONG*)(HookCode + 1) ) = (ULONG)NewAdd - (ULONG)HookAdd - 5;
__asm
{
cli
mov eax,cr0
and eax,not 10000h
mov cr0,eax
}
RtlCopyMemory(HookAdd, HookCode, 5);
__asm
{
mov eax,cr0
or eax,10000h
mov cr0,eax
sti
}
}
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
楼主的是多核,还是单核,2中同步要不同的方式哦
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
经典内联汇编,,,,,,,,,,,,,
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
*(ULONG *)(My_HookAddress + 1) = (ULONG)My_Function; //E9 是相对跳转
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
自己搞定了,谢谢几位大哥!
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
你这个问题~真的不知道该说什么,*(ULONG *)(My_HookAddress + 1) = (ULONG)My_Function;
//写到跳转码里的是偏移,百度汇编jmp原理 //顺便说一句,我写inline hook也老是蓝屏 //
还有啊,那个要把页面保护关掉的,我看评论里已经有了
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
楼主求联系,扣扣1033244315。私信没KX
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
[QUOTE=rqqeq;1269750]你发上来的代码似乎没啥问题……请放完整的bin或代码
顺便附上我测试通过的hook代码,你可以参考下,排除排除问题
void Hook (PVOID HookAdd,PVOID NewAdd,PVOID ProxyNewAdd)
{
ULONG PatchSize;
BYTE HookCode[...[/QUOTE]
赞一个 这代码经典 可用度高 LZ又是一个被国内的坑爹牛写的坑爹代码欺骗的可怜孩子
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
等会试一试啊
|