翻译:如何使用 OWASP Top 10启动应用安全项目

  • A+
所属分类:未分类
翻译:如何使用 OWASP Top 10启动应用安全项目
点击上方蓝字关注 获取最新安全知识
翻译:如何使用 OWASP Top 10启动应用安全项目
翻译:如何使用 OWASP Top 10启动应用安全项目

申明:译者水平有限,很多地方不到位,水平可以的推荐阅读原文,文章底部点击阅读原文即可跳转英文版

原文链接:https://owasp.org/Top10/A00_2021-How_to_start_an_AppSec_program_with_the_OWASP_Top_10/


翻译:如何使用 OWASP Top 10启动应用安全项目
在过去,OWASP Top10并不是被当作应用安全项目基础来设计的。然而,一个良好的出发点对于很多刚开始建设自身应用安全的组织来讲至关重要。OWASP Top10 2021就是一个良好的开端,可以作为安全检查等的基线,但是仅仅靠它是不够的。

阶段 1. 确定你的应用安全项目的差距和目标

许多应用安全 (AppSec) 项目没学爬就学走。这些努力注定要失败。我们强烈鼓励 CISO 和应用安全管理层使用 OWASP 软件保障成熟度模型 (SAMM) [ https://owaspsamm.org ] 来确定 1-3 年内的薄弱点和需要改进的领域。第一步是评估你现在所处的位置,确定你需要立即解决的治理、设计、实施、验证和运营方面的差距与触手可及的差距,并优先实施或改进 OWASP SAMM 的 15 项安全实践。OWASP SAMM 可以帮助你构建和衡量软件保障工作的改进。

阶段 2. 规划铺平道路的安全开发生命周期

传统上,作为所谓“独角兽”的保护区,铺平道路的概念是利用开发团队的速度(每年只增加一次)最大限度地影响和扩展应用安全资源的最简单方法。
铺平道路的概念是“最简单的方法也是最安全的方法”,并且应该在开发团队和安全团队之间建立一种深度合作的文化,最好使他们是一个团队。铺平道路旨在通过企业范围内的安全替换库不断改进、测量、检测和替换不安全的方案,并使用工具帮助了解采用铺平道路可以在哪些方面进行改进。这允许现有开发工具报告不安全的构建,并帮助开发团队自纠不安全的替代方案。

铺平的道路似乎有很多可供使用,但它应该随着时间的推移逐步构建。还有其他形式的应用安全项目,特别是Microsoft Agile Secure Development Lifecycle。并不是每个应用安全项目方法论适合每个业务。


阶段 3. 与你的开发团队一起实施铺平的道路
铺平道路是在相关开发和运营团队的同意和直接参与下修建的。铺平的道路应与业务战略一致,并有助于更快地交付更安全的应用程序。铺平道路应该是一个整体性的运动,覆盖整个企业或应用生态系统,而不是像以前一样每个APP打紧急补丁。

阶段 4. 将所有即将到来的和现有的应用程序迁移到铺好的道路上

在开发铺平道路时添加铺平道路检测工具,并向开发团队提供信息,通过他们如何直接采用铺平道路的元素来提高其应用程序的安全性。一旦采用了铺平道路的一个方面,组织应实施持续集成检查,检查使用禁止方案的现有代码和签入,并警告或拒绝构建或签入。这可以防止不安全方案随着时间的推移潜入代码,防止技术债务和有缺陷的不安全应用。这种警告应该链接到安全的方案,因此开发团队会立即得到正确的答案。他们可以重构并快速采用铺平道路的组件。

阶段 5. 测试铺平道路是否减轻了 OWASP Top 10 中发现的问题

铺平道路组件应该解决OWASP Top 10中的一个重要问题,例如,如何自动检测或修复易受攻击的组件,或者使用静态代码分析IDE插件检测注入,或者更好地使用已知的抗注入库,例如React或Vue。向团队提供的这些安全的替代品越多越好。应用安全团队的一项重要任务是确保不断评估和改进这些组件的安全性。一旦它们得到改进,与组件消费者的某种形式的通信途径应表明应该进行升级,最好是自动进行,但如果不是,至少应在仪表板或类似设备上凸显。

阶段 6. 将你的项目构建为成熟的应用安全项目

你不能止步于 OWASP Top 10。它只涵盖10个风险类别。我们强烈鼓励组织采用应用程序安全验证标准,并根据开发的应用程序的风险级别,逐步为1级、2级和3级添加铺平道路组件和测试。

超越

所有优秀的应用安全项目都超越了最低标准。如果我们要完全掌握应用安全漏洞,每个人都必须继续前进。

  • 概念完整性。成熟的应用安全项目必须包含一些安全架构的概念,无论是正式的云或企业安全架构还是威胁建模。
  • 自动化和规模化。成熟的应用安全项目尝试尽可能多地自动化其可交付成果,使用脚本模拟复杂的渗透测试步骤,开发团队可以直接使用静态代码分析工具,帮助开发团队构建应用安全单元和集成测试等。
  • 文化。成熟的应用安全项目试图重建不安全的设计,并通过成为开发团队的一部分而不是一方来消除现有代码的技术债。

    将开发团队视为“我们”和“他们”的应用安全团队注定要失败。

  • 持续改进。成熟的应用安全项目期待的是不断改进。

    如果某件事不起作用,停止做。

    如果某个东西笨重或不可扩展,请努力改进它。

    如果某个东西没有被开发团队使用,并且没有影响或影响有限,那么做一些不同的事情。

    仅仅因为我们从20世纪70年代就开始做 Desk Check之类的测试并不意味着这是个好主意。

    测量、评估,然后构建或改进。





翻译:如何使用 OWASP Top 10启动应用安全项目

译者小结

The Paved Road我这里直译为铺平道路。这项工作的目的主要是减少应用安全和应用交付的摩擦,比如传统模式开发团队上线一个业务,开发完了,应用安全团队测出来有很多漏洞,这时候就基本把应用安全人员摆到了开发人员对立面。The Paved Road 的实践就是确保最快的生产方式始终是安全的,把应用安全通过一些工具和方法论进行集成,让开发团队专注于功能开发。最基本的就是不让开发用fastjson这种养安全行业吃饭的框架,用其他框架替代。

感谢阅读到此,CVE-2021-40444的那啥出来了
aHR0cHM6Ly9naXRodWIuY29tL2xvY2tlZGJ5dGUvQ1ZFLTIwMjEtNDA0NDQ=

推荐阅读

Scaling Appsec at Netflix

https://netflixtechblog.medium.com/scaling-appsec-at-netflix-6a13d7ab6043


翻译:如何使用 OWASP Top 10启动应用安全项目
点个“在看”不失联


本文始发于微信公众号(无界信安):翻译:如何使用 OWASP Top 10启动应用安全项目

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: