Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Cheshire — オペレーターUIからLitterBoxペイロード解析を駆動するAdaptix C2サービスプラグイン。 | Kitploit
ツール/GitHubGitHub/blacksnufkin/cheshire
ペネトレーションテストフレームワーク静的分析動的分析 (サンドボックス)エクスプロイトフレームワークマルウェア分析コマンド&コントロールレッドチーミング
GitHubblacksnufkin/cheshire

Cheshire

オペレーターUIからLitterBoxペイロード解析を駆動するAdaptix C2サービスプラグイン。

リポジトリを見る
66444ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

Cheshire Logo

Cheshire

LitterBox を基盤とした Adaptix 向けペイロード事前検証。

Cheshire は Adaptix C2 サービスプラグインであり、Adaptix クライアントと LitterBox サンドボックスを橋渡しします。 Adaptix UI 内から、オペレーターは任意のバイナリを選択し、LitterBox の完全な アナライザチェーン(静的解析 + 動的解析 + 到達可能なすべての EDR プロファイル)に ディスパッチして、Adaptix から離れることなく判定結果が現れるのを確認できます。

名称はプロジェクトのマスコットの系譜に従っています:

  • Adaptix → カメレオン
  • LitterBox → 不機嫌な猫
  • 両者を橋渡しする存在 → Cheshire(ニヤリと笑い、現れたり消えたりし、この先の道が安全かどうかを教えてくれる猫)。

機能

アクションLitterBox エンドポイント結果
ペイロードのアップロードPOST /uploadmd5 + ファイルメタデータ
Run AllPOST /analyze/static/<md5> + /analyze/dynamic/<md5> + /analyze/edr/<profile>/<md5>(×N プロファイル)を並行ゴルーチンで実行Static・Dynamic・全 EDR プロファイルが、それぞれの完了に応じて入力される
静的解析のみ/analyze/static/<md5>YARA / CheckPlz / Stringnalyzer の検出結果
動的解析のみ/analyze/dynamic/<md5>YARA-mem / PE-Sieve / Moneta / Patriot / HSB / RedEdr の検出結果
EDR(複数)プロファイルごとに /analyze/edr/<profile>/<md5> + /api/results/edr/<profile>/<md5> への Phase 2 ポーリングプロファイル別アラート表 + 詳細なアラート情報(理由、MITRE、API、メモリ領域、コールスタック、最終ユーザーモジュール、プロセス、親プロセス、EDR 応答)
クリーンアップDELETE /file/<md5>LitterBox からアップロード・結果フォルダ・サンプル別解析ディレクトリを削除
フリートプローブGET /healthサンドボックスの状態、スキャナ一覧、EDR エージェントの到達可能性 — EDR プロファイルのチェックボックスを駆動

EDR の Phase 2 ポーリングは LitterBox のアダプティブな間隔(基準 2 秒、アラート数が 安定している間は最大 15 秒まで ×1.5 バックオフ、変化があれば 2 秒に復帰)を使用します。 ポーリングの各ティックは progress イベントをクライアントにストリーム配信するため、 ライブの進捗ストリップにアラート数がリアルタイムで増えていく様子を表示できます。


レイアウト

root@kitploit:~
Cheshire/
├── README.md
├── setup_cheshire.sh                       deploy script
└── cheshire_service/
    ├── config.yaml                         service plugin manifest + litterbox_url
    ├── go.mod / go.sum
    ├── Makefile                            builds dist/service_cheshire.so
    ├── pl_main.go                          Go service plugin (HTTP client to LitterBox)
    └── ax_config.axs                       AXScript UI (the dashboard dialog)

Go プラグインは、Adaptix の TsServiceSendDataClient と LitterBox の REST API の間の ステートレスな HTTP リレーです。AXScript ファイルはすべてのレンダリング (判定バナー、検出サマリー、スキャナ別サブタブ、クリックで詳細を表示する EDR アラートテーブル)を担当します。


セットアップ

1. LitterBox を起動する

Cheshire は実行中の LitterBox インスタンスを必要とします(インストール方法は LitterBox リポジトリ を参照)。 到達可能性を確認してください:

root@kitploit:~
curl http://<litterbox-host>:1337/health

2. Cheshire を設定する

cheshire_service/config.yaml を編集して litterbox_url を設定します:

root@kitploit:~
extender_type: "service"
extender_file: "service_cheshire.so"
ax_file: "ax_config.axs"

service_name: "cheshire"
service_config: |
  litterbox_url: "http://192.168.88.128:1337"

litterbox_url がない場合、プラグインはロードされますが、すべてのオペレーター コマンドは "Cheshire is not configured: set litterbox_url in service_config" を 返します。フォールバックのデフォルト値はありません。

3. デプロイ

root@kitploit:~
bash setup_cheshire.sh --ax /path/to/AdaptixC2

このスクリプトは次の処理を行います:

  1. ソースを AdaptixC2/AdaptixServer/extenders/cheshire_service/ にコピーします。
  2. Go ワークスペースに ./extenders/cheshire_service を追加します。
  3. Makefile 経由で service_cheshire.so をビルドします。
  4. ビルドした .so と config.yaml、ax_config.axs を AdaptixC2/dist/extenders/cheshire_service/ にコピーします。

4. Adaptix サーバーに登録する

AdaptixC2/dist/profile.yaml の Teamserver.extenders に 1 行追加します:

root@kitploit:~
extenders:
  - "extenders/cheshire_service/config.yaml"
  ...

5. サーバーを再起動する

root@kitploit:~
pkill -f adaptixserver
cd AdaptixC2/dist
./adaptixserver -profile profile.yaml

サーバーログに [cheshire] Initialized — LitterBox at http://... が表示され、 その後に [+] Service 'cheshire' loaded が続くはずです。

Adaptix クライアントのメニューバーで Cheshire → Test with Cheshire を選択すると、 ダッシュボードが開きます。


ダッシュボード

root@kitploit:~
┌─ Payload ───────────────────────────────────────────────────────────────┐
│  [Browse...]  /home/op/payloads/beacon.exe                              │
├─ EDR Profiles ──────────────────────────────────────────────────────────┤
│  ☑ Elastic Defend   ● reachable     elastic · WIN-VM01 · nightcity      │
│  ☐ Fibratus         ● not reachable fibratus                            │
├─ Dynamic Analysis Args ─────────────────────────────────────────────────┤
│  --quiet -p 4444                                                        │
├─────────────────────────────────────────────────────────────────────────┤
│  [Run All] | [Static] [Dynamic] [EDR] | [Cleanup]    Uploaded: ...      │
├─────────────────────────────────────────────────────────────────────────┤
│  🚫 DETECTED — 5 hit(s) across 2 Static, 1 Dynamic [CRITICAL]           │
│                                              ✓ Static  ✓ Dynamic  🔄 elastic (2) │
├─ Detection Summary ─────────────────────────────────────────────────────┤
│  Severity  | Scanner             | Detection         | Detail           │
│  CRITICAL  | Static · CheckPlz   | Trojan:Win64/...  | offset 0x20EF    │
│  CRITICAL  | Static · YARA       | mimikatz_strings  | matched $sek...  │
│  HIGH      | Dynamic · PE-Sieve  | 3 modifications   | 3 IAT hooks      │
│  ...                                                                    │
├─ Static | Dynamic | EDR ────────────────────────────────────────────────┤
│  per-scanner sub-tabs with stat strip + bordered finding cards          │
└─────────────────────────────────────────────────────────────────────────┘

判定とスコープ

  • スケジュールされたスキャナのいずれかが実行中の間は ⏳ RUNNING — N hit(s) so far が表示されます。
  • スケジュールされたすべてのスキャナが終了状態に達すると 🚫 DETECTED — N hit(s) across X Static, Y Dynamic, Z EDR [maxSev] が表示されます。
  • ✓ CLEAN — 0 critical/high/medium detections は、どのスキャナでも実際のヒットがない場合のみ表示されます。情報提供レベルのシグナル(LOW/INFO)は見出しではなく別途記載されます。
  • オペレーターが Run All ではなく個別のスキャナを実行した場合は (Static only) / (Dynamic + EDR) などが追加され、判定は実際に実行された内容を正直に反映します。

検出サマリー

すべてのスキャナのすべての検出を 1 つのソート可能なテーブルに集約します。 行は LitterBox が実際に返す JSON から抽出されます(一般的なファクター文字列ではありません):

  • 深刻度 + 脅威名 + 最初に一致した文字列識別子を含む YARA / YARA-mem ルール
  • CheckPlz の initial_threat + scan_results.detection_offset
  • Stringnalyzer の危険カテゴリ数
  • PE-Sieve の total_suspicious + インジケーター別カウント
  • Moneta の非ゼロの total_* 異常カウント(Private RWX → CRITICAL など)
  • Patriot の検出ごとの level + type + details の最初の 120 文字
  • HSB の検出ごとの深刻度 + タイプ + スレッド ID
  • category === 'threat' にフィルタリングされた RedEdr Defender イベント
  • EDR アラート: ルール + 深刻度 + プロセス + API サマリー

深刻度の降順、次にスキャナ名の順でソートされます。

自動クリーンアップ

ダイアログを閉じると、現在のサンプルの md5 が DELETE /file/<md5> 経由で LitterBox から削除されます。エンゲージメント間で古いサンプルが蓄積されることはありません。


アーキテクチャ

root@kitploit:~
Adaptix Client (Qt) ──┐
                      │ AXScript service_command("cheshire", "run_all", {...})
                      ▼
Adaptix Server  ──→  service_cheshire.so  ──HTTP──→  LitterBox  ──→  EDR VM
  │                                                       │              │
  │                    streams progress events        Static / Dynamic   │
  │                    + results back via             scanners run on    │
  │                    TsServiceSendDataClient        the LitterBox host │
  ▼                                                       │              │
Adaptix Client renders verdict, detection summary,        │     EDR profile
progress strip, per-scanner detail panels.                ▼     dispatches
                                                  /analyze/edr/<P>/<md5>
                                                  Phase 1: exec on EDR VM
                                                  Phase 2: poll Elastic
                                                          for alerts

Go サービスプラグインは各スキャナのディスパッチを独自のゴルーチンで実行するため、 Run All は Static + Dynamic +(EDR プロファイルごとに 1 つの POST)をすべて並行して 発行します。各ゴルーチンが progress イベントと結果イベントをストリームバックする間、 AXScript ダッシュボードはライブで更新されます。


ライセンス

Cheshire は LitterBox / Adaptix の慣例に従います。詳細は親プロジェクトのライセンスを参照してください。

ツールをダウンロード