博客

NIST 新指南:为何定制化培训对于创建安全软件至关重要

December 2, 2019
Pieter Danhieux
一个人站在山丘上,将明亮的手电筒光束射向繁星点点的夜空,背景可见银河。

2019年6月11日,美国国家标准与技术研究院(NIST)发布了一份更新后的白皮书,详细阐述了多项行动计划,旨在减少软件漏洞和网络风险。该白皮书题为《通过采用安全软件开发框架(SSDF)来降低软件漏洞风险》,为各组织提供了切实可行的指导方针,以避免数据泄露带来的严重后果——更不用说其高昂的代价了。

值得注意的是,SSDF 是刻意设计得较为通用的。它并不假设每个组织都有完全相同的软件安全目标,也没有规定实现这些目标的具体机制。其主要目标是落实安全最佳实践。正如作者 Donna Dodson 所言:“虽然我们希望每位安全产品生产者都能遵循所有适用的实践,但预期的实现程度会根据生产者自身的安全假设而有所不同。这些实践为实施者提供了灵活性,同时也足够清晰,避免了留下过多的解读空间。”

当然,我特别关注的是其中关于开发者软件安全培训的具体内容。长期以来,我们都知道如果开发者要从软件开发流程的最初阶段就开始保护组织,就需要接受充分的培训……但究竟什么是充分呢?对此众说纷纭。不过,我认为目前的趋势终于朝着能够激发显著积极成果的方向迈进了。

培训分为两种……一种是普通的安全培训,另一种是有效的安全培训。

我曾详细谈论过软件安全培训需要更有效地实施、参与并针对开发者的需求进行定制。即便在今天,许多组织仍将其视为一种“走过场”的例行公事。或许只是几小时的视频培训,或者挤出宝贵时间进行一些课堂学习。事实上,每隔几天就会发生大规模数据泄露事件,而攻击者利用的往往是众所周知(且通常很容易修复)的漏洞,这证明目前的软件安全培训远未达到应有的效果。最重要的是,几乎没有任何机制来验证培训是否有效:漏洞修复速度是否加快了?代码中的漏洞是否减少了?员工是真的完成了培训,还是仅仅点击“下一步”来应付了事?

开发者工作繁忙,必须努力赶上严格的截止日期。安全往往被视为一种麻烦,而且他们在受教育期间很少获得成功降低网络风险所需的知识。当应用安全(AppSec)团队指出他们工作中的缺陷时,“安全”这个词才会出现,这导致了一种冷漠且功能失调的关系。这就像是“你的孩子长得丑,去整整容”的场景。

这说明了什么?这是一个存在了几十年的危险信号,表明我们在争取开发者重视安全方面做得还不够;他们没有动力去承担责任,也没有动力去寻找所需的工具来创建既实用又符合安全最佳实践的软件。

开发者聪明、有创造力且热爱解决问题。观看无休止的安全漏洞视频不太可能让他们感到兴奋,也无法帮助他们保持参与感。在担任 SANS 讲师期间,我很快意识到最好的培训是实践性的,通过真实的案例挑战他们的思维,并建立在既有知识的基础上。游戏化和良性竞争也是让每个人都能接受新概念的有力工具,同时还能保持实用性和应用价值。

NIST 的指导方针明确指出:“为所有职责有助于安全开发的人员提供针对角色的培训。定期审查并根据需要更新这些针对角色的培训。”随后又提到:“明确网络安全人员、安全倡导者、高级管理人员、软件开发者、产品负责人以及其他参与软件开发生命周期(SDLC)人员的角色和职责。”

这一声明虽然没有具体说明培训的类型,但仍在帮助组织将安全重心前移,并确保安全最佳实践始终处于核心地位。它将寻找有效且更具针对性的培训解决方案的责任交还给了公司,希望这能让开发者掌握正确的工具和知识,从而取得成功。

文化:缺失的环节。

即使一个组织投入时间和资源来培训开发者和其他关键员工,强调他们在预防漏洞和降低安全风险方面的作用,如果组织的安全文化从根本上是破碎的,这些努力往往也会付诸东流。

当个人得到有效的培训,目标明确且预期清晰时,他们就更容易理解自己在安全版图中的位置,并在适当的情况下承担责任。特别是对于开发者而言,他们获得了从一开始就编写安全代码的工具和知识。然而,这最好是在一个积极的安全环境中进行,减少重复劳动、相互指责和各自为政的项目工作。

安全必须是整个组织的首要任务,并以支持和协作的态度致力于交付出色、安全的软件。这意味着需要有充足的预算来开展利用真实代码漏洞的趣味性、互动性培训,并获得整个组织的认同以保持动力。在这个不断演变的数字环境中,培训必须像交付一样持续进行。如果你过去曾被告知“一次性”或“设置后即忘”的合规培训是足够或有效的,那是一个谬论。

虽然这份新的 NIST 框架没有明确阐述培养积极安全文化的要求,但成功遵循其指导方针必然需要这种文化。不过,他们确实指出,组织应该“制定明确的政策,规定组织软件必须满足的安全要求,包括开发者必须遵循的安全编码实践”。

以上内容对于扩展和磨练团队的安全技能至关重要,在评估自身政策和当前应用安全环境时,考虑以下几点可能会有所帮助:

  • 软件安全指南和预期是否明确定义?
  • 每个人是否清楚自己在实现这些目标中所扮演的角色?
  • 培训是否频繁且经过评估?
  • 你的开发者是否意识到他们在消除常见安全漏洞方面可以发挥的巨大作用?

正如我所说,最后一点在很大程度上取决于组织及其选择的培训方式。培训必须具有相关性、频繁性和互动性。找到一种能够应用于日常工作并能结合实际背景提升他们知识水平的解决方案。

接下来该怎么做?

深入研究这些新指南可能会让人感到不知所措;毕竟,要以最安全的方式创建、验证和部署大多数企业所需的坚固软件,确实需要集思广益。这不仅仅是培训的问题。在使用第三方软件时也有许多准则需要考虑(使用存在已知漏洞的组件毕竟仍然位列 OWASP Top 10 之中),此外还有关于验证、渗透测试和代码审查的建议,以及针对安全记录保存、适当工具链等方面的指导。如需了解全局的可行性见解,可以参考 Gary McGraw 博士的 BSIMM 模型,NIST 的文档中也多次引用了该模型。

然而,如果能让开发人员掌握正确的工具和知识,使他们从一开始就能成功构建安全软件,那么就能最快地取得成效。对于企业而言,在软件开发生命周期(SDLC)的后期反复修补常见漏洞,不仅成本高昂,而且效率低下。发挥他们的优势,并提供激励措施,让他们参与到组织的安全建设中来。这其实很有趣,他们完全可以成为您所需的“及时雨”英雄,将威胁拒之门外,确保我们的数据安全。

参考文献:

  1. 通过采用 SSDF 降低软件漏洞风险(2019 年 6 月 11 日),第 2 页。
  2. 通过采用 SSDF 降低软件漏洞风险(2019 年 6 月 11 日),第 5 页。
  3. 通过采用 SSDF 降低软件漏洞风险(2019 年 6 月 11 日),第 4 页。
标语

在 AI 驱动的开发成果发布前实现有效治理

评估 AI 辅助风险,在提交代码时强制执行安全编码策略,并加速整个软件开发生命周期的安全交付。

预约演示
资源库

探索更多博客

获取有关安全编码、人工智能治理和软件风险管理的专家内容。

浏览全部
案例研究
筛选标签
这是 div 块中的一段文本。

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

了解更多
案例研究
筛选标签
这是 div 块中的一段文本。

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

了解更多
案例研究
筛选标签
这是 div 块中的一段文本。

统一的安全文化:Sage 如何打造其安全倡导者项目

了解 Sage 如何通过灵活且以关系为导向的方法提升安全性,成功培养了 200 多名安全倡导者,并实现了显著的风险降低。

了解更多
博客
筛选标签
这是 div 块中的一段文本。

2026年网络安全意识月:理解人工智能安全对企业防御至关重要

目前,大多数顶级人工智能公司已公开呼吁全球放缓人工智能的发展速度,以便安全防护措施能够跟上步伐。然而事实是,严重的安全问题已经显现。随着人工智能实施带来的经济成本和风险不断累积,无数安全领导者和高管团队正处于紧迫的境地。

了解更多
博客
筛选标签
这是 div 块中的一段文本。

赋能要素 8:打造项目品牌

成功的安全编码项目不仅需要优质的内容。赋能要素 8 展示了如何通过品牌化将参与过程转变为一种令人向往、以地位为驱动的体验。

了解更多
博客
筛选标签
这是 div 块中的一段文本。

每一位员工现在都处于 AI 网络安全的最前线

企业技术格局正以一种鲜有人预料到的速度发生剧变,直到为时已晚。我们已正式跨越了从人工编写代码和基础辅助编程,进入“智能体开发生命周期”(ADLC)的时代。虽然自主 AI 智能体有望在多个职能领域实现前所未有的效率,但它们也带来了全新的安全和监管风险。

了解更多

在产品发布前确保 AI 驱动的开发安全

洞察开发风险,执行安全策略,并在整个软件开发生命周期中预防漏洞。

预约演示
未找到相关项目。