概要
遠端 Red Hat CoreOS 主機缺少一個或多個適用於 OpenShift Container Platform 4.13.0 的安全性更新。
說明
遠端 Red Hat Enterprise Linux CoreOS 4 主機上安裝的套件受到 RHSA-2023: 1325 公告中提及的弱點影響。
- 適用於 Go 的 golang.org/x/crypto/ssh 套件 0.0.0-20220314234659-1baeb1ce4c0b 之前版本在涉及 AddHostKey 的某些情況下允許攻擊者造成伺服器當機。(CVE-2022-27191)
- Buildah 容器引擎中存在附加群組處理不正確問題,這可能導致敏感資訊洩漏或資料修改,但前提是攻擊者可以直接存取受影響的容器 (其中使用附加群組來設定存取權限,並且附加群組能夠在此容器中執行二進位檔)。(CVE-2022-2990)
- Openshift 4.9 未使用 HTTP Strict Transport Security (HSTS),因為可能會發生攔截式 (MITM) 攻擊。(CVE-2022-3259)
- 攻擊者可在接受 HTTP/2 要求的 Go 伺服器中造成記憶體過度增長。HTTP/2 伺服器連線包含用戶端傳送的 HTTP 標頭金鑰快取。雖然此快取中的項目總數設有上限,但攻擊者如果傳送非常大的金鑰,即可造成伺服器為每個開啟的連線配置大約 64 MiB。(CVE-2022-41717)
- Windows 中的 filepath.Clean 存在路徑遊走弱點。在 Windows 中,filepath.Clean 函式可將無效路徑 (例如 a/../c: /b 轉換為有效路徑 c:\b。相對路徑 (若無效) 的這種轉換可觸發目錄遊走攻擊。修正之後,filepath.Clean 函式會將此路徑轉換為相對 (但仍無效的) 路徑。\c:\b。(CVE-2022-41722)
- 惡意特製的 HTTP/2 串流可造成 HPACK 解碼器中發生 CPU 過度佔用問題,透過少量小型要求即可造成程式拒絕服務。(CVE-2022-41723)
- 大量交握記錄可造成 crypto/tls 發生錯誤。用戶端和伺服器都可能傳送大量 TLS 交握記錄,這會分別造成伺服器和用戶端在嘗試建構回應時發生錯誤。此問題會影響所有 TLS 1.3 用戶端、明確啟用工作階段恢復的 TLS 1.2 用戶端 (透過將 Config.ClientSessionCache 設為非 nil 值),以及要求用戶端憑證的 TLS 1.3 伺服器 (透過設定 Config.ClientAuth >= RequestClientCert)。(CVE-2022-41724)
- net/http 和 mime/multipart 中可能存在因資源消耗過度導致的拒絕服務問題。
使用 mime/multipart.Reader.ReadForm 剖析 Multipart 表單時,可能會大量消耗無限量的記憶體和磁碟檔案。這也會影響 net/http 套件中使用 Request 方法 FormFile、FormValue、ParseMultipartForm 和 PostFormValue 剖析表單的情況。ReadForm 採用 maxMemory 參數,並記錄為在記憶體中最多儲存 maxMemory 位元組 +10MB (為非檔案部分保留的空間)。無法儲存在記憶體中的檔案部分會儲存在磁碟上的暫存檔中。為非檔案部分保留的無法設定的 10MB 過大,可能會自行開啟拒絕服務媒介。但是,ReadForm 並未正確考量已剖析表單消耗的所有記憶體,例如對應項目額外負荷、部分名稱和 MIME 標頭,這允許惡意製作的表單消耗記憶體容量超過 10MB。此外,ReadForm 對建立的磁碟檔案數量沒有限制,允許相對較小的要求內文建立大量的磁碟暫存檔。修正後,ReadForm 現在會正確考量各種形式的記憶體額外負荷,並且現在應保持在其記錄的 10MB + maxMemory 位元組記憶體消耗範圍內。使用者仍應注意,此限制較高且可能仍然存在危險。此外,ReadForm 現在最多可建立一個磁碟上暫存檔,將多個表單部分合併為一個暫存檔。mime/multipart.File 介面類型的文件指出,如果儲存在磁碟上,檔案的基礎具體類型將為 *os.File.。如果表單包含多個檔案部分,則因為要將部分合併到一個檔案中,所以情況不再如此。之前針對每個表單部分使用不同檔案的行為,可透過環境變數 GODEBUG=multipartfiles=distinct 重新啟用。使用者應注意,multipart.ReadForm 和呼叫它的 http.Request 方法不會限制暫存檔消耗的磁碟量。呼叫者可使用 http.MaxBytesReader 限製表單資料的大小。(CVE-2022-41725)
- 在 HAProxy 中發現不受控制的資源消耗弱點,此弱點可造成服務損毀。經驗證的遠端攻擊者可利用此弱點在 OpenShift 叢集中執行特製的惡意伺服器。此弱點主要影響可用性。(CVE-2023-0056)
- 在 OpenShift 4.12 和 4.11 的 github.com/openshift/apiserver-library-go 中發現一個缺陷,其中包含一個可允許低權限使用者將其所控制的 pod 的 seccomp 設定檔設定為不受限制的問題。根據預設,restricted-v2 Security Context Constraint (SCC) 中使用的 seccomp 設定檔為 runtime/default,允許使用者針對其可建立和修改的 pod 停用 seccomp。
(CVE-2023-0229)
- 在 podman 中發現檢查時間使用時間 (TOCTOU) 缺陷。此問題可能允許惡意使用者在匯出磁碟區時,將磁碟區中的一般檔案取代為符號連結,進而可存取主機檔案系統上的任意檔案。(CVE-2023-0778)
- Werkzeug 是一個全面的 WSGI Web 應用程式程式庫。在低於 2.2.3 版的 Werkzeug 中,多部分錶單資料剖析器將剖析無限數量的部分,包括檔案部分。部分可以是少量的位元組,但每個部分都需要 CPU 時間來剖析,而且可能會使用更多的記憶體作為 Python 資料。如果可以對存取 `request.data`、`request.form`、`request.files` 或 `request.get_data(parse_form_data=False)` 的端點提出要求,就會造成非預期的高資源使用率。這可讓攻擊者透過將特製的多部分資料傳送至將剖析該資料的端點,造成拒絕服務。
所需的 CPU 時間可阻止背景工作處理程序處理合法要求。所需的 RAM 量可觸發處理程序的記憶體不足終止。無限檔案部分會耗盡記憶體和檔案控制代碼。如果連續傳送許多並行要求,這會耗盡或終止所有可用的背景工作。2.2.3 版包含針對此問題的修補程式。(CVE-2023-25577)
- 2.7.3 版之前的 HAProxy 可能允許繞過存取控制,因為在某些情況下會意外遺失 HTTP/1 標頭,即要求走私。HAProxy 中的 HTTP 標頭剖析器可能接受空白標頭欄位名稱,其可用於截斷 HTTP 標頭清單,因而使部分標頭在針對 HTTP/1.0 和 HTTP/1.1 剖析和處理後消失。而對於 HTTP/2 和 HTTP/3 的影響有限,因為標頭在剖析和處理之前就消失了,彷彿標頭不是由用戶端傳送的一樣。已修正版本是 2.7.3、2.6.9、2.5.12、2.4.22、2.2.29 和 2.0.31。(CVE-2023-25725)
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
更新 RHCOS OpenShift Container Platform 4.13.0 套件,依據 RHSA-2023: 1325 中的指南。
Plugin 詳細資訊
檔案名稱: rhcos-RHSA-2023-1325.nasl
代理程式: unix
支援的感應器: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus
風險資訊
媒介: CVSS2#AV:N/AC:M/Au:N/C:N/I:N/A:P
媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
時間媒介: CVSS:3.0/E:P/RL:O/RC:C
弱點資訊
CPE: cpe:/o:redhat:enterprise_linux:8:coreos, cpe:/o:redhat:enterprise_linux:9:coreos, p-cpe:/a:redhat:enterprise_linux:buildah, p-cpe:/a:redhat:enterprise_linux:buildah-tests, p-cpe:/a:redhat:enterprise_linux:haproxy22, p-cpe:/a:redhat:enterprise_linux:openshift-clients, p-cpe:/a:redhat:enterprise_linux:openshift-clients-redistributable, p-cpe:/a:redhat:enterprise_linux:openshift-hyperkube, p-cpe:/a:redhat:enterprise_linux:podman, p-cpe:/a:redhat:enterprise_linux:podman-catatonit, p-cpe:/a:redhat:enterprise_linux:podman-docker, p-cpe:/a:redhat:enterprise_linux:podman-gvproxy, p-cpe:/a:redhat:enterprise_linux:podman-plugins, p-cpe:/a:redhat:enterprise_linux:podman-remote, p-cpe:/a:redhat:enterprise_linux:podman-tests, p-cpe:/a:redhat:enterprise_linux:python3-werkzeug, p-cpe:/a:redhat:enterprise_linux:skopeo, p-cpe:/a:redhat:enterprise_linux:skopeo-tests
必要的 KB 項目: Host/local_checks_enabled, Host/RedHat/release, Host/RedHat/rpm-list, Host/cpu
可輕鬆利用: Exploits are available
參考資訊
CVE: CVE-2022-27191, CVE-2022-2990, CVE-2022-3259, CVE-2022-41717, CVE-2022-41722, CVE-2022-41723, CVE-2022-41724, CVE-2022-41725, CVE-2023-0056, CVE-2023-0229, CVE-2023-0778, CVE-2023-25577, CVE-2023-25725