Flipper Zero: Reading and Emulating RFID and NFC

Almost everyone uses RFID or NFC nowadays, whether or not you’re aware of it. RFID (Radio-Frequency Identification) and NFC (Near Field Communication) are related technologies that both use radio waves for communication, but they have some key differences:

  • RFID is a contactless one-way communication method, while NFC allows for two-way communication.
  • RFID can be read over long distances (even meters, or 20 feet in freedom units, depending on the power of the reader), while NFC can be read up to distances of about 10 to 15 cm (or 4 to 6 inches in freedom units).
  • RFID has a low frequency band (125KHz to 135KHz), high frequency band (13.56MHz) and ultra-high frequency band (860MHz to 960MHz), while NFC is limited to the 13.56MHz frequency band.
  • NFC is a form of RFID, but with a shorter range and it can be used in more ways.
  • To read an RFID, you need a specialized reader, while NFC can be read by a modern smartphone for example.

NFC

For this post, we’re focusing on NFC tags. These are available almost everywhere, and are fairly cheap to buy (about 5 Euro/USD for 10 tags via Amazon for example).

NFC devices can exchange information when they’re brought close together. This communication happens wirelessly and doesn’t require an internet connection. NFC is based on RFID, which uses electromagnetic fields to transfer data. NFC technology incorporates security features to protect the data being transmitted. For example, data can be encrypted during transmission, and NFC devices often require authentication before exchanging sensitive information. It is used in various applications, including mobile payments, public transportation systems (like contactless ticketing), access control systems, and smart advertising (such as tapping a poster to receive more information on your phone).

Creating a tag

When you have a writable NFC tag, you can write anything you want to the tag. In my example, writing to the NFC tag is done via a mobile app called “NFC Tools” that is available via the Google Play Store and the iOS App Store.

You can choose what you want to write to the NFC tag, but in this case we’re just going to write a URL to the tag for this domain. In order to do that, open the app, and click on “Write” at the top. The next step is to add a record, choose URL / URI, and fill in the URL:

When you’re ready to write to an NFC tag, click on “Write”. The app now prompts you to approach an NFC tag to write the URL to. Once the write completed successfully, the app will show an alert:

You can use the same app to read the tag, just to see if it truly succeeded. Just click on Read at the top, and hold the NFC tag close enough to your phone. The results will pop up on your screen:

The app will show you all the details available, such as the type of NFC tag, the serial number, whether or not it’s password protected, the amount of bytes written to the NFC tag, and at the bottom our URL as “Record 1”.

Reading

Now that we have a readable NFC tag, we can use the Flipper Zero to read the tag. Just open up the NFC app on your Flipper Zero, and choose “Read”. Now hold the NFC tag close to your Flipper Zero, and next to the audio cue (a short beep) the results will appear on the screen:

As you can see it leaves out all the unnecessary information, but only shows you the record you added to the NFC tag.

When you click on the right arrow, you can choose whether or not you want to save it on your Flipper Zero for future use, Emulate it (for example to test it on your phone to see if it works, or to write it to another NFC tag.

By emulating the tag, you can test the functionality with the app mentioned before, of just with the NFC feature of your smartphone. When you use your smartphone, it will prompt you to open a browser and navigate to the URL that’s on the NFC tag. Now you know it works as intended.

Conclusion

To sum up, NFC tags represent an interesting technology with widespread applications, ranging from contactless payments, smart home integration, sharing information to authentication, security and access management. When you consider the functionality NFC gives you, there’s a realm of potential for leveraging its functionalities in creative ways.

The Flipper Zero device simplifies the process of cloning NFC tags, making it accessible and straightforward. This cloning capability offers users convenience and adaptability, for example for duplicating access cards.

Nonetheless, it’s crucial to approach this technology with responsibility and mindfulness, considering both privacy and security implications. As NFC technology progresses and integrates further into various devices and systems, staying informed about its capabilities and staying vigilant is always a best practice.

Disclaimer

This post was written with Xtreme firmware version “XFW-0053_02022024” installed, so depending on when you read this things might be working different on your Flipper Zero.

The “NFC Tools” app used above is version 8.10, so depending on when you read this things might be working differently.

This post is for informational purposes only, and we are not liable for any loss or damage resulting from its use.

Also: don’t be a skiddie, or an a-hole, and stay vigilant!

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *