NFC ist eine Technologie, die im Moment in vielen Bereichen Einzug hält. Insbesondere die cashless-pay Funktion moderner Kredit- und Bankkarten wirft Fragen bezüglich der Sicherheit von NFC auf. Ein zentrales Sicherheitsmerkmal der Technologie ist die Einschränkung der Distanz, wobei 10 cm als Obergrenze für NFC-Kommunikation angegeben wird.
Wir versuchen in dieser Arbeit verschiedene Vorgehensweisen um die Distanz von NFC zu erhöhen. Bei erhöhter Sendeleistung stellt sich dabei das Problem von Umgebungsgeräuschen ein, wenn Sende- und Empfangsantenne einander angenähert werden. Dafür werden Techniken von Diversity evaluiert und Versuche bezüglich des Nutzens von Diversity für diesen Anwendungsfall gemacht. Das Setup für diese Versuche wurde entworfen und dabei ein Teil des NFC-Protokolls auf der Red Pitaya Plattform implementiert.
Im Hauptteil der Arbeit wurden verschiedene Versuchs-Setups evaluiert und mit unterschiedlichen Antennenformen und Typen experimentiert. Für die Aktivierungsdistanz eignete sich eine doppelt gewickelte Loop Antenne mit Durchmesser 31 cm aus 12 mm-Kupferrohr mit einer Wandstärke von 1mm. Unter Einsatz eines Antennen-Tuners konnte eine Aktivierung auf 35 cm Distanz mit einer Sendeleistung von < 5 Watt erreicht werden. Insbesondere die Technik von Time Diversity mittels zeitlich verschobener Signale, verbessert die Reply Distanz massgeblich, so dass Kommunikation auf eine Distanz von 30 cm stattfinden kann.
NFC, RFID, GNU Radio, Python, Red Pitaya, SDR, HamRadio
NFC wird in verschiedensten Anwendungsbereichen verwendet (Zugangskontrolle, kontaktloses Bezahlen, Informationsaustausch, etc). Ein Sicherheitselement von NFC ist die Distanz auf welche die Datenübertragung funktioniert (<10cm gemäss NFC Forum). Ziel der Arbeit ist es, dieses Sicherheitselement zu prüfen und zu versuchen die 10 cm Maximaldistanz zu erhöhen. Die dafür nötige Hardware soll innerhalb des Projekts evaluiert werden.
In mehreren Versuchsreihen sollen verschiedene Zugänge getestet werden, welche die Distanz einer NFC-Kommunikation erweitern könnten. Ein zu evaluierender Ansatz soll Diversity Reception sein: Der Einsatz zweier Antennen (eine gerichtete Antenne und eine Rundantenne) und der Versuch NFC Kommunikation aus möglichst grosser Distanz zu initiieren und Daten eines NFC Tags auszulesen. Der Fokus soll dabei auf lesenden Zugriff einer im Rahmen der Arbeit bestimmten Art von NFC-Tag gerichtet sein.
Nach Abschluss der Arbeit lässt sich sagen, dass sich die Kommunikations-Distanz für NFC definitiv über die angegebene maximale Distanz von 10 cm hinaus erhöhen lässt. Teileweise konnte die Initialisierung der Kommunikation auf annähernd 40 cm erhöht werden. In einem Gated-Setup, bei dem sich der auszulesende Transponder zwischen der Sende- und Empfangs-Antenne befindet konnte eine Aktivierung, gut reproduzierbar, auf 35 cm Distanz zur Sendeantenne vorgenommen werden. Für den Aufbau im Single-Side-Setup, bei welchem beide Antennen auf derselben Seite des Transponders stehen verkürzt sich diese Distanz nochmals auf maximal erreichte 18 cm. Wobei Berechnungen zeigen, dass auch hier noch grössere Distanzen von ~ 30 cm möglich sein sollten.
Dazu wurde das folgende Setup eingesetzt:
Eine Anwendung von Diversity Reception mit mehreren unterschiedlichen Antennen für die Verwertung des gleichen Signals konnte nicht praktikabel umgesetzt werden. Jedoch kann durch den Einsatz von Diversity Combining mittels zeitlich versetzter Signale Distanz beim Empfang der Transponder-Antwort gewonnen werden. Durch mehrfaches Auslesen mit derselben Abfrage kann ein Frame aus vielen ungenügenden Signalen rekonstruiert werden.
Entscheidend für die Umsetzung sind die Ausgangsleistung, welche das magnetische Feld an der Sendeantenne generiert, und der Empfang der Antwort des Transponders. Die oben angegebenen Werte wurden mit einem 5 Watt Linearverstärker erzielt. Es ist denkbar, dass durch eine Leistungssteigerung deutlich grössere Distanzen für eine Aktivierung erreichbar sind. Dies würde in einem Single-Side-Setup wiederum den Empfang zusätzlich erschweren und würde evtl. andere Techniken für den Empfang voraussetzten.
Mit diesen Erkenntnissen sind Angriffe denkbar die sich auf das unbemerkte Auslesen von NFC-Karten des täglichen Gebrauchs beziehen. So kann ein Setup mit einer erweiterten Auslesedistanz an einem schmalen Durchgang platziert werden und unbemerkt die Karten der vorbeigehenden Leute ausgelesen werden. Auch Szenarien mit einer Proxy-Attacke, bei der die Kommunikation über einen anderen Kommunikations-Kanal erweitert wird sind unter Verwendung der Erkenntnisse einfacher realisierbar.
Projektdauer: | 1 Semester |
Aufwand: | 2x 360 Stunden |
Teamgrösse: | 2 Personen |
Arbeit als: | Bachelor Thesis |
Martin Gwerder
Fachhochschule Nordwestschweiz FHNW
Hochschule für Technik
Bahnhofstrasse 6
CH-5210 Windisch
Patrick Wigger und Roland Mosimann
Martin Gwerder, martin.gwerder@fhnw.ch