圣诞贺卡蠕虫和文件的未来

/ 1评 / 0

这是这部视频的摘抄转写稿翻译(自备梯子)。视频时长约 7 分钟。

让我来讲一个圣诞节的故事;或者说,CRISTMA 时的故事:因为这件事发生在计算机文件名还只有 8 个字符长的时候。

事情发生在 1987 年 12 月。当时 Ronald Reagan 还是美国总统;Margaret Thacther 还是英国首相;家用计算机刚刚开始流行,计算机网络还不像现在这样复杂——毕竟万维网被发明出来是两年后的事了。

在德国的一所大学里,一名学生正在编写一个计算机蠕虫。这个蠕虫的名字叫 CHRISTMA, 只是一个简单的程序。它只在 DOS 机上运行——当然,现在我们看来 DOS 已经是过去的产物,但是在当时 DOS 则是最新潮的产品。这个程序会显示一个圣诞树:

              *
              *
             ***
            *****
           *******
          *********
         ***********               A
            *****
          *********               VERY
        *************
      *****************           HAPPY
          *********
        *************           CHRISTMAS
      *****************
    *********************        AND MY
        *************
      *****************        BEST WISHES
    *********************
  *************************    FOR THE NEXT
            ******
            ******                 YEAR
            ******

但它不仅会打印这个圣诞树。当用户看着这个程序输出时,它还会在后台遍历电脑的地址簿并把自己以邮件附件的形式向其他电脑发送。

"Let this exec run and enjoy yourself." 这是邮件正文。"exec" 意指程序。

当然,以「现代恶意软件标准」来评判的话,这个程序几乎可以视作无害。然而这个程序诱导了十分多用户打开,它传播得如此迅猛以至于打跨了 IBM 的网络服务。当然那时 IBM 还是一个科技产业巨头的时候。实际上这个蠕虫打跨了 IBM 网络两次,第二次是在三年之后,或许是因为某个用户在整理电脑上的文件时又无意间运行了这个程序。

这个现象给我们了一个问题:这类攻击即使放到现在也依然有可能执行。当然不是说用当年那个程序,而是用当年那个手段:诱导用户下载并运行程序,这个程序就可以访问这名用户电脑上的所有资源了——网络、摄像头、用户文件都不在话下。邮件现在已经不再适合作为传播途径,但是盗版软件下载站又成了绝佳媒介。当然,还有其他方式,比如 Flash 的 0day 漏洞。所谓 0day 漏洞就是这个漏洞一经发现就被立刻披露给大众而不事先通知厂商,给厂商 0 天的时间用于修补漏洞。当然 Adobe 还是要给 Flash 继续打补丁,但无论怎样,总是有其他手段。但无论通过什么手段,只要你告诉用户,这里可以下载免费音乐、免费电影、免费游戏,各种你想要的东西,然后当他们下载完成一运行,电脑就中招了。

当然现在我们也提出了各种预防措施。Windows 实现了用户账户控制 (UAC) 和内建杀毒软件,Mac 和 Linux 也有管理员账户和权限控制。一旦恶意软件尝试更改系统的关键部分,它就会被系统拦截下来——只要用户不去点「允许」或者输入密码(而且在实践上用户早都学会看见这个框框就点「允许」了)。但是即使不能去动系统,只对用户的个人文件开刀也足以造成巨大的破坏:比如加密整个盘、加密电脑上所有的相片和文档,并且逼你支付一定比特币才能解密文件。但这个行为对于计算机而言和你主动运行一个文件加密程序没有区别,这意味着几乎无法编写出一个可以防御这种行为的安全软件,除非这个安全软件能够直接读出用户的心思、预测用户的行动。

不过还有另外一种方案,而且这个方案已经被广泛实施了。

在 iPhone 上,每个应用程序都有自己的独立隔离存储空间,在设计上就铲除了「我的电脑」的概念。如果电脑也是这样设计的话,如果你要把一份 Word 文档传给一个 QQ 好友,你不能在 QQ 中「打开」一个要传输的文件,而必须在 Word 中将需要传输的文件「推送」到 QQ. 你的音乐电影只能在下载了这个文件的播放器中播放,除非你要求应用将这个文件推送到其他播放器。

当然,在座的一部分人肯定会觉得这个设计十分糟糕——因为如果电脑真是这样设计的话,就没法把一大堆零零散散的小工具串联到一起做一些十分高级的操作了,这样的电脑还有什么意思!这我能够理解,我也是程序员出身。对于对系统了如指掌的超级用户,这种「高级模式」是必要的。但无论怎样,为什么我们没有为非信息技术专业人员单独设计一个模式呢?

因为我们当初没有这个机会。

现代桌面计算机仍然是 1987 年初代计算机的子嗣,那时的计算机可没有那么多空间单独划分给每个应用程序;况且,那时的程序大多数都只是做纯粹的运算而已。计算机以前是学术用具,是只有专业人员才能操作的高精尖仪器;但现在的电脑是给所有人用的,所以这套系统显得有些过时了。电脑小白真的需要看到 C 盘或者 / 么?他们真的需要操心系统安全和文件备份么?我们的计算机系统沿袭了这个设计的主要原因无非是为了向后兼容性,而向后兼容性使得我们不得不一直背着历史的包袱。就连苹果这种激进的公司也给了用户插转接头和用旧应用的过渡期;微软对于兼容性的痴迷更不用提——你甚至在现在还可以用 Windows 10 运行 Windows 98 的程序。我们无法与过去做个了断,因为一旦从操作系统层面铲除中心文件系统,那么所有的旧应用都都没法运行了。(Windows RT 就是这样。)

当然,最近几年才兴起的新设备就可以不受这个限制。智能手机、平板、Chromebook 都可以搭载没有中心文件系统的操作系统。当然在幕后,在操作系统核心,文件系统是依然存在的,但是这一部分对于用户而言是透明的。

当家用电脑市场份额开始下跌时,或许我们那时就可以做个了断,让操作系统变得更安全。

但是,英国的科技产业发展是离不开 1980 年代的家用计算机普及的,BBC Micro 和 ZX Spectrum 造就了一代码农。政府制定政策推动计算机产业发展,确保让每个孩子都知道计算机怎么用,让他们不仅能够享受未来,同时也能编制更好的未来。尽管这种封锁了文件的操作系统更安全,它是不能自举的:你没法在 iPhone 上编写 iPhone 应用,但总得有人去写那些 iPhone 应用。

所以,无论你希望买一台开放式的笔记本,还是买一部封闭式的手机,或者拿到一些其他东西,祝你圣诞快乐。我们在 2016 年再见。


视频作者简介:Tom Scott, 英国人,语言学[学硕博?]士,著名 YouTube 视频作者、Web 程序员,内容主打科普、计算机科学和(人类)语言学。

视频发布日期:2015 年 12 月 21 日。

  1. […] 是的,不得不承认,现在的智能手机已经成了某种稀松平常的事物。大部分人对于手机的要求也不过是打电话和上网而已。而且现在的硬件发展也已经达到了满足绝大部分人的需求的状态,也没人需要再调整那些非常隐秘的设置了。正如同 Tom Scott 所陈述的未来计算机发展的一种道路一样,用户将不再需要那些「高级设置」。 […]

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注