iT邦幫忙

2023 iThome 鐵人賽

DAY 22
0

前言

今年 Azure DevOps 新增了安全掃描工具 - GitHub Advanced Security for Azure DevOps,將強大的 GitHub 安全掃描工具整合進入的 Azure DevOps。前一篇文章我們曾經提到微軟淘汰了Microsoft 安全性程式碼分析 (MSCA) 擴充功能,由Microsoft Security DevOps Azure DevOps 擴充功能取代,眼尖的讀者應該會發現少了一些功能,像是實用的 Cred Scan。不可否認的,GitHub 長期發展並建立聯盟的 GitHub Advanced Security 遠比微軟所提供的 Cred Scan 來的強大,所以大概猜得到為何會淘汰 MSCA 工具,也將 Azure DevOps 稍微弱勢的安全掃瞄功能補齊了。

https://ithelp.ithome.com.tw/upload/images/20231007/20091494v82TMvF1VZ.jpg

GitHub Advanced Security for Azure DevOps 所提供的功能如下:

  • 秘密推送保護:檢查開發者再推送程式碼之前,其提交內容是否包含 Secret
  • 掃描儲存庫秘密:掃描儲存庫,並尋找開發者不小心推送的 Secret
  • 相依性掃描:搜尋開放原始碼相依性中的已知弱點
  • 程式碼掃描:透過 CodeQL 靜態分析引擎來識別程式碼層級的應用程式弱點,例如 SQL injection 和authentication bypass

 

不可否認的,其功能相當強大,但費用也不便宜:每一個提交至儲存庫不重複使用者,在90天內皆會計算為一個授權。每一個授權每個月須要 49 元美金,帳單會直接連接到 Azure 帳單。你可以在 Azure DevOps Portal > 組織設定 > Bill 確認授權與費用

https://ithelp.ithome.com.tw/upload/images/20231007/20091494H8e1IPDcV2.png

 
 

GitHub Advanced Security for Azure DevOps

啟用 GitHub Advanced Security for Azure DevOps

你可以點選 Project Setting > Repositories > All Repositories 中點用啟用開關,但此時尚未對於任何儲存庫啟用 (除非你點選上方 Enable All 按鈕,則對所有儲存庫啟用)
https://ithelp.ithome.com.tw/upload/images/20231007/20091494fCAk3EktM7.png

 

接下來,你可以隨意點入其中一個儲存庫,在 Setting 內啟用 Advanced Security,啟用同時會幫你計算會有多少授權,確認後才正式開始計費。
https://ithelp.ithome.com.tw/upload/images/20231007/20091494HqxfQbfJ3a.png

 
 

GitHub Advanced Security for Azure DevOps 功能說明

啟用後,你可以在設定下方看見自動啟用了 Block secrets on push 功能,這即為秘密推送保護 - 阻止開發人員不小心推送秘密至儲存庫的功能。

https://ithelp.ithome.com.tw/upload/images/20231007/200914946DuCJjyrzc.png

 

若要進行相依性掃描,開發人員只需要在 Pipeline YAML 內加入 AdvancedSecurity-Dependency-Scanning@1 Task 即可,執行 Pipeline 時會進行相依性檢查。或者如下圖所示,透過 Task 搜尋助理,輸入 Advanced 關鍵字即可找到相關 Task,自動產生 YAML 語法。

https://ithelp.ithome.com.tw/upload/images/20231007/20091494ads0CnLSZy.png

 
眼尖的讀者應該已經發現上圖中有程式碼掃描 Task。你只要依序加入 AdvancedSecurity-Codeql-Init@1、AdvancedSecurity-Codeql-Autobuild@1 與 AdvancedSecurity-Codeql-Analyze@1,即可進行程式碼掃描。

https://ithelp.ithome.com.tw/upload/images/20231007/20091494qqAaneztED.png

 

執行 Pipeline 後,可以在 Azure DevOps Portal 左邊選單點選 Repos > Advanced Security 檢式詳細的掃描報告
https://ithelp.ithome.com.tw/upload/images/20231007/20091494MDMNOCceAk.png


上一篇
Azure Pipeline 基本安全性掃描 - Microsoft Security DevOps Azure DevOps 擴充功能
下一篇
Azure Artifacts – 為何團隊需要 Package Management
系列文
Azure DevOps Troubleshooting and best practices 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言