我的Linux机器是否可能被恶意软件感染?
我还没有听说过发生在我认识的任何人身上的情况,而且我已经听说过很多次这是不可能的。真的吗?
如果是这样,Linux Anti-Virus(安全)软件怎么了?
我的Linux机器是否可能被恶意软件感染?
我还没有听说过发生在我认识的任何人身上的情况,而且我已经听说过很多次这是不可能的。真的吗?
如果是这样,Linux Anti-Virus(安全)软件怎么了?
Answers:
首先,在Unix和类似Unix的操作系统(例如Linux)下肯定有可能感染病毒。术语计算机病毒的发明者Fred Cohen 在4.3BSD下进行了他的第一个实验。尽管自2003年以来似乎没有进行过任何更新,但仍存在一个用于编写Linux病毒的操作方法文档。
其次,sh脚本计算机病毒的源代码已经流行了20多年。参见汤姆·达夫(Tom Duff)于1988年发表的论文和道格·麦克罗伊(Doug McIllroy)于1988年发表的论文。最近,为会议开发了独立于平台的LaTeX病毒。在Windows,Linux和* BSD上运行。自然,在Windows下它的效果更差...
第三,已经出现了至少(至少)针对Linux的一些真实的,实时的计算机病毒,尽管尚不清楚是否有2或3种(RST.a和RST.b)被“野外发现”。
因此,真正的问题不是Linux / Unix / BSD可以感染计算机病毒吗?但是,考虑到Linux台式机和服务器的数量庞大,为什么这些人没有Windows所吸引的那种惊人的病毒瘟疫?
我怀疑原因与传统Unix用户/组/其他自由保护所提供的适度保护以及Linux支持的零散软件基础有关。我的意思是,我的服务器仍在运行Slackware 12.1,但带有自定义编译的内核和许多重新编译的软件包。我的桌面运行的是Arch,这是一个滚动版本。即使它们都运行“ Linux”,它们也没有太多共同之处。
linux上病毒的状态实际上可能是正常平衡。Windows上的情况可能是“龙王”,这确实是不寻常的情况。Windows API是疯狂的巴洛克式,Win32,NT本机API,神奇的设备名称(如LPT
)CON
,AUX
可以在任何目录下工作,没人能理解的ACL,单用户,否,单根用户,机器,标记文件的传统通过使用文件名(.exe
)的一部分可执行文件,所有这些都可能导致Windows上恶意软件的状态。
请记住,Linux以多种方式使用,例如文件和电子邮件服务器。
这些服务器中的文件(MS Office文件,Outlook消息,EXE程序)可以与感染一起存储。
即使它们不影响服务器本身,也可以将服务器配置为在存储时检查每个文件,以确保该文件是干净的并防止将来将它们移回到Windows计算机时传播。
当朋友要我检查为什么他们的Windows计算机不工作时,或者当我将笔式驱动器插入Windows计算机时,我自己安装了它。
从原则上讲,Linux病毒是可能的,并且已经存在一些病毒,但是在野外,还没有广泛的Linux病毒。Linux用户群很小,在Linux下,病毒造成更大危害的难度要大得多,因为与Windows XP相比,用户模型的限制性很强。因此,病毒作者通常以Windows为目标。
有Linux反病毒软件,例如McAfee的软件,但据我所知没有Linux用户使用该软件。到目前为止,仅安装来自可信赖来源的软件并通过及时安装安全更新来使您的系统始终保持最新是更为重要的。
作为历史记录,第一个Internet蠕虫Morris Worm通过Unix实用程序中的漏洞进行传播。它早于Linux,但表明基于Unix的系统有可能被感染。
我认为,除了在其他答案中提到的那些理由之外,还有另一个原因是Linux平台没有太多病毒。Linux几乎所有组件的源代码都是免费提供的。
假设由5名成员组成的团队开发了一个应用程序。我们在列表中包括测试人员和其他几个人员,最多10人会知道该代码。在这十个中,有一些可能对代码没有足够的详细了解。因此,知道代码足以指出错误,安全漏洞的人数很少。
现在,如果将此代码设为免费/开放源代码,那么对其进行审核的视线会大大增加。因此,发现安全漏洞的可能性也增加了。
这些新的贡献者带来了他们的经验,并且通常新鲜的眼睛能够注意到漏洞,这些漏洞最初是开发人员忽略/认为是理所当然/遗漏的。
该应用程序越受欢迎,其贡献者就越多。我认为这种自由/开放有助于减少Linux平台的漏洞数量。
sudo make install
?之前检查了所有源代码?
简单的答案是,没有操作系统是100%安全的,除非它在启动时从只读介质读取自身是100%安全的。
但是,Windows具有更多的感染媒介,这些媒介更易于访问,一旦被感染,危害就更大。通过阅读“ RootKit Arsenal”或其他书籍,可以轻松看出这一点。
任何计算机上的漏洞利用数量大致与(使一台计算机生根获得的收益)*计算机数量/(生成生根恶意软件的成本)成正比。
由于漏洞利用的数量与计算机的数量成正比,因此在Windows上恶意软件的数量会更多。
但是,假设唯一原因是愚蠢的。Windows有更多的病毒是因为有更多计算机在运行它。请注意,在Linux中,感染恶意软件的成本要比Windows便宜得多,因为其破坏力更大。相反,通过生根获得的数量较小。还请注意,由于我在第一段中提到的原因,生根的成本较高。
请记住,到目前为止,这是正确的。在这一点上,Linux是比Windows更好的体系结构。但是,有力量说我们需要更快速地开发用户友好功能。这可以导致更容易存在错误和创建病毒。我已经发现Ubuntu几乎和Windows一样容易出错。
Windows has more ... computers running it.
嗯,更多的最终用户计算机正在运行它。我相信,运行Windows XP的* Nix(Unix变体,Linux变体)形式的无头服务器要多于Windows。DOS和Windows的早期安全性为零是该平台成为目标的重要因素。
其他答案为Unix和Linux上的病毒提供了良好的历史参考。更多现代示例包括“ Windigo”和“ Mayhem”恶意软件活动。这些已经感染了成千上万的系统。据报道,Mayhem正在使用Shellshock漏洞进行传播。
至于Linux恶意软件检测软件,您有开源和商业替代品。在我看来,最有效的是Second Look。它使用内存取证和完整性验证来检测Linux恶意软件。我是Second Look的开发人员。