Skip to content

Kontaktloses Bezahlen: Die Angriffe, Teil 4

Bisher habe ich die Grundlagen des kontaktlosen Bezahlens mit Smartphone oder NFC-fähiger Zahlkarte, einige wenig aussichtsreichen Angriffe sowie die mehr Erfolg versprechenden Relay-Angriff sowie deren Optimierung beschrieben. Nun geht es um einen verbesserten Relay-Angriff, der zum einen die Erfolgschancen erhöht und zum anderen den Aufwand senkt.

Relay-Angriff ohne 2. Mann

Beim von Jordi Van den Breekel entwickelten "einfachen" Relay-Angriff agierten zwei Kriminelle gemeinsam: Der eine Kriminelle zahlte irgendwo mit seinem präparierten NFC-fähigen Smartphone, dass die nötigen Daten über das Internet vom Smartphone des zweiten Kriminellen bezog, der damit irgendwo anders das NFC-fähige Zahlungsmittel des Opfers abfragte.

Sie erkennen sicher das Problem: Während der eine Kriminelle bezahlen will, muss der andere zwingend in der Nähe eines Opfers sein. Wenn der zweite Kriminelle sein Opfer z.B. in der U-Bahn gesucht hat bricht der Kontakt zur Karte ab, wenn das Opfer aussteigt oder sich auch nur umdreht. Und damit schlägt der Angriff fehlt. Da drängt sich natürlich die Frage auf, ob sich das nicht optimieren lässt.

Auf der Hack in the Box Amsterdam im Mai 2015 haben Ricardo J. Rodríguez und Pepe Vila "Relay Attacks in EMV Contactless Cards with Android OTS Devices" vorgestellt. Das für diesen Vortrag verwendete Whitepaper scheint eine Vorversion eines Whitepapers für den "11th Workshop on RFID Security (RFIDsec), 2015" (PDF) zu sein. Und auch auf der Rooted CON 2015 haben die beiden Forscher einen Vortrag zum gleichenThema gehalten (Präsentation auf Slideshare).

Ricardo J. Rodríguez und Pepe Vila haben sich bei ihren Untersuchungen auf passive Relay-Angriffe, bei denen die NFC-Kommunikation nur weitergeleitet, aber nicht manipuliert wird, konzentriert. Das Angriffsziel sind wie bei Jordi Van den Breekel die EMV Contactless Karten. Im Gegensatz zu dessen Vortrag gibt es ihren Vortrag aber zunächst eine Beschreibungen der Funktionsweise von NFC und bekannten Angriffe darauf. Auch auf die NFC-Unterstützung von Android gehen sie ausführlich ein. Und geben dabei eine weitere Beschränkung für Relay-Angriffe an: Die sind nur möglich, wenn die Verzögerung der einzelnen Nachrichten unter 5 Sekunden liegt. Jordi Van den Breekel war lediglich von einer Maximaldauer der Transaktionen von 52 Sekunden ausgegangen. Alle drei Forscher sind sich aber in einem Punkt einig: Relay-Angriffe sind mit jedem NFC-fähigen Android-Gerät möglich, sofern die Android-Version mindestens 4.4 (KitKat) ist.

Demo mit echten PoS-Terminal

Für die Demonstration des Relay-Angriffs haben Ricardo J. Rodríguez und Pepe Vila kein emuliertes PoS-Terminal verwendet, sondern ein reales Ingenico IWL280. Dazu kommen wie bei Jordi Van den Breekel zwei Handelsübliche Android-Geräte (erfolgreich getestet wurden Nexus 4 und 5, Samsung Galaxy Nexus und Sony Xperia S). Damit waren, wie auch bei Jordi Van den Breekel, erfolgreiche Relay-Angriffe möglich, so dass am PoS-Terminal mit der gar nicht vorliegenden Karte bezahlt wurde.

Angriffe über ein Botnet

Davon ausgehend haben Ricardo J. Rodríguez und Pepe Vila zwei neue Angriffsszenarien entwickelt, bei denen sie von einem Angriff durch Schadsoftware, konkret einem Botnet, ausgehen:

Der Bot auf einem Android-Gerät nimmt Kontakt mit dem Bot-Master auf, wenn eine EMV Contactless Karte in Reichweite erkannt wird. Der Bot-Master kann dann diese Karte zur Zahlung seiner Einkäufe verwenden. Entweder, indem ein Krimineller verschiedene Karten an einem Ort missbraucht, oder indem mehrere Kriminelle eine Karte an mehreren Orten parallel missbrauchen. Schutzmaßnahmen wie die PIN-Eingabe nach einer bestimmten Anzahl Transaktionen und die Prüfung auf unübliche Einsatzorte der Karten reduzieren die Gefahr durch die zweite Möglichkeit.

Wie so ein Angriff ablaufen kann zeigt Abbildung 1.

Relay-Angriff auf EMV Contactless mit Bot-Schadsoftware
Abb. 1: Relay-Angriff auf EMV Contactless mit Bot-Schadsoftware (Klick für großes Bild)

Mir scheint, da wurde eine dritte Möglichkeit vergessen: Mehrere Kriminelle nutzen mehrere Karten an verschiedenen Orten. Idealerweise räumlich so verteilt, dass der Missbrauch gerade nicht dadurch auffällt, dass eine Karte plötzlich an einem abwegigen Ort in Erscheinung tritt.

Schutz ist möglich, zumindest theoretisch

Zum Schutz vor Relay-Angriffen schlagen Ricardo J. Rodríguez und Pepe Vila verschiedene Möglichkeiten vor.

  • Zum einen könnte "Distance-bounding" zum Einsatz kommen, bei dem mit Obergrenzen für die physikalische Distanz gearbeitet wird. Ermittelt wird die über die Round-Trip-Zeiten kryptographischer Challenge-Response-Nachrichten.
  • Ebenso können Timing-Bedingungen, zum Beispiel für Timeouts, verwendet werden, um Relay-Angriffe zu erkennen. Was nicht zwingend zum Ziel führt, wie Jordi Van den Breekel festgestellt hat.
  • Und zu guter Letzt könnten Hardware-basierte Schutzmaßnahmen verwendet werden. Zum Beispiel durch eine Auswertung der vom NFC-Chip verwendeten zufälligen Unique Identifier (UID), um über Whitelisting legitime oder über Blacklisting bekannte gefälschte Karten zu erkennen. Oder indem die RFID-Signale der NFC durch eine entsprechende Hülle für die Karte blockiert werden, so lange die Karte nicht benötigt wird. Oder indem ein physikalischer Taster/Schalter für die Aktivierung der Karte betätigt werden muss. Oder indem ein zweite Authentifizierung, zum Beispiel durch einen Fingerabdruck-Scanner, verwendet wird. Das alles hat bis auf den Vorschlag der White- oder Blacklist aber alles einen entscheidenden Nachteil: Es macht das Bezahlen mit NFC komplizierter, und damit geht dessen Vorteil des besonders einfachen Bezahlens verloren.

Theoretisch ist das alles machbar, aber wirklich praktikabel ist es nicht. Das einzige, was uns vor Angriffen schützt, ist vermutlich mal wieder das altbekannte "Lohnt sich nicht!", in diesem Fall in der Variante "Bankkonten über Onlinebanking-Trojaner leerräumen bringt mehr und ist einfacher".

In den nächsten 3 Folgen hat das Thema "Kontaktloses Bezahlen" eine kurze Pause, stattdessen beschreibe ich ergänzend zu Artikeln im Entwickler Magazin die Formate für verschlüsselte und signierte E-Mails. Danach geht es aber mit dem kontaktlosen Bezahlen weiter.

Carsten Eilers

>
        </div>
                
        <footer class= Kategorien: Grundlagen

Trackbacks

Keine Trackbacks