Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
voidsyscall — クロスプラットフォームのシステムコール駆動型インプラント&C2 — ダイレクトシステムコール(Win)、rawシステムコール(Linux)、HTTPS/DNS/ICMPチャネル。winapiレイヤーなし。 | Kitploit
ツール/GitHubGitHub/voidsecsoftwares/voidsyscall
特権昇格暗号化/復号化ツール永続化メカニズムIDS/IPS回避横移動ポストエクスプロイトマルウェア分析ペネトレーションテストコマンド&コントロールレッドチーミングペイロード開発リモートアクセストロイの木馬
6471051ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
GitHubvoidsecsoftwares/voidsyscall

voidsyscall

クロスプラットフォームのシステムコール駆動型インプラント&C2 — ダイレクトシステムコール(Win)、rawシステムコール(Linux)、HTTPS/DNS/ICMPチャネル。winapiレイヤーなし。

リポジトリを見る

voidsyscall

go license platform c2 syscalls

English | 简体中文 | 조선어 | Русский

WinAPI を一切使わない。すべての NT プリミティブは実行時にメモリ上の ntdll から解決され、 SYSCALL 命令は Plan9 アセンブリのスタブを介して直接発行される。インポートテーブルはなく、 ntdll のユーザーモードフックにも一切触れない。C2 は HTTPS / DNS / ICMP 経由、メッセージごとに AES-256-GCM。Windows ネイティブ。Linux ビルド。macOS ビルド。

これは syscall ラッパーライブラリではない。コードのインジェクションからファイルの読み取り、 レジストリへの永続化に至るまで、あらゆる操作が起動時に現在の ntdll エクスポートテーブルから 解決された生の Nt* syscall を通じて行われる、完全なインプラントフレームワークである。 バイナリ内に WinAPI 呼び出しは存在しない。EDR がユーザーモードでフックできるものは何もない。


内部の仕組み

Syscall エンジン

  • 実行時 SSN 解決: PEB → LDR → ntdll ベース → PE エクスポートテーブル → djb2 ハッシュ照合 → B8 xx xx 00 00 0F 05(直接)または 4C 8B D1 B8 xx xx 00 00 0F 05(Hells Gate)のプロローグスキャン。すべての関数名は コンパイル時にハッシュ化される — バイナリ内に平文文字列は存在しない。
  • 直接 syscall: Plan9 asm(asm_amd64.s)が SSN を EAX にロードし、 7 つの引数を手動で設定して SYSCALL を実行する。RAX/RDX 経由で戻る。
  • 間接 syscall: ntdll 内の 0F 05 C3 ガジェット(syscall;ret)を特定し、 それを介して呼び出す。CPU トラップは ntdll 内で発生する — コールスタックには インプラントのフレームではなく ntdll のフレームが表示される。ユーザーモードフックは生き残れない。
  • SSN フィンガープリント: 現在の ntdll ビルドから解決されたすべての SSN をダンプし、 フィンガープリントハッシュを生成する。16 進数でエクスポートし、別のマシンでインポートできる。 ビルドの不一致を、それが問題を引き起こす前に検出する。
  • アンフック: .text を RWX にロックし、ディスクマップされた ntdll から元のバイト列を コピーし、保護を復元し、icache をフラッシュし、SSN キャッシュを破棄する。 あらゆる EDR が仕掛けたユーザーモードフックはすべて消える。

インジェクション — 4 つの手法、ポリモーフィックなローテーション

エージェントはインジェクション手法を自動的にローテーションする。各呼び出しは 異なる手法を使用する — フォレンジック上、2 つのインジェクションが同じに見えることはない。

手法仕組みステルス性の理由
セクションマッピングNtCreateSection → NtMapViewOfSection(リモート) → NtCreateThreadExVAD に RWX 割り当てが存在しない。セクションはファイルバッキングされる。メモリスキャナには PAGE_EXECUTE_READ が見え、PAGE_EXECUTE_READWRITE は見えない。
プロセスホロウNtCreateUserProcess(サスペンド状態) → NtSuspendProcess → イメージベースをゼロ化 → シェルコードを割り当てて書き込み → NtSetContextThread(RIP = シェルコード) → NtResumeProcessプロセスはタスクマネージャ上で正規の svchost.exe として表示される。異なるのはメモリ内容のみ。
APC キューイングNtQuerySystemInformation でスレッドを列挙 → NtOpenThread → NtQueueApcThread新しいスレッドは作成されない。新しい TEB もない。新しいスタック割り当てもない。スレッドがアラータブル待機に入ったときに発火する。
モジュールスタンピングターゲット内に割り当て → 最小限の PE ヘッダ + シェルコードを書き込み → エントリポイントで NtCreateThreadExモジュールリストにはもっともらしい DLL 名が表示される。PE ヘッダはモジュール列挙を欺くのに十分な妥当性を持つ。

対解析 — 13 以上の検出手法

すべてのチェックを実行し、スコア付きの脅威レポートを返す。Critical 時には自動破棄。

チェック手法
VM検出CPUIDリーフ0x40000000のハイパーバイザ署名スキャン(VMware、VirtualBox、Hyper-V、KVM、Xen、QEMU、Parallels)+ リーフ0x40000001のフォールバック
サンドボックス検出CPU数、レジストリアーティファクト(VMware Tools、VBox Guest Additions、VMware/VBoxサービス)、サンドボックスプロセススキャン(30以上の既知の名前:wireshark、procmon、x64dbg、idaなど)
デバッガ検出PEB.BeingDebugged、PEB.NtGlobalFlag、ヒープデバッグフラグ、ProcessDebugPort、ProcessDebugObjectHandle、ProcessDebugFlags、ハードウェアブレークポイントDR0-7、タイミングによるシングルステップチェック
タイミング異常RDTSCベース:NtQuerySystemInformationレイテンシの50サンプル、平均/標準偏差、サンプルの10%超が3σ分散を超えた場合にフラグ。計測オーバーヘッドを捕捉。
PEB回避BeingDebugged、NtGlobalFlag、ProcessHeapフラグ、DebugPort、ThreadHideFromDebuggerをパッチ — すべてGSセグメント読み取り + NtWriteVirtualMemory経由。API呼び出しなし。

トークン操作

すべてNt*システムコール経由、WinAPIなし。

  • EnablePrivilege(index) — LUIDで任意の特権を設定
  • EnableAllTokenPrivileges() — 一度に20の特権(Debug、Impersonate、TCB、Backup、Restoreなど)
  • GetProcessTokenIntegrityLevel() — 強制整合性レベルを照会
  • StealProcessToken(pid) — 別プロセスのトークンを開いて複製
  • ImpersonateThread() / RevertToSelf()

VAD操作

  • EnumVirtualMemory() — NtQueryVirtualMemory経由ですべての仮想領域を走査
  • FindWritableExecRegions() — PAGE_EXECUTE_READWRITEでコミットされた領域を検索
  • HideRegion() — PAGE_NOACCESSを設定してスキャナからメモリを隠す
  • UnhideRegion() — 元の保護を復元

ファイルI/O — すべてNt*システムコール

NtCreateFile → NtReadFile / NtWriteFile → NtClose。CreateFileA、 ReadFile、WriteFile、DeleteFileWの呼び出しはゼロ。ReadFileContents()、 WriteFileContents()、DeleteFileNt()、FileExists()。

レジストリ永続化 — すべてNt*システムコール

NtCreateKey → NtSetValueKey。AddRunKeyPersistence()、RemoveRunKeyPersistence()。 RegCreateKeyEx、RegSetValueEx、その他Advapi32呼び出しは一切なし。

ハンドル操作

  • EnumerateSystemHandles() — NtQuerySystemInformation(SystemHandleInformation)経由で システム内のすべてのオープンハンドルを取得
  • FindEDRHandles() — 所有者PIDを30以上の既知のEDRプロセス名 (MsSense、CrowdStrike、Sentinel、Cylance、Carbon Blackなど)と照合
  • CloseEDRHandles() — EDRがあなたのプロセスに配置した監視ハンドルを 閉じる
  • IsProcessMonitored() — ブール値チェック:監視されているか?

メモリ暗号化

  • Vault:タイマーによる自動再鍵生成を備えたインメモリXOR暗号。 平文が生のまま保存されることはない。再鍵生成は復号 → 新しい鍵を生成 → 再暗号化。再鍵生成間隔の間のフォレンジックヒープダンプはゴミデータになる。
  • SecureDelete:NtFreeVirtualMemoryの前に3パスワイプ(ランダム → ゼロ → 1 → ゼロ)。
  • StackEncrypt:スタック割り当てバッファをリターン前に暗号化。 スタックフレームの再利用によりフォレンジックが信頼できなくなる。

AMSI / ETW / 回避パッチ

  • PatchAMSI() — AmsiScanBuffer → MOV EAX, 0; RET
  • PatchETW() — EtwEventWrite → RET
  • PatchNtTraceEvent() — NtTraceEvent → RET
  • PatchDbgUiRemoteBreakin() — スレッドブレークイン → RET
  • PatchInstrumentationCallbacks() — ThreadHideFromDebugger

C2チャネル

チャネルワイヤフォーマット前提条件
HTTPSバイナリPOST、カスタムフレーミング、ランダム化されたUA/パスTLS証明書
DNS<idx>-<total>-<base32>サブドメイン、TXTレスポンスDNS解決
ICMPv4エコーリクエスト/リプライのID+seqにペイロードrawソケット(root/Admin)

すべてのチャネルはChannelインターフェースを実装。NTP、DoH、TURNの追加は インターフェースを実装するだけで、エージェントの変更はゼロ。

暗号

メッセージごとのAEADとしてAES-256-GCM。メッセージごとに一意の12バイトナンス。インプラントごとの キーリング。パスフレーズベースの鍵導出が利用可能。3つのテスト、すべて合格。


レイアウト

voidsyscall/
  syscallwin/          Direct/indirect NT syscalls + evasion
    asm_amd64.s        Syscall/IndirectSyscall/ReadGSBase/SetGSBase/asm_cpuid/asm_rdtsc
    resolve.go         PEB→LDR→ntdll walk, PE export parse, SSN cache, prologue scan
    stubs.go           ~25 Nt* wrappers, DirectSyscall, IndirectSyscallByHash
    hash.go            djb2 hash (string + UTF-16 pointer)
    constants.go       MEM_*, PAGE_*, THREAD_*, TOKEN_*, OBJ_*, REG_*, FILE_*, STATUS_*
    unhook.go          UnhookNtdll, SelfDel
    peb.go             PEB patching (BeingDebugged, NtGlobalFlag, Heap, DebugPort)
    token.go           Privilege escalation, token theft, impersonation
    vad.go             VAD enumeration, hide/unhide regions
    files.go           File I/O via Nt* syscalls
    registry.go        Registry persistence via Nt* syscalls
    fingerprint.go     SSN dump, build fingerprint, hex export/import
    inject_advanced.go 4 injection methods: section mapping, hollow, APC, module stomp
    antianalysis.go    VM/sandbox/debug/timing detection, scored threat report
    handles.go         System handle enumeration, EDR handle killer
    memcrypt.go        Vault (re-keying XOR), SecureDelete, StackEncrypt, WipeMemory
  syscallnix/          Linux/darwin raw syscalls
  patches/             AMSI, ETW, NtTraceEvent, DbgUiRemoteBreakin, InstrumentationCallbacks
  loader/              CreateThread/APC/module-stomp injection
  channels/            HTTP, DNS (TXT), ICMP — Channel interface
  crypto/              AES-256-GCM, envelope, passphrase variant (3 tests)
  server/              SessionManager, Task Queue, interactive REPL
  agent/               Config, beacon loop, 10 task handlers
  cmd/server/main.go   CLI with REPL
  cmd/agent/main.go    Windows-only entrypoint

ビルド

ツールをダウンロード