Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Nimcrypt2 — .NET, PE und Raw Shellcode Packer/Loader, geschrieben in Nim | Kitploit
Tools/GitHubGitHub/icyguider/nimcrypt2
DefensivwerkzeugeVerschlüsselungs-/EntschlüsselungstoolsPayload-GenerierungExploitationShellcodeBinäranalyseRed TeamingShellcode-GenerierungPayload-Entwicklung
GitHubicyguider/nimcrypt2

Nimcrypt2

.NET, PE und Raw Shellcode Packer/Loader, geschrieben in Nim

82412910vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Repository anzeigen
Teilen

Nimcrypt2

Nimcrypt2 ist ein weiterer PE-Packer/Loader, der entwickelt wurde, um AV/EDR zu umgehen. Es ist eine Verbesserung meines ursprünglichen Nimcrypt-Projekts, wobei die wichtigsten Verbesserungen die Verwendung direkter Syscalls und die Möglichkeit zum Laden regulärer PE-Dateien sowie von rohem Shellcode sind.

Bevor ich weitergehe, muss ich diejenigen würdigen, die den GRÖSSTEN Teil der Arbeit und Forschung geleistet haben, auf der dieses Projekt basiert. Zunächst möchte ich @byt3bl33d3r für sein Offensive Nim Repo danken, sowie @ShitSecure für all die Code-Snippets, die er öffentlich veröffentlicht hat. Daraus wurde die ursprüngliche Version dieses Tools erstellt, und die aktuelle Version ist nicht anders. Insbesondere die neue PE-Ladefunktionalität, die in diesem Tool verwendet wird, ist lediglich eine Implementierung von ShitSecures kürzlich veröffentlichtem Nim-RunPE-Code. Seit dem 14.03.2022 verwendet dieser Code auch seinen GetSyscallStub-Code für die dynamische Syscall-Nutzung. Ich empfehle dringend, ihn zu sponsorn, um Zugang zu seinem eigenen Nim PE Packer zu erhalten, der zweifellos eine viel bessere und funktionsreichere Version davon ist.

Darüber hinaus möchte ich @ajpc500 für sein NimlineWhispers2-Projekt danken, das dieses Tool für direkte Syscalls verwendet. Ich kann nicht genug betonen, wie sehr dieses Projekt lediglich eine Zusammenstellung der öffentlichen Arbeit der zuvor Genannten ist. Daher gebührt ihnen alle Anerkennung.

root@kitploit:~
                      ___                                           
                   .-'   `'.                                        
                  /         \                                       
                  |         ;                                       
                  |         |           ___.--,                     
         _.._     |0) ~ (0) |    _.---'`__.-( (_.                   
  __.--'`_.. '.__.\    '--. \_.-' ,.--'`     `""`                   
 ( ,.--'`   ',__ /./;   ;, '.__.'`    __                            
 _`) )  .---.__.' / |   |\   \__..--""  ""'--.,_                    
`---' .'.''-._.-'`_./  /\ '.  \ _.-~~~````~~~-._`-.__.'             
      | |  .' _.-' |  |  \  \  '.               `~---`              
       \ \/ .'     \  \   '. '-._)                                  
        \/ /        \  \    `=.__`~-.   Nimcrypt v2               
   jgs  / /\         `) )    / / `"".`\                             
  , _.-'.'\ \        / /    ( (     / /  3-in-1 C#, PE, & Raw Shellcode Loader
   `--~`   ) )    .-'.'      '.'.  | (                              
          (/`    ( (`          ) )  '-;                             
           `      '-;         (-'                                   

Nimcrypt v 2.0

Usage:
  nimcrypt -f file_to_load -t csharp/raw/pe [-o <output>] [-p <process>] [-n] [-u] [-s] [-e] [-g] [-l] [-v] [--no-ppid-spoof]
  nimcrypt (-h | --help)

Options:
  -h --help     Show this screen.
  --version     Show version.
  -f --file filename     File to load
  -t --type filetype     Type of file (csharp, raw, or pe)
  -p --process process   Name of process for shellcode injection
  -o --output filename   Filename for compiled exe
  -u --unhook            Unhook ntdll.dll
  -v --verbose           Enable verbose messages during execution
  -e --encrypt-strings   Encrypt strings using the strenc module
  -g --get-syscallstub   Use GetSyscallStub instead of NimlineWhispers2
  -l --llvm-obfuscator   Use Obfuscator-LLVM to compile binary
  -n --no-randomization  Disable syscall name randomization
  -s --no-sandbox        Disable sandbox checks
  --no-ppid-spoof        Disable PPID Spoofing
Tool herunterladen

Funktionen:

  • NtQueueApcThread Shellcode-Ausführung mit PPID-Spoofing & Blockierung von Drittanbieter-DLLs
  • NimlineWhispers2 & GetSyscallStub für Syscall-Nutzung
  • Syscall-Namensrandomisierung
  • Möglichkeit zum Laden von .NET- und regulären PE-Dateien
  • AES-Verschlüsselung mit dynamischer Schlüsselerzeugung
  • LLVM-Obfuskator-Kompatibilität
  • Zeichenkettenverschlüsselung
  • Sandbox-Umgehung

Getestet und bestätigt funktionsfähig unter:

  • Windows 11 (10.0.22000)
  • Windows 10 21H2 (10.0.19044)
  • Windows 10 21H1 (10.0.19043)
  • Windows 10 20H2 (10.0.19042)
  • Windows 10 19H2 (10.0.18363)
  • Windows Server 2019 (10.0.17763)

Installation/Abhängigkeiten:

Nimcrypt2 ist für die Verwendung auf Linux-Systemen mit installiertem Nim ausgelegt. Bevor Sie Nim installieren, müssen Sie sicherstellen, dass die folgenden Pakete über Ihren Paketmanager installiert sind:

root@kitploit:~
sudo apt install gcc mingw-w64 xz-utils git

Um Nim zu installieren, verwende ich bevorzugt choosenim wie folgt:

root@kitploit:~
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
echo "export PATH=$HOME/.nimble/bin:$PATH" >> ~/.bashrc
export PATH=$HOME/.nimble/bin:$PATH

Nimcrypt2 hängt auch von einigen Paketen ab, die über Nimble installiert werden können. Dies kann wie folgt erfolgen:

root@kitploit:~
nimble install winim nimcrypto docopt ptr_math strenc

Nachdem alle Abhängigkeiten nun installiert sind, kann Nimcrypt2 wie folgt kompiliert werden:

root@kitploit:~
nim c -d=release --cc:gcc --embedsrc=on --hints=on --app=console --cpu=amd64 --out=nimcrypt nimcrypt.nim

OPTIONAL: Um das Flag Obfuscator-LLVM zu verwenden, muss es zusammen mit wclang auf Ihrem System installiert sein. Ich fand das etwas mühsam, aber mit etwas Ausdauer sollte es machbar sein. Hier ist eine kurze Schritt-für-Schritt-Anleitung, die auf meinem Kali Linux-System funktioniert hat:

  1. Klonen Sie die gewünschte Version von Obfuscator-LLVM und bauen Sie sie
  2. Sobald kompiliert, sichern Sie die vorhandene Version von clang und verschieben Sie die neue Obfuscator-LLVM-Version von clang nach /usr/bin/
  3. Installieren Sie wclang und fügen Sie dessen Binärdateien zu Ihrem PATH hinzu
  4. Sichern Sie vorhandene clang-Bibliotheksdateien, kopieren Sie die neu erstellten Obfuscator-LLVM-Bibliotheksincludes nach /usr/lib/clang/OLD_VERSION/

Darüber hinaus müssen Sie die folgenden Zeilen zu Ihrer nim.cfg-Datei hinzufügen, um Nim auf Ihre wclang-Binärdateien zu verweisen:

root@kitploit:~
amd64.windows.clang.exe = "x86_64-w64-mingw32-clang"
amd64.windows.clang.linkerexe = "x86_64-w64-mingw32-clang"
amd64.windows.clang.cpp.exe = "x86_64-w64-mingw32-clang++"
amd64.windows.clang.cpp.linkerexe = "x86_64-w64-mingw32-clang++"

Es gibt wahrscheinlich einen besseren Weg, dies zu tun, aber das hat bei mir funktioniert. Wenn Sie Probleme haben, versuchen Sie es weiter und stellen Sie sicher, dass Sie x86_64-w64-mingw32-clang -v ausführen können und dass "Obfuscator-LLVM" in der Ausgabe erscheint. Stellen Sie außerdem sicher, dass MinGW die Obfuscator-LLVM-Bibliotheksdateien verwendet: Nim gibt Ihnen sonst einen Fehler aus.

Bekannte Fehler:

  • Wie von ShitSecure beschrieben, akzeptiert die Release-Version von mimikatz, wenn sie über den PE-Loader geladen wird, aus unbekannten Gründen keine Befehle. Die Verwendung einer aus dem Quellcode kompilierten Version von mimikatz behebt dieses Problem.

Grüße & Danksagungen:

  • @byt3bl33d3r für ihr Offensive Nim-Projekt: https://github.com/byt3bl33d3r/OffensiveNim
  • @ShitSecure für ihr Nim-RunPE-Projekt: https://github.com/S3cur3Th1sSh1t/Nim-RunPE
  • Nochmals @ShitSecure für ihr GetSyscallStub-Projekt: https://github.com/S3cur3Th1sSh1t/NimGetSyscallStub
  • @ajpc500 für ihr NimlineWhispers2-Projekt: https://github.com/ajpc500/NimlineWhispers2
  • @Snovvcrash für ihr NimHollow-Projekt: https://github.com/snovvcrash/NimHollow