博客

速度与 安全: 按照现代商业的步伐保护现代应用程序和 API

Dor Zakai 缩略图
多尔·扎卡伊
2021 年 2 月 19 日发布

现代商业的步伐正在对应用的开发方式和保护方式造成影响。 通过利用现代化的基础设施和应用,公司可以更好地竞争并更快地适应。 然而,它们也可能危及安全。

从单体应用到微服务

如今, 98% 的组织依靠应用来运营或支持其业务。 根据我们对 NGINX 开源社区的最新调查,使用微服务构建的应用程序数量从 2019 年的 40% 增长到 2020 年的 60%,其中 54% 的企业在其部分或全部应用程序中使用微服务。 到 2022 年,预计 90% 的所有新应用都将采用微服务架构。 这些趋势不仅强调了现代应用对企业的重要性,而且强调了在部署时实现速度和灵活性的价值。 

越来越多的组织可能会采取同样的方式,从旧式的单一应用程序迁移到云原生技术,同时实施 DevOps 原则。 这是有充分理由的。

客户、合作伙伴和员工不仅对您的技术驱动服务有更多要求,而且他们还期待更多。 市场不会等待企业去适应。 他们只是忘记了它们。

这就是为什么企业被迫采取行动,确保他们的应用提供最好的体验。 但提供这些体验需要采用不同的应用开发方法。 它要求一种更快、更具迭代性的方法,为企业提供保持竞争力所需的灵活性。

DevOps、微服务和容器都可以帮助实现这种备受追捧的应用敏捷性,用现代的交付方法取代老式的方法。 但是其他关键考虑因素(例如保护这些应用程序)又如何呢? 安全政策能否跟上步伐?

打击违规行为的新前线

黑客平均每天发起2244次攻击。 也就是说每 39 秒就会发生一次。 一次成功的恶意行为就足以对企业造成经济和声誉损失,甚至彻底摧毁它。 这听起来可能有些夸张,但这就是当今组织面临的困难。 2020 年数据泄露的平均成本为每家公司 386 万美元。 而且,平均而言,组织组合中只有 5% 的应用程序得到了适当的保护。

更令人担忧的是这些攻击更加复杂且范围更加广泛。 黑客不再仅仅以代码为目标。 40% 的针对 Web应用的攻击是通过 API 发起的,预计到 2021 年这一数字将增长到 90% ,在现代环境中,更高的防护墙根本无法提供所需的保护。 威胁级别的增加与更快、更频繁的发布周期相结合,安全漏洞很容易被漏网,并很快演变成灾难。

平衡安全需求和交付速度

没有任何组织愿意限制敏捷性或者限制创新。 同样,公司也不愿意让自己的数据或客户的数据面临风险。 然而,随着现代商业需求的不断增长,以及需要现代应用开发来保持竞争优势,企业被迫在两者之间做出选择。 要么快速进入市场并面临潜在的风险,要么缓慢而安全地运作。 不应该这样。

安全策略曾经在发布的最后阶段应用,但如今的部署速度使其几乎不可能实现。 鉴于每位安全专业人员背后都有大约 500 名软件开发人员,因此应用程序保护的可能性并不大。

因此,在应用程序架构和基础设施中提供强大、一致的安全性的能力受到了阻碍,而责任却不在于某个方面。 企业领导者了解安全的重要性,但也了解快速将应用程序推向市场的必要性。 DevOps 团队常常对 SecOps 的部署速度变慢感到不满。 同时,SecOps 经常抱怨 DevOps 提供的安全控制不足。 事实上, 48% 的技术专业人士认为安全性是快速交付软件的主要障碍。

寻求安全的简单性

显然,对于企业推动创新和保持敏捷性来说,DevOps 自动化的有效性及其“一次构建,随处运行”的简单性至关重要。 如果将“一次构建,随处遵守”的方法应用于安全策略会怎样? 为了实现敏捷和安全的发展,企业必须找到将安全性集成到应用生命周期的方法,而不是在开发结束时应用它或尝试使用附加组件来修复它。 安全性和应用程序开发不应该简单地共存,而应该合二为一。

两全其美

那么,有没有办法实现DevSecOps的乌托邦呢? 如果您能够毫无阻碍地将 SecOps应用安全策略实施到 DevOps 中,这对保护和发布速度意味着什么?

需要的第一个改变是心态。 老式的思维在现代应用开发环境中没有立足之地。 各方都应该接受保护应用程序安全的想法,而不是将其视为需要克服的障碍。 所有团队都应该朝着同一个方向努力,共同努力实现快速交付安全、高质量的应用的目标。

集成安全需要成为开发过程的标准部分。 实现这一目标所需的速度可以通过多种方式实现,其中最关键的是策略自动化。 还需要一个轻量级的安全解决方案来克服“复选框” Web应用防火墙的局限性。 它必须通过提供高性能、可扩展的安全性以及对 Web应用、微服务、容器和 API 的一致控制来解决现代 DevOps 环境面临的真正的安全挑战。 它应该引发更少的误报,而且至关重要的是,它必须比其他解决方案更快。 这样的解决方案应该是 CI/CD 友好的,集中管理和自动化已批准的安全控制,以消除工作流程瓶颈并支持“左移”开发计划。 它还应该得到经验丰富的组织的支持,并在优化性能的同时提高可见性。

如果能够实现上述目标,那么 DevOps 和 SecOps 之间的摩擦就会消除,快速部署和安全性之间的斗争就会成为一个被遗忘的问题。 通过将正确的工具与真正的协作开发文化相结合,我们比以往任何时候都更有可能提供与现代应用程序开发步伐相匹配的强大、一致的保护。