Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
Microsoft e il problema delle DLL "dirottate"
Nuovo argomento   Rispondi    Indice del forum -> Sicurezza
Precedente :: Successivo  
Autore Messaggio
Zeus News
Ospite





MessaggioInviato: 02 Set 2010 11:08    Oggetto: Microsoft e il problema delle DLL "dirottate" Rispondi citando

Commenti all'articolo Microsoft e il problema delle DLL "dirottate"
La gestione della DLL da parte di Windows può aprire la porta ai malintenzionati. Centinaia le applicazioni a rischio.



Top
MItaly2
Mortale adepto
Mortale adepto


Registrato: 30/08/08 15:55
Messaggi: 31

MessaggioInviato: 02 Set 2010 13:19    Oggetto: Rispondi citando

Il dll hijacking esiste da tanti anni, e Microsoft ci ha già posto parzialmente rimedio da prima ancora di XP: infatti sin da Windows 2000 SP4 esiste il valore di registro HKLM\System\CurrentControlSet\Control\Session Manager\SafeDllSearchMode, che, se abilitato, sposta la directory corrente in fondo alla lista dei percorsi di ricerca delle dll; questo valore, se non esiste, da XP SP2 in poi viene considerato come attivo, come spiegato chiaramente qui:
Citazione:

Safe DLL search mode is enabled by default. To disable this feature, create the HKLM\System\CurrentControlSet\Control\Session Manager\SafeDllSearchMode registry value and set it to 0.[...]

Windows XP and Windows 2000 with SP4: Safe DLL search mode is disabled by default. To enable this feature, create the SafeDllSearchMode registry value and set it to 1. Safe DLL search mode is enabled by default starting with Windows XP with SP2.


Quindi su un sistema con XP SP2 o successivi (o addirittura 2000 SP4 o successivi, se il valore in questione viene abilitato manualmente) il problema si pone solo se l'applicazione cerca una dll e non la trova:

  • nella directory da cui è stato avviato il programma;
  • nella directory system (=system32);
  • nella directory system di compatibilità con applicazioni a 16 bit (=system);
  • nella directory di windows

Solo a questo punto il loader la cerca nella cartella corrente, cosa che non si dovrebbe mai verificare se l'applicazione è correttamente installata.
Con il SafeDllSearch attivato, del codice maligno per farsi caricare in memoria dovrebbe prima far sparire una o più dll usate dall'applicazione, per fare in modo che la ricerca delle dll in questione arrivi fino alla ricerca nel percorso corrente, dove saranno situate le dll "maligne", magari sufficientemente astute da fare anche da proxy verso le dll vere in modo che l'utente non si accorga di niente.

Ma tutto questo è inutile.

Se del codice maligno ha i permessi per andare a far sparire delle dll dalla cartella Programmi vuol dire che ha già i permessi per fare quel che gli pare, per cui tutto questo magheggio sarebbe come cercare di entrare dalla finestra pur avendo le chiavi della porta principale (come dicono alcuni, "card tricks in the dark" Smile ).

L'unico caso in cui tutto questo trucco avrebbe senso sarebbe per risultare "invisibile" ad un firewall locale, facendosi caricare in memoria da un'applicazione fidata (ad esempio un browser), ma, se l'applicazione maligna che installa la dll ha già i privilegi di amministratore, in linea teorica non avrebbe comunque problemi ad aggiungersi un'eccezione nelle regole del firewall.
E in ogni caso, anche la nuova impostazione in questo caso non servirebbe a niente, dato che, avendo i diritti di amministratore, il codice di "installazione" del virus potrebbe senza problemi disattivarla.

In generale, se per sfruttare un exploit sono necessari i diritti di amministratore, l'exploit in questione non è particolarmente rilevante, dato che il codice che lo sfrutta può già fare virtualmente qualunque cosa.

Questa nuova impostazione, piuttosto, serve a diminuire il rischio di attacchi di questo genere in scenari differenti, ossia in casi in cui le directory in cui si trovano gli eseguibili in questione si trovino su percorsi non protetti da scrittura/modifica con ACL restrittive, caso che, in installazioni domestiche, non dovrebbe verificarsi mai (c'è un motivo per cui le applicazioni vanno installate nell'apposita cartella programmi e non sparse a muzzo sul disco), e scenari ancora più complessi che coinvolgono WebDAV (tecnologia di cui so molto poco, per cui non so dire bene come rientri nel quadro generale), quindi si parla soprattutto di server.
Consente inoltre un controllo granulare di quest'impostazione, per cui è possibile disabilitare la ricerca nel percorso corrente per tutte le applicazioni tranne quelle poche che ne hanno bisogno, utile per mantenere una certa sicurezza aggiuntiva consentendo tuttavia ad applicazioni legacy di funzionare.

Insomma, la nuova impostazione per un'utenza domestica non porta a vantaggi e migliorie di sicurezza particolari, e, se si seguono le normali buone norme di sicurezza (applicazioni installate nell'apposita cartella e non usare il PC come amministratore con UAC disabilitato), il problema del dll hijacking è davvero poco rilevante.
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 03 Set 2010 08:44    Oggetto: Rispondi

Eppure c'è qualcosa di più di questo, dato che la vulnerabilità esiste ancora su un sistema completamente patchato... vedi ad esempio la scheda di Secunia riguardo FireFox, qui... dice chiaramente

Citazione:
A vulnerability has been discovered in Mozilla Firefox, which can be exploited by malicious people to compromise a user's system.

The vulnerability is caused due to the application loading libraries (e.g. dwmapi.dll) in an insecure manner. This can be exploited to load arbitrary libraries by tricking a user into e.g. opening an HTML file located on a remote WebDAV or SMB share.

Successful exploitation allows execution of arbitrary code.

The vulnerability is confirmed in version 3.6.8 for Windows. Other versions may also be affected.


ovviamente 'Windows' qui sta per 'qualunque versione di Windows, con tutte le patch installate'. E alla fine basta fare andare l'ignaro utente su una share SMB, cosa non per niente difficile. Ed infatti l'unica soluzione, fino a che non verrà risolto il problema, sembra essere la seguente:

Citazione:
Solution
Do not open untrusted files.


che ovviamente è più allarmante che rassicurante Wink
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Sicurezza Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi