PINsentry PRNG e carte bancarie

11

La mia banca mi fornisce un dispositivo simile a questo:

Il dispositivo è essenzialmente un PRNG, presumibilmente basato sulla data / ora del suo orologio interno, sincronizzato con i server della banca.

Per generare un pin, l'utente deve inserire la sua carta di credito nello slot e inserire il suo numero di pin della carta di credito a 4 cifre utilizzando la tastiera sul dispositivo. Questo è lo stesso pin utilizzato per prelevare contanti presso un bancomat.

La mia domanda è questa: senza una connessione di rete, e senza che il dispositivo sia stato configurato per funzionare con una particolare carta bancaria (posso usare qualsiasi altro dispositivo con la mia carta), come verifica il numero di pin del dispositivo?

Il numero pin deve essere memorizzato in qualche modo sul chip della carta bancaria stessa. Anche con una funzione di hash iterativa per ritardare la forza bruta di 4 secondi per ogni tentativo, il numero di pin è ancora lungo solo 4 cifre. 4 secondi * 10 ^ 4 possibili pin = 11 ore per forzare l'intero spazio dei tasti.

La carta stessa ha una funzione di blocco che rifiuterà ulteriori tentativi di accesso dopo 3 tentativi non corretti (deve essere una bandiera booleana scritta nella memoria del chip della carta di credito). L'intera sicurezza di questo sistema di autenticazione è basata sul presupposto che qualcuno non può semplicemente resettare questo flag e continuare la sua forza bruta del piccolo spazio della chiave?

    
posta 01.04.2013 - 21:36
fonte

2 risposte

12

Prima di tutto, il dispositivo non è un PRNG. Tutte le funzioni crittografiche rimangono saldamente all'interno del chip sulla scheda. Il dispositivo è poco più di un'interfaccia utente. Poiché è a prova di aria compressa dal tuo browser, non può essere "hackerato" da una pagina Web o da un computer infettato da malware. E poiché è il tuo dalla tua banca, puoi fidarti che non si tratta di una tastiera con skimmer PIN. Questi sono attributi di sicurezza molto buoni che rendono questi dispositivi potenti strumenti contro le frodi.

Inserisci il PIN nel dispositivo, che quindi invia il PIN alla tua carta, e la carta lo verifica in base al Specifiche ISO / IEC 7816-4 . La scheda restituisce al lettore solo i risultati del tentativo di verifica PIN, che viene quindi visualizzato come codice di autorizzazione a 8 cifre o come errore PIN non valido. Tre tentativi di verifica PIN falliti consecutivi generano una carta che deve essere ripristinata su un bancomat autorizzato dalla tua banca.

Come hai notato, questa è una tragica debolezza del protocollo, ma per un motivo completamente diverso rispetto alla crittografia. Un rapinatore può colpirti in un luogo privato e richiedere la tua carta e il tuo PIN, e lui può usare il tuo PINSentry sul posto per dimostrare che non stai mentendo. Era un rapinatore che avrebbe dovuto trascinarti in banca per verificare il tuo PIN e rischiare le telecamere di sicurezza, ma ora possono farlo nella comodità di un vicolo buio. Almeno tre omicidi sono stati commessi da ladri che raccolgono PIN.

Per essere più sicuro per l'utente, il dispositivo dovrebbe continuare allegramente sulla sua strada, indipendentemente dalla validità del PIN, perché la banca dovrebbe convalidare il PIN in un secondo momento. Il problema è che tutto è stato progettato e deciso quando molti piccoli commercianti stavano ancora autorizzando le carte offline. Con quasi il 100% di ubiquità di Internet nelle aree popolate del nostro pianeta, vedo poche ragioni per continuare ad accettare pagamenti offline.

Per quanto riguarda la sicurezza del PIN sul chip, è molto più strong del tipico rapinatore. Il chip è progettato in modo che sia molto difficile accedere alla memoria su di esso. Non è come una chiavetta o un chip del telefono pubblico della vecchia scuola, dove è semplicemente un dispositivo di archiviazione. È un processore crittografico, con algoritmi, chiavi e certificati caricati nel silicio solo dopo aver verificato le firme sui dati. Non è possibile emettere un comando come "set counter memory location 1234 = 0". Invece, il comando per reimpostare il PIN fa parte di un protocollo HMAC , con autenticazione crittografica che deve essere generata dal banca, e il MAC è verificato sul chip prima che resetterà il contatore PIN.

I chip sono ragionevolmente ben protetti contro le manomissioni, considerando che devono costare solo pochi centesimi ciascuno. I microscopi a fasci ionici focalizzati sono stati utilizzati per leggere i bit dalle schede in laboratorio. Gli attacchi temporali sono stati ridotti migliorando i design degli algoritmi di crittografia. Per quanto ne so, gli attacchi di analisi di potenza differenziale possono ancora funzionare, ma alcuni progetti di chip possono persino resistere a quelli.

    
risposta data 02.04.2013 - 18:34
fonte
3

Questo è tutto. Le carte di credito EMV / Chip e Pin hanno una smart card crittografica. Ha il tuo spillo, una chiave crittografica privata e un contatore per tentativi di pin falliti.

Se potessi resettare il contatore, potresti anche solo leggere il pin (o qualche hash di esso) e la chiave segreta. Quindi sì, la sicurezza dipende dalla sicurezza della smartcard nel chip che è sicuro.

Nota, si spera che il PINSentry non sia esso stesso un PRNG, probabilmente usa la chiave segreta della tua carta di credito e la data / ora corrente per generare un codice unico e il codice PIN viene utilizzato per sbloccare la carta. Altrimenti le persone con lo stesso numero PIN otterrebbero lo stesso codice o il lettore potrebbe essere indotto a credere che un PIN valido sia stato inserito quando non lo era nessuno.

    
risposta data 02.04.2013 - 07:28
fonte

Leggi altre domande sui tag