Malware

Attacchi, prevenzione e rilevamento di vulnerabilità dirottamento DLL DLL

Attacchi, prevenzione e rilevamento di vulnerabilità dirottamento DLL DLL

DLL è l'acronimo di Dynamic Link Libraries e sono parti esterne di applicazioni eseguite su Windows o su qualsiasi altro sistema operativo. La maggior parte delle applicazioni non è completa di per sé e memorizza il codice in file diversi different. Se è necessario il codice, il relativo file viene caricato in memoria e utilizzato. Ciò riduce le dimensioni del file dell'applicazione ottimizzando l'utilizzo della RAM. Questo articolo spiega cos'è Dirottamento DLL DLL e come rilevarlo e prevenirlo.

Cosa sono i file DLL o le librerie di collegamento dinamico?

I file DLL sono librerie di collegamento dinamico e, come è evidente dal nome, sono estensioni di diverse applicazioni. Qualsiasi applicazione che utilizziamo può o meno utilizzare determinati codici. Tali codici vengono memorizzati in file differenti e vengono richiamati o caricati in RAM solo quando è richiesto il relativo codice. Pertanto, salva un file dell'applicazione da diventare troppo grande e per impedire l'hogging delle risorse da parte dell'applicazione.

Il percorso per i file DLL è impostato dal sistema operativo Windows. Il percorso viene impostato utilizzando le variabili ambientali globali. Per impostazione predefinita, se un'applicazione richiede un file DLL, il sistema operativo cerca nella stessa cartella in cui è archiviata l'applicazione. Se non viene trovato lì, va in altre cartelle come impostato dalle variabili globali. Ci sono priorità collegate ai percorsi e aiuta Windows a determinare quali cartelle cercare le DLL. È qui che entra in gioco il dirottamento della DLL.

Che cos'è il dirottamento della DLL?

Poiché le DLL sono estensioni e necessarie per utilizzare quasi tutte le applicazioni sui tuoi computer, sono presenti sul computer in diverse cartelle come spiegato. Se il file DLL originale viene sostituito con un file DLL falso contenente codice dannoso, è noto come Dirottamento DLL DLL.

Come accennato in precedenza, ci sono priorità su dove il sistema operativo cerca i file DLL. Innanzitutto, cerca nella stessa cartella della cartella dell'applicazione e poi effettua la ricerca, in base alle priorità impostate dalle variabili di ambiente del sistema operativo. Quindi se un bene.dll si trova nella cartella SysWOW64 e qualcuno inserisce un errore.dll in una cartella con priorità più alta rispetto alla cartella SysWOW64, il sistema operativo utilizzerà il male.dll, poiché ha lo stesso nome della DLL richiesta dall'applicazione. Una volta nella RAM, può eseguire il codice dannoso contenuto nel file e può compromettere il tuo computer o le tue reti.

Come rilevare il dirottamento della DLL

Il metodo più semplice per rilevare e prevenire il dirottamento della DLL è utilizzare strumenti di terze parti. Ci sono alcuni buoni strumenti gratuiti disponibili sul mercato che aiutano a rilevare un tentativo di hacking DLL e prevenirlo.

Uno di questi programmi è DLL Hijack Auditor ma supporta solo applicazioni a 32 bit. Puoi installarlo sul tuo computer e scansionare tutte le tue applicazioni Windows per vedere quali sono tutte le applicazioni vulnerabili al dirottamento della DLL. L'interfaccia è semplice e autoesplicativa. L'unico inconveniente di questa applicazione è che non è possibile eseguire la scansione di applicazioni a 64 bit.

Un altro programma, per rilevare il dirottamento della DLL, DLL_HIJACK_DETECT, è disponibile tramite GitHub. Questo programma controlla le applicazioni per vedere se qualcuna di esse è vulnerabile al dirottamento della DLL. In caso affermativo, il programma informa l'utente. L'applicazione ha due versioni: x86 e x64 in modo da poter utilizzare ciascuna per eseguire la scansione rispettivamente di applicazioni a 32 e 64 bit.

Va notato che i programmi di cui sopra scansionano semplicemente le applicazioni sulla piattaforma Windows alla ricerca di vulnerabilità e in realtà non impediscono il dirottamento dei file DLL.

Come prevenire il dirottamento della DLL

Il problema dovrebbe essere affrontato in primo luogo dai programmatori poiché non c'è molto che puoi fare se non rinforzare i tuoi sistemi di sicurezza. Se invece di un percorso relativo, i programmatori iniziano a utilizzare un percorso assoluto, la vulnerabilità sarà ridotta. Leggendo il percorso assoluto, Windows o qualsiasi altro sistema operativo non dipenderà dalle variabili di sistema per il percorso e andrà direttamente alla DLL prevista, escludendo così le possibilità di caricare la DLL con lo stesso nome in un percorso con priorità più alta. Anche questo metodo non è a prova di errore perché se il sistema è compromesso e i criminali informatici conoscono il percorso esatto della DLL, sostituiranno la DLL originale con la DLL falsa. Ciò significherebbe sovrascrivere il file in modo che la DLL originale venga modificata in codice dannoso. Ma ancora una volta, il criminale informatico dovrà conoscere l'esatto percorso assoluto menzionato nell'applicazione che richiede la DLL. Il processo è difficile per i criminali informatici e quindi ci si può fare affidamento.

Tornando a ciò che puoi fare, prova a scalare i tuoi sistemi di sicurezza per proteggere meglio il tuo sistema Windows. Usa un buon firewall. Se possibile, usa un firewall hardware o attiva il firewall del router. Usa buoni sistemi di rilevamento delle intrusioni in modo da sapere se qualcuno sta cercando di giocare con il tuo computer.

Se ti interessa la risoluzione dei problemi dei computer, puoi anche eseguire le seguenti operazioni per aumentare la sicurezza:

  1. Disabilita il caricamento della DLL dalle condivisioni di rete remote
  2. Disabilita il caricamento dei file DLL da WebDAV
  3. Disabilita completamente il servizio WebClient o impostalo su manuale
  4. Blocca le porte TCP 445 e 139 poiché sono più utilizzate per compromettere i computer
  5. Installa gli ultimi aggiornamenti del sistema operativo e del software di sicurezza.

Microsoft ha rilasciato uno strumento per bloccare gli attacchi di dirottamento del carico DLL. Questo strumento riduce il rischio di attacchi di dirottamento DLL impedendo alle applicazioni di caricare in modo non sicuro il codice dai file DLL.

Se desideri aggiungere qualcosa all'articolo, commenta qui sotto.

Come utilizzare AutoKey per automatizzare i giochi Linux
AutoKey è un'utilità di automazione desktop per Linux e X11, programmata in Python 3, GTK e Qt. Utilizzando la sua funzionalità di scripting e MACRO, ...
Come mostrare il contatore FPS nei giochi Linux
I giochi Linux hanno avuto una grande spinta quando Valve ha annunciato il supporto Linux per il client Steam e i loro giochi nel 2012. Da allora, mol...
Come scaricare e giocare a Sid Meier's Civilization VI su Linux
Introduzione al gioco Civilization 6 è una versione moderna del concetto classico introdotto nella serie dei giochi Age of Empires. L'idea era abbasta...