当前位置:首页 > 知识

漏洞的近义词

“漏洞”最直接的漏洞同义词是“破绽”。但破绽偏中性,义词甚至带点武侠味——两个人过招,漏洞一方露出破绽,义词另一方趁虚而入。漏洞漏洞更冷,义词更技术,漏洞更像一个系统在正常运行中突然被人发现某处逻辑没兜住底。义词

我头一回认真琢磨这个词,漏洞是义词几年前一个做安全的朋友给我演示SQL注入。他在一个登录框里输入一串字符,漏洞后台数据库直接把整张用户表吐了出来。义词他转过头跟我说:“你看,漏洞这不是义词bug,是漏洞漏洞。bug是代码写错了,漏洞是代码写对了,但设计的时候没想过有人会这么用。”

这句话我记到现在。漏洞的近义词,其实不是“错误”,而是“没想到”。

2017年WannaCry爆发的时候,我还在读大学。整个机房断网,老师让我们别插U盘。后来才知道,那个漏洞来自美国国家安全局自己开发的“永恒之蓝”工具,被黑客组织偷走后改成了勒索病毒。微软其实早在两个月前就发布了补丁,但全球仍有几十万台机器没打。问题出在哪?不是技术不够,是有人觉得“我这台机器不重要”“补丁回头再说”。漏洞在这里的近义词变成了“侥幸”。

再往深一层想,漏洞有时候是被人故意留的。前几年某款国产路由器被曝出固件里藏着后门,厂商说是“为了方便远程维护”。方便谁?方便自己,也方便了别人。这种漏洞的近义词是“私心”。

写代码的人都知道,没有绝对安全的系统。每加一层防护,就多一层复杂度;每多一层复杂度,就多一个可能出岔子的地方。安全圈有句话:你只能证明系统有漏洞,不能证明它没有。这听起来像绕口令,但干过这行的人都懂——漏洞不是“有没有”的问题,是“什么时候被谁先找到”的问题。

我认识一个做渗透测试的姑娘,她的工作就是合法地“黑”进客户系统。她说最怕遇到的不是技术难题,是客户说“我们系统很简单,不会有人盯上”。她每次听到这句话,就知道这单活儿肯定能挖出东西。漏洞的近义词,在甲方嘴里常常是“不至于”。

去年有个开源组件爆出远程执行漏洞,影响范围覆盖了几乎所有主流Java应用。我连夜升级依赖,一边改pom文件一边骂。骂完又觉得荒诞:这个组件被用了十几年,无数大公司都在用,居然没人发现那个解析逻辑有问题。漏洞的近义词,在这里是“习以为常”。

所以你看,漏洞这个词,表面上是技术术语,往深了挖,全是人的问题。疏忽、傲慢、懒惰、侥幸、私心、习以为常——每一个都能在某个具体的安全事件里找到对应。代码是人写的,系统是人设计的,规则是人定的。人身上有的毛病,代码里一样不少。

回到开头那个问题。漏洞的近义词到底是什么?我的答案是:所有你以为“不会出事”的瞬间。

那些瞬间堆在一起,就成了别人眼里的突破口。

分享到: