零日漏洞:强大又脆弱的武器
所有软件都存在漏洞,其中一些漏洞是能被武器化的安全漏洞。
零日漏洞定义
零日漏洞就是供应商尚未修复的安全漏洞,可被攻击者转化为强力武器加以利用。出于军事、情报和司法目的,某些政府会找寻、购买和使用零日漏洞。但这种操作颇引争议,因为其他攻击者若发现相同漏洞,整个社会都会因政府的隐瞒不报而面临风险。
零日漏洞在黑市奇货可居,往往能卖得高价,漏洞奖励项目则旨在鼓励发现安全漏洞并向供应商报告。修复危机意味着零日漏洞重要性降低,所谓的“旧日漏洞” (0ld-day) 也几乎同样有效。
为什么零日漏洞十分危险?
零日漏洞因漏洞补丁存在天数为零而得名。一旦供应商发布安全补丁,漏洞就不再称之为零日漏洞。此后,该安全漏洞便加入了可修复但没修复的旧日漏洞大军。
大约十年前,一个零日漏洞就足以执行远程入侵。发现和持有任何一个零日漏洞都能让你感觉自己是网络之神。
如今,不联合使用几个乃至几十个小零日漏洞,往往都无法突破 Windows 10 或苹果 iOS 等消费级操作系统中的安全缓解措施,更别提获取目标的完全控制权了。所以,当前黑市上远程执行零日漏洞的价格堪称天价。
零日漏洞举例
然而,不是所有的零日漏洞都很复杂或昂贵。流行视频会议软件 Zoom 就存在一个很恼人的零日漏洞,任何网站都可以利用该漏洞强拉用户进入 Zoom 视频会议,不经用户允许就启动用户的摄像头。不仅如此,利用该漏洞,网页可通过不停强拉用户进入非法视频会议而对 Mac 主机实施拒绝服务 (DoS) 攻击。Zoom 的 Mac 客户端还会在用户笔记本电脑上安装 Web 服务端,即便清除了该软件,仍能在用户不知道的情况下重新安装 Zoom 客户端。
真的是一个非常烦人的零日漏洞。更糟的是,这么大的安全漏洞,Zoom 这么大个公司竟然响应迟缓,逼研究人员不得不直接释放零日漏洞。(注:“释放零日”指的是公布安全漏洞的细节以迫使拖沓的供应商修复他们的漏洞。)
能让攻击者远程开启麦克风和摄像头这么简单的安全漏洞却尤其危险,因为这种漏洞给了罪犯窥探受害者所处环境的眼睛和耳朵,受威胁的不仅仅是电脑上的信息。这种漏洞在黑市和灰市上尤为紧俏。
零日漏洞黑市
想一举入账 150 万美元?找出合适的 iPhone 零日漏洞卖给 Zerodium,这家漏洞奖励项目领头羊的网站上宣称会支付“漏洞市场最高奖金”。Zerodium 这样的漏洞代理商只服务军事-情报机构,但专制政权的秘密警察也会购买零日漏洞利用程序去黑记者和迫害异议分子。
与限制仅可销售给获准政府的灰市不同,黑市不限制买家,犯罪组织、毒枭和朝鲜或伊朗这些被灰市排斥的买家也可以在黑市买到想要的漏洞利用。
至少目前来看,《瓦森纳协议》难以监管零日漏洞利用黑/灰市。《瓦森纳协议》限制离心机等军民两用技术出口至禁售国。2013 年一项控制可作恶意用途商品的提案被否决,很多人都认为该提案弊大于利。
如今,只要足够有心,任何政府或犯罪组织都能弄到黑客工具,包括零日漏洞利用。监管形同虚设。
漏洞奖励项目 vs. 协同漏洞披露
毫不顾忌自己的零日漏洞可能助纣为虐的黑帽子,可以从黑市或灰市赚取够高佣金。有良心的安全研究员,可以通过向供应商报告零日漏洞致富。有点规模的公司企业都应设立漏洞披露过程,公开承诺会暂留安全问题的善意报告,并内部分析所报告的问题。这种操作如今已是 ISO 29147 和 ISO 30111 标准中的最佳实践了。
为鼓励零日漏洞报告,公司企业可以选择提供漏洞奖励项目,通过支付给道德安全研究人员的大笔经济奖励,来刺激零日漏洞研究与披露。奖金数额跟黑市卖价没法比,但旨在褒奖行正义之事的安全研究人员。
政府应该囤积零日漏洞吗?
美国国家安全局 (NSA)、中央情报局 (CIA) 和联邦调查局 (FBI) 均在找寻、购买和使用零日漏洞利用,该争议性行为招致了广泛批评。使用零日漏洞反黑罪犯,而不是报告给供应商以做修复,会令全体国民都无力面对可能发现或盗取这些零日漏洞的罪犯或外国间谍,因而让整个国家陷入危险境地。批评家称,政府的工作就是保护国民,理应坚持防御而不是主动攻击。
《漏洞公平裁决程序》(VEP),就是美国政府当前用来评估零日漏洞披露与否的机制。VEP 试图平衡攻击与防御,决断哪些安全漏洞应报告给供应商做修复,哪些应被囤积以作攻击用途。
黑客团伙“影子经纪人”( Shadow Brokers) 曾放出大量漏洞利用程序,其中就包括曾广为流行的“永恒之蓝” (EternalBlue),将政府应不应该囤积漏洞的问题推上了风口浪尖。影子经纪人据称隶属俄罗斯情报机构,盗取 NSA 黑客工具后将之放到了网上,免费供人下载使用。犯罪分子拿到这些强大的 NSA 网络武器后纷纷展开犯罪行动,所引发的混乱到现在都还有余波。
修复的问题比零日漏洞本身还大
零日漏洞固然迷人,但实际上其效力已不比当年。供应商发布了补丁未必意味着脆弱设备就已被修复。很多情况下,比如物联网设备之类的东西,零部件出厂时就有漏洞,然后从未得到修复。有时候是因为物理上无法修复这些设备。而如果从未部署到生产环境,供应商发布的安全补丁就毫无用处。
因此,无论攻击者是罪犯还是政府,往往旧日漏洞便已足够。很多情况下,持有零日漏洞利用的攻击者更倾向于不用零日漏洞,而走旧日漏洞路线,因为若用零日漏洞利用程序攻击有技术能力的防御者,很有可能将该零日漏洞暴露出来。因此,零日漏洞利用程序强大而又脆弱,尤其是部署在网络领域国家间秘密角力场上的时候。