本文來自極狐GitLab 資源中心。原文鏈接:https://resources.gitlab.cn/articles/f8d8adc4-7007-4711-8614-23ebd61e807d。
GitLab 是一個(gè)全球知名的一體化 DevOps 平臺(tái),很多人都通過私有化部署 GitLab 來進(jìn)行源代碼托管。極狐GitLab :https://gitlab.cn/install?channel=content&utm_source=csdn 是 GitLab 在中國的發(fā)行版,專門為中國程序員服務(wù)。可以一鍵式部署極狐GitLab。
更多關(guān)于極狐GitLab :https://gitlab.cn 或者 DevOps 的最佳實(shí)踐,可以關(guān)注文末的極狐GitLab 公眾號(hào)。
為了擴(kuò)展DevSecOps平臺(tái),學(xué)習(xí)如何將自定義安全掃描器集成到工作流程中是至關(guān)重要的,以下是一個(gè)易于遵循的教程。
極狐GitLab 是最全面的 DevSecOps 平臺(tái),擁有規(guī)劃、管理、構(gòu)建、部署、保護(hù)、管理和監(jiān)控應(yīng)用程序所需的一切。但是,在某些情況下,你可能希望使用第三方或自定義工具來擴(kuò)展極狐GitLab。比如,你想從單獨(dú)的解決方案遷移到 DevSecOps 平臺(tái)、評(píng)估第三方工具或?qū)S谢蚨ㄖ频慕鉀Q方案集成到極狐GitLab 中。
以下涵蓋到的一些內(nèi)容:
- 極狐GitLab DevSecOps 平臺(tái)可擴(kuò)展性
- 極狐GitLab安全掃描器集成
- 合并請(qǐng)求安全小部件
- 流水線安全部分
- 漏洞報(bào)告
- 漏洞頁面
- 安全儀表板
- 掃描結(jié)果 策略集成
- 教程:集成自定義安全掃描器
- 創(chuàng)建自定義安全掃描器
- 將自定義安全掃描器與極狐GitLab 集成
極狐GitLab DevSecOps 平臺(tái)可擴(kuò)展性
極狐GitLab 可以通過多種方式進(jìn)行擴(kuò)展,以支持您的組織可能需要的增強(qiáng)功能。這些集成的一些常見示例包括:
- 外部應(yīng)用程序集成,例如 Jenkins 和 Slack
- 外部問題跟蹤集成,例如 Bugzilla 和 Jira
- 外部身份驗(yàn)證提供商集成,例如 LDAP 和 SAML
- 外部安全掃描器集成,例如 Fortify 和 Checkmarx
- 能夠響應(yīng)泄露的機(jī)密,例如 AWS 和 GCP 訪問密鑰
您可以在極狐GitLab 集成文檔中查看所有可用的集成。 (注意:文檔中并未列出所有集成。)
極狐GitLab安全掃描器集成
第三方或定制的安全掃描器均可被集成到極狐GitLab中,以補(bǔ)充合并請(qǐng)求小部件、流水線安全部分、漏洞報(bào)告、漏洞頁面、安全儀表板以及掃描結(jié)果策略。接下來,我們將逐一回顧這些集成內(nèi)容。
合并請(qǐng)求安全小部件
合并請(qǐng)求包含一個(gè)安全小部件,它可以顯示新檢測(cè)到的漏洞的摘要。
當(dāng)您單擊漏洞時(shí),您將看到一個(gè)彈出窗口,其中包含以下信息:
- 狀態(tài)
- 描述
- 項(xiàng)目
- 文件
- 身份標(biāo)識(shí)
- 嚴(yán)重程度
- 工具
- 掃描器供應(yīng)商
這些漏洞也是可操作的,這意味著它們可以被忽略,也可以創(chuàng)建機(jī)密議題。
自定義掃描器的結(jié)果可用于填充安全小部件。漏洞數(shù)據(jù)是從掃描器發(fā)出的 JSON 模式填充的。
流水線安全部分
所有啟用的安全分析器都在流水線中運(yùn)行,并將其結(jié)果作為制品輸出。這些制品將被處理,包括重復(fù)數(shù)據(jù)刪除,結(jié)果會(huì)列在“流線型安全性”選項(xiàng)卡上。您還可以從此處下載生成的 JSON 文件。
自定義掃描器的結(jié)果可用于填充“流水線安全”選項(xiàng)卡。使用掃描器發(fā)出的 JSON 模式填充這些列。
漏洞報(bào)告
漏洞報(bào)告提供有關(guān)默認(rèn)分支掃描中的漏洞的信息,包括:
- 每個(gè)嚴(yán)重級(jí)別的漏洞總數(shù)
- 常見漏洞屬性的過濾器
- 每個(gè)漏洞的詳細(xì)信息,以表格布局呈現(xiàn)
默認(rèn)分支上的自定義掃描程序的結(jié)果可用于填充漏洞報(bào)告。
漏洞頁面
點(diǎn)擊漏洞報(bào)告中存在的漏洞會(huì)將您帶到其漏洞頁面。項(xiàng)目中的每個(gè)漏洞都有一個(gè)漏洞頁面,其中提供了詳細(xì)信息,例如:
- 描述
- 檢測(cè)時(shí)間
- 當(dāng)前狀態(tài)
- 檢測(cè)到的位置
- 可執(zhí)行的操作
- 關(guān)聯(lián)的議題
- 操作日志
- 解決方案
- 標(biāo)識(shí)符
- 訓(xùn)練
您可以使用漏洞頁面中提供的數(shù)據(jù)對(duì)檢測(cè)到的漏洞進(jìn)行分類并協(xié)助修復(fù)。
自定義掃描程序的結(jié)果可用于填充漏洞頁面。漏洞數(shù)據(jù)是從掃描器發(fā)出的 JSON 模式填充的。
安全儀表板
安全儀表板用于評(píng)估應(yīng)用程序的安全狀況。 極狐GitLab 為您提供了項(xiàng)目上運(yùn)行的安全掃描器檢測(cè)到的漏洞的一系列指標(biāo)、評(píng)級(jí)和圖表。安全儀表板提供以下數(shù)據(jù):
- 組中所有項(xiàng)目在 30 天、60 天或 90 天時(shí)間范圍內(nèi)的漏洞趨勢(shì)
- 根據(jù)漏洞嚴(yán)重程度對(duì)每個(gè)項(xiàng)目進(jìn)行字母等級(jí)評(píng)級(jí)
- 過去 365 天內(nèi)檢測(cè)到的漏洞總數(shù)及其嚴(yán)重級(jí)別
在群組級(jí)安全儀表板中,您可以單擊項(xiàng)目以訪問其特定的安全儀表板,該儀表板提供 365 天視圖。
掃描結(jié)果策略集成
掃描結(jié)果策略用于根據(jù)一項(xiàng)或多項(xiàng)安全掃描作業(yè)的結(jié)果要求批準(zhǔn)。這可以防止不安全的代碼被合并到生產(chǎn)中。掃描結(jié)果策略在 CI 掃描作業(yè)完全執(zhí)行后進(jìn)行評(píng)估,其中策略是根據(jù)已完成的流水線中發(fā)布的作業(yè)工件報(bào)告進(jìn)行評(píng)估的。
例如,您可以創(chuàng)建一個(gè)掃描結(jié)果策略,如果密鑰檢測(cè)掃描程序發(fā)現(xiàn)任何漏洞,則需要項(xiàng)目維護(hù)人員的批準(zhǔn)。就是這樣:
1、在左側(cè)邊欄上,選擇“搜索”或轉(zhuǎn)至并搜索您要添加策略的項(xiàng)目。
2、在項(xiàng)目左側(cè)邊欄上,轉(zhuǎn)到“安全”>“策略”
3、選擇新策略
4、在“掃描結(jié)果策略”部分中,選擇“選擇策略”。
5、填寫字段:
- 名稱:策略名稱
- 描述:策略的描述
- 策略狀態(tài):是否啟用
- 規(guī)則:發(fā)生某項(xiàng)操作(需要批準(zhǔn))必須滿足的條件
操作:滿足規(guī)則中的條件(已定義的漏洞/檢測(cè)到的許可證)時(shí)要采取的操作
覆蓋項(xiàng)目審批設(shè)置:如果選擇,以下選項(xiàng)將覆蓋項(xiàng)目設(shè)置,但僅影響策略中選擇的分支
6、點(diǎn)擊“使用合并請(qǐng)求配置”按鈕。
合并掃描結(jié)果策略后,每當(dāng)您創(chuàng)建合并請(qǐng)求并且滿足規(guī)則中定義的條件時(shí),就會(huì)觸發(fā)定義的操作。在這種情況下,在合并代碼之前至少需要得到維護(hù)者的批準(zhǔn)。
自定義掃描器的結(jié)果可以與掃描結(jié)果策略完全集成。如果自定義掃描程序檢測(cè)到漏洞,則需要先獲得批準(zhǔn)才能合并代碼。您在掃描結(jié)果策略中選擇的掃描器必須利用適當(dāng)?shù)?JSON 架構(gòu)。
教程:集成自定義安全掃描器
現(xiàn)在讓我們開始有趣的部分——集成自定義安全掃描器。在本教程中,您將學(xué)習(xí)如何創(chuàng)建自定義安全掃描器,以及如何將其與極狐GitLab 集成。我們將利用以下項(xiàng)目:
- Fern 模式掃描器:掃描您的文件以查找特定模式,例如密碼、私鑰。
- 密鑰列表:包含用戶密碼、客戶端和密鑰的列表。該項(xiàng)目用于展示如何將自定義安全掃描器集成到極狐GitLab 中。
創(chuàng)建自定義安全掃描器
現(xiàn)在讓我們創(chuàng)建一個(gè)可以集成到極狐GitLab 中的自定義掃描器。在自定義掃描器與極狐GitLab 完全集成之前,掃描器必須:
- 掃描目錄中定義的模式
- 按照適當(dāng)?shù)哪J桨l(fā)出 JSON
- 容器化且可訪問
- 提供一個(gè)模板以允許它在另一個(gè)項(xiàng)目上運(yùn)行
當(dāng)使用提供的模板在項(xiàng)目上運(yùn)行 Fern 模式掃描器時(shí),它會(huì)執(zhí)行以下步驟:
1、加載一組定義要檢測(cè)的模式(正則表達(dá)式)的規(guī)則。
- 允許配置規(guī)則以滿足組織不斷變化的需求。
2、掃描文件中定義的模式。
3、按照密鑰檢測(cè)規(guī)則發(fā)出 JSON 報(bào)告。
- 此項(xiàng)目中使用 Go 模板來創(chuàng)建 JSON。
- 根據(jù)掃描器要查找的內(nèi)容,確保使用適當(dāng)?shù)募軜?gòu)。
一旦 JSON 報(bào)告作為工件加載到極狐GitLab 中,它將填充合并請(qǐng)求小部件、漏洞報(bào)告、漏洞頁面、掃描結(jié)果策略和安全儀表板(如上定義)。
將自定義安全掃描器與極狐GitLab 集成
創(chuàng)建滿足所有集成需求的自定義掃描器后,您可以在極狐GitLab 上運(yùn)行它。
運(yùn)行自定義掃描器就像添加模板一樣簡單。我們可以通過檢查Secret List 項(xiàng)目中的 .gitlab-ci.yml 來了解 Fern 模式掃描器模板是如何加載的。
在您希望掃描器運(yùn)行的項(xiàng)目中創(chuàng)建一個(gè).gitlab-ci.yml 文件。
包括自定義掃描器模板。
您還應(yīng)該能夠使用環(huán)境變量配置模板。
將文件提交到主分支。
提交文件后,您可以看到自定義掃描程序?qū)⒃谀牧魉€中運(yùn)行。流水線完成后,掃描器將填充上面在 極狐GitLab 安全掃描器集成部分中定義的所有區(qū)域。
學(xué)習(xí)極狐GitLab 的相關(guān)資料:文章來源:http://www.zghlxwxcb.cn/news/detail-855318.html
- 極狐GitLab 官網(wǎng):https://gitlab.cn
- 極狐GitLab 官網(wǎng)文檔:https://docs.gitlab.cn
- 極狐GitLab 論壇:https://forum.gitlab.cn/
- 極狐GitLab 安裝配置:https://gitlab.cn/install
搜索【極狐GitLab】公眾號(hào),后臺(tái)輸入加群,備注gitlab,即可加入官方微信技術(shù)交流群。文章來源地址http://www.zghlxwxcb.cn/news/detail-855318.html
到了這里,關(guān)于如何將自定義安全掃描器集成到極狐GitLab 中?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!