瑞星08年07月22号版本
20.54.10
HooKUrl.sys文件的MD5文件签名值为:
8957529C48F118BC52318F2ABFA0E3C8
瑞星防火墙
08年07月29(至今)号版本 20.55.12
HooKUrl.sys文件的MD5文件签名值变为了:
AE55CCDA611942855133257A0A195416
如果想验证这些图的真伪非常的简单,去迅雷搜瑞星防火墙2008 后面跟版本号如:“瑞星防火墙2008 20.11.16”
,
http://search.gougou.com/search?search=%E7%91%9E%E6%98%9F%E9%98%B2%E7%81%AB%E5%A2%992008%2020.11.60&id=2 这样的内容一搜一大把。
而且HooKUrl.sys文件有数字签名,别人是无法伪造的。
疑点二:
更新后的HooKUrl.sys文件内容与更新前的文件程序流程完全一致,只是变量定义的位置分布不同。而在瑞星做了这些修改后“惊人巧合”又再次出现了,瑞星这么修改后360杀毒就把“HookUrl.sys”当成了病毒。
做过病毒“免杀”的朋友都知道,在代码中适当位置添加一些无用的变量、语句之类的,或者调整全局变量位置,都能躲过杀毒软件的查杀。
我想我们不妨试想这样一个事情:
我们先把某一个驱动文件配合一个恶意程序上报到某杀毒软件厂商,厂商就会在分析后把这两个样本文件提取特征码并添加到病毒库中。然后我们再修改这个驱动文件的全局变量位置,这样这个驱动文件的特征码就被改变了,这个驱动文件可以正常使用而不会被该杀毒软件报了,也就是相当于做了一次“免杀”处理。然后我大面积发布使用,说到这里大家可能都意识到了,呵呵,没错,我当然可以随时再改回来让杀毒软件把我报出来,只要我心情好就可以随时制造“误杀”。随时可以指责他们。(当然这个文件最好能“恰好”还不至于导致用户蓝屏之类的危害,不会让用户产生更换软件的想法)。
我们当然不能这样去想瑞星,因为我决不敢相信一个以保护用户安全为宗旨的厂商,为了陷害竞争对手会这样牺牲用户的安全 ,在用户机器上玩这么一出……所以说,我们要相信瑞星,要像相信神一样,坚定的相信这一些都只是个偶然。
下图为对新旧HooKUrl.sys反汇编后的比较,(本文后附有新旧HooKUrl.sys反汇编后的c文件,你可以自己用BeyondCompare 比较以下,附件中有新旧HooKUrl.sys驱动程序,都是有数字签名,有兴趣的话可以自己研究下看看。)

疑点三 新版本的HooKUrl.sys编译路径也换了位置,此前版本Hookurl.sys都是相似的。这次有了大变化。看来瑞星对HooKUrl.sys的这次还是进行了“大升级”工作(但是其功能却一模一样)。
瑞星此前版本的Hookurl.sys编译路径是很规范的如:
“C:\DistributedAotuLink\Temp\hookurl.sys_N10847Release\firewall\drivers\32\hookurl\driver\”
这看似是一个比较规范的路径,有服务器名、产品名称、编译类型、产品类型、可执行文件类型、运行平台、可执行文件名等等。
最新版本的HooKUrl.sys编译路径,成了
C:\DistributedAotuLink\Temp\CompileOutputDir\i386
难道瑞星最近研究发现,后者更好更规范?
好了就说这么多了,我想明白人都应该能看清这个事件的来龙去脉了吧。
附件一:包括3个瑞星HooKUrl.sys驱动文件 (有数字签名)
附件二:2个反汇编的HooKUrl.sys 驱动C语言代码(用IDA+Hex_Rays插件).一个是瑞星08年07月15号版本
20.53.10的HookUrl-1.c,另一个是瑞星08年07月29号版本
20.55.12的HookUrl-2.c。