Ein Proof-of-Concept-Code (PoC), der eine neu entdeckte Schwachstelle in der digitalen Signatur in Java umgeht, wurde online veröffentlicht.

Die hochgradig gefährliche Schwachstelle, CVE-2022-21449 (CVSS-Score: 7.5), betrifft die folgenden Versionen von Java SE und Oracle GraalVM Enterprise Edition –

Oracle Java SE: 7u331, 8u321, 11.0.14, 17.0.2, 18

Oracle GraalVM Enterprise Edition: 20.3.5, 21.3.1, 22.0.0.2

Das Problem liegt in der Java-Implementierung des Elliptic Curve Digital Signature Algorithm (ECDSA), einem kryptografischen Mechanismus zum digitalen Signieren von Nachrichten und Daten zur Überprüfung der Authentizität und Integrität des Inhalts.

Kurz gesagt: Der kryptografische Fehler – in Java „Psychic Signatures“ genannt – ermöglicht es, eine völlig leere Signatur vorzulegen, die von der verwundbaren Implementierung dennoch als gültig angesehen wird.

Wenn die Schwachstelle erfolgreich ausgenutzt wird, kann ein Angreifer die Signaturen fälschen und die Authentifizierungsmaßnahmen aushebeln.

Der vom Sicherheitsforscher Khaled Nassar veröffentlichte PoC zeigt einen verwundbaren Client und einen böswilligen TLS-Server, der eine ungültige Signatur des Servers akzeptiert, so dass der TLS-Handshake ungehindert fortgesetzt werden kann.

„Es ist schwer, den Schweregrad dieses Fehlers zu überschätzen“, sagt ForgeRock-Forscher Neil Madden, der die Schwachstelle am 11. November 2021 entdeckt und gemeldet hat.

„Wenn du ECDSA-Signaturen für einen dieser Sicherheitsmechanismen verwendest, kann ein Angreifer sie auf triviale Weise vollständig umgehen, wenn auf deinem Server eine Java 15, 16, 17 oder 18 Version läuft.

Das Problem wurde inzwischen von Oracle im Rahmen des vierteljährlichen April 2022 Critical Patch Update (CPU) behoben, das am 19. April 2022 veröffentlicht wurde.

Angesichts der Veröffentlichung des PoCs wird Unternehmen, die Java 15, Java 16, Java 17 oder Java 18 in ihren Umgebungen einsetzen, empfohlen, die Patches vorrangig zu installieren, um aktive Ausnutzungsversuche zu entschärfen.