it-swarm-eu.dev

Perché i bancomat accettano qualsiasi PIN?

L'altro giorno ho provato a prelevare un po 'di contanti da un bancomat in fretta e ho dato un pugno in uno spillo sbagliato. Mi sono reso conto che solo quando ho premuto il pulsante "ok", ma con mia sorpresa l'ATM non si è lamentato. Mostrava il solito menu, chiedendomi di selezionare un'operazione. È solo quando ho selezionato il ritiro che mi è stato chiesto che il pin non è corretto e ho chiesto di rientrare. Che ho fatto e ricevuto i soldi.

Perché gli sportelli automatici consentono di immettere qualsiasi immondizia per un PIN, selezionare un'operazione e solo allora lamentarsi?

EDIT : per aggiungere ulteriori informazioni su alcuni punti discussi nelle risposte e nei commenti: il paese in cui ciò è accaduto è la Nuova Zelanda. La carta è una chip card che ha anche una banda magnetica e non ho idea se l'ATM sia in grado di leggere il chip o meno.

98
Andrew Savinykh

Questa risposta si applica quando l'ATM utilizza la banda magnetica della carta, non quando si utilizza il chip della carta.

La tastiera di un bancomat è un dispositivo completamente separato con speciali funzioni di sicurezza hardware (come i chip autodistruggenti se qualcuno tenta di aprirlo, ecc.) Perché è il collo di bottiglia dell'intera sicurezza ATM.

Quando si inserisce un pin, l'ATM stesso non riceve il PIN in testo normale, ma piuttosto ottiene il PIN crittografato. Quando invia una transazione al server principale, combina crittograficamente il PIN crittografato con la quantità di denaro specificata nella transazione per impedire agli aggressori di modificare tale importo.

Se il bancomat avrebbe verificato il PIN prima della transazione (inviandolo al server), la specifica della quantità di denaro non potrebbe essere collegata in modo sicuro alla conoscenza del PIN.

Pertanto, il bancomat non può verificare se il PIN è valido o meno fino a quando non tenta di emettere una transazione ai server della banca principale (che sanno come decodificare o altrimenti verificare il PIN crittografato).

113
user19426

Confermare il PIN quando viene utilizzata la banda magnetica della carta richiede di contattare il server della banca. Dato che ciò richiede tempo (e ha impiegato ancora più tempo nei giorni di dialup), l'ATM combina "verifica il PIN "e" ritirare denaro "in un unico contatto.

Il comportamento potrebbe essere diverso se la carta ha un chip e l'ATM lo supporta.

32
Mark

La maggior parte dei bancomat ha a che fare con 2 tipi di carte: vecchie, magnetiche e nuove chip card. Le carte magnetiche non possono verificare il PIN localmente. Le carte chip hanno teoricamente questa capacità - ma ciò non significa che questa funzionalità non sia limitata.

Il comportamento che hai descritto corrisponde perfettamente al flusso di carte magnetiche. Ma - la chip card deve essere verificata utilizzando un altro percorso? Ci sono 2 motivi per cui non dovrebbe:

1) L'implementazione del nuovo secondo percorso costa denaro. Il produttore di ATM sicuramente vuole mantenere bassi i costi e riutilizzare il più possibile il codice.

2) Presentare un'esperienza utente coerente. È facile immaginare qualcuno con 2 carte, una magnetica e una chip. O a un cliente che riceve una nuova chip card per sostituire quella vecchia solo magnetica. Non è necessario confondere gli utenti fornendo loro 2 percorsi diversi. I bancomat sono abbastanza spaventosi.

/ modifica: Oh, ho dimenticato una cosa molto importante:

Locale PIN sulla carta può non essere aggiornato.

In molte banche è possibile modificare il PIN della carta, ma non è possibile che il chip della carta lo sappia. Quindi, se ATM dovesse controllare PIN localmente, rifiuterebbe il nuovo PIN corretto, ma consentirebbe un vecchio PIN errato. E ofc PIN avrebbe successo e la transazione sarebbe fallire.

21
Agent_L

Questa è una questione di politica nel software ATM. Molti bancomat do infatti verificano il PIN con la banca prima di permetterti di continuare.

Ma l'ATM stesso non sa se il tuo PIN è corretto. Deve chiedere alla banca e questo richiede tempo. Quanto tempo spesso determinerà se l'ATM salterà o meno questo passaggio.

Ogni transazione tra il bancomat e la banca è separata, quindi ognuna deve essere autenticata separatamente e quindi il PIN è validato con ogni transazione. Questo significa da un punto di vista pratico, l'ATM non ha tecnicamente bisogno di convalidare il PIN in anticipo. Sa che un errato PIN causerà il fallimento di qualsiasi altra transazione.

Quindi c'è un equilibrio che deve essere raggiunto, e ogni bancomat potrebbe farlo in modo diverso. Convalidare il PIN in anticipo potrebbe essere più semplice per l'utente, ma potrebbe richiedere più tempo se l'ATM non ha una linea dedicata aperta alla banca. Immagina quindi di digitare il tuo pin e di attendere 20 secondi affinché lo sportello automatico ti informi se lo hai fatto correttamente. Per ridurre il tempo totale richiesto, possono scegliere di saltare quel passaggio.

14
tylerl

Non c'è motivo di verificare il pin in questa fase, se non altro sarebbe male.

  1. Spreco di larghezza di banda/tempo per controllare poiché molto probabilmente deve essere inviato nuovamente con la chiamata di transazione comunque.

  2. Se qualcuno sta tentando di indovinare il pin, ci vuole molto più tempo per scoprire se è il pin corretto. Vi è una maggiore possibilità di mettere il viso su una telecamera più a lungo si trovano davanti alla macchina.

  3. Non c'è modo di verificare il pin sulla carta, deve coinvolgere la banca per verificare altrimenti potresti fare una verifica offline.
  4. Questo vale sia per le strip che per le chip card, il pin non verrebbe mai immagazzinato in nessuno di questi posti in nessuna forma.
2
Jegsar

risposta di user19426 è interessante-- Non sapevo che le tastiere ATM fossero implementate in questo modo-- ma non sembra che possa essere l'intera spiegazione perché non c'è ancora alcun motivo per cui non sia possibile verificare PIN inizialmente (senza esporre il suo valore di testo in chiaro), quindi in seguito utilizzare l'hash PIN per firmare la transazione effettiva. Nel caso di chip card, questo non non è necessaria alcuna comunicazione aggiuntiva con la banca.

Chiunque può verificare privatamente il PIN per una chip card in qualsiasi momento, ad esempio utilizzando le tastiere di autenticazione portatili che le banche europee inviano regolarmente ai propri clienti (immagino che le carte possano disabilitarsi dopo un certo numero di tentativi errati) Un bancomat che rifiuta un errore PIN in anticipo non fornisce alcun vettore di attacco che non è disponibile da un bancomat che richiede anche di tentare una transazione. è un problema dato che un ritardo di 30 secondi significa solo che ci vogliono 90 secondi in più per colpire il punto in cui la macchina confisca la carta.

Per quanto ne so, c'è solo un'implicazione sulla sicurezza nel non verificare il PIN in anticipo. Se inserisco la tua carta rubata in un bancomat e inserisco quello che penso sia il tuo PIN, e dice me il PIN è sbagliato, poi me ne vado e la CCTV mostra che sono colpevole di provare ad accedere al tuo account. Se inserisco il PIN e chiedo £ 200, la CCTV mostra che sono colpevole di aver tentato di accedere al tuo account e di provare a rubare £ 200 da esso.

1
bobtato

Ciò si verifica per due motivi:

  1. È più sicuro e le banche vogliono risparmiare sulla larghezza di banda .

    La banca di solito memorizza il tuo PIN in forma hash nel suo database. Per poter verificare il PIN che hai inserito nell'ATM, l'ATM deve invia al server della banca l'hash del PIN che hai inserito. Questi due hash vengono quindi confrontati per verificare se il PIN che hai inserito è corretto e solo allora ti è permesso eseguire transazioni. Naturalmente, si tratta di un approccio rudimentale alla sicurezza. Ci sono cose come replay e attacchi man-in-middle da considerare (per maggiori informazioni, leggi autenticazione Challenge-response ).

    Invece di farlo, la banca può inviare il tuo PIN insieme alla transazione stessa, verificando il tuo PIN e la transazione allo stesso tempo. Ciò consente di risparmiare larghezza di banda e è potenzialmente più sicuro poiché la finestra di attacco è ridotta. Ad esempio, se la banca autentica la sessione dal momento in cui hai inserito il PIN, offre a qualsiasi potenziale utente malintenzionato il tempo di intercettare la connessione e di effettuare le proprie transazioni.

    D'altra parte, una corretta connessione sicura è difficile da implementare e i bug fanno si verificano . Una verifica una tantum quando si effettua una transazione consente alla banca di identificarti in modo sicuro e di risparmiare larghezza di banda. In definitiva, dipende ancora dal bancomat in questione, poiché la banca può sempre verificare il tuo PIN all'inizio di ogni sessione e per ogni transazione successiva.

  2. Le carte ATM non memorizzano il tuo PIN nella banda magnetica. (Le carte chip lo fanno.)

    Contrariamente ad alcune risposte, le carte bancomat non possono e non memorizzano il PIN. Lo scopo della carta bancomat è ottenere l'autenticazione a due fattori: qualcosa che hai (la carta) e qualcosa che conosci (il PIN). Ci sono stati casi in cui la carta bancomat è stata violata dagli aggressori.

    Il bancomat deve connettersi ai server della banca per verificare chi sei chi dici di essere. Le carte bancomat possono e sono state duplicate in precedenza (scrematura). Se il PIN potesse essere verificato off-line usando solo i dati sulla banda magnetica sulla carta ATM, gli aggressori potrebbero attaccare a forza bruta tutti i 9999 possibili PIN abbastanza rapidamente con un attacco off-line. Quindi il sistema è progettato per richiedere di contattare la banca per ogni ipotesi, rendendo più difficile per gli aggressori rubare la tua carta bancomat e prelevare tutti i tuoi soldi.

0
Roy

Uno scenario popolare in cui ciò accade di solito è quando la carta che stai utilizzando proviene da una banca diversa e il bancomat è di un'altra banca.

Perché?

Diverse banche si collegano tra loro attraverso uno switch nazionale a livello nazionale che collega banche diverse tra loro. Proprio come VISA è uno switch internazionale, ci sono switch nazionali per transazioni all'interno del paese.

Durante l'esecuzione di una transazione di questo tipo, oltre alla larghezza di banda c'è anche un importo particolare che viene detratto a causa dell'utilizzo di tale switch nazionale, tale importo è basato sulla transazione.

Quindi, invece di inviare due transazioni a quel passaggio e infine a quella banca. Viene utilizzata solo una transazione in cui viene inserito PIN e i dettagli delle transazioni vengono inviati. Se il PIN è corretto, la transazione viene eseguita se non viene rifiutata.

Lo scenario di cui sopra può essere utilizzato anche per le stesse transazioni bancarie, ma non ci saranno vantaggi finanziari in quanto non consente di risparmiare denaro, ma solo una piccola larghezza di banda.

0
SajjadHashmi