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
Ferramentas/GitHubGitHub/zimawhit3/bitmancer
Evasão de IDS/IPSShellcodePós-ExploraçãoUtilitários e FrameworksAnálise de BináriosRed TeamingDesenvolvimento de Payloads
GitHubzimawhit3/bitmancer

Bitmancer

Biblioteca Nim para Desenvolvimento de Segurança Ofensiva

Ver Repositório
20021há 2 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

Bitmancer

Bitmancer é uma biblioteca para desenvolvimento de Ferramentas de Segurança Ofensiva para o sistema operacional Windows, escrita em Nim. Ela visa fornecer APIs, rotinas e macros comuns com implementações altamente configuráveis, independentes de posição e autônomas.

Se você está procurando desenvolver um Implant, testar um PoC rápido ou escrever uma ferramenta nova e brilhante - Bitmancer pode ajudar você a começar!

⚠️ Este repositório é atualmente um enorme WIP! Pode haver problemas ao usá-lo e não há garantias de estabilidade por enquanto. ⚠️

Dependências

Bitmancer usa parcialmente winim para seus tipos. Para instalar, execute:

nimble install winim

Instalação

Bitmancer ainda não faz parte do repositório nimble. Por enquanto, você pode instalá-lo a partir do Github simplesmente executando:

nimble install https://github.com/zimawhit3/Bitmancer

Compilação

MingW e Nim introduzirão dependências de MSVCRT e Kernel32, bem como variáveis globais usadas pelo módulo System do Nim. Se você quiser evitar isso para código independente de posição, use o nim.cfg fornecido.

Para compilar: nim c -d:mingw <Your_Nim_File>

Uso

Para todos os módulos:

root@kitploit:~
import Bitmancer

Se você não precisar de rotinas NTDLL ou syscalls, basta usar:

root@kitploit:~
import Bitmancer/core

Apenas para os procedimentos de hash:

root@kitploit:~
import Bitmancer/core/obfuscation/hash

TODOs Atuais:

  • Definições de tempo de compilação simplificadas (YAML?)
  • CI/CD
  • Exemplos
  • Documentação
  • Seed de Hash maior em tempo de compilação
  • Testes!

Recursos

Recursos atualmente suportados:

  • Resolução de Nomes ApiSet
  • APIs comuns (GetProcAddress, GetModuleHandle, GetSystemTime, etc..)
  • Hash
    • Tempo de Compilação
    • Tempo de Execução
  • Manual Mapper
    • Do Disco
    • Da Memória 🚧
      • DLLs 🚧
      • COFFs 🚧
  • NTDLL
    • Syscalls Nt*
    • Procedimentos Rtl*
  • Banco de Dados do NTLoader
    • Listas Ligadas (LDR_DATA_TABLE_ENTRY)
    • Árvores Red-Black (RTL_BALANCED_NODE)
  • Análise e utilitários de Portable Executable
  • Enumeração de SSN
    • Hell's Gate
    • Halo's Gate
    • Tartarus' Gate
    • LdrThunkSignatures
    • ZwCounter
  • Stack Strings
  • Técnicas de Evasão de Syscall
    • Syscalls Diretos
    • Syscalls Indiretos

Recursos futuros que pretendo suportar:

  • Rotinas e Utilitários Anti-Debug
  • Criptografia
  • Tratamento de Exceções
  • Callbacks
    • Instrumentados
    • Nativos
    • VEH
  • Rotinas e Utilitários de Hook
  • Mais wrappers NTDLL
  • Técnicas de Evasão de Sleep
    • Death Sleep
    • CreateTimerQueueTimer
  • Stack Spoofing
  • Técnicas de Evasão de Syscall
    • Tamper

Se houver um recurso/técnica que você gostaria de ver implementado, me avise!

Exemplos

Stack Strings:

root@kitploit:~
var wStr {.stackStringW.} = "Hello!"
var cStr {.stackStringA.} = "World!"

Se você está procurando gerar um wrapper em torno de um syscall que não está disponível atualmente, o fluxo básico é o seguinte:

root@kitploit:~
## Import syscalls
import Bitmancer/syscalls

## For hashing
import Bitmancer/core/obfuscation/hash

## Define your type
type NtClose = proc(h: HANDLE): NTSTATUS {.stdcall, gcsafe.}

## Generate the wrapper
genSyscall(NtClose)

## Define configurations for how to retrieve and execute the syscall

## The procedure's symbol enumeration method - available options are:
## UseEAT - use the export address table to resolve the symbol
## UseIAT - use the import address table to resolve the symbol
## UseLdrThunks - use the NTLoader's LdrThunkSignatures to map a clean NTDLL to resolve symbols from
const symEnum = SymbolEnumeration.UseEAT

## The SSN enumeration method - available options are:
## HellsGate
## HalosGate
## TartarusGate
## ZwCounter
const ssnEnum = SsnEnumeration.HellsGate

## Finally, the execution method - available options are:
## Direct   - use the direct syscall stub
## Indirect - use the indirect syscall stub
const exeEnum = SyscallExecution.Indirect

## Define an ident to use to identify the symbol
const NtCloseHash = ctDjb2 "NtClose"

## Retrive NTDLL
let Ntdll = ? NTDLL_BASE()

## Call ctGetNtSyscall, retrieving the NtSyscall object containing the SSN, pointer to the address of the function
## and a casted stub to your type.
let NtSyscall = ctGetNtSyscall[NtClose](Ntdll, ModuleHandle(NULL), NtCloseHash, symEnum, ssnEnum, exeEnum)

## Finally, call the wrapper!
NtCloseWrapper(h, NtSyscall.wSyscall, NtSyscall.pSyscall, NtSyscall.pFunction)

Veja o exemplo runShellCode para um exemplo completo.
Mais exemplos também podem ser encontrados em ntdll.

Baixar ferramenta
  • Suporte a x86