开发安全铁三角
为了能更好地理解今天所讲,请大家先回顾一下之前“开发安全铁三角纵横谈”内容:
(四)
安全测试阶段
安全测试对团队的专业能力要求非常高,笔者曾经尝试过把安全测试分解,试过能不能把一些简单的安全测试(如密码强度的测试)做成普通的测试人员可以进行测试,结果不是很理想。最终还是要靠专业的安全测试人员,来解决安全测试问题。
不仅如此,安全测试对比功能测试、性能测试的话,你会发现安全测试是最不规范、最不严谨的,而且似乎没有有效的提升规范的手段。大家可以观察到,真正厉害的安全测试人员的测试效率是非常高的,能在很短时间内发现系统安全缺陷,那些保证测试完备性的测试,往往要大幅提升安全测试成本,才能达到类似的结果。
所以,在安全测试阶段,专业的人干专业的事,引进专业人才是最好出路。其他专业的人通过培养转为专职安全测试,也是一条可行的路,一般需要一年半左右才能充分胜任。
(五)
开发安全培训
培训永远是赋能的第一手段,开发安全培训也肯定是提升团队开发安全能力的第一手段。
开发安全培训内容
进行开发安全培训的好处是门槛低,见效快。只要有点钱,找个开发安全专家就马上能够组织一场培训,门槛是最低的。培训完了之后,总会有点效果,见效是最快的。最大的问题是效果差,大部分参与培训的人,可能很难和工作真正结合起来,实际工作产出非常有限。
要想让开发安全培训真正提升团队的开发安全能力,你要深入分析一般方式培训差的关键原因。我个人理解就是针对性不强,作为一个针对以程序员为主体的IT建设团队的安全培训,做好针对性要有多方面的要求:
1、培训内容
开发安全的培训必须针对以程序员为核心的开发团队。体现在以下几个方面:
● 系统的安全漏洞或者安全脆弱性,是由直接开发团队造成的。
比如操作系统漏洞,根本上是操作系统的开发团队造成,但对绝大多数开发团队,他们只是应用开发,操作系统的漏洞跟他们关系不大。实际应用中,没有对用户的权限检查,导致某个数据泄露,这种漏洞才是由开发团队直接造成的。
● 漏洞的修复方案应该以修改程序重新发布或者修改配置为主,而不是安装最新补丁。
在信息安全领域,早期的漏洞修复就是安装补丁,后期安全厂商则推荐安全产品,这些安全产品总体都是把产品当黑盒,通过网络流量的检测和干预,实现安全防御。但开发团队的思维模式不是这样的,产品对他们来说是白盒,通过代码修改重新发布,或者修改配置来影响系统,是一种内生的修复模式。
● 技术规范的重要性
开发团队避免漏洞或者修复漏洞通常有更多的选择,好像条条大道通罗马。这种选择的多样性对最终安全质量往往是不利的。而技术规范,往往是比较可靠、稳定的实现方式,对遵守技术规范的强调是非常必要的。
2、培训讲师
培训讲师最好有开发经验。没有开发经验的讲师,理解不了开发团队在处理安全问题的思维模式和实际困难,很难把握安全再重要也仅仅是业务的一部分,缺乏通盘考虑的视野,影响培训效果。
3、练习和考试
目前由于实际困难,练习和考试还是强调概念理解和解决方案的了解为主,还是很不够的。只有真正进入到代码、编程层面,才是真正面向解决问题的练习和考试。
4、培训方式
目前主要的培训方式以集中课堂式为主,这种效果是不太理想的。应该采用项目组式为核心,在线式或分享式的培训。项目组式的培训,可以保证培训内容与项目组的工作项目直接相关,而不是学很多可能与当前工作无关的安全知识,这样效果显然好很多。但作为项目组式,必然培训内容和时间复杂多变,采取集中课堂是难以满足的,采取在线式或分享式是唯一选择。
国舜股份推出的在线式安全培训,就可以把培训内容与项目组开发项目的安全需求直接关联起来,实现精准培训,证明进行项目组式培训是完全可行的。
拓展阅读●●
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...