Gli attacchi brute force (o attacchi di “forza bruta”) vengono utilizzati in ambito informatico per cercare di risalire a una password oppure a una chiave crittografica tentando ogni possibile combinazione di caratteri fino a trovare quella corretta. Questo tipo di attacco si basa sull’idea che, se si prova abbastanza a lungo, è possibile indovinare la password giusta.
L’attacco brute force funziona attraverso un processo di iterazione sistematica, in cui vengono provate tutte le possibili combinazioni di caratteri. Inizialmente, si parte con una combinazione di lunghezza minima (ad esempio una sola lettera o un solo numero) e si procede iterando su tutte le possibili combinazioni con quella lunghezza. Se questa fase non avviene con successo, si passa a combinazioni più complesse e si ripete il processo iterativo. Questo processo continua finché non viene trovata la combinazione corretta o finché tutte le possibili combinazioni vengono esaurite.
Gli attacchi brute force possono essere utilizzati per violare la sicurezza di password o chiavi crittografiche deboli: per questo è importante scegliere e creare una password sicura che possa essere sufficientemente resistente a questi tentativi di aggressione.
Brute force possibili anche contro il lettore di impronte digitali su Android e iOS
Un gruppo di ricercatori di Tencent Labs e della Zhejiang University hanno presentato un’inedita tipologia di attacco chiamata BrutePrint che può essere utilizzata per forzare il riconoscimento dell’impronta digitale sui moderni smartphone Android e iOS assumendo il controllo dell’altrui dispositivo mobile.
I ricercatori sono riusciti a superare le difese implementate sugli smartphone, come i limiti sul numero di tentativi effettuabili tramite il riconoscimento dell’impronta digitale, facendo leva su quelle che vengono descritte come due vulnerabilità zero-day, vale a dire Cancel-After-Match-Fail (CAMF) e Match-After-Lock (MAL).
Come spiegato nel documento tecnico appena condiviso, gli studiosi hanno scoperto anche una lacuna nella gestione dei dati biometrici delle impronte digitali: le informazioni che transitano sull’interfaccia SPI sono protetti in modo inadeguato, consentendo un attacco man-in-the-middle (MITM) utile per il dirottamento delle immagini delle impronte acquisite sul dispositivo mobile.
L’interfaccia SPI (Serial Peripheral Interface) è un protocollo di comunicazione seriale sincrono ampiamente utilizzato nell’ambito dell’elettronica e dei microcontrollori. È stato sviluppato da Motorola (ora noto come Freescale) negli anni ’80 ed è diventato uno standard de facto per la comunicazione tra dispositivi digitali.
Gli attacchi BrutePrint e SPI MITM sono stati testati su dieci popolari modelli di smartphone, ottenendo tentativi illimitati di accesso mediante impronta digitale su tutti i dispositivi Android e HarmonyOS (Huawei) e ulteriori dieci tentativi sui dispositivi iOS. L’idea di BrutePrint è quella di eseguire un numero illimitato di invii di immagini di impronte digitali al dispositivo da aggredire fino a quando l’impronta digitale non viene riconosciuta come valida e autorizzata per lo sblocco del telefono.
La falla BrutePrint si trova tra il sensore di impronte digitali e il Trusted Execution Environment (TEE): sfrutta il problema CAMF già citato in precedenza per manipolare i meccanismi di rilevamento. Inserendo un errore di checksum nei dati delle impronte digitali, il processo di autenticazione viene interrotto in modo anomalo: ciò consente ad eventuali malintenzionati di provare le impronte digitali sul dispositivo di destinazione senza che questo registri il numero dei tentativi di accesso falliti.
Ovviamente le modalità di attacco appena svelate presuppongono che l’aggressore abbia fisicamente a disposizione lo smartphone della vittima per un lungo periodo di tempo.