Oracle Problem: Java Card hat Schwachstellen

Sicherheitsexperten warnen aktuell vor Oracles Java Card-Plattform. Diese Plattform hat wohl ein Dutzend Schwachstellen, wird aber in Sicherheitsbereichen verwendet. Das könnte Smart-Cards (SIM-Karten, ES-Karten etc.) und IoT-Geräte, die auf Java Card aufsetzen, in ihrer Sicherheit gefährden.


Anzeige

Einordnung von Java Card

Zur Einordnung ein Auszug aus der Wikipedia: Java Card ist eine Variante der Programmiersprache Java. Diese Variante ermöglicht es, einem reduzierten Java-Standard folgend erstellte Java Card Applets, Java Applets auf Chipkarten auszuführen. Die Java Card Applets werden nur ausgeführt, wenn die Chipkarte an eine externe Stromversorgung angeschlossen ist und die Java VM der Karte die Anweisung erhalten hat, ein bestimmtes Applet zu selektieren. Eine Java Chipkarte kann mehrere Applets enthalten. Java Card Applets können nachträglich auf einer Java-Chipkarte installiert werden und sind, wie Java-Programme, von der Hardware der Chipkarte unabhängig. Java Card Applets dienen primär der sicheren Speicherung und Anwendung von kryptographischen Schlüsseln. Die Schlüssel können zu diesem Zweck auf der Chipkarte erzeugt werden und ein Auslesen der privaten Schlüssel aus der Karte wird nach Möglichkeit verhindert.

Man kann es auch direkter ausdrücken: Java Card wurde für SIM-Karten, Zahlungskarten und andere eingebettete Technologien entwickelt und ist auch dort im Einsatz. Java Card ermöglicht die erwähnten Apples auf Karten und ähnlichen Gadgets ausgeführt werden. Gibt es dort Schwachstellen, sind die betreffenden Karten und Geräte nicht mehr als sicher anzusehen.

Sicherheitslücken in Java Card

Ich bin schon vor einigen Tagen auf diesen Beitrag auf Seclists.org gestoßen, in dem Adam Gowdiak, CEO of Security Exploration, auf Schwachstellen in Java Card eingeht.

We discovered multiple security vulnerabilities in reference implementation
of Java Card technology [1] from Oracle used in financial, government,
transportation and telecommunication sectors among others.

….

Unfortunately, due to certain architectural choices from the past, it’s
hard to perceive Java Card technology in terms of security. There are
ways for malformed applications loaded into a vulnerable Java Card to
easily break memory safety. Such a breach directly leads to the security
compromise of a Java Card VM, applet firewall breach and jeopardizes
security of co-existing applications. In some cases, whole card environment can be compromised, but that’s dependant on the underlying OS / processor architecture (i.e. presence of the flat address space, isolation between
tasks).

We were able to verify 18 of the issues in the environment of the most
recent Java Card 3.1 software from Jan 2019 (Oracle Java Card VM reference implementation in the form of a simulator).

Java Card ist in im Finanzbereich, in Behörden, im Transportgewerbe, in der Telekommunikation etc. im Einsatz. Leider gibt es in der Java Card-VM sowie in den Lösungen eine reihe gravierender Sicherheitslücken. Daher ist Java Card in sicherheitskritischen Anwendungen eigentlich nicht einsetzbar. Aber genau dort wird Java Card zur Speicherung von Krypto-Schlüsseln verwendet.

Problem mit Gemalto-Karten (SIM-Karten)

Ein Problem besteht speziell bei Gemalto-Karten. Das sind SIM-Karten für Smartphones. Dort ist mit geeigneten Exploits der volle Zugriff auf die Smartcard-Speicher möglich. Die Applet Firewall könnte zerstört werden oder die native Codeausführung konnte erreicht werden. Das ist für für die folgenden Gemalto SIM-Karten überprüft:

  • GemXplore 3G V3.0-256KV3.0-256K
  • 3G USIMERA Prime

Als Verbraucher bzw. Nutzer von SIM-Karten oder EC-Karten kann man da nichts tun. Details sind dem Seclists.org-Beitrag zu entnehmen. The Register hat einen Artikel zum Thema veröffentlicht, in dem die Informationen aufbereitet sind.


Anzeige
Dieser Beitrag wurde unter Sicherheit abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.