CVE-2020-13777: GnuTLS-Sicherheitslücke seit 2 Jahren verborgen
Die Sicherheitsanfälligkeit in GnuTLS, die als CVE-2020-13777 bezeichnet wird, ist eine weit verbreitete Open-Source-Bibliothek, die TLS (Transport Layer Security) verwendet.
Berichten zufolge ist die Sicherheitsanfälligkeit seit ungefähr zwei Jahren in der Bibliothek vorhanden, sodass wiederaufgenommene TLS 1.3-Sitzungen für Angriffe geöffnet sind. Die Sicherheitsanfälligkeit wurde im September 2018 in GnuTLS 3.6.4 festgestellt und später in der neueren Version von GnuTLS 3.6.14 am 3. Juni 2020 behoben.
CVE-2020-13777 Sicherheitsanfälligkeit erklärt
Berichten zufolge ermöglichte dieser Fehler GnuTLS-Servern tatsächlich, Sitzungstickets zu verwenden, die während einer früheren sicheren TLS 1.3-Sitzung ausgestellt wurden, ohne die Funktion zu verwenden, mit der geheime Schlüssel erstellt werden:
gnutls_session_ticket_key_generate ()
Mithilfe dieser Sicherheitsanfälligkeit könnten die Angreifer die Authentifizierung unter TLS 1.3 umgehen und so die vorherigen Konversationen unter TLS 1.2 wiederherstellen.
Nach dem, was der Forscher namens Airtower zu sagen hat:
„GnuTLS-Server können von einander ausgestellte Tickets ohne Zugriff auf den von gnutls_session_ticket_key_generate () generierten geheimen Schlüssel verwenden. Auf diese Weise kann ein MITM-Server ohne gültige Anmeldeinformationen Sitzungen mit einem Client fortsetzen, der zuerst eine erste Verbindung mit einem Server mit gültigen Anmeldeinformationen hergestellt hat. Das Problem tritt bei TLS 1.3 auf, wenn die Wiederaufnahme von TLS 1.2 wie erwartet fehlschlägt. “
Die Sicherheitsforscher haben dieses Problem zuerst mit Ubuntu Version 3.6.13-2ubuntu1 bemerkt und es mit einem neuen Build von Master namens 52e78fle erstellt.
Einige der Forscher argumentieren auch, dass GnuTLS als Abhängigkeit beseitigt werden sollte, während viele von ihnen laut TheRegister auch ihre Verachtung gegen die Bibliothek zum Ausdruck gebracht haben.
Gemäß dem MITRE CVE-Wörterbuch wird die Beschreibung von CVE-2020-13777 wie folgt beschrieben:
„GnuTLS 3.6.x vor 3.6.14 verwendet eine falsche Kryptografie zum Verschlüsseln eines Sitzungstickets (Verlust der Vertraulichkeit in TLS 1.2 und Umgehung der Authentifizierung in TLS 1.3). Die früheste betroffene Version ist 3.6.4 (2018-09-24) aufgrund eines Fehlers in einem Commit für 2018-09-18. Bis zur ersten Schlüsselrotation verwendet der TLS-Server immer falsche Daten anstelle eines von einer Anwendung abgeleiteten Verschlüsselungsschlüssels. “
Es gibt jedoch keine identifizierte Minderung dieser Sicherheitsanfälligkeit, wie vom RedHat-Berater klargestellt.