探索持续安全

已完成

持续安全是 DevOps 分类中的 8 项功能中的一种。

了解需要持续安全的原因

在我们生活的这个数字时代,网络犯罪是不可避免的。 很多组织每天都在遭到攻击,犯罪者们想要造成损害,黑客们想要找点乐趣。 而我们的组织会使用第三方服务,因此也可能是这些攻击的目标。

下面是一些真实示例。

Company 真实故事
Icon for issue affecting YahooYahoo 在 2013 年,全部 30 亿个雅虎用户帐户遭到了数据盗窃的影响。 调查表明,被盗用的信息不包含明文密码、支付卡数据和银行帐户详细信息。
Icon for issue affecting UberUber 在 2016 年,黑客访问了 5700 万名骑手的个人信息。 在遭到泄露时,Uber 向黑客支付了 10 万美元的费用来销毁数据。 他们没有告知监管机构或用户其信息被盗。 而是在一年后披露了本次泄露。
Icon for issue affecting InstagramInstagram 在 2017 年,Instagram 被黑客入侵,这影响了数百万个帐户,导致用户的电话号码泄露。 这些号码最终出现在一个数据库中,人们每次搜索付费 10 美元就可搜索受害人的联系人信息。
Icon for issue affecting FacebookFacebook 在 2018 年,黑客盗窃了 1400 万名 Facebook 用户的详细个人数据。 被盗数据包括搜索结果、最近位置和所在市镇。
Icon for issue affecting EquifaxEquifax 在 2017 年 3 月 6 日,Apache Foundation 公布了一个新的漏洞和可用于其 Struts 2 框架的补丁。 不久后,Equifax 开始通知所选客户它遭到数据泄露 - Equifax 是一家信用报告机构,负责评估美国多位消费者的财务状况。 在 2017 年 9 月,Equifax 在全球公开了其遭到数据泄露的情况。 这些泄露影响了美国 1 亿 4540 万名消费者和加拿大 8000 名消费者。 在英国,总共 1520 万条记录被盗用,包括敏感数据,这影响了 70 万名消费者。 在 2018 年 3 月,Equifax 公布称与最初披露的相比,还有 240 万名美国消费者受到了影响。

如今,NSA 和 CIA 前局长 Michael Hayden 的建议是,假设你已遭到漏洞攻击,且每个级别的深度防御应放在组织安全状况的首要位置。 根据 Hayden 所言,存在两种类型的公司:已经遭到漏洞攻击的公司,以及尚不知晓此情况的公司。

Microsoft 产品组理念激励着他们的 DevSecOps 方法,这一理念是:

  • 假设你已遭到漏洞攻击
  • 恶意操作者已在具有内部访问权限的网络中
  • 深度防御至关重要。

组织正在到处安装应用程序。 他们依赖 Web 和移动应用程序来与客户和软件合作,从而运行新的一波数量庞大的物联网 (IoT) 设备。 但这些应用也在使公司面临越来越多的风险;当被问到外部攻击者如何成功实施攻击,其所在公司在过去 12 个月中遭到漏洞攻击的全球网络路径安全决策者们称,最主要的攻击方法是直接 Web 应用攻击和利用易受攻击的软件。 而在可预见的未来,公司只会通过这些易受攻击的目标传送更多客户和数据。 根据 Forrester 预测,到 2022 年,大多数企业将见证其总销售额的 76% 到 100% 都通过数字产品或线上销售的产品赚取。 因此,安全专业人员必须着重保护应用程序。

Diagram depicts the results of the State of Application Security, 2020 showing that applications remain the most common attack vector. 42% of external attacks were carried out through software vulnerability. 35% were carried out through web applications. 27% were carried out through use of stolen credentials. 25% were due to exploitation of lost or stolen asset, and 24% due to strategic web compromise. 24% were distributed denial of service attacks. 22% were due to mobile malware. 21% were DNS attacks. 18% were due to phishing. 15% were ransomware attacks. 6% of the attacks were committed through social engineering.

图像来源:“2020 年应用程序安全状况”,Forrester Research, Inc.,2020 年 5 月 4 日

什么是持续安全?

安全性是指应用技术、流程和控制措施来保护系统、网络、程序、设备和数据免受未经授权的访问或犯罪使用。

安全性针对故意攻击和宝贵数据及系统的滥用提供了机密性、完整性和可用性保证。

重要

必须强调的是,安全性并非侧重于错误,而是故意攻击。 这一点很重要,因为它们要求采用不同的对策:对于错误,简单的通知或确认请求可能就已足够,而对于恶意操作,这明显不能。

持续安全是一种实践,它确保安全性是软件交付生命周期不可或缺的一部分。 DevOps 中的持续安全应涵盖安全性的整个方面,包括安全文化、安全软件交付和安全基础结构。

持续安全要求转变思维、信息传达和自动化。

有 3 个元素用来建立持续安全:

  • 组织文化中对安全性的着重强调
  • 采用推荐的最新安全做法来实现和运行的基础结构
  • 侧重于安全性的软件交付过程,例如 Microsoft 安全开发生命周期 (SDL)

DevOps 中在每项功能中,也在持续安全方面需要考虑的三个原则是:

原则 说明
Icon for shift left
左移
左移是指预测安全活动,并在软件交付过程中尽早实施这些活动(而不是从过程的下游实施)。 研究表明,在开发周期中尽早修复 bug 对成本和损失有重大影响。
Icon for automation自动化 重复操作的自动化是帮助减少出错可能性的关键。 采用此方法后,可更频繁地执行通常不常发生的任务和过程(例如部署)。
Icon for continuous improvement持续改进 持续改进是通过对当前行为进行分析并确定优化可能性来实现的。

Diagram depicts the elements of continuous security: shifting left, continuous improvement and automation. These elements combined with the secure infrastructure, security culture and secure software delivery, and represent a holistic approach to security.

重要

当左移、自动化和持续改进这三原则与持续安全的元素(即文化、软件交付和基础结构)相结合时,表示一种全面的安全方法。