OffensiveNim
Meus experimentos em armar Nim para desenvolvimento de implants e operações ofensivas em geral.
Índice
Por que Nim?
- Compila diretamente para C, C++, Objective-C e Javascript.
- Como não depende de uma VM/runtime, não produz o que gosto de chamar de "M A L W A R E S G R O S S O S" ao contrário de outras linguagens (ex.: Golang)
- Sintaxe inspirada em Python, permite criação rápida de payloads nativos e prototipagem.
- Tem capacidades de FFI (Interface de Função Estrangeira) extremamente maduras.
- Evita ter que escrever em C/C++ e, consequentemente, evita introduzir muitos problemas de segurança no seu software.
- Cross compilation super fácil para Windows a partir de *nix/MacOS, basta instalar o toolchain
mingw e passar uma única flag para o compilador Nim.
- O compilador Nim e os executáveis gerados suportam todas as principais plataformas, como Windows, Linux, BSD e macOS. Pode até compilar para Nintendo Switch, IOS e Android. Veja a seção de cross-compilation no guia de uso do compilador Nim
- Você tecnicamente poderia escrever seu implant e backend c2 ambos em Nim, já que pode compilar seu código diretamente para Javascript. Ainda tem algum suporte inicial para WebAssembly
Exemplos neste repositório que funcionam