Discussione Password SLE 4442

da qualche giorno sto lavorando allo stesso progettino... oggi mentre cercavo su google ho trovato questo forum.
vi faccio vedere la mia conf di sniffing

ho sniffato con l'app installata su android e un piccolo analyzer preso su amazon.

Visualizza allegato 40862 Visualizza allegato 40863


Visualizza allegato 40864

poi a manina ho fatto la conversione da bin in hex.
tutto torna come da datasheet, anche il blocco PSC sembra corretto, ma ho fatto due tentativi di scrittura senza risultati.
per non bloccare la carta mi sono fermato e volevo fare un po' di prove con delle cards acquistate su amazon.

volevo farvi una domanda... se compro una card con PSC - FFFFFF è possibile in qualche modo cambiarlo ?

Grazie
Che app hai usato?
Comunque si, si può cambiare!
 
sigrok
non si trova sul play store ma l'ho scaricata come file .apk e installata su android.
salvato il file l'ho poi aperto con lo stesso software per windows
 
Ok, figo ... proverò per curiosità quando e se avrò tempo per sminchiare una tessera ... ah una cosa, vedo che hai 2 GND nell'analizzatore ... il CLK dove lo colleghi?
@_Ptr_ ho provato l'emulazione, ma continua a dare lo stesso errore.
 
da qualche giorno sto lavorando allo stesso progettino... oggi mentre cercavo su google ho trovato questo forum.
vi faccio vedere la mia conf di sniffing

ho sniffato con l'app installata su android e un piccolo analyzer preso su amazon.

poi a manina ho fatto la conversione da bin in hex.
tutto torna come da datasheet, anche il blocco PSC sembra corretto, ma ho fatto due tentativi di scrittura senza risultati.
per non bloccare la carta mi sono fermato e volevo fare un po' di prove con delle cards acquistate su amazon.

volevo farvi una domanda... se compro una card con PSC - FFFFFF è possibile in qualche modo cambiarlo ?

Grazie

Potresti postare la "sniffata" (il file .sr) del sigrok? Mi servirebbe per capire dove sto sbagliando per l'emulazione, sarebbe molto utile.
 
Caspita che invidia che mi fate, vorrei giocare anche io, ma nessuno qui da me (o almeno vicino) usa queste card. Comunque se vi servono prove di laboratorio fatemelo sapere.

P.S. Ciao @_Ptr_ è dai tempi di methack che non ci si sente...
 
Ultima modifica:
Potresti postare la "sniffata" (il file .sr) del sigrok? Mi servirebbe per capire dove sto sbagliando per l'emulazione, sarebbe molto utile.


è possibile inserire un allegato nei messaggi personali ?
dal PSC di potrebbe risalire alla provenienza
 
è una operazione che hai già eseguito o solo per sentito dire ?
in caso avessi già fatto l'operazione di cambio pass mi potresti dare solo qualche indicazione sul datasheet ?

Grazie
guarda, semplicemente tramite software è presente sia la verifica del psc, e una volta fatta, è possibile il change della stessa ... verificato tramite emulazione della stessa e funziona.
Messaggio unito automaticamente:

Poi, ora si sta lavorando con questo metodo alternativo, ma ad ogni modo vorrei eseguire lo sniffing anche tramite registrazione dello stesso e analisi via software, giusto per il piacere di capire e metterci mano!
 
guarda, semplicemente tramite software è presente sia la verifica del psc, e una volta fatta, è possibile il change della stessa ... verificato tramite emulazione della stessa e funziona.
Messaggio unito automaticamente:

Poi, ora si sta lavorando con questo metodo alternativo, ma ad ogni modo vorrei eseguire lo sniffing anche tramite registrazione dello stesso e analisi via software, giusto per il piacere di capire e metterci mano!

se vuoi ti posso girare la mia sniffata...
 
Controllando la "sniffata" dell'utente ciccio_74 e replicando il periodo del clock con uno sketch di Arduino, posso dire che il codice produce un uscita scorretta se la frequenza del clock in ingresso è prossima alla frequenza massima specificata nel datasheet. I lettori che ho utilizzato io producono una frequenza molto più lenta e la lettura avviene correttamente.
Il problema principale è che la routine di interrupt contiene molto codice (pratica sconsigliata da chiunque, ma il codice originale era così e l'ho tenuto sperando che funzionasse).
Ci devo lavorare su.
 
Perfetto! Sarebbe molto utile, anche solo i segnali della carta emulata.
Io l'emulazione l'ho provata su due lettori diversi (N99 e Infinity Usb Unlimited) e funziona, se non funziona su quel lettore evidentemente c'è qualche condizione particolare che mi è sfuggita.

Allego sniffata dei canali RST (D1), CLK (D0) e I/O (D2) fatta con la versione originale dell'emulatore (dato che il riconoscimento non cambia con il mio lettore).
Appena posso ricarico l'ultima tua versione e mando anche il log di quella.
 

Allegati

  • sonovice.zip
    1.7 KB · Visualizzazioni: 46
  • Mi piace
Reazioni: _Ptr_
Allego sniffata dei canali RST (D1), CLK (D0) e I/O (D2) fatta con la versione originale dell'emulatore (dato che il riconoscimento non cambia con il mio lettore).
Appena posso ricarico l'ultima tua versione e mando anche il log di quella.

Una curiosità:
Potresti fare una prova, anche con la versione originale dell'emulatore, con il quarto byte della memoria a zero, così
C:
unsigned char memoryMain[256] = {
        0xA2, 0x13, 0x10, 0x00 , ...
 
Fatto, lo trovi in allegato.

Grazie mille.
La cosa è strana perché, dopo aver inviato dei segnali che non hanno alcun senso (forse sono dei segnali di prova che invia il lettore per cercare di auto-identificare la card?) il lettore invia l'ATR ma, dopo che il micro mette la linea dati in alta impedenza, il lettore non invia una condizione di start ma va avanti con il suo treno di impulsi sul clock.
 
Buongiorno a tutti riapro la discussione perchè credo la cosa possa essere collegata.
Ho trovato questo lettore (CARD - MAESTRO REV.A) dentro ad un cassetto insieme a questa tessera. Spulciando un po' in internet ho scoperto sia in grado di leggere diverse smartcard tra cui le SLE4442. Però non ho trovato molto altro, tensioni di alimentazione, software da usare ect. Considerando che molto probabilmente è più vecchio di me, qualcuno sa darmi più informazioni a riguardo o indirizzarmi a dove trovare qualcosa?
 
Ciao,

Prima di tutto la mia lingua madre non è l'italiano o l'inglese, ma l'olandese e questo è tradotto in italiano con Google Translate, quindi le mie scuse per le cattive traduzioni.
Quindi posterò sia in inglese che in italiano.

Con molto interesse ho letto tutti i commenti qui. Sono impegnato nell'analisi di alcune carte che vengono utilizzate in un sistema. Le carte utilizzate sono le SLE 4442.
Ho scritto in C # un programmino che analizza le carte e ho notato che ogni volta che vengono utilizzate le carte vengono scritti 4 byte. Quei 4 byte non sono sempre
lo stesso, ma rimonta ripetutamente e sono sempre le stesse corde. Ho 4 carte in mio possesso e vengono utilizzate in un periodo di due anni. Uno di loro è giusto
usato una volta.
Mi chiedevo se la prima parte della stringa di 4 byte, quindi i primi 3 byte potrebbero essere il PSC. Ho caricato un documento su <url> così puoi esaminarlo anche tu.

Quando compro una carta ho due opzioni: 20 euro o 50 euro, inoltre devo dare la mia data di nascita.

Ho caricato una lettura della carta (cardreadout.pdf) e una foto del lettore di carte nel punto vendita, non trovo nessuna informazione online a riguardo.
Ho il sospetto che venga utilizzato un cardprogrammer da Holtkamp.de o qualcosa di simile.

Non sono esperto in programmazione né elettronica, ma sono ansioso di imparare e uno studente veloce, per favore mantieni le risposte dirette e semplici. MrGreen

@_Ptr_: ho una domanda per te, a un certo punto dici a @Inbocca questo: compila con la riga commentata "define WRITE_PSC", ora il problema principale è l'emulazione la "define WRITE_PSC" non ritorna da nessuna parte in main.c, memory.h o sle4442.h. C'è qualche parte mancante nel codice?

@Inbocca: sei riuscito ad analizzare?

Grazie
 

Allegati

  • cardreader.jpg
    cardreader.jpg
    47.8 KB · Visualizzazioni: 42
  • cardreadout.pdf
    25.5 KB · Visualizzazioni: 61
Ciao,

Prima di tutto la mia lingua madre non è l'italiano o l'inglese, ma l'olandese e questo è tradotto in italiano con Google Translate, quindi le mie scuse per le cattive traduzioni.
Quindi posterò sia in inglese che in italiano.

Con molto interesse ho letto tutti i commenti qui. Sono impegnato nell'analisi di alcune carte che vengono utilizzate in un sistema. Le carte utilizzate sono le SLE 4442.
Ho scritto in C # un programmino che analizza le carte e ho notato che ogni volta che vengono utilizzate le carte vengono scritti 4 byte. Quei 4 byte non sono sempre
lo stesso, ma rimonta ripetutamente e sono sempre le stesse corde. Ho 4 carte in mio possesso e vengono utilizzate in un periodo di due anni. Uno di loro è giusto
usato una volta.
Mi chiedevo se la prima parte della stringa di 4 byte, quindi i primi 3 byte potrebbero essere il PSC. Ho caricato un documento su <url> così puoi esaminarlo anche tu.

Quando compro una carta ho due opzioni: 20 euro o 50 euro, inoltre devo dare la mia data di nascita.

Ho caricato una lettura della carta (cardreadout.pdf) e una foto del lettore di carte nel punto vendita, non trovo nessuna informazione online a riguardo.
Ho il sospetto che venga utilizzato un cardprogrammer da Holtkamp.de o qualcosa di simile.

Non sono esperto in programmazione né elettronica, ma sono ansioso di imparare e uno studente veloce, per favore mantieni le risposte dirette e semplici. MrGreen

@_Ptr_: ho una domanda per te, a un certo punto dici a @Inbocca questo: compila con la riga commentata "define WRITE_PSC", ora il problema principale è l'emulazione la "define WRITE_PSC" non ritorna da nessuna parte in main.c, memory.h o sle4442.h. C'è qualche parte mancante nel codice?

@Inbocca: sei riuscito ad analizzare?

Grazie

Ciao, il psc è unico e non cambia, quindi non è quello che hai segnato nel tuo pdf.
Inoltre non si trova nella main memory, quindi è inutile cercare li.
Per il credito sei fortunato ad averlo in chiaro, io i crediti sulle sle che ho visto è calcolato in modo strano.
Per il programma, all'inizio del codice si sono le due definizioni che vanno scommentate in base all'utilizzo, quindi tutto funzionante.
 
Lo capisco e lo riconosco, ma ... questi 3 gruppi di byte + l'ordine dei byte "01" sono sempre presenti (non sempre nella stessa sequenza). La scheda che viene utilizzata una sola volta ha solo uno di questi 8 gruppi da 3 byte.
Stavo pensando che potrebbe essere un problema tecnico nel sistema del produttore.
Supponiamo che nel dispositivo sia presente un algoritmo con 8 PSC memorizzati. Ad ogni inserimento della tessera, la tessera legge la sequenza di 3 byte nella memoria pubblica e la invia alla sequenza di verifica. Successivamente, scrive un nuovo PSC (uno di questi 8) nella memoria del PSC e lo scrive nella memoria pubblica. Potrebbe essere un errore, potrebbe essere qualcos'altro.