Add Thesis

Sicherheitsanalyse einer Android App zur entfernten Steuerung eines Industrial Controllers

Written by T. Glander

Paper category

Bachelor Thesis

Subject

Computer Science

Year

2017

Abstract

Bachelorarbeit: Sicherheitsanalyse von Siemens-Anwendungen Dieses Kapitel befasst sich mit einer vollständigen Sicherheitsanalyse von Anwendungen. Aus diesem Grund wird der Prozess im nächsten Kapitel erläutert, so dass die Ergebnisse im nächsten Kapitel präsentiert werden. An dieser Stelle ist zu bedauern, dass aus Kostengründen keine SIMATIC HMI Panels zur Verfügung stehen. Die Geräte, die Sie selbst verwenden, werden beispielsweise von einer Industriefabrik bereitgestellt, an die keine Geräte angeschlossen werden können. Daher muss versucht werden, das Vorhandensein des HMI-Panels zu simulieren, um eine genauere Sicherheitsanalyse der Anwendung durchführen zu können. Dazu müssen wir zunächst die von der App-Download-Plattform Google Playstore bereitgestellten Daten analysieren. Dies bedeutet die Beschreibung der Anwendung, die Anzahl der Downloads, Kommentare, Bewertungen, Update-Informationen und ob es verschiedene Versionen verschiedener Funktionen gibt. Damit sollen erste Informationen zu Funktionen und Funktionsumfang gesammelt werden, aber das Wichtigste ist, die Verbreitung der Anwendung zu untersuchen. Später werden weitere Daten über die Siemens-Website und andere Websites über die Anwendung analysiert. Wichtig sind hier Informationen über das verwendete Netzwerkprotokoll oder Sicherheitsmaßnahmen. Der nächste Schritt besteht darin, die Anwendung regelmäßig über den Playstore auf Ihrem Android-Smartphone zu installieren, zu starten und auszuprobieren. Alle sicherheitsrelevanten Funktionen der Applikation sollten soweit wie möglich getestet und dokumentiert werden. Dabei sollten zunächst Vermutungen über mögliche Schwachstellen angestellt und dann eine genauere Prüfung bei der Quellcodeanalyse vorgenommen werden. Dann sollte der Netzwerkverkehrsdatensatz bestimmt werden. Installieren Sie dazu die Server-Software auf dem Rechner, der das HMI-Panel möglichst simulieren soll, und starten Sie die Software, um schließlich die von der Applikation gesendeten Daten aufzuzeichnen. Dies dient dazu, zu überprüfen, was die Anwendung an den Server sendet, aber das Wichtigste ist, wie sie sich selbst authentifiziert. Wenn mit dieser Software nicht alles getestet werden kann, entwickeln wir ein Tool, um diese Faktoren zu simulieren. Als letzten Schritt sollte der Quellcode analysiert werden. Hier muss zunächst geprüft werden, ob Siemens den Quellcode zur Analyse bereitstellt, ansonsten muss die Anwendung dekompiliert werden. Dies ist bei in Java geschriebenen Programmen möglich, jedoch kann der Quellcode durch sogenannte Obfuscators bewusst unleserlich gemacht werden. Dies geschieht normalerweise, um das Reverse Engineering zu erschweren. Ist dies erfolgreich, sollten Sie zu Beginn den Aufbau der Bewerbung kurz erläutern. 3.2 Ergebnisse 3.2.1 Recherchen im Google Play Store Recherchen zeigen, dass es zwei Versionen von Siemens-Anwendungen gibt: eine vereinfachte Version und eine Vollversion. Die Lite-Version ist kostenlos, ihr Funktionsumfang ist aber laut Beschreibung deutlich geringer. In dieser Version können nur Bildschirminhalte übertragen werden. Alle anderen Funktionen sind der Vollversion vorbehalten. Die letzte Aktualisierung der Anwendung erfolgte am 13. Dezember 2016 und die aktuelle Versionsnummer ist 01.00.02.00 (Stand 14. März 2017). Die durchschnittliche Bewertung der App beträgt vier Sterne, und die Bewertung mit fünf Sternen ist ziemlich gut. Auch die Kommentare sind überwiegend positiv. Einige Benutzer schrieben, dass Sie Ihr System jetzt über das Internet warten können. Dies zeigt, dass einige Benutzer die Anwendung nicht nur im lokalen Netzwerk verwenden (siehe Abbildung 3.1). Ein anderer Benutzer sagte, dass das verwendete Netzwerkprotokoll VNC (Virtual Network Computing) sein könnte. Dies wird weiter unten diskutiert. Nach Angaben von Playstore liegt die Zahl der Installationen dieser Anwendung zwischen 10.000 und 50.000. Das ist nicht viel, sollte aber auch nicht außer Acht gelassen werden [24]. Die Vollversion kostet im Vergleich zur Lite-Version 12,99 Euro, bietet aber auch einen erweiterten Funktionsumfang. Zusatzfunktionen sind beispielsweise die automatische HMI-Panel-Erkennung oder die Möglichkeit der Fernsteuerung. Die Vollversion wurde zuletzt am 13. Dezember 2016 aktualisiert und hat derzeit die Versionsnummer 01.00.02.00 (Stand: 14. März 2017). Allerdings fällt die Bewertung mit 4,3 Sternen noch etwas besser aus, was man vom Preis erwarten kann. Auch hier berichten Anwender, dass die Überwachung oder sogar Steuerung der Anlage über das Internet ein großer Vorteil ist. Die Zahl der Installationen zeigt, dass die Vollversion nicht von vielen Nutzern genutzt wird, denn sie liegt zwischen 1.000 und 5.000, was nur ein Zehntel der Zahl der Lite-Versionen ist [25]. Weitere Recherchen auf der Siemens-Website ergaben, dass sowohl die Lite-Version als auch die Vollversion der Anwendung Open Source sind [26]. Das bedeutet, dass Sie die Anwendung nicht dekompilieren müssen, um den Quellcode zu erhalten, sondern einfach bei Siemens nachfragen. Dazu müssen Sie sich an die angegebene E-Mail-Adresse wenden. Vermutlich hat Siemens in seinen Anwendungen eine freie Bibliothek der GNU GPL verwendet, so dass man auf Anfrage Quellcode zur Verfügung stellen musste. Darüber hinaus weisen viele Artikel auf Websites oder Foreneinträge darauf hin, dass Siemens tatsächlich VNC zur Bildübertragung verwendet, also das RFB-Protokoll (Remote Frame-Mebuer) verwendet [27, 28]. Die Anwenderberichte am Anfang dieses Kapitels haben bereits darauf hingewiesen. Read Less