病毒,法学上的定义大致是“有传播性的有害程序”。这个定义是N年前的,杀毒厂商早已把不能主动传播的木马、黑客程序、后门、恶作剧软件都当作病毒杀。网民甚至把所有感知到的系统异常都算在病毒头上。
这么多年以来,杀毒厂商总是在作一件很无聊的事情:分析一个软件是不是有害的程序,若是,把这个东西加进病毒库,再把病毒库放在网上供用户升级下载到本地。若用户 升级不及时,便有中毒之苦。
后来,做病毒越来越挣钱,网上偷东西差不多没人管,大大小小的贼都试着移师互联网,盗游戏帐号的贼,还经常和被盗号的苦主网上谈感情。
做病毒的挣钱,吸引了越来越多的人去做病毒,连办黑客培训班的广告都曾在某些城市的公交灯箱上发现过。杀毒厂商呢,还是那些人,却越来越累,越来越无聊。逐步发现,没完没了的识别病毒是个永远没有尽头的任务。
什么样的工具可以100%识别用户电脑上有害程序?现在我明白了,按传统方法去识别清除病毒,已经进入误区。
我以为,病毒的本质是非正常的文件(这10年来,我只发现一个例外,SQL蠕虫不以文件的方式存在,断电就没了)。
在我们的电脑里,有数以万计的文件,在被病毒入侵之前,它们都是正常的。如果我们能识别用户电脑上的正常文件,再把所有非正常文件当作病毒拦截在系统外面,电脑还会中毒吗?
以此类推,我认为杀毒就是识别非正常文件,防止其进入正常电脑,或者从已经中毒的电脑中把非正常文件找出来,赶出去。
那有朋友会问,正常文件真的可以100%识别吗?
对所有分布于网络的文件来说,100%识别正常文件同样也是不可完成的任务。(这好象又绕回去了)
但是,对于一台单个的电脑,是完全可以做到100%识别正常文件的。那么,这台电脑中所有非正常文件就被准确的筛选出来,还等什么,直接赶出去,你的电脑就正常了。
又有朋友问了,我写的这个新版本程序被你当病毒赶出去了。
没关系,这是一个新程序,还没有把它识别为正常文件之前,它就是非正常文件,就是要赶出去。我们只需要把这个识别正常文件的时间间隔缩短到足够短的时间就可以了。5分钟够不够?嫌长,那就1分钟吧。这是完全可以实现的,你还担心正常文件也被当作病毒赶出去了吗?