Comments (3)
Okay, found the real problem. In MifareClassic.c
you save DetectionCanary
into working memory after UID and then read the whole block 0 from the same memory in CommandGetDetection
function of Commands.c
. The problem is that the UID is stored in card memory and you try to read it from working memory, where it never existed. Thus, on clear run the GUI becomes 8 bytes of FF
s instead of the real UID (and SAK, ATQA, CRC). There are 2 solutions:
- Move canary into card memory. Then you can read block 0 with a single
AppCardMemoryRead
function and get both UID and canary - Leave locations as they are and replace single
AppWorkingMemoryRead
function inCommandGetDetection
(Commands.c
) byAppCardMemoryRead
to read first 8 bytes (UID, SAK, ATQA) from card memory and thenAppWorkingMemoryRead
to read the rest of block 0
from chameleonmini-rebooted.
So, the issue first appeared in the commit 6ec88b4, which was the last one to change MF_DETECTION implementation. Looks like moving it to working memory broke something and it didn't work properly any more. I temporarily fixed it by changing
[CONFIG_MF_CLASSIC_DETECTION]
...
.CardMemorySize = MFCLASSIC_1K_MEM_SIZE,
.WorkingMemorySize = DETECTION_MEM_APP_SIZE,
.ReadOnly = false
to
[CONFIG_MF_CLASSIC_DETECTION]
...
.CardMemorySize = DETECTION_MEM_APP_SIZE,
.WorkingMemorySize = MEMORY_NO_MEMORY,
.ReadOnly = true
in Configuration.c
and renaming all AppWorkingMemory
commands related to this mode back to AppCardMemory
. Just look at the diff of the commit above for better understanding. This is a temporary fix, the real problem is somewhere in working memory
from chameleonmini-rebooted.
Related Issues (20)
- Reader attack mifare ultralight C HOT 5
- [FORUM] Chameleon freezing with solid light HOT 5
- [REQ] Mifare DESFire emulation support? HOT 8
- Unable to set ATQA value HOT 1
- Switch button freezes Chameleon HOT 19
- Incorrect list of supported cards HOT 1
- [FORUM] Uploading a dump on Linux using command line HOT 2
- Ultralight missing from latest releases HOT 1
- Communication between Chameleon and for example Arduino?! HOT 1
- The bootloader HOT 3
- put the bootloader on the chip HOT 1
- Chinese Chameleon Mini does not show up[BUG] HOT 2
- Sniffing All Data HOT 1
- [BUG] All Btn Long Function changed In All Slots When I Change Anyone HOT 3
- [REQ] Enter a brief description of requested enhancement/feature
- [FORUM] Please update the discord link HOT 1
- [FORUM] dfu-programmer 0.7.2 fails on linux HOT 5
- [REQ] Is it possible to implement the ability to define Chameleon Mini as a "standard" SmartCard Reader in Windows
- [BUG] Latest firmware not working on a chinese device HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chameleonmini-rebooted.