通过安全设计解决网络安全漏洞

admin 2024年6月4日10:12:40评论7 views字数 1451阅读4分50秒阅读模式

通过安全设计解决网络安全漏洞

在当今的网络安全环境中,易受攻击的软件可能成为灾难事件的导火索。因此,在技术到达人们手中之前、在我们开始编码之前以及在其整个生命周期内,确保其安全至关重要——这就是我们所说的“设计安全”的技术。

今天,我们发布了一份报告,《谷歌的安全设计》,概述了我们如何利用这些原则来加强我们的基础设施,并通过从一开始就实施软件安全来减轻用户和开发者的安全负担。我们还发布了《安全设计:谷歌对内存安全的看法》,分享了我们对如何将安全设计应用于内存安全的见解,并提供了一种解决这个存在数十年的漏洞问题的方法。

安全设计

在过去的一年中,我们确实看到政策举措试图帮助将安全负担从最终用户转移到软件制造商,例如CISA 的“安全设计”计划和最近的白宫内存安全报告。然而,生态系统仍然缺乏一个被广泛采用的指南来引导组织朝着正确的方向发展。

今天的“安全设计”论文分享了 Google 多年来使用该概念的经验,即在软件产品设计期间和整个开发生命周期中“内置安全性”,而不是事后“添加安全性”。我们为软件设计、开发和部署提供了四项“安全设计”原则:

  • 以用户/客户为中心的设计:我们在产品的使用背景下考虑我们的产品,以及用户的行为和选择如何导致不良后果,尤其是当无法合理地期望用户知道某种选择是否有风险时。

  • 开发人员也是用户:根据我们的经验,生产软件产品或服务的开发和部署生态系统对其安全态势有重大影响,因此我们考虑如何确保开发人员生态系统鼓励安全设计并防止漏洞和错误。

  • 从不变量的角度思考:我们通过定义我们希望系统始终保持的属性来奠定我们的安全设计基础,即使系统受到攻击时也是如此——这是我们的安全不变量。

  • 可理解性和保证性的设计:软件系统应这样设计,以便安全专家可以自信地确定系统确实能够维护其安全不变量,并且可以在产品的整个生命周期内大规模地和持续的开发过程中做到这一点。

这四项原则有助于打造自动保护用户免受恶意服务器、网络级攻击者、通过下载文件发起的攻击、网络钓鱼攻击等威胁的产品和服务。这些原则还可以显著减少各类漏洞。

责任在于我们的生态系统,而不是开发者

保护软件安全历来都是开发人员的责任,开发人员必须理解并遵守复杂的安全编码准则。难怪许多事故都是因开发和部署系统时的错误而起:在系统设计过程中未考虑安全威胁、在开发过程中引入编码错误导致漏洞,或者配置更改导致已部署的系统受到攻击。

我们认为,将安全设计方法应用于开发者生态系统是实现高水平安全性和保障的最有效方法之一。专为安全性和保障而设计的开发者生态系统可确保应用程序的安全不变,并防止所有类型的漏洞,从而提供大规模保障。这就是为什么 Google 正在投资进一步扩大内存安全语言的使用,以解决开发人员意外引入此类漏洞的风险,并将这一责任归咎于语言本身。我们还投资构建外部内存安全生态系统,向Rust 基金会提供 1,000,000 美元的赠款,并资助将 Rust 引入 Linux 内核的努力。

要使产品在到达用户手中时就更加安全,就意味着要专注于软件开发的上游——完善安全编码、部署和指导。在 Google,我们将继续深入参与、分享我们的经验并合作推进新的框架、最佳实践和指导,以确保每个人的数字领域安全。

作者:Christoph Kern  Principal Engineer, Security Foundations

Royal Hansen Vice President, Privacy, Safety and Security Engineering

原文始发于微信公众号(河南等级保护测评):通过安全设计解决网络安全漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年6月4日10:12:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   通过安全设计解决网络安全漏洞https://cn-sec.com/archives/2812401.html

发表评论

匿名网友 填写信息