瑞星的内核Hook分析
今天我下载的瑞星的新版本23.00.24.98,分析一下瑞星在免费之后内核当中的Hook有没有什么变化!
1. SSDT 和 Shadow SSDT Hook
瑞星Hook了一大堆的SSDT,我就直接在内核里面把它们都恢复了!
2. inline Hook
瑞星Hook了ObReferenceObjectByHandle前面的5个字节
Hook前:
kd> u nt!ObReferenceObjectByHandle
nt!ObReferenceObjectByHandle:
805b1ab6 8bff mov edi,edi
805b1ab8 55 push ebp
805b1ab9 8bec mov ebp,esp
805b1abb 51 push ecx
805b1abc 51 push ecx
805b1abd 53 push ebx
805b1abe 56 push esi
805b1abf 57 push edi
Hook后:
kd> u 805b1ab6
nt!ObReferenceObjectByHandle:
*** ERROR: Symbol file could not be found. Defaulted to export symbols for HOOKHELP.sys -
805b1ab6 e93d654378 jmp HOOKHELP!RisingInlineUnHook+0x4d98 (f89e7ff8)
805b1abb 51 push ecx
805b1abc 51 push ecx
805b1abd 53 push ebx
805b1abe 56 push esi
805b1abf 57 push edi
这个地方的Hook与以前一样还是没有保护,直接恢复就完了,这点比360要差一些!
内核的Hook全部被恢复之后发现瑞星居然没有发现自已的内核钩子已经被卸载了,而360却可以发现自已的内核钩子被卸载,从这儿可以看出360还是强于瑞星的。
让我们看看内核钩子被卸载掉之后瑞星在UI上的表现:
瑞星感觉自身工作的很正常,呵呵!
说句实话瑞星做为杀毒软件功能与其它杀软相比还是要差一些的!