打造拼写检查式安全

老实说,要不是有拼写检查的帮助,“separate”这词儿拼错的人肯定不少。微软Word将近20年的忠实耐心重复功不可没。

打造拼写检查式安全

思考安全问题的时候,拼写检查的概念也是十分有启发性的。当场改正的好处非常巨大——能立即发现过程中的错误。更大的好处则是能看到建议的修正方案,因为重复的识别和修复过程是高度有效的学习工具。拼写检查能自我完善,越来越杰出。

软件安全测试的传统工作模式一成不变了好一段时间。研发团队写代码一直写到能放出一个完整版本,然后完整应用程序被投入测试;测试结果再返回研发团队进行查缺补漏。

这就是麻烦产生的起点。因为测试结果返回的时候,研发团队已经推进到下一个开发周期了。未解决测试中发现的问题,他们必须暂停当前工作,又把思绪调回到之前的周期,展开调查和修复工作。有些测试工具背着经常误报的黑历史,研发人员还得先验证每个漏洞是不是确实存在且可被利用的。这让常被进度催着走的研发团队压力山大,往往就为了赶时间而不顾安全了。

甚至安全培训(假设有培训吧,虽然更常见的现象是根本没有),也是整体兜售的。研发人员被调出开发周期,去参加各种课程或被鼓励去进行基于计算机的培训。随着千禧一代踏入软件开发职场,随着敏捷软件开发方法的扩张,这一培训方法不再理想。千禧一代更喜欢速食碎片化学习模式。

显然,软件安全测试和安全培训都需要进行范式转换。作为回应,很多厂商热衷于抛出一个让人迷惑的术语:左移。这词儿源于瀑布式开发图表,里面的左移表示进入该过程前已嵌入测试。但这些厂商中大多数,左移的不过是调出与传统方式相同测试过程的“按钮”而已。

并不完全是范式转换

左移什么的都可以放下了,不如利用拼写检查式安全技术植入安全。这些工具活跃在开发环境内部,代码编写过程中就在做漏洞检查,对代码进行轻量级静态分析,在源头发现跨站脚本或SQL注入之类的常见问题。

此类工具的高级版本还提供教育性材料,向开发者解释所发现漏洞的本质及其利用方式,可用于清除漏洞的修复方案也有建议。有些还会在开发者确认后执行所选修复。漏洞就这样被现场发现、解释、修复了。

这种方法的好处显而易见。

1. 漏洞实时发现,开发者可立即修复问题,不用等到之后很久测试结果出来又再重开工程进行修复。采用这些工具的企业已经见证了开发生产力上15%的效率提升。这得益于在查找并清除误报,以及中断开发周期修复前版软件上的时间节省。成千上万美元的修复开销节省也是有报道的。

2. 互动过程成为了开发团队进行微学习的机会。这些工具教授开发人员常见漏洞的本质,提供从他们的代码中清除这些漏洞的模板。触手可及的学习过程比传统学习方法有着高得多的驻留率和影响。最终,常见错误从代码库中消失了。

3. 这些工具提供了对开发团队安全准备度的宏观视角,巩固了对员工及其安全编码表现的信息掌握。经理们能看出开发模式,采取额外培训或单个辅导的方式解决潜在问题。可见性提供了改善现状和进一步提高生产力的机会。

目标非常明确——尽早发现问题以便能在源头进行修复。尽管这些工具不能免除开发周期末端的全面静态和动态测试,但只要运用合适,安全拼写检查应能在这些测试前捕获很多问题。这将让开发周期末端的那轮测试更多地像是最终评估,而不是单纯的漏洞测试。

成熟的企业应采纳混合式方法,将测试工具融入开发生命周期各个阶段。目标是早期发现并修复,摒弃开发生命周期的中断,用工具来提升开发人员的安全竞争力。

最终结果将会使更精明的企业脱颖而出。


作者:nana

来源:51CTO

上一篇:Spring Boot 日志配置


下一篇:惠普企业发布第二财季财报:净亏损为6.12美元, 同比转亏