聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

有时,安全和开发团队无法从二者关系中获益。这并非谁的错,只是因为工作性质不同而已。安全团队最关注的问题是保护组织机构免受应用安全风险。开发团队试图追赶进度并尽快交付客户所需特性。遗憾的是,由于安全团队和开发团队经常独自为战,因此它们的优先级会打架,从而引起摩擦。

这种摩擦可为开发团队造成一种恐惧文化,他们习惯于安全团队的苛责,但这样并不会促进开发团队的工作也无法帮助它们在build时避开风险。我们需要从恐惧文化转变为责任共担文化,快速应对安全问题并修复。就像思科CISO顾问总监 Wendy Nather 提到的那样,“应当将安全设计为被采纳接受,而非通过密谋被强制执行。”

不应衡量开发人员在应用架构中存在多少差距、犯下多少错误,而是衡量这些问题的发现和解决速度有多快。所有人都想让应用程序是安全的;我们只需要将安全和开发流程集成到无缝工作流中即可。

第一步始于安全团队如何和开发团队协作。在成功破除孤军作战和消除摩擦的团队中,它们的安全指南具备四个属性可精简工作流并使安全团队和开发团队一致。

可触达的安全性

对于开发人员而言,没有什么要比从安全团队收到一份列明应用中所有安全考虑因素的、长达25页的Word 文档更令人沮丧了。这些文档常常难以理解且拖慢工作进程,因为文档使用的语言是安全团队而非开发人员能看懂的。

比如,如果安全团队建议开发人员“保护验证器免遭越权披露或修改”,多数开发人员不知道说的到底是什么意思,即使这是一个重要的安全考虑因素。如果安全团队可以给出更容易让开发人员触达的指南,用他们所理解的语言编写,那么开发人员更可能解决这些问题。

可操作的安全性

清晰易懂的安全指南只是第一步。如果安全团队不仅仅是解释需要修复哪些地方,而是告知开发人员如何修复,那么安全团队会让开发人员的生活好过许多,而且他们的安全建议也会更快地得到执行。精通安全的开发人员很少,而且即使安全建议是可触达的,但开发人员将可能不得不做更多的工作搞清如何修复问题。

为此,要直奔主题。开发人员不需要明白某个问题的详情,强迫他们研究如何修复得不到任何好感。所有开发人员想知道的就是你想让他们干什么。提供实操性指南,让他们尽快去往绿色复选框即可。

自动化的安全性

虽然以可理解的语言解释需要修复的问题并提供实操性指南告知开发人员如何修复,但安全团队是否还可以更进一步,自动化修复这些问题?

安全团队和开发团队之间的摩擦源自开发人员坐拥自动化和速度,而安全团队却缺乏这一点。不通过 Word 文档,安全团队如何通过自动化以开发的速度前进呢?流程中的这部分要求投入时间和精力。自动化应该被纳入安全流程中,扫描部署前和部署后的潜在安全问题。

当安全团队采用了与开发团队同等的自动化,他们就能更无缝切入工作流中。

适时引入安全性

应在流程中提前引入安全性并将其纳入现有的开发生命周期和工作流中。开发人员不必等到下一次冲刺或下一个月才获得安全指南。

如果在正确的时间参与,那么开发人员就能在涉及应用时修复安全问题并涉及差异,而非在实现应用后。这种“左移”同时为开发团队和安全团队降低了风险并梳理工作流。

阻止恐惧文化

这些改变的实施需要改变文化。我们需要从各自为政的恐惧文化转向一体化的、现代的、自动化的工作流,安全团队和开发团队责任共担。

实现这一点需要我们衡量成功(如问题修复的速度有多快),而不是衡量失败。这种文化转型将安全团队作为开发团队的可靠顾问,并创建了这样一种认识和协作:确保每款应用设计时就是安全的。

马上免费试用代码卫士:https://codesafe.qianxin.com


推荐阅读

软件开发的三大关键安全趋势和最佳实践

提升开发者安全的七大可行实践

为增强软件供应链安全,NIST 发布《开发者软件验证最低标准指南》

拥有开源安全背景的开发员当选白宫技术总监

给开发者的9个安全建议:既能保护供应链安全,也不会拖慢开发进程

万人云峰会DevSecOps论坛:数字化浪潮下,安全开发与运维该如何破局?

原文链接

https://www.darkreading.com/application-security/4-keys-to-bridging-the-gap-between-security-and-developers

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

 觉得不错,就点个 “在看” 或 "赞” 吧~

弥合安全和开发间隙的四个关键点相关推荐

  1. iOS开发UINavigation系列四——导航控制器UINavigationController

    iOS开发UINavigation系列四--导航控制器UINavigationController 一.引言 在前面的博客中,我么你介绍了UINavigationBar,UINavigationIte ...

  2. Android IOS WebRTC 音视频开发总结(四二)-- webrtc开发者大会

    Android IOS WebRTC 音视频开发总结(四二)-- webrtc开发者大会 本文主要介绍11月要在北京举办的webrtc开发者全球大会,文章来自博客园RTC.Blacker,支持原创,转 ...

  3. 微信公众平台开发教程(四) 实例入门:机器人(附源码)

    微信公众平台开发教程(四) 实例入门:机器人(附源码) 上一篇文章,写了基本框架,可能很多人会觉得晕头转向,这里提供一个简单的例子来予以说明,希望能帮你解开谜团. 一.功能介绍 通过微信公众平台实现在 ...

  4. 前端开发有哪些技术栈要掌握_为什么要掌握前端开发的这四个主要概念

    前端开发有哪些技术栈要掌握 After working as a front-end developer for three years, I have been able to summarize ...

  5. 开发指南专题四:JEECG微云快速开发平台--JEECG开发环境搭建

    开发指南专题四:JEECG微云快速开发平台开发环境搭建 1. JEECG开发环境搭建 JEECG推荐的开发环境为Myeclipse8.5/Eclipse3.7+JDK1.6+Tomcat6.0 1.1 ...

  6. GeoServer地图开发解决方案(四):发布Web地图服务(WMS)篇

    GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现的社区开源项目,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新.删除.插入操作,通过 GeoS ...

  7. Android开发笔记(四十九)异步任务处理AsyncTask

    AsyncTask异步任务 Thread+Handler方式虽然能够实现多线程的通信处理,但是写起代码来颇为繁琐,所以Android提供了AsyncTask这样一个轻量级的异步任务类,其内部封装好Th ...

  8. Android开发笔记(四十八)Thread类实现多线程

    Thread概述 Thread类是真正的线程,查看源码可见Thread也实现了Runnable接口,但它内部有创建新的工作线程,所以Thread对象运行在与主线程不一样的分线程上. 因为Thread对 ...

  9. Android开发笔记(四十七)Runnable接口实现多线程

    Runnable概述 Runnable接口可声明一连串的事务,常用于多线程处理.但是实现Runnable接口并不意味着开启了一个新线程,只是定义了接下来要做的事情,至于说这些事情要在主线程处理,还是在 ...

最新文章

  1. R语言自定义多分类混淆矩阵可视化函数(mutlti class confusion matrix)、R语言多分类混淆矩阵可视化
  2. Linux 普通进程 后台进程 守护进程(转)
  3. Hadoop权威指南pdf
  4. c++面向对象高级编程 学习十七 const, new, delete
  5. 【Python基础知识-pycharm版】第一节-基础
  6. 容器编排技术 -- Kubernetes Pod概述
  7. R7-2 统计字符[2] (10 分)
  8. ActiveMQ配置文档
  9. RocketMq 事务消息使用
  10. CMake笔记1 构建基本的项目
  11. 华为欲全面超苹果;滴滴优步并购案被调查;Siri 不联网也能用 | 极客头条
  12. mangos服务器架构
  13. php !$rs-gt;bof and !$rs-gt;eof,关于rs.bof rs.eof的一些解释,请大家帮我完善一下,谢谢...
  14. iOS自动布局高级用法 纯代码约束写法
  15. 大数据技术原理与应用实验4——MapReduce初级编程实践
  16. [转] 串、并行加法器
  17. 自动更新程序源码下载(C#.Net)
  18. 第12届蓝桥杯 我的第一个比赛
  19. 调用百度ai接口实现图片文字识别详解
  20. AS2协议详解(一)

热门文章

  1. linux学习之lvm2逻辑卷管理
  2. 我在阿里云玩蟹科技分享篇
  3. windows服务开发(一、安装)
  4. React-Native 之 GD (十三)数据持久化(realm) 及 公共Cell
  5. Linux常见命令(一)
  6. ansible操作远程服务器报Error: ansible requires the stdlib json or simplejson module, neither was found!...
  7. 智能指针变量做函数参数的一个值得注意的地方
  8. 谷歌:全球10大爬升最快搜索关键字排行榜 Google Zeitgeist 2011
  9. Android UI开发第四十一篇——墨迹天气3.0引导界面及动画实现
  10. java反射经典实例 Java Reflection Cookbook