| Table of Contents | |||||||
|---|---|---|---|---|---|---|---|
It's an Awesome List that I (djsime1) created shortly after receiving Lurat, my lovely dolphin sidekick.
(TODO)
Short answer: You don't. That's illegal, and NOT what Flipper was designed for.
Due to legal regulations, Flipper is not allowed to transmit on certain frequencies depending on your order location. For more information, read this: https://docs.flipperzero.one/sub-ghz/frequencies If you have no regard for laws, you can use custom firmwares such as Unleashed to bypass this restriction at your own risk.
If it's a commonly used frequency, bring the device really close to the Flipper and use the Frequency analyzer. If that didn't work, check for the device's FCC ID. It's legally required to be somewhere on the device if it's sold in the US. Then, look up that ID on https://fccid.io.
(TODO)
Unless the item of interest is extremely old, it probably uses rolling codes. Read more below.
Think of it like this: Imagine your garage door was programmed to open whenever it received the code "1234" from a transponder. This would be a static code, where a replay attack (Read RAW) would be able to open the garage. Since replay attacks are so easy, most devices will shuffle the code after each use. So the first time you open your garage, the transponder sends "1234" and the second time it sends "5678." Rolling codes aren't that simple, but you get the gist.
You'll have to re-sync your old device manually, since it's now lagging behind on the rolling code.
A brute force code tries every possible code for a specific bit length, however this is inefficient. Example: 0001, 0002, 0003, 0004 ... 9998, 9999. Debruin sequences are more efficient by merging multiple codes together. Example: 365, 136, and 650 can all be found in 13650 by looking at 3 digits individually.
| Card name/type | Read | Write | Save | Emulate | Notes |
|---|---|---|---|---|---|
| Mifare Classic | X | X | X | Emulation is hit/miss | |
| Mifare DESFire | X | ||||
| Mifare Ultralight | X | X | X | Non-password protected | |
| EMV Cards | X | Can read bank cards | |||
| NTAG-21X | X | X | X | ||
| iClass/PicoPass | X | X | |||
| EM4100/EM4102 | X | X | X | ||
| H10301 | X | X | X | ||
| Indala | X | X | X | ||
| T5577 | X | X | X | X |
Run the "Read card" action in the NFC app. If you don't see "NFC-A", your card is unfortunately unsupported. Note that you've only read the card UID and type, not the actual data. For that you need to select the "Run compatible app" option.
Currently unsupported, but is being worked on.
This happens when the tag is password protected. There's no quick fix for this, but solutions are in the works.
The data on Mifare Classic cards is split up into sections, and each section is protected by a key. Flipper attempts to read the card by preforming a dictionary attack on the card using a bunch of common keys. Some sectors will be unlocked, others won't be.
The data on Mifare Classic cards is split up into sections, and each section is protected by a key. The read has failed, meaning the card didn't use any common keys. Workarounds are being developed.
The data on Mifare Classic cards is split up into sections, and each section is protected by a key. The read wasn't successful, but it didn't fail either. Some of the card's data was read and saved, but not all. Even if not all sectors were read, it's still worth trying to use the partial save.
There are a number of reasons, some of which can be fixed while others can't. Most prominently, the Flipper's NFC chip doesn't have hardware support for Mifare Classic, so it's been offloaded to the CPU. However, the CPU's clock cycle can't conform to the exact (and strict) timings that Mifare Classics communicate with. This means that some readers will respond to emulation, while others won't. This can not be fixed with firmware.
DESFire is a very complicated and much more secure protocol. There are no known attacks against it yet.
These are shadow files, and they're created whenever an emulated tag is written to. They store a copy of the original file with whatever was written. This way, the original file remains untouched.