Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/icyguider/nimcrypt2
Defensive ToolsEncryption/Decryption ToolsPayload GenerationExploitationShellcodeBinary AnalysisRed TeamingShellcode GenerationPayload Development
GitHubicyguider/nimcrypt2

Nimcrypt2

.NET, PE 및 Raw Shellcode Packer/Loader (Nim으로 작성됨)

8241294년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

Nimcrypt2

Nimcrypt2는 또 다른 PE 패커/로더로, AV/EDR 우회를 목적으로 설계되었습니다. 이는 원래 Nimcrypt 프로젝트의 개선판이며, 주요 개선점으로는 직접 시스템 콜(direct syscalls) 사용과 일반 PE 파일 및 원시 셸코드(raw shellcode)를 모두 로드할 수 있는 기능이 있습니다.

더 나아가기 전에, 이 프로젝트가 의존하는 연구와 작업의 대부분을 수행한 분들에게 감사를 표해야 합니다. 먼저, @byt3bl33d3r님의 Offensive Nim 저장소와 @ShitSecure님이 공개적으로 제공한 여러 코드 조각들에 감사드립니다. 이 도구의 원래 버전이 이들로부터 만들어졌으며, 현재 버전도 마찬가지입니다. 특히, 이 도구에 사용된 새로운 PE 로딩 기능은 ShitSecure님이 최근 공개한 Nim-RunPE 코드의 구현체입니다. 2022년 3월 14일 기준으로, 이 코드는 동적 시스템 콜 사용을 위해 그의 GetSyscallStub 코드도 사용합니다. 그의 Nim PE Packer에 접근할 수 있도록 후원하는 것을 적극 권장합니다. 이는 의심할 여지없이 이 프로젝트보다 훨씬 더 훌륭하고 기능이 풍부한 버전입니다.

또한, @ajpc500님의 NimlineWhispers2 프로젝트에 감사드립니다. 이 프로젝트는 직접 시스템 콜을 위해 사용됩니다. 이 프로젝트는 단순히 앞서 언급된 분들의 공개 작업을 결합한 것임을 강조하고 싶습니다. 모든 공로는 그들에게 있습니다.

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

기능:

  • PPID 스푸핑 및 타사 DLL 차단을 포함한 NtQueueApcThread 셸코드 실행
  • 시스템 콜 사용을 위한 NimlineWhispers2 및 GetSyscallStub
  • 시스템 콜 이름 랜덤화
  • .NET 및 일반 PE 파일 로드 기능
  • 동적 키 생성과 AES 암호화
  • LLVM-Obfuscator 호환성
  • 문자열 암호화
  • 샌드박스 회피

테스트 및 확인된 작동 환경:

  • 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)

설치/의존성:

Nimcrypt2는 Nim이 설치된 Linux 시스템에서 사용하도록 설계되었습니다. Nim을 설치하기 전에 패키지 관리자를 통해 다음 패키지가 설치되어 있는지 확인해야 합니다:

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

Nim을 설치하려면 choosenim을 다음과 같이 사용하는 것을 선호합니다:

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는 또한 Nimble을 통해 설치할 수 있는 몇 가지 패키지에 의존합니다. 다음과 같이 설치할 수 있습니다:

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

이제 모든 의존성이 설치되었으므로, Nimcrypt2는 다음과 같이 컴파일할 수 있습니다:

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

선택 사항: Obfuscator-LLVM 플래그를 사용하려면 시스템에 Obfuscator-LLVM과 wclang이 모두 설치되어 있어야 합니다. 약간 번거롭지만 조금만 인내심을 가지면 가능할 것입니다. 제 Kali Linux 시스템에서 작동했던 빠른 단계별 가이드는 다음과 같습니다:

  1. 원하는 Obfuscator-LLVM 버전을 클론하고 빌드합니다.
  2. 컴파일이 완료되면 기존 clang을 백업하고 새 Obfuscator-LLVM 버전의 clang을 /usr/bin/으로 이동합니다.
  3. wclang을 설치하고 PATH에 바이너리를 추가합니다.
  4. 기존 clang 라이브러리 파일을 백업하고 새로 빌드된 Obfuscator-LLVM 라이브러리 includes를 /usr/lib/clang/OLD_VERSION/에 복사합니다.

또한, nim을 wclang 바이너리로 연결하기 위해 nim.cfg 파일에 다음 줄을 추가해야 합니다:

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++"

아마 더 좋은 방법이 있을 수 있지만, 이것이 저에게 작동한 방법입니다. 문제가 있으면 계속 시도하고 x86_64-w64-mingw32-clang -v를 실행했을 때 출력에 "Obfuscator-LLVM"이 표시되는지 확인하십시오. 또한 MinGW가 Obfuscator-LLVM 라이브러리 파일을 사용하는지 확인하십시오. 그렇지 않으면 Nim이 오류를 발생시킵니다.

알려진 버그:

  • ShitSecure가 설명한 바와 같이, PE 로더를 통해 mimikatz의 릴리스 버전을 로드하면 알 수 없는 이유로 명령을 수락하지 않습니다. 소스에서 컴파일된 mimikatz 버전을 사용하면 이 문제가 해결됩니다.

감사 및 크레딧:

  • @byt3bl33d3r님의 Offensive Nim 프로젝트: https://github.com/byt3bl33d3r/OffensiveNim
  • @ShitSecure님의 Nim-RunPE 프로젝트: https://github.com/S3cur3Th1sSh1t/Nim-RunPE
  • @ShitSecure님의 GetSyscallStub 프로젝트: https://github.com/S3cur3Th1sSh1t/NimGetSyscallStub
  • @ajpc500님의 NimlineWhispers2 프로젝트: https://github.com/ajpc500/NimlineWhispers2
  • @Snovvcrash님의 NimHollow 프로젝트: https://github.com/snovvcrash/NimHollow
도구 다운로드