Domanda:
Come può funzionare l'identificazione in linea della "chiavetta USB"?
user135452
2017-01-06 14:11:08 UTC
view on stackexchange narkive permalink

La mia banca ha recentemente rinnovato il suo sito web ed è cambiato in meglio, per quanto mi riguarda. Soprattutto, la sicurezza sembra essere stata notevolmente migliorata.

Soprattutto, hanno introdotto un metodo di identificazione piuttosto insolito (non l'ho mai visto prima), che chiamano "certificato elettronico". Fondamentalmente, devi andare in banca di persona e il ragazzo ti dà una piccola chiavetta USB economica con una capacità molto bassa. Da questo punto, ti verrà richiesto di collegare la chiavetta al tuo computer ogni volta che vuoi accedere. La chiavetta da sola non è sufficiente, devi anche digitare la tua password - in pratica, autenticazione a 2 fattori con un dispositivo USB essendo il secondo fattore.

Come può funzionare? Naturalmente, credo che la chiavetta USB contenga certificati / chiavi di crittografia di qualche tipo, che vengono utilizzati nel processo di accesso , ma non richiedono all'utente di installare alcun software sulla macchina. Trovo piuttosto inquietante che un sito Web a cui si accede da un browser Web in modalità sandbox, senza plug-in / modulo / app / barra degli strumenti installati, possa vedere la chiavetta USB appena collegata. E non solo vedere questa chiavetta, ma leggila e usa il suo contenuto abbastanza a fondo per farti accedere al livello più sensibile della tua app di banking online.

Non sono un grande fan del collegamento di dispositivi sconosciuti al mio computer per cominciare, e la mia spia di avvertimento ha lampeggiato quando questo mi è stato spiegato, quindi ho optato per un altro metodo di identificazione (puoi scegliere). Sono solo curioso.

PS: la misura ovviamente non si applica alle loro app mobili, poiché gli smartphone non hanno porte USB, ma non è un grosso problema perché non puoi fare molto con la loro app per telefono (è principalmente un'app di consultazione, non qualcosa con cui puoi effettivamente effettuare pagamenti / trasferimenti di grandi dimensioni).

Modifica: non viene utilizzata alcuna finestra di dialogo per l'apertura di file, il che renderebbe la spiegazione abbastanza chiara.

C'è qualche possibilità che sia la chiavetta USB che fornisce i driver necessari per collegarsi al browser?
Non ne ho idea dal momento che in realtà non lo possiedo, ma si diceva che fosse compatibile con "qualsiasi dispositivo dotato di porta USB", Windows, Mac, Linux e altro, e funzionasse immediatamente
Quale driver utilizza la chiavetta USB?Inoltre è solo una chiavetta USB standard?È possibile che stia eseguendo un qualche tipo di script in background simile a un dispositivo USB di tipo rubberducky che utilizza un driver HID standard di palude che Windows avrà già installato o installerà automaticamente.
Mi dispiace di non avere molti dettagli sulla chiavetta perché ho scelto un altro metodo di identificazione in modo che non me ne abbiano dato uno.Sarebbe sicuramente una cosa interessante da studiare, ma non posso farlo adesso.Forse potrei chiederne uno
Hai testato per vedere se puoi effettivamente accedere alla tua banca da un "browser web in modalità sandbox"?È possibile che questa chiave funzioni solo con un browser non sandbox e la banca presume che tutti i clienti funzionino in quel modo.Potrebbe essere qualcosa su cui chiedere alla tua banca.
Ho detto browser sandbox perché il mio è + Ho pensato che la capacità di una pagina Web di navigare liberamente nel file system senza l'intervento dell'utente è troppo comunemente limitata per impostazione predefinita (spero!) Nel 2016 la banca lo presume.Non ho provato però
Penso che ti manchino alcune informazioni qui.È possibile avere una smartcard USB con chip incorporato contenente il proprio certificato e la chiave privata.Il tutto può essere interfacciato tramite PKCS # 11 o Windows Certificate Store, garantendo l'accesso a qualsiasi browser al certificato associato al token.Ciò, tuttavia, di solito richiede l'installazione del dispositivo necessario.Dato che non hai provato (e non puoi fornire dettagli sul bastone stesso), sono disposto a credere che ci sia solo un malinteso riguardo al significato di "fuori dagli schemi"
Ho un dongle USB Yubikey come autenticazione a 2 fattori.Quando lo collego al PC, si installa come una tastiera generica, che tutti i dispositivi che ho incontrato accettano.Quando premo un pulsante sulla parte anteriore di yubikey, digita una password monouso che il sito Web / programma ricevente richiede per autenticarsi con i server di autenticazione Yubicos che sto utilizzando la chiave con cui ho impostato l'account da utilizzare.In quanto tale, posso collegarlo ovunque e inserire l'OTP in qualsiasi cosa senza dover installare nulla.
Mi aspetto anche che la chiave USB sia una smartcard contenente una chiave privata che usi come secondo fattore.Potrebbe essere che il sistema operativo abbia già questi driver o li tira da Windows Update (cosa che accade anche per molte o normali chiavi USB).Ma nella maggior parte dei casi dovresti prima installare il certificato client sulla tua macchina.Quando richiesto dal browser, il sistema operativo proverà quindi a recuperare il certificato dalla chiave USB, se presente
@rory-alsop, in realtà la mia risposta era una risposta, ho visto solo l'altra risposta all'ultimo secondo e l'ho considerata migliore della mia.Tuttavia, sia i dispositivi USB che le partizioni del disco hanno entrambi identificatori univoci che potrebbero essere utilizzati come secondo fattore leggero.L'ID del dispositivo USB è il candidato più probabile.Uso questi ID per elaborare i backup delle unità USB.
Questa è la pesca nell'oscurità.Aggiungi qui l'identificatore USB come l'ID del fornitore e l'ID del prodotto.Usa i meccanismi del tuo sistema operativo per leggere i dispositivi USB collegati.- OK, finalmente ho visto che non hai un bastone del genere.
@JamesTrotter Non sembra molto più sicuro, poiché è fondamentalmente una seconda password che potrebbe essere scoperta e inserita direttamente.
È solo una cosa che finge di essere una tastiera. Quando si preme il pulsante Esporta una chiave pubblica.Qualsiasi sistema operativo passerà felicemente l'input da tastiera ovunque si trovi il cursore.
FYI: la maggior parte degli smartphone ha porte USB (la porta di ricarica), che possono essere utilizzate per collegare dispositivi USB esterni.Hai solo bisogno di un adattatore / cavo appropriato, che può essere ottenuto per un paio / pochi $, o un dispositivo che abbia un connettore micro USB.I dispositivi USB che hanno nativamente tali connettori (cioè che non richiedono cavi adattatori da collegare ai telefoni) stanno diventando sempre più comuni.
Potrebbe essere [questo] (http://www.pcworld.com/article/190015/secure_online_banking.html)?
Mi piace come secondo la tua impressione, "la sicurezza sembra essere stata notevolmente migliorata", con il "[m] ost [importante]" cambiamento essendo un metodo di identificazione che "[non] mai visto [...] prima".La sicurezza è una sensazione, soprattutto;)
@Michael no, non una singola password usata più e più volte ... una nuova password una tantum ogni volta che viene premuto il pulsante, convalidata dal fornitore dell'hardware da qualsiasi sito a cui ti stai collegando per accedere che supporti yubikey (pochi, infatti).È anche un metodo di autenticazione a due fattori, quindi viene utilizzato in aggiunta alla normale password.
È come il dongle che alcune società di software ti hanno fatto acquistare.Non so se lo fanno ancora o no al giorno d'oggi.
Nove risposte:
#1
+64
Philipp
2017-01-06 20:50:12 UTC
view on stackexchange narkive permalink

Ciò che ti ha dato la tua banca è un token di sicurezza USB con un certificato digitale ( come questi). Questi sono dispositivi hardware standardizzati che quasi tutti i sistemi operativi supportano plug&play out of the box. Sono molto comuni per l'implementazione dell'autenticazione a più fattori in sistemi ad alta sicurezza nell'IT aziendale.

Il tuo browser web utilizza HTTPS con certificati basati su client per accedere al sito web della tua banca. Utilizza l'archivio dei certificati del sistema operativo per trovare un certificato installato che corrisponda all'identità richiesta dal server web. Quando è installato un token di sicurezza USB standard, il sistema operativo cercherà anche eventuali certificati sul token.

Il sistema operativo non può eseguire da solo il processo di verifica con il webserver, perché il token non permette di leggere direttamente la chiave privata dei certificati memorizzati su di esso. Il token include l'hardware per eseguire la verifica. Quindi la chiave privata non lascia mai la chiavetta USB. Ciò significa che anche se il tuo PC è compromesso da malware, la chiave privata del certificato non corre il rischio di essere rubata (ma tieni presente che questo metodo non fornisce alcuna protezione dopo che l'autenticazione ha avuto esito positivo. Il malware può ancora rovinare con il tuo browser web).

A proposito: quale banca è quella? Se la mia banca supportasse anche questo metodo di autenticazione, potrei persino iniziare a fare servizi bancari online.

Penso che l'OP volesse saperne di più sul meccanismo per il modo in cui l'unità USB fornisce sicurezza.Hai altre informazioni su come funzionerebbe un token di sicurezza USB come da te descritto per accedere al sito web di una banca?Non sembra dalla descrizione che fosse necessario alcun tipo di installazione, né c'erano richieste da parte dell'utente.
Un token di sicurezza USB non funzionerà su tutti i sistemi operativi.Aladdin ci ha provato per anni e ha fallito.Il driver etoken per Linux non funziona immediatamente e non è installato.opensc inoltre non è installato di default.PLUS: Devi aggiungere il modulo PKCS11 al tuo browser ...
Penso che quello che sta dicendo fondamentalmente è che è preinstallato nel sistema operativo, quindi non c'è niente * più * necessario per l'installazione.
Tieni presente che mentre il dongle è collegato, qualsiasi malware avrà lo stesso accesso ai certificati del browser, quindi non è qualcosa da tenere collegato.
Tieni presente che ciò si applica solo alle applicazioni che utilizzano l'archivio certificati di Windows.Un esempio evidente di questo comportamento sono Chrome e Edge.Firefox OTOH non funzionerà senza un modulo PKCS # 11.
#2
+29
Lie Ryan
2017-01-06 17:08:13 UTC
view on stackexchange narkive permalink

Un modo in cui potrebbe funzionare è che Chrome supporta FIDO U2F senza plug-in. Dato che ora Chrome è ora il browser più popolare e che Chrome funziona su Windows, Mac e Linux, non è del tutto errato affermare che "funziona su qualsiasi dispositivo dotato di porta USB, Windows, Mac, Linux e altro, e lavorare fuori dagli schemi ".

Hanno affermato che funziona con qualsiasi browser o solo con qualsiasi sistema operativo?

Questo non coincide con il credito della banca.
+1 Suona bene.È un meccanismo open source, il che significa che è probabilmente implementato da Microsoft / Linux / Apple.Ovviamente, l'affermazione della banca secondo cui funziona su * qualsiasi * computer con una porta USB non ha senso.Ho una scatola che esegue MenuetOS e posso praticamente garantire che non funzionerà con quel sistema operativo.
@phyrfox Beh, tecnicamente funziona con * quasi * qualsiasi dispositivo dotato di porta USB, devi solo installare prima Linux.
@phyrfox: bene abbastanza.Ho una scatola che ho appena ripulito, senza alcun sistema operativo installato, figuriamoci un browser, e non funziona nemmeno su quello.Immagino che quando una banca dice "qualsiasi computer" o "il tuo computer", leggi in caratteri piccoli, non significa * nessun * computer che potrei possedere.E comunque non garantiscono nulla, non è che io possa chiedere indietro i miei soldi quando non funziona sul mio Atari ST.
#3
+25
J.A.K.
2017-01-06 14:56:32 UTC
view on stackexchange narkive permalink

.... non richiedono all'utente di installare alcun software sulla macchina .... Ho pensato che la capacità di una pagina web di navigare liberamente nel file system senza l'intervento dell'utente è troppo comunemente limitata da default

Sì, questo non dovrebbe assolutamente essere possibile senza i driver della smartcard. Questo è un meccanismo di sicurezza fondamentale di qualsiasi browser. Ciò che dà il clou che il certificato viene letto senza fare clic su un "file aperto" finestra di dialogo, una finestra di dialogo Java o la preinstallazione dei driver? Hai detto di aver scelto un'altra opzione di verifica.

Sembra la chiave USB utilizzata, ad esempio, dalla Bank Of China. Tale tecnologia è descritta qui.

era compatibile con "qualsiasi dispositivo dotato di porta USB"

Avendo un certificato PKCS # 11 o un # 12 da combinare con una passphrase funzionerà su tutti i sistemi operativi. Questo è lo stesso modo in cui i gestori di password come keepass funzionano, combinando qualcosa che conosci con qualcosa che devi ottenere per ottenere 2 fattori di autenticazione.

Risposta interessante, grazie!Non esiste una finestra di dialogo per l'apertura del file, ho controllato perché è stato il primo pensiero che mi è venuto in mente.
Quindi potrebbe ancora essere un plug-in del browser preinstallato o un driver per smartcard.Avevi ragione sulla tua analisi, non dovrebbe esserci alcun modo "fuori dagli schemi" per farlo, ma con popup o qualche piccola interazione dell'utente, questo ha senso.
@Zazor: Penso che tu non possieda un simile bastone.Come puoi sapere che non c'è una finestra di dialogo per aprire il file?
E se fingesse semplicemente di essere una tastiera generica?
@cornelinux Ho collegato un mio stick, quindi ho provato ad accedere al sito web.Ha dichiarato "la tua chiave non è valida" ma ho potuto vedere che l'interfaccia di accesso non chiede all'utente di aprire un file
Allora cosa ti dice "lsusb" o il gestore dei dispositivi in Windows di questo "stick"?
"un bastone tutto mio" - è il bastone che descrivi?pensavo avessi optato per un'opzione di verifica diversa.Se lo è, sì, per favore dacci l'output di lsusb così possiamo avere un'idea di cosa fa lo stick.
@J.A.K.no, avevo la mia chiavetta USB collegata. Non è assolutamente correlato al processo di identificazione;Volevo solo testare cosa succede quando provi ad accedere * senza * lo stick appropriato
L'applicazione di accesso corrisponderà all'USB in base al tipo o al produttore.Non penso che otterrai alcuna informazione dal lancio di un USB casuale nel mix.
#4
+12
user2720406
2017-01-06 21:56:31 UTC
view on stackexchange narkive permalink

Probabilmente è solo un lettore di smartcard USB, con una smartcard di dimensioni SIM inserita.

L'installazione manuale dei driver non è necessaria poiché almeno i driver generici sia per il lettore che per la scheda sono già installati nella maggior parte dei sistemi operativi moderni.

Vedere l'immagine seguente per esempio di tale dispositivo:

Photo of USB device.

C'è un certificato con chiave privata memorizzato su quella smart card SIM all'interno del lettore. Quando lo colleghi al computer, il certificato dalla smartcard viene caricato nell'archivio certificati del sistema operativo. Da lì in poi si comporta fondamentalmente come qualsiasi altro certificato salvato sul computer e può essere utilizzato per accedere a risorse protette, firmare documenti / posta, crittografare cose, ecc.

Questo in particolare è rilasciato da Cert Autorità di cui si fidano la mia banca (web banking) e lo Stato (da me utilizzata principalmente per cose relative all'IRS e per la richiesta di documenti reali).

* "Quando lo colleghi al computer, il certificato della smartcard viene caricato nell'archivio certificati del sistema operativo" * Ciò che descrivi, se vero, non sembra essere una funzionalità, ma un buco di sicurezza nel sistema operativo.Sarei preoccupato se qualcuno potesse collegare una chiavetta USB al mio computer e caricare file arbitrari.
Non è un file arbitrario che viene caricato nel computer, ma un certificato digitale, che di per sé non può fare alcun danno, presumendo che l'implementazione dell'intero stack di software di gestione dei certificati digitali sia stata eseguita correttamente nel sistema operativo (che sicuramente dovrebbe essere) Inoltre, non basta attaccare chiavette USB casuali e lasciare che le chiavette USB casuali siano bloccate nel tuo computer.Se lo fai, il computer può essere considerato comunque compromesso.
@chuex, che è letteralmente il punto di chiavette USB.
Tuttavia, non funzionerebbe con tutti i sistemi operativi, sicuramente non almeno Linux (devo ancora vedere una distribuzione che includa OpenSC fuori dagli schemi).
@StackTracer Non tutti i piccoli dispositivi USB sono un archivio di file ("USB Flash Drive").Cfr.[Risposta di Phillip] (http://security.stackexchange.com/a/147497/88532).
@jpaugh, Sono a conoscenza.Non sono sicuro di quanto sia rilevante per il mio commento.
@StackTracer "Mass storage" è solo una classe di "stick" USB.C'è anche una classe di dispositivi "Content Security" (aka DRM), che sembra descrivere il dispositivo dell'OP, ed è presumibilmente anche rettangolare (cioè "a forma di bastone").[Elenco delle classi di dispositivi USB] (http://www.usb.org/developers/docs/devclass_docs/)
@jpaugh, che non rende la mia dichiarazione meno valida.
#5
+11
André Borie
2017-01-06 15:42:19 UTC
view on stackexchange narkive permalink

È molto probabile che sia un dispositivo che finge di essere una tastiera ed è quindi riconosciuto da qualsiasi sistema operativo senza richiedere driver speciali. Internamente, probabilmente userebbe HOTP (o TOTP, se avesse un chip RTC e una batteria) e "digiti" semplicemente l'OTP ogni volta che viene premuto il pulsante, come un Yubikey o un dispositivo U2F simile.

Il browser non parla né sa che l'USB è presente; istruisce semplicemente l'utente a premere un pulsante fisico sul dispositivo (per dire al dispositivo di "digitare" il codice, poiché il browser stesso non può parlare con esso) e quindi interpreta qualsiasi sequenza di tasti (fino alla lunghezza del codice) riceve come proveniente dal dispositivo.

Stai suggerendo qualcosa di simile a [Yubikey] (https://www.yubico.com/products/yubikey-hardware/yubikey4/) Non penso che corrisponda a ciò che l'OP ha descritto.
@RobC questa è molto probabilmente l'unica soluzione che si adatta alla fattura per la compatibilità con Windows / Mac / Linux senza richiedere driver.Qualsiasi altra cosa richiederebbe un plug-in del browser, un driver o entrambi, il che sicuramente non corrisponde a quanto descritto dall'autore.
Sono d'accordo con Rob, sembra improbabile che una banca utilizzi quella soluzione.Se la chiavetta USB emulasse una tastiera, come intercetterebbe queste risposte nel browser e risponderebbe a un token?Interagirebbe con il computer che apparirebbe molto inquietante per l'utente medio.Non riesco a pensare a un modo pulito per ottenere ciò che l'OP ha descritto utilizzando una tastiera USB emulata.Come accennato da J.A.K., l'OP non utilizzava la chiavetta USB quindi potrebbe esserci qualche installazione, approvazione richiesta dall'utente.
@Silver non è necessaria alcuna interazione tra la chiavetta e il browser.È solo un secondo fattore come TOTP o HOTP.
@AndréBorie, potrebbe funzionare.Puoi testarlo premendo il pulsante in una finestra del blocco note.Ciò richiederebbe all'utente di avere il campo TOTP focalizzato nel browser.Tuttavia, le informazioni sono troppo poche per capire qual è il meccanismo.Forse l'OP può specificare la banca che lo sta utilizzando in modo che tutti possano fare più ricerche.
Ho anche appena scoperto degli U2F.Penso che la risposta di Lie Ryan dovrebbe essere la risposta accettata.
#6
+9
MSalters
2017-01-06 19:08:11 UTC
view on stackexchange narkive permalink

Suona come un'idea teorica che ho avuto circa dieci anni fa.

Quasi tutti i sistemi operativi supportano dispositivi di rete USB. La tua chiavetta USB potrebbe fingere di essere una scheda di rete, collegata a una rete locale, con un server web anche su quella rete. Anche quel server web può avere certificati HTTPS.

Il tuo browser web può effettuare richieste HTTPS a quel server web e scoprire che la chiavetta USB e il sito web della banca si fidano l'uno dell'altro. Questa non è considerata un'evasione sandbox, perché né il browser né il sistema operativo sanno che il server web è effettivamente sulla chiavetta USB.

Avviso IP: per quanto ne so, il mio ex datore di lavoro detiene un brevetto su questa idea nella maggior parte delle giurisdizioni. Contatta un consulente in brevetti prima di copiare questa idea.

Come farebbe il browser a conoscere il nome di dominio o l'IP di quel server web?
@Marcel Il server web sul dispositivo USB potrebbe impostare un IP statico per il proprio.L'applicazione web può quindi connettersi a quell'indirizzo IP.Ad esempio, il server web potrebbe impostare il suo IP su 12.34.56.78 e l'applicazione web potrebbe quindi caricare una risorsa come https://12.34.56.78/.well-known/verify-user/[unique-id] e quindi verificare la risorsaeffettivamente carica (e forse controlla il suo contenuto)
Fondamentalmente, PoisonTap (https://samy.pl/poisontap/) per sempre?
L'aggiunta di una scheda di rete non sarebbe un'operazione privilegiata limitata dal sistema operativo?
Non ho mai sentito parlare di questo metodo su larga scala.
@JoshSanford Sfortunatamente, non è limitato su Windows.Vedi https://www.grc.com/sn/sn-576.htm, trova "adattatori di rete USB"
@Marcel: E il nome del dominio potrebbe essere `usbstick.example.bank` poiché la banca sa quale IP rivendicherà il dispositivo.Ciò richiederebbe un singolo / 30 che può essere condiviso tra tutte le chiavette USB di quella banca.Ancora meglio, puoi ** anche ** avere lo stesso IP su Internet pubblico.Il PC sceglierà il percorso migliore (locale) quando l'USB è collegato e il percorso peggiore (Internet) quando non lo è.Quest'ultimo server web servirà solo un'immagine "Collega la tua chiavetta USB!".
@JoshSanford: Con USB e Wifi di solito non lo è più.Le persone hanno iniziato a lamentarsi del motivo per cui il loro wifi avrebbe richiesto la password di root e si aspettavano che fosse solo plug and play.Notoriamente lo stesso Linux Torvalds si è lamentato del fatto che Linux non dovrebbe richiedere la password di root per fare cose come cambiare stampante o collegarsi a una rete wifi.Alcune distribuzioni lo rendono ancora limitato, non è una caratteristica del kernel ma più di come è stata configurata la distribuzione.
#7
+7
twisteroid ambassador
2017-01-07 15:04:16 UTC
view on stackexchange narkive permalink

Come menzionato in alcune delle altre risposte, questo è molto probabilmente un token di sicurezza USB. Pensalo come un lettore di smart card + smart card incorporata (e talvolta sono effettivamente implementate in questo modo). Pensa alla carta CAC utilizzata dalle organizzazioni di difesa statunitensi. Pensa alla scheda PGP. Alcuni modelli Yubikey supportano anche la funzione di smart card.

Questo tipo di dispositivi è ampiamente utilizzato dalle banche in Cina per proteggere il loro sito web di banking online / software client desktop e la mia risposta si basa principalmente sulla mia esperienza personale utilizzando questi token in Cina.

Come lo usi?

Quando ti registri per l'online banking e opti per un token USB, la banca ti dà il token, crea un pubblico / coppia di chiavi private e il certificato personale e caricarli nel token. Si imposta una password sul token, che è separata dalla password di accesso al banking online.

Si installa il driver fornito dalla banca sul personal computer, si collega il token e si naviga nel sito web della banca. Ogni volta che accedi o esegui un'operazione sensibile (trasferimento di fondi, modifica delle informazioni di contatto, autorizzazione dell'acquisto online, ecc.), Il browser / sistema operativo richiede la password del token, la spia sul token lampeggia per alcuni secondi e la transazione va a buon fine.

Aspetta, devo installare i driver?

Sì. Il sistema operativo Windows ha un'interfaccia smart card standard, ma ogni modello di token USB richiede comunque un driver. Molto raramente, Windows Update installerà i driver corretti per te, ma nella maggior parte dei casi dovrai scaricare un pacchetto dal sito Web della banca.

Spesso l'unico sistema operativo supportato è Windows e l'unico browser supportato è IE. (A loro piacciono alcuni ActiveX.) È certamente possibile in generale che smart card / token USB supportino altri SO / browser, vedere la scheda CAC sopra; devi verificare la compatibilità con la tua banca.

Quindi come ti autentica?

Il browser chiede al sistema operativo di chiedere al token di firmare una piccola porzione di dati (forse i dettagli della transazione). Il token lo firma, utilizzando la tua chiave privata e il tuo certificato. Il browser invia la firma alla banca. La banca verifica la firma ed è soddisfatta che solo il token che ti hanno fornito abbia la chiave privata per produrre questa firma.

La chiave privata non lascia mai il token. Se progettato correttamente, il token non dovrebbe mai divulgare la chiave privata.

#8
+5
Ángel
2017-01-06 23:52:43 UTC
view on stackexchange narkive permalink

Prima di tutto, lasciatemi affermare che sono piuttosto scettico riguardo all'affermazione di un dipendente non tecnico secondo cui funziona su "qualsiasi dispositivo dotato di porta USB", indipendentemente dal browser o dal sistema operativo. Non sarei sorpreso se il sistema operativo supportato risultasse essere solo un paio di versioni di Windows (e, forse, MacOS). Tuttavia, è interessante pensare a come potrebbe funzionare un dispositivo del genere.

La maggior parte delle soluzioni che non richiedono driver, come la proposta di André Borie di una tastiera usb, richiederebbero però qualche interfaccia extra (come un pulsante hardware).

Tuttavia, il post dell'utente2720406 mi ha dato un'idea per un dispositivo che potrebbe effettivamente funzionare [in determinati luoghi] ​​per qualsiasi dispositivo [acceso] dotato di una porta USB:

il dispositivo USB conterrebbe semplicemente una scheda SIM, utilizzandola per accedere a Internet da sola tramite GPRS / 3G. Quindi il dispositivo invierà semplicemente messaggi firmati digitalmente di «Il cliente con il token 12312121 sta usando l'online banking». La sessione online non è consentita a meno che non ne sia stata ricevuta una negli ultimi 5 minuti (più forse altri fattori, come l'IP del cliente che ha una geolocalizzazione simile all'IP del dispositivo). Pertanto, la porta USB verrebbe utilizzata solo per l'alimentazione e il dispositivo sarebbe completamente indipendente da ciò che è installato sul computer.

Si annuncia solo come una tastiera.
Non riesco a pensare a un motivo per cui non funzionerebbe.Fantastico pensiero fuori dagli schemi.
OP potrebbe testarlo collegando il dispositivo a un computer diverso da quello con cui si connette al sito della banca.
#9
+2
jorfus
2017-01-07 04:44:49 UTC
view on stackexchange narkive permalink

Sembra uno Yubikey. Sono ben conosciuti e funzionano alla grande. https://www.yubico.com/products/yubikey-hardware/yubikey4/

  • Riguardo alla mancanza di driver: il Yubikey si identifica come una tastiera in modo che qualsiasi macchina con un driver della tastiera possa leggere l'output di testo da essa.
  • Come funziona: premi il pulsante e Yubikey emette una chiave pubblica (da una chiave privata sicura incorporata nel dispositivo). La banca può quindi autenticarti e confermare che hai la cosa che conosci (la tua password) e la cosa che hai (la tua chiave privata fisicamente protetta).
  • Perché è sicuro: non è possibile per il software sul tuo computer per accedere alla tua chiave privata in modo che il malware non possa copiare la chiave e fingere di essere te. Dovrebbe essere fisicamente rubato da te. (il che è possibile, ma è per questo che lo abbini a qualcosa che conosci)

  • Chi li usa e perché: Google ha contribuito a progettare lo yubikey in modo che potessero risolvere il problema del malware su un computer che acquisisce le credenziali locali mentre l'utente non era presente. Ogni ingegnere di Google ne ha uno. Li uso da anni e ho implementato numerose soluzioni 2fa attorno a loro.

Secondo il sito web yubikey si identifica anche come smartcard e lettore di smartcard.
La YubiKey utilizza driver generici già disponibili in Windows: Per YubiKey Standard / Nano e qualsiasi dispositivo con una modalità OTP (Edge, NEO, ecc.): Tastiere> Dispositivo tastiera HID (uguale al collegamento di una tastiera esterna)
Sui sistemi operativi più recenti probabilmente viene identificato per nome, ma il mio punto è che funziona bene su qualsiasi macchina in cui l'ho collegato.Non ho mai visto un avviso "dispositivo sconosciuto".
Se digita, sembra che sia solo testo che potrebbe quindi essere catturato dall'utente o dal malware e utilizzato separatamente dal dispositivo.
Assolutamente, questo è semplicemente un gettone una tantum.Il malware contenente un key logger sarà sempre in grado di registrare la password e l'OTP (anche se stai digitando l'OTP da un portachiavi).Ciò che impedisce al malware è di esfiltrare quelle credenziali e di utilizzarle nuovamente in seguito.


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...