Buongiorno a tutti, possiedo una smart card di un azienda che ha delle macchinette per caffe che usano queste carte, l'azienda che ne ricarica il credito è fallita , e si sono rivolti a me per "hackerarle". Ho seguito la guida per leggerne il contenuto con Bus Pirate su dangerousprototypes, la guida pero è riferita alle famose SLE4442 con 256byte di memoria, la mia invece è una sle4428 con 1024 infatti quando do il comando ATR per inizializzarle ricevo questo
ISO 7816-3 ATR (RESET on CS)
RESET HIGH, CLOCK TICK, RESET LOW
ISO 7816-3 reply (uses current LSB setting): 0x92 0x23 0x10 0x91
Protocol: 3 wire
Read type: to end
Data units: 1024
Data unit length (bits): 8
Le differenze sono che la mia smart richiede un collegamento 3wire anziche 2wire delle sle4442, e sinceramente non trovo nessuna guida su come impostare con bus pirate questo tipo di connessione. Eppure se lancio il comando {0x30 0 0xff}\ r:255 r:10 per leggere i primi 255 byte questo funziona e ricevo questo:
READ 0xFF BYTES:
0xC4 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xBF 0xB4 0x1D 0x00 0x00 0x01 0xC0 0xFF 0xFF 0xFF 0xFF 0x7F 0x01 0x01 0x42 0x80 0x00 0x40 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0x40 0x01 0x00 0x00 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x40 0x81 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x82 0x01 0x00 0x00 0x02 0x00 0x00 0xC0 0xC1 0x00 0x00 0x00 0x00 0x00 0x00 0xC0 0xFF 0x00 0xC3 0xFF 0xFF 0x3F 0x02 0x02 0x00 0xC0 0xFF 0x7F 0xE9 0xFF 0xFF 0xBF 0x49 0xD8 0xFF 0xFF
qui in mezzo, tolti di mezzo i primi 32 byte, ci sara sicuramente il dato relativo al credito. Devo provare a scalare del credito per trovare le differenze... credo che qui in mezzo ci sia anche il psc code perche altrimenti il lettore come aggiorna il credito??
Il fatto è che non riesco a trovare i comandi necessari a scrivere il contenuto sulla eeprom con buspirate ne a presentare il psc code!Vi linko il datasheet dove c'è una tabella coi comandi ma veramente non ci capisco molto a livello di clock, reset miso e mosi...
Grazie mille
ISO 7816-3 ATR (RESET on CS)
RESET HIGH, CLOCK TICK, RESET LOW
ISO 7816-3 reply (uses current LSB setting): 0x92 0x23 0x10 0x91
Protocol: 3 wire
Read type: to end
Data units: 1024
Data unit length (bits): 8
Le differenze sono che la mia smart richiede un collegamento 3wire anziche 2wire delle sle4442, e sinceramente non trovo nessuna guida su come impostare con bus pirate questo tipo di connessione. Eppure se lancio il comando {0x30 0 0xff}\ r:255 r:10 per leggere i primi 255 byte questo funziona e ricevo questo:
READ 0xFF BYTES:
0xC4 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xBF 0xB4 0x1D 0x00 0x00 0x01 0xC0 0xFF 0xFF 0xFF 0xFF 0x7F 0x01 0x01 0x42 0x80 0x00 0x40 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0x40 0x01 0x00 0x00 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x40 0x81 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x82 0x01 0x00 0x00 0x02 0x00 0x00 0xC0 0xC1 0x00 0x00 0x00 0x00 0x00 0x00 0xC0 0xFF 0x00 0xC3 0xFF 0xFF 0x3F 0x02 0x02 0x00 0xC0 0xFF 0x7F 0xE9 0xFF 0xFF 0xBF 0x49 0xD8 0xFF 0xFF
qui in mezzo, tolti di mezzo i primi 32 byte, ci sara sicuramente il dato relativo al credito. Devo provare a scalare del credito per trovare le differenze... credo che qui in mezzo ci sia anche il psc code perche altrimenti il lettore come aggiorna il credito??
Il fatto è che non riesco a trovare i comandi necessari a scrivere il contenuto sulla eeprom con buspirate ne a presentare il psc code!Vi linko il datasheet dove c'è una tabella coi comandi ma veramente non ci capisco molto a livello di clock, reset miso e mosi...
Grazie mille