Skip to content

OffenesJena/MeinJenaAppmahnung

Repository files navigation

MeinJenaAppmahnungScream

Gerade noch rechtzeitig vor... bestätigt die @Stadtwerke Jena Gruppe - auf ihre Art - dass sie massive Sicherheitslücken in der #MeinJenaApp haben. Und wahrscheinlich nicht nur an dieser Stelle! Harmlos aussehende Zeichenfolgen mit interessanten Bezeichnungen scheinen sicherheitsrelevanter zu sein als man bei einer solchen App annehmen würde. Hinzu kommt, dass dies App neuerdings auch damit beworben wird personenbezogene Daten der Stadtwerke-Strom-/Gas-/etc.pp-Kunden zu verarbeitet (siehe Facebook-Posting vom 16. April 2019: "Kundenportal der Stadtwerke Energie: Persönliche Daten zum Konto, Zählerstände oder Rechnungen können ganz einfach abgerufen werden"). Aber geht es hier wirklich um Sicherheitslücken oder um etwas ganz anderes?

Wie schwierig ist es diese Schwachstellen auszunützen?

Um an die entsprechenden Informationen zu gelangen ist kaum mehr Wissen notwendig als beim Runterladen einer normalen ZIP-Datei aus dem Netz, oder von eurem Smartphone, und dem anschließenden Entpacken dieses Archives mittels eines geeigneten Entpackprogramms. Also mit einem Vorgang mit dem auch die meisten Otto-NormalbürgerInnen in ihrem Alltag vertraut sein dürften. Was veranlasst also die Stadtwerke Jena dazu hierin ein Problem zu sehen? Nun, oftmals missinterpretieren Fachunkundige die Nutzungsbedingungen einer Software und das sogenannte "Kompilieren" (Übersetzen) von Quellcode in eine (Maschinen-)Sprache, also eine Sprache die auch Computer verstehen, mit grundlegenden Sicherheits- und Schutzfunktion einer Software. Doch beides hilft nur sehr selten gegen diejenigen gegenüber die man sich wirklich schützen müsste. Bei modernen Programmiersprachen ist der Kompilierungsvorgang mehr mit der Übersetzung eines normalen Textes vom Deutschen ins Chinesische zu vergleichen. Sicherlich, für die meisten nicht unmittelbar zu verstehen, aber für die vor denen man sich schützen sollte, stellt dies keinerlei große Herausforderung dar. Es ist eigentlich nur eine Nebelkerze um es sogenannten "Skriptkiddies" und sich für Transparenz interessierende BürgerInnen das Leben ein wenig schwerer zu machen. Und wie immer in der #Digitalisierung gibt es auch hierfür mittlerweile ausgereifte Werkzeuge, um diesen Vorgang praktisch vollständig zu Automatisieren. Game Over.

Wie hoch ist das Sicherheitsrisiko für BürgerInnen? Wie für Kinder und Jugendliche?

Nunja... mal ehrlich... es ist nur die MeinJenaApp ;) Eine App für die Verteilung von Werbung, ein paar städtischen Informationen und Nahverkehrstickets. Diese App sei zwar laut Apple App Store und Google Play Store für Kinder geeignet, kann aber laut Nutzungsbedingungen (welche nur aus der App heraus, also nicht vorher einsehbar sind) ohnehin nicht von Minderjährigen verwendet werden:

"Die App MeinJena ist ein Angebot der Stadtwerke Jena GmbH, Rudolstädter Straße 39, 07745 Jena (im weiteren „Stadtwerke Jena“ oder „Anbieter“). Das Angebot ist ausschließlich über die Handy-App (im weiteren „App“) mit einem Smartphone nutzbar. Das Angebot besteht aus den in der App bereitgestellten Funktionen „MeinJena“ sowie der Möglichkeit, sich über die App mit dem „MeinJena-WLAN“ zu verbinden (zusammen „Services“).

Die Stadtwerke Jena ermöglichen die Inanspruchnahme der Services auf Grundlage dieser allgemeinen Nutzungs- und Geschäftsbedingungen (im weiteren „AGB“). Die angebotenen Services richten sich nur an volljährige Verbraucher gemäß § 13 des Bürgerlichen Gesetzbuchs (im weiteren „Nutzer“)."

Natürlich nimmt die MeinJena-App innerhalb von Jena auch eine natürliche Monopolstellung ein, denn als Tochter der Stadt Jena steht man selten in einem echten fairen Wettbewerb. Somit ist es der persönlichen Risikobereitschaft jedes per definitionem erwachsenen Nutzers überlassen, ob er der Kopplung zwischen seinem Zugriff auf beispielsweise ÖPNV-Fahrplandaten und der Bezahlung mit seinen personenbezogenen Daten durch mehrere unterschiedliche Tracker, welche im Auslieferungszustand der App erstmal alle aktiviert sind, zustimmen will oder nicht. Ob dies der in der Datenschutzgrundverordnung geforderten informierten Einwilligung gerecht wird, darf wohl stark bezweifelt werden. Außerdem ist diese Einwilligung ohnehin wenig wirksam, wenn man die Notwendigkeit dieser Maßnahmen wenig bis gar nicht erklären kann. Und dies schaffen die Stadtwerke Jena nun wirklich nicht.

Was tun eigentlich Kinder und Jugendliche, die den ÖPNV benutzen wollen, jetzt so genau? Und was tun die Eltern dieser Kinder, um ihre Kinder zu schützen? Man weiß es nicht!

Digitalisierung, Stadtwerke und Scheitern aus Tradition

Stadtwerke sitzen natürlich auf einer Menge Daten, welche im direkten oder mittelbaren öffentlichen Auftrag erhoben und verarbeitet werden. Wir versuchen seit Jahren, auch zusammen mit einigen Mitarbeitern der Kernverwaltung der Stadt Jena, die Stadtwerke Jena von einer diskriminierungsfreie Bereitstellung Offener (Echtzeit-)Daten (Open Data) des Nahverkehrs, von Ladestationen für Elektroautos etc.pp zu überzeugen. Doch neben ein paar kleinen Erfolgen wie dem Open Data Portal der Stadt Jena ( https://opendata.jena.de ) und beim Verkehrsverbund Thüringen ( https://www.vmt-thueringen.de/auskunft/open-data/ ) ist bislang nicht viel passiert. Nach wie vor verweigert man sich mit viel Hohn und Spott und dies, obwohl der Innen- und Kommunalausschuss des Thüringer Landtages in seiner öffentlichen Sitzung zum Thüringer Transparenzgesetz am 2. Mai 2019 unmissverständlich klargemacht hat, dass bereits das Thüringer Informationsfreiheitsgesetz von 2012 umfangreiche Veröffentlichungspflichten für Daten der öffentlichen Daseinsvorsorge definiert. Die Europäische Kommission legt ferner fest, dass alle Daten mit Umwelt- oder Gesundheitsbezug nach dem Umweltinformationsgesetz freizugeben wären und hierbei eine möglichst weite Definition des Begriffs "Umweltdaten" anzuwenden sei. Die Bundes- und EU-Politik fordern mit der EU-PSI-Direktive ("Re-use of Public Sector Information") ebenfalls seit langem die Öffnung und Zusammenlegung von Mobilitätsdaten, damit EU-Bürger uneingeschränkt quer durch Europa mobil sein können. Andere Länder wie die Schweiz ( https://transport.opendata.ch ) und sogar Großbritannien ( https://www.transportapi.com ) haben seit Jahren ein funktionierendes Ökosystem für die Bereitstellung Offener Daten. Gut, wir sind aber nun mal in Deutschland und so lückenhaft wie die Mobilfunkabdeckung ist auch die Bereitstellung solcher Daten.

Wir wissen natürlich, dass wir hier in Deutschland nicht allzu viel Digitales erwarten können. Aber dies alles ist natürlich nicht nur als ein paar reine Softwarefehler zu betrachten, sondern reiht sich ein in die vielen organisatorischen Mängel und politischen Fehlentwicklungen innerhalb der Stadt Jena und ihrer Tochterunternehmen. Es ist ja nicht das erste Mal, dass Nachfragen zu Sicherheitsaspekten bei den Stadtwerken Jena oder Informationsfreiheitsanfragen nach den Offenen Daten bei der Stadt Jena, ihren Töchtern, beim VMT oder auch bei einigen Thüringer Ministerien nicht mal ansatzweise fachgerecht oder auch nur gesetzeskonform beantwortet wurden. Aber die Verstöße außerhalb Jenas sind eine andere Geschichte.

Im Zuge der Facebook-Kommentare habe ich auch eine Informationsfreiheitsanfrage mit der Bitte um Informationen zum Softwareprojekt "MeinJena-App" erbeten. Wie immer versucht man sich damit rauszureden, dass diese App ja nicht im Auftrag der Stadt entwickelt würde, sondern eine freiwillige Leistung sei, wodurch diesen Betriebs- und Geschäftsgeheimnissen unterliegen würde. Man stünde als Monopolist schließlich auch im Wettbewerb und der Nahverkehr hätte auch nichts mit dem Umwelt- oder Gesundheitsschutz der BürgerInnen zu tun. Außerdem widerspricht man vorsorglich jeder Veröffentlichung des Antwortschreibens - was nichts weiter als einen weiteren Rechtsmissbrauch darstellt. Man beachte, dass der Jenaer Nahverkehr eine 100%ige Enkelin der Stadt ist und die Stadtwerke schon wieder Millionenfördermittel für neue Straßenbahnen von Land fordern. Wenigstens geben sie an dieser Stelle zu, dass man das MeinJena-WLAN derzeit absichtlich nicht mit einem Notebook verwenden könne. Somit ist auch dieser Fall ein weiteres praktisches Beispiel für die Mitglieder des Innen- und Kommunalausschusses des Thüringer Landtages (@Steffen Dittes, @Madeleine Henfling, @Katharina König-Preuß, ...) wie Thüringer Stadtwerke versuchen ihre Informations- und Transparenzpflichten zu umgehen, egal wie oft man den Gesetzestext zitiert. Stadtwerke wollen schlicht nicht richtig lesen, wenn ihnen das was sie lesen nicht gefällt. Das Thüringer Transparenzgesetz bedarf also dringend der von MdL Krumpe vorgeschlagenen Änderungen des Verwaltungsverfahrensgesetzes (ThürVwVfG) und echter Sanktionsmaßnahmen für transparenzunwillige Stellen, wie es interessanterweise ausgerechnet die Gewerkschaft der Thüringer Polizei in ihrer Stellungnahme zum Thüringer Transparenzgesetz gefordert hat ( https://forum.thueringer-landtag.de/sites/default/files/sachverstaendige/Z6_2856.pdf ).

Umgang mit den Lizenzbedingungen fremder Open-Source-Software?

Apropo nicht richtig lesen wollen. Die MeinJena-App nutzt natürlich vielfach bestehende Open Source Software von Dritten. Diese sind in der Regel unter der recht freien Apache 2.0-Lizenz oder vergleichbaren Lizenzen nutzbar. Ihnen ist gemein, dass sie kaum Einschränkungen bei der Wiederverwendung des Quellcodes fordern, aber ein paar kleine Dinge gibt es dann doch: Der Originallizenzhinweis muss erhalten bleiben und der Lizenztext muss mitgeliefert werden. Euer Apple oder Android Smartphone hat deshalb beispielsweise unter "rechtliche Informationen" diese lange Liste der verwendeten Open-Source-Softwarebibliotheken. In der MeinJena-App (1.6.1 für iOS bzw. 1.6.2 für Android) sucht man solch eine Liste aber weitestgehend vergebens. In der Android-App befindet sich allerdings wenigstens ein Link zur Apache 2.0 Lizenz und im Quellcode noch ein paar Hinweise auf weitere Links. Allerdings ist diese Angabe der Lizenzen nicht ausreichend um die Lizenzbestimmungen einzuhalten und somit basiert die MeinJena-App auf unlizenzierter Software... über die rechtlichen Konsequenzen wissen die Stadtwerke Jena sicherlich bestens Bescheid ;)

Noch überraschender in diesem Zusammenhang ist die Tatsache, dass die Stadtwerke Jena sich nicht mal beim Schreiben einer Appmahnung vorher mit Sachverständigen zusammensetzen. So bezieht sich die Appmahnung u.a. auch auf einen Screenshot von ein paar Zeilen Quellcode, welcher aus einem Open-Source-Projekt eines Dritten und nicht aus eigener Feder stammt. An diesen Codezeilen halten weder die Stadtwerke, noch der von den Stadtwerken beauftragte Softwaredienstleister irgendwelche Rechte, sondern ein gewisser Sveinung Kval Bakke ( https://github.com/sveinungkb/encrypted-userprefs ). Im Facebook-Posting hatte ich sogar scherzhaft gefragt, ob sie diese Codezeilen aus dem Internet kopiert hätten. Scheinbar hat diese Anspielung niemand verstanden. Schade.

Die restlichen "Verstöße" meinerseits sind im Übrigen veröffentliche Variablendeklarationen bzgl. URLs, Pfade innerhalb von URLs und Zufallszahlen. Ob da die Erfindungshöhe jetzt ausreicht, um hier irgendwelche Schutzrechte zu begründen? Wohl eher nicht. Was bedeuten diese Variablen schon groß, wenn deren Kontext und die übrige Software unbekannt und unerklärt bleiben? In der aktuellen Version der Software, welche lange nach meinem Facebook-Kommentar am 20. Mai veröffentlicht wurde, wurden diese Codezeilen im Übrigen nicht wirklich verändert. Man begnügte sich damit Variablennamen umzubenennen und die Zufallszahlen in mehrere aufzuteilen und an anderer Stelle wieder zusammenzubauen. So wichtig waren diese Codezeilen dann wohl doch nicht, oder ist den Stadtwerken Jena nur die Sicherheit der App und der BürgerInnen nicht so wichtig? Aber gut... wenn sie denn meinen, dass dies sicherheitsrelevant und deshalb abmahnbar sein würde, dann müssen sie natürlich auch das BSI und den TLfDI über diesen Vorfall informieren. Viel Spass :)

Forderungen

Deshalb stelle ich folgende Forderungen an unseren Oberbürgermeister Dr. Thomas Nitzsche, in seiner Funktion als Vorsitzenden der Aufsichtsräte der Stadtwerke Jena GmbHs:

  1. Entfernung aller Nutzertracking-, Werbe- und energiewirtschaftlichen Komponenten aus der MeinJena-App.

  2. Umwandlung der MeinJena-App in ein echtes Open-Source-Projekt mit einer reinen gemeinnützigen Zielstellung für Mobilität und Umweltinformationen in und um Jena, um verlorenes Vertrauen gerade bei Kindern und Jugendlichen wiederzugewinnen.

  3. Sofortige Beurlaubung der Geschäftsführung der Stadtwerke Energie Jena-Pößneck GmbH, Stadtwerke Jena GmbH und Nahverkehr Jena GmbH für mindestens ein Jahr in dem sie verpflichtet werden eine Programmiersprache und die Grundlagen der IT-Sicherheit zu lernen und sich mit den EU-PSI-Direktive, der EU-Umweltinformationsrichtlinie, der EU-, Bundes- und Landesinformationsfreiheits- und Transparenzgesetzgebungen inkl. der bisherigen Rechtsprechung hierzu zu beschäftigen.

  4. Berufung der unbesetzten und undefinierten Stelle eines vierten Dezernenten und Schaffung eines Dezernates für Transparenz und Digitale Schnittstellen durch den Oberbürgermeister Dr. Thomas Nitzsche. Meine Initiativbewerbung folgt demnächst :)

Und um es abschließend mit den Worten von Frau Wackernagel nach der sehr schwachen Vorstellung des Projektes "Elektromobilität für Jena 2030" der Stadt(-werke) Jena im Stadtentwicklungsausschuss zu formulieren: "Liebe Stadtwerke: Nächstes Mal bitte besser vorbereite sein!"

Releases

No releases published

Packages

No packages published