当前位置: 华文问答 > 数码

Linux 为什么没有服务器端病毒?为什么都是针对桌面端或者浏览器攻击?

2020-02-12数码

Linux上面当然有病毒。

世界上第一个造成重大损失的病毒莫里斯蠕虫就是Unix系统上的,它利用的finger/mail等指令至今都还是Linux等Unix系系统的标配。

莫里斯蠕虫_百度百科

Linux上面不仅有病毒,而且因为Linux占据了服务器市场的绝对优势,所以一旦攻陷它,就可以通关服务器挂马等手段迅猛传播,获利巨大。

因此,针对Linux的攻击多而频繁。毕竟一旦攻陷,比攻陷个电脑小白的破电脑破手机,获益可多的太多了——所谓「用户少所以攻击少」完全是商家的洗脑。

但是,Linux上面的病毒确实少。少到它上面压根没有杀毒软件的程度(嗯……严格来说也有,比如校验执行文件数码摘要、帮助管理员快速发现入侵的工具也有不少;但并不是我们习惯的那种杀毒软件)。

为什么Linux不怎么怕病毒呢?

和这次新肺炎病毒一样,如果你采取了防控措施,自然问题不大;但如果你没有防控措施……

我们来对比一下。

1、隔离

针对肺炎,我们严禁跨区流动,尽量减少人群交互。

Linux下,每个应用每个用户都有自己的权限,任何越权动作都会被禁止。

dos下,没有任何隔离措施。修改运行中的系统内核是当时软件开发的基本技术。

windows95/98/me下,运行中的系统内核得到了保护;但磁盘上的文件没有任何保护。

windows xp下,在windows9x的基础上,如果你用了NTFS分区格式,磁盘文件也受到权限保护——但如果没用NTFS,和9x时代没太大区别。

windows 7/10,磁盘文件终于得到了普遍保护

2、授权

针对肺炎,我们需要接受门卫监督,不随便外出,尽量避免病毒感染。

Linux下,使用者不会使用特权用户,所以他们没有办法触及其他用户的文件,更没办法破坏/更改系统文件。

DOS下,每个人都随心所欲,可以随便撕扯系统核心进程的防护服、像往垃圾桶里扔杂物一样随便往系统核心里面胡乱添加东西。

Windows9x下,每一家的大门都敞开着。我们可以随意进入他们家里,往他们的锅里甩鼻涕。但直接揍人或者直接喂人家脏东西还是被禁止了——除了某些特例之外(比如用全局键盘钩子偷你的密码)。

Windows xp下,用了NTFS的上等人给自己家安装了防盗门;但是默认情况下,每个用户人手一把防盗门万能钥匙(全都是管理员账户),可以开任意人家的大门,然后一切就又和Windows9x相差无几了——但这被认为是一种好习惯,因为不允许任何人可以随意开任何人的大门的话,绝大多数功能都没法正常工作。

Windows7/10下,Windows用户在闯进别人家里/总统家里前,终于会有保安出来阻拦,提醒你「这个操作需要得到授权」了(UAC)。

3、应用来源

针对肺炎,我们要审核防疫物资是否达标、是否假冒伪劣商品、是否是已经被污染了的有害品,然后才敢使用。

Linux下,我们有相关发行版开发者维护的系统软件仓库,软件仓库里所有程序都有数字签名/摘要,确保无法伪造;需要自行安装软件时,我们会直接到开发者网站下载源码/安装包、自行校验、自行编译。因为Linux下几乎所有软件都开源,都可以到正规网站下载,因此使用来历清白的软件早已成为习惯;再加上诸多防范措施——想要给Linux用户喂屎,难如登天。

DOS下,大家习惯用软盘互拷盗版,因此——病毒啊,天天见!

Windows 9x/xp时代,大多数人仍然习惯从网上下盗版,病毒司空见惯。

Windows 7时代,系统内置了程序签名以及签名认证机制。如果你小点心,病毒就很难瞒天过海。但由于很多软件你舍不得掏钱买正版,而破解版肯定会破坏签名,所以你不可能知道它有没有捆绑病毒。同时,还有很多很多软件压根就没签名。

Windows 10时代,在AppStore的带动下,软件商店直接捆绑在OS中、和开发商分成的经营模式成为主流。win10也不例外。在获得正版变得越来越容易的同时,我们的收入也终于可以支持正版。使用来历不明软件的几率越来越小了……

嗯,现在,你来告诉我,你觉得哪个平台会病毒泛滥?哪个平台会无懈可击?