Tavis Ormandy (
LoadLibrary se encarrega de carregar a biblioteca na memória e importar os símbolos existentes, fornecendo ao aplicativo Linux uma API estilo dlopen. O código do plug-in pode ser depurado usando gdb, ASAN e Valgrind. É possível ajustar o código executável durante a execução conectando ganchos e aplicando patches (correção em tempo de execução). Suporta tratamento e desenrolamento de exceções para C++.
O objetivo do projeto é organizar testes de difusão distribuídos escaláveis e eficientes de bibliotecas DLL em um ambiente baseado em Linux. No Windows, os testes de difusão e cobertura não são muito eficientes e geralmente exigem a execução de uma instância virtualizada separada do Windows, especialmente ao tentar analisar produtos complexos, como software antivírus que abrangem o kernel e o espaço do usuário. Usando LoadLibrary, os pesquisadores do Google estão procurando vulnerabilidades em codecs de vídeo, scanners de vírus, bibliotecas de descompressão de dados, decodificadores de imagens, etc.
Por exemplo, com a ajuda do LoadLibrary conseguimos portar o mecanismo antivírus do Windows Defender para rodar no Linux. O estudo do mpengine.dll, que forma a base do Windows Defender, tornou possível analisar um grande número de processadores sofisticados para diversos formatos, emuladores de sistemas de arquivos e intérpretes de linguagem que potencialmente fornecem vetores para
LoadLibrary também foi usado para identificar
Fonte: opennet.ru