Shodan MCP サーバー
Shodan APIとShodan CVEDBへのクエリを実行するためのモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、IP偵察、DNS操作、脆弱性追跡、デバイス検出など、Shodanのネットワークインテリジェンスおよびセキュリティサービスへの包括的なアクセスを提供します。すべてのツールは、構造化されフォーマットされた出力を提供し、分析と統合を容易にします。
クイックスタート(推奨)
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Shodan Server を自動的にインストールするには:
手動でインストールする
- npm 経由でサーバーをグローバルにインストールします。
- Claude Desktop 構成ファイルに以下を追加します:
構成ファイルの場所:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Claudeデスクトップを再起動します
代替セットアップ(ソースから)
ソースから実行したい場合、またはコードを変更する必要がある場合:
- クローンとビルド:
- Claude Desktop 構成に追加:
特徴
- ネットワーク偵察: 開いているポート、サービス、脆弱性など、IP アドレスに関する詳細情報を照会します。
- DNS操作: ドメインとIPアドレスのDNSの順方向および逆方向の参照
- 脆弱性インテリジェンス: 詳細な脆弱性情報、CPE検索、製品固有のCVE追跡のためのShodanのCVEDBへのアクセス
- デバイス検出: 高度なフィルタリングを使用して、Shodan のインターネット接続デバイスのデータベースを検索します。
ツール
1. IP検索ツール
- 名前:
ip_lookup
- 説明: IP アドレスに関する包括的な情報を取得します。これには、地理位置情報、開いているポート、実行中のサービス、SSL 証明書、ホスト名、およびクラウド プロバイダーの詳細 (利用可能な場合) が含まれます。
- パラメータ:
ip
(必須): 検索するIPアドレス
- 戻り値:
- IP 情報 (アドレス、組織、ISP、ASN)
- 場所(国、都市、座標)
- サービス(ポート、プロトコル、バナー)
- クラウドプロバイダーの詳細(利用可能な場合)
- 関連するホスト名とドメイン
- タグ
2. Shodan検索ツール
- 名前:
shodan_search
- 説明: Shodanのインターネット接続デバイスのデータベースを検索します
- パラメータ:
query
(必須): Shodan検索クエリmax_results
(オプション、デフォルト:10):返される結果の数
- 戻り値:
- 合計結果を含む検索概要
- 国別分布統計
- 詳細なデバイス情報には以下が含まれます:
- 基本情報(IP、組織、ISP)
- 位置データ
- サービス詳細
- Webサーバー情報
- 関連するホスト名とドメイン
3. CVE検索ツール
- 名前:
cve_lookup
- 説明: ShodanのCVEDBから詳細な脆弱性情報を照会します
- パラメータ:
cve
(必須): CVE-YYYY-NNNNN 形式の CVE 識別子 (例: CVE-2021-44228)
- 戻り値:
- 基本情報(ID、公開日、概要)
- 重症度スコア:
- CVSS v2およびv3の重大度レベル
- EPSSの確率と順位
- 影響評価:
- KEVステータス
- 提案された緩和策
- ランサムウェアの関連性
- 影響を受ける製品(CPE)
- 参考文献
4. DNSルックアップツール
- 名前:
dns_lookup
- 説明: Shodan の DNS サービスを使用してドメイン名を IP アドレスに解決します
- パラメータ:
hostnames
(必須): 解決するホスト名の配列
- 戻り値:
- ホスト名をIPにマッピングするDNS解決
- 合計検索数とクエリされたホスト名の概要
5. 逆DNSルックアップツール
- 名前:
reverse_dns_lookup
- 説明: 逆DNSルックアップを実行して、IPアドレスに関連付けられたホスト名を見つけます
- パラメータ:
ips
(必須): 検索するIPアドレスの配列
- 戻り値:
- IPをホスト名にマッピングする逆DNS解決
- 合計検索と結果の概要
6. CPE検索ツール
- 名前:
cpe_lookup
- 説明: 製品名で共通プラットフォーム列挙 (CPE) エントリを検索します
- パラメータ:
product
(必須): 検索する製品の名前count
(オプション、デフォルト:false):trueの場合、一致するCPEの数のみを返します。skip
(オプション、デフォルト:0):スキップするCPEの数(ページ区切り用)limit
(オプション、デフォルト:1000):返されるCPEの最大数
- 戻り値:
- countがtrueの場合: 一致するCPEの合計数
- count が false の場合: ページ区切りの詳細を含む CPE のリスト
7. 製品ツール別のCVE
- 名前:
cves_by_product
- 説明: 特定の製品またはCPEに影響を与える脆弱性を検索します
- パラメータ:
cpe23
(オプション): CPE 2.3 識別子 (形式: cpe:2.3:part:vendor:product:version)product
(オプション): CVEを検索する製品の名前count
(オプション、デフォルト:false):trueの場合、一致するCVEの数のみを返します。is_kev
(オプション、デフォルト: false): true の場合、KEV フラグが設定された CVE のみを返します。sort_by_epss
(オプション、デフォルト: false): true の場合、CVE を EPSS スコアで並べ替えます。skip
(オプション、デフォルト: 0): スキップする CVE の数 (ページ区切り用)limit
(オプション、デフォルト: 1000): 返される CVE の最大数start_date
(オプション): CVE のフィルタリングの開始日 (形式: YYYY-MM-DDTHH:MM:SS)end_date
(オプション): CVE のフィルタリングの終了日 (形式: YYYY-MM-DDTHH:MM:SS)
- 注記:
- cpe23 または製品のいずれかを提供する必要がありますが、両方を提供することはできません。
- 日付フィルタリングはCVEの公開時刻を使用します
- 戻り値:
- クエリ情報
- ページ区切りの詳細を含む結果の概要
- 詳細な脆弱性情報には以下が含まれます:
- 基本情報
- 重症度スコア
- 影響評価
- 参考文献
要件
- Node.js (v18以降)
- 有効なShodan APIキー
トラブルシューティング
APIキーの問題
API キー関連のエラー (例: 「ステータス コード 401 でリクエストが失敗しました」) が表示される場合:
- API キーを確認してください:
- アカウント設定から有効なShodan APIキーを取得する必要があります
- キーに操作に必要なクレジット/権限があることを確認する
- 設定内のキーの前後に余分なスペースや引用符がないか確認してください
- SHODAN_API_KEY環境変数にキーが正しく設定されていることを確認します。
- 一般的なエラーコード:
- 401 不正: APIキーが無効か認証がありません
- 402 お支払いが必要です: クエリクレジットが不足しています
- 429 リクエストが多すぎます: レート制限を超えました
- 設定手順: a. ShodanアカウントからAPIキーを取得します b. それを設定ファイルに追加します:c. 設定ファイルを保存する d. Claude Desktopを再起動する
- キーのテスト:
- まずは簡単なクエリを試してください(例:"google.com" の dns_lookup)
- Shodanアカウントダッシュボードでクレジットステータスを確認してください
- curl を使用してキーが直接機能することを確認します。
モジュールの読み込みの問題
モジュールの読み込みエラーが表示される場合:
- グローバルインストールの場合: クイックスタートに示されているシンプルな構成を使用します
- ソースインストールの場合: Node.js v18以降を使用していることを確認してください
発達
ホットリロードを使用して開発モードで実行するには:
エラー処理
サーバーには、次の包括的なエラー処理が含まれています。
- 無効なAPIキー
- レート制限
- ネットワークエラー
- 無効な入力パラメータ
- 無効なCVE形式
- 無効なCPEルックアップパラメータ
- 無効な日付形式
- 相互排他パラメータ検証
バージョン履歴
- v1.0.12: 逆DNSルックアップを追加し、出力フォーマットを改善しました
- v1.0.7: 製品別CVE検索機能を追加し、脆弱性ツールの名前をcve_lookupに変更しました。
- v1.0.6: CVE検索とCPE検索機能を強化するためにCVEDB統合を追加しました
- v1.0.0: コア機能を備えた初期リリース
貢献
- リポジトリをフォークする
- 機能ブランチを作成する (
git checkout -b feature/amazing-feature
) - 変更をコミットします(
git commit -m 'Add amazing feature'
) - ブランチにプッシュする (
git push origin feature/amazing-feature
) - プルリクエストを開く
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Shodan APIおよびShodan CVEDBへのクエリを実行するためのMCPサーバー。このサーバーは、IPアドレス検索、デバイス検索、DNS検索、脆弱性クエリ、CPE検索などのツールを提供します。
Related MCP Servers
- AsecurityAlicenseAqualityA MCP server for querying the VirusTotal API. This server provides tools for scanning URLs, analyzing file hashes, and retrieving IP address reports.Last updated -74417TypeScriptMIT License
- -securityAlicense-qualityMCP server for using various search tools like Tavily API. Planning to support various search tools (i.e. wiki search, searxng, etc)Last updated -1PythonMIT License
Semgrep MCP Serverofficial
AsecurityAlicenseAqualityAn MCP server that provides a comprehensive interface to Semgrep, enabling users to scan code for security vulnerabilities, create custom rules, and analyze scan results through the Model Context Protocol.Last updated -6178PythonMIT License- -securityAlicense-qualityAn MCP server for interacting with Google's Chronicle Security Operations suite, enabling users to search security events, get alerts, look up entities, list security rules, and retrieve IoC matches.Last updated -5PythonApache 2.0
Appeared in Searches
- Accessing Clearbit APIs for Company Information and Website Visitor Data
- A guide to finding data in public databases
- How to retrieve information about a device using Microsoft Defender, Intune, and Jamf
- Analyser les données des marchés boursiers pour améliorer les stratégies d'investissement
- A framework for web penetration testing