Mobile · 3. Juni 2015 0

Manipulation mobiler Geräte

Trotz der bestehenden Sicherheitsmechanismen der Hersteller, gibt es immer wieder Möglichkeiten, das System zu kompromittieren. Einerseits besteht die Gefahr unbewusst durch böswillige Apps, die sogar Codes nachladen (sog. Sideloading) können, oder aber durch Schwachstellen im System selbst. Andererseits ermöglicht eine bewusste Ausnutzung (Jailbreaking, Rooting) von Schwachstellen mehr Rechte zu bekommen, umso z.B. das System selbst zu kontrollieren. In der Forensik helfen solche Schwachstellen, um an die Nutzdaten des Gerätes zu gelangen um dadurch Beweise zu sammeln.

iOS
Apple hat in iOS einige Sicherheitsmechanismen implementiert, die eine unsachgemäße Benutzung verhindern sollen. So ist z.B. der Zugriff auf das Dateisystem tabu, ebenso das Installieren von nicht signierten Apps, die nicht aus dem Apple App Store kommen. Dies verhindert, dass Schadcodes durch Apps auf das Gerät gelangen und Schaden anrichtet können. Um diesen Schutz zu deaktivieren, wird ein sog. Jailbreak angewandt, bei dem über eine Sicherheitslücke neue und von Apple nicht signierte Software installiert wird. Dabei wird der Kernel so verändert, dass auf das Dateisystem voller Zugriff gewährt wird und nicht signierte Apps installiert werden können. Dazu werden Sicherheitsmechanismen, wie bspw. die Code-Signatur deaktiviert. Aktuell werden folgende Arten eines Jailbreaks unterschieden:

Untethered Jailbreaks
Dieser Jailbreak ist die schwierigste und zugleich begehrteste Art, da selbst nach einem Neustart des Gerätes der Zustand erhalten bleibt. Daher auch die Bezeichnung untethered, also nicht kabelgebunden, da keine weitere Verbindung zu einem Computer mit entsprechender Software benötigt wird.

Tethered Jailbreaks
Bei dieser Art wird das Gerät ebenfalls mit einem Computer verbunden und mit Hilfe spezieller Software kompromittiert. Der Kernel bleibt allerdings gegenüber einem Untethered Jailbreak nicht dauerhaft gepatcht und das Gerät muss nach einem Neustart wieder mit dem Computer verbunden werden, um Starten zu können. Zudem besteht die Gefahr, dass das Gerät im Wiederherstellungsmodus hängen bleibt.

Semi-Tethered Jailbreaks
Mit diesem Jailbreak ist es möglich, das ein kompromittiertes Gerät gegenüber dem Tethered Jailbreak selbständig booten kann, allerdings verliert es dabei den Jailbreak wieder.

Durch einen Jailbreak werden verschiedene Funktionen freigeschaltet, wie z.B. der Zugang über SSH. Mit diesem kann sich ein Benutzer mit administrativen Rechten (Root-Rechten) am Gerät anmelden und Software nachinstallieren. Zudem steht der inoffizielle App Store Cydia zur Verfügung. Doch ein Jailbreak bringt auf u.a. folgende Nachteile mit sich:

  • Der Garantieanspruch gegenüber Apple erlischt.
  • Das Gerät kann unter Umständen nicht mehr starten und ist dauerhaft beschädigt.
  • Installation von nicht signierten Apps, die evtl. Schaden anrichten können.
  • Mit einer neuen iOS Version ist der Jailbreak meistens nicht kompatibel und Sicherheitslücken bleiben bestehen.
  • Sicherheitsmechanismen unter iOS werden ausgehebelt.
  • Anfälliger gegenüber Angreifern, Malware oder Spionage.

Für Unternehmen ist das ein echtes Problem, da die Kontrolle über ein Gerät und die darauf befindlichen Daten verloren geht. Zudem öffnet es Sicherheitslücken im Unternehmensnetzwerk und es besteht die Möglichkeit, andere Systeme zu kompromittieren.

Android
Was unter iOS der Jailbreak ist, wird unter Android als Rooten bezeichnet. Die Bezeichnung stammt von Unix/Linux-Benutzer „root“ ab, der uneingeschränkten Zugriff auf ein System hat. So auch unter Android, das auf Linux basiert. Doch Gerätehersteller verwehren den Zugriff standardmäßig, umso Veränderungen am System zu unterbinden und Risiken unterschiedlicher Art zu vermeiden. Denn auch hier erlischt in der Regel die Garantie auf das Gerät. Besitzt ein User oder eine App Root-Rechte, besteht die Möglichkeit, auf Inhalte anderer Apps oder Systemanwendungen sowie auf das Dateisystem zuzugreifen, Apps zu installieren oder andere Operationen durchzuführen, die sonst verwehrt bleiben. Zudem können Hardware-Parameter verändert werden, um bspw. den Prozessor zu übertakten. Dennoch hat es auch etwas Gutes sich Root-Rechte zu verschaffen. Denn gerade unter Android, welches häufig mit vielen vorinstallierten Apps (Bloatware) ausgeliefert wird, die nicht immer benötigt werden, besteht somit die Chance, sich von diesen zu befreien, aber auch Custom-ROMs (alternative Android Versionen) zu installieren. Folgende Arten werden beim Rooten unterschieden:

Hard-Rooten
Hier wird entweder ein neuer Kernel aufgespielt oder aber Teile des Systems so verändert, das man dauerhaft mit Root-Rechten auf das System zugreifen kann. Voraussetzung dafür ist eine Verbindung mit einem Computer, auf dem die entsprechende Software installiert ist.

Soft-Rooten
Durch das Ausnutzen einer Schwachstelle im System können Root-Rechte erlangt werden. Hierbei wird eine Root-Shell geöffnet, über die das System modifiziert wird, doch beim Beenden dieser gehen die Root-Rechte wieder verloren.

Die Nachteile, die sich beim Rooten ergeben, sind ähnlich der des Jailbreaks unter iOS. Nicht nur die Hersteller-Garantie erlischt, sondern es besteht auch hier die Gefahr, dass ein Gerät unbrauchbar wird. Ferner ist es anfälliger gegenüber Angreifern und Schadsoftware und es können neue Sicherheitslücken entstehen, was aus Sicht eines Unternehmens inakzeptabel ist. Doch über MDM-Systeme kann das Risiko minimiert werden.