现在,许多电子设备都能连上互联网,成为物联网的一部分。比如,智能冰箱会提醒你牛奶快喝完了,或者自行把牛奶添进购物清单,甚至可以主动订购牛奶。而当你想在跑步机上跑步时,智能空调会自动调低温度,等到你外出看电影时又自动关闭。智能婴儿监护仪会告诉你什么时候该买新的磨牙胶了。

这样的场景虽然听起很奇妙,但很有可能,上述智能家居在昨晚还做了一些奇怪的事:和其他数百万部设备(摄像机、打印机、路由器、音箱、空调机或是硬盘录像机)一起封杀了推特或奈飞这样的音乐、社交或电影网站,破坏了开源软件运动,造成了近一百万套德国房屋停电,或是中断了利比里亚的手机通讯。除了参与这些额外的秘密活动之外,它们还增加了你的电费支出。

等等……有这种事?对,这里的问题其实很简单,但也很令人痛心。这是一个技术问题,却牵扯到全球化、法律和责任。我们的电子设备大多安装了通用硬件,为了完成各自的工作,这些设备都需要运行特定的软件,其中还包含了可以登录的用户配置文件。遗憾的是,许多生产商都听任消费者使用已经泛滥的简单密码登录这些设备,比如“password”、“pass”、“1234”、“admin”、“default”或“guest”之类。

曾经有一群黑客发动了一次简单但是破坏力惊人的攻击,他们总结出了61个常用的用户名/密码组合,并编写了一个程序在互联网上搜索使用这些组合的设备。这个程序在侵入某部设备之后立即自行安装,然后阴险地在这部设备上搜索其他著名的恶意软件,并将它们统统删除。这样它就成为设备上唯一的一只寄生虫了!这个恶意程序的绰号叫“未来”(Mirai),它的下一步是将数百万部易受攻击的设备串联成一个僵尸网络(botnet,也就是一个由受到感染的计算机联成的网络)。当数目巨大的婴儿监护仪、打印机和摄像机向某个网站发出ping信号时,这个网站就会因为不堪重负而无法访问,除非它采取了昂贵的保护措施。

更糟的是,“未来”的几个编写者将它的源代码发布到了网上。这下,就连只有初级编程技术的人都能自己组建庞大的僵尸网络了。

这个问题怎么解决?你或许已经注意到了手机或笔记本电脑偶尔需要更新软件。这一方面会增加新的功能,一方面也可以修补软件的漏洞,不那么容易受到攻击。但是可惜,大多数易受“未来”攻击的设备可能已经停止更新,这使软件修补要么不可行,要么不容易。

为了挣学费,我在大学时维护过好几个计算机网络。在遇到一部用户名或密码未知的设备时,我会尝试一些组合,而这也正是“未来”会尝试的组合。这么多年过去了,网络安全仍然没有改善,或许,这件事情根本没人负责。对于芯片或设备的生产商来说,在安全问题上糊弄一下,往往不会造成太严重的后果,甚至可能完全没有后果。

对于这种安全措施上的明显疏忽造成的危害,政府部门无力监管,法律也没有明确各方的责任。“未来”的最初编写者是美国的几个大学生,他们被捕之后最终都认了罪,但这还远远没有消除隐患。只要网络上还有大量用户名/密码的组合为“admin/admin”的设备,就一定会有人钻这个空子。这里说一个坏消息:“未来”问题并没有真正的解决方案,唯一的办法就是等待那些易受攻击的设备淘汰。但是也有好消息:只要对少数几家容许“admin/admin”式密码的设备生产商施以重罚,或是有父母发现婴儿监护仪被侵入后起诉它的生产商或销售商,安全问题或许可以迅速得到改善。

物联网下的僵尸网络