-
-
[原创]围绕SwapContext的一点代码
-
发表于:
2012-3-4 12:50
12247
-
这次的胡乱探究原因在于看到了一个08年的帖子:
标 题:HOOK SwapContext 枚举隐藏进程(学习笔记4)
作 者:bzhkl
时 间:2008-12-11 12:01
链 接:http://bbs.pediy.com/showthread.php?t=78464
都是很老的东西了,可惜很菜才开始关注
这篇帖子讲了HOOK SwapContext 枚举隐藏进程的方法
下面是我虚拟机的WIN XP SP3 调试的代码:
/*********************************************************************
nt!KiSwapContext:
8054696c 83ec10 sub esp,10h
8054696f 895c240c mov dword ptr [esp+0Ch],ebx
80546973 89742408 mov dword ptr [esp+8],esi
80546977 897c2404 mov dword ptr [esp+4],edi
8054697b 892c24 mov dword ptr [esp],ebp
8054697e 648b1d1c000000 mov ebx,dword ptr fs:[1Ch]
80546985 8bf1 mov esi,ecx //自己修改处
80546987 8bbb24010000 mov edi,dword ptr [ebx+124h]
8054698d 89b324010000 mov dword ptr [ebx+124h],esi
80546993 8a4f58 mov cl,byte ptr [edi+58h]
80546996 e8f5000000 call nt!SwapContext (80546a90) //作者修改处
8054699b 8b2c24 mov ebp,dword ptr [esp];
8054699e 8b7c2404 mov edi,dword ptr [esp+4]
805469a2 8b742408 mov esi,dword ptr [esp+8]
805469a6 8b5c240c mov ebx,dword ptr [esp+0Ch]
805469aa 83c410 add esp,10h
805469ad c3 ret
805469ae 8bff mov edi,edi
/**********************************************************************/
__declspec (naked) VOID Fake_Function()
{
_asm
{
mov esi,ecx //2 Byte
mov edi,dword ptr [ebx+124h] //6 Byte
mov dword ptr [ebx+124h],esi //6 Byte
mov cl,byte ptr [edi+58h] //3 Byte
}
_asm
{
_emit 0x90 //CALL SwapContext
_emit 0x90
_emit 0x90
_emit 0x90
_emit 0x90
_emit 0x90 //JMP BACK
_emit 0x90
_emit 0x90
_emit 0x90
_emit 0x90
_emit 0x90
_emit 0x90
}
}
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)