發(fā)布于:2021-01-06 18:03:03
0
121
0
DevOps是一種結(jié)合了開發(fā)和運(yùn)營團(tuán)隊(duì)的軟件開發(fā)策略。它通常強(qiáng)調(diào)敏捷方法,自動(dòng)化和持續(xù)集成/持續(xù)交付(CI / CD)。它旨在高速生產(chǎn)和發(fā)布高質(zhì)量的軟件。在本文中,您將學(xué)習(xí)各種保護(hù)DevOps管道的方法。
實(shí)施CI / CD的好處
及時(shí)反饋
由于測試是自動(dòng)化的,因此開發(fā)人員收到的提交代碼反饋比手動(dòng)處理快得多。這使他們能夠在流程中盡早進(jìn)行必要的更改,并減少了不可行的工作。
可見度更高
管道事件記錄在每個(gè)步驟中,并且警報(bào)可以自動(dòng)觸發(fā)。這種可見性使團(tuán)隊(duì)能夠輕松分析管道效率并進(jìn)行有效的故障排除。它還確保團(tuán)隊(duì)保持對管道和項(xiàng)目狀態(tài)的了解。
早期缺陷檢測
整個(gè)管道中的自動(dòng)化測試可確保盡快發(fā)現(xiàn)缺陷和漏洞。這使團(tuán)隊(duì)可以更快地更正錯(cuò)誤并避免最后的更改。
在CI / CD管道中實(shí)現(xiàn)安全性的7個(gè)步驟
以下步驟可以幫助您解決管道安全問題,并確保正確識(shí)別和處理所有漏洞。
1.執(zhí)行依賴項(xiàng)掃描
依賴項(xiàng)掃描可以幫助您確定工具以及項(xiàng)目中的問題。掃描工具可以創(chuàng)建依賴關(guān)系清單,并根據(jù)已知漏洞和版本進(jìn)行檢查。
使用掃描工具來確定您的依賴項(xiàng)在哪里,確保版本使用一致并且所有依賴項(xiàng)都是最新的。如果發(fā)現(xiàn)您使用的是依賴關(guān)系的多個(gè)版本,或者使用的依賴關(guān)系效率低下,則應(yīng)考慮減少數(shù)量或?qū)嵤┌瑯?biāo)準(zhǔn)。
2.執(zhí)行容器掃描
掃描容器可以幫助您識(shí)別易受攻擊的配置,惡意軟件感染,機(jī)密管理不足和合規(guī)性違規(guī)。您應(yīng)該在整個(gè)開發(fā)過程中定期執(zhí)行此步驟。
確保掃描所有容器;這意味著您將在其中開發(fā),測試或部署管道服務(wù)和應(yīng)用程序。掃描可能要用來構(gòu)建環(huán)境的任何主映像也是一個(gè)好主意。從源頭上修復(fù)漏洞比每次部署容器時(shí)解決問題要有效得多。
3.使用端點(diǎn)保護(hù)平臺(tái)(EPP)保護(hù)端點(diǎn)
在當(dāng)今的網(wǎng)絡(luò)安全環(huán)境中,防病毒已不再足夠。攻擊者知道端點(diǎn)的防御力很弱,經(jīng)常繞過其他防御手段直接將其作為目標(biāo)。
DevOps管道具有大量敏感的端點(diǎn),從構(gòu)建服務(wù)器到存儲(chǔ)庫再到開發(fā)人員工作站,請想象一下,如果開發(fā)人員的筆記本電腦感染了勒索軟件,您的管道將會(huì)發(fā)生什么。為了保護(hù)這些端點(diǎn),請部署一個(gè)端點(diǎn)保護(hù)平臺(tái),包括下一代防病毒(NGAV)以防御未知和零日惡意軟件,行為分析以識(shí)別端點(diǎn)上的異?;顒?dòng)以及漏洞掃描。
端點(diǎn)保護(hù)系統(tǒng)還包括端點(diǎn)檢測和響應(yīng)(EDR)工具,可以幫助安全團(tuán)隊(duì)在受到端點(diǎn)攻擊時(shí)做出響應(yīng)。它們提供來自端點(diǎn)的實(shí)時(shí)信息,并允許安全團(tuán)隊(duì)將受感染的端點(diǎn)與網(wǎng)絡(luò)隔離,擦除和重新映像,并采取其他措施來主動(dòng)緩解威脅。
4.執(zhí)行靜態(tài)應(yīng)用程序安全性測試或(SAST)
SAST工具在白盒測試過程中掃描代碼,可以幫助您識(shí)別與語法,邏輯,復(fù)雜性和易受攻擊的方法有關(guān)的問題。這些工具可以直接從您的代碼編輯器逐行提供對問題的實(shí)時(shí)洞察。
確保使用與您的團(tuán)隊(duì)正在使用的編輯器或集成開發(fā)環(huán)境(IDE)集成的工具。您還應(yīng)確保工具不會(huì)干擾開發(fā)人員的工作流程,并且僅顯示相關(guān)的清晰結(jié)果。如果工具阻礙了生產(chǎn)力,則開發(fā)人員可能會(huì)避免使用它。
5.確保運(yùn)行時(shí)保護(hù)
您應(yīng)該實(shí)施運(yùn)行時(shí)保護(hù),以防止那些尚未發(fā)現(xiàn)的漏洞和無法通過其他方式保護(hù)的漏洞。例如,您的容器主機(jī)的操作系統(tǒng)。為了確保這種保護(hù),您應(yīng)該采用強(qiáng)大的訪問控制并驗(yàn)證用戶是否具有最低限度的必需特權(quán)。
您還應(yīng)該確保在應(yīng)用程序中解決運(yùn)行時(shí)保護(hù)問題。運(yùn)行時(shí)應(yīng)用程序自我保護(hù)(RASP)是一種自動(dòng)化工具,可用于在運(yùn)行時(shí)保護(hù)應(yīng)用程序的安全。它充當(dāng)應(yīng)用程序內(nèi)部的安全框架,可連續(xù)掃描流量并阻止可疑活動(dòng)。為了提高項(xiàng)目的安全性,請使用附帶的RASP工具部署應(yīng)用程序。
6.使用入侵檢測系統(tǒng)(IDS)
實(shí)施IDS系統(tǒng),該系統(tǒng)可以基于預(yù)定義的規(guī)則和策略來分析流量中的可疑活動(dòng),并提醒安全團(tuán)隊(duì)注意可疑事件。在DevOps管道中,您可以使用IDS來確保只有經(jīng)過驗(yàn)證的用戶才能訪問您的代碼和工具。您還可以使用它來提醒配置,環(huán)境映像和部署設(shè)置的更改。
7.管道監(jiān)控
必須使用集中式監(jiān)視工具來確保管道和各種環(huán)境的安全性。集中化工具(例如系統(tǒng)信息和事件管理(SIEM)解決方案)可以幫助您匯總?cè)罩緮?shù)據(jù)和警報(bào)。這些工具還可以為您關(guān)聯(lián)事件數(shù)據(jù),從而更清晰地了解管道功能和安全性。沒有集中化,事件和問題很可能會(huì)丟失。
結(jié)論
CI / CD管道包含軟件交付過程中許多最有價(jià)值的資產(chǎn)。這些資產(chǎn)包括代碼庫,機(jī)密,系統(tǒng)訪問和環(huán)境配置。這些資產(chǎn)的存放使管道成為攻擊者有吸引力的目標(biāo)。此外,第三方工具的集成可能會(huì)插入可以利用的漏洞。為了確保資產(chǎn)安全,團(tuán)隊(duì)必須強(qiáng)調(diào)安全性。
CI / CD管道的安全性有兩個(gè)方面:確保代碼的安全性和管道的安全性。這些方面可能重疊,特別是當(dāng)您的管道使用代碼作為基礎(chǔ)結(jié)構(gòu)時(shí)。為了確保管道安全,您需要同時(shí)解決這兩個(gè)方面。
作者介紹