
DLLirant é uma ferramenta para automatizar as pesquisas de DLL Hijacking em um binário especificado.
DLLirant é uma ferramenta para automatizar as pesquisas de DLL Hijacking e DLL Proxying em um binário especificado.



Selecione o arquivo PE desejado. Se for um .exe, o aplicativo atualmente procurará por DLL Search Order Hijacking; se você selecionar uma DLL, o aplicativo oferecerá a opção de fazer proxy dela.
Em relação à segunda opção, você deve especificar um caminho para a DLL de proxy; esse caminho pode ser especificado de duas maneiras:
Com um nome: isso gerará a DLL de proxy e a renomeará com o nome da DLL selecionada, e o aplicativo copiará a DLL selecionada (original) e a renomeará com o nome que você escolheu.
Com um caminho: essa opção gerará um único arquivo, a DLL de proxy que chamará as funções exportadas da DLL especificada na caixa de texto.
Você também pode criar um diretório import e colocar os arquivos DLL ausentes que seu aplicativo precisar, se necessário (os arquivos DLL serão copiados automaticamente para o diretório output junto com o binário alvo).
Importante
Sobre as mensagens de erro do seu aplicativo alvo, tentei evitar as mensagens de erro, mas você não consegue realmente, porque a messagebox é gerada pelo Sistema via csrss.exe, não pelo aplicativo alvo. Então você pode tentar matar as threads, as janelas filhas, usar SetErrorMode etc... não vai funcionar.
O script criará um diretório de saída no mesmo diretório do DLLirant e copiará o binário alvo para o diretório de saída.
Através da biblioteca PeNet, o script extrairá os nomes das DLLs exigidos pelo binário e testará cada uma das funções de importação disponíveis, uma a uma, compilando uma DLL personalizada com as funções exportadas necessárias.
Se uma função exigida pelo binário for executada, a DLL personalizada criará um arquivo C:\DLLirant\output.txt para confirmar que um DLL Hijacking é possível.
Os PoCs dos DLL Hijackings também serão criados no diretório DLLirant/dll-hijacks.