首先声明,写这篇文章的目的不是针对杀软,我是只菜鸟,知道的也不多.只是想说其实杀软都存在些缺陷,需要不断完善.而我们普通用户不能过分相信杀软,掌握一定的反病毒知识很有必要:)
今天在瑞星史瑜的BLOG上见到了一段让卡巴斯基挂掉的代码 :
@echo off
set date=%date%
date 1987-10-18
ping -n 45 localhost > nul
date %date%
以下为转载:很明显这个批处理是为了让卡巴斯基挂掉,先把当前的系统日期保存,然后将当前系统日期改为1987年10月18日(病毒作者的生日?或者是他GF的生日?呵呵),随后ping本机45次,并且将显示结果传到nul设备上,就是在屏幕上什么也不显示。这一句其实是起到延时的作用,目的是等卡巴挂掉。然后再恢复回系统时间。
由于卡巴斯基会实时检测系统日期,以判断软件是否已经超过授权的使用期限。当发现软件许可过期时会立即(这个过程需要几秒到几十秒,前面的那个ping就是为了等待这个)关闭所有的监控,同时主程序也无法扫描病毒,并且需要用户输入新的序列号。
目前,很多的病毒都会先运行一个批处理程序,先让卡巴关掉,然后再大摇大摆地入侵用户的计算机。由于这个批处理只是修改了系统日期,卡巴斯基几乎不太可能将这个批处理作为病毒进行处理。目前,越来越多的病毒通过修改系统时间来对卡巴斯基进行攻击,可以说这是它的一个比较严重的漏洞,目前最新卡巴斯基仍然存在这个问题。
出处:http://www.blogcn.com/u3/54/3/bjshiyu/blog/52735389.html
这应该是前段时间出现的一系列修改时间的病毒利用的代码,于是想到了最近见到一些病毒对付杀软的技术,有新的的也有旧的,简单说说:
以前段时间的病毒OSO为例,这病毒作者编写时动了些脑筋:
用net stop命令结束杀软的服务,其中,在结束瑞星服务的过程中,由于瑞星会弹出提示,病毒作了相应处理:
用FindWindowA函数,捕捉标题为"瑞星提示"的窗口
用FindWindowExA函数,找到其中“是(&Y)”的按钮
用SendMessageA函数向系统发送信息,相当于按下此按钮
这种方法在对付某些有相似功能的杀软时同样适用
在注册表
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options]
创建以安全软件程序名为名的子项
子项中创建子键
"Debugger"="病毒文件"
使得这些程序在被双击运行时,均会转为运行病毒文件
这是利用操作系统的IFEO重定向功能
而另外通过各种命令尝试关闭安全软件相关窗口,尝试结束安全软件相关进程,删除安全软件相关服务,删除安全软件相关启动项这都是病毒惯用的手法.
还想提一种:设置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility项目的“Compatibility Flags”数据为“dword:00000400”(十进制:1024),禁用安全相关的ActiveX组件,如反病毒软件组件,当然也包括Windows Update、在线杀毒等.
还有许多方法,我知道的只有这些...
转自:一切从无毒开始 |