文章总结: 文章介绍了DevSecOps实施前的组织架构准备工作,提出了研发安全团队的概念及其四个关键组成部分:安全体系组负责流程规范建设、安全测试组负责安全测试与漏洞修复、安全工具组负责工具开发与调优、安全运营组负责从非自主发现漏洞中汲取经验。文章强调不结合研发模式的安全建设都是不成功的,建议企业根据自身研发模式构建适合的安全团队架构。
综合评分: 91
文章分类: 安全建设,安全运营,安全工具,应用安全,DevSecOps
DevSecOps实施关键:研发安全团队
原创
aerfa21
我的安全视界观
2024年7月18日 06:06
北京
很久以前,就想写一篇关于SDL与DevSecOps的文章,但疏于实践一直未能动笔。想写的原因很简单,因为总是听到有人说SDL落后、DevSecOps相关技术更高超。一提到研发安全建设,不分研发模式都在赶时髦一样地说DevSecOps。从我的观察来看,不结合研发模式来做研发安全,都是不成功的。
在数字化浪潮的推动下,一些公司已经完全步入DevOps模式,有的则出现瀑布、敏捷或DevOps并存,且后者是居多的。所以如何在多种研发模式下进行有效的研发安全建设,成为一个必须解决的难题。经过近十年的实践,终于在探索解法上有一点点收获与经验,于是有了“深耕研发安全”这一系列文章。
本文是第四篇,正式步入DevSecOps实施前的准备阶段。首先是组织架构,既要包括高层的组织,从公司战略层面进行安全工作规划;又得有实际落地安全工作的团队。文中首次提出“研发安全团队”及架构,既是理想中的完备团队,又是做好研发安全工作必备的最小能力集。
(研发安全视角下的组织架构全景图)
01 安全团队全貌
———————
在我们的实践中,主要有四个重要的安全组织,从上到下依次为:
-
网络安全委员会:直属董事会管理,是公司网络安全的最高领导与决策机构,对重大的网络安全措施、安全事件处理等进行决策。成员主要是公司高管(包括管理安全的高管,如CEO、CTO等角色);
-
产品安全团队:其实是网络安全部的下一级团队(因本文内容为研发安全相关,故不单独介绍网络安全部),主要负责公司的产品安全,工作内容包括上线前的SDL与上线后的PSIRT(Product Security Incident Response Team)。在产品安全部下设置了安全体系组、安全测试组、安全工具组和安全运营组,以保障SDL和PSIRT工作的顺利开展;
-
产品安全专员团队:非实体组织,不完全属于产品安全部管理。该组织的出现是为了解决安全人手有限的问题,让每个产品线出专人承接产品线安全工作的职责,负责与产品安全部进行积极对接,在产品线内部开展安全活动,保障产品的安全质量。产品安全部需要对该虚拟组织进行管理、赋能及争取一定的考核权;
-
产品安全事件应急响应小组:非实体、公司级组织,产品安全发起组建(在产品安全团队已设置专岗人员),旨在联和公司法务、公关、产品线、交付等产品售后相关部门,一起处置已发版产品的安全事件,也就是上述提到的PSIRT。
在建组织的过程中,一般是从所在岗位开始,比如最开始有安全运维岗或安全测试岗,随着公司的不断发展可能独立成为安全部门。这时候就需要继续往上发展,建立安全管理委员会之类的高层组织,无论是从拿政策、拉资源,还是工作呈现、汇报,对于网络安全工作的开展都大有裨益。
02 研发安全团队
———————
再回到SDL团队(研发安全团队 = 产品安全 – 产品安全事件应急响应小组 = 安全体系组 + 安全测试组 + 安全工具组 + 安全运营组),这是在资源充足的前提下的完美状态,从做好SDL来说也确实需要这四种角色。经过五年的历程,我们基本实现了这种状态,具体分工和职责如下:
- 安全体系组:负责产品安全体系、流程、规范等建设及运营,同时还承担了开发安全认证、开发安全平台产品、产品安全团队考核与汇报指标之类的工作。这类同学周围都是做技术的,很容易失去信心。记得有次谈话间,该组组长说他也想要学习代码审计(因为那段时间我在抓整个团队的审计能力提升,过于强调了挖洞能力,表扬比较多的也是技术同学),所以我立马做出了调整。从术业有专攻,每个方向上都应该成为专家的角度进行引导。实际上这个组非常重要,甚至比代码审计还被组织所需要,他们做的事是面、甚至体上的事儿,而代码审计仅是点或面;
- 安全测试组:负责安全提测工单的处理,包括提测工单的合规性检查、各项安全自检结果的核查、黑盒安全测试及漏洞修复指导等工作。由于业务形态的关系,涉及到web及各种客户端,所以包括了做web安全和二进制安全的同学,作为产品安全的第二道防线(第一道防线是产品线自检),把控着产品上线前的安全质量。重点会关注工具覆盖不到的漏洞测试,比如数据安全相关漏洞、业务逻辑相关漏洞等;
- 安全工具组:负责安全测试工具的开发、应用推广、规则调优等工作,目前已经有主机漏扫、web漏扫、SCA、SAST、IAST和CAST工具,基本上每1-2个工具由1个同学负责,能力强的同学在第一个工具达到运营状态后会加入新的工具研发,以此持续找到工作中的挑战(因为这些同学一般能力都比较强)。在该组中,有一个重点是规则的调优(降噪和提升检测能力),这关乎着整个团队的一些绩效指标;
- 安全运营组:全名应称之为研发安全运营组,这更是实践之后的感悟与创新。在完成SDL建设后,覆盖率与检测率之类的指标都比较高了,参与建设的同学普遍感觉也比较好,但实际情况却比想象中的差。比如经过安全测试的产品,在SRC多次收到高危漏洞、内部红蓝演习总能通过经过安全测试的互联网系统突破边界防线…故此时应该从非自主发现的漏洞(SRC收到、监管通报等)中汲取教训与经验,对这些漏洞进行复盘、分析,以提升研发安全体系中存在的各类不足。
上述四个团队映射的能力和权责,其实就是做好研发安全的必备要素。不管是单独设置岗位,或是人员复用承担多个职责,都极具参考价值。
长按识别二维码,和我交流
More…
— 深耕研发安全 —
— SDL 100问 —
- SDL100问:我与SDL的故事
- SDL 1/100问:SDL与DevSecOps有何异同?
- SDL 2/100问:如何在不同企业实施SDL?
- SDL 3/100问:SAST误报太高,如何解决?
- SDL 4/100问:SDL需要哪些人参与?
- SDL 5/100问:在devops中做开发安全,会遇到哪些问题?
- SDL 6/100问:如何实施安全需求?
- SDL 7/100问:安全需求,有哪些来源?
- SDL 8/100问:安全需求怎么实现自动化?
- SDL 9/100问:实施安全需求,会遇到哪些难题?
- SDL 10/100问:安全需求和安全设计有何异同及关联?
- SDL 11/100问:设计阶段应开展哪些安全活动?
- SDL 12/100问:有哪些不错的安全设计参考资料?
- SDL 13/100问:安全设计要求怎么做才能落地?
- SDL 14/100问:有哪些威胁建模方法论?
- SDL 15/100问:有哪些威胁建模工具?
- SDL 16/100问:如何开始或实施威胁建模?
- SDL 17/100问:威胁建模和架构安全评审,有何异同?
- SDL 18/100问:编码阶段,开展哪些安全活动?
- SDL 19/100问:如何选择静态代码扫描(SAST)工具?
- SDL 20/100问:如何选择开源组件安全扫描(SCA)工具?
- SDL 21/100问:SCA工具扫描出很多漏洞,如何处理?
- SDL 22/100问:SCA工具识别出高风险协议,如何处理?
- SDL 23/100问:如何制定一份有用的开发安全规范?
- SDL 24/100问:如何做到开发安全规范的有效实施?
- SDL 25/100问:应该如何选型代码安全扫描工具?
- SDL 26/100问:代码安全扫描应该设置哪些指标?
- SDL 27/100问:如何提升开发人员的安全意识?
- SDL 28/100问:在编码阶段加入安全检查后,如何处理带来的时间压力?
- SDL 29/100问:白盒检测工具存在局限性,如何进行补偿?
— 软件供应链对抗探索 —
——— 实战演习 ———
- 1 何为多维度的视角
- 2 关于对演习的期望
- 3 公司层面统筹布局
- 4 实战攻防演习下的产品安全保障
- 5 产品安全事件定级评分方法
- 6 演习前红队暗泉涌动投毒
- 7 面向情报公司付费信息的应急
- 8 面向互联网侧情报信息的应急
- 9 客户侧产品推送样本事件处置
- 10 某邮箱被攻击情报的自我检查
- 11 办公网出口地址攻击客户蜜罐
- 12 SRC白帽子突破边界进业务网
- 13 某部门下发零日漏洞确认函处置
- 14 公司溯源团队查到团队内部成员
- 15 演习后对工作技能的复盘总结
- 16 演习后认知外的见微知著
——— 安全运营 ———
- 安全事件运营SOP:软件供应链投毒事件
- 安全事件运营SOP:接收漏洞事件
- 安全事件运营SOP:webshell事件
- 安全事件运营SOP:蜜罐告警
- 安全事件运营SOP:网络攻击
- 安全事件运营SOP:钓鱼邮件
- 安全事件运营SOP:基于实践的安全事件简述
- 企业级供应链投毒应急安全能力建设
- 应急能力提升:实战应急困境与突破
- 应急能力提升:挖矿权限维持攻击模拟
- 应急能力提升:内网横向移动攻击模拟
- 应急能力提升:实战应急响应经验
- 应急能力提升:应急响应报告点评
- 应急能力提升:应急响应专题总结会
- 应急响应:redis挖矿(防御篇)
- 应急响应:redis挖矿(攻击篇)
- 应急响应:redis挖矿(完结篇)
——— 软件安全 ———****
——— 企业安全 ———****
- 企业安全建设需求
- 企业安全威胁简述
- 企业安全架构建设
- 企业安全项目-测试环境内网化
- 企业安全项目-Github信息泄露
- 企业安全项目-短信验证码安全
- 企业安全项目-前端绕过专项整改
- 业务安全之另类隐患
- 应用发布之安全隐患
- 甲方眼里的安全测试
- 基于堡垒机的自动化功能实践1****
- 基于堡垒机的自动化功能实践2
- 基于堡垒机的自动化功能实践3
- 基于堡垒机的自动化功能实践4
- Nmap操作系统探测技术浅析
- 漏洞情报调研
- 漏洞调研报告(非完整版)
- 从漏洞视角看敏捷安全
——— 渗透测试 ———****
——— 安全开发 ———****
——— 个人体验 ———****
- 如何学习这么多的安全文章(实践篇)
- 如何学习这么多的安全文章(理论篇)
- 漫谈在安全公司做内部安全的体验
- C3安全峰会参后感
- 提高认知效率秘籍
- 向上型技术人的职业素养
- 关于勇气的一次突破
- 推荐:探索精神和财富自由之路
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:我的安全视界观 aerfa21《DevSecOps实施关键:研发安全团队》