
DLLirant è uno strumento per automatizzare le ricerche di DLL Hijacking su un binario specificato.
DLLirant è uno strumento per automatizzare le ricerche di DLL Hijacking e DLL Proxying su un binario specificato.



Seleziona il file PE desiderato. Se è un .exe, l'applicazione ricercherà al momento DLL Search Order Hijacking; se selezioni una DLL, l'applicazione ti offrirà di farne il proxy.
Per quanto riguarda la seconda opzione, devi specificare un percorso per la DLL proxy; questo percorso può essere specificato in due modi:
Con un nome: verrà generata la DLL proxy e rinominata con il nome della DLL selezionata, e l'applicazione copierà la DLL selezionata (originale) rinominandola con il nome che hai scelto.
Con un percorso: questa opzione genererà un singolo file, la DLL proxy che chiamerà le funzioni esportate dalla DLL specificata nel campo di testo.
Puoi anche creare una directory import e inserire i file DLL mancanti di cui la tua applicazione ha bisogno, se necessario (i file DLL verranno copiati automaticamente nella directory output insieme al binario target).
Importante
Riguardo ai messaggi di errore dell'applicazione target, ho provato a evitarli, ma non è possibile davvero perché la messagebox viene generata dal Sistema tramite csrss.exe, non tramite l'applicazione target; quindi puoi provare a terminare i thread, le finestre figlie, usare SetErrorMode ecc... non funzionerà.
Lo script creerà una directory di output nella stessa directory di DLLirant e copierà il binario target nella directory di output.
Tramite la libreria PeNet, lo script estrarrà i nomi delle DLL richiesti dal binario e testerà ciascuna funzione importata disponibile una per una compilando una DLL personalizzata con le funzioni esportate richieste.
Se una funzione richiesta dal binario viene eseguita, la DLL personalizzata creerà un file C:\DLLirant\output.txt per essere certi che un DLL Hijacking sia possibile.
I PoC dei DLL Hijacking verranno creati anche nella directory DLLirant/dll-hijacks.