Datensicherheit für Anwendungen auf mobilen Geräten

"Im April 2016 wandte sich das FBI an eine spezialisierte Firma, um das iPhone von Syed Farook, einem der Attentäter von San Bernardino, zu hacken. Nach wochenlangem Ringen mit Apple um die Freischaltung des Smartphones verschaffte sich das FBI schliesslich auf anderem Wege Zugriff auf die verschlüsselten Daten."

Fälle wie dieser lösen nicht nur Debatten und Kontroversen über den Schutz der Privatsphäre und die Rechtmässigkeit solcher Methoden aus, sie zeigen auch, wie empfindlich die immer stärker in IT-Lösungen integrierten Smartphones und Tablets in Bezug auf Informationssicherheit sind.

Sicherheitsexperten arbeiten kontinuierlich daran, Firmendaten vor jeder Art von Angriff zu schützen und im Einsatz befindliche Systeme anzupassen, um stets den maximalen Datenschutz zu gewährleisten. Andererseits muss ein einfacher mobiler Zugriff auf Firmendaten, selbst bei schlechter Verbindung, gewährleistet sein. Die sensiblen Daten sind daher auf mobilen Geräten unmittelbaren Gefahren, wie z.B. Diebstahl, ausgesetzt.
 
Besondere Risiken bei mobilen Geräten
Durch denTrend, private Geräte auch beruflich zu nutzen ("Bring Your Own Device" - BYOD) wird das Problem der Datensicherheit noch komplexer; berufliche Anwendungen (Firmendaten) werden neben privaten Anwendungen (wie zum Beispiel Spiele) installiert. Letztere stammen nicht zwingend aus verlässlicher Quelle und können ohne Wissen des Anwenders mit dem Gerät interagieren.
 
Zum Beispiel registriert die Anwendung Facebook für Android den Empfang einer SMS und kann diese auch abfangen (sie lesen, die Informationen speichern und die SMS an eine andere Anwendung weiterleiten).
Dieser Punkt ist kritisch, da manche Onlinebanking-Systeme eine Authentifizierungsmethode anhand von SMS-Nachrichten verwenden. Nichts schützt diese Nachrichten davor, von Anwendungen wie Facebook abgefangen oder sogar in deren Datenbanken weitergeleitet und gespeichert zu werden. Was für Facebook möglich ist, ist auch für schädliche Anwendungen möglich, die beispielsweise in einem kostenlos auf das Smartphone geladenen Spiel verborgen sein könnten. Wurden die Berechtigungen einmal erteilt, kann die Anwendung unkontrolliert auf die auf dem Smartphone gespeicherten Informationen zugreifen. Mit der  AndroidVersion 6 lassen sich Zugriffsrechte wie iOS einzeln verwalten. Allerdings ist die Anwendung nicht gezwungen, das neue System zu verwenden, da die Rückwärtskompatibilität gewährleistet werden muss.

ELCARD: Die Multifaktor-Authentifizierungslösung für Smartphones

Die mobile Anwendung ELCARD ist Teil der von ELCA entwickelten Multifaktor-Authentifizierungslösung. Durch die Verwendung eines Smartphones beim Einloggen bietet sie eine starke Authentifizierung. Diese Anwendung wird von ELCA-Mitarbeitenden und mehreren Kunden genutzt, um auf das jeweilige Firmen-VPN zuzugreifen. Anwendung wie ELCARD, die eine hohe Sicherheit der auf dem Gerät gespeicherten Daten garantiert.
 
Das Entscheidende bei dieser Anwendung ist das Erstellen eines Authentifizierungscodes, der an den Server gesendet wird, um die Identität des Anwenders zu prüfen. Der Code wird anhand einer Kodierungstabelle und mehrerer weiterer Informationen berechnet: einer vom Server gesendeten Aufforderung, einer geräteigenen ID und eines vom Anwender eingegebenen Piktogramms (nach dem Prinzip der "Password-based Encryption", wobei ein Schlüssel von einem Passwort abgeleitet wird – beide werden nirgends gespeichert). Gemeinsam ermöglichen diese Informationen die Erstellung des Authentifizierungscodes, der nur seitens des Servers überprüft werden kann.
Die Kodierungstabelle bildet mit dem Piktogramm des Anwenders den Kern des Algorithmus und wird unter iOS in einer anwendungseigenen Datei gespeichert, da iOS die Informationen verschiedener Anwendung gut voneinander isoliert. Da die Daten unter Android nicht optimal isoliert werden, wird die Tabelle dort in einem obfuskierten nativen Code implementiert. Dieser ist auf jedem Gerät anders. Er wird vom Server für jedes Gerät neu erstellt und dynamisch in den Code der Anwendung integriert. Dieser Vorgang findet bei der ersten Verwendung einer neuen Tabelle statt und macht das Kopieren der Anwendung auf ein anderes Gerät unmöglich- der integrierte native Code wäre nicht mit dem anderen Gerät kompatibel. Zusätzlich wird so die Reichweite von Reverse-Engineering-Angriffen (Dekompilierung des Codes der Anwendung) auf ein Gerät begrenzt.

 

Handhabung empfindlicher Daten im Gesundheitswesen

Immer mehr Unternehmen richten ihre Gesundheitsanwendungen auf die mobile Nutzung aus. ELCA bietet Lösungen die stets auf dem neuesten Stand der Sicherheitstechnik für mobile Geräte sind, insbesondere in folgenden Bereichen:

  • Sichere Backend-Kommunikation
  • Sichere lokale Speicherlösungen

Heutzutage ist der Best-Practice-Ansatz zur Autorisierung von mobilen Anwendungen das OAuth-2.0-Protokoll. Jedoch enthalten laut einem Forschungsbericht von Microsoft knapp 60 Prozent der beliebtesten im Google Play Store verfügbaren Anwendungen "fehlerhafte Protokoll-Implementierungen, die für Angriffe anfällig sind" [1].Tatsächlich enthält die OAuth2.0-Protokoll- Spezifikation selbst (genauer:der Authorization Code Grant Flow) eine dokumentierte Sicherheitslücke, die mobile Anwendungen betrifft [2]. ELCA empfiehlt daher beim Einsatz von OAuth 2.0 die Implementation zusätzlicher Sicherheitsmassnahmen, wie diese etwa in einem vor kurzem publizierten IETF-Entwurf beschrieben sind [3]. Obwohl die Daten unter iOS in isolierten Anwendungssandboxen gespeichert und standardmässig verschlüsselt werden, ist zu beachten, dass die Verschlüsselung (und somit der Schutz) auf der Stärke des geräteigenen Passcodes beruht [4]. Bei öffentlich verfügbaren Anwendungen stellt dies eine besondere Herausforderung dar, weil Entwickler die Verwendung eines solchen geräteigenen Passcodes nicht erzwingen können. Bei der Integration einer Anwendung in eine Unternehmensinfrastruktur hingegen ist dies mit Hilfe von Mobile-Device-Management-Lösungen möglich. Auch wenn die Implementierung anwendungseigener Verschlüsselungsmechanismen, wie es bei ELCARD der Fall ist, machbar ist, kann es nach einer sorgfältigen Bewertung der Risiken ratsam sein, bei sensitiven Informationen auf das Speichern auf mobilen Geräten zu verzichten und die Daten statt dessen nur online und auf Abruf zur Verfügung zu stellen.

 

Die Microsoft-Methode

Die Microsoft-Lösung "Enterprise Mobility Suite" verfolgt einen anderen Ansatz; Dokumente, die Informationen enthalten, werden direkt und unabhängig von der Anwendunggeschützt .
Diese Funktion ist dank der Integration des Systems Azure Rights Management (Azure RMS) möglich, das die Benutzer authentifiziert und Dokumente jeglicher Art verschlüsselt, um den Zugriff auf diese einzuschränken.

Das System  funktioniert wie folgt:

  • Voraussetzung für die Verwendung von Azure RMS ist, dass der Benutzer über einen Azure-Active-Directory-Account verfügt.
  • Das Dokument wird durch die Verschlüsselung gesichert und folglich nicht  angezeigt.
  • Beim Aufrufen eines gesicherten Dokuments wird eine Zugriffsanfrage an das Azure RMS gesendet.
  • Sobald der Benutzer authentifiziert ist, erstellt das System einen Dechiffrierschlüssel. Dieser wiederum wird durch einen öffentlichen Schlüssel des Benutzers verschlüsselt.
  • Auf dem Gerät des Benutzers wird der Dechiffrierschlüssel dann mit dem privaten Schlüssel des Benutzers entschlüsselt.
  • Der Inhalt des Dokuments wird angezeigt; Sind die Benutzerrechte mit der Rechteverwaltung des Azure RMS kompatibel, werden sie von der verbundenen Anwendung berücksichtigt.

Dieser Ansatz hat den Vorteil, die Verbreitung des Dokuments selbst nach seiner Bereitstellung an den Benutzer zu kontrollieren. Wenn also der Empfänger eines Dokuments dieses z. B. per E-Mail weiterleitet, kann es nicht einfach vom neuen Empfänger geöffnet werden. Die Microsoft Lösung ist für mobile Plattformen (iOS, Android und Windows) und Desktop-Betriebssysteme (Windows, Mac OS X) erhältlich und direkt in die Office-Suite-365 und andere Tools wie Foxit-PDF-Reader integriert.
Ein Microsoft-Cloud-Account ist nur zur Authentifizierung erforderlich, da das System zwar Azure-Active-Directory verwendet, die Dokumente selbst aber nicht unbedingt in der Cloud gespeichert werden.

Fazit

Die Verwendung mobiler Anwendungen bringt neue Herausforderungen mit sich, Datensicherheit ist dabei eine der wichtigsten. Aufgrund der beruflichen Verwendung von privaten mobilen Geräten (BOYD), auf denen sowohl berufliche als auch private Anwendungen installiert sind, muss die Frage der Datensicherheit bei Anwendungen schon in der Entwurfsphase berücksichtigt werden. Eine Standardanalyse der Risiken läuft über ein Datenflussdiagramm und eine Klassifizierung der Daten nach ihrer Sensibilität. Ziel dieser Analyse ist es, Risiken einzuschätzen und bei der Entwicklung von Anwendungen auf einer entsprechenden Wissensbasis zu entscheiden. Die Unterstützung durch erfahrene Partner ist daher für eine erfolgreiche Entwicklung und Einführung Ihrer Anwendung unerlässlich.

 

  1. "OAuth Demystified for Mobile Application Developers", 23.05.2016 (http://research.microsoft.com/pubs/231728/OAuthDemystified.pdf)
  2. "Enhancing OAuth Security for Mobile Applications with PKCE", 23.05.2016 (https://openid.net/2015/05/26/enhancing-oauth-security-for-mobile-applic...)
  3. "Proof Key for Code Exchange by OAuth Public Clients", 23.05.2016 (https://tools.ietf.org/html/draft-ietf-oauth-spop-15)
  4. "A (not so) quick primer on iOS encryption", 23.05.2016 (http://www.darthnull.org/2014/10/06/ios-encryption)