前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安全建设到底要不要上SDL(安全开发流程)?

安全建设到底要不要上SDL(安全开发流程)?

作者头像
用户U2
发布2022-06-02 15:37:24
5090
发布2022-06-02 15:37:24
举报

对大多数公司来说,网络安全方面的建设在最开始的时候,是一个被动的过程。公司往往在经历漏洞报告、入侵等安全事件之后,才会对安全加以关注,然后执行修复、应急响应。这些安全事件倒逼着公司加强对安全的关注和投入。

接下来,我们拿人生病这个简单的场景,与网络安全体系建设进行类比,看看安全事件是如何让公司开始重视网络安全体系建设的。

第一阶段,自行买药


当我们有点轻微发烧流鼻涕的时候,往往自己到药店买点感冒药,多喝温开水,也许过几天就好了。

同样,当我们的业务网站或产品初次被入侵或被报告漏洞的时候,首先就是开发人员紧急加班,好像是修复了。过了一段时间,又被入侵了,如此重复几次,团队的安全意识从几乎没有,到有了一点认识,开始意识到网络安全的重要性。但是,开发人员也不清楚如何才能防住,只能发现一个问题,就尝试解决一个问题,也不知道解决问题的方式对不对,暂时是堵住了。

这一阶段,开发人员自行解决已发现的安全问题,解决措施往往是药不对症,好像是解决了但又经常被绕过。

第二阶段,求助医生


当我们自行买来的药吃了几天还不见好,就不得不去医院看医生了。

如果产品团队自己搞不定了,一般能够想到的是请外部的安全服务公司来做个渗透测试,根据渗透测试的结果和改进建议,对业务网站或产品进行改进。

这个阶段,团队(或公司)还没有意识到要招聘专职的网络安全人员,建设自己的安全体系。渗透测试服务往往是一次性的,随着业务或产品的升级,新的漏洞会不断的被发现。近来,也出现了在线的安全监测服务,效率上也有很大的提高。

第三阶段,私人医生


先富起来的人群往往需要更高层的医疗服务,私人医生就是这样的一对一私人定制健康服务。

这一阶段,公司开始有意识的招聘专职的网络安全人员。

这时的网络安全人员,就类似公司里的私人医生。安全人员可以帮产品提出一些安全方面的改进建议,可以对线上或新上线的业务执行扫描或渗透测试,从而提前识别部分高危漏洞并提醒开发团队改进;可以部署一些针对性的防御措施(部署WAF、实施安全配置)及安全运维等;可以协助执行安全应急响应。

但这时还没有体系化的概念,网络安全人员的工作主要靠经验,没有依据和指导。漏洞还是会频繁的出现,随着业务量的增长,网络安全人员慢慢会应接不暇,这时对网络安全人员的需求加大,公司就会继续增加招聘专职的网络安全人员,形成专职的网络安全小组。

第四阶段,医务团队和医疗体系


过去皇宫里有太医院,现在也有针对权贵的医疗团队或专属医院。

当公司的网络安全小组总是执行一些简单重复的工作的时候,就要考虑体系化的建设事宜了:

  • 主要例行工作尽可能的工具化、自动化;
  • 针对主要业务的安全管控要形成策略文件;
  • 针对常见的高危漏洞,要从设计、开发、测试、部署等环节,输出标准和规范;
  • 针对漏洞报告或安全事件,总结过去的经验,固化为处置流程;
  • 开始采购外部的系统化的安全解决方案,以构建立体的安全防御体系;
  • 开始自己造轮子,解决外部解决方案无法满足的安全需求,或者构建自己独有的安全防御体系。

这一阶段,总体还是事后防御(对症下药,药就是我们的安全防御手段),而缺少事前的安全质量控制。

只要是事后防御为主,你就会发现,同样的安全问题或低级漏洞会反复出现,安全人员在迷茫中,会感觉到无奈、力不从心或有力无处使,日常工作就是为了应对这些漏洞,疲于奔命,很难有闲暇下来喝茶的功夫。

第五阶段,医务团队和保健体系


过去针对权贵,食品有特供渠道和食品安全检测手段,皇帝在用膳或用药之前,会有太监先行品尝,没有问题后皇帝才能食用。对帝皇而言,这些都是从源头保障食品安全的做法,从而不对自己的健康造成危害。还有很多皇子、亲王从小练武或者经常带兵打仗,体质得到很好的锻炼,从而也很少生病。

这一阶段,讲的是如何才能不生病的问题,而不是生病后怎么治的问题。

从医学上讲,科学的膳食搭配、适当的体育锻炼、定期的体检,对保障身体健康大有裨益。

对应到网络安全体系,那就是为什么一定要等到发现漏洞后才去改进呢?

其实,我们也可以做好事前的功课,提前消除漏洞(或风险),保障业务或产品的安全。

让业务或产品不生病(入侵等安全事件)的科学,就是网络安全领域的保健体系,也就是我们经常听说的SDL(Security Development Lifecycle,安全开发生命周期,安全开发流程)。

不过,通常也只有大型企业才具备实施SDL的条件。

从源头开始规避大部分漏洞,才能将主要的问题和风险消除在萌芽状态,这就要靠组织和流程来保障;将安全要素融入项目管理流程,启用安全开发流程,关键项目阶段要添加相应的安全任务。这些任务如果未完成,则意味着本阶段的安全问题/风险没有解决,带给下一阶段,并最终带入生产环境。通过流程保障,不将问题、风险、缺陷带给下一阶段。

SDL通过规范的项目管理过程和关键安全任务的引入,确保开发设计及部署过程中遵从安全标准与规范,保障所交付产品在全生命周期过程中的安全性。其核心理念就是将安全集成到应用开发的每一个阶段。

安全开发流程最大的价值,就是用标准和流程的确定性,来降低开发过程中的不确定性。

保健做好了,人就会少生病或者不生病,从而减少医生的工作量。

事前的安全保障做好了,减少了事后出现漏洞或入侵事件的机会,安全人员也可以放心的喝喝茶,聊聊安全治理的话题,而不是每天重复的跟低级漏洞打交道。

第六阶段,安全体系的不断完善


在解决了基本的业务安全痛点和需求之际,往往还伴随着更多的安全需求,比如参与政府和军队的保密项目,需要有资质等市场准入的需求,这就要求公司在网络安全体系建设方面接受第三方的考核,通过认证。参与国际竞争,有些客户需要参与竞标的公司具备通用的第三方安全认证(如CC认证或ISO 27001认证)。如果实美国上市公司,审计公司会要求SOX审计,安全在其中占据重要的位置。

在接受认证或审计的过程中,也会发现自身安全体系不足的方面,就会不断的加以改进,让网路安全体系更加适应业务的发展需要,为业务保驾护航。

当我们的安全体系做的比较完善的时候,通常会被业界当做安全体系建设的标杆或榜样,这时我们的团队就具备对外服务的能力了,无论是主动或者是被动,来自外界的呼声或者来自管理层的决策,可能会把安全团队推向前台,与业界共同探讨安全体系建设的实践经验,公司也可以把这个当做拓展业务的牵引力,通过对外咨询服务促进其它跟安全有关的产品或解决方案的销售。

中小公司如何快速进入安全体系的保健阶段?


大多数中小公司,一般停留在上面的第三(有安全人员)或第四阶段(安全体系化建设),如何快速跨越这个阶段,实现安全体系建设或安全能力方面的大幅提升呢?

笔者(U2)有感于推行SDL(安全开发生命周期,安全流程)的高成本与复杂性,有意将这个过程简化,希望能够帮助一些中小型公司在建设网络安全体系的时候,把成本降下来,把效率提上去。

笔者提供了一个在线的项目管理流程,嵌入了安全自检等关键任务,自动提醒项目组根据在线Checklist的提示,执行安全任务并选择执行结果。

这是一个旨在强化安全为主要目的的在线项目管理系统(SDL SaaS应用),源于安全开发周期方法论和国际/国内巨头公司的项目管理实践,从源头开始进行安全控制,通过规范的项目管理过程和KCP任务的引入,确保开发设计及部署过程中遵从安全标准与规范,保障所交付产品在全生命周期过程中的安全性。

SDL SaaS访问地址:

http://saas.janusec.com

或者

https://saas.janusec.com

体验时不需要注册,在登录处点击Demo即可自动填入体验账号和口令。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-01-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据安全架构与治理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档