RfidResearchGroup / ChameleonMini

The ChameleonMini is a versatile contactless smartcard emulator compliant to NFC. The ChameleonMini was first developed by KAOS. This is NOT the official repo for KAOS's ChameleonMini. For further information see the Getting Started Page
http://chameleontiny.com/help/
Other
404 stars 76 forks source link

Fix timeout while working with russian subway validators. #26

Closed monster1025 closed 1 year ago

monster1025 commented 4 years ago

This fix may solve timing problems (like in my case with russian subway) =) Our validators have low timing on nonce generation, but bigger timing for authing command - so I moved calculations to proper place.

Not sure that it is working right, because mine chameleon didn't work with clean proxgrind branch firmware (I always have "auth failed" with my Proxmark).

In my branch I have merged clean version of MifareClassic.c file from emsec firmware and made this modifications and it is worked fine with moscow subway validator for read and write - but it have broken reader attack functionality (I am not using it). So I backported this fix here - it compiles fine, but I can't check it in real hardware.

It will be great to move Detection functionality to separate files so we can update MifareClassic.c file (somebody tried it here: https://github.com/emsec/ChameleonMini/pull/229/files).

PhilosopherRUS commented 4 years ago

Это исправление может решить проблемы с синхронизацией (как в моем случае с русским метро) =) Наши валидаторы имеют низкую синхронизацию при генерации nonce, но большую синхронизацию для команды аутентификации - поэтому я переместил вычисления в нужное место.

Не уверен, что он работает правильно, потому что мой хамелеон не работал с чистой прошивкой ветки Proxgrind (у меня всегда «Auth fail» с моей Proxmark).

В своей ветке я слил чистую версию файла MifareClassic.c из прошивки emsec и внес эти изменения, и он отлично работает с валидатором московского метро для чтения и записи - но у него нарушена функциональность атаки чтения (я не использую его). Поэтому я перенес это исправление здесь - оно прекрасно компилируется, но я не могу проверить его на реальном оборудовании.

Было бы здорово перенести функцию обнаружения в отдельные файлы, чтобы мы могли обновить файл MifareClassic.c (кто-то пробовал его здесь: https://github.com/emsec/ChameleonMini/pull/229/files ).

Подскажите как можно с вами связаться, могу помочь сделать тесты.

monster1025 commented 4 years ago

Подскажите как можно с вами связаться, могу помочь сделать тесты.

telegram @monster1025