|
简介
通常有四种截然不同类型的威胁,不过用户经常混淆它们,这主要是因为一次攻击的发生往往是各种机制同时作用的结果:
病毒 自我复制以感染宿主程序体;
特洛伊木马 执行任务以将之自身隐藏在某个貌似无害的应用程序中;
蠕虫 利用计算机网络来进行自我繁殖,例如通过电子邮件;
后门程序 允许外部用户使用间接手段掌控某项应用程序。
对它们加以分类通常不那么容易;例如,有些程序在某些观测者看来是病毒,但其它人却认为它们是蠕虫,要做出最终的决策是十分棘手的。不过对于本文所涉及的范围来说,这倒并不很重要,本文意在阐明哪种威胁会危及Linux系统。
与普遍看法正相反的是,这四种祸害其实已经都存在于Linux上了。当然,病毒的传播环境不像在如DOS下那么有利,但现有的威胁亦不容小视。就让我们分析一下有哪些风险。
潜在的威胁
病毒
病毒是一小段安置在某个宿主程序核心位置的代码,它能够通过感染新的执行文件来自我复制。病毒最早出现于70年代,当时的程序员在玩一个叫做"core war"的游戏。这个游戏来自于Bell AT&T laboratories[MARSDEN 00]。其目标是在有限的内存区域里并行运行,小程序能够互相破坏。操作系统没有提供程序内存区域之间的保护,这样就允许相互进攻以消灭对手。为此,有些人使用'0'来“轰炸”最大可能的内存区域,与此同时,其它一些人永远在地址空间中移动,希望覆盖掉对手的代码,有时,他们中的一些会联合起来消灭某个难对付的“敌人”。
实现该游戏的算法被翻译成一门特别为其创建的汇编语言“red code”,它通过绝大多数现有机器上的仿真器来执行。游戏中的乐趣更多源于科学的好奇,就如对the Life of Conway Game,不规则碎片形和遗传算法等的狂热一样。
不过,随着关于core war的文章发表在Scientific American[DEWDNEY 84]上,不可避免的事发生了,有些人开始编写小段的自我复制的代码,这些代码特别针对于软驱启动扇区或者可执行文件。起初是在Apple ][计算机上出现,接下来就到了MacIntosh和PC的计算机上。
MS DOS操作系统成为了病毒繁殖环境的绝佳之选:静态可执行文件有着众所周知的格式,没有内存保护,没有基于文件存取权限的安全设置,广泛地在内存中堆叠使用TSR常驻程序,等等。我们必须还加上一条用户心理状态的因素,他们疯狂地用软盘交换可执行程序甚而毫不考虑文件的来源。
在最简单的模式中,病毒就是一小段代码,它可以在启动一项应用程序时作为附件执行。它将利用这段时间来查找其它尚未感染的可执行文件,将其自身内嵌入这些文件中(要是考虑再周到一些,最好保持原程序不作修改)并退出。一旦启动新的可执行文件时,进程即会重新启动。
得益于大量“利器”的协助,病毒可以自动复制自身。在[LUDWIG 91]和[LUDWIG 93]中,有关于for DOS病毒的详细描述,它们使用诡秘的隐身术以保持领先于当前的杀毒软件:随机加密,代码永久变化等等。你甚至可能遇到使用遗传算法来优化其生存期和繁殖能力的病毒。相关的信息你可以在以下这篇非常著名的文档中找到:[SPAFFORD 94].
而我们必须牢记于心的是计算机病毒已经超越了虚拟生活中试验的主题范围,它可以造成大面积的损害。一小段代码的多重复制本质不过是空间的浪费(磁盘和内存),而病毒则可以此作为支撑——运输工具——来服务于其它更加令人不快的东西:逻辑炸弹,我们将在特洛伊木马中再次谈到它。
特洛伊木马和逻辑炸弹
Timeo Danaos et dona ferentes - 即便当希腊人送礼时,我也惧怕他们。 (Virgile, Aeneid,II, 49)。
被围困的特洛伊人作了一个糟糕的决定,他们将大量被希腊攻击者作为宗教祭品而遗弃的木马雕像放进了城。真正的突击队就藏在特洛伊木马的侧部,待到他们一旦渗入城内,便利用夜幕掩护从里面攻击城池,这样使得希腊人最终赢得了特洛伊战争的胜利。
著名的“特洛伊木马”常被用作计算机安全领域的专门术语,它表示一个看似无害的应用程序,就如上面提到的
[1] [2] [3] 下一页
|