当前位置: 首页 > 科技观察

全面实施DevSecOps,工行安全管控建设实践

时间:2023-03-13 22:10:09 科技观察

1.行业安全现状2.金融行业安全管控核心要求与策略3.安全管理研究与实践思路4.未来展望炸弹级高危漏洞,去年11月下旬,阿里云向Apache官方报告了ApacheLog4j2RCE漏洞。该漏洞为0-day漏洞,用户可借此获得无限权限,如提取敏感数据、上传文件至服务器、删除数据、安装勒索病毒、进一步传播至其他服务器等。但阿里云并未向工信部报告该漏洞。直到12月9日,工信部才通过其他渠道获悉该漏洞并发布紧急通知,为时已晚。当晚,国外公布了攻击POC。在国内针对POC用WAF进行防御的同时,他们进一步发布了可以绕过WAF的增强版POC。由于大量网站存在该问题,业内同仁使用佛法等网站进行测试,结果佛法等网站一度因测试流量过大而崩盘。同时,黑灰产、黑灰产已将该漏洞的利用模块添加到挖矿勒索库中。这件事给程序员带来了极大的痛苦。12月9日的夜晚,是一个不眠之夜,已被载入史册。程序员被迫紧急升级log4j22.15.0,及时上线规避风险。据业内某安全团队统计,全球72小时内至少收到84万次攻击,影响范围非常大。从Apache官方历史提交版本的变化来看,从12月6日到12月27日,Apache官方在20天内升级了5个版本。同时,2.15版本包含了两个候选版本,RC1和RC2。RC1仍有漏洞需要绕过,所以Apache最终发布了RC2作为标准版本。正因如此,工信部与阿里云官方合作暂停了半年。从去年底至今,美国商务部要求不得擅自与中方共享安全漏洞的消息不断发酵,造成严重影响。可见,掌握了0-day漏洞就等于掌握了互联网的命脉。一、网络威胁越来越严重下面举3个网络安全事件的例子。2017年,“WannaCry”勒索病毒迅速席卷全球150多个国家,影响超过20万台机器。它的前身是美国国家安全局旗下的网络武器永恒之蓝。当时泄露了《永恒罗曼史》等近10款机型。%用户的漏洞利用工具,网络安全岌岌可危。今年3月,黑客“RED-LILI”攻击了NPM仓库,发布了近800个NPM恶意包。5月,俄罗斯最大银行遭遇最严重的DDos攻击,峰值流量高达450GB/s。虽然可以通过CDN来防止DDos攻击,但是会产生巨大的成本,得不偿失。简而言之,网络威胁正在增加。从行业黑客的攻击手段来看,一般分为以下五个阶段:检测:包括部分资产检测、服务识别、开源情报和供应链。渗透:通过社会工程和漏洞扫描获取用户部分权限,探查是否存在存在某些服务漏洞的端口,通过服务漏洞进行嗅探攻击,进而获取相应权限。住院医师:包括很多层次。例如,黑客可以上传特洛伊木马来提升他们的权限为root;他们可以添加或修改文件以满足他们的特定需求;或者修改注册表,类似勒索软件的操作。此外,他们还会设置一些恶意程序,比如通过勒索软件要求大家购买和赎回比特币;或者通过代理隧道实现攻击者和受害者之间的连接。传播:包括恶意邮件、渡轮攻击、释放蠕虫、感染共享资源等。瘫痪:数据就是金钱。黑客一般采用夺取控制权、窃取机密、长期潜伏、获取数据等手段。在防护方面,业界主要采用以下方式:利用防火墙和WAF对外围网络层面进行管控。在内控方面,进行入侵检测和反病毒处理,确保访问进程和程序的安全。定期进行漏洞扫描,提前完成漏洞修复。最重要的是要提高大家的安全意识。从现有情况可以看出,人为泄露是网络安全问题的重要原因。2、数据安全事件的危害程度日益增加。基于风险的安全(RiskBasedSecurity)数据显示,2020年,全球数据泄露事件数量将达到3601亿。据IBM《2021年数据泄露成本报告》称,数据泄露平均造成424万美元的损失。同时,《2021年数据泄露调查报告》指出,2021年85%的数据泄露将涉及人为因素,可见人是安全事件的关键因素。数据安全事件本质上有两方面的影响:1)2019年网络黑业蓬勃发展,拼多多过期优惠券漏洞一夜损失200亿;4月22日,北美国家哥斯达黎加财政部大量敏感数据被盗,损失至少2亿美元。2)数据泄露危害位居前三欧洲GDPR自2016年发布以来多次被罚款。仅21年,卢森堡就对亚马逊处以7.46亿欧元的罚款,是迄今为止最高的单笔罚款;荷兰对“抖音”国际罚款75万欧元,是中国企业(包括其控制的海外平台)首次受到处罚,具有一定的象征意义。中国也有信息泄露罚款的案例。例如,1月21日,某大型银行湛江分行因员工出售客户信息31465条,被罚款20万元。3、数据安全上升到国家战略层面1)国际层面,欧盟于2016年颁布GDPR(《通用数据保护条例》),2018年5月生效,构建“泛欧数据市场”.2018年,美国通过了CLOUD法案(《澄清域外合法使用数据法案》),允许合法访问海外数据,抢走了他国的“治外法权”。由此可见,国家层面的数据安全战略包括以下三个方面:抢夺他国“域外管辖权”、“长臂管辖权”、扩大跨境数据执法权、“对内放松”。并在外部收紧”。此后,相继出台了相应的安全规定。2016年发布《网络安全法》鼓励数据安全保护;2021年发布《数据安全法》,将数据安全纳入安全体系;2022年,中国人民银行发布《金融科技发展规划(2022-2025)》,强调做好数据安全保护。与国际上的进取战略不同,我国的战略包括以下三点:主管部门各司其职,形成新的监管模式。数据安全与网络安全保护求统一。合并多部法律,并联多部标准,将是行业在一次实施中难以抉择的选择。2、金融行业安全管控的核心需求和策略个人认为,金融行业安全管控的核心需求和策略可以分为四个方面。1、提高人员安全意识(网络安全的关键和核心)1)提高人员安全意识,避免网络钓鱼、社会工程学等因素无意中泄露部分关键数据。2)做好最小权限控制,可以通过文档加密,也可以通过隐写术加水印。一方面可以防止人们有意识地泄露数据,另一方面可以准确定位事后追究责任。2.实现安全左移,软嵌入到现有开发系统中1)将安全工具嵌入到DevOps流水线中,构建高效的安全访问控制,自动控制安全出口质量,避免粗糙安全控制带来的巨大影响关于研发过程。2)快速完成漏洞修补工作,减少安全漏洞。3.加强运行时动态入侵检测1)快速识别异常攻击行为:识别行为数据的常见攻击路径本质上是依赖专家库进行处理,因为安全专家可以识别数据的常见攻击路径,并探究哪些行为数据异常数据。2)持续的风险评估能力,快速识别行为偏差。过去,我带领的团队尝试过吴院士的拟态防御,部署多个动态异构体,提前发现安全风险并进行防御。4、快速反应1)快速关注舆情影响范围。2)自动实现舆情发布和跟踪,提高应急响应的时效性,将损失降到最低。三、安全管控研究与实践思路1.DevOps研发模式下的软件安全转型1)瀑布模型2004年,微软提出SDL概念,在当时具有划时代的意义,在众多企业中发挥了积极作用,如华为和富国银行。随着DevOps的兴起,它存在以下两大问题:过于依赖专家的能力,无法适应当前的网络安全生态;忽视项目组安全意识培训,沦为“救火队”。2)DevOps近年来,DevOps在国内不断兴起和成熟。2017年,Gartner提出了DevSecOps全流程工具链。如上图所示,对于DevOps的每个阶段,都给出了相关的安全工具链(后面会详细开发,这里不再展示),所以安全管控策略应该遵循以下两个原则:应尽量减少安全活动对开发过程的影响;容器、云原生、微服务等新技术需要高度自动化。中国信息通信研究院并没有对DevOps做出明确的定义,而是在《研发运营一体化(DevOps)能力成熟度模型第6部分:安全及风险管理》中提出了以下四种新的安全概念和实践模型。ControllinggeneralrisksControllingdevelopmentprocessrisksControllingdeliveryprocessrisksControllingoperationalprocessrisks原理类似于DevSecOps的理念,强调安全人人有责,意味着将安全嵌入到应用程序的整个生命周期中,前提是安全风险是可控的。可控,帮助企业提升IT效率,更好地实现研发与运营一体化,实现全流程安全内置,形成安全闭环。2、工行安全管控探索历程工行开发中心分为7处,目前拥有研发人员8000余人,维护应用400余项,需要满足不断变化和不断增长的市场需求。如果完全实施SDL,人员投入成本和产出成本将严重失衡。我行发展中心的安全管控探索分为两个阶段。第一阶段在2018年9月之前,业务研发中心的安全实验室主要负责安全验收,类似于SDL的安全测试阶段。由于测试阶段接近生产上线,发现问题后完成漏洞修复的成本极高,且可能在安全设计层面进行调整,影响业务上线的风险。于是在2019年9月之后,开发中心开始提前安排安全管控和测试,搭建安全攻击链。效果明显,减少了约90%的安全测试问题,有效降低了问题成本。刚才提到我们业务研发中心的安全测试一般是在发货后进行的,即在生产前两周内提出问题。如果此时提出复杂的安全问题,可能两周内安全设计还做不完,需求无法关闭。因此,我们提前进行了安全测试,可以在前期测试阶段发现安全设计中的一些问题,将修改成本降到最低。回顾当时的历史,2016年,Gartner发布了一份报告《DevSecOps》,对模型和配套方案进行了分析。2017年,RSAC首次提出DevSecOps,此概念开始流行。2018年,工商银行启动DevOps建设。在稳定成熟之后,工行在2019年开始构建安全工具链并测试安全团队。同时,业界轻量级的安全工具链也越来越丰富,与DevOps的不断成熟相得益彰。三、工商银行DevSecOps能力建设目标:一提二减根据业界最新理念,我们制定了与行业同轨的DevSecOps能力建设目标,即一提二减.1)提升应用安全开发技术水平和人员能力,构建统一的应用安全平台;开放研发过程中所有节点的安全活动;构建软件开发生命周期的闭环安全管理能力;积累安全专家能力作为安全资产。2)减少应用程序风险漏洞的数量。通过过程控制和安全技术减少应用程序漏洞的数量;通过一些工具链提前规避和发现一些漏洞;实现安全左移,减少应用发布前的安全漏洞数量。3)降低应用法规合规风险提前将合规要求纳入应用系统开发需求;提高持续应用合规能力;降低合规风险。我们希望通过以上三个目标,构建开发与运营一体化的安全管理与技术体系。4、DevSecOps能力体系:工行建设路径我们的建设路径其实包括三个方面。1)安全能力原生化,将应用安全技术和能力整合到企业共享的开发框架、产品库和微服务中。比如我们提取owasp的ESAPI,形成细粒度的标准化安全组件,通过aspects统一处理。将应用安全从构建后的能力转变为原生的能力。2)技术和面向服务的安全能力,构建DevSecOps安全管道,也就是业界所说的DevSecOps黄金管道。通过流水线管控减少团队工作量,提高安全工作效率。通过黄金管道降低对人员安全能力的依赖,同时对人员安全能力的提升产生潜移默化的影响。当我们发现安全问题时,开发者可以快速知道如何修改和验证,如果不知道如何修改,可以查阅专家库。3)流程化、可视化的安全管理,将安全管控和安全管理延伸到整个软件开发和运维过程;建立面向软件生命周期的安全能力;实现安全左移和流程管理,上线前排除安全隐患和软件缺陷;通过量化数字指标,指导软件安全体系的演进和优化。5、DevSecOps能力体系我们的能力体系分为4个建设目标,并根据目标形成层次和相关体系。1)顶层结构顶层结构有管理、有流程、有规范、有考核,即要有方法论基石,出现问题要有规律可循。我们为此建立了安全管理和标准体系,包括两个方面:一是建立安全开发规范(应用需求规范、安全设计规范、开发规范,以及安全合规的测试规范和技术规范)和安全管理规范;二是开展人事管理建设,涉及组织架构、岗位职责、安保人员的调整和培训等。2)平台支持平台支持是指基于平台的技术规范策略能够覆盖全流程。为此,我们构建了一个真正涵盖研发方方面面的安全管理和技术平台。简单来说,需求:管理需要平台化的技术标准化、策略化、全流程覆盖、全应用覆盖。3)我们需要在安全知识库中积累一些东西,因为专家的能力永远是专家自己的一部分,我们必须为大家做。保安负责。一方面,我们可以借鉴专家的相关经验来成长,即传承;中间件等进行安全级别的整体要求。安全开发知识库安全测试知识库,即如何做模糊测试、渗透测试等软件产品库,本质上就是npm、pypi、maven等各种产品库,都会有漏洞组件或恶意组件,必须提前发现和避免。安全培训数据库旨在提高员工的安全意识。它由两个层次组成。一是员工应如何处理社工的日常工作,以免无意中泄露重要信息。4)工具与DevOps整合我们整合工具链,降低使用门槛,提高劳动效率,提供闭环安全能力。这包括引入行业安全工具链和开发与DevSecOps相关的安全工具。6.DevSecOps能力体系:全流程闭环安全管控能力1)研发流程安全从需求、设计、开发、测试、发布到运营,我们会有安全访问控制或DOD来控制和处理每个环节,确保各阶段安全质量目标的实现,最终保证了出口安全和质量。2)运维安全事件响应与溯源当发现运维安全事件后,要主动响应运维安全事件并事后溯源,实现自治的持续演进和完善。系统。如果缺少安全需求,需要在需求环节进一步加强,比如通过威胁建模提高需求的安全性;如果设计环节出现问题,发现安全设计缺陷,应加强安全设计闭环,或通过其他方式加强处理;如果开发阶段存在安全组件漏洞或代码缺陷,如开发人员故意构造代码缺陷,方便其离职后违规操作,则进一步加强开发环节的代码审查能力;如果是测试环节,进一步优化改进测试用例缺失、测试工具漏报等问题。如果发布环节发现发布标准存在缺陷,将在后续发布过程中进行改进。3)安全能力沉淀我们最终沉淀安全能力,逐步建立一个不断演进的安全体系。这部分包括三个方面:①Bug修复、运营安全问题跟踪、安全问题闭环跟踪、开发者回溯、安全问题源头回溯、应用泛滥排查基于缺陷组件的横向检查基于缺陷代码横向检查基于安全配置的横向检查③安全能力沉淀安全设计沉淀是知识库安全开发沉淀是安全组件安全测试沉淀是工具规则基于以上概念,我们结合同步和异步模式,规划双-链路检查模式,形成和完善DevSecOps能力。1)构建与DevOps流程并行可自由插拔组装的“黄金管道”安全管道,将扫描精度高的轻量级安全扫描工具纳入CI/CD管道,适应快速构建和交付的需求,并实现严格的代码安全和质量控制。2)对于扫描效率较低的安全扫描工具,通过异步方式在全流水线进行定时调度,进行例行扫描。如上图所示,我们在CI流水线中多了三个组件,一是敏感信息检测,二是SAST扫描,三是SCA扫描。在工具方面,在检测敏感信息时,我们会使用detect-secrets、git-secrets等工具。SAST扫描,我们使用了三类工具,第一类是Sonar(内置并不断添加很多安全规则),可以看到腾讯、阿里、华为等很多龙头企业都在用,还有招商银行和中国银行也在用。在使用上,然后我们使用了findsecbugs,除此之外,我们还使用了codeguard等等。在SCA(软件组件分析)扫描方面,我们目前购买了OpenSourceGuardian。之前我们使用了两个工具,一个是sofa的良心组件license-maven-plugin,可以避免使用GPLlicense。另一个是依赖检查,可以检查组件是否存在漏洞,以便我们提前修复。在CD流水线中,除了SAST扫描,我们还增加了IAST、DAST扫描和容器安全扫描。DAST扫描的工具方面,我们使用OWASPZAP和Appscan。此外,我们还购买了绿盟科技的检测工具。在渗透测试方面,我们主要是通过工具来辅助人工操作。通过整个过程,我们建立了安全和质量准入控制,以确保我们的出口能够符合安全和质量的原则。在加强全流程管控能力的同时,构建漏洞知识图谱,方便排查,提升自动化排查能力。我们有400个申请,如果每次发邮件都要检查所有的申请,会给大家带来很大的负担。通过构建知识图谱系统,我们可以轻松实现向下调查。4.未来展望可以看到,安全演进的速度正在逐步加快,技术变革将推动新一代软件安全革命。关键技术的演进为软件安全攻防双方打开了新的空白窗口。谁能优先使用新技术,谁就能在安全对抗中取得领先优势。1、网络安全网格通过分布式架构方式,在分布式策略执行架构中实现集中的策略编排和决策,用于实现可扩展、灵活、可靠的网络安全控制。我个人认为网络安全网格化是必然趋势。2.隐私增强计算随着全球数据保护法规的成熟,各地区的CTO不可避免地要面对数据隐私问题。与常见的静态数据安全控制不同,隐私增强计算可以保护使用中的数据,同时确保机密性或隐私。事实上,数据的价值在黑灰生产中发挥着极致的作用。我们正处于大数据时代。通过隐私增强计算,既避免了数据隐私,也对在千人面前建立客户画像起到了积极作用。对高敏感数据的处理,如实现反欺诈、评价个人数据改造等,一般可以通过联邦学习或同态加密等方式实现数据处理的目的,同时不侵犯数据隐私。3、决策智能决策智能可以看作是一种挖坑的手段。在业界看来,利用大数据分析技术挖掘程序中??的潜在缺陷,在技术原理上已经被证明是可行的,并且在领先机构的研发中也已经实现。实际效果。但是,我们应该清醒地看到,新的漏洞挖掘技术是一把双刃剑。在提升企业安全测试水平的同时,也可能被攻击者利用,优先0-day发现,即难以达到攻防博弈的平衡。如果你关注腾讯的玄武实验室或者阿里云实验室,你可以找到一个高级漏洞的极其丰厚的奖励。目前,开源组件的漏洞呈增长趋势。可以到NVD或CNNVD官网查看漏洞趋势。自2016年以来,漏洞数量每年都呈指数级增长。开源软件虽然是个好东西,可以提高你的构建效率,避免重新发明轮子,但它也是一把双刃剑,会在其中隐藏一些安全漏洞。如何在用好开源软件的同时保护自己,我个人认为这一点在软件开发过程中是非常关键的。讲师介绍魏亚东,中国工商银行软件开发中心三级经理,高级架构师,杭州研发部数据库专家组组长,开发中心安全组成员,负责技术管理、数据库和安全相关的工作。2009年加入中国工商银行软件开发中心,致力于推动管理创新,提升效率,提供全面的技术管控,推动自动化实施,实现业务价值的优质快速交付;同时作为技术专家,为安全生产提供技术支持。