Amazon Linux 2:edk2,--advisory ALAS2-2024-2502 (ALAS-2024-2502)

high Nessus Plugin ID 192206

概要

遠端 Amazon Linux 2 主機缺少安全性更新。

說明

因此,會受到 ALAS2-2024-2502 公告中所提及的多個弱點影響。

在 openssl 中發現 Null 指標解除參照缺陷。遠端攻擊者若能控制 GENERAL_NAME_cmp 函式的引數,造成使用 openssl 編譯的應用程式毀損,進而導致拒絕服務。此弱點對系統可用性威脅最大。(CVE-2020-1971)

在某些情況下,若輸入長度接近平台上整數的最大允許長度,呼叫 EVP_CipherUpdate、EVP_EncryptUpdate 和 EVP_DecryptUpdate 可能造成輸出長度引數溢位。在此類情況下,函式呼叫的傳回值將為 1 (表示成功),但輸出長度值將為負值。這可造成應用程式的行為不正確或損毀。
(CVE-2021-23840)

OpenSSL 公開 API 函式 X509_issuer_and_serial_hash() 嘗試根據 X509 憑證中所含的簽發者和序號資料建立唯一的雜湊值。但是,它無法正確處理剖析簽發者欄位時可能發生的任何錯誤 (如果簽發者欄位遭到惡意建構,則可能發生此類錯誤)。之後,這可能導致 NULL 指標解除參照和當機,進而導致潛在的拒絕服務攻擊。(CVE-2021-23841)

在 openssl 中發現一個瑕疵。如果用戶端傳送 TLSv1.2 重新協商 ClientHello 並省略 signature_algorithms 延伸模組,但是包含 signature_algorithms_cert 延伸模組,則可發生伺服器當機和拒絕服務攻擊。此弱點對系統可用性威脅最大。
(CVE-2021-3449)

在 openssl 中發現一個瑕疵。未啟用會對憑證鏈結中存在之憑證啟用其他安全性檢查的旗標,使得驗證鏈結中憑證是否為有效 CA 憑證的確認步驟被略過。此弱點對資料機密性與完整性的威脅最大。(CVE-2021-3450)

據發現,openssl 會假設 ASN.1 字串是以 NULL 終止。惡意執行者可以強制應用程式使用特製的非 NUL 終止字串呼叫 openssl 函式,刻意遭遇此錯誤,進而可能導致應用程式損毀,造成拒絕服務攻擊,或者可能記憶體洩漏。此弱點對資料機密性及系統可用性的威脅最大。(CVE-2021-3712)

BN_mod_sqrt() 函式專用於計算模組化平方根,其中包含一個可導致其針對非質數模數永遠執行迴圈的錯誤。在內部剖析包含壓縮形式的橢圓曲線公開金鑰或具有以壓縮形式編碼之基點的顯式橢圓曲線參數時,會使用此函式。透過建構具有無效顯式曲線參數的憑證,可能會觸發無限迴圈。由於憑證剖析發生在驗證憑證簽章之前,因此任何剖析外部提供之憑證的處理程序都可能遭受拒絕服務攻擊。也可以在剖析建構的私密金鑰時造成無限迴圈,因為這些金鑰中可能包含顯式橢圓曲線參數。因此,易受攻擊的情況包括:使用伺服器憑證的 TLS 伺服器 - 使用用戶端憑證的 TLS 伺服器 - 從客戶處取得憑證或私密金鑰的主機供應商 - 剖析來自使用者憑證要求的認證機構 - 剖析 ASN.1 橢圓曲線參數的任何其他應用程式,以及使用 BN_mod_sqrt() 的任何其他應用程式 (其中攻擊者可控制容易受到此 DoS 問題影響的參數值)。在 OpenSSL 1.0.2 版本中,最初剖析憑證期間並未剖析公開金鑰,進而導致觸發無限迴圈變得略微困難。不過,任何需要憑證公開金鑰的作業都會觸發無限迴圈。特別是,攻擊者可在驗證憑證簽章期間使用自我簽署憑證觸發迴圈。OpenSSL 1.0.2、 1.1.1 和 3.0 會受到此問題影響。此問題已在 2022 年 3 月 15 日發布的 1.1.1n 和 3.0.2 版本中得到解決。已在 OpenSSL 3.0.2 中修復 (受影響的是 3.0.0、3.0.1)。已在 OpenSSL 1.1.1n 中修復 (受影響的是 1.1.1-1.1.1m)。已在 OpenSSL 1.0.2zd 中修正 (受影響的是 1.0.2-1.0.2zc)。(CVE-2022-0778) (CVE-2022-0778)

c_rehash 指令碼未正確清理殼層中繼字元以防止命令插入。某些作業系統會以自動執行的方式發佈此指令碼。在這類作業系統上,攻擊者可以透過指令碼的權限執行任意命令。c_rehash 指令碼的使用已過時,應由 OpenSSL rehash 命令列工具取代。
已在 OpenSSL 3.0.3 中修復 (受影響的是 3.0.0、3.0.1、3.0.2)。已在 OpenSSL 1.1.1o 中修復 (受影響的是 1.1.1-1.1.1n)。
已在 OpenSSL 1.0.2ze 中修復 (受影響的是 1.0.2-1.0.2zd)。(CVE-2022-1292)

在 OpenSSL 中發現一個瑕疵。CVE-2022-1292 中的問題未在 `c_rehash` 指令碼中的其他位置發現雜湊憑證的檔案名稱可能會傳遞至透過 shell 執行的命令。某些作業系統會以自動執行的方式發佈此指令碼。在這些作業系統中,此瑕疵會使得攻擊者能夠透過指令碼的權限執行任意命令。(CVE-2022-2068)

在某些情況下,使用 AES-NI 組件最佳化實作的 32 位元 x86 平台的 AES OCB 模式將不會加密完整的資料。這可能會洩漏預先存在於未寫入記憶體中的 16 位元組資料。在就地加密的特殊情況下,會洩漏純文字的 16 位元組。由於 OpenSSL 不支援適用於 TLS 和 DTLS 的 OCB 型加密套件,因此兩者均不受影響。已在 OpenSSL 3.0.5 中修復 (受影響的是 3.0.0-3.0.4)。已在 OpenSSL 1.1.1q 中修正 (受影響的是 1.1.1-1.1.1p)。(CVE-2022-2097)

OpenSSL RSA Decryption 實作中存在計時型旁路,其足可在 Bleichenbacher 式攻擊中跨網路復原密文。若要成功解密,攻擊者必須能夠傳送大量的試用訊息以進行解密。此問題會影響所有 RSA 填補模式:PKCS#1 v1.5、RSA-OEAP 和 RSASVE。(CVE-2022-4304)

PEM_read_bio_ex() 函式會從 BIO 讀取 PEM 檔案,並剖析和解碼名稱 (例如:
CERTIFICATE)、任何標題資料和負載資料。如果函式成功運行,則使用包含相關解碼資料之緩衝區的指標填入 name_out、標頭和資料引數。
呼叫者負責釋放這些緩衝區。攻擊者可以建構會產生 0 位元組承載資料的 PEM 檔案。在此情況下,PEM_read_bio_ex() 會傳回失敗程式碼,但會在標頭引數中填入已釋放的緩衝區指標。如果呼叫者也釋放此緩衝區,則會發生雙重釋放。這很可能會導致當機。能夠提供惡意 PEM 檔案進行剖析的攻擊者可利用此弱點發動拒絕服務攻擊。

PEM_read_bio() 和 PEM_read() 函式是 PEM_read_bio_ex() 的簡單包裝函式,因此這些函式也會直接受到影響。

其他一些 OpenSSL 函式也會間接呼叫這些函式,包括同樣容易遭受攻擊的 PEM_X509_INFO_read_bio_ex() 和 SSL_CTX_use_serverinfo_file()。若在 OpenSSL 內部使用部分此類函式,則不會受到影響,因為如果 PEM_read_bio_ex() 傳回失敗程式碼,呼叫者將不會釋放標頭引數。這些位置包括 PEM_read_bio_TYPE() 函式以及 OpenSSL 3.0 中引入的解碼器。

OpenSSL asn1parse 命令行應用程式也受此問題影響。(CVE-2022-4450)

在 OpenSSL 的 BIO_new_NDEF 函式中發現一個釋放後使用弱點。公開 API 函式 BIO_new_NDEF 是用於透過 BIO 串流 ASN.1 資料的協助程式函式。此函式主要供 OpenSSL 內部使用,以支援 SMIME、CMS 和 PKCS7 串流功能,但也可能由終端使用者應用程式直接呼叫。此函式會接收來自呼叫者的 BIO,並在前面附加新的 BIO_f_asn1 篩選器 BIO 以形成 BIO 鏈結,然後將 BIO 鏈結的新標頭傳回給呼叫者。在某些情況下。例如,如果 CMS 收件人公開金鑰無效,則新篩選器 BIO 會被釋放,並且該函式會傳回 NULL 結果,表明失敗。但在此情況下,BIO 鏈結未經正確清理,且呼叫者傳送的 BIO 仍保留先前釋放的篩選器 BIO 的內部指標。如果呼叫者隨後呼叫 BIO 上的 BIO_pop(),將會發生釋放後使用錯誤,進而可能導致當機。(CVE-2023-0215)

當 OpenSSL X.400 位址在 X.509 GeneralName 內部進行處理時,在 OpenSSL 中發現有類型混淆弱點。啟用 CRL 檢查時 (例如應用程式設定 X509_V_FLAG_CRL_CHECK 旗標),此弱點可能允許攻擊者向 memcmp 呼叫傳遞任意指標,使其能夠讀取記憶體內容或造成拒絕服務攻擊。在大多數情況下,攻擊者需要同時提供憑證鍊和 CRL,以上兩者都不需要有效的簽章。如果攻擊者只控制其中一個輸入,則另一個輸入必須已包含 X.400 位址作為 CRL 發佈點,此情況並不常見。在此情況下,此弱點有可能僅會影響已實作透過網路擷取 CRL 這一功能的應用程式。(CVE-2023-0286)

在所有受支援的 OpenSSL 版本中發現一個與驗證包含原則限制的 X.509 憑證鏈相關的安全性弱點。攻擊者可能會建立惡意憑證鏈,觸發計算資源的指數使用,進而惡意利用此弱點,對受影響的系統發動拒絕服務 (DoS) 攻擊。原則處理預設爲禁用狀態,但若將 -policy 引數傳遞至命令行公用程式,或呼叫 X509_VERIFY_PARAM_set1_policies() 函式,即可啟用原則處理。(CVE-2023-0464)

驗證憑證時使用非預設選項的應用程式可能容易遭受惡意 CA 的攻擊,進而規避特定檢查。OpenSSL 會以無訊息方式忽略分葉憑證中的無效憑證原則,並略過該憑證的其他憑證原則檢查。惡意 CA 可利用此弱點,刻意宣告無效的憑證原則,以完全規避憑證的原則檢查。原則處理預設爲禁用狀態,但若將 -policy 引數傳遞至命令行公用程式,或呼叫 X509_VERIFY_PARAM_set1_policies() 函式,即可啟用原則處理。(CVE-2023-0465)

X509_VERIFY_PARAM_add0_policy() 函式被記錄為在進行憑證驗證時隱含啟用憑證原則檢查。不過,此函式的實作並未啟用這一檢查,因而會造成含有無效或錯誤原則的憑證通過憑證驗證。
由於突然啟用原則檢查可能會中斷現有部署,因此決定保留 X509_VERIFY_PARAM_add0_policy() 函式的現有行為。需要 OpenSSL 才能執行憑證原則檢查的應用程式需要使用 X509_VERIFY_PARAM_set1_policy(),或透過以 X509_V_FLAG_POLICY_CHECK 旗標引數呼叫 X509_VERIFY_PARAM_set_flags(),來明確啟用原則檢查。
OpenSSL 中預設停用憑證原則檢查,應用程式亦未普遍使用此檢查。
(CVE-2023-0466)

問題摘要:處理某些特製的 ASN.1 物件識別碼或包含這些識別碼的資料可能會非常緩慢。

影響摘要:對於直接使用 OBJ_obj2txt() 或使用任何 OpenSSL 子系統 OCSP、PKCS7/SMIME、CMS、CMP/CRMF 或 TS 的應用程式,它們在處理這些訊息時可能造成拒絕服務。

OBJECT IDENTIFIER 由一系列數字 (子識別碼) 組成,其中大部分沒有大小限制。OBJ_obj2txt() 可用於將以 DER 編碼形式 (使用 OpenSSL 類型 ASN1_OBJECT) 提供的 ASN.1 OBJECT IDENTIFIER 轉譯為其規範數值文字形式,即以句點分隔的十進位形式的 OBJECT IDENTIFIER 子識別碼。

當 OBJECT IDENTIFIER 中的其中一個子識別碼非常大 (大得離譜,佔用數十或數百 KiB) 時,在文字中轉譯為十進位數字可能需要很長的時間。時間複雜度為 O(n^2),其中「n」是以位元組 (*) 為單位的子識別碼大小。

OpenSSL 3.0 版引入了使用字串形式的名稱/識別碼擷取密碼編譯演算法的支援。這包括使用規範數值文字形式的 OBJECT IDENTIFIER 作為擷取演算法的識別碼。

此類 OBJECT IDENTIFIER 可透過 ASN.1 結構 AlgorithmIdentifier 接收,該結構常用於多個通訊協定,以指定應使用何種密碼編譯演算法來簽署或驗證、加密或解密,或摘要式傳遞的資料。

直接使用未受信任的資料呼叫 OBJ_obj2txt() 的應用程式會受到任何 OpenSSL 版本的影響。如果僅用於顯示目的,則認為低嚴重性。

在 OpenSSL 3.0 和更新版本中,這會影響子系統 OCSP、PKCS7/SMIME、CMS、CMP/CRMF 或 TS。它也會影響處理 X.509 憑證的任何項目,包括驗證其簽章等簡單項目。

對 TLS 的影響相對較低,因為所有版本的 OpenSSL 在對等端的憑證鏈上都有 100KiB 的限制。此外,這只會影響已明確啟用用戶端驗證的用戶端或伺服器。

在 OpenSSL 1.1.1 和 1.0.2 版中,這只會影響顯示不同的物件,例如 X.509 憑證。我們假設此問題不會以會造成拒絕服務的方式發生,因此這些版本不會受到此問題的影響,進而被視為低嚴重性。(CVE-2023-2650)

問題摘要:檢查過長的 DH 金鑰或參數時可能會非常緩慢。

影響摘要:使用 DH_check()、DH_check_ex() 或 EVP_PKEY_param_check() 函式檢查 DH 金鑰或 DH 參數的應用程式可能會遇到長時間延遲。如果要檢查的金鑰或參數是從未受信任的來源取得,這可能會導致拒絕服務。

DH_check() 函式會對 DH 參數執行各種檢查,其中一項檢查會確認模數 (「p」參數) 不是太大。嘗試使用非常大的模數時執行速度會變慢,且 OpenSSL 通常不會使用長度超過 10,000 位元的模數。

不過,DH_check() 函式會檢查已提供金鑰或參數的多個方面。
有些檢查會使用提供的模數值,即使已發現此模數值過大亦然。

應用程式如果呼叫 DH_check() 並提供從未受信任的來源取得之金鑰或參數,可能容易遭受拒絕服務攻擊。

DH_check() 函式本身會受到一些其他 OpenSSL 函式的呼叫。呼叫其他任何函式的應用程式可能會受到類似影響。受此問題影響的其他函式為 DH_check_ex() 和 EVP_PKEY_param_check()。

使用「-check」選項時,OpenSSL dhparam 和 pkeyparam 命令行應用程式也容易受到影響。

OpenSSL SSL/TLS 實作不受此問題影響。OpenSSL 3.0 和 3.1 FIPS 提供者不受此問題影響。(CVE-2023-3446)

問題摘要:產生過長的 X9.42 DH 金鑰或檢查過長的 X9.42 DH 金鑰或參數時可能會非常緩慢。

- 問題摘要:使用 DH_generate_key() 函式產生 X9.42 DH 金鑰的應用程式可能會遇到長時間延遲。同樣地,使用 DH_check_pub_key()、DH_check_pub_key_ex() 或 EVP_PKEY_public_check() 檢查 X9.42 DH 金鑰或 X9.42 DH 參數的應用程式可能會遇到長時間延遲。如果正在進行檢查的金鑰或是參數已經透過未受信任的來源取得,如此可能導致拒絕。

雖然 DH_check() 會執行所有必要的檢查 (截至 CVE-2023-3817),但 DH_check_pub_key() 並不會進行任何此類檢查,因此容易受到過大的 P 和 Q 參數的影響。

同樣地,當 DH_generate_key() 執行檢查是否有過大的 P 時,它不會檢查過大的 Q。

應用程式如果呼叫 DH_generate_key() 或 DH_check_pub_key() 並提供從未受信任之來源取得的金鑰或參數,則容易遭受拒絕服務攻擊。

DH_generate_key() 和 DH_check_pub_key() 也會被其他許多 OpenSSL 函式呼叫。呼叫任何其他函式的應用程式亦可能會受到類似影響。受此問題影響的其他函式包括 DH_check_pub_key_ex()、EVP_PKEY_public_check() 和 EVP_PKEY_generate()。

使用 -pubcheck 選項時的 OpenSSL pkey 命令行應用程式,以及 OpenSSL genpkey 命令行應用程式也容易受到影響。

OpenSSL SSL/TLS 實作不受此問題影響。

OpenSSL 3.0 和 3.1 FIPS 提供者不受此問題影響。(CVE-2023-5678)

Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。

請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。

解決方案

執行「yum update edk2」或「yum update --advisory ALAS2-2024-2502」以更新系統。

另請參閱

https://alas.aws.amazon.com//AL2/ALAS2-2024-2502.html

https://alas.aws.amazon.com/faqs.html

https://explore.alas.aws.amazon.com/CVE-2020-1971.html

https://explore.alas.aws.amazon.com/CVE-2021-23840.html

https://explore.alas.aws.amazon.com/CVE-2021-23841.html

https://explore.alas.aws.amazon.com/CVE-2021-3449.html

https://explore.alas.aws.amazon.com/CVE-2021-3450.html

https://explore.alas.aws.amazon.com/CVE-2021-3712.html

https://explore.alas.aws.amazon.com/CVE-2022-0778.html

https://explore.alas.aws.amazon.com/CVE-2022-1292.html

https://explore.alas.aws.amazon.com/CVE-2022-2068.html

https://explore.alas.aws.amazon.com/CVE-2022-2097.html

https://explore.alas.aws.amazon.com/CVE-2022-4304.html

https://explore.alas.aws.amazon.com/CVE-2022-4450.html

https://explore.alas.aws.amazon.com/CVE-2023-0215.html

https://explore.alas.aws.amazon.com/CVE-2023-0286.html

https://explore.alas.aws.amazon.com/CVE-2023-0464.html

https://explore.alas.aws.amazon.com/CVE-2023-0465.html

https://explore.alas.aws.amazon.com/CVE-2023-0466.html

https://explore.alas.aws.amazon.com/CVE-2023-2650.html

https://explore.alas.aws.amazon.com/CVE-2023-3446.html

https://explore.alas.aws.amazon.com/CVE-2023-5678.html

Plugin 詳細資訊

嚴重性: High

ID: 192206

檔案名稱: al2_ALAS-2024-2502.nasl

版本: 1.6

類型: local

代理程式: unix

已發布: 2024/3/18

已更新: 2025/9/26

支援的感應器: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Nessus

風險資訊

VPR

風險因素: High

分數: 7.4

CVSS v2

風險因素: Critical

基本分數: 10

時間性分數: 7.8

媒介: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS 評分資料來源: CVE-2022-2068

CVSS v3

風險因素: High

基本分數: 7.4

時間性分數: 6.7

媒介: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H

時間媒介: CVSS:3.0/E:P/RL:O/RC:C

CVSS 評分資料來源: CVE-2023-0286

弱點資訊

CPE: p-cpe:/a:amazon:linux:edk2-ovmf, cpe:/o:amazon:linux:2, p-cpe:/a:amazon:linux:edk2-debuginfo, p-cpe:/a:amazon:linux:edk2-aarch64, p-cpe:/a:amazon:linux:edk2-tools, p-cpe:/a:amazon:linux:edk2-tools-doc, p-cpe:/a:amazon:linux:edk2-tools-python

必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

可被惡意程式利用: true

可輕鬆利用: Exploits are available

修補程式發佈日期: 2024/3/13

弱點發布日期: 2020/12/8

參考資訊

CVE: CVE-2020-1971, CVE-2021-23840, CVE-2021-23841, CVE-2021-3449, CVE-2021-3450, CVE-2021-3712, CVE-2022-0778, CVE-2022-1292, CVE-2022-2068, CVE-2022-2097, CVE-2022-4304, CVE-2022-4450, CVE-2023-0215, CVE-2023-0286, CVE-2023-0464, CVE-2023-0465, CVE-2023-0466, CVE-2023-2650, CVE-2023-3446, CVE-2023-5678