首页
论坛
课程
招聘
[原创]分析了一下360安全卫士的HOOK
2009-10-8 14:05 26099

[原创]分析了一下360安全卫士的HOOK

2009-10-8 14:05
26099
分析了一下360的HOOK,通过直接hook KiFastCallEntry实现以所有系统调用的过滤。
我分析的版本如下:
主程序版本: 6.0.1.1003
HookPort.sys版本: 1, 0, 0, 1005
HookPort.sys的TimeStamp: 4A8D4AB8

简单说明:360把所有被hook的系统服务的过滤函数放在了一个表里,索引即对应的系统服务在该过滤函数表中的索引。
所有列出来的函数都会被hook掉的,是否处理指某个系统服务有没有相应的过滤函数进行处理,拒绝还是放行就是在过滤函数中完成判断的。
不处理的系统服务,将会直接调用原始服务例程。
函数如下:
服务名称          索引  是否处理  备注
==============================================================================
NtCreateKey          0x00  否
NtQueryValueKey        0x01  是
NtDeleteKey          0x02  是
NtDeleteValueKey      0x03  是
NtRenameKey          0x04  是
NtReplaceKey        0x05  是
NtRestoreKey        0x06  是
NtSetValueKey        0x07  是
NtCreateFile        0x08  是
NtFsControl          0x09  是
NtSetInformationFile     0x0A  是
NtWriteFile          0x0B  是
NtWriteFileGather      0x0B  是    //和NtWriteFile共用一个过滤函数
NtCreateProcess        0x0D  是
NtCreateProcessEx      0x0E  是
NtCreateUserProcess      0x0F  是    //Only on Vista or later
NtCreateThread        0x10  是
NtCreateThreadEx      0x10  是    //和NtCreateThread共用一个过滤函数,for vista or later
NtOpenThread        0x11  是
NtDeleteFile        0x12  是
NtOpenFile          0x13  是
NtReadVirtualMemory      0x14  否
NtTerminateProcess      0x15  是
NtQueueApcThread      0x16  是
NtSetContextThread      0x17  是
NtSetInformationThread    0x18  否
NtProtectVirtualMemory    0x19  否 
NtWriteVirtualMemory    0x1A  是
NtAdjustGroupToken      0x1B  否
NtAdjustPrivilegesToken   0x1C  否
NtRequestWaitReplyPort    0x1D  是
NtCreateSection        0x1E  是
NtOpenSecton        0x1F  是
NtCreateSymbolicLinkObject  0x20  是
NtOpenSymbolicLinkObject  0x21  否
NtLoadDriver        0x22  是
NtUnloadDriver        0x22  是    //和NtLoadDriver共用一个过滤函数
NtQuerySystemInformation  0x23  是
NtSetSystemTime        0x25  否
NtSystemDebugControl    0x26  是
NtUserBuildHwndList      0x27  是
NtUserQueryWindow      0x28  是
NtUserFindWindowEx      0x29  是
NtUserWindowFromPoint    0x2A  是
NtUserMessageCall      0x2B  是
NtUserPostMessage      0x2C  是
NtUserSetWindowsHookEx    0x2D  是
NtUserPostThreadMessage    0x2E  是
NtOpenProcess        0x2F  是
NtDeviceIoControlFile    0x30  是
NtUserSetParent        0x31  是
NtOpenKey          0x32  是
NtDuplicateObject      0x33  是
NtResumeThread        0x34  否
NtUserChildWindowFromPointEx 0x35  是
NtUserDestroyWindow      0x36  是
NtUserInternalGetWindowText  0x37  否
NtUserMoveWindow      0x38  是    //和NtSetParent共用一个过滤函数
NtUserRealChildWindowFromPoint 0x39 是    //和NtUserChildWindowFromPointEx共用一个过滤函数
NtUserSetInformationThread  0x3A  否
NtUserSetInternalWindowPos  0x3B  是    //和NtSetParent共用一个过滤函数
NtUserSetWindowLong      0x3C  是    //和NtSetParent共用一个过滤函数
NtUserSetWindowPlacement  0x3D  是    //和NtSetParent共用一个过滤函数    
NtUserSetWindowPos      0x3E  是    //和NtSetParent共用一个过滤函数
NtUserSetWindowRgn      0x3F  是    //和NtSetParent共用一个过滤函数    
NtUserShowWindow      0x40  是
NtUserShowWindowAsync    0x41  是    //和NtUserShowWindow共用一个过滤函数
NtQueryAttributesFile    0x42  否
NtUserSendInput        0x43  否
NtAlpcSendWaitReceivePort  0x44  是    //for vista or later
NtUnmapViewOfSection    0x46  是
NtUserSetWinEventHook    0x47  否
NtSetSecurityObject      0x48  是
NtUserCallHwndParamLock    0x49  是
NtUserRegisterUserApiHok  0x4A  否

本来很整齐的,贴上来有点乱~~
MJ如果不介意,我继续~~

2021 KCTF 秋季赛 防守篇-征题倒计时(11月14日截止)!

收藏
点赞0
打赏
分享
最新回复 (35)
雪    币: 79
活跃值: 活跃值 (45)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
竹君 活跃值 5 2009-10-8 14:28
2
0
open才能更加的完美
雪    币: 206
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
简单爱 活跃值 2009-10-8 15:10
3
0
支持教主
雪    币: 4214
活跃值: 活跃值 (355)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
寒冰心结 活跃值 2009-10-8 15:34
4
0
嗯..不错..

很强大..
雪    币: 23
活跃值: 活跃值 (742)
能力值: ( LV17,RANK:1820 )
在线值:
发帖
回帖
粉丝
riusksk 活跃值 41 2009-10-8 15:56
5
0
Support!膜拜楼主
雪    币: 459
活跃值: 活跃值 (54)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
qihoocom 活跃值 9 2009-10-8 16:01
6
0
good job,看了楼主的分析,比较准确。
雪    币: 251
活跃值: 活跃值 (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leftup 活跃值 2009-10-8 20:02
7
0
inline hook还是改MSR?
雪    币: 7506
活跃值: 活跃值 (298)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
achillis 活跃值 15 2009-10-8 20:11
8
0
KiFastCallEntry Inline hook
雪    币: 284
活跃值: 活跃值 (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jerrynpc 活跃值 2009-10-8 21:33
9
0
特地从D8膜拜教主到看雪
雪    币: 226
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leivn 活跃值 2009-10-9 09:51
10
0
只能膜拜
很强大
雪    币: 225
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Sovereign 活跃值 2009-10-9 10:09
11
0
楼主难道是那位很有名气的黑客,中文昵称"教主"的那位???
雪    币: 218
活跃值: 活跃值 (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
deryope 活跃值 1 2009-10-9 10:27
12
0
这个很强大,一直不知道360 Hook了哪些地方,LZ good job!
雪    币: 188
活跃值: 活跃值 (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
zerostudy 活跃值 2009-10-9 10:41
13
0
这个就是教主啊。。大名如雷灌耳。。
雪    币: 203
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
coolfly 活跃值 2009-10-9 11:02
14
0
教主吗 膜拜
顺便晾凉账号,又快给忘掉了
雪    币: 232
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
lgccaa 活跃值 2009-10-9 11:21
15
0
mark                  
support!
雪    币: 194
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fitmaster 活跃值 2009-10-9 12:24
16
0
只能膜败鸟。。。。
雪    币: 7506
活跃值: 活跃值 (298)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
achillis 活跃值 15 2009-10-9 12:24
17
0
汗,我不是某些人所说的那个曾经的教主。。。
雪    币: 499
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
glxrz 活跃值 2009-10-10 09:44
18
0
教主,令人敬慕
雪    币: 240
活跃值: 活跃值 (10)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
三根火柴 活跃值 4 2009-10-10 13:30
19
0
achillis怎么不继续了,是不是mj找你了
雪    币: 7506
活跃值: 活跃值 (298)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
achillis 活跃值 15 2009-10-10 14:28
20
0

放假结束了,没时间写了
雪    币: 133
活跃值: 活跃值 (17)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
kalrey 活跃值 1 2009-10-10 14:38
21
0
支持一下,暂时只能膜拜了。。
雪    币: 206
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
luzechao 活跃值 2009-10-10 18:25
22
0
那人估计是把楼主写出教主了、、
雪    币: 514
活跃值: 活跃值 (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
xacker 活跃值 1 2009-10-14 09:09
23
0
确实简单方便,但这样会不会对系统性能有一定的影响?
雪    币: 7506
活跃值: 活跃值 (298)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
achillis 活跃值 15 2009-10-14 10:08
24
0

肯定有啊,不过360处理得好,影响比较小
雪    币: 601
活跃值: 活跃值 (23)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Second 活跃值 1 2009-10-14 11:00
25
0
不错,有眼前一亮的感觉
游客
登录 | 注册 方可回帖
返回