Microsoft rilascia Tool per bloccare gli attacchi di dirottamento del carico della DLL
Qualche tempo fa c'erano rapporti su un problema di sicurezza che riguardava circa 40 diverse applicazioni Windows. Microsoft ha rapidamente risposto a tali segnalazioni di potenziali attacchi zero-day contro tali programmi di Windows pubblicando un aggiornamento o uno strumento per bloccare tali exploit. Tuttavia, Microsoft ha anche chiarito che il difetto non è in Windows.
Strumento per bloccare gli attacchi di dirottamento del carico della DLL
Microsoft ha emesso un Security Advisory (2269637) intitolato, Caricamento di librerie non sicuro può consentire l'esecuzione di codice in modalità remota.
"Microsoft è a conoscenza del fatto che sono state pubblicate ricerche che dettagliano un vettore di attacco remoto per una classe di vulnerabilità che influisce sul modo in cui le applicazioni caricano le librerie esterne. Questo problema è causato da specifiche pratiche di programmazione non sicure che consentono i cosiddetti "binary planting" o "attacchi di preloading della DLL". Queste pratiche potrebbero consentire a un utente malintenzionato di eseguire in remoto codice arbitrario nel contesto dell'utente che esegue l'applicazione vulnerabile quando l'utente apre un file da una posizione non sicura. "
Microsoft ha anche rilasciato un aggiornamento che bloccherà il caricamento delle DLL dalle directory remote, impedendo in tal modo i dirottamenti DLL.
Questo aggiornamento introduce una nuova chiave di registro CWDIllegalInDllSearch che consente agli utenti di controllare l'algoritmo del percorso di ricerca DLL. L'algoritmo del percorso di ricerca DLL viene utilizzato dall'API LoadLibrary e dall'API LoadLibraryEx quando le DLL vengono caricate senza specificare un percorso completo.
Quando un'applicazione carica una DLL dinamicamente senza specificare un percorso completo, Windows tenta di individuare questa DLL cercando in un insieme ben definito di directory. Questi insiemi di directory sono noti come percorso di ricerca DLL. Appena Windows individua la DLL in una directory, Windows carica quella DLL. Se Windows non trova la DLL in nessuna delle directory nell'ordine di ricerca DLL, Windows restituirà un errore all'operazione di caricamento della DLL.
Maggiori dettagli e collegamenti per il download su KB2264107.