Can I sniff NFC Reader and Card communication with cheap Arduino hardware?

Hello,
Like in all companies, we love coffee. So, we have a coffee machine that works NOT ON MONEY, but only for STAFF (on card there is information of current worker). It is on NFC system. I wonder if I can sniff information of Reader and Mifare Card like proxmark3 does. My friend got proxmark3 and we already got information but I want to have experience on Arduino. Also proxmark3 is too expensive... (+/-$430.00)

Can someone tell me what hardware can I use that can read/record dialog/communication of NFC reader and Card? And which one is more popular for code searching in google :slight_smile:

Example:

READER: 04 00
CARD: 46 4e 16 60 7e
READER: 08 b6 dd
CARD: 08
...

I guess I explained what I want correctly...

Thanks in advice.

You have to find out the frequency and protocol of the communication. See the wikipedia entry on NFC and the NFC Forum for possible implementations. Then you need a receiver for exactly that frequency, and place its antenna near the reader.

You could try to search for "arduino nfc reader" or even try "nfc reader" in the search bar at the top right of this page.

For example Adafruit PN532 NFC/RFID Controller Shield for Arduino + Extras : ID 789 : $39.95 : Adafruit Industries, Unique & fun DIY electronics and kits which also has links to libraries and code.

Hello, and thanks for fast reply. I have already read everything that I need :slight_smile:

The frequency of communication is 13.56 MHz.
The protocol of communication is ISO 1443-3A.

Target is based on NfcA tecnology and it's type is NXP MIFARE Classic 1k. I think it is mifare plus with classic emulation... I have ACR122U and it can't be "Dark Attacked" coz it's with new technology. So the only one way is sniff communtiacation of reader and card and use log for last 8 bits.

Any way, you know technologies, you know protocols. My target is not to read a card, but to read communication. Please provide any information about it.

Thanks in advice.

Install your reader as already outlined, and watch its output for sequences of low and high states. Eventually you can use the IRremote library, when 50┬Ás is a useful interval. The RawBuf size can be extended, if required. Then figure out what the recorded lengths of mark and space states should mean.

If you have luck, the sequences should be the same whenever the same card is read. If not, the transmission may be encrypted based on a key that is generated and transmitted by the card reader.

Wow, that sounds interesting. Can you tell me the exact hardware that I must buy? I only have arduino compatible board and nothing... Also, would be great if you provide any topic/blog/pdf/project to read more and go deep into that EXACT process. I was unable to find such information....

Thanks again for your help !

midler:
The frequency of communication is 13.56 MHz.

You need a receiver for that frequency. That's all hardware requirements, for now.
Later on you may also need a power supply, case...

Then you can start recording the communication, and dump it to the Serial Monitor.
For a quick start you can use the examples coming with the IRremote library, using your receiver's output instead of the IR receiver. Later on you may write your own code for measuring the duration of the high and low signal states.

Eventually you find more information about the communication protocol, following the links in the wikipedia topic.

Just want to say I think this is pretty cool and I'll be following... Good luck midler, and please post information and progress as you go along.

Thanks,
-Chase

Thanks, DrDiettrich. I think I got how the process actually works. I work on C# so I think I will write my own code. I even have already written similar code so I know some things to work with signals. The only thing is that I wrote it in Atmel Studio... I think I will rewrite it to Arduino-compatible code...

Thanks, cbrum11. I must buy receiver at first. So, when receiver will be here, I will share every step because there is no information at all in google about this theme.

So are you trying to steal coffee from your firm? If so I am pleased to tell you that you are on the wrong track.
I used to work designing RFID cards.
Bad luck.

Me and my friend both work in IT dept and we both have ONE card. The nfc system is to avoid customers using it. As I told, it's for staff. And we are staff too :slight_smile:

We just have much time in office and arduino is my hobby, so.... there is nothing to worry about))

Don't try to judge me try to help !

GOOD luck.

Ok but just because your intentions might be honest doesn't mean that everyone who reads the results will not be. While I know how to hack RFID cards I would never tell anyone as that would cause great damage to the industry. Ever thought of why there is nothing on line about this?
Ever thought of asking your employer for another card?

A secure RFID system should withstand a simple replay of a recorded communication, or an attempt to duplicate a card. Some companies pay hackers for finding vulnerable gaps in their security management, so that these gaps can be eliminated. Imagine what could happen, apart from a theft of a few cups of coffee, if the same cards are used to control access to sensitive areas of a company. What can be done, will be done, sooner or later.

It's better to discuss eventual issues in public, instead of in the dark Internet.

Totally agree with DrDiettrich!

Grumpy_Mike, I am searching alternative of expensive proxmark3. What I want to do is already known and many people are reading communication with proxmark3 or with any other device. I have already asked myself "why there is nothing on line about this". There are tones of videos about proxmark3 and/or other device to hack cards. I am not trying to discover new method of hacking. Just want to make cheap alternative of expensive proxmark3 with Arduino. My director will give me as many cards as I want. Even I don't need his card, I already have the information of card and can duplicate them with my friend's proxmark3. The main thing is not to drink coffee, but to make something new and go deep into NFC system itself and share to people information.