首页
社区
课程
招聘
[原创]inline hook未导出函数PspTerminateProcess
发表于: 2008-4-3 16:18 37329

[原创]inline hook未导出函数PspTerminateProcess

2008-4-3 16:18
37329
收藏
免费 7
支持
分享
最新回复 (41)
雪    币: 10936
活跃值: (3293)
能力值: (RANK:520 )
在线值:
发帖
回帖
粉丝
26
可以参考下 SSDT 恢复的代码
2008-5-22 12:38
0
雪    币: 235
活跃值: (23)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
27
学习学习
2008-5-22 12:39
0
雪    币: 581
活跃值: (149)
能力值: ( LV12,RANK:600 )
在线值:
发帖
回帖
粉丝
28
不过磁盘的代码跟内存的可能不同.....你可以用windbg和IDA实验下....所以特征码相信磁盘的而不是内存的
2008-5-22 12:43
0
雪    币: 709
活跃值: (2420)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
29
SDTRecover 1.20 里面有完整的code。
你在坛子里搜索下就有了。

得到地址后用strncmp比较一下是不是你关心的NtXXX,是的话就保存,然后传地址到驱动中,也可以写到注册表中,加密下,效果更好。
2008-5-22 12:44
0
雪    币: 581
活跃值: (149)
能力值: ( LV12,RANK:600 )
在线值:
发帖
回帖
粉丝
30
sudami兄...你那个bin在我机器运行不正常....不知道是什么原因
上传的附件:
2008-5-22 12:49
0
雪    币: 709
活跃值: (2420)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
31
哦。可能是90210的那个调用方法出问题了。code里面有2个途径,忘记是哪个了~~~
2008-5-22 12:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
Sysnap你好又来麻烦你了
你的文章非常好,跟那你学的文章已经基本学明白了。

在这篇文章里我有个小问题,想请教下
在Unload中
_asm
{
CLI
MOV eax, CR0
AND eax, NOT 10000H
MOV CR0, eax

pushad
mov edi, PspTerminateProcess
mov eax, dword ptr Code[0]
mov [edi], eax
mov al, byte ptr Code[4]
mov [edi+4], al
popad

MOV eax, CR0
OR eax, 10000H
MOV CR0, eax
STI
}

你是怎么把数组Code[1],Code[2],Code[3]送给PspTerminateProcess的,我就看懂了
你把code[0],code[4]送给了eax和edi+4呀。
虽然可以用RtlCopyMemory (PspTerminateProcess,Code,5);代替
由于我的汇编上不了桌,只好来请教.

另附,程序测试成功,我在用冰刃Advanced scan是扫描出来,但不一会就蓝屏了.
2008-6-3 12:22
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
--------------------Configuration: inline - Win32 Free--------------------
Compiling with DDK compiler...
src.c
C:\inlinehook\driver\src.c(138) : warning C4047: 'return' : 'PVOID' differs in levels of indirection from 'ULONG'
C:\inlinehook\driver\src.c(241) : warning C4022: 'memcpy' : pointer mismatch for actual parameter 1
C:\inlinehook\driver\src.c(294) : warning C4047: '=' : 'ULONG' differs in levels of indirection from 'PVOID'
c:\inlinehook\driver\src.c(144) : warning C4715: 'GetUndocumentFunctionAdress' : not all control paths return a value
Linking with DDK linker...
---------------------------Build SoftICE Symbols----------------------------
Compuware NM32 Symbol Translator/Loader version 4.3.2
(C) Compuware Corporation, 1996-2004
MODULE=.\objfre\i386\inline.sys
PROMPT=OFF
SoftICE is not active
Translation of C:\inlinehook\Driver\objfre\i386\inline.sys successfully completed

inline.sys - 0 error(s), 4 warning(s)
2008-6-11 14:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
暴力搜索容易被BSOD,建议解析ntosxxx.exe 安全些
2009-2-6 22:21
0
雪    币: 135
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
35
支持sysnap~
2009-8-2 18:13
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
slj
36
楼主我试了下,不过不知道为什么hook成功,但是我试着结束进程,并没有进入MyPspTerminateProcess里面去,不知道为什么。
2009-12-28 13:06
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
slj
37
楼主我还想问下,我把SSDT恢复了,而且测试没inline hook,我刚也测试了,它没inline hook PspTerminateProcess ,但是怎么就是结束不了360,360究竟用了什么技术来保护它自己啊
2009-12-28 13:14
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
38
08年的帖子,我现在才学习,痛苦啊。
2010-2-5 15:23
0
雪    币: 101
活跃值: (144)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
39
有个地方不解,烦劳解释一下:
ZwQuerySystemInformation(SystemModuleInformation,&size, 0, &size);
if(NULL==(buf = (PULONG)ExAllocatePool(PagedPool, size)))

一定要分配同样大小的内存吗?直接读内存不可以吗?
2010-2-15 13:07
0
雪    币: 230
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
40
可以不用分配同样大小的块。直接读什么内存?
2010-3-1 15:03
0
雪    币: 72
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
学习了,讲的详细
2010-6-27 13:10
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jvb
42
支持支持啊支持支持啊支持支持啊支持支持啊支持支持啊
2011-1-21 20:47
0
游客
登录 | 注册 方可回帖
返回
//