honeymcp は何をしますか?
MCP(モデルコンテキストプロトコル)サーバー向けのオープンソースハニーポットです。AIエージェントエコシステムに対する攻撃の脅威インテリジェンスを収集します。
概要
このハニーポットは、偽のMCPサーバーエンドポイントを公開し、AIエージェント(Claude Code、Cursor、Codexなど)を介した不正なリクエストを検出・記録します。攻撃者がMCPサーバーを探索・悪用しようとする際に、その活動を監視し、IPアドレス、リクエストペイロード、使用されたツールなどの詳細を収集します。
特徴
- リアルタイム監視: MCPサーバーへの着信リクエストを監視し、悪意のある活動を即座に検出します。
- 脅威インテリジェンス収集: 攻撃者のIPアドレス、User-Agent、リクエストパラメータ、タイムスタンプを記録します。
- 軽量設計: 最小限の依存関係で動作し、数分でデプロイ可能です。
- エクスポート機能: 収集データはJSONやCSV形式でエクスポートでき、SIEMシステムと統合できます。
- 拡張性: プラグインアーキテクチャにより、新しい検出ルールやデータソースを追加できます。
使用方法
git clone https://github.com/kosiorkosa47/honeymcp.git
cd honeymcp
pip install -r requirements.txt
python honeymcp.py --port 8080
これにより、ポート8080でMCPサーバーを模倣するハニーポットが起動します。
設定
環境変数または.envファイルで設定をカスタマイズできます。
| 変数名 | 説明 | デフォルト値 |
|---|---|---|
HONEY_PORT | リッスンポート | 8080 |
HONEY_LOG_LEVEL | ログレベル(DEBUG, INFO) | INFO |
HONEY_EXPORT | データエクスポート先ディレクトリ | ./exports |
出力例
収集された脅威インテリジェンスの例:
{
"timestamp": "2025-03-20T10:30:00Z",
"source_ip": "192.168.1.100",
"user_agent": "Claude/1.0",
"request_method": "POST",
"endpoint": "/mcp/v1/tools",
"payload": {"tool": "read_file", "params": {"path": "/etc/passwd"}}
}
貢献
本リポジトリへのプルリクエスト、バグ報告、機能リクエストは大歓迎です。詳細はCONTRIBUTING.mdをご参照ください。
ライセンス
MITライセンスの下で公開されています。