袁萌:谈谈Linux操作系统的病毒
近年来,Linux计算机流行起来了。按照某些人的说法,所谓“Linux病毒”自然要出来兴风作浪,祸害人们。所以,有关“Linux病毒”的知识有必要普及一下,以免谬见泛滥,混淆视听。
所谓“计算机病毒”是指自身能够复制的恶意程序代码,多以二进制文件形式存在,感染那些可执行文件。计算机“病毒”得以传播泛滥的前提是,类似生物界,病毒的生存率(自身复制速率)必须大于其死亡率(存在的终止),并且达到一个必需的生存门槛值。多年来的实践证明,至今还没有Linux病毒泛滥成灾的报道(现象),除了一些(70来个)出于“技术好奇心”的实验室病毒作品之外。这是什么原因呢?其根本原因在于:由Linux所产生的“生态系统”对病毒是不友好的,不适合病毒的生存繁衍。为什么这么说?
Linux的系统文件和应用程序的源代码几乎都是开放的,二进制(only)应用是很少的,这种情况对于病毒(二进制文件)的“藏身”极为不利,而且这些Linux文件的重新编译安装都会中断病毒传播的主渠道。
Linux本身是类Unix操作系统,多用户的使用机制使病毒传播受阻。一般说,Linux用户不会在根目录里面工作,病毒难于取得整个系统的控制权。Linux网络的设计是相当保守的,不设置高层“macro facilities”,使得恶意病毒代码难于在此放肆。全球病毒编写者都明白这些道理,他们不愿意白费力气,自讨无趣。
有些谬见必须批驳,比如:Linux不怕病毒是因为Linux用户很少,病毒作者不爱理睬。言下之意是,将来一旦Linux用户多起来了,那么,Linux和Windows两者“彼此彼此”,病毒都会光顾。这种说法,不对。Windows本身起源于个人单用户操作系统,一旦用户进入系统,就掌握系统大权,给病毒传播创造了机会。Windows操作系统属于私有软件,源代码是不公布的,一旦病毒缠身,往往无法摆脱,只得求助于杀毒软件来帮忙。近年来,病毒泛滥成灾的根本原因在于,二进制软件产业,特别是,Windows产业,占据了市场的主导地位。病毒给全球私有软件产业带来的损失不计其数。由此,全球杀毒厂商“肥”得要命,可谓“一花独放”。我们主张自由软件,不是因为个人癖好,而是考虑到全球软件业的健康发展,向病毒宣战。
有人一提起U盘,特别是自启动U盘,就嗤之以鼻,不以为然。他们的意思是说,你别胡闹了,不知搞个啥名堂。我说,不对。自启动U盘,一是不会造成病毒传播,二是给用户提供使用方便,有何不可?有人说,将来研制出“跨平台”病毒,你怕不怕?我说,对于Linux而言,所谓“跨平台”病毒也是病毒,有何可怕?
注1:近年来,所谓“Linux病毒”确有上升趋势,但是,就是不见其大规模传播,出来祸害人们。看来,Linux生态系统确实很健康,非常“鲁棒”(Robust);
注2:本文系参考十余篇有关病毒研究作品而写成,在此感谢有关作者。