Un paio di giorni fa, mentre mi tenevo aggiornato con gli ultimi post su Twitter, un tweet di @malwrhunterteam ha catturato la mia attenzione.
![Fake-Windows-Registration-Spyware]()
Un programma, proponendosi quale strumento per la verifica della genuinità del Sistema Operativo, avverte che la copia installata di Windows non è attivata, e sono necessarie alcune informazioni personali per procedere all’attivazione.
Il dubbio iniziale sulla sua genuinità è generato anche dalla presenza, nel programma, di una firma digitale valida e verificata:
![Fake-Windows-Registration-Spyware-Signature]()
E’ l’inizio di un’analisi che, a partire da un programma apparentemente innocuo e genuino, ha portato a scoprire quello che, nella nostra esperienza di analisti, è lo spyware più complesso che ci sia capitato di analizzare.
Quest’articolo mostrerà l’analisi effettuata e le tecniche utilizzate dallo spyware. Alla fine verranno fornite delle indicazioni semplici che aiuteranno anche i meno esperti a capire quando un programma avvia delle azioni indesiderate sul Personal Computer e come difendersi.
Analisi:
La prima fase dell’analisi è sempre visuale. All’apparenza questo programma emula in toto una richiesta di attivazione del sistema operativo Microsoft Windows, compreso il Product Key, il codice di licenza, è reale e preso dal nostro sistema.
Il logo, però, fa sorgere il primo dubbio.
Microsoft ha cessato l’utilizzo di quel logo anni fa, con Windows XP.
Anche i dettagli dell’eseguibile celano delle imperfezioni: Il nostro spyware, a sinistra, ha il copyright errato rispetto alla normale forma usata da Microsoft. Inoltre Microsoft al momento della compilazione utilizza sempre un linguaggio specifico, come si può vedere a destra. Infine, il campo “Legal Trademarks” in un eseguibile Microsoft è mancante.
![Fake-Windows-Registration-Spyware-Properties]()
Lo spyware, per poter passare inosservato è firmato digitalmente. Come si può vedere, però, fra i firmatari digitali non è presente Microsoft, ma una certa “DesignerWare”. Ecco il certificato:
![Fake-Windows-Registration-Spyware-Signature-Compare]()
Molto diverso da un file firmato digitalmente da Microsoft:
![Sample-Valid-Signature]()
Inizialmente ho pensato a dei certificati digitali rubati, come già accaduto in passato, ad esempio con il malware APT Duqu.
Il collega @malwrhunterteam ha trovato la risposta su Internet, partendo dal nome della società.
Designerware è la società produttrice di un software, chiamato PC Rental Agent, che veniva solitamente installato su Personal Computer a noleggio o con la formula “Rent to Own”, vale a dire il pagamento del costo del noleggio con la finalità dell’acquisto quando il costo totale del noleggio ha raggiunto il prezzo di mercato deciso dal venditore. Lo scopo? Permettere una migliore gestione e più facile pulizia del computer al ritorno in sede o il suo blocco in caso di furto o mancato pagamento.
Dov’è la novità, si dirà quindi.
Come vedremo a breve, il programma spia va ben oltre le funzionalità previste da contratto, arrivando a registrare immagini del proprio schermo, catturare informazioni sulla cronologia della navigazione Internet, sulla connessione WiFi, la pressione di qualsiasi tasto fino all’attivazione della webcam con invio a server remoti dello stream video.
Per queste ragioni gli era stato ordinato di fermarsi già nel 2012. Purtroppo, non l’hanno fatto.
Potete leggere i dettagli di questa storia qui, qui, e qui (in inglese). Qui la loro versione dei fatti.
Attualmente la società sembra essere ancora attiva, con un proprio sito Web e una pagina Facebook.
Anche il loro contestato prodotto sembra essere ancora in vendita, con un sito web ad-hoc e piani di abbonamento fino a 430 dollari annuali.
Queste le caratteristiche ufficiali del programma, nel 2016:
- Hotkey di backup – restore, per cancellare i dati prima di restituire il PC.
- Utility di riparazione del disco.
- Clonazione fra computer
- Utility di recupero password
Analisi:
Lo spyware è scritto in .NET Framework 4.0, compilato, secondo il timestamp il 9 Marzo 2016.
Può essere avviato anche con dei parametri, ognuno dei quali attiva una caratteristica:
![Spyware-Parameters]()
Ad esempio, il parametro –c abilità la possibilità di scattare foto con la webcam, o il parametro –l effettua il log di tutte le operazioni.
Recuperare il codice sorgente in questo caso è stato molto semplice. Non è stato nemmeno offuscato.
Offuscare il codice normalmente rischia di produrre dei “falsi positivi” da parte di software antivirus.
L’interfaccia principale mostra una falsa richiesta di attivazione Windows, ma il programma è realizzato per mostrare anche altre richieste. Qui un esempio del programma che chiede l’attivazione per Internet Explorer:
![Fake-Windows-Registration-Subject-Change]()
Altre finte richieste di attivazione sono generate per Microsoft Office, Yahoo e la verifica di un certificato digitale:
![Fake-Windows-Registration-As-CertVerification]()
Una volta avviato il programma è impossibile chiuderlo. Utilizzando una tecnica di maschere sovrapposte viene negato l’accesso ad ogni oggetto sul desktop. L’unica combinazione funzionante è Ctrl + Alt + Canc, che riporta comunque alla precedente condizione. L’unica scelta possibile dal programma è effettuare lo spegnimento del sistema.
Cliccando sulla X per uscire, viene visualizzato un messaggio d’errore:
![Fake-Windows-Registration-Cannot-Close]()
All’avvio inoltre raccoglie alcune informazioni base sul sistema e crea un file, chiamato “masteraclini.enu”, sul desktop e nella cartella C:\ProgramData\Microsoft\Microsoft® Windows® Operating System\6.1.5911.33557
I due file differiscono. Questo è il contenuto del file nella cartella ProgramData:
[Key]
TestWrite=2272054636068026490541286
TotalSent=5
Display=5
LastFlush=5703
Last2=5703
Last3=5703
WebCamContinous=1
Last4=5704
Se avviato con il parametro –l il programma crea un file chiamato “Detective.log” nel percorso: C:\ProgramData\Microsoft Corporation\BIOS Drivers for Windows
Questo è un contenuto d’esempio iniziale, senza aver ancora immesso alcuna informazione:
===== 13/08/2016 23:08:21 ======
Header: DETECTIVE:
Message: Internet connection found [86]
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
Stolen property information Started
Version: 1.6.3
Logging: 1
gvLogFile: 1
KeyLogger: True
StartPath: C:\Users\Ethereal\Desktop
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
===== 14/08/2016 20:30:02 ======
Header: DETECTIVE:
Message: Main loop starting now
===== 14/08/2016 20:30:02 ======
Header: DETECTIVE:
Message: Internet connection found [86]
L’ultima stringa è fondamentale: Il programma infatti funziona soltanto se rileva una connessione ad Internet funzionante.
La verifica viene fatta tramite un webservice presente sul server di destinazione per cui strumenti quali iNETSim o Fakenet, utilizzati dagli analisti per simulare la presenza di una connessione internet, non funzionano.
Se la connessione non riesce, e il logging è abilitato, queste informazioni vengono scritte nel file Detective.log
Message: Finished setting the prompt screen in case it is needed
===== 14/08/2016 20:36:57 ======
Header: DETECTIVE:
Message: Activity discoverd!
===== 14/08/2016 20:36:57 ======
Header: DETECTIVE:
Message: Now sending email!
===== 14/08/2016 20:36:58 ======
Header: DETECTIVE: ERROR SENDING email
Message: Got an error tring to send report!
URL: http://ws4.trilockapps.com/eservices/service.asmx
LvReturn: False
Unable to connect to the remote server
===== 14/08/2016 20:36:58 ======
Header: DETECTIVE:
Message: Sleeping now
TRILOCKAPPS.COM, secondo le informazioni contenute nel database WHOIS, è un server registrato a nome della società Designerware.
Registry Registrant ID:
Registrant Name: DesignerWare
Registrant Organization: DesignerWare
Registrant Street: 108 Hutchinson
Registrant City: North East
Registrant State/Province: PA
Registrant Postal Code: 16428
Registrant Country: US
Registrant Phone: +1.8147254380
Registrant Phone Ext:
Registrant Fax: +1.8147254380
Registrant Fax Ext:
A quanto pare invece, il webmaster ha qualcosa a che vedere con il capitano Achab:
Registry Admin ID:
Admin Name: Dick, Moby
Admin Organization: American Legion
Admin Street: 108 Hutchinson
Admin City: North East
Admin State/Province: PA
Admin Postal Code: 16428
Admin Country: US
Admin Phone: +1.8147254380
Admin Phone Ext:
Admin Fax: +1.8147254380
Un Reverse WHOIS mostra che Designerware ha un buon numero di siti registrati.
![Designerware-Reverse-Whois]()
Di questi, sei sono utilizzati dallo spyware:
![Spyware-Servers]()
Se la connessione non riesce sui server di default, è presente una lista di server alternativi:
![Spyware-Alternative-Servers]()
Se tutte le informazioni sono inserite correttamente, il programma verifica tra le altre cose se è attiva la registrazione dei tasti premuti:
![Spyware-Keylogging-Features]()
Prosegue poi con una sorta di profilazione del personal computer assegnandogli un codice univoco, da utilizzare con un programma presumibilmente interno alla società, chiamato Find4Me.
![Spyware-PC-Info-Gather]()
Tutto viene inviato poi ai loro server, tramite una richiesta POST su Webservice:
![Spyware-Http-Stream-Details]()
Il payload è codificato in Base64. Il campo “s6” sono le informazioni raccolte dal mio computer, inclusi i tasti digitati e lo screenshot del mio display. I campi s2, s3 ed s4 sono criptati.
![Spyware-Http-Stream-Encoded]()
![Spyware-Info-Recorded]()
Ulteriori operazioni altamente lesive della privacy, ritrovate nello spyware includono:
- Registrazione continua dello streaming della webcam.
![Spyware-Webcam-Recording-Feature]()
![Spyware-GPS-Feature]()
- Enumerazione della connessione Wi-Fi
![Spyware-Wireless-Network-Gathering]()
Il programma, nella sua versione completa, installa anche dei driver, disponibili per le versioni a 32 e 64 bit (quest’ultima possibile grazie alla firma digitale).
Conclusione:
Indubbiamente si tratta dello spyware più complesso che io abbia mai analizzato.
Ci si domanda come sia possibile che attualmente solo SEI soluzioni antivirus identifichino il file come malware, nella categoria dei Keylogger (ma abbiamo visto come è in grado di fare ben altro).
Il tentativo di camuffarsi da eseguibile di Microsoft Windows, catturando, senza alcun preavviso o consenso, informazioni sensibili capaci anche di localizzare la propria abitazione o luogo di lavoro confermano le pratiche illecite perseguite dalla società Designerware.
L’attività illegale, che avrebbe dovuto essere cessata già quattro anni fa, verrà sicuramente segnalata anche alla Certification Authority che ha registrato il certificato digitale dell’applicazione, in modo che un ulteriore campanello d’allarme venga segnalato dal Sistema Operativo.
Le probabilità che un utente inserisca delle informazioni sono comunque molto alte, data l’invasività del programma.
Anche se vengono inserite informazioni false, il programma raccoglierà comunque i dati sensibili dal computer.
Il programma prevede, in alcuni casi, anche l’attivazione nascosta.
Il consiglio pertanto, nel caso si dovessero notare attività sospette, come l’accensione della propria webcam senza motivo o il programma dovesse essere inavvertitamente avviato sul proprio computer, di procedere allo spegnimento del computer.
Successivamente, riaccenderlo con il cavo di rete o il Wi-Fi scollegato e procedere alla rimozione, anche affidandosi ad un esperto.
Analisi Virustotal: https://www.virustotal.com/it/file/79d8da20242d4c3cec6e8c0f7f74d107003e8b444a0556f243c8741481d85e2d/analysis/
Analisi Sandbox Hybrid:
https://www.hybrid-analysis.com/sample/79d8da20242d4c3cec6e8c0f7f74d107003e8b444a0556f243c8741481d85e2d?environmentId=100
Autore: Daniele Mondelli
Indipendent Security Researcher & Malware Analyst
L'articolo RegistrationKey. Storia e analisi di uno spyware che si traveste da Registrazione di Windows. sembra essere il primo su Ransomware Blog.