Para identificar una tarjeta, debe alimentarla utilizando una onda portadora en su frecuencia y esperar respuestas. Si no hay respuesta, cambie a una frecuencia y protocolo diferentes, y así sucesivamente hasta que reciba la comunicación de la tarjeta (es posible que deba usar varios lectores, ya que las diferentes frecuencias requieren diferentes lectores). El uso de su teléfono es preciso, es decir, si el teléfono puede hablar con la tarjeta, entonces al menos la tarjeta está utilizando una frecuencia y un protocolo compatibles con el lector del teléfono.
Ahora, supongamos que usted identificó positivamente una tarjeta Mifare Classic y necesita un lector para atacarla. Cualquier lector compatible con LibNFC debería funcionar, pero te sugiero que busques lectores basados en NXP PN53x, son bastante baratos (en chino, y no estoy seguro de que el chip NXP sea genuino pero funciona) y funcionan perfectamente con LibNFC y todo aplicaciones que utilizan LibNFC para hablar con los lectores.
Para el software, primero usa mfcuk
para obtener al menos una clave, luego la pasa a mfoc
, que usa un ataque diferente (y más rápido) que requiere el conocimiento de al menos una clave (también puede pruebe las teclas predeterminadas si las personas que administran el sistema de tarjetas que está atacando son realmente idiotas). Este software utiliza LibNFC para hablar con la tarjeta y, por lo tanto, es compatible con cualquier lector compatible con LibNFC.
Sí, una vez que tenga la clave, cualquier dispositivo puede leer y escribir en los sectores protegidos por esa clave. Tenga en cuenta que puede haber 2 claves diferentes por sector, y cada sector tiene algunos bytes de ACL que describen los permisos para cada clave.
Tenga en cuenta que los dispositivos Android con chips NXP pueden descifrar directamente las tarjetas Mifare Classic usando NFC-War .