Google Cloud 提供一系列全面的模組化功能和工具,可供開發人員、開發運作和安全團隊使用,以提升軟體供應鏈的安全性。 Google Cloud
軟體供應鏈
軟體供應鏈包含所有程式碼、人員、系統和程序,這些項目有助於開發及交付軟體,無論是貴機構內部或外部皆然。It includes:
- 您建立的程式碼、程式碼的依附元件,以及您用來開發、建構、封裝、安裝及執行軟體的內部和外部軟體。
- 系統存取、測試、審查、監控和意見回饋、溝通及核准的程序和政策。
- 您信任的系統,可開發、建構、儲存及執行軟體及其依附元件。
軟體供應鏈涵蓋範圍廣泛且複雜,因此有許多方法可對您提供給使用者的軟體進行未經授權的變更。這些攻擊媒介涵蓋軟體生命週期。有些攻擊是針對特定目標,例如對 SolarWinds 建構系統的攻擊,其他威脅則屬於間接攻擊,或是透過程序中的弱點或疏忽進入供應鏈。
舉例來說,Google Open Source Insights 團隊在 2021 年 12 月評估 Apache Log4j 安全漏洞時,發現 Maven Central 中有超過 17,000 個受影響的套件。這些套件大多並非直接依附於有漏洞的 log4j-core
套件,而是依附於需要該套件的套件。
開發做法和程序也會影響軟體供應鏈。如果缺乏程式碼審查或部署至正式環境的安全條件等程序,可能導致錯誤程式碼無意間進入供應鏈。同樣地,如果缺乏依附元件管理機制,您在開發、建構或部署時使用的外部來源或軟體套件,就可能造成安全漏洞。
在 Google Cloud
Google Cloud 提供:
- 產品和功能採用安全性最佳做法,可協助您進行開發、建構、測試、部署及政策執行。
- Google Cloud 控制台中的資訊主頁,提供來源、建構、構件、部署和執行階段的安全性資訊。這類資訊包括建構構件中的安全漏洞、建構出處,以及軟體物料清單 (SBOM) 依附元件清單。
- 使用軟體構件供應鏈級別 (SLSA) 架構,識別軟體供應鏈安全性的成熟度。
下圖顯示共同運作的服務,可保護軟體供應鏈。 Google Cloud 您可以將部分或所有這些元件整合到軟體供應鏈中,提升安全防護設定。
保護開發環境
Cloud Workstations 提供 Google Cloud上的全代管開發環境。IT 和安全管理員可以佈建、調度資源、管理及保護開發環境。開發人員可以存取設定一致的開發環境,並自訂工具。
Cloud Workstations 可強化應用程式開發環境的安全防護,提前確保安全。安全防護功能包括 VPC Service Controls、私人輸入或輸出、強制更新映像檔,以及 Identity and Access Management 存取權政策。搭配 Chrome Enterprise 進階版使用時,Cloud Workstations 可提供額外的資料遺失防護功能。
保護軟體供應鏈
確保軟體供應安全 (建構構件和應用程式依附元件) 是提升軟體供應鏈安全性的重要步驟。開放原始碼軟體廣泛使用,使得這個問題特別難以解決。
Assured Open Source Software 提供 Google 驗證及測試的開放原始碼套件。這些套件是使用 Google 的安全管道建構而成,並會定期掃描、分析及測試安全漏洞。
Artifact Registry 是通用套件管理工具,可用於管理所有建構構件和依附元件。集中管理所有構件和依附元件,可讓您進一步瞭解及控管軟體供應鏈中的程式碼。
- 遠端存放區會儲存來自預設外部來源的構件,例如 Docker Hub、Maven Central、Python Package Index (PyPI)、Debian 或 CentOS,以及使用者定義的支援格式來源。在遠端存放區中快取構件可縮短下載時間、提高套件可用性,並在啟用掃描功能時進行安全漏洞掃描。
- 虛擬存放區會將相同格式的存放區整合至單一端點,並讓您控管上游存放區的搜尋順序。您可以優先處理私有套件,降低依附元件混淆攻擊的風險
- 您也可以設定存取權控管、VPC Service Controls 服務範圍、機構政策和其他安全防護功能,保護構件。詳情請參閱 Artifact Registry 說明文件。
構件分析會主動偵測 Artifact Registry 中構件的安全漏洞。
- 整合隨選或自動掃描功能,可掃描容器中的基礎容器映像檔和語言套件。
- 可產生軟體物料清單 (SBOM),並為 Artifact Registry 中的映像檔上傳安全漏洞可利用性交換 (VEX) 陳述式。
保護 CI/CD 管道
惡意人士可能會入侵 CI/CD 管道,藉此攻擊軟體供應鏈。下列產品可協助您保護 CI/CD 管道:
Cloud Build 會在 Google Cloud基礎架構上執行建構作業。安全防護功能包括精細的 IAM 權限、VPC Service Controls,以及隔離與暫時的建構環境。軟體供應鏈安全防護專屬功能包括:
- 支援容器映像檔的 SLSA 第 3 級建構作業。
- 能夠為容器化應用程式產生經過驗證且無法偽造的建構出處。
安全性深入分析 適用於建構的應用程式。包括:
- SLSA 建構層級,可根據 SLSA 規格,判斷軟體建構程序的成熟度。
- 建構作業構件中的安全漏洞。
- 建構來源,這是指一組可驗證的建構中繼資料。包括建構的映像檔摘要、輸入來源位置、建構工具鍊、建構步驟和建構時長等詳細資料。
如要瞭解如何查看所建構應用程式的安全性深入分析資訊,請參閱「建構應用程式並查看安全性深入分析資訊」。
Cloud Deploy 會依照定義的順序,自動將應用程式推送至眾多目標環境。這項服務支援直接將軟體更新推送至 Google Kubernetes Engine、GKE Enterprise 和 Cloud Run,並提供一鍵核准和復原、企業安全性和稽核,以及內建的推送指標。此外,還會顯示已部署應用程式的安全性洞察資料。
保護正式版應用程式
Google Kubernetes Engine (GKE) 和 Cloud Run 可協助確保執行階段環境的安全狀態。兩者都具備安全防護功能,可在執行階段保護應用程式。
GKE 可評估容器安全防護機制,並針對叢集設定、工作負載設定和安全漏洞提供主動式指引。GKE 內建安全防護機制資訊主頁,可提供具體可行的建議,協助您提升安全防護機制。如要瞭解如何在 GKE 安全防護機制資訊主頁中查看安全性深入分析資訊,請參閱「部署至 GKE 並查看安全性深入分析資訊」。
Cloud Run 內含安全面板,可顯示軟體供應鏈安全洞察資訊,例如 SLSA 建構層級合規資訊、建構來源,以及執行中服務中發現的安全漏洞。如要瞭解如何在 Cloud Run 安全性深入分析面板中查看安全性深入分析資訊,請參閱「部署至 Cloud Run 並查看安全性深入分析資訊」。
透過政策建立信任鏈
二進位授權會收集認證 (認證是可驗證映像檔的數位文件),協助您在軟體供應鏈中建立、維護及驗證信任鏈。
認證表示相關聯的映像檔是透過成功執行特定必要程序所建構。根據收集到的這些認證,二進位授權可協助定義、驗證及強制執行信任型政策。確保系統只會在認證符合貴機構政策時部署映像檔。您可以設定二進位授權,在發現任何違規政策時通知您。
舉例來說,認證可指出圖片是否:
- 由 Cloud Build 建構。
- 不含高於指定嚴重程度的安全漏洞。 如果特定安全漏洞不適用於您的應用程式,可以將這些漏洞加入許可清單。
您可以搭配 GKE 和 Cloud Run 使用二進位授權。
定價
每項 Google Cloud 服務的價格各不相同,詳情請參閱您感興趣的服務定價說明文件。
- Cloud Workstations
- Cloud Code:所有 Google Cloud 客戶皆可免費使用。
- Assured OSS:如需定價資訊,請與銷售團隊聯絡。
- Artifact Registry
- Artifact Analysis
- Cloud Build
- Cloud Deploy
- Cloud Run
- GKE
- 二進位授權
後續步驟
- 瞭解軟體供應鏈的威脅。
- 評估現有的安全防護機制,找出可加強之處。
- 瞭解保護軟體供應鏈的做法,以及 Google Cloud 產品如何支援這些做法。