OpenSSL 3.0.1更新修復漏洞

OpenSSL 加密庫 3.0.1 和 1.1.1m 的修正版本現已推出。 3.0.1 版本修復了該漏洞 (CVE-2021-4044),兩個版本中均修復了大約十幾個錯誤。

該漏洞存在於 SSL/TLS 客戶端的實現中,與 libssl 庫錯誤處理 X509_verify_cert() 函數返回的負錯誤代碼有關,該函數調用該函數來驗證服務器傳遞給客戶端的證書。 當發生內部錯誤時,例如,如果無法為緩衝區分配內存,則會返回負代碼。 如果返回此類錯誤,則對I/O 函數(例如SSL_connect() 和SSL_do_handshake())的後續調用將返回失敗和SSL_ERROR_WANT_RETRY_VERIFY 錯誤代碼,只有當應用程序之前調用過SSL_CTX_set_cert_verify_callback() 時才應返回該錯誤代碼。

由於大多數應用程序不調用 SSL_CTX_set_cert_verify_callback(),因此 SSL_ERROR_WANT_RETRY_VERIFY 錯誤的發生可能會被誤解並導致崩潰、循環或其他錯誤響應。 該問題與 OpenSSL 3.0 中的另一個錯誤結合起來最為危險,該錯誤在 X509_verify_cert() 中處理沒有“主題備用名稱”擴展但在使用限制中具有名稱綁定的證書時會導致內部錯誤。 在這種情況下,攻擊可能會導致證書處理和 TLS 會話建立中特定於應用程序的異常。

來源: opennet.ru

添加評論