Autenticazione a due fattori conforme PSD2

7

Secondo PSD2 gli elementi dell'autenticazione a più fattori devono essere indipendenti, quindi il compromesso di un elemento non compromette l'altro.

Ecco l'articolo dalla direttiva:

*Article 9

Independence of the elements,

  1. Payment service providers shall ensure that the use of the elements of strong customer authentication referred to in Articles 6, 7 and 8 shall be subject to measures in terms of technology, algorithms and parameters, which ensure that the breach of one of the elements does not compromise the reliability of the other elements.
  2. Where any of the elements of strong customer authentication or the authentication code is used through a multi-purpose device including mobile phones and tablets, payment service providers shall adopt security measures to mitigate the risk resulting from the multi-purpose device being compromised.
  3. For the purposes of paragraph 2, the mitigating measures shall include each of the following: (a) the use of separated secure execution environments through the software installed inside the multi-purpose device; (b) mechanisms to ensure that the software or device has not been altered by the payer or by a third party or mechanisms to mitigate the consequences of such alteration where this has taken place.*

La domanda è cosa potrebbe essere considerato indipendente in questo caso?

Immaginiamo il seguente scenario:

Il cliente utilizza il browser del suo telefono per accedere al sito web di banking online. La password e un altro elemento (basato sul possesso) sono richiesti per l'autenticazione.

Nel caso in cui il secondo fattore sia una password monouso inviata via SMS al telefono, un singolo malware è sufficiente per compromettere il telefono, installare un keylogger per rubare la password e rubare l'SMS non appena arriva.

Basato su questo OTP via SMS è un no.

Ora supponiamo che lo SMS OTP sia sostituito da una notifica push (il cliente dovrebbe installare in precedenza l'applicazione mobile della Banca). Ci sono poche possibilità per l'esatta implementazione:

  • un OTP viene inviato tramite push

  • viene visualizzata una finestra di approvazione e l'utente deve toccare il pulsante Approve (proprio come fa Google)

  • viene visualizzato un CAPTCHA e l'utente deve risolverlo

  • Generazione OTP con token software

  • ecc.

In caso di una delle soluzioni sopra menzionate, se l'utente malintenzionato può sfruttare una vulnerabilità nel sistema operativo del telefono e ottenere il permesso di root, è in grado di rubare la password del cliente e convalidare la transazione con il secondo fattore di autenticazione almeno teoricamente ( installando un qualche tipo di strumento di accesso remoto).

I token rigidi sono un no go anche a causa dei motivi dell'esperienza utente.

La sandbox separata utilizzata da Android e iOS potrebbe essere considerata un ambiente di esecuzione sicuro che rispetterebbe la seguente parte della direttiva?

The use of separated secure execution environments through the software installed inside the multi-purpose device

Quale potrebbe essere una soluzione efficace che rispetti il regolamento e sia anche conveniente per il cliente?

    
posta Richard Leonard Kirner 18.01.2018 - 14:47
fonte

1 risposta

0

tl; dr; Nessuno può dire con certezza e questo è altamente discutibile

Poca cronologia: si è verificato un passaggio da "ambiente di esecuzione attendibile" a "ambiente di esecuzione protetto". È documentato qui: link

La maggior parte del settore (che io sappia) concorda sul fatto che ciò implica che il TEE basato sull'hardware non è un requisito. Ci sono alcune ragioni fornite in quel documento:

Article 6(2) (now Article 9(2)) does not refer to segregation, only Article 2.2.b does. See comments [10] and [11] on that. The EBA has therefore not made any changes to the Article. However, in relation to comment i), the EBA agrees that PSPs can mitigate only the risks within their realm of competence. The EBA has made changes to Article 6(3) (now Article 9(3)) to specify that the focus is on the software used by the PSP rather than the hardware itself.

L'EBA ha rifiutato più richieste per essere più specifici su come ottenere la separazione degli ambienti di esecuzione. Da ciò possiamo capire che dovresti preoccuparti solo della corretta implementazione del software, ma cosa significa? Consente di scavare più a fondo.

C'è questo vecchio documento con un linguaggio meno vago: link

  1. Furthermore, the authentication procedure should ensure the confidentiality, authenticity and integrity of the information displayed to the payer through all phases of the authentication procedure including generation, transmission and use of the authentication code. To that end, the channel, device or mobile application where the information about the amount and the payee of the transaction is displayed should be independent or segregated from the channel, device or mobile application used for initiating the payment. This can be done, for example, via an independent channel to prevent any manipulation of the transaction details through the initiation process of the payment transaction.

Considerando tutto ciò, sono dell'opinione che l'uso della piattaforma sandbox sia una soluzione completamente conforme. Tuttavia, potrebbe non essere il più sicuro. Ha senso quando parli di piattaforme mobili, l'ambiente web è ancora più confuso, perché non ha sandbox.

    
risposta data 29.08.2018 - 13:15
fonte

Leggi altre domande sui tag