Основная информация
Это приложение Android для чтения, записи, анализа и т.Д. RFID-тегов и NFC меток.
Введение
Интерфейс программного обеспечения:
Этот инструмент предоставляет несколько функций для взаимодействия (и только) с классическими RFID-метками. Он предназначен для пользователей, которые хотя бы немного знакомы с технологией NFC. Вам также необходимо понимание шестнадцатеричной системы счисления, потому что все данные вводятся и выводятся в шестнадцатеричном формате.
Некоторые важные вещи:
Функции, которые предоставляет этот инструмент, очень просты.
Не существует таких причудливых вещей, как сохранение URL-адреса в RFID-теге с красивым графическим интерфейсом пользователя.
Если вы хотите сохранить данные в теге, вы должны ввести необработанные шестнадцатеричные данные.
Это приложение не может взломать/взломать любые ключи MIFARE Classic.
Если вы хотите прочитать/записать RFID-метку, вам сначала понадобятся ключи для этой конкретной метки. Для получения дополнительной информации, пожалуйста, прочитайте/см.Главу Начало работы.
В этом приложении не будет возможности атаки "перебора". Это слишком медленно из-за протокола.
Первый блок первого сектора оригинального тега MIFARE Classic доступен только для чтения, т.е. не доступен для записи. Но есть специальные теги MIFARE Classic, которые поддерживают запись в блок производителя с помощью простой команды записи. Это приложение может писать в такие теги и, следовательно, может создавать полностью правильные клоны. Однако некоторые специальные теги требуют специальной последовательности команд, чтобы перевести их в состояние, в котором возможна запись в блок производителя. Эти теги не будут работать. Помните об этом, когда вы покупаете специальные теги! Кроме того, убедитесь, что значение BCC является правильным перед записью. BCC - это первый байт после UID. Он рассчитывается с помощью XOR всех байтов UID. Это приложение не будет работать на некоторых устройствах, поскольку их оборудование (NFC-контроллер) не поддерживает MIFARE Classic (подробнее). Вы можете найти список несовместимых устройств здесь.
*Для получения дополнительной информации о MIFARE Classic просмотрите Википедию, выполните поиск в Google или прочитайте «Лист данных» (PDF) MIFARE Classic (1k) из NXP.
Начало
Прежде всего, вам нужны ключи для тега, который вы хотите прочитать. Из-за некоторых недостатков в MIFARE Classic вы можете получить все ключи (A и B) тега с помощью таких инструментов, как Proxmark3 или обычные RFID-ридеры, и некоторого специального программного обеспечения (mfcuk, mfoc).
Приложение поставляется со стандартными файлами ключей, называемыми std.keys и extended-std.keys, которые содержат хорошо известные ключи и некоторые стандартные ключи из короткого поиска Google. Вы можете попытаться прочитать тег с этим файлом ключа, используя «Read Tag» из главного меню.
Когда вы знаете некоторые ключи, вы можете поместить их в простой текстовый файл (по одному ключу на строку). Вы можете сделать это на своем ПК и перенести файл в каталог MifareClassicTool / key-files / (на внешнее хранилище) или создать новый файл ключа через «Редактировать или добавить файл ключа» из главного меню. Если вы закончили настройку ключевого файла, вы можете прочитать тег, используя «Read Tag» в главном меню.
Преимущества концепции ключевых файлов:
Вам не нужно беспокоиться о том, какой ключ для какого сектора.
Приложение пытается пройти аутентификацию со всеми ключами от ключа
Вам не нужно знать все ключи.
Если ни ключ A, ни ключ B для определенного сектора не найдены в файле ключей (словаре), приложение пропустит чтение указанного сектора.
Этот процесс отображения на основе словарной атаки (ключи <-> секторы) позволяет вам читать как можно больше с помощью известных вам ключей!
Характеристики
Читать MIFARE Classic теги
Сохраняйте, редактируйте и публикуйте прочитанные вами данные тегов.
Пишите в теги MIFARE Classic (блочно)
Клон MIFARE Классические метки
(Записать дамп тега в другой тег; напишите «dump-wise»)
Управление ключами на основе словаря-атаки
(Запишите известные вам ключи в файл (словарь).
MCT попытается аутентифицироваться с этими
ключи от всех секторов и читать как можно больше.
Смотрите главу Начало работы. Отформатируйте тег обратно к заводскому состоянию / состоянию доставки
Написать производителю блок специальных меток MIFARE Classic
Создавать, редактировать, сохранять и делиться ключевыми файлами (словарями)
Декодировать и кодировать MIFARE Классические блоки значений
Декодировать и кодировать MIFARE Классические условия доступа
Показать общую информацию тега
Отображать данные тега в виде выделенного шестнадцатеричного
Отобразить данные тега как 7-битный US-ASCII
Отображение условий доступа MIFARE Classic в виде таблицы
Показывать классические блоки значений MIFARE как целые числа
In-App (офлайн) помощь и информация
Это бесплатное программное обеспечение (с открытым исходным кодом). ;)
В новой версии программы используется технология чтения NDEF.
package com.android.nfcexclusive.nfcexclusive;
import android.nfc.FormatException;
import android.nfc.NdefMessage;
import android.nfc.NdefRecord;
import android.nfc.Tag;
import android.nfc.tech.Ndef;
import android.nfc.tech.NfcA;
import android.nfc.tech.NfcB;
import android.util.Log;
import java.io.IOException;
import java.nio.charset.Charset;
/**
* Created by c0de on 21.05.2017.
*/
public class Ndefclass {
public static void write(Tag tag, String text) {
try {
NdefRecord[] records = {
new NdefRecord(NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_TEXT, new byte[0], text.getBytes("US-ASCII"))
};
NdefMessage message = new NdefMessage(records);
Ndef ndef = Ndef.get(tag);
ndef.connect();
ndef.writeNdefMessage(message);
ndef.close();
} catch(IOException | FormatException e) {
e.printStackTrace();
}
}
public static String read(Tag tag) {
try {
Ndef ndef = Ndef.get(tag);
ndef.connect();
NdefRecord[] records = ndef.getNdefMessage().getRecords();
String text = "";
for(NdefRecord record : records) {
text += new String(record.getPayload());
}
ndef.close();
return text;
} catch(IOException |FormatException e) {
e.printStackTrace();
}
return null;
}
}
Теперь можно считывать больше RFID меток.
Исходный код
Данное программное обеспечение распространяется под лицензией GNU General Public License v3.0 (GPLv3). ПО имеет исходный код, который можно найти и изучить здесь.