工作过程中,无意用 IceSword 发现两个值得怀疑的地方。以为 90% 中病毒了,折腾了大半天,最后总算是搞清楚了原委,也解除了警报。由于在 Google 的过程中并没有得到太多的帮助,因此在这里把过程和结论记录一下,供有关人员参考。
a 开头的未知驱动
一开始是通过查蓝屏原因时查到了某些奇怪的驱动。这些 sys 文件一般用 a 开头,8.3 标准文件名,但是明显是随机生成的,每次重新启动都会换名字。用 IceSword 的「内核模块」能看见,路径在 system32/drivers 目录下,但是却没法找到对应的文件映像。估计是临时生成的驱动,加载之后便删除了,所以找不到。另外,在安全模式下没有看到这个驱动的加载。种种行为,像极了病毒。
开始紧张起来,在 Google 上也搜到类似的询问,但一般没有明确的结论。有人用 RootKit Unhooker 把内存中的驱动内容 dump 了出来,据说两次 dump 的内容也是不一样的。线索貌似断了。
后来发现还有类似 sp??.sys 这样的驱动也有这种行为模式,不过这个在 Google 上很快搜到了结论,——是 Daemon Tools 搞的鬼。既然如此,不知道那个 a 开头的未知驱动是不是也是这个原因?按道理,既然做了个 sp??.sys,也就不应该另外再搞一套了。
但说不定是它集成了第三方的 RootKit 呀?于是还是开了个虚拟机做了一下测试,4.1x 版本的 Daemon Tools Lite,一装就发现中奖了。果然是这个东东搞的鬼!装 sptd 之后 sp??.sys 就会出现了——这个是已知的,重启之后再安装 Daemon Tools 本身,也还好。然后再重启,a*.sys 马上出现了。为了确认,当场进行卸载,——卸了还没等重启,a*.sys 就没了。再装一次也不用重启就又出现了。于是铁证如山。
这样看来,Daemon Tools 的手脚是不怎么干净的。家里的 4.03 版貌似还不会,也不知道是4.1x 的问题还是 Lite 的缘故。总之,先记下吧。
之后发现其实 Google 上还是能搜到只言片语的。似乎有高人已经知道是 Daemon Tools 造成的,但内核论坛和百度知道里面反而没人解释。大概高人们的圈子比较小吧。
开始紧张起来,在 Google 上也搜到类似的询问,但一般没有明确的结论。有人用 RootKit Unhooker 把内存中的驱动内容 dump 了出来,据说两次 dump 的内容也是不一样的。线索貌似断了。
后来发现还有类似 sp??.sys 这样的驱动也有这种行为模式,不过这个在 Google 上很快搜到了结论,——是 Daemon Tools 搞的鬼。既然如此,不知道那个 a 开头的未知驱动是不是也是这个原因?按道理,既然做了个 sp??.sys,也就不应该另外再搞一套了。
但说不定是它集成了第三方的 RootKit 呀?于是还是开了个虚拟机做了一下测试,4.1x 版本的 Daemon Tools Lite,一装就发现中奖了。果然是这个东东搞的鬼!装 sptd 之后 sp??.sys 就会出现了——这个是已知的,重启之后再安装 Daemon Tools 本身,也还好。然后再重启,a*.sys 马上出现了。为了确认,当场进行卸载,——卸了还没等重启,a*.sys 就没了。再装一次也不用重启就又出现了。于是铁证如山。
这样看来,Daemon Tools 的手脚是不怎么干净的。家里的 4.03 版貌似还不会,也不知道是4.1x 的问题还是 Lite 的缘故。总之,先记下吧。
之后发现其实 Google 上还是能搜到只言片语的。似乎有高人已经知道是 Daemon Tools 造成的,但内核论坛和百度知道里面反而没人解释。大概高人们的圈子比较小吧。
SSDT 中 NtConnectPort 被 Hook 到 Unknown?
在看 SSDT 的时候,意外发现除了 sptd 干的好事之外,还有一个很奇怪的 Hook。NtConnectPort 被 Hook 到了名为 Unknown 的模块上。Unknown 嘛,就是不知道了,很明显是被保护起来了。
同样,在 Google 里面找不到多少信息,连老外的信息都没有什么有价值的回答,只好自己找。2007 年有人问过这个问题,有一种解答认为,dump 出来也没有什么意义。因为这种Unknown 的模块很可能就是人家开一片内存,把代码往里面一拷,然后 Hook 过去。除了去读反汇编代码,没有什么好办法。
最后还是虚拟机解决——VMWare Inc. 真是好公司!因为估计这种事情一般都是安全产品会去做,所以开了个虚拟机开始装各种安全软件。先试了 360,没问题,就算装了保险箱也没问题。接下来是 Symantec 10,Hook 有了!明白了,是 Symantec 干的好事。
唉,现在的黑软和毒,真是越来越难对付了。要动用到 IceSword 和 RKU,这叫我以后怎么教别人用啊?
同样,在 Google 里面找不到多少信息,连老外的信息都没有什么有价值的回答,只好自己找。2007 年有人问过这个问题,有一种解答认为,dump 出来也没有什么意义。因为这种Unknown 的模块很可能就是人家开一片内存,把代码往里面一拷,然后 Hook 过去。除了去读反汇编代码,没有什么好办法。
最后还是虚拟机解决——VMWare Inc. 真是好公司!因为估计这种事情一般都是安全产品会去做,所以开了个虚拟机开始装各种安全软件。先试了 360,没问题,就算装了保险箱也没问题。接下来是 Symantec 10,Hook 有了!明白了,是 Symantec 干的好事。
唉,现在的黑软和毒,真是越来越难对付了。要动用到 IceSword 和 RKU,这叫我以后怎么教别人用啊?