Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
NimDllSideload — DLL sideloading/proxying with Nim! | Kitploit
Ferramentas/GitHubGitHub/byt3bl33d3r/nimdllsideload
Payload GenerationPost-ExploitationBinary AnalysisRed TeamingPayload Development
GitHubbyt3bl33d3r/nimdllsideload

NimDllSideload

DLL sideloading/proxying with Nim!

Ver Repositório
17517há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Sideloading de DLLs Nim

Este repositório permite gerar facilmente DLLs Nim que pode utilizar para sideloading / proxy loading. Se não estiver familiarizado com o que é sideloading de DLL, dê uma olhada neste artigo de blog.

Como usar isto?

Coloque a DLL legítima (ou várias DLLs) que pretende usar como proxy no diretório build deste repositório e depois execute make.

Isto irá gerar dois .dlls no diretório out:

  • O de nome aleatório é a DLL original para a qual as chamadas de função serão encaminhadas via proxy
  • O outro será o seu payload

Se o sideloading for bem-sucedido, deverá ver uma caixa de mensagem (popup) e/ou um ficheiro criado no ambiente de trabalho.

Para "weaponizar" realmente o payload, pode dar uma olhada no repositório OffensiveNim para obter ideias e fragmentos de código prontos a usar :).

Como funciona?

  • dllproxy.nim é a DLL de proxy que irá executar o seu payload e encaminhar (proxy) as chamadas de função legítimas para a(s) DLL(s) original(is)
  • gen_def.py analisa a tabela de exportação da DLL original e gera um ficheiro de definição de módulo (.def).

O ficheiro .def é então passado ao linker na altura da compilação, de forma a encaminhar as chamadas de função legítimas.

Bónus - Ocultar NimMain da tabela de exportação de uma DLL Nim

Consulte este artigo da Microsoft

Repare na última linha deste ficheiro .def:

root@kitploit:~
EXPORTS
	GetFileVersionInfoA=ZCnerzNI.GetFileVersionInfoA @1
	GetFileVersionInfoByHandle=ZCnerzNI.GetFileVersionInfoByHandle @2
	GetFileVersionInfoExA=ZCnerzNI.GetFileVersionInfoExA @3
	GetFileVersionInfoExW=ZCnerzNI.GetFileVersionInfoExW @4
	GetFileVersionInfoSizeA=ZCnerzNI.GetFileVersionInfoSizeA @5
	GetFileVersionInfoSizeExA=ZCnerzNI.GetFileVersionInfoSizeExA @6
	GetFileVersionInfoSizeExW=ZCnerzNI.GetFileVersionInfoSizeExW @7
	GetFileVersionInfoSizeW=ZCnerzNI.GetFileVersionInfoSizeW @8
	GetFileVersionInfoW=ZCnerzNI.GetFileVersionInfoW @9
	VerFindFileA=ZCnerzNI.VerFindFileA @10
	VerFindFileW=ZCnerzNI.VerFindFileW @11
	VerInstallFileA=ZCnerzNI.VerInstallFileA @12
	VerInstallFileW=ZCnerzNI.VerInstallFileW @13
	VerLanguageNameA=ZCnerzNI.VerLanguageNameA @14
	VerLanguageNameW=ZCnerzNI.VerLanguageNameW @15
	VerQueryValueA=ZCnerzNI.VerQueryValueA @16
	VerQueryValueW=ZCnerzNI.VerQueryValueW @17
	NimMain @19 NONAME PRIVATE

Esta última linha basicamente diz ao linker para remover o nome da função NimMain. Compilar a DLL e passar o ficheiro .def acima ao linker resulta na seguinte entrada se observarmos a tabela de exportação da .dll:

HiddenNimMain

Baixar ferramenta