Kritik an ELGA-Entwurf in Begutachtung

© Martin Gnedt

Proof of Concept
05/25/2012

Schwachstelle bei Bürgerkarte entdeckt

Eine Lücke in der Online-Version der Bürgerkartenumgebung (BKU) kann dazu missbraucht werden, um signierte Dokumente zu erstellen oder Banktransaktionen abzusegnen. Das demonstrierte der Student Wolfgang Ettlinger beim Security Forum in Hagenberg. Als Schwachstelle entpuppte sich dabei ein Java-Applet.

von Martin Stepanek

Um die Bürgerkartensoftware, die ursprünglich nur lokal auf Computern installiert werden konnte, direkt in Browserumgebungen verfügbar zu machen, wurde im Rahmen des MOCCA-Projekts eine Online-Version entwickelt. Die Implementierung wird durch Java-Technologien erreicht, die in den etablierten Browsern laufen und die Kommunikation zwischen dem gesicherten Webservice und der Bürgerkarte übernehmen.

Angreifer kapern Java-Applet
Wie Ettlinger in seiner Präsentation beim Security Forum an der FH Oberösterreich in Hagenberg zeigte, konnte das Java-Applet der Online-BKU bis vor kurzem zum unbemerkten Auslesen und Eingeben von Passwörtern sowie zum Abschicken der sensiblen Daten an einen anderen BKU-gesicherten Dienst missbraucht werden. Die Lücke gilt im jüngsten Update des Mocca-Projekts zwar als behoben, laut Ettlinger können Angreifer bei ihren Attacken noch auf eine der älteren Applet-Versionen zurückgreifen, um zu ihrem Ziel zu gelangen.

Damit das skizzierte Angriffsszenario aufgeht, muss der Angreifer laut Ettlinger eine fingierte Webseite mit Bürgerkarten-Anbindung aufsetzen. „Das könnte eine Altersabfrage sein, um auf eine bestimmte Seite zu gelangen, oder ein Webshop, bei dem ich über die Bürgenkarten-Signatur sicher einkaufen kann“, so Ettlinger im Gespräch mit der futurezone. Während der oder die Nichtsahnende bei der Seite den PIN eingibt, kann der Angreifer analog zu einer klassischen Phishing-Attacke den Code über Javascript im Hintergrund abgreifen. Als Einfallstor dient dabei die Java-Programmierschnittstelle LiveConnect.

User praktisch chancenlos
Während der User weiterhin auf der Webseite verweilt, kann der Angreifer beispielsweise unbemerkt eine Bankseite aufrufen und über ein Script das Applet dazu bringen, als Einfallstor in den Bank-Account zu fingieren bzw. Transaktionen zu signieren. Über das Javascript kann der zuvor abgegriffene PIN eingegeben und der obligatorische Mausklick zum Absenden simuliert werden. Das Applet ist für den User unsichtbar, da es außerhalb des sichtbaren Bildschirms positioniert werden kann, und bestätigt der Webseite – in diesem Fall der Bank - die Echtheit des Users.

Wie Ettlinger bei seinem Proof-of-Concept ausführt, ist der Angriff auf die Zeit beschränkt, in dem der User auf der bearbeiteten Seite verweilt. Die meisten E-Government-Applikationen seien im Normalfall nicht betroffen, da das Java-Applet in diesem Fall überprüft, ob die Anfrage des Webservers ein auf .gv.at ausgestelltes SSL-Zertifikat verwendet, wenn die Identitätsabfrage aufgerufen wird.

Sicherheitsarchitektur der Bürgerkarte "gut"
Damit die Schwachstelle in Zukunft überhaupt nicht mehr genutzt werden könne, müssten die älteren Applet-Versionen auf eine Blacklist wandern, meint Ettlinger. Die Sicherheitsarchitektur der Bürgerkartenumgebung bezeichnete der Student des Department für Sichere Informationssysteme ungeachtet der entdeckten Schwachstelle als gut. „100-prozentige Sicherheit gibt es nicht, auch nicht bei der Bürgerkarte“, so Ettlinger. Als positiv vermerkte er auch, dass die Schwachstelle nachdem sie von ihm gemeldet worden war, behoben wurde.

Die genaue Dokumentation der Schwachstelle inklusive das auf einem Video festgehaltene Angriffsszenario findet sich auf Ettlingers Blog.