A researcher from the Fraunhofer Institute for Secure Information Technolog used the recent EUSecWest event to demonstrate progress in attacking NFC applications and to announce the availability of tools so that everyone can have a go at NFC hacking for fun and profit.
Near Field Communications is the RFID-based standard being built into mobile phones to allow them greater interaction with the physical world. NFC-enabled handsets can be used to pay for bus or train journeys, replacing existing contactless cards. They can read tags embedded in (Smart) posters that trigger a URL to be loaded or a phone number to be called.
NFC's problem is that it lacks a killer application, and not everyone agrees how the payment mechanisms should be organised. So far, only Nokia is selling an NFC-enabled handset, the 6131NFC, although the company has another model planned for later this year.
But NFC is compatible with previous contactless standards such as MiFare and Felica. So the Fraunhofer Institute for Secure Information Technology's Collin Mulliner has created a toolkit that turns a 6131NFC into a generic toolkit for testing deployments of those technologies, as well as looking at functionality unique to NFC deployments.
The two most interesting hacks involve replacing the NFC tag on a vending machine, and spoofing a URI in a Smart Poster to connect the user to somewhere other than they wished.
The vending machines in question are in Vienna where a phone is waved near the machine and an NFC connection asks the phone to send an SMS message, this premium-rate message is used to pay for the snack. The hacker simply switches NFC tags between two machines, then collects what is paid for by the poor chap using the other machine. This is hardly the fault of the NFC standard, but interesting nonetheless.
More important is the discovery that it's possible to display one URI to the phone's user, while trigging the handset to connect to a different one. This is typical phishing, but with the addition that an attacker could replace, say, an 0800 (freephone) number with a premium-rate number, and could then connect the call so the mark would be unaware of the switch.
The switch wouldn't be hard to accomplish either: simply copy an existing tag, changing the number, then stick your modified tag on top of the existing one with a bit of silver foil between the two. It's easy to imagine a tourist information or advertising tag being hacked in this way.
Collin told Nokia about the problems last month. The company is already working on a fix – the standard is so new that any serious security scare could see it stillborn, and Nokia needs it to succeed.
Other problems will no doubt emerge, but it's encouraging that Mulliner's attempts at fuzzing and brute-forcing MiFare encryption keys were unsuccessful. The provision of a toolkit should allow new security issues to be quickly identified and fixed – though Mulliner points out that his excellent toolkit is all done in Java, and thus limited to what Java allows him to do. Once we have open-OS handsets with NFC capabilities, things should get a lot more interesting. ®