谷歌承诺投资100亿美元用于强化美国基础设施网络安全,其中包括推广零信任计划,帮助保护软件供应链和增强开源安全。
该公司将利用自身已经施行多年的几项计划,扩展开源模糊测试工具以推动Linux内核开发人员做好安全工作,并推广使用内存安全的编程语言进行Linux编程。
本周早些时候,美国总统拜登召集苹果、谷歌、微软和摩根大通等业界巨头共商美国关键基础设施保护大计,谷歌的百亿美元网络安全投资计划正是在这种背景下抛出的。
此前,为建立供美国联邦机构实现的零信任设计,美国商务部国家标准与技术研究院(NIST)选择了18家网络安全公司。谷歌尽管不是18家所选公司之一,但正与NIST合作开发这方面框架。
零信任假设网络已经遭入侵,并将关注重点从巩固网络边界拉回到应用、数据和人本身。
谷歌基础设施副总裁Eric Brewer和资深软件工程师Dan Lorenc在博客文章中写道:“不同于被动修复漏洞,我们应该通过能够堵住所有种类漏洞的安全编程语言、平台和框架主动杜绝漏洞。”
“相较于费劲尝试修复漏洞及其后果,在问题脱离开发人员键盘之前就加以预防更加安全,也更省钱。”
8月25日,美国总统拜登在白宫会见私营产业巨头,指出仅靠美国联邦政府无法解决保护关键基础设施不受网络攻击侵害的难题。
近期频频爆出的重大网络攻击事件,比如Colonial Pipeline勒索软件攻击、SolarWinds软件供应链攻击和微软Exchange服务器大规模漏洞利用事件,一定程度上推动谷歌和微软顺势应承拜登的网络安全行政令,承诺在未来五年内分别投资100亿和200亿美元,用于改善美国面对未来网络安全威胁的响应。
《华盛顿邮报》登载拜登言论称:“我认为,你们有能力和责任来提升网络安全水平。最终,我们都有很多工作要做。
今年6月,Brewer发了四篇文章响应拜登关于加强软件供应链安全的14028号网络安全行政令。
其中一篇文章探讨C语言编程固有的安全问题,以及Rust语言的兴起。
Brewer写道:“安全编程语言和应用框架可用于在软件上施加一种结构,使之能够实现大规模高置信度安全推理。”
“但确保现实世界C代码切实满足了这一要求却十分困难,而且常常需要极其艰难地推断堆内存结构。同样,确保正确验证和转义流入Web应用HTML标记语言的所有数据也很棘手,因为数据从输入到输出一路上要流经多个组件,比如流经存储模式。”
相反,作为系统开发语言,新兴的Rust语言在内存安全方面内置了构造安全方法,可切实替换掉C和C++。比如,Rust的类型系统施行所有权机制,确保无法访问已释放的内存等。
所以,谷歌支持将Rust作为仅次于C的编程语言纳入Linux内核。Lorenc和Brewer解释称,应该从一开始就限制软件漏洞,而不是为应对新漏洞而疲于奔命。微软和AWS也支持Rust作为C和C++系统编程的内存安全替代。
谷歌倡导软件代码测试,包括使用微软家GitHub的工具,比如Dependabot——保持开源软件包或依赖更新的一款工具。
谷歌还提出,可以将软件物料清单(SBOM)融入美国官方对软件供应链攻击的响应当中。在这方面,Linux基金会正在努力践行拜登的网络安全行政令。由于现代程序使用了大量库依赖,开源软件和专有软件都不好解决这个复杂问题。
谷歌称:“SBOM需要合理的信噪比:如果包含太多信息,就没什么效果,所以我们敦促NTIA(国家电信与信息管理局)拟定具体用例在粒度和深度方面的最低和最高要求。”