SDL流程控制工作心得

2020-05-13 19:48:40 浏览数 (1)

一、前言

推动SDL流程控制不仅仅是符合等保要求,在工作中落实SDL还能控制安全成本,提高产品上线质量和速度,保障业务安全。近来借鉴了不少SDL的文章,初步落实SDL。在此写下工作心得,希望能对开始实行SDL的安全人员带来一些帮助,也能在总结中使个人能力提升,丰富SDl流程推进中的内容。个人觉得推动SDL流程实际就是开发、安全、运维人员融入一起工作的过程,开始概念不清晰时候不识SDL,其实安全人员一直在做SDL的工作,最起码是其中某一环节工作。

二、SDL流程推动

从时间、人员、文档、流程把控以及结合图形等维度讲解我所理解的SDL。

2.1 时间

从时间维度把SDL分为三段,就是前期、中期、后期;为了快速推动落地又把SDL从流程维度分为五个阶段:立项、设计、开发、测试、运维监控【都是借鉴】。

2.2 人员

主要参与人员有开发、测试、运维、安全、产品经理等人员,开发包括项目经理、架构师、开发人员,不再细分。

2.3 方式

推动方式是指沟通方式,有会议交流、邮件交流、面对面交流、甚至有电话沟通。

2.4 文档

安全人员推动过程中制定为研发、测试、运维提供理论、培训、规范的文档,包括不限于:安全意识培训PPT文档、安全需求CHECKLIST EXCEL表格、安全编码规范WORD文档、漏洞修复培训PPT文档、各类基线EXCEL表格、入侵检测CHECKLIST EXECEL表格等,这些文档在FREEBUF等安全媒体平台上可以获取到。

2.5 维度图

蓝色字体是各阶段参与的主要人员;每个方框代表一个阶段;方框里面主要体现工作内容

2.6 流程把控

安全人员在工作中对于流程的把控是推动落实的关键

2.6.1 立项阶段

立项评审会议中阐述安全观念,对立项需求可能存在的安全问题提出指导意见;制定开发规范(java、php等);产品、设计、研发、安全人员的安全意识培训。

2.6.2 设计阶段

开发设计评审会,根据产品设计讲解安全需求CHECKLIST,涉及框架设计、业务逻辑等。

2.6.3 开发阶段

开发人员开发工作主要为IDEA等,可以结合FindBugs及安全插件FindSecBugs让开发人员自己进行代码安全审计;我们可以根据SonarRQube进行代码审计,检测开发人员的代码是否符合JAVA开发规范和OWASP标准,通过会议方式和项目组开发人员沟通;进行安全编码培训,提前把控漏洞风险点,为后续渗透测试节省工作量。

2.6.4 测试阶段

Web应用扫描:可以由测试人员扫描,安全人员分析报告,跟踪漏洞安全修复。

人工渗透测试:项目上线前除了自动化工具扫描外,需要人工测试,深挖漏洞;季度渗透测试,如果项目多的话,最起码半年一次全项目的渗透测试。

漏洞修复培训:尽管前面做了大量的工作,安全漏洞出现不可避免,出现漏洞及时和开发人员沟通,面对面交流。

2.6.5 运维监控

推动系统漏洞修复和系统安全基线检查:系统在整个防护体系的内部,兴许推动起来不那么容易,有时候推动漏洞修复不在于数量而在于精,内网不能出现的系统漏洞一定要及时修复,逐步推动,推动需要和运维讨论。

制定入侵检测CHECKLIST:一不小心就会出现入侵,制定入侵检测CHECKLIST,主要是各种日志分析应急响应工作。 安全漏洞管理:也许维护一个excel表格,也许是维护漏洞管理系统,总之对于安全漏洞要做到心中有数。

Git监控:做好代码监控工作,避免出现代码泄露,有前车之鉴。

SRC的运营:如果资金不足可以借助安全平台的SRC,总之能有不错了。

2.7 培训

最后把培训单独列出来,体现培训的重要性。每个流程阶段或多或少都可以有培训,培训过程中要有会议记录包括参与人员签字、培训内容,以及提问和建议等等。培训是全员认知、认可安全人员职能的重要环节,是体现安全人员价值所在。总之让公司全员知道安全人员的努力和成果。

三、结语

随着时间的推移和能力的提升,SDL内容应不断的完善;推动SDL流程控制可能是安全部门或者是安全组,也可能是一个安全人员;SDL流程控制是安全体系的重要的一环,安全体系落地需要大量的规范、制度的支撑。不仅需要领导和同事的支持,同时需要自身不断努力推动。碰壁不可避免,巧妙借助网络安全法、等级保护制度、安全事件推动落实。借助纵深防御一句话总结安全:进不来、看不懂、拿不走、跑不掉。

0 人点赞