1、从从SDLSDL到到DevSecOpsDevSecOps的混沌式演的混沌式演进进之路之路武鑫武鑫 奇安信奇安信 产产品安全高品安全高级经级经理理姓名TITLE“虎符智库专家,曾兼负责公司内部安全防护、运营和蓝军工作。网络尖刀Z小队成员,BCS 2020、INSEC WORLD 2020、EISS 2021、DevOpsDays 2022等会议分享嘉宾。擅长从攻防视角进行甲方企业安全建设,在软件开发安全、供应链安全、攻防对抗方面有一定研究。业余时间喜欢思考与总结沉淀,主理个人微信公众号“我的安全视界观”,将安全实践输出成文,并对外分享与交流。”讲师简讲师简介介1234目录Contents数字化转
2、型下的痛点从安全角度看开发开发安全的关键要素混沌模式下的开发安全解决之道数字化转型下的痛点数字化转型下的痛点抢占市场先机,倒逼业务快速集成与交付。但并不是所有的业务都被要求快速,开发模式逐渐出现差异化。市市场对业务场对业务的快速交付需求的快速交付需求瀑布模式敏捷模式DevOps模式设计开发测试部署在数字化转型的大背景下,编程技术的发展,出现了新语言代替旧语言的情况。然而,仍旧会有多种语言共存的局面。技技术发术发展展带带来的多来的多样样化化发布流程及平台可能因为业务不同的发展速度,有着不一样的实现方式及存在。研研发发基基础设础设施不施不统统一一SCM Build&CIBinary 安全工作是建立
3、在现有流程上的,并不应该单独创建新流程,改变原有的研发体系。但若是现有流程都没有实现统一,开发安全活动的设计和落地,将找不到抓手,甚至无从下手多重混沌多重混沌带带来的巨大挑来的巨大挑战战开发模式三足鼎立开发语言丰富多彩基础设施没有统一从安全角度看软件开发从安全角度看软件开发安全漏洞通常是企安全漏洞通常是企业业的入口的入口仅从国家信息安全漏洞共享平台统计,近十年发现漏洞逾17w个,平均每年有1.7w个漏洞被发现。在实战攻防演习中,应用系统经常被用于打点,是突破企业边界安全防护的最佳手法之一。安全漏洞治理早已是行业讨论最多的话题,在国家层面已经对漏洞管理做出明确要求。安全漏洞定义:硬件、软件、协议
4、的具体实现或系统安全策略上存在的缺陷。什么是安全漏洞?什么是安全漏洞?安全漏洞硬件软件主机漏洞操作系统类漏洞系统服务类漏洞虚机容器类漏洞常见web漏洞SQLi漏洞OS命令注入漏洞文件上传漏洞.业务逻辑漏洞二进制类漏洞协议开发过程直接紧密相关Capers Jones Applied Software Measurement:Global Analysis of Productivity and Quality怎么切入做开怎么切入做开发发安全?安全?1、85%的缺陷都是在开发人员编码时引入;的缺陷都是在开发人员编码时引入;2、目前大多缺陷都是在测试阶段发现;、目前大多缺陷都是在测试阶段发现;3、缺
5、陷的修复工作越往后成本越大。、缺陷的修复工作越往后成本越大。有时候,还没开始写代码,就已经引入了漏洞;有时候,写完提交了代码,还是会有漏洞产生。开开发过发过程中,安全漏洞的生程中,安全漏洞的生产产源源架构设计缺陷编码忽视安全配置发生错误eg:命令注入、SQL注入、文件上传eg:未考虑安全性,使用有漏洞的框架eg:CORS配置安全漏洞、Redis未授权开发安全是一个体系化的工程,包括“发现-验证-修复-复盘”及常态化运营等环节。开开发过发过程中,安全漏洞的治理程中,安全漏洞的治理架构设计缺陷编码忽视安全配置发生错误漏洞发现漏洞发现漏洞验证漏洞验证漏洞修复漏洞修复漏洞复盘漏洞复盘分析漏洞产生原因、
6、检测盲点,向“左”反馈1、安全性需求2、安全设计(架构安全评审)1、编码安全规范设计与应用2、静态代码扫描(SAST)3、开源组件安全扫描(SCA)4、安全组件1、默认配置安全基线2、黑盒漏洞扫描(DAST)运营阶段1、漏洞预警2、SRC运营开发安全的关键要素开发安全的关键要素安全不要新造流程!安全不要新造流程!安全不要新造流程!安全融入开发流程!安全融入开发流程!安全融入开发流程!So谈论谈论开开发发安全安全时时,应该应该关注什么?关注什么?序号开发模式模式特点安全模型安全需求特点安全责任治理原则1瀑布模式1、开发周期长2、每个阶段目的明确,参与人员仅需专注个人部分SDLC1、重视过程文档,