OpenSSL 3.0.1-Update behebt Sicherheitslücke

Korrekturversionen der OpenSSL-Kryptografiebibliothek 3.0.1 und 1.1.1m sind verfügbar. Version 3.0.1 behebt die Schwachstelle (CVE-2021-4044) und in beiden Versionen wurden etwa ein Dutzend Fehler behoben.

Die Sicherheitslücke besteht in der Implementierung von SSL/TLS-Clients und hängt damit zusammen, dass die libssl-Bibliothek negative Fehlercodes falsch verarbeitet, die von der Funktion X509_verify_cert() zurückgegeben werden, die aufgerufen wird, um das vom Server an den Client übergebene Zertifikat zu überprüfen. Negative Codes werden zurückgegeben, wenn interne Fehler auftreten, beispielsweise wenn kein Speicher für den Puffer zugewiesen werden kann. Wenn ein solcher Fehler zurückgegeben wird, geben nachfolgende Aufrufe von E/A-Funktionen wie SSL_connect() und SSL_do_handshake() einen Fehler und einen SSL_ERROR_WANT_RETRY_VERIFY-Fehlercode zurück, der nur zurückgegeben werden sollte, wenn die Anwendung zuvor SSL_CTX_set_cert_verify_callback() aufgerufen hat.

Da die meisten Anwendungen SSL_CTX_set_cert_verify_callback() nicht aufrufen, kann das Auftreten eines SSL_ERROR_WANT_RETRY_VERIFY-Fehlers falsch interpretiert werden und zu einem Absturz, einer Schleife oder einer anderen falschen Antwort führen. Am gefährlichsten ist das Problem in Kombination mit einem weiteren Fehler in OpenSSL 3.0, der einen internen Fehler bei der Verarbeitung von Zertifikaten in X509_verify_cert() ohne die Erweiterung „Subject Alternative Name“, aber mit Namensbindungen in Nutzungsbeschränkungen verursacht. In diesem Fall kann der Angriff zu anwendungsspezifischen Anomalien bei der Zertifikatsverarbeitung und dem TLS-Sitzungsaufbau führen.

Source: opennet.ru

Kommentar hinzufügen