Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MF1K dump emulation keep auth error on new firmware #71

Open
jackman815 opened this issue Aug 25, 2021 · 3 comments
Open

MF1K dump emulation keep auth error on new firmware #71

jackman815 opened this issue Aug 25, 2021 · 3 comments

Comments

@jackman815
Copy link

jackman815 commented Aug 25, 2021

Keep Auth Error while emulating Mifare1K on new version firmware.

Device: ChameleonTiny Professional
Reader: Proxmark 3 RDV4 v4.13441 (Also tested on other card reader)

build 152dc71 (old):
image

build 90f04ac (new) :
image

@NathanielJS1541
Copy link

I was having the same problem with the latest commits to master. I tried recompiling 6a2a976 and that seemed to work for me, which is I think the last commit that doesn't have the problem. I think it's commit 1235ee1 that's causing the problems.

@NathanielJS1541
Copy link

Ok so basically what's happened is without editing the Makefile and removing support some of the tags, the compiled application is too large for the available memory on the Chameleon Tiny. This is after adding support for NTAG215 (commit 1235ee1 onwards I think).
The command that I presume we both neglected to run was make check_size which returns something like the following:

make: *** Chameleon-RevG.elf Application Section size 66442 excedes maximum allowed 65536. Please disable some features in Makefile
make: *** [Makefile:192: check_size] Error 1

This would then cause the programmer to overwrite some other stuff and break support for Mifare classic I guess.
The solution is to comment out support for some tags you don't use (I did it one at a time until make check_size returned no errors) in the makefile at the top (Currently this is lines 9 - 25):

#Supported configurations
SETTINGS    += -DCONFIG_MF_DETECTION_SUPPORT
SETTINGS    += -DCONFIG_MF_DETECTION_4K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_MINI_4B_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_1K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_1K_7B_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_4K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_4K_7B_SUPPORT
SETTINGS    += -DCONFIG_MF_ULTRALIGHT_SUPPORT
SETTINGS	+= -DCONFIG_ISO14443A_SNIFF_SUPPORT
SETTINGS	+= -DCONFIG_ISO14443A_READER_SUPPORT
SETTINGS 	+= -DCONFIG_NTAG215_SUPPORT
SETTINGS	+= -DCONFIG_VICINITY_SUPPORT
SETTINGS	+= -DCONFIG_SL2S2002_SUPPORT
SETTINGS	+= -DCONFIG_TITAGITSTANDARD_SUPPORT
# SETTINGS	+= -DCONFIG_ISO15693_SNIFF_SUPPORT
SETTINGS	+= -DCONFIG_EM4233_SUPPORT

And yes everything else I was looking at was a wild goose chase...

@jackman815
Copy link
Author

Thank you very much, we both forgot to check the memory size haha

Ok so basically what's happened is without editing the Makefile and removing support some of the tags, the compiled application is too large for the available memory on the Chameleon Tiny. This is after adding support for NTAG215 (commit 1235ee1 onwards I think).
The command that I presume we both neglected to run was make check_size which returns something like the following:

make: *** Chameleon-RevG.elf Application Section size 66442 excedes maximum allowed 65536. Please disable some features in Makefile
make: *** [Makefile:192: check_size] Error 1

This would then cause the programmer to overwrite some other stuff and break support for Mifare classic I guess.
The solution is to comment out support for some tags you don't use (I did it one at a time until make check_size returned no errors) in the makefile at the top (Currently this is lines 9 - 25):

#Supported configurations
SETTINGS    += -DCONFIG_MF_DETECTION_SUPPORT
SETTINGS    += -DCONFIG_MF_DETECTION_4K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_MINI_4B_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_1K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_1K_7B_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_4K_SUPPORT
SETTINGS    += -DCONFIG_MF_CLASSIC_4K_7B_SUPPORT
SETTINGS    += -DCONFIG_MF_ULTRALIGHT_SUPPORT
SETTINGS	+= -DCONFIG_ISO14443A_SNIFF_SUPPORT
SETTINGS	+= -DCONFIG_ISO14443A_READER_SUPPORT
SETTINGS 	+= -DCONFIG_NTAG215_SUPPORT
SETTINGS	+= -DCONFIG_VICINITY_SUPPORT
SETTINGS	+= -DCONFIG_SL2S2002_SUPPORT
SETTINGS	+= -DCONFIG_TITAGITSTANDARD_SUPPORT
# SETTINGS	+= -DCONFIG_ISO15693_SNIFF_SUPPORT
SETTINGS	+= -DCONFIG_EM4233_SUPPORT

And yes everything else I was looking at was a wild goose chase...

Thank you very much, we both forgot to check the memory size :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants