Zusammenfassung
Die vorliegende Arbeit erforscht die Umsetzung eines mobilen Bezahlsystems mittels dem eKaay Verfahren. Es soll direkte Transaktionen zwischen zwei Benutzern von Smartphones ermglichen und dabei einen guten Kompromiss aus Sicherheit und Benutzerfreundlichkeit bieten. Die Sicherheit muss in einer Analyse nachgewiesen und mit weiteren Verfahren verglichen werden. Beide Ziele wurden erreicht. Dabei ist es gelungen neben dem Bezahlverfahren auch eine Erweiterung fr Online Shop Systeme zu entwickeln. Die Analyse ergab eine Reihe von hnlichen Problemen und Lsungsanstzen in verschiedenen mobilen Peer-to-Peer Bezahlsystemen. Aus diesen Gemeinsamkeiten konnten verschiedene Empfehlungen fr die Entwicklung weiterer Verfahren abgeleitet werden.
Stefan Gfrrer
Eidesstattliche Erklrung
Ich, Stefan Gfrrer, versichere hiermit, dass ich meine Diplomarbeit mit dem Thema Peer-to-Peer Payment via NFC selbstndig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe, wobei ich alle wrtlichen und sinngemen Zitate als solche gekennzeichnet habe. Die Arbeit wurde bisher keiner anderen Prfungsbehrde vorgelegt und auch nicht verentlicht. Tbingen, den 20. April 2012
Stefan Gfrrer
Stefan Gfrrer
Inhaltsverzeichnis
Abkrzungsverzeichnis Abbildungsverzeichnis Tabellenverzeichnis Verzeichnis der Listings 1. Einleitung 1.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2. Ziel der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3. Verwandte Arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4. Voraussetzungen zum Verstndnis der Arbeit . . . . . . . . . . . . . 1.5. Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. Grundlagen und Hintergrnde 2.1. eKaay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2. Near Field Communication (NFC) . . . . . . . . . . . . . . . . . . . 2.3. Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4. Mobile Payment (MP) . . . . . . . . . . . . . . . . . . . . . . . . . . 3. Peer-to-Peer Payment mit eKaay 3.1. Formulierung der Ziele . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2. Entwurf einer Testumgebung . . . . . . . . . . . . . . . . . . . . . . 3.3. Entwurf von eKaayCash . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1. Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2. Peer-to-Peer Kommunikation . . . . . . . . . . . . . . . . . . 3.3.3. Verbesserung der Sicherheit . . . . . . . . . . . . . . . . . . . 3.4. Erweiterung fr Online Shop Systeme . . . . . . . . . . . . . . . . . 3.5. Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4. Analyse bestehender mobiler Bezahlsysteme 4.1. Vorgehen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1. Auswahl der Verfahren und Kriterien . . . . . . . . . . . . . . 4.1.2. Ablauf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V VII XI XIII 1 1 2 2 3 3 5 5 9 11 12 17 17 18 19 19 21 24 25 27 29 29 29 30
Stefan Gfrrer
Stefan Gfrrer
II
III
Stefan Gfrrer
Abkrzungsverzeichnis
AES . . . . . . . . . . . . . . . Advanced Encryption Standard API . . . . . . . . . . . . . . . . Application Programming Interface (engl. fr Programmierschnittstelle) ASK . . . . . . . . . . . . . . . Amplitude Shift Keying C2C . . . . . . . . . . . . . . . . Consumer-to-Consumer CNP . . . . . . . . . . . . . . . Card not present transaction ECC . . . . . . . . . . . . . . . Elliptic Curve Cryptography (engl. fr Elliptische-KurvenKryptographie) EDGE . . . . . . . . . . . . . Enhanced Data Rates for GSM Evolution EMV . . . . . . . . . . . . . . . Europay, MasterCard, Visa GSM . . . . . . . . . . . . . . . Global System for Mobile Communications HMAC . . . . . . . . . . . . . Keyed-Hash Message Authentication Code ID . . . . . . . . . . . . . . . . . Identication (engl. fr Identikator oder Kennung) IMEI . . . . . . . . . . . . . . . International Mobile Equipment Identity LTE . . . . . . . . . . . . . . . . Long Term Evolution MITM . . . . . . . . . . . . . Man-in-the-middle attack (engl. fr Man-in-the-middle-Angri) MP . . . . . . . . . . . . . . . . Mobile Payment NDEF . . . . . . . . . . . . . NFC Data Exchange Format NFC . . . . . . . . . . . . . . . Near Field Communication (engl. fr Nahfeld-Kommunikation) P2P . . . . . . . . . . . . . . . . Peer-to-Peer oder Person-to-Person PIN . . . . . . . . . . . . . . . . Personal Identication Number (engl. fr Persnliche Identikationsnummer) POS . . . . . . . . . . . . . . . Point of Sale QR Code . . . . . . . . . . . Quick Response Code RFID . . . . . . . . . . . . . . Radio-Frequency Identication SDP . . . . . . . . . . . . . . . Service Discovery Protocol SE . . . . . . . . . . . . . . . . . Secure Element SMS . . . . . . . . . . . . . . . Short Message Service (engl. fr Kurznachrichtendienst) SSL . . . . . . . . . . . . . . . . Secure Sockets Layer
Stefan Gfrrer
Stefan Gfrrer
VI
Abbildungsverzeichnis
2.1. Verwendung von eKaay als alternatives Loginverfahren im Webmail Angebot der Universitt Tbingen (Quelle: ZDV Tbingen [2012]). . 2.2. Das eKaay TAN Verfahren im Detail. Das Versenden der Besttigung ist nicht enthalten (eigene Darstellung). . . . . . . . . . . . . . . . . 2.3. Das eKaay PIN Verfahren aus Sicht des Benutzers. Links ist ein Handy mit permutiertem Ziernfeld und rechts das Formular im Browser mit QR Code und Zierneingabefeld ohne Beschriftung dargestellt (Quelle: Borchert [2012a]). . . . . . . . . . . . . . . . . . . . . . . . . 2.4. Die von NFC verwendeten Kodierungen (Quelle: Van Damme u. a. [2005]; [bersetzung durch Verfasser]). . . . . . . . . . . . . . . . . . 2.5. Eine Peer-to-Peer berweisung ausgehend vom Zahlenden (Quelle: Agarwal u. a. [2007]; [bersetzung durch Verfasser]). . . . . . . . . . 2.6. Eine Peer-to-Peer berweisung ausgehend vom Geldempfnger (eigene Darstellung). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1. Formular fr eine mobile berweisung. Geldempfnger und Zahlender werden automatisch erfasst (eigene Darstellung). . . . . . . . . . . . 3.2. Ablauf einer Transaktion mittels eKaayCash. Besttigungen nach erfolgreicher Durchfhrung an beide Parteien sind der bersicht wegen nicht enthalten (eigene Darstellung). . . . . . . . . . . . . . . . . . . 3.3. Beispiel fr einen Artikel mit der dazugehrenden eKaayCash Transaktion zum gleichzeitigen Kaufen und Bezahlen (eigene Darstellung). 3.4. Ablauf eines Einkaufs im Online Shop mit eKaayCash. Es wird davon ausgegangen, dass die Transaktion bereits erzeugt wurde (eigene Darstellung). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1. Erfolgreicher Man-in-the-Middle Angri auf eine Server-Client Verbindung. Der Angreifer Mallory kann den Kommunikationsuss zwischen Alice und Bob vollstndig kontrollieren (eigene Darstellung). . 4.2. Der Angreifer Eve hat zwar keinen direkten Einuss auf den Kommunikationskanal, kann aber die Verbindung zwischen Alice und Bob unbemerkt belauschen (eigene Darstellung). . . . . . . . . . . . . . . 34 34 27 26 21 20 16 15 11 9 8 6
VII
Stefan Gfrrer
4.15. Ablauf einer Transaktion zwischen zwei Smartphones nach dem GeldkartenPrinzip (eigene Darstellung). . . . . . . . . . . . . . . . . . . . . . . 4.16. Die Ergebnisse der Sicherheitsanalyse im berblick (eigene Darstellung). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1. Aktivittsdiagramm, welches die Generierung einer berweisung zeigt (eigene Darstellung). . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 73 70
Stefan Gfrrer
VIII
IX
Stefan Gfrrer
Tabellenverzeichnis
3.1. Syntax der Daten von eKaay TAN aus einem QR Code (Quelle: Borchert [2012a]). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1. bersicht aller Angrismethoden auf mobile Bezahlsysteme (eigene Darstellung) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Der Sicherheitsheader fr Nachrichten im Verfahren mit Bluetooth. Er wird an die eigentlichen Nutzdaten angehngt (vgl. Gao u. a. [2006]; [bersetzung durch Verfasser]). . . . . . . . . . . . . . . . . . . . . . 65 39 22
XI
Stefan Gfrrer
XIII
Stefan Gfrrer
1. Einleitung
1.1. Motivation
Bargeldloser Zahlungsverkehr erfhrt in regelmigem Abstand neue Entwicklungen. Das Ziel der Finanzinstitute ist es benutzerfreundliche, einfache und sichere Bezahlsysteme als Ersatz fr das klassische Bargeld einzusetzen. Whrend das Bezahlen bei Hndlern mit Hilfe von Kredit- und Geldkarten umgesetzt werden kann, ist der direkte Austausch von Betrgen zwischen einzelnen Personen deutlich komplizierter und wird von vielen Systemen nicht vorgesehen. Gerade dieser Punkt ist jedoch fr elektronisches Bargeld von essentieller Bedeutung. Diese sogenannten Peer-to-Peer (P2P) berweisungen verbinden die direkte Anwendung von klassischem Bargeld mit den Vorteilen moderner bargeldloser Systeme. Ein Geldaustausch ist damit jederzeit in Echtzeit mglich und gleichzeitig knnen fortschrittliche Sicherheitsmechanismen angewandt werden. Des Weiteren lassen sich zustzliche Dienste wie die Einsicht von Kontostnden und Sonderangebote mit dem Bezahlsystem verknpfen. Allerdings sind zur Realisierung solcher bargeldloser Systeme Endgerte notwendig, welche gegenber einfachen Geldkarten einen greren Funktionsumfang haben und eigenstndig operieren knnen. Diese Bedingungen werden unter anderem von Mobiltelefonen erfllt. Aus diesem Grund existieren verschiedene Bestrebungen fr die Umsetzung von mobilen Bezahlsystemen auf Handys. In klassischen Mobiltelefonen werden diese Systeme hug wegen der begrenzten technischen Mglichkeiten ohne eine P2P Funktion umgesetzt (vgl. Choi u. a. [2007]). Moderne Smartphones erlauben hingegen neue Kommunikationsformen und bieten eine Plattform fr neue mobile Bezahlsysteme. Besonders die Entwicklung in Nahfunksysteme zur Datenbermittlung kann direkte Geldberweisungen zwischen einzelnen Personen ohne dritte Instanz stark vereinfachen. Smartphones ermglichen mit ihrem wachsenden Funktionsumfang aber auch neue Angrie auf die Plattform. Gerade fr Systeme, welche den Zugri auf nanzielle Mittel ermglichen, ist die Sicherheit jedoch von wesentlicher Bedeutung. Um sowohl der gewnschten Benutzerfreundlichkeit in einer Peer-to-Peer Umgebung gerecht zu werden und gleichzeitig ein sicheres Bezahlen zu ermglichen, baut die vorliegende Arbeit auf das eKaay Verfahren auf. Dieses Verfahren wurde an
Stefan Gfrrer
Stefan Gfrrer
Peer-to-Peer Payment via NFC 1.4. Voraussetzungen zum Verstndnis der Arbeit
Stefan Gfrrer
2.1. eKaay
Ein wiederkehrendes Problem in der Sicherheit von Computersystemen ist die Umsetzung sicherer Anmeldeverfahren. Klassische Abfragen von Benutzername und Kennwort knnen leicht durch Social Engineering gebrochen werden (vgl. Jakobsson u. Myers [2006]). Das Verfahren eKaay versucht diese Problematik durch die Einfhrung eines zweiten Kanals in Form eines Smartphones zu umgehen. Anstelle einer Eingabemaske erhlt der Benutzer auf dem Bildschirm des Computers einen 2D Code (vgl. Abbildung 2.1). Dieser Code enthlt unter anderem eine Challenge in Form einer Nonce. Der Inhalt des 2D-Codes muss dabei nicht geheim bleiben. Fotograert der Benutzer den 2D-Code mit Hilfe des Smartphones und der darauf installierten eKaay App ab, liest diese den Inhalt des Codes zunchst aus. Der Benutzer muss dann die Anmeldung auf dem Smartphone besttigen. Die eKaay App berechnet daraufhin aus der Nonce und einem auf dem Smartphone gespeicherten und mit dem Server geteilten Geheimnis eine Response. Diese Response wird zusammen mit den Benutzerdaten an den Kontoserver bermittelt. Er prft die Response auf Korrektheit und meldet den Benutzer im Erfolgsfall an. Voraussetzung fr den beschriebenen Ablauf ist eine vorherige Registrierung des Benutzerkontos in der eKaay App und damit Hinterlegung der ntigen Kontodaten einschlielich des geteilten Geheimnisses. Einzelne Konten knnen auf dem Handy mit Hilfe einer Personal Identication Number (PIN) gesichert werden. Die Funktionalitt von eKaay wird von zwei Komponenten zur Verfgung gestellt. Einerseits ist auf dem Smartphone die eKaay App installiert. Anderseits muss der Kontoserver ber die Serverkomponente von eKaay verfgen. Diese erzeugt den 2D-Code und initiiert und validiert dann das Challenge-Response-Verfahren. Die App wurde bereits fr Apple iOS und Google Android umgesetzt. Der Server wurde mit PHP entwickelt. Als 2DCode kommt ein Quick Response Code (QR Code) zum Einsatz (vgl. ISO [2000b], Borchert [2012a] und Gnther [2011]).
Stefan Gfrrer
Abbildung 2.1.: Verwendung von eKaay als alternatives Loginverfahren im Webmail Angebot der Universitt Tbingen (Quelle: ZDV Tbingen [2012]).
Gnther [2011] zeigt in einer Sicherheitsanalyse von eKaay, dass das Verfahren den Anmeldevorgang an sich in der Tat sicherer gestaltet, als zum Beispiel die klassische Anmeldung mit Benutzername und Passwort. Allerdings weist er auch auf eine Reihe von Problemen hin. Ein auf dem Smartphone installiertes Schadprogramm kann in verschiedenen Szenarien das geteilte Geheimnis lesen und damit selbst gltige Anmeldungen generieren. Beispielsweise sind alle auf dem Smartphone gespeicherten Daten nie vollkommen geschtzt (vgl. Abschnitt 2.3). Dieses Sicherheitsrisiko lsst sich durch die Abfrage einer PIN vermindern, jedoch ist auch diese durch ein Schadprogramm angreifbar. Als Lsung fr diese Gefahr schlgt Gnther [2011] die Verwendung einer programmierbaren Karte mit Funkverbindung vor (vgl. Abschnitt 2.2). Das Geheimnis kann auf diese Karte ausgelagert werden. In diesem Szenario leitet das Smartphone die Challenge an die Karte ber die Funkverbindung weiter. Die Challenge wird von der Karte beantwortet und das Smartphone empfngt die generierte Response. Das Geheimnis verbleibt somit auf der Karte und kann von keinem Schadprogramm auf dem Smartphone ausgelesen werden (ebd.). Eine Variante von eKaay ist eKaay TAN, welches zur Besttigung von Transaktionsdaten dient. Es kann unter anderem bei der Besttigung einer berweisung im Onlinebanking verwendet werden. Der Hauptunterschied zum klassischen Anmeldeverfahren ist die Erweiterung der Challenge um die Daten der Transaktion.
Stefan Gfrrer
Stefan Gfrrer
2. bertragung der berweisung 4. Challenge in Form des 2D Code 7. Prfung der Daten und Response Generierung 6. Einlesen
Abbildung 2.2.: Das eKaay TAN Verfahren im Detail. Das Versenden der Besttigung ist nicht enthalten (eigene Darstellung). Eine weitere, fr diese Arbeit relevante, Technik von eKaay ist die Erweiterung eKaay PIN. Sie erweitert das eKaay Verfahren um einen wissensbasierten Schutz. Entgegen klassischer PIN Verfahren wird aber nicht die PIN eingegeben, da diese immer von einem Schadprogramm mitgelesen werden kann. Stattdessen berechnet das Smartphone eine Permutation der Ziern. Diese Permutation basiert auf dem Schlssel des Benutzerkontos und der Challenge und ist somit fr jeden Vorgang individuell. Die Permutation in Form von vertauschten Zahlen in einem Ziernfeld wird dem Benutzer auf dem Handy angezeigt. Im Browser des Computers sieht er des Weiteren ein Zierneingabefeld ohne Beschriftung. Basierend auf der angezeigten Permutation muss der Benutzer die entsprechenden Buttons im Einga-
Stefan Gfrrer
Abbildung 2.3.: Das eKaay PIN Verfahren aus Sicht des Benutzers. Links ist ein Handy mit permutiertem Ziernfeld und rechts das Formular im Browser mit QR Code und Zierneingabefeld ohne Beschriftung dargestellt (Quelle: Borchert [2012a]). Zusammenfassend lsst sich sagen, dass eKaay ein Rahmenwerk fr sichere Anmeldungen und Besttigungen von Daten darstellt. Aufgrund der Verwendung von QR Codes bietet es den Anwendern Vorteile in der Benutzbarkeit und macht das Merken von komplizierten Passwrtern berssig.
Stefan Gfrrer
10
Stefan Gfrrer
Abbildung 2.4.: Die von NFC verwendeten Kodierungen (Quelle: Van Damme u. a. [2005]; [bersetzung durch Verfasser]).
Gerts gegenber einem anderen erklrt werden. Eine Studie des Marktforschungsinstituts Heute und Morgen gibt an, dass ein Teil der Befragten die fehlende Transparenz bemngelt (vgl. Unrath [2012]).
2.3. Android
Android ist zum Zeitpunkt der Entstehung dieser Arbeit eines der wenigen mobilen Betriebssysteme, welches NFC untersttzt. Zudem ist es eines der ersten Systeme, fr welches man NFC-fhige Smartphones erwerben kann (vgl. NFC Forum [2012]). Zum Zeitpunkt der Entstehung dieser Arbeit steht die mit Android Version 2.3 Gingerbread eingefhrte Programmierschnittstelle (API) fr Nahfunk zur Verfgung (vgl. Google [2012a]). Eine vereinfachte API fr Peer-to-Peer Verbindungen wird mit Android Version 4 Ice Cream Sandwich verfgbar werden. Die Schnittstelle aus Version 2.3 bleibt aber erhalten und ist auch in spteren Versionen gltig (vgl. Google [2012b]). Android sichert Daten auf dem Smartphone durch eine Reihe von Mechanismen ab. Die grundlegende Sicherheit entsteht durch eine strikte Abschottung einzelner Applikationen von einander. Dazu gehren neben der Kommunikation zwischen einzelnen Programmen auch der Zugri auf das Dateisystem. Zustzlich werden einzelne Funktionen nur durch explizite Anfrage und Erlaubnis durch den Benutzer bewilligt. Beispielsweise muss eine Applikation fr die Nutzung der NFC Schnittstelle freigegeben werden. Diese Sicherheitsmechanismen knnen aufgrund von bisher unerkannten Fehlern umgangen werden. Zustzlich knnen Benutzer das Betriebssystem unter bestimmten Bedingungen neu installieren und ihrem Benutzerkonto
Stefan Gfrrer
11
12
Stefan Gfrrer
Stefan Gfrrer
13
14
Stefan Gfrrer
3a. Besttigungsanfrage
3b. Besttigung
1b. Zahlungsanfrage
2. Verifikation
Abbildung 2.5.: Eine Peer-to-Peer berweisung ausgehend vom Zahlenden (Quelle: Agarwal u. a. [2007]; [bersetzung durch Verfasser]).
Stefan Gfrrer
15
2. Besttigte Zahlungsanfrage
16
Stefan Gfrrer
Stefan Gfrrer
17
nderungen an der Architektur vermeiden. Die Implementierung des eigentlichen Bezahlverfahren muss mglichst ohne nderung der Architektur durchgefhrt werden. Dies betrit insbesondere eKaay. Dies setzt eine Trennung des Bezahlsystems von eKaay voraus und ermglicht so eine unabhngige Weiterentwicklung beider Systeme.
Damit das Bezahlsystem unter realistischen Bedingungen getestet werden kann, wird ein einfaches Onlinebanking System umgesetzt. Es dient als Testumgebung und stellt die grundlegende Architektur auf Seiten der Bank. Das System wird im Folgenden als Server bezeichnet. Er bietet ein einfaches, auf einer Datenbank basierendes Kontensystem an. Jedes Konto erfordert individuelle Anmeldedaten und besitzt ein Guthaben. berweisungen sind innerhalb der Bank von einem Konto zu einem anderen mglich. Dafr steht ein berweisungsformular zur Verfgung, welches neben Empfnger und Betrag auch die Eingabe eines Verwendungszweck vorsieht. Anstelle eines klassischen TAN Verfahrens wird der Einfachheit halber das eKaay TAN Verfahren eingesetzt. Es ermglicht die Besttigung ohne externe TAN Liste oder dynamische TAN Systeme wie z. B. einem TAN Generator. Die Anmeldung zum Konto ist sowohl durch manuelle Eingabe von Benutzername und Passwort als auch durch eKaay mglich. Um eKaay einsetzen zu knnen, wurde die Serverkomponente von eKaay nach Anleitung parallel zum Server der Bank installiert (vgl. Borchert [2012a]). Damit eine Anbindung des Kontos an eKaay mglich ist, kann ein Benutzer in seinen persnlichen Kontoeinstellungen das Smartphone und damit auch das Konto fr eKaay registrieren. Mit Ausnahme der Anmeldung und der TAN-Abfrage implementiert die Bank keinerlei Sicherheitsmechanismen wie sie fr Finanzinstitute vorgeschrieben sind. Dies ist nicht Inhalt dieser Arbeit und wrde den Rahmen bersteigen. Um dem Zweck einer Testumgebung gerecht zu werden, stellt der Server eine Reihe von Ausgaben zur Verfgung. Diese Ausgaben ermglichen die Beobachtung aller Konten und aller durchgefhrten Transaktionen. Der Server ist wie eKaay komplett in PHP entwickelt. Eine bersicht ist in Anhang A in Abbildung A.1.
18
Stefan Gfrrer
3.3.1. Verfahren
Zur Vereinfachung wird eKaayCash als ein Konto basierendes mobiles Bezahlsystem umgesetzt. Wie in Abschnitt 2.4 beschrieben, knnen in Konto basierenden Verfahren die eigentliche Bank und der Dienstanbieter fr das mobile Bezahlsystem ein und dieselbe Partei sein. Das Verfahren muss in diesem Fall keine eigene Verwaltung von Guthaben implementieren, da es lediglich eine Weiterleitung der besttigten berweisungen an die Bank durchfhrt. Das hat den Vorteil, dass das Verfahren die Verizierungsmechanismen der Bank verwenden kann. Diese Festlegung folgt den in Abschnitt 3.1 beschriebenen Regeln. Insbesondere ist keine Implementierung einer gesonderten Verizierung in eKaay notwendig. Unabhngig vom eigentlichen Ablauf muss das Verfahren eine Reihe von Daten von den Benutzern erfassen. Essentiell sind der Bezeichner des Geldempfngers, der Bezeichner des Zahlende und der Betrag. Optional und blichen berweisungsformularen folgend wird auch die Eingabe eines Verwendungszweck ermglicht (vgl. ZKA [2009]). Das entstehende Formular kann auf zwei Arten dargestellt werden. Es kann entweder direkt in einer Applikation auf dem Smartphone des Benutzers integriert werden. Das erhht jedoch den Aufwand im Falle einer Portierung auf andere Betriebssystem. Oder eine einfachere Variante ist die Darstellung einer in die Bank integrierten Webseite. In diesem Fall entspricht das Formular weitestgehend einem klassischen berweisungsformular im Onlinebanking. Das Formular kann dann nicht nur auf Smartphones in einem mobilen Umfeld genutzt werden, sondern auch von einem klassischen Computer mit Bildschirm. Lediglich die zweite beteiligte Partei bentigt ein Smartphone. Im Gegensatz zu einem klassischen berweisungsformular mssen nicht alle Daten manuell abgefragt werden. Im klassischen Verfahren ist der Zahlende bekannt, da er die berweisung erstellt. In einer mobilen Variante mit eKaay fllt zustzlich die zweite Partei weg, da sie durch das in der eKaay App gespeicherten Konto identiziert werden kann (vgl. Abschnitt 2.1). Das Formular muss dann nur noch den Betrag und den optionalen Verwendungszweck abfragen (vgl. Abbildung 3.1).
Stefan Gfrrer
19
P2P berweisung
Betrag: 0,00 Verwendungszweck (optional):
Abbildung 3.1.: Formular fr eine mobile berweisung. Geldempfnger und Zahlender werden automatisch erfasst (eigene Darstellung). Mit der Festlegung der Art des mobilen Bezahlsystems und dem Entwurf eines Formulars fr mobile berweisungen auf Seiten der Bank, kann der eigentliche Ablauf einer Transaktion bestimmt werden. Wie in Abschnitt 2.4 erlutert, kann eine Transaktion vom Zahlendem oder vom Geldempfnger ausgehen. Der in Abbildung 2.2 dargestellte Ablauf fr eKaay TAN entspricht der in Abschnitt 2.4 beschriebenen, vom Geldempfnger ausgehenden, Variante. Ein Ablauf vom Geldempfnger aus ist auch aufgrund des Webformulars notwendig. Beim Aufruf des Formulars hat der Geldempfnger sich am Server der Bank angemeldet. Nach Eingabe aller Daten erhlt der Server somit Informationen ber Geldempfnger, Betrag und Verwendungszweck. Durch die Besttigung der eKaay TAN Challenge durch den Zahlenden erhlt der Server den fehlenden Identikator (ID) des Zahlenden und kann im Anschluss eine vollstndige berweisung durchfhren. Der Ablauf mit eKaay ist zwar auch vom Zahlenden ausgehend durchfhrbar, in diesem Fall muss er aber die ID des Geldempfngers entweder manuell eingeben oder es ist eine zustzliche Kommunikation zwischen beiden Smartphones notwendig, welche den ID Austausch beinhaltet. Des Weiteren kann der vorgeschlagene Ablauf in einer spteren Variante von eKaayCash verwendet werden (vgl. Abschnitt 3.4). Der im Folgenden beschriebene und in Abbildung 3.2 grasch dargestellte Ablauf bercksichtigt somit die in Abschnitt 3.1 festgelegten Punkte Grundarchitektur und Vermeidung von nderungen in derselben. Eine ausfhrliche Darstellung bendet sich im Anhang A in Abbildung A.2. 1. Der Geldempfnger ruft das berweisungsformular auf und gibt den Betrag und optional den Verwendungszweck ein. Er sendet das Formular an den Server. 2. Der Server liest den Identikator des Geldempfnger aus. Aus ID, Betrag und Verwendungszweck generiert er unter Verwendung von eKaay eine Challenge und bertrgt diese in Form eines QR Codes oder kodiert fr eine bertragung via NFC an den Geldempfnger.
20
Stefan Gfrrer
1. berweisungsformular
Abbildung 3.2.: Ablauf einer Transaktion mittels eKaayCash. Besttigungen nach erfolgreicher Durchfhrung an beide Parteien sind der bersicht wegen nicht enthalten (eigene Darstellung).
Stefan Gfrrer
21
Wie in Abschnitt 2.1 dargelegt, muss der QR Code vom Zahlenden unter Verwendung der eKaay App abfotograert werden. Die App liest anschlieend die enthaltenen Daten aus und fhrt den nchsten Schritt des eKaay TAN Verfahrens durch. Da die Applikation fr diesen Zweck nicht angepasst werden muss, ist eKaayCash aus diesem Grund sowohl mit Android basierten, als auch mit iOS basierten Smartphones kompatibel. Damit ist der Aspekt der Kompatibilitt aus Abschnitt 3.1 erfllt. Das zweite Kommunikationsmedium ist die bertragung mittels Near Field Communication. Um den QR Code einzulesen mssen die Smartphones in einer bestimm-
22
Stefan Gfrrer
ekaaycash://EKAAY%250D%250AV1%250D%250ASESAME (...)
Listing 3.1: Beispiel fr einen eKaayCash NFC Link kodiert gem Lee u. a. [1994] (eigene Darstellung). Zur Benutzung von NFC muss der Anwender nur diesen Link ausfhren. Dies startet automatisch die eKaay App aufgrund folgender Erweiterung. Die Erweiterung verknpft die App mit dem implementierten Scheme. Dazu wird das in Abschnitt 2.3 vorgestellte Manifest um einen Filter fr benutzerdenierte URL Schemes erweitert. Der Filter gibt an, dass das Programm ein neues Scheme registriert und dieses verarbeiten kann. Das Betriebssystem erhlt damit die Information, welches Programm bei Aufruf eines bestimmten Schemes ausgefhrt werden muss. Wurde der NFC Link von der eKaay App empfangen und wurden die kodierten Nutzdaten extrahiert, knnen diese mittels NFC bertragen werden. Dazu werden die Nutzdaten dekodiert und in eine Nachricht nach dem NFC Data Exchange Format eingebettet (vgl. Abschnitt 2.2). Diese wird anschlieend an den NFC Adapter von Android bermittelt, welcher sie im Fall eines Kontakts bertrgt. Die App aktiviert gleichzeitig den Empfang von Nachrichten. Auf diese Weise mssen sowohl der Geldempfnger als auch der Zahlende keine weiteren Schritte unternehmen. Die Datenbertragung ndet statt, sobald sich beide Smartphones in einem ausreichend geringen Abstand zueinander benden.
Stefan Gfrrer
23
Die Sicherheit von mobilen Bezahlsystemen kann durch die zwingende Eingabe einer PIN zur Besttigung der Transaktion verbessert werden. Die Eingabe einer PIN vermindert jedoch wiederum die Benutzerfreundlichkeit. Zudem ist sie bei Kleinstbetrgen hug nicht notwendig, da der Aufwand fr einen Angreifer hher zu bewerten ist, als der Gewinn aus diesen Summen. Im Zuge der Einfhrung des kontaktlosen girogo Verfahrens hat die Deutsche Kreditwirtschaft [2012] eine Hchstgrenze von zwanzig Euro fr Transaktionen ohne PIN festgelegt. Hhere Betrge mssen durch eine klassische Transaktion mit Eingabe der PIN versandt werden. Dieses Prinzip verbindet Benutzerfreundlichkeit mit einer hohen Sicherheit (ebd.). In das eKaayCash Verfahren kann derselbe Mechanismus integriert werden. Anstelle einer normalen PIN, welche von einem Schadprogramm ausgelesen werden kann, verwendet es jedoch das eKaay PIN Verfahren (vgl. Abschnitt 2.1). Nach Besttigung der Transaktion durch den Zahlenden stellt die eKaay Server Komponente eine Anfrage an den Server des Dienstanbieters, ob eine PIN fr die vorliegende berweisung notwendig ist. Diese Funktionalitt ist bereits in eKaay integriert und bentigt dementsprechend keine weitere nderungen am System. Der Server des Dienstanbieter muss auf Basis der bertragenen Parameter, welche unter anderem die Transaktions ID enthalten, entscheiden ob eine PIN notwendig ist. Wie bei girogo wird als Entscheidungsgrund der Betrag mit einem Grenzwert verglichen. Mit diesem Ablauf sind allerdings weitere Kriterien umsetzbar. Beispielsweise kann der Dienstanbieter bei einer groen Anzahl kleinerer Betrge innerhalb eines kurzen Zeitraums ebenfalls eine PIN verlangen. Die vorgeschlagene Erweiterung verbessert die Sicherheit des eKaayCash Verfahrens ohne nderungen am zugrundeliegenden System. Dabei ist es exibel erweiterbar. Durch die Verwendung von eKaay PIN kann die PIN zudem nicht durch ein Schadprogramm auf dem Handy gestohlen werden.
24
Stefan Gfrrer
Stefan Gfrrer
25
Abbildung 3.3.: Beispiel fr einen Artikel mit der dazugehrenden eKaayCash Transaktion zum gleichzeitigen Kaufen und Bezahlen (eigene Darstellung). angeboten (vgl. PayPal [2012c]). Wie in der Sicherheitsanalyse noch deutlich werden wird (vgl. Abschnitt 4.3.1.2), ist diese Prfung zwingend notwendig. Fr die Art der Kontrolle existieren verschiedene Mglichkeiten. So ist auch die Verwendung eines Public-Key-Verfahrens denkbar. Die vorliegende Arbeit hat, der Vereinfachung wegen, das oben beschriebene Verfahren umgesetzt. Der folgende Ablauf beschreibt einen Einkauf mit Hilfe von eKaayCash in einem Online Shop. Die Generierung der Transaktion und der Challenge ist nicht enthalten, da sie mit Abbildung 3.2 bereinstimmt. Der Ablauf beginnt mit dem Einlesen der Challenge durch den Zahlenden. Er ist in Abbildung 3.4 grasch dargestellt. In Anhang A in Abbildung A.3 bendet sich eine Grak des vollstndigen Ablaufs. 1. Der Kunde liest den QR Code mit seinem Smartphone ein und besttigt den Kauf durch die Besttigung der Transaktion. 2. Die erzeugte Response wird an den Server des Dienstanbieters bertragen und veriziert. Im Erfolgsfall fhrt der Server die Transaktion durch und sendet eine Besttigung an den Server des Online Shops. 3. Der Server des Online Shops nutzt die in der Besttigung enthaltenen Daten und sendet eine weitere Anfrage an den Server des Dienstanbieters. 4. Der Server des Dienstanbieter kontrolliert die Daten und besttigt diese gegenber dem Online Shop. Wie zu Beginn dieses Abschnitts erklrt, bentigt der Online Shop keine Registrierung. Die fr den Versand bentigten Kundendaten erhlt er stattdessen zusammen mit der Besttigung der Transaktion vom Server des Dienstanbieters. Fr einen Kunden hat dies den Vorteil, dass er nicht in jedem Online Shop eine Registrierung durchfhren muss. Dadurch wird sowohl die Benutzerfreundlichkeit als auch die Sicherheit erhht, da die Daten nur beim Dienstanbieter gespeichert werden mssen.
26
Stefan Gfrrer
2. Response
Abbildung 3.4.: Ablauf eines Einkaufs im Online Shop mit eKaayCash. Es wird davon ausgegangen, dass die Transaktion bereits erzeugt wurde (eigene Darstellung). Der Inhaber des Online Shops ist nicht fr die Sicherheit der Kundendaten verantwortlich mit Ausnahme des Zeitraums zwischen Kauf und Versand und hat gleichzeitig eine besttigte Bindung von Kontodaten an Kundendaten durch den Dienstanbieter. Die in diesem Abschnitt vorgestellte Erweiterung fr eKaayCash ermglicht ein einfaches Bezahlsystem fr Online Shops. Die Verwendung an Kassen und Automaten ist vorausgesetzt eine Verbindung zum Internet besteht ebenfalls mglich. Aufgrund der Bindung von Bezahlung und Kundendaten werden Betrugsversuche erschwert. Gleichzeitig steigt die Benutzerfreundlichkeit sowohl fr den Kunden als auch fr den Hndler.
3.5. Fazit
In diesem Kapitel wurde eine erste Anwendung fr das eKaay TAN Verfahren demonstriert und seine Vorteile in Bezahlsystemen dargestellt. Dabei wurden alle zuvor denierten Ziele fr eKaayCash eingehalten. Das Verfahren verwendet eKaay als zentrale Verizierungsinstanz und zur Absicherung aller Transaktionen. Dabei wird eKaay eingesetzt ohne verndert zu werden. Aus diesem Grund ist eKaayCash auch vollkommen kompatibel mit der eKaay Implementierung auf anderen Betriebssys-
Stefan Gfrrer
27
28
Stefan Gfrrer
4.1. Vorgehen
4.1.1. Auswahl der Verfahren und Kriterien
Mit dem Aufkommen moderner Smartphones und neuer Technologien beispielsweise NFC und hher ausenden Kameras wchst auch die Anzahl verschiedener kommerzieller Systeme fr den mobilen Einsatz (vgl. Shinder [2011]). Fr die in der vorliegenden Arbeit anzustellende Analyse wurde eine reprsentative Auswahl von Verfahren nach folgenden Kriterien getroen. Verfgbarkeit. Es wurden nur Verfahren ausgewhlt, ber welche ausreichend Informationen zur Verfgung stehen. Zum Entstehungszeitpunkt dieser Arbeit befanden sich viele Lsungsanstze erst in der Entwicklung und wurden darum nicht in die Betrachtung mitaufgenommen (vgl. Abschnitt 4.10). Es wurde darauf geachtet, dass ozielle Quellen verfgbar sind, die durch eigene Beobachtungen gesttzt werden knnen. Verfahren mit wissenschaftlichem Informationsmaterial oder ausfhrbaren Applikationen wurden bevorzugt ausgewhlt. Smartphone basierend. Es werden nur Systeme einbezogen, die auf modernen Smartphones lauhig sind. Shinder [2011] geht davon aus, dass Smartphones in Zukunft immer mehr zu allumfassenden, mobilen Werkzeugen werden. Eine Betrachtung lterer Handysysteme ist aus diesem Grund nicht sinnvoll (ebd.). Aktuelle Technologie. Mit der Forschung im Bereich mobiler Bezahlsysteme wurde bereits frh in der Entwicklung mobiler Telefone begonnen (vgl. Fenner [1992]). Zu den Zielen dieser Arbeit gehrt aber unter anderem die Verwendung moderner Technologien, wie sie erst mit neuesten Smartphones mglich
Stefan Gfrrer
29
4.1.2. Ablauf
Vor der eigentlichen Analyse werden mgliche Punkte gesucht, welche in mobilen Bezahlsystemen angegrien werden knnen. Diese mssen nicht in jedem der vorgestellten Systeme vorkommen. Besonders Verfahren mit Peer-to-Peer Funktionalitt bieten Angreifern mehr Angrispunkte als zum Beispiel ein E-Wallet System. Viele der Angrie sind jedoch aufgrund der gemeinsamen Plattform und geteilter Kommunikationswege in jeder mobilen Bezahllsung zumindest theoretisch mglich. Anschlieend kann mit Hilfe der gefundenen Angrisvektoren jedes System untersucht werden. Dabei zeigt sich eine besondere Schwierigkeit: einige der Systeme bieten keinen Einblick in die verwendeten Technologien, Algorithmen und Protokolle. Aus diesem Grund werden an diesen Stellen ausschlielich die Bezahlablufe betrachtet und theoretische berlegungen zu kritischen Punkten angestellt.
30
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.2. Mgliche Angrispunkte in Mobile Payment Lsungen
Die Untersuchung eines einzelnen Verfahrens luft wie folgt ab. 1. Zunchst wird das Bezahlsystem allgemein vorgestellt. Ein Bezahlvorgang wird aus Sicht der Benutzer erlutert und beschrieben. 2. Im zweiten Abschnitt erfolgt eine technische Beschreibung aller fr die Sicherheitsanalyse relevanten Punkte. 3. Im Anschluss wird kurz auf marktwirtschaftliche Aspekte eingegangen. Insbesondere werden Benutzerfreundlichkeit und mgliche Akzeptanz durch Benutzer hervorgehoben. 4. In der eigentlichen Sicherheitsanalyse werden die allgemeinen Angrispunkte auf die Ablufe und auf die verwendeten Techniken im Bezahlsystem angewandt und erlutert. 5. Die einzelnen Angrispunkte werden gekrzt zu Ax, wobei x fr eine Zahl steht durchnummeriert. Im jeweiligen Fazit eines Verfahrens wird zusammengefasst, welche Angrie unter welchen Bedingungen mglich sind.
Stefan Gfrrer
31
32
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.2. Mgliche Angrispunkte in Mobile Payment Lsungen
Benutzer besttigen zu lassen. Abhngig von der Variante des eingesetzten Schutzes kann ein Schadprogramm an dieser Stelle wie im vorherigen Punkt beschrieben einen Informationsdiebstahl durchfhren und dann wiederum selbst in Form einer falschen Transaktion aktiv werden. Die Angreifbarkeit unterschiedlicher TAN und PIN Implementierungen wird aus diesem Grund beim jeweiligen Bezahlsystem individuell untersucht. Eine sichere Variante ist die Verwendung kryptographischer Signaturen. Dabei wird von zu sichernden Daten, mit Hilfe eines von Client und Server geteilten Geheimnisses, eine Art digitaler Fingerabdruck berechnet. Eine Manipulation der Daten macht diesen Fingerabdruck ungltig und kann somit erkannt werden (vgl. Gupta u. a. [2005]). Fortgeschrittene TAN Verfahren basieren bereits auf dieser Idee und bieten auf diese Weise einen hheren Schutz (vgl. Baden-Wrttembergische Bank [2006]). Daraus kann gefolgert werden, dass Datenmanipulation ein einfacher Weg fr Angreifer ist, um vollstndige Transaktionen zu erzeugen und dass eine Absicherung ber dynamische Schutzmechanismen unerlsslich ist. A3: Abhren der Kommunikationsverbindung. Informationen knnen nicht nur direkt auf dem Smartphone gesammelt werden, sondern auch whrend der aktiven Datenbertragung zwischen einem Server und dem Client abgehrt werden. Moderne Smartphones verfgen ber verschiedene Kommunikationssysteme. Fr die vorliegende Arbeit sind kabellose Netzwerke mit Anbindung an das Internet von Interesse. Dazu gehren vorwiegend moderne Mobilfunkstandards wie Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS) und Long Term Evolution (LTE). Aktuelle Smartphones untersttzen zumindest eine Auswahl dieser Standards fr mobile Internetverbindungen. Um Kosten zu sparen greifen viele Anwender auerdem auf ein verfgbares drahtloses lokales Netzwerk (WLAN) zurck. Als lokale Kommunikationsschnittstelle zwischen mobilen Endgerten kommt zudem hug der Bluetooth Standard zum Einsatz (vgl. Pehl [2004]). Angrie auf eine Kommunikationsverbindung werden mittels eines Man-in-the-Middle (MITM) ausgefhrt. Dabei versucht ein Angreifer den Kommunikationskanal zwischen zwei Parteien aufzuteilen und sich selbst an dieser Stelle einzufgen. Er kann anschlieend den Kommunikationsuss steuern, bertragene Daten lesen und sie nach eigenem Ermessen weiterleiten. Fr den Informationsdiebstahl ist nur das Abhren der bertragenen Daten relevant. Eine Darstellung dieser Situation ndet sich in Abbildung 4.1. Neben dieser aktiven Variante besteht auch die Mglichkeit eines passiven Lauschangris. Dies ist besonders bei nicht geschtzten Kommunikationskan-
Stefan Gfrrer
33
Alice (Client)
Abbildung 4.1.: Erfolgreicher Man-in-the-Middle Angri auf eine Server-Client Verbindung. Der Angreifer Mallory kann den Kommunikationsuss zwischen Alice und Bob vollstndig kontrollieren (eigene Darstellung). len mglich. Dazu gehren ungesicherte WLAN Verbindungen (vgl. Abbildung 4.2).
Alice (Client)
Bob (Server)
Abbildung 4.2.: Der Angreifer Eve hat zwar keinen direkten Einuss auf den Kommunikationskanal, kann aber die Verbindung zwischen Alice und Bob unbemerkt belauschen (eigene Darstellung). Zur Durchfhrung von Angrien dieser Art gibt es eine Reihe allgemeiner Techniken wie das Vortuschen eines WLAN Access Point, DNS Cache Poisoning (vgl. Son u. Shmatikov) oder ARP Spoong (vgl. Eriksson u. Johansson [2007]). In der Arbeit von Eriksson u. Johansson [2007] wird zudem die Angreifbarkeit von verschlsselten Verbindungen demonstriert. Des Weiteren gibt es eine Reihe von erfolgreichen MITM Angrien auf bekannte Mobilfunkstandards. Mun u. a. [2009] zeigen in ihrer Analyse, dass die mgliche Zusammenarbeit von UMTS- und WLAN-Netzen einen Angrispunkt bietet. Dieser Befund wird von Zhang u. a. [2010] besttigt. Sie schleusten erfolgreich ein Programm zum Belauschen der Kommunikationsverbindungen in die fr die Zusammenarbeit verantwortliche Middleware ein (ebd.). Eine grere Gefahr besteht fr Schnittstellen zwischen Global System for Mobile Communications (GSM) und UMTS-Netzwerken (vgl. Meyer u. Wetze [2004]). Da GSM eine nur schwache Verschlsselung aufweist, kann diese besonders leicht angegrien werden. Gleichzeitig bildet dieses System nach wie vor die Grundlage der meisten Mobilfunknetze (ebd.).
34
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.2. Mgliche Angrispunkte in Mobile Payment Lsungen
Obwohl sichere Verbindungen unter Verwendung von Secure Sockets Layer (SSL) oder Transport Layer Security (TLS) theoretisch angreifbar sind, bieten sie trotzdem einen Schutz vor den meisten Angreifern. Ein weiterer Sicherheitsfaktor kann die Verwendung einer zustzlichen symmetrischen oder asymmetrischen Verschlsslung der Daten sein. Die PIN kann im Fall der symmetrischen Verschlsselung das geteilte Geheimnis darstellen. Dieser Angrispunkt zeigt zusammengefasst die Bedeutung des Kommunikationskanals fr den Angreifer und dem zufolge auch fr den Entwickler einer Anwendung mit kritischen Daten. Durch die physische Trennung von mobilem Endgert und bertragungsweg mssen die bertragenen Daten vor unerwnschtem Einblick geschtzt werden. A4: Manipulation von Daten whrend der Kommunikationsverbindung. Wie im vorherigen Abschnitt bereits beschrieben, existieren aktive und passive Angriffe auf den Kommunikationskanal. Whrend der passive nur fr reine Lauschangrie geeignet ist, bietet ein aktiver MITM Angri weitaus mehr Mglichkeiten. Der Angreifer kontrolliert, wie in Abbildung 4.1 dargestellt, den kompletten Kommunikationsuss. Dies ermglicht nicht nur einen Einblick in die bertragenen Informationen, sondern lsst auch die Vernderung aller Daten zu. Damit erhlt ein Angreifer die gleichen Fhigkeiten wie ein aktives Schadprogramm, welches Manipulationen durchfhrt. Wenn der Inhalt nicht geschtzt ist oder der Schutz in Form einer Prfnummer nicht von den zu schtzenden Informationen abhngt, kann ein solcher Angri erfolgreich sein. ltere, statische TAN-Verfahren verfgen ber eine solche lose Bindung von Schutz der TAN und Transaktionsdaten (vgl. Borchert [2012b] und Abbildung 4.3).
berweisung von 100 Euro an Carol. TAN: 1234 berweisung von 900 Euro an Mallory. TAN: 1234
Alice (Client)
Abbildung 4.3.: Der Angreifer Mallory manipuliert eine berweisung, welche auer einer vom Inhalt unabhngigen TAN keinen weiteren Schutz aufweist (eigene Darstellung). Wie bereits bei Schadprogrammen, lsst sich auch die Manipulation im Kommunikationskanal durch kryptographische Signaturen aufdecken und somit verhindern.
Stefan Gfrrer
35
36
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.2. Mgliche Angrispunkte in Mobile Payment Lsungen
nutzer aus unterschiedlichen Grnden zur Eingabe sicherheitsrelevanter Daten wie Benutzername und Passwort auf. Erkennt das Opfer die geflschte Seite nicht und gibt seine Daten ein, erhlt der Angreifer Zugri auf das Benutzerkonto des Opfers (ebd.). Auf diese Weise lassen sich auch statische TANs erschleichen. Die Sicherheitsmechanismen der meisten mobilen Apps sind ihren Webquivalenten hnlich oder gar identisch. So werden in vielen Fllen dieselben Anmeldeinformationen verwendet. Aus diesem Grund sind auch dieselben Social Engineering Angrie mglich. Onlinebanking Dienste schtzen sich vor Phishing und Pharming mittels moderner TAN Verfahren, welche die TAN dynamisch fr die jeweilige Transaktion berechnen (vgl. Baden-Wrttembergische Bank [2006]). In mobilen Anwendungen kann man den Zugri auf den Dienst einschrnken indem nur registrierte Smartphones erlaubt werden. Die Erkennung kann mittels der Telefonnummer, der International Mobile Equipment Identity (IMEI) oder hnlichen, eindeutigen Daten erfolgen (vgl. PayPal [2012b]). Es konnte aufgezeigt werden, dass Social Engineering als nicht technischer Angri Entwickler von sicheren Anwendungen vor besondere Herausforderungen stellt und diese explizit behandelt werden mssen. A7: Abhren der NFC-Verbindung. Near Field Communication ist zunchst ein kabelloses Kommunikationsmedium. Es hnelt insofern Verbindungen via WLAN und erlaubt hnliche Angrie. Aufgrund seiner sehr geringen, eektiven Sendereichweite von zwanzig Zentimetern und Besonderheiten in der Architektur werden tatschliche Angrie hingegen deutlich erschwert. NFC verwendet zur Darstellung einzelner Bits eine modizierte Miller-Kodierung oder eine Manchester-Kodierung (vgl. Abschnitt 2.2). Diese erlauben praktisch keine Manipulation von Daten. Gleichzeitig wird aufgrund des geringen Abstands und spezieller Anforderungen an das Timing ein Man-in-the-Middle Angri unmglich. Diese Problematik fr einen Angreifer wird ausfhrlich von Haselsteiner u. Breitfu [2006] beschrieben. Whrend eine aktive Manipulation nicht mglich ist, kann ein Angreifer jeodch immer noch passiv den Datenverkehr abhren. Wie Eingangs beschrieben, haben die meisten NFC-fhigen Endgerte eine maximale Reichweite von zwanzig Zentimetern. Haselsteiner u. Breitfu [2006] gehen allerdings davon aus, dass aktive Empfangsgerte bei idealen Bedingungen Daten in bis zu zehn Metern Entfernung erfassen knnen. In einem einfachen Aufbau wird von Kortvedt u. Mjlsnes [2009] in einem durchschnittlichen Abstand von zwanzig Zentimetern die komplette Kommunikation zwischen einem Tag und einem NFC-fhigen Handy mitgelesen. Bereits
Stefan Gfrrer
37
38
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.2. Mgliche Angrispunkte in Mobile Payment Lsungen
Beschreibung Ein Trojaner auf dem mobilen Endgert kann theoretisch alle Daten abhren und auslesen. Daten knnen von Schadprogrammen aktiv gendert werden. Mittels aktivem oder passivem Eingri in einen Kommunikationskanal ist das Abhren aller Informationen mglich. Aktiver Eingri sogenannter Man-in-the-Middle ermglicht die Manipulation von Daten auf dem Kommunikationskanal. Informationsdiebstahl und Nutzung aktiver Applikationen; bei lngerem Zugri sind tiefergehende Untersuchungen und zeitaufwendige Angrie mglich. Durch einfache und in der Vergangenheit hug erfolgreiches Phishing und Pharming, erhlt ein Angreifer leicht Zugang zu kritischen Daten wie Passwrtern. Versteckte Sonden knnen auf bestimmte Entfernungen einzelne NFC Verbindungen abhren.
Schutz Verschlsselung mit externem Geheimnis und Prozessisolierung durch Betriebssystem. Kryptographische Signatur fr kritische Informationen und Prozessisolierung durch Betriebssystem. Verschlsselung der Daten und sichere Verbindung mittels SSL oder TLS.
Verschlsselung von Daten. Kritische Befehle mittels PIN absichern. Entfernte Deaktivierung von Applikationen, Benutzerkonten und Smartphone. Nur registrierte Endgerte fr einen Dienst erlauben. Befehle mittels dynamischer, von Eingabedaten abhngigen Transaktionsnummern absichern. Verschlsselung der Daten und die Verwendung von sicheren Verbindungen.
Tabelle 4.1.: bersicht aller Angrismethoden auf mobile Bezahlsysteme (eigene Darstellung)
Stefan Gfrrer
39
4.3. eKaayCash
In diesem Abschnitt werden das in Kapitel 3 vorgestellte eKaayCash Verfahren und dessen Erweiterung fr Online Shop Systeme auf ihre Sicherheit untersucht.
4.3.1. Sicherheitsanalyse
4.3.1.1. eKaayCash Die grundlegenden Sicherheitsmechanismen fr eKaayCash werden vom eKaay Verfahren geliefert. In Abschnitt 2.1 wurde bereits auf das Ergebnis der Sicherheitsanalyse von Gnther [2011] verwiesen. Es wurde eine Reihe von Problemen aufgedeckt, welche zeigen, dass ein Schadprogramm unter bestimmten Bedingungen kritische Operationen ausfhren kann. Beispielsweise kann ein Schadprogamm das Geheimnis eines Benutzers auslesen und damit beliebige Transaktionen signieren. Diese Sicherheitslcken gelten auch fr eKaayCash. Allerdings bietet eKaay zustzliche Mechanismen, welche vor den beschriebenen Angrien schtzen. Dazu gehren eKaay PIN und eKaayCard. Beide Verfahren knnen auch mit eKaayCash kombiniert werden und den Schutz verbessern (ebd.). Des Weiteren ist auch der Ablauf einer Peer-to-Peer berweisung angreifbar. Wie in Abschnitt 3.3.1 beschrieben, werden nach dem Ausfllen des berweisungsformulars die darin enthaltenen Daten an den Server bertragen. Ein Schadprogramm auf dem
40
Stefan Gfrrer
Bitte besttigen
Datum: 20.4.2012 Uhrzeit: 10:00:00 Empfaenger: Mallory Betrag: 100.00 Euro
abbrechen
OK
Abbildung 4.4.: Der Besttigungsdialog von eKaay fr eine Transaktion (eigene Darstellung). Die P2P bertragung zwischen beiden Smartphones bietet keine Angrismglichkeiten. Sowohl der QR Code als auch die NFC Verbindung erlauben nur das Abhren
Stefan Gfrrer
41
4.3.1.2. Erweiterung fr Online Shop Systeme Die Erweiterung erlaubt prinzipiell dieselben Angrie wie eKaayCash selbst. Allerdings sind darber hinaus noch weitere Angrispunkte vorhanden. Der Kauf und die gleichzeitige Bezahlung werden durch das Einlesen des QR Codes mit der eKaay App durchgefhrt. Ein Schadprogramm auf dem Computer des Kunden kann diesen QR Code gegen einen eigenen austauschen und auf diese Weise die Besttigung einer einer geflschten berweisung erreichen. Es gelten jedoch dieselben Einschrnkungen wie im vorherigen Abschnitt. Wenn der Kunde die berweisung prft und nicht besttigt wird der Angri abgewehrt. Neben Schadprogrammen knnen auch Angrie auf die Webseite beziehungsweise den Server des Shops zum Austausch des QR Codes fhren. Zu Angrien dieser Art zhlt unter anderem Cross-Site-Scripting (vgl. Grossman u. a. [2007]). Bei korrekter Implementierung der Schnittstellen hingegen ist ein Shop gegen eine geflschte Transaktionsbesttigung abgesichert. Beliebige Benutzer knnen zwar eine Besttigung an den Server versenden, diese wird jedoch nicht akzeptiert, da die Verizierung durch den Server von eKaayCash fehlschlgt (vgl. Abbildung 4.5).
4.3.2. Fazit
Es kann folgendes Fazit gezogen werden: das Verfahren ist begrenzt durch die Angrie A2 und A4 bedroht. Die Verantwortung liegt in beiden Fllen beim Zahlenden, welcher eine Transaktion immer berprfen muss. Der Angri A5 kann durch Verwendung einer PIN fr das auf dem Handy gespeicherte Konto abgewehrt werden. Diese muss jedoch vom Benutzer explizit aktiviert werden. Die Angrie A1, A3, A6 und A7 sind fr eKaayCash nicht relevant. Durch die Erweiterung fr Online Shops wird keine weitere Schwachstelle hinzugefgt.
42
Stefan Gfrrer
Produktcode
3. Zahlender: Mallory Betrag: 5 4. Transaktion ungltig Server des Shops Server der Bank
Abbildung 4.5.: Versuch eines Angreifers einem Shop eine Transaktion vorzutuschen (eigene Darstellung).
Stefan Gfrrer
43
Abbildung 4.6.: Das installierte PayPal Mobile Payments Widget auf dem Homescreen eines Android basierten Smartphones (Quelle: Chambers [2011]). Zum Zeitpunkt der Entstehung dieser Arbeit stand das Verfahren fr europische Benutzer noch nicht zur Verfgung, sondern ist nur in den USA einsetzbar. Die vorhandenen Informationen gengen jedoch, um den Ablauf einer Transaktion zu bestimmen. Die folgende Beschreibung sttzt sich auf Angaben aus der Pressemitteilung von PayPal (vgl. Hardawar [2011]). Sie ist aus Sicht der Benutzer, d. h. des Geldempfngers und des Zahlenden, beschrieben. 1. Im ersten Schritt gibt der Geldempfnger den gewnschten Betrag in das Widget ein. 2. Nach Besttigung der Eingabe erhlt er die Auorderung sein eigenes Smartphone an das des Zahlenden zu halten. 3. Beide Benutzer mssen nun einen Moment warten, whrend der Datenaustausch via NFC zwischen beiden Smartphones statt ndet. 4. Beide Handys besttigen den Erfolg der Datenbertragung mit einem von PayPal Buzz getauften Vibrationsalarm.
44
Stefan Gfrrer
Zahlungsserver
Abbildung 4.7.: Ablauf einer P2P Transaktion mit PayPal. Das Versenden der Besttigung wurde aus Grnden der bersicht entfernt (eigene Darstellung).
Stefan Gfrrer
45
46
Stefan Gfrrer
Abbildung 4.8.: Bezahlung an einem NFC-fhigen Terminal mit PayPal Mobile Payments (Quelle: PayPal [2011b]). Das P2P Verfahren selbst ist sowohl fr den Geldempfnger, als auch fr den Zahlenden einfach zu bedienen. Die Handhabung entspricht in groen Teilen dem Bezahlen mit einer bei Banken blichen Geldkarte unter der Verwendung von Terminals zur PIN Eingabe. Auch wird kein Geldbetrag auf dem Smartphone gespeichert. Dadurch entfllt eine mgliche Misstrauensquelle gegenber dem Verfahren. Eine Studie von Ogilvy & Mather, verentlicht von Patel [2011], zeigt zudem, dass PayPal ein hnlich hohes Vertrauen bei seinen Kunden geniet wie MasterCard und American Express.
4.4.4. Sicherheitsanalyse
Der erste Angri ist im Zeitraum zwischen der Eingabe des Betrags durch den Geldempfnger und der Anzeige der Besttigung auf dem Smartphone des Zahlenden mglich. Dabei kann entweder ein Schadprogramm auf einem der beiden Smartphones zum Einsatz kommen oder ein Lauschangri auf die NFC-Verbindung erfolgen. Bei letzterem knnen, soweit bekannt, der Geldbetrag und der Identikator des Empfngers abgehrt werden. Diese Daten sind nur von begrenzter Relevanz. Ob die Verbindung verschlsselt wird, ist nicht bekannt. Von Bedeutung ist viel mehr die Manipulation durch ein Schadprogramm. Es kann die ID und den Betrag ndern, wobei letzteres mit einer groen Gefahr der Erkennung durch den Zahlenden verbunden ist. Eine nderung der ID kann aber trotz Kontrolle durch den Zahlenden whrend der Besttigung in vielen Fllen unerkannt bleiben, da die ID nicht sprechend sein muss. In Abbildung 4.9 ist dieser Angreif beispielhaft dargestellt.
Stefan Gfrrer
47
Mallory (Angreifer)
Abbildung 4.9.: Gem A2 kann ein Schadprogramm auf dem Smartphone des Geldempfngers die Transaktionsdaten vor der bertragung manipulieren (eigene Darstellung). Beginnend mit der Anzeige des Betrags und des Geldempfngers bis zur Ankunft aller Daten am Server bietet sich dem Angreifer die zweite Mglichkeit fr einen Angri auf das Peer-to-Peer Bezahlsystem. Es ist anzunehmen, dass die ID des Geldempfngers, der Betrag und die ID des Zahlenden mit Hilfe der PIN des Zahlenden gesichert werden. Die eigentliche bertragung auf den Kommunikationskanal erfolgt, wie bereits erwhnt, ber eine gesicherte Verbindung. Damit bleibt dem Angreifer nur die Manipulation der Daten durch ein Schadprogramm auf dem Smartphone des Zahlenden. Dieser muss die PIN bei der Eingabe mitlesen und den fr den Benutzer sichtbaren Vorgang steuern. Mit Hilfe der PIN kann er dann einen eigenen Zahlungsauftrag erstellen, welcher die ID des Zahlenden und einen beliebigen Betrag sowie Geldempfnger enthlt. PayPal sichert kritische Punkte whrend der kompletten Transaktion aktiv ab. Dies betrit insbesondere die bertragung ber den Kanal. Zustzlich verlsst es sich auf die Sicherheit des Betriebssystems. Sowohl ein Geheimnis zum Schutz vor Datenmanipulation whrend der bertragung zwischen Geldempfnger und Zahlenden, als auch die Eingabe der PIN werden durch das Betriebssystem geschtzt. Google selbst gibt an, dass dieser Schutz durch Systemlcken, welche Root-Rechte ermglichen, umgangen werden kann. Ein Bezahlvorgang mit PayPals Peer-to-Peer Variante ist folgerichtig zumindest theoretisch angreifbar.
48
Stefan Gfrrer
4.4.5. Fazit
Wie eKaayCash ist auch das Verfahren von PayPal gegenber Angri A2 verwundbar. Der Zahlende kann dies durch eine Prfung der berweisung vor der Besttigung verhindern. Im Gegensatz zu eKaayCash ist aber auch A1 mglich. Durch Abhren der PIN Eingabe und der Anmeldedaten erhlt ein Angreifer die notwendigen Informationen zur Erzeugung eigener, gltiger berweisungen. Aufgrund des PIN Schutzes sind A3, A4 und A5 nicht mglich. A7 bietet fr einen Angreifer keine Vorteile. Allerdings kann mittels A6 leicht ein Konto bernommen werden.
Stefan Gfrrer
49
Abbildung 4.10.: Ein Nexus S 4G mit aktiver Google wallet App. Das Konto ist mit einer Citi MasterCard aufgeladen. Daneben ein MasterCard paypass Terminal, welches mit Google wallet genutzt werden kann (Quelle: Google [2011]). Ein Bezahlvorgang unterscheidet sich nur in der Eingabe der PIN von berweisungen mit Kreditkarten, welche NFC untersttzen (vgl. Google [2011] und EMVCo [2008]). Er luft fr den Kunden folgendermaen ab. 1. In der Standardeinstellung muss vor jeder Transaktion die App mittels der PIN freigeschaltet werden. Dieses Verhalten lsst sich dahingehend ndern, dass die PIN nur noch beim ersten Start der App notwendig ist.
50
Stefan Gfrrer
Stefan Gfrrer
51
4.5.4. Sicherheitsanalyse
In der folgenden Sicherheitsanalyse werden nur Komponenten betrachtet, die Google wallet direkt betreen. Eine allgemeine Untersuchung von MasterCard PayPass oder Visa payWave bersteigt den Umfang und das Ziel dieser Arbeit. Die Untersuchung
52
Stefan Gfrrer
Stefan Gfrrer
53
Listing 4.1: Informationen aus der Datenbank von Google wallet. Von oben nach unten: Bezeichner der Karte, Name des Besitzer, Kreditlimit, aktuelles Guthaben und die letzten vier Ziern der Kartennummer (Quelle: Viaforensics [2011]; im Auszug).
4.5.5. Fazit
Der Umgang mit kritischen Informationen in Google wallet ermglicht die Angrie A1 und A5. Whrend einer Transaktion knnen weitere Daten abgehrt werden, entsprechend ist auch A7 mglich. Da eine berweisung nur mittels POS Terminal durchgefhrt werden kann, ist A2 nicht von Bedeutung. Dasselbe gilt fr A3 und A4, da nur eine Kommunikation mit dem Terminal stattndet. Social Engineering gem A6 ist fr Google wallet nicht mglich, da keine Anmeldedaten existieren. Zwar kann die PIN abgefragt werden, diese ist ohne das eigentliche Smartphone jedoch ohne Nutzen.
4.6. Bitcoins
4.6.1. Beschreibung des Verfahrens
Elektronische Geldsysteme, welche dezentral ohne Bank als kontrollierende dritte Partei arbeiten, mssen sich mit der Problematik des mehrfachen Ausgebens von Geldeinheiten auseinandersetzen. Nakamoto [2009] hat mit Bitcoin einen Peer-toPeer basierten Lsungsansatz vorgestellt. An die Stelle einer Kontrollinstanz tritt ein Netzwerk, welches Aufzeichnungen ber jede Transaktion speichert. Diese Aufzeichnungen werden in Form eines Hash in eine fortlaufende Kette von bereits geprften Transaktionen eingebunden. Eine berweisung kann nur gendert werden, wenn die komplette Kette manipuliert wird. Diese Kette wird des Weiteren dadurch geschtzt, dass das Netzwerk nur die lngste Kette akzeptiert. Die lngste Kette wird per Denition durch die Gruppe mit der grten Rechenleistung generiert. Nakamoto [2009] geht davon aus, dass die grte Gruppe nie aus Angreifern bestehen kann, da andernfalls ein Groteil des Netzwerks korrumpiert sein muss. Dies folgt
54
Stefan Gfrrer
Stefan Gfrrer
55
5. Abgeschlossene Transaktion
Abbildung 4.11.: Ablauf einer mobilen berweisung im Bitcoin-Netzwerk (eigene Darstellung). lassen keine Rckschlsse auf die wahre Identitt des Benutzers zu (vgl. Bitcoin.it Wiki [2012]). Beide in dieser Arbeit vorgestellten Apps basieren auf BitCoinJ, einer Implementierung von Bitcoin in Java. BitCoinJ verzichtet auf die Verwendung der kompletten Kette von verizierten Transaktionen, sondern nutzt eine vereinfachte Variante, die von Nakamoto [2009] zusammen mit der ausfhrlichen Methode vorgestellt wurde. Dies verringert die ntige Datenmenge fr den Betrieb von Bitcoin und eignet sich damit besonders fr mobile Systeme. BitCoinJ bietet Klassen fr die Wallet und den Umgang mit Transaktionen. Die ermglicht den Entwicklern durch reine Implementierung einer Programmoberche eine komplette Anwendung fr das Bitcoin Netzwerk zu entwickeln (vgl. Hearn u. a. [2012]). Beide Applikationen verbreiten die Bitcoin Adresse standardmig durch einen QR Code, welcher zustzlich den gewnschten Betrag enthalten kann. Bitcoin Wallet bietet zudem die native Untersttzung von NFC. Unabhngig davon nutzen beide Apps aber auch die Mglichkeiten des Betriebssystems. Unter Android knnen sich Programme fr die Behandlung von bestimmten Dateiformaten anmelden. Diese Programme werden bei Aufruf eines entsprechenden Formats automatisch gestartet oder im Fall von mehreren Programmen dem Benutzer zur Auswahl angeboten. Beide Apps bieten die Verteilung der Bitcoin Adresse als Text an. Abhngig von
56
Stefan Gfrrer
4.6.4. Sicherheitsanalyse
Die folgende Analyse untersucht nicht die Sicherheit von Bitcoin. Es werden ausschlielich Angrie auf die vorgestellten Android Apps durchgefhrt. Eine Untersuchung von Bitcoin selbst entspricht der in Abschnitt 4.2 ausgeschlossenen Analyse der Infrastruktur und ist somit nicht Teil dieser Arbeit. In Abschnitt 4.6.2 wurde bereits darauf hingewiesen, dass beide vorgestellten Apps auf Basis von BitCoinJ entwickelt wurden. Die folgenden Untersuchungen betreen darum beide Programme gleichermaen. Unabhngig von der Sicherheit der eigentlichen Transaktion stellt die Sicherheit der Wallet eine kritische Komponente im Bitcoin Netzwerk dar. Sowohl Armstrong [2012] als auch Schildbach [2012] empfehlen deswegen nur geringe Betrge auf der Wallet des Smartphones zu hinterlegen. Einerseits besteht die Gefahr, dass das mobile Endgert verloren geht. Anderseits steigt fr Angreifer die Attraktivitt aufgrund des mglichen nanziellen Gewinns durch den Besitz von Bitcoins. Ein Schadprogramm kann die Wallet entsprechend kopieren und das Original lschen. Die Sicherheit hngt in diesem Fall von einer Verschlsselung der Wallet mit einem externem Geheimnis beispielsweise einer PIN und den Mechanismen des Betriebssystems ab. BitCoinJ nutzt nur letzteres und speichert die Wallet unverschlsselt im internen Speicher des Smartphones. hnliche Mglichkeiten hat auch ein Angreifer mit physikalischem Zugri auf das Handy. Unter Nutzung von entsprechenden Rechten kann er die Wallet manuell auslesen und entfernen. Des Weiteren schtzt keine der beiden Apps die Programmoberche und die mglichen Aktionen. Ein Angreifer kann aus diesem Grund
Stefan Gfrrer
57
58
Stefan Gfrrer
Wikileaks
Abbildung 4.12.: Grasche Darstellung eines Ausschnitts des Bitcoin Netzwerks rund um Wikileaks (Quelle: Reid u. Harrigan [2011]; [Hervorhebung durch Verfasser]).
4.6.5. Fazit
Sowohl eine Transaktion als auch die Wallet selbst sind vor den Angrien A2, A4 und A5 ungeschtzt. Keine Bedeutung haben A1, A3 und A7, da bertragene und gespeicherte Daten ohne Gefahr fr das Verfahren gelesen werden knnen. Unter der Voraussetzung, dass der normale Anwender keinen Zugri auf die Wallet erhlt, sind beide Verfahren vor A6 sicher. Als zustzlicher Angri kommt die Oenlegung der reellen Identitt der Anwender hinzu. Applikationen fr Bitcoin sind somit zwar gegen passive Angreifer geschtzt, allerdings sehr anfllig fr aktive Manipulation.
Stefan Gfrrer
59
60
Stefan Gfrrer
5. Bezahlanfrage 3. Kaufanfrage
4. Rechnung
Zahlungsserver Hndlerserver
Abbildung 4.13.: Ablauf eines Produktkaufs mit Hilfe des 2D Barcode Verfahren. Nicht enthalten sind die Besttigungen an Kunden und Hndler (eigene Darstellung). (HMAC) sichergestellt. Die individuelle PIN kommt dabei als Schlssel zum Einsatz (vgl. Gao u. a. [2009]). Als Implementierung des 2D Barcodes wird die von der Firma RVSI/Acuity CiMatrix entwickelte DataMatrix verwendet (vgl. [Gao u. a. 2009, Seite 321]). Sie kommt im mobilen Bezahlsystem an zwei Stellen zum Einsatz. Einerseits stellt sie dem Kunden alle wichtigen Informationen ber das Produkt zur Verfgung, andererseits werden alle Kommunikationsdaten vor ihrer bertragung mit Hilfe einer DataMatrix kodiert (ebenda). Der Einsatz der DataMatrix als Kommunikationskodierung wird in der Arbeit nicht schlssig begrndet. Sie bietet keinen Vorteil gegenber anderen Kodierungen. Da eine Kodierung jedoch keinen Einuss auf die eigentliche Sicherheit hat, wird dieses Faktum im weiteren Verlauf ignoriert. Im Folgenden wird der detaillierte, technische Ablauf erlutert. Er umfasst als ersten Schritt auch die Anmeldung des Kunden beim Zahlungsserver. Dieser Schritt entfllt bei nachfolgenden Transaktionen. 1. Ein registrierter Kunde meldet sich mit seinem Benutzerkonto und der PIN beim Zahlungsserver an. Der Server besttigt die Anmeldung mit der ID des Serverzertikats, der Session ID und einem entlichen Schlssel fr die weitere Kommunikation. Er wird vom mobilen Client unter Nutzung des Serverzertikats und des entlichen Schlssel authentiziert.
Stefan Gfrrer
61
4.7.4. Sicherheitsanalyse
Aufgrund der Verwendung von ECC zur Verschlsselung und Signierung der bertragenen Daten, sind die Kommunikationskanle im Verfahren als sicher zu betrachten. Ein Schadprogramm auf dem Smartphone des Kunden kann hingegen sofern die Sicherheitsmechanismen des Betriebssystems umgangen sind eigene Transaktionen abwickeln. Zu diesem Zweck muss es die PIN bei ihrer Eingabe abfangen, um anschlieend Zugri auf die verschlsselten sicherheitsrelevanten Daten, wie der private Schlssel des Kunden, welche auf dem Handy gespeichert werden, zu bekommen. Unabhngig von Transaktionen des Kunden kann das Schadprogramm anschlieend fr
62
Stefan Gfrrer
4.7.5. Fazit
Die Kommunikation ist sicher in diesem Verfahren und NFC wird in diesem Fall nicht angewandt. Aus diesen Grund sind A3, A4 und A7 nicht mglich. Des Weiteren bietet das Verfahren durch die Aufteilung des Geheimnisses in Wissen Anmeldedaten und PIN und Besitz der private Schlssel auf dem Smartphone einen guten Schutz vor A6. Allerdings kann ein Schadprogramm zunchst die PIN auslesen und dann selbst eine Transaktion ausfhren. Auerdem ist der Austausch des 2D-Codes vor Beginn einer Transaktion mglich. hnliche Angrie knnen auch durch physikalischen Zugri ausgefhrt werden. Damit ist das Verfahren durch A1, A2 und A5 angreifbar.
Stefan Gfrrer
63
64
Stefan Gfrrer
Zahlungsserver
Abbildung 4.14.: Ablauf einer P2P berweisung mit Hilfe von Bluetooth. Die Besttigung wurde entfernt (eigene Darstellung).
sprechenden Namen, welcher dem Zahlenden zusammen mit allen gefundenen Teilnehmern in Reichweite zur Auswahl aufgelistet wird (vgl. Gao u. a. [2006]). Das Verfahren arbeitet mit einer symmetrischen Verschlsselung. Dazu wird im Zuge der Registrierung ein individueller Schlssel generiert. Er wird kodiert auf dem Endgert gespeichert. Fr einzelne Sitzungen wird aus diesem Schlssel ein weiterer generiert, welcher zum Schutz der kritischen Daten der Transaktion dient. Der Sitzungsschlssel wird dem Server mit Hilfe eines an jede Nachricht angehngten Header mitgeteilt. Dieser Header enthlt in der ersten Nachricht den Schlssel und seine Lnge. Die Information ber den Schlssel enfllt in den weiteren Nachrichten. Enthalten ist aber immer eine Signatur und die Information, welche Datenfelder in der jeweiligen Nachricht verschlsselt sind. Die Signatur wird aus den Nutzdaten und dem bei der Registrierung erzeugten Schlssel berechnet (vgl. Gao u. a. [2006]). Der Aufbau des Header ist in Tabelle 4.2 dargestellt. Signatur Schlssel Schlssellnge verschlsselte Felder
Tabelle 4.2.: Der Sicherheitsheader fr Nachrichten im Verfahren mit Bluetooth. Er wird an die eigentlichen Nutzdaten angehngt (vgl. Gao u. a. [2006]; [bersetzung durch Verfasser]).
Wie im vorherigen Abschnitt bereits erwhnt, soll in zuknftigen Versionen des Verfahrens eine Verikation der Stimme des Nutzers implementiert werden. Aufgrund von Limitierungen von mobilen Endgerten zum Zeitpunkt der Verentlichung des Verfahrens msse ein neues, optimiertes Verfahren entwickelt werden (vgl. [Gao u. a.
Stefan Gfrrer
65
4.8.4. Sicherheitsanalyse
Der Aufteilung des Verfahrens in zwei Phasen, wie in Abschnitt 4.8.2 dargestellt, folgend, besteht der erste mgliche Angri im Austausch der P2PID vor Besttigung der Transaktion. Dieser Angri entspricht dem in Abschnitt 4.4.4 beschriebenem Szenario. Ein Schadprogramm auf dem Handy des Geldempfngers oder des Zahlenden kann die ID vor dem Versenden oder direkt nach dem Empfang gegen die P2PID des Angreifers austauschen. Dieser Angri kann bei sprechenden IDs zwar vom Zahlenden durch eine manuelle Kontrolle erkannt werden, die Erzeugung eines neuen Kontos mit einer visuell hnlichen ID ist aber theoretisch mglich. Der Austausch der ID kann nicht nur durch ein Schadprogramm erfolgen, sondern ist mittels Man-in-the-Middle auch whrend der Bluetooth Verbindung mglich. Wie auch bei PayPal kann die Signierung der ID begrenzten Schutz vor Manipulation
66
Stefan Gfrrer
4.8.5. Fazit
Dieses Verfahren bietet eine Reihe von Sicherheitsmechanismen, welche teilweise angegrien werden knnen. Zwar ist A7 nicht mglich und A6 kann nach Einfhrung der Stimmverizierung als sicher betrachtet werden, dennoch bieten sich sowohl fr Schadprogramme als auch fr Man-in-the-Middle Angrie eine Reihe von Mglichkeiten zur Manipulation und zur Erzeugung eigener Transaktionen. Letzteres ist auch fr einen physikalischen Angreifer mglich, wenn die App angemeldet ist. Daraus folgt das A1, A2, A4 und A5 erfolgreich durchgefhrt werden knnen. Mittels A3 knnen zudem vollstndige Transaktionen mitgelesen werden, dies setzt jedoch umfassende Angrie auf den Kommunikationskanal voraus.
Stefan Gfrrer
67
68
Stefan Gfrrer
Peer-to-Peer Payment via NFC 4.9. Entwurf einer Smartphone basierten Geldkarte
3. Er besttigt den Zahlvorgang mittels Eingabe seiner PIN. Das Smartphone ist jetzt sendebereit. 4. Wie in anderen NFC basierten P2P Verfahren, werden beide Smartphones in Kontakt gebracht. Sie fhren die eigentliche Geldberweisung durch. 5. Der Abschluss des Vorgangs wird durch eine Benachrichtigung an beide Benutzer signalisiert.
Stefan Gfrrer
69
4. Transaktion
NFC
Abbildung 4.15.: Ablauf einer Transaktion zwischen zwei Smartphones nach dem Geldkarten-Prinzip (eigene Darstellung).
4.9.4. Sicherheitsanalyse
Durch die Auslagerung aller sicherheitsrelevanten Vorgnge auf das SE bietet das Verfahren eine hohe Sicherheit. Ein Schadprogramm auf dem Smartphone kann auf Ebene der Software d. h. der Applikation zwar die PIN abhren, allerdings kann mit dieser Information kein Bezahlvorgang durchgefhrt werden. Fr eine Transaktion ist immer ein Terminal notwendig. Ein Angreifer mit physischem Zugri besitzt hingegen die Mglichkeit ein Terminal zur Verfgung zu stellen, jedoch fehlt ihm das Wissen um die PIN und er kann keinen Zahlvorgang initiieren. Der Verlust oder Diebstahl des Smartphone sollte jedoch vermieden werden. Abhngig vom Finanzinstitut kann dies zum Verlust des Geldbetrags fhren.
70
Stefan Gfrrer
4.9.5. Fazit
Es lsst sich abschlieend feststellen, dass das vorgestellte Verfahren eine sichere Implementierung fr ein bargeldloses Bezahlsystem mit P2P Funktionalitt bietet. Die Angrie A3, A4, A6 und A7 sind nicht mglich bzw. werden durch das System abgewehrt. Mittels A1 und A2 kann zwar ein Bezahlvorgang gestartet werden, es fehlt jedoch die Gegenstelle, welche den Betrag in Empfang nimmt. Ein physischer Zugri gem A5 bietet ohne die PIN ebenfalls keine Mglichkeit fr eine berweisung.
Stefan Gfrrer
71
4.10.2. ISIS
ISIS ist ein Joint Venture zwischen AT&T, T-Mobile und Verizon Wireless und hat das Ziel ein mobiles Bezahlsystem zu entwickeln. Es soll hnlich wie Google wallet mit Kreditkarteninformationen auf dem Smartphone funktionieren. Zum Zeitpunkt der Entstehung dieser Arbeit ist noch nicht bekannt, ob die Daten auf einem Secure Element gespeichert oder ob andere Mechanismen zum Schutz eingesetzt werden. Das Verfahren wird wie Google wallet voraussichtlich keine P2P berweisungen ermglichen und dient als reines POS System. Im Gegensatz zu Google wallet wurde ISIS noch nicht verentlicht und es existieren keine technischen Informationen zu Ablufen und verwendeten Verfahren. Aus diesem Grund ist eine Untersuchung nicht mglich (vgl. JVL Ventures, LLC [2012]).
4.11. Zusammenfassung
Dieser Abschnitt bietet mit Abbildung 4.16 eine Zusammenfassung der obigen Analysen. Die Sicherheit wird folgendermaen bewertet: kann ein bestimmter Angri ohne weitere Bedingung erfolgreich ausgefhrt werden wird er mit markiert. im Gegensatz dazu steht die Wertung ++, welche einen nicht mglichen Angri bezeichnet. Die Abstufungen und + werden vergeben, wenn bestimmte Voraussetzungen erfllt sein mssen. Eine Sonderrolle spielt die neutrale Wertung . Sie wird vergeben, wenn der jeweilige Angri ohne Bedeutung fr das Verfahren ist. Beispielsweise untersttzt nicht jedes Verfahren NFC und entsprechend wird A7 neutral bewertet.
4.12. Diskussion
Auf Basis der untersuchten Verfahren und ermittelten Ergebnissen werden in diesem Abschnitt Gemeinsamkeiten und Unterschiede diskutiert. Des Weiteren werden whrend der Analyse die angewandten Methoden bewertet. Die Analyse hat gezeigt, dass sich die einzelnen Bezahlsysteme anhand der bekannten Ablufe untersuchen lassen. Die Angreifbarkeit durch bestimmte Anstze konnte mit gewissen Einschrnkungen nachgewiesen oder widerlegt werden. Allerdings bleiben
72
Stefan Gfrrer
A1 + + - + + +
A2 + + + + - - - +
A3 + +
A4 +
A5
A6 - + + + + + +
A7 + + + +
-/+ + + + + - -
+ + + + + + + + + - - - - +
+ + + +
+ + + +
neutral,
Abbildung 4.16.: Die Ergebnisse der Sicherheitsanalyse im berblick (eigene Darstellung). einzelne Punkte oen, wenn keine Einsicht in die detaillierte technische Implementierung vorliegt. Dies deckt sich mit den in Abschnitt 4.1 erluterten Kriterien und Vorbedingungen. Unabhngig von den einzelnen Sicherheitsproblemen ermglicht die Analyse nur geringe Aussagen zu kombinierten Angrien. Insbesondere die Konzentration auf einen bestimmten Nutzer kann trotz allgemeiner Sicherheit erfolgreich sein. Dies ergibt sich daraus, dass einzelne Sicherheitsmechanismen ihren Schutz unter bestimmten Annahmen einhalten. Dieser Schutz hebt sich dementsprechend auf, wenn diese Annahmen nicht mehr zutreen. Ein Beispiel hierfr ist die PIN Abfrage vor einer Transaktion. Zwar verhindert sie einen Angri durch physischen Zugri, allerdings nur wenn der Angreifer kein Wissen ber die PIN hat. Wurde das Geheimnis hingegen zuvor beispielsweise durch Social Engineering gestohlen, kann die Transaktion ausgefhrt werden. Dies muss als Restrisiko behandelt werden und bietet Mglichkeiten fr weitere Untersuchungen. Die Analyse zeigt, dass sich die Ablufe der einzelnen Verfahren weitestgehend gleichen. Dies besttigen die in Abschnitt 2.4 vorgestellten Prozesse fr mobile Bezahlverfahren. Diese hnlichkeiten bertragen sich somit auch auf die Anwendbarkeit von Angrien. Technische Unterschiede spielen nur eine untergeordnete Rolle. Die folgenden Abstze fassen die erhaltenen Erkenntnisse zusammen. Mobile Bezahlsysteme unabhngig davon ob sie elektronisch oder mit klassischem Bargeld durchgefhrt werden stellen den Besitz der Werteinheit in den Vordergrund. Bei Bargeld sind die einzelnen Werteinheiten Geldstcke und Scheine. In elektronischen Systemen stellen Smartphones die Werteinheiten dar. Sie weisen den Benutzer aus und stellen die Verbindung zum tatschlichen Geld her. Der Besitz eines Smartphones ist also essentiell fr den Besitz des Geldes. Gegenber Bargeld
Stefan Gfrrer
73
4.13. Fazit
In Anlehnung an das Fazit aus Abschnitt 3.5 hat die Analyse gezeigt, dass eKaayCash ein sicheres mobiles Bezahlverfahren mit Peer-to-Peer Funktionalitt umsetzt. Das sichere Framework in Form von eKaay hat nicht nur die einfache Entwicklung des Verfahrens ermglicht, sondern auch die Gefahr durch verschiedene Angrie
74
Stefan Gfrrer
Stefan Gfrrer
75
Stefan Gfrrer
77
berweisung erzeugen
[angemeldet] Ausgabe
[nicht berweisen]
Fehler
Formular erstellen
Abbildung 5.1.: Aktivittsdiagramm, welches die Generierung einer berweisung zeigt (eigene Darstellung).
ID erzeugen Start Daten aufbereiten
eKaay Ausgabe
berweisung speichern
Abbildung 5.2.: Das Aktivittsdiagramm zeigt die Zwischenschritte von Eingabe der der berweisungsdaten bis zur Anzeige des von eKaay erzeugten QR Codes. Es zeigt den Schritt berweisung erzeugen aus Abbildung 5.1 im Detail (eigene Darstellung).
<intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="ekaaycash" /> </intent-filter>
Listing 5.1: Auszug aus der AndroidManifest.xml. Gezeigt wird der Filter fr ein benutzerdeniertes URL Scheme (eigene Darstellung).
78
Stefan Gfrrer
Stefan Gfrrer
79
eKaay Server
Zahlungsbesttigung
berweisungformular
Smartphone Client
Abbildung 5.3.: Kommunikation der verschiedenen Komponenten im eKaayCash Verfahren (eigene Darstellung).
80
Stefan Gfrrer
6. Schluss
6.1. Zusammenfassung
Das Ziel der Arbeit war die Entwicklung eines sicheren, mobilen Bezahlsystems mit Peer-to-Peer Funktionalitt unter Verwendung von eKaay und NFC. Des Weiteren sollte das Verfahren auf seine Sicherheit hin untersucht werden. Diese Analyse sollte auch auf eine Reihe weiterer mobiler Bezahlsysteme angewandt und die Ergebnisse schlielich miteinander verglichen werden. Zunchst wurden eine Reihe von Bedingungen fr das mobile Bezahlsystem festgelegt, in deren Rahmen das Verfahren umgesetzt werden sollte. Im folgenden Entwurf des Verfahrens konnten die Bedingungen fast vollstndig eingehalten werden. Lediglich fr die Einbindung der P2P Kommunikation via NFC musste die bestehende eKaay App erweitert werden. Das Verfahren lie sich wegen der Grundarchitektur eKaay leicht nachvollziehbar umsetzen und bildet trotzdem eine von eKaay getrennt entwickelte Applikation. Gleichzeitig demonstriert es die Anwendung von eKaay TAN. In Anlehnung an die bereits im Einsatz bendliche Praxis der Banken wurde zudem das eKaay PIN Verfahren fr den bergang von Kleinstbetrgen zu greren Summen eingebunden. In einem zweiten Schritt wurde das vorgestellte Verfahren eKaayCash weiterentwickelt und fr den Einsatz in Online Shop Systeme erweitert. Dies ermglicht die einfache Einbindung des mobilen Bezahlsystems in eine bestehende Verkaufsplattform. Es konnte gezeigt werden, dass sowohl fr den Kunden als auch fr den Hndler eine einfachere Bedienung des Shops mglich ist. Die Sicherheit fr den Hndler wird durch einen einfachen Besttigungsprozess gewhrleistet. Ein Austausch gegen ein beliebiges anderes Besttigungsverfahren ist vorgesehen und mglich. Zur berprfung der Sicherheit beider Systeme wurden zunchst mgliche Angrispunkte in Bezahlsystemen mit besonderem Hinblick auf die mobile Plattform identiziert. Sie wurden ausfhrlich erlutert und auf mgliche Folgen im nanziellen Umfeld geprft. Anschlieend konnten eKaayCash und die Erweiterung fr Online Shop Systeme auf ihre Sicherheit hin analysiert werden. Dabei konnte gezeigt werden, dass beide Systeme sicher sind und das Restrisiko vom Verhalten des Benutzers abhngig ist.
Stefan Gfrrer
81
6.2. Ausblick
Unabhngig von den erzielten Ergebnissen ergeben sich durch diese Arbeit neue Anstze fr weitere Untersuchungen. Erweiterte Analyse. Die Analyse in dieser Arbeit hat die Auswirkung einzelner Angrie untersucht. Eine Kombination von verschiedenen Angrien und die Auswirkung des Restrisikos wurde jedoch nicht beachtet. Fr eine Anwendung,
82
Stefan Gfrrer
Stefan Gfrrer
83
Literaturverzeichnis
Agarwal u. a. 2007 Agarwal, Shivani ; Khapra, Mitesh ; Menezes, Bernard ; Uchat, Nirav: Security Issues in Mobile Payment Systems. 2007 Armstrong 2012 Armstrong, Brian: Homepage Bitcoin Android. Online. https://github. com/barmstrong/bitcoin-android. Version: Feb 2012 Baden-Wrttembergische Bank 2006 Baden-Wrttembergische Bank: TAN-Generator der BW-Bank zertiziert - Erfolg fr sicheres Onlinebanking. Online. http://www.bw-bank.de/ bwbankde/1000005999-s1463-de.html. Version: Dec 2006 Bitcoin Project 2012 Bitcoin Project: Version: Feb 2012 Bitcoin.it Wiki 2012 Bitcoin.it Wiki: Bitcoin.it Wiki. Online. https://en.bitcoin.it/wiki/ Main_Page. Version: Feb 2012 Borchert 2012a Borchert, Bernd: Version: Feb 2012 Borchert 2012b Borchert, Bernd: Version: Mar 2012 Bray 2010 Bray, Tim: Android Browser User-Agent Issues. Online. http://androiddevelopers.blogspot.com/2010/12/android-browser-user-agentissues.html. Version: Dec 2010 Chambers 2011 Chambers, Laura: PayPal Uses NFC to Make Peer-to-Peer Payments Easier than Ever. Online. https://www.thepaypalblog.com/2011/07/paypal-usesOnline Banking Verfahren. Online. http://www-fs. informatik.uni-tuebingen.de/~borchert/Troja/Online-Banking.shtml. Homepage eKaay. Online. http://www.ekaay.com/. Homepage Bitcoin. Online. http://bitcoin.org/.
Stefan Gfrrer
85
86
Stefan Gfrrer
Stefan Gfrrer
87
88
Stefan Gfrrer
Stefan Gfrrer
89
90
Stefan Gfrrer
http://techcrunch.com/2011/12/20/paypal-tests-in-store-nfc-
payments-app-with-swedish-retailers-similar-mobile-experimentsto-roll-out-soon/. Version: Dec 2011 Reid u. Harrigan 2011 Reid, Fergal ; Harrigan, Martin: An Analysis of Anonymity in the Bitcoin System. In: SocialCom/PASSAT, IEEE, 2011. ISBN 9781457719318, 1318-1326 Rubin 2012 Rubin, Joshua: Online. Google Wallet Security: PIN Exposure Vulnerability. https://zvelo.com/blog/entry/google-wallet-security-pin-
exposure-vulnerability. Version: Feb 2012 Samuel 2011 Samuel, Shimone: New in the Android Market: Updated PayPal Mobile App Featuring P2P NFC Capabilities. Online. https://www.thepaypalblog. com/2011/11/new-in-the-android-market-updated-paypal-mobile-appfeaturing-p2p-nfc-capabilities-2/. Version: Nov 2011 Schildbach 2012 Schildbach, Andreas: Homepage Bitcoin Wallet. Online. http://code. google.com/p/bitcoin-wallet/. Version: Feb 2012
Stefan Gfrrer
91
technology-of-the-future/3735. Version: Oct 2011 Son u. Shmatikov Son, Sooel ; Shmatikov, Vitaly: The Hitchhikers Guide to DNS Cache Poisoning Suchy 2007 Suchy, T.: Bluetoothbasiertes Informationssystem- Konzeption und Realisation eines Prototypen fr einen Stadtinformationsdienst. GRIN Verlag GmbH, 2007. ISBN 9783638833141 Unrath 2012 Unrath, Dieter N.: Verbraucher misstrauen Zahlung per Funk. Online. http: //www.pressetext.com/main#news/20120302004. Version: Mar 2012 Van Damme u. a. 2005 Van Damme, Gauthier ; Wouters, Karel ; Preneel, Bart: Practical Experiences with NFC Security on mobile Phones. In: Workshop on RFID Security RFIDSec09 5 (2005), S. 113 Viaforensics 2011 Viaforensics: line. Forensic security analysis of Google Wallet. Onhttp://viaforensics.com/mobile-security/forensics-security-
analysis-google-wallet.html. Version: Dec 2011 VISA 2012 VISA: Homepage VISA payWave. Online. http://www.visaeurope.com/en/ cardholders/visa_paywave.aspx. Version: 2012 ZDV Tbingen 2012 ZDV Tbingen: Login Webmail Universitt Tbingen. Online. GrundlageneKaay-1. Version: Mar 2012 Zhang u. a. 2010 Zhang, Lizhuo ; Jia, Weijia ; Wen, Sheng ; Yao, Di: A Man-in-the-Middle Attack on 3G-WLAN Interworking. In: Proceedings of the 2010 International Conference on Communications and Mobile Computing - Volume 01. Washington, DC, USA : IEEE Computer Society, 2010 (CMC 10). ISBN 97807695 39898, 121125 ZKA 2009 ZKA: Richtlinien fr einheitliche Zahlungsverkehrsvordrucke. 2009
92
Stefan Gfrrer
A. Anhang
Stefan Gfrrer
ii
Stefan Gfrrer
Bank-Modul eKaay Token Prft, ob PIN Eingabe bentigt wird Besttigt Transaktion eKaay PIN Besttigt Login Weiterleitung eKaay TAN Fordert Challenge fr Registrierung von eKaay an Login Fordert Challenge fr TAN an Fordert Challenge fr TAN an Konto-Einstellungen Besttigt Transaktion berweisungsformular Shop-Modul Shopseite Fordert berweisung fr Produkt an eKaayCash Formular Fordert Challenge fr Login an Proxy Prft, ob Registrierungstoken abgelaufen ist eKaay
Stefan Gfrrer
eKaay-Modul Transaktionsbesttigung Transaktionsbesttigung Fragt Korrektheit der Transaktion ab
Hauptseite
Logout
Der Anwender ruft Webseiten auf und fhrt einzelne Aktionen aus.
Registrierung
iii
iv
3. Durch abfotografieren oder ber eine NFC Verbindung wird die Challenge an den Zahlenden weitergeleitet. Bob (Zahlender) 4. Der Zahlende kann die Transaktion ber unten stehendes Dialog prfen und besttigen.
eKaay
A. Anhang
Alice (Geldempfnger)
Bitte besttigen
Datum: 20.4.2012 Uhrzeit: 10:00:00 Empfaenger: Alice Betrag: 100.00 Euro
OK
1. Der Geldempfnger fllt das berweisungsformular aus und betrgt den Betrag und den Verwendungszweck an den Server.
Abbildung A.2.: Der vollstndige Ablauf einer Peer-to-Peer Transaktion mit eKaay-
Stefan Gfrrer
Smartphone des Kunden 5. Durch abfotografieren liest der Kunde die Challenge in sein Smartphone ein. Dies ist gleichbedeutend mit dem Kauf der Ware. 6. Der Kunde kann die Transaktion ber unten stehendes Dialog prfen und besttigen.
eKaay
Kunde
Stefan Gfrrer
Bitte besttigen
Datum: 20.4.2012 Uhrzeit: 10:00:00 Empfaenger: Shop Betrag: 1.00 Euro Verwendungszweck: 1kg pfel
abbrechen
OK
2. Der Server des Shops liefert Webseite mit eingebetteter berweisung aus. 3. Der Browser des Kunden ruft die Challenge fr die berweisung ab.
7. Nach Besttigung der Transaktion erzeugt die eKaay App eine Response zu der Challenge und bertrgt diese an den Server der Bank.
Abbildung A.3.: Der vollstndige Ablauf eines Einkaufs in einem Shop mit der Er-