Nightcrawler v0.1.0: スマートフォン向け自律型ローカルAIペンテスティング・エージェント

Nightcrawler v0.1.0は、スマートフォン上で完全に動作するように設計された自律型ペネトレーションテスト・エージェントです。これにより、レッドチームは、クラウド接続やインターネットアクセスを必要とせずに、ホストの発見、サービスのマップ作成、および脆弱性の特定を行う「ドロップボックス」デバイスを配備することが可能になります。ローカルLLMと一連のセキュリティツールを組み合わせることで、プロフェッショナルなペンテストの偵察およびエクスプロイトフェーズを自動化しつつ、隠密性を維持します。

ローカルAIアーキテクチャとパフォーマンス

Nightcrawlerは、運用上の決定を下すために、デバイスのGPU上で動作する小規模パラメータのAIモデルを利用します。現在のプロダクション構成では、LFM2.5-1.2B-Instruct-Hereticモデルを使用し、Q8_0に量子化され、Adreno 650 GPU(OnePlus 8でテスト済み)上でOpenCLを介して動作します。

推論ベンチマーク

Model Quantization Prompt Speed Generation Speed
LFM2.5-1.2B-Instruct-Heretic Q8_0 115 tok/s 13 tok/s
Qwen3.5-0.8B Q8_0 30.5 tok/s 6.3 tok/s
Qwen3.5-4B Q4_0 10.1 tok/s 2.0 tok/s

Androidのバッテリー駆動時におけるネイティブなGPUスロットリングに対抗するため、Nightcrawlerは、最大パフォーマンスを強制し、バッテリーが15%以下に低下した場合にのみ自動的にスロットリングを戻すGPU governor daemonを実装しています。

自律型ペンテスティング・ワークフロー

エージェントは、ターゲットの選択、推論、および実行の連続的なループを通じて動作します。侵入検知システム(IDS)による検知を避けるため、ホストをローテーションさせ、1ターンにつき1つのアクションを実行することで、忍耐強い人間のペンテスターを模倣するように設計されています。

運用パイプライン

  1. WiFi Breach (Optional): ネットワークアクセスがない状態で配備された場合、エージェントは外部USB WiFiアダプターを使用してWPA2ネットワークを自律的にクラックできます。
  2. Reconnaissance: エージェントは、ローカルネットワーク上のデバイスを発見するために隠密なスキャンを実行します。
  3. Enumeration: SSH、DNS、およびWebサーバーなどの発見されたサービスを調査します。
  4. Exploitation: エージェントは、24,956個のCVEと27個のマルチステップ・エクスプロイト・プレイブックを使用して、既知の脆弱性とデフォルトの認証情報をテストします。
  5. Reporting: すべての調査結果と修正アドバイスを含む、構造化されたレポートが生成されます。

エージェントの決定ロジック

1.2Bモデルはコマンドの成功率が約50%であるため、システムは広範なリカバリー・エンジニアリングに依存しています:

  • Garbage Detection: 5回連続で失敗した場合、多様なfew-shot例を用いてコンテキストのリセットをトリガーします。
  • Stuck Detection: 5分間のバックストップにより、無限ループを防ぐためにコンテキストのリセットを強制します。
  • Deterministic Playbooks: 複雑なマルチステップ攻撃は、信頼性を確保するためにLLMを完全にバイパスします。
  • Duplicate Detection: アクションが繰り返される場合、エージェントはツールの使用とターゲットを多様化するように強制されます。

システム設計と安全レイヤー

Nightcrawlerは、安全性と安定性を確保するために、「脳」(LLM)と「手」(ツール実行)を分離しています。

Scope Enforcement Proxy

LLMによって生成されたすべてのコマンドは、Scope Proxyを通過しなければなりません。この安全レイヤーは、定義されたミッションのスコープ(ネットワーク、除外されたホスト、および除外されたポート)に対してコマンドを検証し、破壊的なコマンドをコマンドフィルターを介してKali MCPサーバーに到達する前にブロックします。

Technical Stack

  • OS: Android with Kali NetHunter (MagiskによるRootアクセスが必要)。
  • Hardware: OnePlus 8 (Snapdragon 865, 12GB+ RAM)。
  • Database: SQLite for persistent storage of hosts, vulnerabilities, and credentials。
  • C2 Interface: Flask-based web dashboardが、ライブフィード、ネットワークマップ、およびC2コントロールを提供し、ターゲットネットワークから隠密性を維持するためにnginxヘッダーを偽装します。

コミュニティの洞察と検討事項

プロジェクトに関する議論は、AI駆動型セキュリティツールの有用性と、「デュアルユース」ソフトウェアの法的複雑性の間の緊張関係を浮出しさせています。

"I cant publish a attack surface mapping / pentesting tool i wrote which runs fully deterministic and really controlable due to 'dual use' legal problems - but llm driven tools hit public space."

ユーザーから提起されたその他の技術的な懸念事項には、「適切に構成された」が不正確なコマンド(例:誤ったホストをターゲットにする)がスコープチェックをバイパスする可能性が含まれます。これは、スコーププロキシがAIの推論の「意図」ではなく、ターゲットの「合法性」を検証するためです。

ハードウェア要件

Nightcrawlerを配備するには、以下の仕様が必要です:

  • Rooted Android Phone: Kali NetHunterのインストールが必須です。
  • Memory: 12GB+ RAM (モデル用に約1.3GB、Android用に4GB)。
  • Optional Hardware: モニターモードとWPA2クラッキングのためのRalink RT3572 USB WiFiアダプター。

Sources

関連

  • プロジェクト
  • Dispatch
  • プロジェクト
  • プロジェクト
  • プロジェクト