Zeus Mitmo: Man-in-the-mobile (III)

Il post seguente è stato tradotto per gentile concessione di S21sec.

L’applicazione installata nel dispositivo mobile è una semplice applicazione che terrà traccia di tutti gli SMS in entrata e installerà una backdoor per ricevere comandi via SMS. Abbiamo analizzato l’applicazione Symbian S60, chiamata ‘Nokia update’.

L’applicazione contiene un numero di telefono del Regno Unito hardcoded che utilizzerà come al solito C&C (per inviare l’SMS rubato e ricevere i comandi) e, dopo l’installazione, eseguirà i passaggi seguenti :

  • Invierà un ‘hello’ SMS con il messaggio ‘Applicazione installata correttamente’ al C&C.
  • Terrà traccia di tutti gli SMS in arrivo.

Se il numero dell’ SMS in arrivo sarà uguale al numero di C&C, verranno accettati i seguenti comandi:

  • BLOCK ON: ignora tutti i comandi
  • BLOCK OFF: attiva i comandi in remoto
  • SET ADMIN: modifica il numero C&C del telefono (questo è l’unico comando che può essere inviato da un non C&C)
  • SENDER ADD: aggiunge un contatto
  • SENDER REM: cancella un contatto
  • SET SENDER: aggiorna contatto

La tecnica utilizzata dall’applicazione dannosa per monitorare gli SMS in entrata senza informare l’utente, non è avanzata ( utilizza le API di Symbian); ma consente al trojan di utilizzare l’SMS stack per il proprio profitto, senza mostrare alcun SMS sullo schermo del cellulare:


// open a SMS socket
m_socket.Open(m_socketServer, KSMSAddrFamily, KSockDatagram, KSMSDatagramProtocol)

// receive any incoming SMS (the match is empty)
TSmsAddr smsAddr;
smsAddr.SetSmsAddrFamily(ESmsAddrMatchText);
smsAddr.SetTextMatch(_L8(""));
m_socket.Bind(smsAddr);

Successivamente abbiamo ‘agganciato’ l’SMS stack in modo da poter ricevere gli SMS in entrata e passarli all’handler (the RunL()):


// Stream that reads a CSmsMessage object across a socket.
RSmsSocketReadStream readStream(socket1);
// Allocates and creates a CSmsMessage
// ESmsDeliver-SMS-DELIVER, sent from service center to Station.
CSmsMessage message = CSmsMessage::NewL
TheFs1,CSmsPDU::ESmsDeliver,buffer);
CleanupStack::PushL(message);

//Internalises data from stream to CSmsMessage
message->InternalizeL(readStream);
readStream.Close();
//Extracting the received message to a buffer
TBuf<255> msgContents;
message->Buffer().Extract(msgContents, 0 , message->Buffer().Length());
CleanupStack::PopAndDestroy(2)
// Announce that we have read the SMS. Important!!
iReadSocket.Ioctl(KIoctlReadMessageSucceeded, iStatus, &sbuf, KSolSmsProv);
SetActive();

Chiaramente il malware utilizza il social engineering a diversi livelli:

  • Il metodo di infezione: invia un SMS con un link ad un ‘nuovo certificato di sicurezza ‘
  • L’applicazione mobile: il nome è ‘Nokia update’ e non desterà sospetti nella maggioranza degli utenti
  • I contatti/manipolazione rubrica: possiamo aggiungere o modificare nuovi contatti nel dispositivo mobile tramite chiamate o SMS in maniera assolutamente fidata

Stiamo lavorando con gli operatori di telefonia mobile, principali protagonisti di questi avvenimenti, visto che sono gli unici in grado di rilevare dispositivi infetti e bloccare le connessioni da/verso C & C mobili.

Questo attacco ha molte analogie con un episodio simile avvenuto su Internet, ma con alcune avvertenze:

  • Siamo in grado di rilevare i dispositivi infetti ma comunicare l’accaduto agli utenti e ripulirne i dispositivi è un compito arduo.
  • Siamo in grado di bloccare l’accesso da/verso C&C, ma ben presto arriverà un altro C & C mobile (almeno non vedremo fast-flux!).
  • Il recupero delle credenziali è molto difficile se non addirittura impossibile.
  • L’utente potrà sospettare dell’avvenuta infezione consultando le spese per la telefonia mobile e individuando strani addebiti relativi agli SMS.

Anche se non possiamo affermare che si tratti di un’applicazione dannosa veramente avanzata, funziona bene, e la linea sottile che separa il malware per PC dal mobile, è più sottile che mai.

Mentre scriviamo questo post l’indice di rivelazione AV è 0% .

Aggiornamento (27/09/2010): i nostri colleghi di Fortinet hanno fornito maggiori informazioni per il malware Symbian.

Aggiornamento (28/09/2010):. Vodafone ci ha appena confermato che il Symbian developer certificate in sviluppo è stato revocato.

 Numero di serie: BF43000100230353FF79159EF3B3
       Data di revoca : 28 settembre 2010 08:26:26 GMT

   Numero di serie: 61F1000100235BC2794380405E52
     Data di revoca: 28 settembre 2010 08:26:26 GMT

ZeuS Mitmo: Man-in-the-mobile (I)
ZeuS Mitmo: Man-in-the-mobile (II)
ZeuS Mitmo: Man-in-the-mobile (III)

David Barroso

S21sec e-crime

Fonte: ZeuS Mitmo: Man-in-the-mobile (III)

Written by admin

Lascia un commento

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

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.