开发人员需要什么来对抗常见漏洞
今天的威胁形势不断演变,现在比以往任何时候都更需要每个部门的组织和企业始终如一地生产和维护安全软件。虽然一些垂直行业(例如金融行业)已经受到监管和合规要求的约束一段时间了,但我们看到最高级别政府对网络安全最佳实践的关注在稳步增加,美国、英国和澳大利亚最近都在强调SDLC每个阶段的安全发展需求。
尽管如此,攻击者仍在不断寻找新的方法来绕过最先进的保护和防御。例如,许多公司已经将重点从提供恶意软件转移到危害API,或针对供应链发起有针对性的攻击。尽管这些高级别事件的发生频率更高,但跨站点脚本和SQL注入等更简单的攻击也同样如此,这两种攻击几十年来一直是网络安全防御的祸害。就在上个月,WooCommerce WordPress插件中报告了一个严重的SQL注入漏洞,严重性评级为9.8/10。
很明显,虽然网络安全平台和防御是抵御现代攻击的关键组件,但真正需要的是可以无漏洞部署的安全代码。这需要安全意识开发人员对安全编码标准进行深思熟虑的提升。
许多开发人员表示,他们愿意捍卫安全性,并致力于更高的代码质量和安全输出标准,但他们不能单独做到这一点。在对抗常见漏洞的过程中,我们不能忽视开发人员的需求,他们需要合适的工具和培训的支持,以及对传统衡量标准的重新设计,而这些标准通常由雇主和组织来判断。
为什么大多数开发人员尚未优先考虑安全性
多年来,随着业务需求和市场趋势的变化,编码最佳实践不断发展。在过去,大多数应用程序都是使用所谓的瀑布式开发模式创建的,软件工程师在进入下一个开发阶段之前,会努力让代码做好准备,以满足一系列正在进行的里程碑或目标。Waterfall倾向于支持程序的开发,这些程序在开发过程中满足了之前的所有里程碑,在准备好投入生产环境时没有任何错误或操作缺陷。但以今天的标准来看,这是非常缓慢的,有时从开始一个项目到到达终点需要18个月或更长的时间。现在,这在大多数公司都行不通。
敏捷方法倾向于取代瀑布,更加强调速度。随后是DevOps,它将开发和运营结合在一起,以确保程序几乎在完成最终开发调整后就可以投入生产,从而实现更快的速度。
随着业务环境的发展,将速度置于安全之上,几乎所有其他功能都置于功能之上,这是一种必要。在一个基于云的世界中,每个人都一直在线,数百万的移动交易每几秒钟就会发生一次,因此尽快部署软件并进入持续集成和持续交付(CI/CD)管道对企业来说至关重要。
并不是组织不关心安全。只是在大多数行业竞争激烈的商业环境中,速度被视为更重要。而能够达到这一速度的开发人员发展迅速,成为衡量他们工作表现的主要手段。
现在,高级攻击急剧增加,部署易受攻击的代码正成为一种负担。偏好再次发生变化,安全性日益成为软件开发的主要焦点,速度紧随其后。事后依赖安全不仅是危险的,而且会减缓软件的部署过程。这导致了DevSecOps方法的兴起,该方法试图将速度和安全性结合在一起,以帮助生成安全代码,并将安全性视为共同的责任。但是,如果没有组织的大量支持,受过纯速度训练的开发人员就无法在功能上实现安全意识。
开发人员需要什么才能真正影响减少漏洞
好消息是,大多数开发人员希望在开发过程中看到安全编码的转变和安全性的重新排序。今年早些时候,Evans Data对全球1200多名积极工作的专业开发人员进行了全面调查,绝大多数人表示他们支持创建安全代码的概念。大多数人还希望它成为他们组织的优先事项。然而,只有8%的受访者表示编写安全代码很容易。这在大多数组织的开发团队中,在需要什么和需要什么之间留下了很大的改进空间。
简单地强制执行安全代码并不能完成任务,如果不努力培养正确的技能和意识,这将对他们的工作流程造成极大的破坏。开发团队需要在一个培养他们安全思维的环境中生存,并促进共享责任的文化。
最需要的是对他们进行更好的培训,其次是帮助安全编码成为其工作流程无缝部分的工具。该程序应该进行定制,以便经验不足的开发人员可以通过大量的实践学习和示例,学习如何识别代码中经常出现的常见漏洞,从而开始培训。同时,更高级的开发人员展示了他们的安全技能,他们可以承担更复杂的错误任务,甚至可以承担更高级的威胁建模概念。
除了资助和支持培训计划,包括给开发人员足够的时间远离编码,以便正确参与这些计划外,组织还需要改变其团队的评估方式。奖励开发人员的主要指标需要改变原始速度。相反,评估可以奖励那些能够创建没有漏洞或漏洞的安全代码的人。是的,速度也可以是一个评估因素,但最重要的是,代码需要是安全的,现代开发需要开辟一条道路,使速度安全不再是神话。
运送不安全或易受攻击的代码不应是可接受的业务风险,在事实变得越来越无效后,再加强安全性。值得庆幸的是,对抗这种令人不安的趋势的最佳武器是让开发人员社区生成攻击者无法利用的安全代码。大多数开发人员都愿意迎接这一挑战;给他们支持,使之实现。
Secure Code Warrior是Gartner®;酷供应商™;《软件工程:提高开发人员生产力》报告。我们已经准备好帮助开发团队使用在他们的世界中有意义的工具来驾驭安全软件开发的复杂性。了解更多信息。