Sicherheitsanalyse der JavaScript-Komponenten des Online-Portals Mein ELSTER

Testgegenstand

Das Fraunhofer AISEC hat zwischen Juni und September 2018 im Auftrag des Bayerischen Landesamts für Steuern, Abteilung IuK, die Sicherheit der JavaScript-Komponenten des Online-Portals Mein ELSTER analysiert. Zur Durchführung wurde eine Testumgebung genutzt. Die Prüfung begann am 22.06.2018 mit der Version 42-7 und endete am 31.08.2018 mit der Version 42-18-1-1. Des Weiteren wurde am 05.09.2018 beim Entwicklungspartner des Bayerischen Landesamts für Steuern vor Ort ein Test der Personalausweis-Funktionalitäten auf der Version 42-18-1-4 durchgeführt. Die Hauptziele der Sicherheitsanalyse des JavaScript-Quelltextes sind hierbei die Feststellung von möglichen Schwachstellen bei der Verarbeitung des Quellcodes im Browser sowie die Feststellung von Lücken in der Nutzung der kryptografischen Funktionen durch Mein ELSTER.

Innerhalb von Mein ELSTER sind verschiedene Prozesse als JavaScript-Komponenten realisiert. In Absprache mit dem Auftraggeber wurde der Fokus der Analyse auf folgende Prozesse innerhalb der Testumgebung gelegt:

  • Registrierung des Nutzers ohne Nutzung des Personalausweises
  • Login mit dem ELSTER-Zertifikat
  • Login mit Personalausweis
  • Entschlüsselung von Postfachnachrichten und Entwürfen
  • Estellung einer XML-Signatur beim Versenden von Nachrichten
  • Erstellung einer XML-Signatur beim Belegabruf
  • Ändern des Zertifikats-Passworts
  • Verlängerung des Zertifikats
  • Verschlüsselung der Zertifikatsdatei zur Übertragung in die App ElsterSmart mittels QR-Code
  • Entschlüsselung einer aus ElsterSmart übertragenen Zertifikatsdatei

Testergebnisse

Die Kritikalität der Befunde wurde mithilfe einer 5-stufigen Skala beurteilt: Information, Niedrig, Mittel, Hoch und Kritisch. Die Einteilung der Befunde ergibt sich wie folgt:

  • Kritische Befunde stellen konkrete Schwachstellen dar, die es erlauben, das System vollständig zu übernehmen. Dafür sind keine oder nur geringe Voraussetzungen nötig.
  • Befunde der Kategorie Hoch sind Schwachstellen, welche höheren Voraussetzungen unterliegen und/oder geringere Auswirkungen haben, z.B. die Übernahme eines Accounts statt des gesamten Systems.
  • Mittlere und Niedrige Befunde deuten auf eine Anfälligkeit hin, die die Angriffsfläche höher kategorisierter Befunde vergrößern kann.
  • Befunde der Kategorie Information liefern Hinweise auf die Verbesserung der Wartbarkeit des Quelltextes.
Im Rahmen des Tests wurden keine Befunde der Stufe Kritisch festgestellt. Ein als Hoch sowie ein als Mittel eingestufter Befund waren laut Auftraggeber nur auf dem verwendeten Testsystem vorhanden und wurden dort noch vor Ablauf des Testprojektes beseitigt. Darüber hinaus gab es zwei weitere Mittlere sowie sieben als Niedrig eingestufte Befunde. Wir empfehlen, die restlichen Befunde zu beseitigen und die sich an mehreren Stellen bietenden Möglichkeiten zur Vereinfachung des Quelltextes zu nutzen, was langfristig die Wartbarkeit erhöhen und zur Minimierung von Sicherheitsrisiken beitragen kann.