Attacchi, prevenzione e rilevamento della vulnerabilità di dirottamento della DLL

Sommario:

Attacchi, prevenzione e rilevamento della vulnerabilità di dirottamento della DLL
Attacchi, prevenzione e rilevamento della vulnerabilità di dirottamento della DLL

Video: Attacchi, prevenzione e rilevamento della vulnerabilità di dirottamento della DLL

Video: Attacchi, prevenzione e rilevamento della vulnerabilità di dirottamento della DLL
Video: Ransomware: attacchi tramite sessioni remote (via RDP), che fare? - YouTube 2024, Aprile
Anonim

DLL sta per Dynamic Link Libraries e sono parti esterne di applicazioni eseguite su Windows o altri sistemi operativi. La maggior parte delle applicazioni non sono complete di per sé e memorizzano il codice in file diversi. Se è necessario il codice, il file correlato 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 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 non può utilizzare determinati codici. Tali codici sono memorizzati in file diversi e vengono richiamati o caricati nella RAM solo quando è richiesto il codice correlato. In questo modo, salva un file dell'applicazione diventando troppo grande e impedisce l'hogging delle risorse da parte dell'applicazione.
I file DLL sono librerie di collegamento dinamico e, come evidente dal nome, sono estensioni di diverse applicazioni. Qualsiasi applicazione che utilizziamo può o non può utilizzare determinati codici. Tali codici sono memorizzati in file diversi e vengono richiamati o caricati nella RAM solo quando è richiesto il codice correlato. In questo modo, salva un file dell'applicazione diventando troppo grande e impedisce l'hogging delle risorse da parte dell'applicazione.

Il percorso per i file DLL è impostato dal sistema operativo Windows. Il percorso è 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ì, passa ad altre cartelle come impostato dalle variabili globali. Ci sono priorità associate ai percorsi e aiuta Windows a determinare quali cartelle cercare le DLL. È qui che entra in gioco il dirottamento DLL.

Cos'è il dirottamento della DLL

Poiché le DLL sono estensioni e sono necessarie per utilizzare quasi tutte le applicazioni sulle macchine, 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.

Come accennato in precedenza, ci sono delle priorità su dove il sistema operativo cerca i file DLL. Per prima cosa, cerca nella stessa cartella della cartella dell'applicazione e quindi effettua la ricerca, in base alle priorità impostate dalle variabili di ambiente del sistema operativo. Così se un file è good.dll nella cartella SysWOW64 e qualcuno pone una bad.dll in una cartella che ha la priorità più alta rispetto a cartella SysWOW64, il sistema operativo utilizzerà il file bad.dll, in quanto ha lo stesso nome della DLL richiesto dall'applicazione. Una volta nella RAM, può eseguire il codice dannoso contenuto nel file e può compromettere il computer o le reti.

Come rilevare il dirottamento DLL

Il metodo più semplice per rilevare e prevenire il dirottamento della DLL consiste nell'utilizzare strumenti di terze parti. Ci sono alcuni buoni strumenti gratuiti disponibili sul mercato che aiutano a rilevare un tentativo di hacking della 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 qualcuno di questi è vulnerabile al dirottamento della DLL. Se lo è, il programma informa l'utente. L'applicazione ha due versioni - x86 e x64 in modo che sia possibile utilizzare ciascuna per scansionare rispettivamente entrambe le applicazioni a 32 bit e 64 bit.

Va notato che i programmi di cui sopra eseguono solo la scansione delle applicazioni sulla piattaforma Windows per le vulnerabilità e non impediscono effettivamente il dirottamento dei file DLL.

Come prevenire il dirottamento della DLL

Il problema dovrebbe essere affrontato dai programmatori in primo luogo in quanto non c'è molto che si possa fare se non per rafforzare i sistemi di sicurezza. Se, invece di un percorso relativo, i programmatori iniziano a utilizzare il percorso assoluto, la vulnerabilità verrà ridotta. Leggendo il percorso assoluto, Windows o qualsiasi altro sistema operativo non dipenderanno variabili di sistema per il percorso e andrà dritto per la DLL previsto, respingendo così le possibilità di caricare lo stesso nome DLL in un percorso priorità maggiore. Questo metodo troppo, non è a prova di fail-perché se il sistema è compromesso, ei criminali informatici conosce il percorso esatto di DLL, che andranno a sostituire la DLL originale con la DLL falso. 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 il percorso assoluto esatto menzionato nell'applicazione che richiede la DLL. Il processo è difficile per i criminali informatici e quindi può essere calcolato.

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

Se stai cercando di risolvere i problemi con i computer, puoi anche eseguire quanto segue per migliorare la tua sicurezza:

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

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

Se si desidera aggiungere qualcosa all'articolo, si prega di commentare qui sotto.

Consigliato: