Zum Hauptinhalt springen

Stellungnahme der Fachschaft Informatik zur Herausgabe des Quellcodes der TU-App

Die TU Dortmund leistet sich seit geraumer Zeit eine Smartphone-App für Android und iOS. Sie bietet unter anderem bequem Zugriff auf Inhalte die sonst auf Webseiten gelesen werden müssten (u.a. Mensa-Pläne, Angebot des Hochschulsports, News von Uni, AStA). Des Weiteren kann man sich auch mit seinem Uni-Account anmelden und sich seine Leistungen aus dem BOSS, den Stundenplan aus dem LSF oder das Semesterticket am Handy angucken.

All diese Informationen und Services kann man auch über die Webseiten selbst finden, bzw. nach Anmeldung abrufen. Die App selbst verwendet auch Web-Technologien wie HTML, CSS und Javascript und ist im Grunde lediglich ein Browser, der nur eine einzige Webseite anzeigen kann. Aus diesem Grund kann man die “Webseite” der TU-App sehr einfach aus der App extrahieren und (wie jede andere Webseite auch) im eigenen Browser inspizieren.

Die TU Dortmund hat eine IFG-Anfrage nach dem Quellcode der TU-App abgelehnt, da “das Bekanntwerden des Quellcodes der App […] eine erhebliche Gefahr für die öffentliche Sicherheit darstellen [würde]”.

Im Folgenden erläutern wir, warum diese Aussage von einem grundsätzlichen Missverständnis der Sicherheit von IT-Systemen zeugt und die Ablehnung daher unbegründet ist.

Was sind Eigenschaften von Webseiten aus HTML, CSS und Javascript?

Man kann ihren Aufbau ansehen. Beispiel tu-dortmund.de: Nach dem Öffnen der Webseite im Webbrowser am PC, lässt sich einfach per Rechtsklick und “Element inspizieren” der HTML-Quellcode anzeigen. Webseiten liefern den Quellcode, mit dem sie funktionieren an jede Person aus, die die Webseite benutzt.

Browser mit geöffneter Login-Seite der TU Dortmund. Auf der rechten Seite sind die Entwickler-Werkzeuge geöffnet und man sieht den HTML-Code, der das Benutzername-Feld erzeugt.

Hier beispielsweise einmal der HTML-Code der Login-Seite der TU Dortmund. Rechts (mit der 3 markiert) sieht man z.B. den HTML-Code, der dafür sorgt, dass der Browser das Feld für den Benutzernamen anzeigt.

Es ist sogar mit dem ganz normalen Browser möglich, sich anzugucken, wie der Browser die Login-Daten (Benutzername und Passwort) an die Uni-Server schickt. Hier einmal am Beispiel einer Moodle-Anmeldung, mit zensiertem Passwort:

Browser mit geöffnetem Entwickler-Werkzeug, in welchem eine Netzwerkanfrage zu sehen ist, mit der der Browser die Uni-Login-Daten an den Server sendet.

Wir halten fest: Man kann bei einer Webseite (aus HTML, CSS, Javascript) leicht nachvollziehen und sehen, was warum passiert und wie sie funktioniert.

Was hat das mit der TU-App zu tun?

Die TU-App ist selbst mit HTML, CSS und Javascript geschrieben. Sie ist im Grunde eine Webseite in einem TU-Grün angestrichenen Browser. Wie bei anderen Webseiten auch, braucht der Browser (die TU-App) den Code um diese anzuzeigen. Die TU-App liefert diesen Code direkt mit, im Fall von Android als ZIP-Datei.

Daher ist es recht einfach die Web-Komponenten aus der TU-App zu extrahieren und im eigenen Browser zu öffnen:

Browser in dem die grüne Oberfläche der TU-App zu sehen ist

Dass das möglich ist, ist unumgänglich. Ohne diese Webseite-Daten könnte der Browser der TU-App die App-Oberfläche gar nicht anzeigen.

Wir halten fest: Die TU-App ist eine Webseite, deren HTML, CSS und Javascript nicht wirklich geheim ist. Jeder bekommt diese Dateien in der App mitgeliefert und sie lassen sich einfach auspacken.

Woher kommt die Sicherheit?

Das Bekanntwerden des Quellcodes der App würde eine erhebliche Gefahr für die öffentliche Sicherheit darstellen. […] Es steht zu befürchten, dass solche Informationen unter Nutzung von möglichen und bekannten Sicherheitslücken bewusst für Cyber- und Hacker-Angriffe genutzt werden. In diesem Falle ist die Funktionsfähigkeit der TU Dortmund als eine öffentliche Stelle nicht mehr sichergestellt.

Justiziariat der TU Dortmund zur Ablehnung der IFG-Anfrage

Man kann also den benutzerseitigen Code auf der echten Webseite und der TU-App-Webseite relativ leicht angucken.

Die Sicherheit der Nutzerdaten muss daher dadurch gewährleistet werden, dass die Server-Schnittstellen, über die die Informationen für eingeloggte Nutzer zugänglich sind, gut abgesichert sind. Nutzerdaten dürfen nur an Nutzer herausgegeben werden, die sich auch angemeldet haben.

Das von der Uni genutzte Moodle ist Open-Source und kann trotzdem sicher für Dinge wie Online-Klausuren verwendet werden. Die von Edward Snowden empfohlene, verschlüsselte Chat-App Signal oder die Corona-Warn-App des Bundes sind auch Open-Source und niemand würde ihre Sicherheit deswegen Frage stellen.

Die Sicherheit kann also nicht darin bestehen, dass man hofft, dass niemand sich die App auf seinen PC herunterladen kann. Man muss kein Cyber-Krimineller sein, um sich den Code von App-Webseite und echter Webseite anzugucken. Man muss nur die App-Datei haben. Diese findet man schnell, wenn man bei Google nach “tu dortmund app download” sucht (Beispielsweise bei APKMonk).

Selbst wenn man diese Webseite-Innereien von App und Webseite verstecken könnte (was man nicht kann), dann wäre es immer noch “Security through Obscurity” (Zu Deutsch in etwa “Sicherheit durch Unklarheit” oder passender: “Sicherheit durch Augen-zu-machen”). Zu hoffen, dass sich niemand etwas anguckt, ist keine valide Sicherheitsstrategie.

Wenn die Quellcode-Veröffentlichung tatsächlich ein Risiko für die “Funktionsfähigkeit der TU Dortmund als eine öffentliche Stelle” nach sich ziehen würde, solle man diese schleunigst aus den App-Stores entfernen lassen und die Entwickler:innen mit der sofortigen Beseitigung der Sicherheitsrisiken beauftragen. Dies ist, soweit von außen sichtbar, nicht passiert.

Wir halten fest: Die Sicherheit von Programmen muss über echte technische, sinnvolle und effektive Sicherheitsmaßnahmen gewährleistet werden. Das Verbergen des Quellcodes ist keine solche sinnvolle Sicherheitsmaßnahme.

System security should not depend on the secrecy of the implementation or its components.

National Institute of Standards and Technology

Die Sache mit der Wirtschaft

Die sonstigen Ablehnungsgründe sind auch nicht ganz nachvollziehbar:

Für die TU Dortmund stünde zu befürchten, dass sie - im Falle einer Veräußerung der App - durch das vorherige Bekanntwerden des Quellcodes einen wirtschaftlichen Nachteilt erfährt.

Justiziariat der TU Dortmund zur Ablehnung der IFG-Anfrage

Die TU ist kein mit der “normalen” Wirtschaft konkurrierendes Unternehmen. Die App ist kostenlos und ohne Prüfung der TU-Mitgliedschaft herunterladbar. Den einzigen Gewinn, den die TU erzielt, sind zufriedene Studierende, die sich freuen, auf Informationen der TU komfortabel zugreifen und ein Bild ihres Semestertickets vorzeigen zu können.

Welcher wirtschaftliche Schaden sollte entstehen, wenn z.B. eine andere Universität die App kopieren würde? Die TU-Farben, -Schriften und das Logo dürften sowieso schon nicht verwendet werden. Wechseln Studierende aufgrund von Handy-Apps die Unis? Ist es zu befürchten, dass eine andere Uni (auf Basis der TU-App) eine so viel bessere App entwickeln würde? Verliert die TU dadurch große Geldmengen?

Zu Recht setzt sich die Kampagne “Public Money, Public Code” seit einiger Zeit dafür ein, dass öffentliche Stellen selbst entwickelten Code auch öffentlich zur Verfügung stellen. Von der Öffentlichkeit bezahlter Programmcode soll auch der Öffentlichkeit zur Verfügung stehen.

Auch die Stadt Dortmund hat beschlossen, wo es geht freien Code zu nutzen: https://blog.do-foss.de/beitrag/freie-software-ist-von-jetzt-an-standard-in-dortmund/

Warum sich jetzt ausgerechnet die TU Dortmund so vehement dagegen sperrt, ist nicht ersichtlich.

Wir halten fest: Es ist nicht zu erwarten, dass durch die Veröffentlichung des App-Quellcodes ein wirtschaftlicher Schaden für die Universität entsteht.

Ausblick und Fazit

Wir befürchten, dass das Justiziariat der TU Dortmund weiterhin irgendwelche Gründe anführen wird, die (angeblich) gegen die Veröffentlichung des Quellcodes der TU-App sprechen. Die IFG-Anfrage hat eine bedauerliche Historie von späten Antworten, überschrittenen Fristen und unnötiger Bürokratie (Beharren auf Briefpost statt E-Mail). Es entsteht der Eindruck, die TU lehne Transparenz kategorisch ab.

Aus technischer und ökonomischer Sicht halten wir die bisher angeführten Gründe für falsch. Eine Veröffentlichung des Quellcodes wäre ein überschaubarer Aufwand, auch wenn man sich im Vergleich dazu anguckt, wie lange sich der Streit um die Freigabe des Codes schon zieht.

Die TU sollte den App-Code unter einer freien Lizenz veröffentlichen und mit der Open-Source-Strategie der Stadt Dortmund mitziehen. Die Fachschaft Informatik und ihre Arbeitsgemeinschaft für Free & Open-Source-Software steht hierfür gerne für ein Fachgespräch zur Verfügung.

Es ist schade, dass eine öffentliche Wissenschaftseinrichtung, die selbst extensiv Open-Source-Software (bestes Beispiel: Moodle) nutzt und sich unter anderem für Open-Access einsetzt, beim eigenen Einsatz für Open-Source so hartnäckig mauert und für die Ablehnung der IFG-Anfrage dazu fadenscheinige Gründe vorschiebt.

Ergänzung: Am 11.06.2021 hat sich auch die Beauftragte für Informationsfreiheit und Datenschutz von NRW zu den Aussagen der TU gemeldet. Ihre Anmerkungen decken sich zum großen Teil mit den hier getroffenen Feststellungen.


Kontakt zur Fachschaft Informatik: fs-informatik@tu-dortmund.de