-
-
[旧帖] [求助]Win7 RING0 APC加载DLL遇到的奇怪的问题,求解答 0.00雪花
-
发表于: 2014-3-20 10:27 1618
-
__declspec(naked)
void ApcCreateProcess(PVOID a1, PVOID a2, PVOID a3)
{
__asm
{
jmp s0
szdll_path:
_emit 'a'
_emit 'b'
_emit 'c'
_emit '.'
_emit 'd'
_emit 'l'
_emit 'l'
_emit 0
s0:
..... //省略
push eax ;szdll_path: (1)
call ecx ;LoadLibraryA的地址 (2)
nop ; (3)
nop ;
}
}
WIN7 32系统下(XP正常)
(1)处的eax就是szdll_path 处地址(代码已重定位,经调试这里没有问题)
(2)也没问题
当执行(2)时,进入到LoadLibraryA里面去时,它永远也不会返回到(3)处。。。为什么??
如果把(1)处 eax=0,它才会执行到(3).
void ApcCreateProcess(PVOID a1, PVOID a2, PVOID a3)
{
__asm
{
jmp s0
szdll_path:
_emit 'a'
_emit 'b'
_emit 'c'
_emit '.'
_emit 'd'
_emit 'l'
_emit 'l'
_emit 0
s0:
..... //省略
push eax ;szdll_path: (1)
call ecx ;LoadLibraryA的地址 (2)
nop ; (3)
nop ;
}
}
WIN7 32系统下(XP正常)
(1)处的eax就是szdll_path 处地址(代码已重定位,经调试这里没有问题)
(2)也没问题
当执行(2)时,进入到LoadLibraryA里面去时,它永远也不会返回到(3)处。。。为什么??
如果把(1)处 eax=0,它才会执行到(3).
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
他的文章
看原图
赞赏
雪币:
留言: