2021 DevOpsDays 东京站完美收官 | CODING 专家受邀分享最新技术资讯 (2)

静态应用安全工具(SAST):SAST 是从代码层面进行扫描安全漏洞。它的好处是可以精准定位,发现具体某一行代码有漏洞,同时容易被程序员所接受。但是这种工具的缺点是误报率非常高。

动态应用安全工具(DAST):DAST 更多的是通过模拟黑客对端口和站点进行攻击,尝试获取信息。这类工具的优点是扫描范围非常广,误报率不是特别高;缺点也非常明显,就像测试一样,需要人力去写相关代码去模拟黑客攻击,对运维同学的安全知识要求比较高,因为需要把场景模拟出来。同时,也容易产生一些脏数据。

交互式应用安全工具(IAST):在应用里面插入 IAST,或者是通过代理截取流量,可以分析系统在运营过程中是不是有安全漏洞。优点是扫描精准、误报率低。缺点是在更新工具的同时,服务器需要重启。

第三方组件成分分析(SCA):前 3 种安全工具更多的是对自己写的代码的保障,从端口层面保证自己开发的产品是安全的。然而不可避免的是在开发过程中会引入第三方的插件工具, FOSS 工具是为了保证别人写的代码的安全性。

总的来说,SAST 和 SCA 主要应用在开发阶段DAST 和 IAST 则应用在测试阶段,安全工具在 DevSecOps 全生命周期中的分布请参照下图:

img

DevSecOps 的实施与运营模型

img

构建 DevSecOps 体系是 DevSecOps 项目的最终目标,为实现这一目标,DevSecOps 实施模型为我们的实践提供了以下几点思路:

第一步是采用 DevSecOps 工具发现应用程序的漏洞。并将安全工具集成到 CI/CD 流水线中,实现自动化。最终将漏洞扫描的结果在仪表盘生成可视化结果或以报告形式通知到用户。

第二步是为开发人员提供培训,使他们有足够的技能来修复漏洞。

在引入 DevSecOps 工具并为开发团队提供培训之后,DevSecOps 的最终目标是让每个人都拥有 DevSecOps 的意识,并在团队中建立 DevSecOps 文化。此外,每个开发团队都希望至少有一位具有高级应用程序安全技能的“安全专家”,能够帮助团队修复棘手的漏洞,并培训其他团队成员。

img

在了解 DevSecOps 项目的目标之后,DevSecOps 运行模型提供了一个关于如何执行 DevSecOps 实现的解决方案。它定义了以下几个不同角色的职责:

DevSecOps 负责人 - 负责人的职责是推动 DevSecOps 项目,推广 DevSecOps 文化,帮助开发团队建立 DevSecOps 文化。连接开发团队和安全团队,收集开发团队的反馈,并提供给安全团队。

开发团队 - 将 DevSecOps 工具集成到 CI/CD 流水线中,在仪表板上实现安全扫描结果可视化。接受 DevSecOps 培训,学习足够的应用安全知识,有足够的技能修复漏洞。在实际项目和日常工作中使用 DevSecOps 工具和知识,逐步改变他们的思维方式,并在团队中建立 DevSecOps 文化。

安全团队 - 他们主要是提供 DevSecOps 工具以及应用安全培训。如有需要,可提供咨询服务。

以上为 2021 DevOpsDays 东京站的内容分享。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wssfyg.html