說明
遠端主機上安裝的 OpenSSL 版本低於 1.1.1zh。因此,它受到 1.1.1zh 公告中提及的多個漏洞的影響。
- 問題摘要:特製的密碼加密 CMS 訊息可能會在 CMS 解密期間觸發 NULL 指標解除參照。影響摘要:此 NULL 指標解除參照會導致應用程式當機和拒絕服務。CMS PasswordRecipientInfo.keyDerivationAlgorithm 欄位在 ASN.1 規格中定義為 OPTIONAL,因此特製輸入中可能沒有。在密碼型 CMS 解密期間,OpenSSL CMS 實作會取消參照此欄位,而不先檢查它是否存在。攻擊者若將此類 CMS 訊息提供給執行密碼型 CMS 解密的應用程式,可觸發應用程式當機,進而導致拒絕服務。處理密碼加密的 CMS 訊息的應用程式可能會受到影響。、 3.6、 3.53.4、 中的 4.03.0 FIPS 模組不受此問題影響,因為受影響的程式碼位於 OpenSSL FIPS 模組邊界之外。(CVE-2026-42766)
- 問題摘要:在 ASN1_mbstring_ncopy() 中調整 Unicode 輸出的目標緩衝區大小時,帶正負號的整數溢位可能會導致堆積緩衝區溢位。影響摘要:堆積緩衝區溢位可能會導致當機,或可能導致攻擊者控制的程式碼執行或其他未定義的行為。在 ASN1_mbstring_copy() 和 ASN1_mbstring_ncopy() 中,Unicode 輸出的目標大小以帶正負號的整數計算:透過 BMPSTRING (UTF-16) 和 UNIVERSALSTRING (UTF-32) 的輸入字元計數的左移,以及將 UTF8STRING 的每個字元位元組計數相加。當輸入達到大約 2^30 個字元時,計算會溢位。在最壞的情況下 (2^30 個字元的 UNIVERSALSTRING),大小換行為零,呼叫 OPENSSL_malloc(1),後續字元副本會寫入超過一個位元組配置的幾 GB。X.509 憑證處理路由透過 ASN1_STRING_set_by_NID(),其DIRSTRING_TYPE遮罩排除 UNIVERSALSTRING,且其每個 NID 大小限制限制輸入長度;OpenSSL 中沒有任何網路通訊協定或憑證處理路徑執行溢位。觸發錯誤需要應用程式直接呼叫 ASN1_mbstring_copy() 或 ASN1_mbstring_ncopy(),或透過 ASN1_STRING_TABLE_add() 註冊自訂字串類型,攻擊者控制輸入量級為半 GB 或更多。基於這些原因,此問題被指派為低嚴重性。4.0、3.6、3.5、3.4 和 3.0 中的 FIPS 模組不受此問題影響,因為受影響程式碼位於 OpenSSL FIPS 模組邊界之外。(CVE-2026-7383)
- 問題摘要:當 CMS 密碼型解密 (RFC 3211 / PWRI 金鑰解包) 處理攻擊者提供的 CMS 資料時,攻擊者選擇的串流模式 KEK 加密可觸發 kek_unwrap_key() 中的堆積越界讀取。影響摘要:如果輸入緩衝區在記憶體頁面界限處結束,且下一頁未對應,堆積緩衝區過度讀取可能會觸發損毀,進而導致應用程式的拒絕服務。由於過度讀取的位元組不會洩露給攻擊者,因此不會洩露資訊。金鑰展開函式會執行 RFC 中指定的檢查位元組測試,該測試會根據訊息中包裝的金鑰長度,從堆積配置中讀取 7 個位元組。根據包裝密碼的區塊長度,會進行最小長度檢查。不過,加密是從攻擊者的 PWRI keyEncryptionAlgorithm 中攜帶的 OID 中選取,而不要求加密必須是區塊密碼。當攻擊者選取資料流模式加密時,防護將無效,而且包含未包裝金鑰的配置緩衝區可能太小,無法符合 RFC 中指定的檢查位元組,而且可能會發生緩衝區過度讀取。調用 CMS_decrypt() 或 CMS_decrypt_set1_password() 的應用程式 (相當於 openssl cms
-解密 -pwri_password ...不受信任的 CMS 資料容易受到此問題的影響。不需要任何密碼知識:在任何驗證成功之前,會在嘗試展開期間發生過度讀取。過度讀取僅限於幾個位元組,不會寫入輸出,因此不會有資訊洩露。
觸發損毀需要配置以邊界未對應的記憶體,這對於一般配置器來說不太可能發生。FIPS 模組不受此問題影響。(CVE-2026-9076)
- 問題摘要:特製 PKCS#7 或 S/MIME 簽署的訊息可能會在簽章驗證期間 PKCS#7 觸發釋放後使用。影響摘要:釋放後使用可能會導致處理程序當機、堆積損毀,或可能的遠端程式碼執行。處理 PKCS#7 或 S/MIME 簽署的訊息時,如果 SignedData digestAlgorithms 欄位以空的 ASN.1 SET 形式存在,則 OpenSSL 可能會在 PKCS7_verify() 期間錯誤地釋放呼叫端擁有的 BIO。呼叫端應用程式後續使用 BIO 會導致釋放後使用狀況。在常見情況下,當應用程式稍後在最初傳遞給 PKCS7_verify() 的 BIO 上呼叫 BIO_free() 時,就會發生這種情況。視配置器行為和應用程式特定的 BIO 使用模式而定,這可能會導致當機或其他記憶體損毀。在某些應用程式環境中,這可能可用於遠端程式碼執行。使用 OpenSSL PKCS#7 API 處理PKCS#7或 S/MIME 簽署訊息的應用程式可能會受到影響。使用 CMS API 進行此處理的應用程式不受影響。、 3.6、 3.53.4、 中的 4.03.0 FIPS 模組不受此問題影響,因為受影響的程式碼位於 OpenSSL FIPS 模組邊界之外。(CVE-2026-45447)
- 問題摘要:使用內容長度超過 2 GB 的基本元素剖析特製的 DER 編碼 ASN.1 結構,可能會導致 64 位元 Unix 和類 Unix 平台上堆積緩衝區過度讀取。
影響摘要:堆積緩衝區過度讀取可能會使應用程式當機 (拒絕服務),或將超出輸入緩衝區結尾的記憶體內容載入已解碼的 ASN.1 物件內容。更常見的是,此類 ASN.1 元素會被截斷。OpenSSL 的 ASN.1 解碼器中的整數截斷會導致 ASN.1 基本元素的內容長度在超過 2 GB 時被錯誤處理。在最壞的情況下,截斷的長度會被視為掃描二進位內容以尋找終止零位元組的要求,可能會導致 OpenSSL 讀取小於或超過配置緩衝區結尾。將攻擊者提供的資料傳遞至 d2i_X509()、d2i_PKCS7() 或任何其他 d2i_* 解碼函式的應用程式會受到影響。
OpenSSL 自己的命令列工具不易受到攻擊,因為透過 BIO 層讀取的資料在到達受影響的程式碼之前會進行檢查。此問題僅影響 64 位元 Unix 和類 Unix 平台;32 位元平台和 64 位元 Windows 不受影響。4.0、3.6、3.5、3.4 和 3.0 中的 FIPS 模組不受此問題影響,因為受影響程式碼位於 OpenSSL FIPS 模組邊界之外。(CVE-2026-34180)
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
升級至 OpenSSL 1.1.1zh 版或更新版本。
Plugin 詳細資訊
檔案名稱: openssl_1_1_1zh.nasl
代理程式: windows, macosx, unix
組態: 啟用徹底檢查 (optional)
支援的感應器: Continuous Assessment, Nessus Agent, Nessus
風險資訊
媒介: CVSS2#AV:N/AC:M/Au:N/C:N/I:N/A:P
媒介: CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
時間媒介: CVSS:3.0/E:U/RL:O/RC:C
弱點資訊
CPE: cpe:/a:openssl:openssl
必要的 KB 項目: installed_sw/OpenSSL
可輕鬆利用: No known exploits are available