Mentre OS X era relativamente privo di malware per i primi 10 anni di utilizzo, recentemente si sono verificate delle minacce di malware che hanno colpito un numero significativo di sistemi Mac.
Una delle prime è stata la falsa truffa antivirus di MacDefender, che aveva persone che emettevano informazioni sulle carte di credito per paura che i loro sistemi fossero infetti. Questa truffa si è trasformata abbastanza rapidamente mentre cercava di evitare di essere scoperta e continuare a costringere le persone a offrire informazioni personali. Un'altra truffa è stata il malware DNSChanger che ha colpito milioni di sistemi PC in tutto il mondo e che in definitiva ha indirizzato i sistemi interessati a siti Web dannosi e, come il malware MacDefender, ha cercato di convincere le persone a offrire informazioni personali.
L'ultimo malware che ha colpito OS X è stato lo scam Flashback, che inizialmente è iniziato come un'applicazione di installazione di Flash Player fasulla che era relativamente facile da evitare. Tuttavia, la minaccia si trasformò rapidamente in una minaccia più seria sfruttando i buchi di sicurezza non protetti in Java (che Apple ha poi indirizzato) per l'installazione su un Mac con Java semplicemente visitando una pagina Web dannosa e senza richiedere alcuna attenzione da parte dell'utente. Finora, si stima che abbia infettato oltre 600.000 sistemi Mac in tutto il mondo, con la maggioranza negli Stati Uniti e in Canada.
Come funziona?
Il malware Flashback inietta il codice nelle applicazioni (in particolare i browser Web) che verranno eseguite durante l'esecuzione e che quindi invieranno schermate e altre informazioni personali ai server remoti.
Primo passo: sfruttamento di Java
Quando si incontra la pagina Web dannosa contenente il malware e si ha una versione di Java senza patch in esecuzione sul proprio sistema, per prima cosa verrà eseguita una piccola applet Java che, una volta eseguita, interromperà la sicurezza Java e scriverà un piccolo programma di installazione sull'account dell'utente. Il programma è chiamato qualcosa come .jupdate, .mkeeper, .flserv, .null o .rserv, e il punto che precede lo fa apparire nascosto nella vista del Finder di default.
Inoltre, l'applet Java scriverà un file di avvio chiamato qualcosa come "com.java.update.plist", "com.adobe.reader.plist", "com.adobe.flp.plist" o anche "null.plist" alla cartella ~ / Library / LaunchAgents / dell'utente corrente, che lancerà continuamente il programma .jupdate ogni volta che l'utente ha effettuato l'accesso.
Per evitare il rilevamento, il programma di installazione cercherà innanzitutto la presenza di alcuni strumenti antivirus e altre utilità che potrebbero essere presenti sul sistema di un utente esperto, che secondo F-Secure includono quanto segue:
/ Biblioteca / Little Snitch
/Developer/Applications/Xcode.app/Contents/MacOS/Xcode
/ Applicazioni / VirusBarrier X6.app
/Applications/iAntiVirus/iAntiVirus.app
/Applications/avast!.app
/Applications/ClamXav.app
/Applications/HTTPScoop.app
/ Applicazioni / Packet Peeper.app
Se questi strumenti vengono trovati, il malware si elimina nel tentativo di impedire il rilevamento da parte di coloro che hanno i mezzi e le capacità per farlo. Molti programmi malware utilizzano questo comportamento, come è stato visto in altri come il bot del malware Tsunami.
Secondo passaggio: download del carico utile
Quando il programma jupdate viene eseguito, si connetterà a un server remoto e scaricherà un programma di payload che è il malware stesso e che consiste di due componenti. Il primo è la parte principale del malware che esegue l'acquisizione e il caricamento di informazioni personali, mentre il secondo è un componente filtro utilizzato per impedire l'esecuzione del malware a meno che non vengano utilizzati programmi specifici come i browser Web.
Terzo passo: infezione
Una volta che il malware e il filtro sono stati scaricati, il malware viene eseguito per infettare il sistema. Qui è dove gli utenti vedranno un avviso su un aggiornamento software e verrà richiesto di fornire le loro password. Sfortunatamente a questo punto non c'è nulla per fermare l'infezione, e se viene fornita o meno una password cambia solo la modalità di infezione.
La radice della routine di infezione si basa sul dirottamento dei file di configurazione in OS X che vengono letti ed eseguiti quando vengono eseguiti i programmi. Uno di questi è chiamato "Info.plist" che si trova nella cartella "Contents" all'interno di ogni pacchetto applicativo OS X e viene letto ogni volta che viene aperto quel programma specifico. Il secondo è chiamato "environment.plist" e si trova all'interno dell'account utente in una cartella nascosta (~ / .MacOSX / environment.plist), che può essere utilizzato per avviare i parametri ogni volta che un programma viene aperto dall'utente.
La prima modalità di infezione è se viene fornita una password, nel qual caso il malware altera i file Info.plist in Safari e Firefox per eseguire il malware ogni volta che questi programmi vengono aperti. Questa è la modalità di infezione preferita dal malware, ma se non viene fornita una password, il malware ricorre alla sua seconda modalità di infezione, dove altera il file "environment.plist".
Usando il file environment.plist, il malware verrà eseguito ogni volta che un'applicazione verrà aperta e questo porterà a crash e altri comportamenti strani che potrebbero causare un allarme all'utente, quindi il malware utilizza il suo componente filtro per eseguire solo quando determinate applicazioni vengono lanciati, come Safari, Firefox, Skype e persino installazioni di Office.
In entrambi i casi, una volta scaricato, il malware infetterà il sistema utilizzando uno di questi approcci e verrà eseguito ogni volta che verranno utilizzate applicazioni di destinazione come i browser Web. Nelle varianti più recenti del malware, quando viene installato utilizzando il file "environment.plist" controllerà ulteriormente il sistema per garantire che siano presenti installazioni complete di programmi come Office o Skype, e potenzialmente si cancellerà se questi programmi non sono completamente o correttamente installato. F-Secure ipotizza che si tratti di un tentativo di impedire il rilevamento precoce del malware.
Come lo rilevo?
Rilevare il malware è abbastanza semplice e richiede semplicemente aprire l'applicazione Terminale nella cartella / Applicazioni / Utility / ed eseguire i seguenti comandi:
i valori di default leggono ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES
le impostazioni predefinite leggono /Applications/Safari.app/Contents/Info LSEnvironment
le impostazioni predefinite leggono /Applications/Firefox.app/Contents/Info LSEnvironment
Questi comandi leggeranno il file "Info.plist" di alcune applicazioni di destinazione e il file "environment.plist" nell'account utente e determineranno se è presente la variabile utilizzata dal malware per avviarsi (chiamata "DYLD_INSERT_LIBRARIES"). Se la variabile non è presente, questi tre comandi Terminali emetteranno che la coppia di default "non esiste", ma se sono presenti questi comandi genereranno un percorso che punta al file malware, che dovresti vedere nel Terminale finestra.
Oltre ai comandi precedenti, è possibile verificare la presenza di file .so invisibili che le varianti precedenti del malware creano nella directory degli utenti condivisi eseguendo il seguente comando nel Terminale:
ls -la ~ /../ Shared /.*. così
Dopo aver eseguito questo comando, se viene visualizzato un output di "nessun file o directory", non si dispone di questi file nella directory condivisa dell'utente; tuttavia se sono presenti, li vedrai elencati.
Come lo rimuovo?
Se dopo aver eseguito i primi tre comandi di rilevamento si scopre che il sistema contiene i file modificati e si sospetta che sia stato installato il malware, è possibile procedere alla rimozione utilizzando le istruzioni di rimozione manuali di F-Secure. Queste istruzioni sono un po 'approfondite, ma se le segui esattamente, dovresti essere in grado di liberare il sistema dall'infezione:
- Apri il Terminale ed esegui i seguenti comandi (come sopra):
le impostazioni predefinite leggono /Applications/Safari.app/Contents/Info LSEnvironment
le impostazioni predefinite leggono /Applications/Firefox.app/Contents/Info LSEnvironment
i valori di default leggono ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES
Quando vengono eseguiti questi comandi, prendere nota del percorso completo del file che viene inviato alla finestra del terminale (potrebbe essere associato al termine "DYLD_INSERT_LIBRARIES"). Per ciascuno dei comandi che generano un percorso di file (e non dire che la coppia di domini non esiste), copia la sezione completa del percorso del file ed esegui il seguente comando con il percorso del file al posto di FILEPATH nel comando (copia e incolla questo comando):
grep -a -o '__ldpath __ [- ~] *' FILEPATH
- Individua i file menzionati nell'output dei comandi precedenti ed eliminali. Se non riesci a trovarli nel Finder, quindi per ogni primo tipo "sudo rm" nel terminale seguito da un singolo spazio, quindi usa il cursore del mouse per selezionare il percorso completo del file dall'output del primo comando, e usa Comando-C seguito da Command-V per copiarlo e incollarlo nel Terminale. Quindi premere Invio per eseguire il comando e rimuovere questo file.
Guarda lo screenshot seguente per un esempio di come dovrebbe apparire:
- Dopo aver eliminato tutti i riferimenti ai file con i comandi "predefiniti" di cui sopra, i file malware sono stati rimossi, ma è comunque necessario reimpostare le applicazioni e i file di account modificati, quindi eseguire i seguenti comandi:
sudo defaults delete /Applications/Safari.app/Contents/Info LSEnvironment
sudo chmod 644 /Applications/Safari.app/Contents/Info.plist
sudo defaults delete /Applications/Firefox.app/Contents/Info LSEnvironment
sudo chmod 644 /Applications/Firefox.app/Contents/Info.plist
i valori di default eliminano ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES
launchctl unsetenv DYLD_INSERT_LIBRARIES
- Nel Finder, vai al menu Vai e seleziona Libreria (tieni premuto il tasto Opzione in Lion per rivelare questa opzione nel menu), quindi apri la cartella LaunchAgents, dove dovresti vedere un file chiamato qualcosa come "com.java.update .plist ". Quindi, digitare il seguente comando nel Terminale (Nota: modificare il nome di "com.java.update" nel comando per riflettere il nome del file prima del suffisso .plist, come "com.adobe.reader" se si avere quel file):
i valori di default leggono ~ / Library / LaunchAgents / com.java.update ProgramArguments
Quando questo comando è completato, premere Invio e annotare il percorso del file che è stato emesso nella finestra Terminale.
Come hai fatto in precedenza, trova questo file nel Finder ed eliminalo, ma se non puoi farlo digita "sudo rm" seguito da un singolo spazio, quindi copia e incolla il percorso del file di output nel comando e premi Invio.
Per rimuovere eventuali file .so nascosti trovati in precedenza, puoi rimuoverli eseguendo il seguente comando nel Terminale (assicurati di copiare e incollare questo comando, poiché non ci dovrebbero essere assolutamente spazi nell'ultimo componente che contiene i simboli e i segni di punteggiatura ):
sudo rm ~ /../ Condiviso /.*. così
Una volta completato questo passaggio, rimuovere il file "com.java.update.plist" (o "com.adobe.reader.plist" e si dovrebbe essere a posto.
AGGIORNATO: 4/5/2012, 10:00 pm - Aggiunte le istruzioni di rilevamento e rimozione dei file .so nascosti usati dalle precedenti varianti del malware.
Lascia Il Tuo Commento