fbpx

Attacchi di Phishing SMS Avanzati Contro i Moderni Smartphone Basati su Android

Ricerca di: Artyom Skrobov, Slava Makkaveev

introduzione

I ricercatori di Check Point hanno identificato una suscettibilità agli attacchi di phishing avanzati in alcuni moderni telefoni basati su Android, inclusi i modelli di Samsung, Huawei, LG e Sony. In questi attacchi, un agente remoto può indurre gli utenti ad accettare nuove impostazioni del telefono che, ad esempio, instradano tutto il loro traffico Internet attraverso un proxy controllato dall'aggressore.

Questo vettore di attacco si basa su un processo chiamato provisioning over-the-air (OTA), che viene normalmente utilizzato dagli operatori di rete cellulare per distribuire impostazioni specifiche della rete a un nuovo telefono che si unisce alla loro rete. Tuttavia, come mostriamo, chiunque può inviare messaggi di provisioning OTA.

Lo standard industriale per il provisioning OTA, Open Mobile Alliance Client Provisioning (OMA CP), include metodi di autenticazione piuttosto limitati; un destinatario non può verificare se le impostazioni suggerite provengono dal suo operatore di rete o da un impostore. Abbiamo scoperto che i telefoni prodotti da Samsung, Huawei, LG e Sony (corrispondenti a oltre il 50% di tutti i telefoni Android, secondo i dati sulla quota di mercato del 2018: https://gs.statcounter.com/vendor-market-share/mobile/ in tutto il mondo / ) consentono agli utenti di ricevere impostazioni dannose tramite messaggi di provisioning con autenticazione debole. I telefoni Samsung aggravano questo aspetto consentendo anche messaggi OMA CP non autenticati.

Abbiamo divulgato i nostri risultati ai fornitori interessati a marzo. Samsung ha incluso una correzione per affrontare questo flusso di phishing nella versione di manutenzione della sicurezza di maggio (SVE-2019-14073). LG ha rilasciato la correzione a luglio (LVE-SMP-190006). Huawei prevede di includere correzioni dell'interfaccia utente per OMA CP nella prossima generazione di smartphone della serie Mate o della serie P. Sony ha rifiutato di riconoscere la vulnerabilità, affermando che i suoi dispositivi seguono le specifiche OMA CP. OMA sta monitorando questo problema come OPEN-7587.

POC:

Flusso di attacco

Per inviare messaggi OMA CP, un utente malintenzionato ha bisogno di un modem GSM (un dongle USB da $ 10 o un telefono funzionante in modalità modem), che viene utilizzato per inviare messaggi SMS binari e un semplice script o un software pronto all'uso, a comporre l'OMA CP.

I messaggi di phishing CP possono essere mirati in modo ristretto, ad esempio preceduti da un messaggio di testo personalizzato su misura per ingannare un particolare destinatario, o inviati in blocco, supponendo che almeno alcuni dei destinatari siano abbastanza creduloni da accettare un CP senza contestarne l'autenticità.

OMA CP consente di modificare le seguenti impostazioni over-the-air:

  • Server di messaggi MMS
  • Indirizzo proxy
  • Homepage del browser e segnalibri
  • Server email
  • Server di directory per sincronizzare contatti e calendario

E altro ancora.

I seguenti scenari presumono che l'attaccante tenti di indurre le vittime a instradare tutto il loro traffico attraverso il proxy controllato dall'attaccante.

Non autenticato (Samsung)

Per prendere di mira le vittime che utilizzano telefoni Samsung, l'attaccante può inviare loro messaggi OMA CP non autenticati, specificando un proxy che controlla. Sottolineiamo che non esiste un controllo di autenticità da superare per l'attaccante: tutto ciò che serve è che l'utente accetti il ​​CP.


Figura 1: un messaggio CP non autenticato così come appare a un utente Samsung.

Autenticato con IMSI

Se l'attaccante è in grado di ottenere i numeri IMSI (International Mobile Subscriber Identity) delle potenziali vittime utilizzando telefoni Huawei, LG o Sony, può lanciare un attacco di phishing efficace quanto quello contro gli utenti di telefoni Samsung.

IMSI è un identificatore a 64 bit di ogni dispositivo su una rete mobile, in uso dal GSM e fino al 3G. Questo numero viene utilizzato per il routing ed è più o meno equivalente a un indirizzo IP nelle reti di computer. L'IMSI di una persona è pseudo-confidenziale, ma:

  • È necessariamente disponibile per tutti gli operatori di rete, poiché l'instradamento dei dati o delle chiamate a un abbonato mobile richiede la risoluzione del suo numero di telefono in IMSI.
  • Di conseguenza, le ricerche IMSI dirette e inverse (da numero di cellulare a IMSI e viceversa) sono disponibili a buon mercato tramite fornitori commerciali.
  • Un'applicazione Android non autorizzata può leggere il numero IMSI dell'utente tramite l'API standard
    ((TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE)). GetSubscriberId ()
    , purché l'applicazione disponga dell'autorizzazione autorizzazione.READ_PHONE_STATE Oltre un terzo di tutte le app Android rilasciate negli ultimi tre anni richiede già questa autorizzazione, quindi non desterebbe sospetti.
  • Chiunque possa dare un'occhiata alla scheda SIM fisica vedrà l'ICCID inciso o stampato su di essa, e l'ICCID spesso corrisponde all'IMSI!

I messaggi OMA CP hanno un'intestazione di sicurezza opzionale per abilitare la convalida dell'autenticità del CP. Quando un CP viene autenticato con il numero IMSI del destinatario, i telefoni Huawei, LG e Sony consentono l'installazione di impostazioni dannose. Notare che questi telefoni non mostrano alcun dettaglio sul CP quando suggeriscono all'utente di installarlo; in particolare, il mittente del PC non è in alcun modo identificato.


Figura 2: un messaggio CP autenticato da NETWPIN come appare a un utente Sony.

Autenticato con PIN

Per le potenziali vittime di cui non è stato possibile ottenere l'IMSI, l'aggressore può inviare a ciascuna vittima due messaggi. Il primo è un messaggio di testo che pretende di provenire dall'operatore di rete della vittima, chiedendole di accettare un CP OMA protetto da PIN e specificando il PIN come un numero arbitrario di quattro cifre. Successivamente, l'aggressore gli invia un messaggio OMA CP autenticato con lo stesso PIN. Tale CP può essere installato indipendentemente dall'IMSI, a condizione che la vittima accetti il ​​CP e inserisca il PIN corretto.

Figura 3: un messaggio CP autenticato da USERPIN come appare a un utente Huawei.

Background tecnico

Il provisioning è il processo mediante il quale ai dispositivi vengono fornite le impostazioni necessarie per funzionare nel loro ambiente. Il principale caso d'uso originale per il provisioning OTA è distribuire impostazioni specifiche dell'operatore, come l'indirizzo del centro servizi MMS dell'operatore. Anche le aziende utilizzano questa funzione per distribuire impostazioni come gli indirizzi del server di posta elettronica ai dispositivi dei dipendenti. OMA CP, uno dei due standard che OMA mantiene per le impostazioni di provisioning via etere, risale al 2001, con l'ultima specifica del 2009.

La nostra ricerca mostra che le implicazioni sulla sicurezza di OMA CP rimangono rilevanti anche un decennio dopo. La distribuzione di base di Android non gestisce i messaggi OMA CP, ma molte implementazioni di fornitori lo fanno, poiché OMA CP è lo standard di settore per il provisioning OTA. La sua specifica consente (ma non richiede!) Di autenticare i messaggi CP utilizzando USERPIN, NETWPIN o altri metodi, meno utilizzati.

Qualsiasi SMS, sia un messaggio di testo, un MMS, una notifica di posta vocale o qualsiasi altra cosa, viene trasmesso come unità di dati del protocollo (PDU) specificate da SM-TP (Short Message Transfer Protocol) noto anche come GSM 03.40. Le PDU GSM contenenti il ​​payload OMA CP sono costituite da:

  • Intestazione SM-TP a livello portante , che specifica il numero di telefono del destinatario e lo schema di codifica dei dati.
  • User Data Header (UDH) a livello di trasporto , inclusi:
    • Intestazione Wireless Datagram Protocol (WDP), che specifica la porta di destinazione 2948 (wap-push) e la porta di origine 9200 (wap-wsp).
    • Intestazione del messaggio concatenata opzionale: i dati utente di ciascuna PDU sono limitati a 140 byte e i messaggi più lunghi devono essere suddivisi in blocchi.
  • Intestazione Wireless Session Protocol (WSP) a livello di sessione , contenente l'autenticazione (se presente).
  • XML binario WAP (WBXML) a livello dell'applicazione , contenente il payload.

A titolo di dimostrazione, la nostra prova di concetto iniziale (non autenticata) per i telefoni Samsung conteneva il seguente documento XML come payload, con le stringhe che specificano l'indirizzo proxy e il numero di porta evidenziati:


Figura 4: payload XML per OMA CP.

Il CP OMA completo che trasporta questo carico utile è suddiviso in due messaggi SMS fisici, mostrati nel diagramma seguente come due stringhe di ottetti:


Figura 5: rappresentazione fisica di un messaggio OMA CP.

Nella stringa WBXML, l'indirizzo del proxy e il numero di porta (evidenziati con gli stessi colori dell'origine XML) sono inclusi come stringhe ASCII con terminazione null, mentre le stringhe definite nello schema XML, come i nomi degli elementi ei valori di tipo e attributi nome , sono rappresentati in WBXML come valori fissi di un byte.

Il payload WBXML segue l'intestazione WSP che include il codice di autenticazione del messaggio, calcolato utilizzando l'IMSI del destinatario, come stringa esadecimale ASCII.

Conclusione

Abbiamo descritto un flusso di attacco di phishing avanzato contro i moderni telefoni basati su Android. Questo flusso di attacco consente a chiunque disponga di un modem USB economico di indurre gli utenti a installare impostazioni dannose sui propri telefoni. Per prendere di mira alcuni dei telefoni sensibili, l'aggressore deve conoscere i numeri IMSI delle vittime, che possono essere ottenuti tramite un'applicazione Android con autorizzazione READ_PHONE_STATE.

Abbiamo verificato il nostro proof of concept su Huawei P10, LG G6, Sony Xperia XZ Premium e una gamma di telefoni Samsung Galaxy, incluso S9.

Check Point SandBlast Mobile previene gli attacchi Man-in-the-Middle e di phishing, per proteggere i tuoi dispositivi da tali messaggi OMA CP dannosi.

Ulteriori informazioni: https://www.checkpoint.com/products/mobile-security/

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *