Come può essere sicuro il sistema tedesco ChipTAN / CardTAN?

0

Il sistema tedesco ChipTAN ( link ) calcola un TAN che viene inviato al server bancario a prova la transazione. Il numero è in genere di 6-8 cifre. Ma come può essere sicuro questo numero breve?

A mio parere, una TAN sicura deve essere calcolata dal numero del conto bancario del destinatario, dall'importo del bonifico, dalla data / ora e da un segreto che è noto solo alla banca e all'utente.

Ma come può essere calcolato su 8 cifre? A mio parere, questo è molto vulnerabile agli attacchi di collisione. E penso anche che il segreto possa essere facilmente calcolato se un attaccante può catturare più TAN. Se un utente malintenzionato può catturare più TAN e conosce anche l'algoritmo, può trovare una chiave in grado di riprodurre quei TAN. E c'è un'alta probabilità che questo valore possa funzionare anche per i nuovi TAN.

Questo sistema è vulnerabile come descritto? O frainteso qualcosa?

    
posta za3223340 21.02.2018 - 12:55
fonte

1 risposta

3

In my opinion a secure TAN has to be calculated from the receivers bank account number, the transfer amount, the Date/Time and a secret that is only known by the bank and the user.

Dall'articolo di Wikipedia fai riferimento a "Il TAN generato è specifico per la carta bancaria, nonché per i dettagli della transazione corrente ."

But how can this all be calculated into 8 digits? In my opionion this is highly vulnerable to collision attacks.

Gli attacchi di collisione sono importanti solo se puoi eseguire un attacco di forza bruta contro il sistema che richiede il TAN. Non sono sicuro di esattamente questo sistema, ma è comune sia limitare la quantità di query da un sistema sia limitare il numero totale di tentativi. La mia ipotesi è che tu abbia solo uno o pochi tentativi di indovinare il TAN e se questo fallisce devi creare un nuovo TAN in base ai nuovi dettagli della transazione (cioè nuova ora).

If an attacker could catch multiple TANs and also knows the algorithm he can find a Key that can reproduce those TANs.

Questa argomentazione è sbagliata. Ad esempio, prendi un semplice algoritmo come sha256(secret + transaction_details) : anche se il segreto è sempre lo stesso e conosci alcuni dettagli della transazione e alcuni TAN di output, non sarai in grado di calcolare il segreto con costi e tempi ragionevoli, vale a dire che il costo è ragionevole è inferiore al guadagno e il segreto non è stato modificato già dopo il calcolo. Inoltre, è facile aumentare l'algoritmo, basta guardare gli hash delle password.

    
risposta data 21.02.2018 - 13:50
fonte

Leggi altre domande sui tag