Podman 6.2 推出 修補三個容器供應鏈與隔離漏洞

2026年11月10日,Podman 專案發布 Podman 6.2.0,一次過修補三個安全漏洞,並為 Kubernetes 工作流程、Quadlet 與日常指令加入多項新選項。由於三個漏洞都涉及映像驗證或容器隔離,自行架設容器平台的用戶宜優先升級。[1]

自動更新與映像驗證的漏洞

第一個漏洞編號 CVE-2026-121885。Podman 的 auto-update 功能會按容器映像內的標籤決定重啟哪個 systemd 單元,但這些標籤來自不受信任的映像,攻擊者可藉此誘使系統重啟錯誤的單元。[1]

第二個漏洞 CVE-2026-111361 更直接影響供應鏈信任:惡意容器映像可以繞過 digest 與簽署驗證,令管理員以為正在運行已簽署的映像,實際上卻是另一份內容。第三個漏洞 CVE-2026-123876 則關於預設 seccomp 設定檔,惡意容器可以繞過其中針對 socket 的拒絕規則。[1]

三者合起來,正好覆蓋容器平台最關鍵的三道防線:更新流程、映像來源驗證與執行期系統呼叫限制。修補已包含在 6.2.0,發行說明亦連結至對應的 GitHub 安全公告;其中 auto-update 的單元重啟問題另設專屬公告。[1][2]

Kubernetes 工作流程更貼近原生行為

podman kube play 在 6.2 加入 --validate 選項,讓用戶決定如何處理無法辨識的 YAML 欄位;--label 可為建立的容器、Pod、磁碟區與密鑰加上標籤;--multiple-pods 則可在 deployment 要求多於一個副本時建立多個 Pod。--build 亦支援由主上下文目錄的子目錄建置映像。[1]

Seccomp 設定亦正式改用 Kubernetes YAML 的 securityContext.seccompProfile 欄位。原有的註解式設定已列為棄用,並預告在 Podman 7.0 移除,現有清單宜及早遷移。[1]

Quadlet 與日常操作

Quadlet 的 .container 檔案新增 Umask 鍵,可設定容器預設的 umask;所有 Quadlet 檔案亦支援 SetMountsDependency,讓用戶決定生成的 systemd 單元對來源路徑採用 RequiresMountsFor、WantsMountsFor 還是完全不設依賴。[1]

日常指令方面,podman push 新增 --platform,可只推送單一平台的 manifest,而非整個 manifest list;podman auto-update 支援 --filter 選擇性更新,並且終於可以在遠端客戶端使用;podman artifact ls 加入 JSON 輸出;podman ps --filter 新增 status! 以篩選不在指定狀態的容器。[1]

升級注意

建置 Podman 現在要求 Go 1.26 或以上,自行編譯的發行版要同步更新工具鏈。Podman machine 的 WSL 供應器改用原生 systemd 支援,最低要求 WSL 2.5.1,官方建議至少 2.7.5 以獲得正確的 nftables 網絡支援。[1]

已棄用的 --cpu-rt-period 與 --cpu-rt-runtime 選項已被隱藏,並會在 Podman 7.0 完全移除;由於 cgroups v1 支援早已撤除,這兩個選項實際上一直沒有作用。升級前亦應檢查依賴註解式 seccomp 設定的自動化腳本。[1]

參考資料

[1] Podman v6.2.0 Release Notes(2026年11月10日)

[2] GHSA-55rm-rwr7-q2wr:auto-update 單元重啟漏洞公告

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

*