如何帮助开发人员编写安全代码
这个世界上有很多人有时不喜欢对方:叶和卡纳迪恩的粉丝,哈特菲尔德和麦克柯伊斯,安全团队和开发人员。
“我在很多商店都见过这种情况,”加拿大微软公司(Micros of t Canada)驻渥太华的高级云开发人员坦尼娅?
她在本周在多伦多举行的SECTOR会议上对Infosec专业人士说,这不一定是这样。
她认为,最大的原因之一是,安全团队成员可能对提交的代码不够安全的开发人员不友好/粗鲁/切割。
Janca认为,解决公司创建不安全代码的根本问题将通过两种方式来解决:如果开发团队和SEC团队都得到流程、培训和资源的支持,这样他们就可以自信地完成工作;以及改变公司的文化。
网络安全行业正在浪费机会,使计算更安全的时代,越来越多的...
随着基于互联网的平台的更新,越来越多的组织每年都在向云端移动来托管和交付应用程序。
现在,Janca是一个紫色团队的成员,是开放网络应用程序安全项目(OWSAP)渥太华分会的负责人,也是渥太华网络女士的联合创始人,她自称是应用程序安全传道者。
但在她职业生涯的早期,她是一个软件开发人员,她知道从安全团队中感受到蔑视是什么感觉。 当一名安全小组成员第一次对她的代码进行自动漏洞评估时,他在这里提交了一份“可能是用另一种语言写的”的清单,并被告知,“你的应用程序是垃圾的,修复这些东西。”除了被告知“你应该知道”和“如果你是一个好的开发人员,在第一个地方就不应该有什么要修复的。
“我学会了不惜一切代价避开安全小组,”她回忆道。 (最后她意识到那家伙也不知道怎么看报告。
但这让她想起了为什么人们不相处。 她发现,学术研究表明,大多数不良行为来自于一个感到不安全的人,然后以实物作出反应。 因此,开发人员忽略规则并滚动自己的密码,或者没有时间进行安全测试,安全团队通过向NIST网站发送链接来回答问题。
“这不是我们最终使用不安全软件的唯一原因,但这也是我认为的主要原因之一。
解决这个问题意味着改变两个群体的文化。 她提出了五种方法:
1-不再指责;死后无可指责;
尽一切可能帮助挽回面子;
3-如果可能的话,安全小组和开发人员可以合用。 如果他们在不同的楼层/在建筑物的两端/在不同的建筑物中,这是没有帮助的;
4-不再举行信息技术会议,主旨发言人抱怨安全状况,说:“我们完蛋了。”我们知道有问题,提供解决办法;
做一个真正的领导者。 不要对人说负面的话,他们会被重复的。 相反,说“那不酷”,或者问是什么让这个错误发生。 也许员工需要额外的培训。
根据一个新的结果,表现最好的组织将已经实现其大部分业务的自动化。
一项新的调查表明,安全,而不是速度,正在成为2017年DevOps团队的首要问题。
关于更深入的改革,她提出了以下建议:
改进程序
首先,创建应用程序安全团队/人员。 他们知道如何在代码中找到安全问题。
“如果你没有一个专门从事安全的人——即使他们是开发团队成员——这就是你没有安全软件的首要原因。
更早地启动安全——就像项目开始时一样,它将贯穿整个开发生命周期;
将安全活动分解成更小的部分,特别是如果您正在进行敏捷开发和快速工作。 因此,例如,做一个冲刺,只针对跨站点脚本问题。 下次冲刺寻找注射问题等.. “随着开发人员改变他们做软件的方式,我们需要进行调整。
培训开发人员编写安全代码,包括理解威胁建模;
告诉开发人员,向安全团队征求意见并不可耻;
-管理人员应为每个处理代码的人提供安全培训;
鼓励开发人员加入开发人员教育团体,包括OWASP。 确保他们熟悉OWSAP前10个漏洞;
提供午餐和学习;
开发人员参加了Infosec团队的安全事件。 “事故反应就像裂缝,”她坚持说。
首先,为开发人员必须遵循的代码创建一个可以理解的安全标准。 (例如,每个网站都必须使用https,对所有软件进行漏洞扫描,然后才能启用);
提供开发人员安全扫描工具。 有些是免费的,另一些则不花很多钱;
在一个名为DevSlops的项目中,每个星期天下午1点,东部Janca和一个小组的直播流,在混合器、Twitch和YouTube上播放带有提示的广播。
她结束了她的演讲,让infosec专业人士的听众举起他们的右手发誓:“我保证让开发人员能够一起创建安全的软件。”
总比骂别人好。