老实说,如果没有拼写检查的帮助,很多人会拼错“separate”这个词。MicrosoftWord近20年的忠实、耐心重复是无可争辩的。在考虑安全性时,拼写检查的概念也很有启发性。当场进行更正的好处是巨大的——过程中的错误会立即被发现。一个更大的好处是能够看到建议的修复,因为迭代识别和修复过程是一种非常有效的学习工具。拼写检查是自我完善的,越来越好。软件安全测试的传统工作方式已经停滞了一段时间。研发团队编写代码,直到可以发布完整的版本,然后将完整的应用程序投入测试;测试结果返回给研发团队检查差距。这是麻烦开始的地方。因为当测试结果返回时,研发团队已经提前进入了下一个开发周期。如果测试中发现的问题没有得到解决,他们必须暂停当前的工作,然后将思想返回到之前的循环中进行排查和修复。一些测试工具有着频繁误报的黑历史,开发者不得不验证每一个漏洞是否真实存在,是否可以被利用。这给研发团队带来了不小的压力,他们往往为了进度而匆匆忙忙,往往为了赶工而忽视安全。甚至安全培训(假设有,虽然通常根本没有)也作为一个整体出售。开发人员被从开发周期中拉出来参加课程或被鼓励进行基于计算机的培训。随着千禧一代进入软件开发队伍,随着敏捷软件开发方法的扩展,这种培训方法不再理想。千禧一代更喜欢快餐式的碎片化学习模式。显然,软件安全测试和安全培训都需要范式转变。作为回应,许多供应商热衷于抛出一个令人困惑的术语:左移。该术语来自瀑布开发图,其中左移表示在进入流程之前嵌入了测试。但对于这些供应商中的大多数来说,剩下的就是一个“按钮”,可以调出与传统方式相同的测试过程。范式转移和左移不完全是可以放下的。最好使用拼写检查安全技术来嵌入安全性。这些工具在开发环境中是活跃的。在代码编写过程中进行漏洞检查,对代码进行轻量级静态分析,从源头上发现跨站脚本或SQL注入等常见问题。此类工具的高级版本还提供教育材料,向开发人员解释所发现漏洞的性质、如何利用它们以及可用于清除这些漏洞的建议修复。有些还会在开发人员确认后执行选定的修复。当场发现、解释并修复漏洞。这种方法的好处是显而易见的。1.漏洞实时发现,开发者可以第一时间修复问题,无需等待很长时间测试结果出来后重启项目修复。采用这些工具的组织的开发效率提高了15%。这是因为在查找和清除误报以及中断开发周期以修复软件的早期版本方面节省了时间。据报道,还节省了数千美元的修复成本。2.交互过程成为开发团队微学习的机会。这些工具向开发人员传授常见漏洞的性质,提供用于从代码中清除这些漏洞的模板。触手可及的学习过程比传统的学习方法具有更高的保留率和影响力。最终,常见的错误从代码库中消失了。3.这些工具提供了开发团队安全准备情况的宏观视图,巩固了有关员工及其安全编码性能的信息。管理人员可以发现发展模式并通过额外培训或个人辅导解决潜在问题。可见性提供了改善现状和进一步提高生产力的机会。目标非常明确——及早发现问题,以便从源头上解决问题。虽然这些工具不会在开发周期结束时免除全面的静态和动态测试,但如果应用得当,安全拼写检查应该会在这些测试之前发现许多问题。这将使开发周期结束时的一轮测试更像是最终评估,而不是纯粹的漏洞测试。成熟的组织应该采用混合方法,将测试工具集成到开发生命周期的所有阶段。目标是早发现早修复,摒弃开发生命周期的中断,利用工具提高开发者的安全竞争力。最终结果将是脱颖而出的更聪明的企业。
