Rimedio contro attacchi relay (es. NFC)

6

Prima domanda: esiste un rimedio per il MITM passivo?

Ho trovato esempi di attacchi relay NFC che utilizzano i telefoni per aggirare il requisito di prossimità per i pagamenti NFC.

Sembra qualcosa come questo: [card | phone1] ----------------------> [phone2 | terminal] (l'operazione normale sarebbe [card | terminal] ).

Molti articoli lo elencano come una vulnerabilità, ma non ho visto alcun modo decente per mitigare questo. Una attenuazione che vedo descritta è quella di avere tempi più stretti sulle transazioni, ma che sarebbe facilmente sconfitto con attrezzature specializzate, invece che con telefoni fuori dallo scaffale. Immagino che se lo spinga, potresti in teoria limitare i tempi di risposta così tanto da rendere fisicamente impossibile fare il relaying (ma poi buona fortuna rendendolo economico e affidabile).

TL; DR: C'è qualche possibilità di mitigazione, o i requisiti di prossimità in varie tecnologie sono fondamentalmente spazzatura?

    
posta domen 06.11.2014 - 11:37
fonte

2 risposte

6

Per la tecnologia NFC, la soluzione principale che è stata offerta fino ad oggi è distance bounding , in cui lo scambio a tempo di sfide e risposte convince il più vergognoso che il controllore non possa essere più lontano di una certa distanza. Questa soluzione, tuttavia, presenta alcuni inconvenienti:

Ancora non dirà se l'endpoint specifico con cui sta parlando il verificatore è o meno quello desiderato. Dirà al verificatore solo se il vero esploratore è vicino.
    Implica una dura elaborazione in tempo reale per misurare il tempo di trasferimento e dedurre la distanza.

    
risposta data 12.11.2014 - 10:32
fonte
1

Questo vale anche per le normali carte chip. Non è limitato a NFC. Se riesci a progettare socialmente un utente nell'usare la carta su un terminale falso, può succedere anche l'attacco relay.

Una soluzione per il limite di distanza consiste nell'applicare la logica sul lato server per verificare se uno specifico tentativo di autenticazione può essere logicamente corretto.

Diciamo che hai 2 edifici. Uno a New York e uno a Washington DC. La distanza minima di viaggio in auto o con i mezzi pubblici è di 3 ore e 35 minuti. Tutti i dipendenti hanno accesso a entrambi gli edifici.

Ora puoi applicare una logica come se ci fosse un recente tentativo di autenticazione con una carta specifica all'edificio A, qualsiasi tentativo di autenticazione con la stessa carta all'edificio B entro 3 ore e 15 minuti farà sì che la carta sia bloccata in modo permanente e essere sbloccato dall'amministratore dopo un'indagine. Questo dà anche un margine di libertà di 20 minuti per compensare Clock desync e qualcuno potrebbe arrivare più veloce con il treno o l'auto.

Lo stesso può essere applicato all'interno di un edificio (calcolo della velocità di camminata) o in una rete di carte di pagamento, per garantire che la transazione abbia un aspetto "giusto" (ad esempio, il titolare della carta non si teletrasporta all'altro lato della Terra in meno di 1 ora).

Questo è ciò che fa oggi la rete delle carte di pagamento, utilizza il rilevamento del comportamento per rilevare transazioni fraudolente. Ecco perché la tua banca può chiamarti per approvare una transazione prima che si chiarisca al commerciante.

    
risposta data 19.11.2014 - 08:11
fonte

Leggi altre domande sui tag