淺談如何有效落地DevSecOps
前言
随着业务更新迭代速度加快,对客系统增多,大部分企业因安全资源有限等原因,在信息系统开发生命周期中往往忽略了安全活动,或者仅在运行阶段才开展安全活动,造成多种问题难以解决:
安全问题暴露时间长
大部分企业信息安全人员工作更多的是应急处理信息系统运行时出现的安全问题,属于事后的安全问题处理,未在信息系统建设开始时实施相关安全活动使安全问题较早解决。安全活动滞后,增加了信息系统安全问题的暴露时间。
安全问题整改成本较高
目前企业的安全人员通常是在系统上线或运行时才开始介入安全活动,安全问题在此阶段被集中发现。由于漏洞多是在上线前一刻或者运行时被发现,安全问题数量往往较多,而且此阶段对安全问题进行整改,需重新安排人力和时间,增加了安全问题的整改成本,影响了信息系统上线进度。
安全活动无重点
企业信息资产较多,安全工具自动化不足或集成程度不高,信息安全人员较多沉浸在资产的日常安全维护中,让信息安全人员处于非常被动状态中。实施安全活动无计划,无重点,不成体系化,而且实施效果不尽人意。
安全人员力不从心
企业专职安全人员非常有限,在安全上的人力投入无法和互联网公司相比,但却又和互联网公司面临一样的安全风险。再加上行业监管要求高,在众多风险面前,往往让安全人员力不从心。
"速度"和风险难以平衡
开发交付团队,甚至管理层过度地强调“速度",随着发布速度和频率不断增加,传统的应用程序安全团队无法跟上发布的步伐,以确保每个发布都是安全的。
为了解决这个问题,企业需要在开发过程中每个阶段持续构建安全性,以便DevOps团队能够快速、高质量地交付安全的应用程序。越早地将安全性引入到工作流中,就能越早地识别和弥补安全性缺陷和漏洞。这个概念是“shiftleft”的一部分,它将安全测试转移给功能测试人员甚至是开发人员,使他们能够几乎实时地修复代码中的安全问题。通过DevSecOps,企业可以将安全性无缝地集成到他们现有的持续集成和持续交付(CI/CD)实践中。
DevOps?
在了解DevSecOps前,让我们先来了解一下DevOps。
DevOps由三个部分组成:组织文化、流程、技术和工具,帮助开发和IT运营团队以一种比传统软件开发过程更快、更敏捷、更迭代的方式构建、测试和发布软件。
根据DevOps手册,“在DevOps的理念中,开发人员会收到关于他们工作的快速、持续的反馈,这使他们能够快速、独立地实现、集成和验证他们的代码,并将代码部署到生产环境中。
简单来说,DevOps就是要消除两个传统的竖井团队(开发和运营)之间的障碍。在DevOps模型中,开发和运营团队在整个软件应用生命周期中共同工作,从开发、测试、部署到运营。
DevSecOps是什么?why?
DevSecOps是Gartner2012年在一份报告中提出的概念,是应用程序安全(AppSec)领域的一个相对较新的术语。它通过在DevOps活动中扩大开发和操作团队之间的紧密协作,将安全团队也包括进来,从而在软件开发生命周期(SDLC)的早期引入安全。
DevSecOps意味着安全是每个人的共同责任,每个参与SDLC的人都在将安全性构建到DevOps CI/CD的工作中发挥作用。
DevOps关注的是应用交付的速度,而DevSecOps通过尽可能快地交付尽可能安全的应用来提高速度和安全性。
Devops为开发团队带来更快、更好的协作,可以在几天到几周内交付和部署软件,然而快速创新与安全性的冲突,让安全性成为Devops的瓶颈。
DevSecOps(DevOps+Sec=DevSecops)通过在DevOps流程的每个阶段或检查点构建安全性来消除DevOps和信息安全之间的障碍,从而更快更安全地生成高质量的代码。
根据DevSecOps的理念,企业应将安全集成到DevOps生命周期的每个部分,包括初始、设计、构建、测试、发布、支持、维护等等。在DevSecOps中,安全是DevOps价值链中每个人的共同责任。DevSecOps涉及开发、发布管理(或运营)和安全团队之间持续的、灵活的协作。·
DevSecOps可以更早地、有目的地将安全性融入SDLC中,如果开发组织从一开始就将安全性考虑在代码中,那么在漏洞进入生产环境之前或发布之后发现并修复它们会更容易,成本也更低。
DevSecOps工具
DevSecOps工具是整个DevSecOps的核心。它通过扫描开发代码、模拟攻击行为,从而帮助开发团队发现开发过程中潜在的安全漏洞。
从安全的角度来看,DevSecOps工具可以划分为以下四类:
静态应用安全检测工具(SAST)
静态应用程序安全测试(Static ApplicationSecurityTesting,SAST)技术通常在编码阶段分析应用程序的源代码或二进制文件的语法、结构、过程、接口等来发现程序代码存在的安全漏洞。SAST主要用于白盒测试,检测问题类型丰富,可精准定位安全漏洞代码,比较容易被程序员接受。但是其误报多,耗费的人工成本高,扫描时间随着代码量的增多显著增长。相关的工具有:Checkmarx,Fortify,代码卫士等。
动态应用安全检测工具(DAST)
动态应用程序安全测试(Dynamic ApplicationSecurityTesting)技术在测试或运行阶段分析应用程序的动态运行状态。它模拟黑客行为对应用程序进行动态攻击,分析应用程序的反应,从而确定该Web应用是否易受攻击。这种工具不区分测试对象的实现语言,采用攻击特征库来做漏洞发现与验证,能发现大部分的高风险问题,因此是业界Web安全测试使用非常普遍的一种安全测试方案。但是由于该类工具对测试人员有一定的专业要求,大部分不能被自动化,在测试过程中产生的脏数据会污染业务测试数据,且无法定位漏洞的具体位置等特点,不适合DevSecOps环境使用。相关工具有:AWVS、Burpsuite、OWASPZAP等。
交互式应用安全检测工具(IAST)
交互式应用程序安全测试(Interactive ApplicationSecurityTesting)是2012年Gartner公司提出的一种新的应用程序安全测试方案,通过在服务端部署Agent程序,收集、监控Web应用程序运行时函数执行、数据传输,并与扫描器端进行实时交互,高效、准确的识别安全缺陷及漏洞,同时可准确确定漏洞所在的代码文件、行数、函数及参数。IAST相当于是DAST和SAST结合的一种互相关联运行时安全检测技术。IAST的检测效率、精准度较高,并且能准确定位漏洞位置、漏洞信息详细度较高。但是其部署成本略高、且其无法测试业务逻辑漏洞。相关的工具有:ContrastSecurity、默安IAST、悬镜等。
开源软件安全工具(FOSS)
现在很多开源软件安全工具已经比较成熟了,比较著名的有:X-ray、Sonatype IQ Server、Dependencies Check等。
一般情况下,选用功能齐全的IAST或DAST即可解决大部分安全问题,想要进一步左移,可继续推进SAST和FOSS的建设,将漏洞发现提前到开发阶段。
这里有一点需要提一下,工具解决的只是通用漏洞方面的问题,对于逻辑比较强的逻辑漏洞,例如0元支付这类逻辑漏洞,则需要上线前的人工安全测试去发现和解决,或者在设计阶段通过安全需求进行规避。
DevSecOps具体实践
DevSecOps的关键在于CI/CD流程的安全嵌入,笔者根据实践经验,绘制了DevSecOps自动化安全测试流程图如下,供大家参考。
在需求分析阶段,将需求管理平台Confluence接入JIRA,由JIRA获取到需求和任务排期,向开发人员下达开发任务。在系统开发之前,为保证应用的安全,可对开发人员进行信息安全知识培训和必要的安全编码技能的培训,此处可利用一些在线的课程、或者在线安全平台:SecureCodeWarrior。在安全培训周期方面,要全方位、多角度的,既有新人初期培训,也有周期性的培训,还要密切观察开发人员出现的问题并及时给予有针对性的专题培训,方便研发人员在了解漏洞原理之后,能写出高质量、安全的代码。
开发人员接收到JIRA下发的开发任务,根据《编码安全指南》,进行系统开发。在开发阶段,通过在IDE中引入开源组件&内部依赖组件安全扫描。若发现风险组件,通过同步到JIRA通知开发人员。在系统开发完成之后,开发人员通过GIT/SVN将代码提交到代码仓库。当代码被提交到代码仓库之后触发SAST进行增量源代码安全扫描,并将风险同步到JIRA。除此之外SAST也会对代码仓库进行周期巡检。这里,可将安全编码基线要求配置成为源代码安全检查工具扫描规则,使通过源代码安全工具扫描的源代码,确保其能够符合安全编码要求。
在代码完成自动构建时,自动对构建代码进行安全扫描,若扫描发现缺陷,将缺陷信息同步至JIRA,由JIRA推送至研发人员,同时终止流水线作业。待研发人员完成缺陷修复后,再新重启发起自动发布流水线。为减少因源代码缺陷导致流水线频繁中止重启,建议在编码过程,每日代码归并时自动开展源代码安全扫描,在发布前发现并修复代码中存在的缺陷。
在测试阶段,利用交互式安全检测工具在单元测试、回归测试时,自动收集测试流量,针对测试流量进行分析和自动构建漏洞测试请求,在开展功能测试的同时,即可完成安全测试。若发现漏洞可实时同步到JIRA,并由JIRA将漏洞信息推送研发团队。
总结
DevSecOps是组织文化、流程和技术的统一。如何有效落地离不开这三个方面的内容:
组织文化
人和文化特别重要,DevSecops的落地不仅需要上级领导甚至最高领导的重视和投入,还需要业务团队对安全的重视,“自上而下”而不是“自下而上”,在落地过程中和不同部门的团队协作也是非常重要的。
工具链的建设
工具链建设是整个DevSecOps的核心。软件开发是一个复杂的问题,需要DevSecOps提供相应的自动化工具支持,关键是CI/CD流程的安全嵌入。
流程和体系的建立
传统的IT治理模型、流程不适合跨团队协作。如何解决各个开发团队之间的沟通、协作,需要结合自己的业务情况去制定。
鸿蒙官方战略合作共建——HarmonyOS技术社区
推薦系統(tǒng)
雨林木風(fēng) winxp下載 純凈版 永久激活 winxp ghost系統(tǒng) sp3 系統(tǒng)下載
系統(tǒng)大?。?/em>0MB系統(tǒng)類型:WinXP雨林木風(fēng)在系統(tǒng)方面技術(shù)積累雄厚深耕多年,打造了國內(nèi)重裝系統(tǒng)行業(yè)知名品牌,雨林木風(fēng)WindowsXP其系統(tǒng)口碑得到許多人認(rèn)可,積累了廣大的用戶群體,是一款穩(wěn)定流暢的系統(tǒng),雨林木風(fēng) winxp下載 純凈版 永久激活 winxp ghost系統(tǒng) sp3 系統(tǒng)下載,有需要的朋友速度下載吧。
系統(tǒng)等級:進(jìn)入下載 >蘿卜家園win7純凈版 ghost系統(tǒng)下載 x64 聯(lián)想電腦專用
系統(tǒng)大?。?/em>0MB系統(tǒng)類型:Win7蘿卜家園win7純凈版是款非常純凈的win7系統(tǒng),此版本優(yōu)化更新了大量的驅(qū)動,幫助用戶們進(jìn)行舒適的使用,更加的適合家庭辦公的使用,方便用戶,有需要的用戶們快來下載安裝吧。
系統(tǒng)等級:進(jìn)入下載 >雨林木風(fēng)xp系統(tǒng) xp系統(tǒng)純凈版 winXP ghost xp sp3 純凈版系統(tǒng)下載
系統(tǒng)大?。?/em>1.01GB系統(tǒng)類型:WinXP雨林木風(fēng)xp系統(tǒng) xp系統(tǒng)純凈版 winXP ghost xp sp3 純凈版系統(tǒng)下載,雨林木風(fēng)WinXP系統(tǒng)技術(shù)積累雄厚深耕多年,采用了新的系統(tǒng)功能和硬件驅(qū)動,可以更好的發(fā)揮系統(tǒng)的性能,優(yōu)化了系統(tǒng)、驅(qū)動對硬件的加速,加固了系統(tǒng)安全策略,運(yùn)行環(huán)境安全可靠穩(wěn)定。
系統(tǒng)等級:進(jìn)入下載 >蘿卜家園win10企業(yè)版 免激活密鑰 激活工具 V2023 X64位系統(tǒng)下載
系統(tǒng)大小:0MB系統(tǒng)類型:Win10蘿卜家園在系統(tǒng)方面技術(shù)積累雄厚深耕多年,打造了國內(nèi)重裝系統(tǒng)行業(yè)的蘿卜家園品牌,(win10企業(yè)版,win10 ghost,win10鏡像),蘿卜家園win10企業(yè)版 免激活密鑰 激活工具 ghost鏡像 X64位系統(tǒng)下載,其系統(tǒng)口碑得到許多人認(rèn)可,積累了廣大的用戶群體,蘿卜家園win10純凈版是一款穩(wěn)定流暢的系統(tǒng),一直以來都以用戶為中心,是由蘿卜家園win10團(tuán)隊推出的蘿卜家園
系統(tǒng)等級:進(jìn)入下載 >蘿卜家園windows10游戲版 win10游戲?qū)I(yè)版 V2023 X64位系統(tǒng)下載
系統(tǒng)大?。?/em>0MB系統(tǒng)類型:Win10蘿卜家園windows10游戲版 win10游戲?qū)I(yè)版 ghost X64位 系統(tǒng)下載,蘿卜家園在系統(tǒng)方面技術(shù)積累雄厚深耕多年,打造了國內(nèi)重裝系統(tǒng)行業(yè)的蘿卜家園品牌,其系統(tǒng)口碑得到許多人認(rèn)可,積累了廣大的用戶群體,蘿卜家園win10純凈版是一款穩(wěn)定流暢的系統(tǒng),一直以來都以用戶為中心,是由蘿卜家園win10團(tuán)隊推出的蘿卜家園win10國內(nèi)鏡像版,基于國內(nèi)用戶的習(xí)慣,做
系統(tǒng)等級:進(jìn)入下載 >windows11下載 蘿卜家園win11專業(yè)版 X64位 V2023官網(wǎng)下載
系統(tǒng)大?。?/em>0MB系統(tǒng)類型:Win11蘿卜家園在系統(tǒng)方面技術(shù)積累雄厚深耕多年,windows11下載 蘿卜家園win11專業(yè)版 X64位 官網(wǎng)正式版可以更好的發(fā)揮系統(tǒng)的性能,優(yōu)化了系統(tǒng)、驅(qū)動對硬件的加速,使得軟件在WINDOWS11系統(tǒng)中運(yùn)行得更加流暢,加固了系統(tǒng)安全策略,WINDOWS11系統(tǒng)在家用辦公上跑分表現(xiàn)都是非常優(yōu)秀,完美的兼容各種硬件和軟件,運(yùn)行環(huán)境安全可靠穩(wěn)定。
系統(tǒng)等級:進(jìn)入下載 >
相關(guān)文章
- 如何解決銳龍2200g死機(jī)藍(lán)屏
- Win8.1本地搜索為什么無法使用
- Win8.1無線網(wǎng)絡(luò)不穩(wěn)定/掉線怎么辦
- 電腦機(jī)箱漏電怎么消除?電腦機(jī)箱漏電是哪里的問題?
- 電腦開不了機(jī)怎么辦?電腦無法開機(jī)怎么解決?
- 硬盤雙擊無法打開的問題該怎么辦
- 風(fēng)行下載速度慢甚至是為0怎么辦?風(fēng)行播放器下載問題及解決方法匯總
- 蘋果回應(yīng)新的iOS惡意軟件YiSpector:已在iOS8.4中解決該問題
- 沒有路由器怎么連無線 160wifi 解決沒有路由器連接無線問題
- 維棠FLV下載視頻失敗問題匯總及解決方法
- Word2016 出現(xiàn)“此功能看似已中斷 并需要修復(fù)”問題解決方案(圖文)
- Cisco管理的35個常見問題及解答
- NanoStudio怎么用?NanoStudio使用方法及常見問題
- IE瀏覽器登錄網(wǎng)上銀行時出現(xiàn)崩潰問題的解決辦法
熱門系統(tǒng)
推薦軟件
推薦應(yīng)用
推薦游戲
熱門文章
常用系統(tǒng)
- 1win11最新娛樂版下載 技術(shù)員聯(lián)盟x64位 ghost系統(tǒng) ISO鏡像 v2023
- 2電腦公司windows7純凈版 ghost x64位 v2022.05 官網(wǎng)鏡像下載
- 3外星人系統(tǒng)Win11穩(wěn)定版系統(tǒng)下載 windows11 64位穩(wěn)定版Ghost V2022
- 4win11一鍵裝機(jī)小白版下載 外星人系統(tǒng) x64位純凈版下載 筆記本專用
- 5蘿卜家園Ghost win10 64位中文版專業(yè)版系統(tǒng)下載 windows10純凈專業(yè)版下載
- 6【國慶特別版】番茄花園Windows11高性能專業(yè)版ghost系統(tǒng) ISO鏡像下載
- 7青蘋果系統(tǒng) GHOST WIN7 SP1 X64 專業(yè)優(yōu)化版 V2024
- 8深度技術(shù)ghost win7純凈版最新下載 大神裝機(jī)版 ISO鏡像下載
- 9雨林木風(fēng)windows11中文版免激活 ghost鏡像 V2022.04下載