ADEO CTI MCP Server について
ADEO CTI MCP Server は ADEO Cybersecurity Services が開発・保守する MCP サーバーで、Shodan と VirusTotal の両方の API に接続します。ホスト、DNS、脆弱性、脅威インテリジェンスの調査を一つの環境で行いたいセキュリティアナリスト向けです。
主な機能
- 01Shodan によるホスト、DNS、ドメイン情報の検索
- 02ファセットと件数集計を使った Shodan 検索
- 03オンデマンドのネットワークスキャンとアラート管理
- 04CVE 参照と CPE ベースの脆弱性検索
- 05VirusTotal による URL、IP、ドメイン、ファイルハッシュの分析
活用シーン
- 01ドメインや IP アドレスの外部公開資産の調査
- 02CVE や CPE を基にしたインターネット公開システムの脆弱性確認
- 03不審な URL、IP アドレス、ファイルハッシュの評判確認
MCP 対応
本プロジェクトは MCP サーバーとして動作し、Shodan と VirusTotal の機能を MCP クライアントにツールとして公開します。資産発見や脆弱性評価などのワークフロー向けのプロンプトテンプレートも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ADEO CTI MCP サーバー
ADEO Cybersecurity Services によって開発
Shodan と VirusTotal の両方の API にアクセスし、包括的なセキュリティ分析と脅威インテリジェンスを提供する Model Context Protocol(MCP)サーバーです。ADEO Cybersecurity Services が開発・保守するこのサーバーを利用すると、サイバーセキュリティアナリストは、ツールとプロンプトテンプレートを通じて、ホスト情報の検索、DNS 操作、脆弱性分析、ネットワークスキャン、アラート管理などのネットワークインテリジェンス業務を実行できます。
ADEO Cybersecurity Services について
ADEO Cybersecurity Services は、サイバーセキュリティの専門家向けに、高度なセキュリティソリューションとツールを提供することを専門としています。この ADEO CTI MCP サーバーは、業界をリードするセキュリティデータソースとの革新的なツールや統合を通じて、サイバーセキュリティ機能の強化に取り組む当社の一環です。
特長
Shodan の機能
- IP アドレスの詳細情報(開いているポート、サービス、位置情報など)
- DNS ルックアップと逆引き DNS 操作
- サブドメインを含むドメイン情報の取得
- ファセットとフィルターによる高度な検索機能
- オンデマンドのネットワークスキャン
- ネットワークアラートと監視
- 脆弱性分析と CVE の追跡
- アカウントと API の管理
- 履歴データへのアクセス
VirusTotal との統合
- マルウェアの分析と検出
- URL スキャンとレピュテーションの確認
- IP アドレスのレピュテーション分析
- ドメインの脅威インテリジェンス
- ファイルハッシュの分析
- 包括的な脅威レポート
統合分析機能
- 両プラットフォームを使用した統合セキュリティ分析
- 相関付けられた脅威インテリジェンス
- 統合された脆弱性評価
- プラットフォーム横断のデータ拡充
機能の強化
- リッチなデータ形式と表示
- インテリジェントなワークフロー自動化
- 事前構築済みの分析テンプレート
- カスタム検索フィルター
- バッチ処理機能
- リアルタイム監視
ツール
Shodan ツール
ホスト情報
- host-info
- Shodan からホストの詳細情報を取得します
- パラメーター:
ip(必須):検索する IP アドレスhistory(任意):履歴情報を含めるかどうかminify(任意):基本的なホスト情報のみを返すかどうか
- 例:
@shodan host-info ip="8.8.8.8" history=true
DNS 操作
-
dns-lookup
- ホスト名を IP アドレスに解決します
- パラメーター:
hostnames(必須):解決するホスト名をカンマ区切りで指定したリスト
- 例:
@shodan dns-lookup hostnames="google.com,facebook.com"
-
reverse-dns
- IP アドレスからホスト名を検索します
- パラメーター:
ips(必須):IP アドレスをカンマ区切りで指定したリスト
- 例:
@shodan reverse-dns ips="8.8.8.8,1.1.1.1"
-
domain-info
- ドメインの DNS エントリーとサブドメインを取得します
- パラメーター:
domain(必須):検索するドメイン名
- 例:
@shodan domain-info domain="example.com"
検索操作
-
search-host
- 特定の条件に一致するホストを Shodan で検索します
- パラメーター:
query(必須):Shodan の検索クエリfacets(任意):概要情報に使用するプロパティをカンマ区切りで指定したリストpage(任意):結果のページ番号
- 例:
@shodan search-host query="apache country:DE" facets="org,port"
-
search-host-count
- 詳細を取得せずに、一致する結果の件数を取得します
- パラメーター:
query(必須):Shodan の検索クエリfacets(任意):ファセットをカンマ区切りで指定したリスト
- 例:
@shodan search-host-count query="product:nginx"
検索ユーティリティ
-
list-search-facets
- 利用可能なすべての検索ファセットを一覧表示します
- パラメーターは不要です
-
list-search-filters
- 検索時に使用できるすべてのフィルターを一覧表示します
- パラメーターは不要です
-
search-tokens
- 検索クエリの構成要素を分析して分解します
- パラメーター:
query(必須):分析する Shodan 検索クエリ
- 例:
@shodan search-tokens query="apache port:80 country:DE"
ネットワーク情報
-
list-ports
- Shodan が現在スキャンしているすべてのポートを一覧表示します
- パラメーターは不要です
-
list-protocols
- スキャンで利用できるすべてのプロトコルを一覧表示します
- パラメーターは不要です
スキャン操作
-
request-scan
- 指定したターゲットのスキャンを Shodan にリクエストします
- パラメーター:
ips(必須):IP アドレスまたは CIDR 表記のネットワークをカンマ区切りで指定したリスト
- 例:
@shodan request-scan ips="192.168.1.0/24"
-
get-scan-status
- 送信したスキャンのステータスを確認します
- パラメーター:
id(必須):一意のスキャン ID
- 例:
@shodan get-scan-status id="SCAN_ID"
-
list-scans
- 送信したすべてのスキャンを表示します
- パラメーターは不要です
アラート管理
-
list-triggers
- 利用可能なネットワークアラートのトリガーを一覧表示します
- パラメーターは不要です
-
create-alert
- ネットワーク監視アラートを設定します
- パラメーター:
name(必須):アラート名filters(必須):アラートのフィルターexpires(任意):有効期限(秒)
- 例:
@shodan create-alert name="My Alert" filters={"ip":["8.8.8.8"],"port":[80,443]}
-
get-alert-info
- 特定のアラートの詳細を取得します
- パラメーター:
id(必須):アラート ID
- 例:
@shodan get-alert-info id="ALERT_ID"
-
delete-alert
- 既存のアラートを削除します
- パラメーター:
id(必須):削除するアラート ID
-
edit-alert
- 既存のアラートを変更します
- パラメーター:
id(必須):アラート IDname(任意):新しいアラート名filters(任意):更新後のフィルター
-
list-alerts
- 有効なすべてのアラートを表示します
- パラメーターは不要です
クエリ管理
-
list-queries
- 保存済みの検索クエリを表示します
- パラメーター:
page(任意):結果のページ番号sort(任意):「votes」または「timestamp」で並べ替えますorder(任意):「asc」または「desc」
-
search-queries
- 保存済みのクエリを検索します
- パラメーター:
query(必須):検索語page(任意):ページ番号
-
list-query-tags
- 人気のクエリタグを表示します
- パラメーター:
size(任意):返すタグの数
アカウント管理
-
get-profile
- アカウント情報を表示します
- パラメーターは不要です
-
get-api-info
- API サブスクリプションのステータスを確認します
- パラメーターは不要です
-
get-billing
- 請求情報を表示します
- パラメーターは不要です
-
get-http-headers
- リクエストヘッダーを確認します
- パラメーターは不要です
-
get-my-ip
- 現在の IP アドレスを表示します
- パラメーターは不要です
脆弱性分析
-
cve-lookup
- CVE の詳細を取得します
- パラメーター:
cve(必須):CVE ID(例:CVE-2021-44228)
- 例:
@shodan cve-lookup cve="CVE-2021-44228"
-
cpe-vuln-search
- CPE で脆弱性を検索します
- パラメーター:
cpe(必須):CPE 2.3 文字列minCvss(任意):CVSS スコアの下限maxResults(任意):結果の上限数
- 例:
@shodan cpe-vuln-search cpe="cpe:2.3:a:apache:log4j:2.14.1:*:*:*:*:*:*:*" minCvss=7.0
VirusTotal ツール
URL 分析
- virustotal-url-analysis
- URL のセキュリティ脅威を分析します
- パラメーター:
url(必須):対象の URL
- 例:
@shodan virustotal-url-analysis url="https://example.com"
ファイル分析
- virustotal-file-analysis
- ファイルのハッシュ値をチェックしてマルウェアを検出します
- パラメーター:
hash(必須):MD5/SHA-1/SHA-256 ハッシュ値
- 例:
@shodan virustotal-file-analysis hash="a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
IP 分析
- virustotal-ip-analysis
- IP のレピュテーションをチェックします
- パラメーター:
ip(必須):対象の IP アドレス
- 例:
@shodan virustotal-ip-analysis ip="8.8.8.8"
ドメイン分析
- virustotal-domain-analysis
- ドメインのレピュテーションを分析します
- パラメーター:
domain(必須):対象のドメイン
- 例:
@shodan virustotal-domain-analysis domain="example.com"
MCP サーバーのプロンプト
このサーバーは、包括的なサイバーセキュリティ分析ワークフローに対応する一連のインテリジェントなプロンプトを提供します。
アセットの発見
- 名前:
asset-discovery - 説明:インターネットに公開されているアセットとインフラストラクチャを発見し、分析します
- パラメーター:
target(必須):分析対象のドメイン、IP アドレス、または組織名depth(任意):偵察の深度(「basic」または「comprehensive」)
- 例:
@shodan asset-discovery target=example.com depth=comprehensive
脆弱性評価
- 名前:
vulnerability-assessment - 説明:インターネットに接続されたシステムの脆弱性を見つけます
- パラメーター:
target_type(必須):分析対象の種類(「host」、「domain」、「cpe」、「cve」)target(必須):対象の識別子(IP、ドメイン、CPE 文字列、または CVE ID)severity_threshold(任意):最小深刻度しきい値(「all」、「medium」、「high」、「critical」)include_vt_analysis(任意):VirusTotal のセキュリティ分析を含めるかどうか(「yes」または「no」)
- 例:
@shodan vulnerability-assessment target_type=host target=192.168.1.1 severity_threshold=high
インターネット検索
- 名前:
internet-search - 説明:インターネットに接続された特定のシステムやサービスを検索します
- パラメーター:
search_type(必須):検索の種類(「service」、「product」、「vulnerability」、「organization」、「custom」)query(必須):検索語または Shodan クエリー文字列filters(任意):適用する追加の Shodan フィルター
- 例:
@shodan internet-search search_type=product query="nginx" filters="country:US port:443"
ネットワーク監視
- 名前:
network-monitoring - 説明:ネットワーク監視とアラートを設定します
- パラメーター:
target(必須):監視対象の IP、ネットワーク範囲、またはドメインmonitor_type(必須):監視する変更の種類(「new-service」、「vulnerability」、「certificate」、「custom」)notification_threshold(任意):通知する最小深刻度(「all」、「high」、「critical」)
- 例:
@shodan network-monitoring target=192.168.0.0/24 monitor_type=vulnerability notification_threshold=high
ICS 分析
- 名前:
ics-analysis - 説明:公開されている産業制御システムおよび SCADA デバイスを分析します
- パラメーター:
target_type(必須):分析対象の種類(「ip」、「network」、「product」、「country」)target(必須):対象の識別子(IP、ネットワーク範囲、製品名、または国コード)protocol(任意):対象とする特定のプロトコル
- 例:
@shodan ics-analysis target_type=country target=US protocol=modbus
DNS インテリジェンス
- 名前:
dns-intelligence - 説明:ドメインと IP アドレスの DNS 情報を分析します
- パラメーター:
target_type(必須):分析対象の種類(「domain」、「ip」、「hostname」)target(必須):分析対象のドメイン名、IP アドレス、またはホスト名include_history(任意):過去の情報を含めるかどうか(「yes」または「no」)include_vt_analysis(任意):VirusTotal のセキュリティ分析を含めるかどうか(「yes」または「no」)
- 例:
@shodan dns-intelligence target_type=domain target=example.com include_vt_analysis=yes
サービス公開状況の分析
- 名前:
service-exposure - 説明: インターネット上に公開されている特定の種類のサービスを分析します
- パラメーター:
service_type(必須): サービスの種類("database"、"webcam"、"industrial"、"remote-access"、"custom")target_scope(必須): 分析の対象範囲("global"、"country"、"organization"、"ip-range")target(任意): 対象範囲に基づく対象値custom_query(任意): "custom" サービスの種類に使用するカスタムクエリinclude_vt_analysis(任意): VirusTotal の分析を含めるかどうか("yes" または "no")
- 例:
@shodan service-exposure service_type=database target_scope=country target=US
アカウントのステータス
- 名前:
account-status - 説明: アカウント情報と API の使用状況を分析します
- パラメーター:
info_type(必須): 取得する情報の種類("profile"、"api"、"usage"、"all")
- 例:
@shodan account-status info_type=all
スキャン管理
- 名前:
scan-management - 説明: オンデマンドのネットワークスキャンを管理、分析します
- パラメーター:
action(必須): 実行するスキャン操作("initiate"、"check"、"list")target(任意): スキャンする対象の IP またはネットワーク(カンマ区切り)scan_id(任意): ステータスを確認するスキャン ID
- 例:
@shodan scan-management action=initiate target=192.168.1.0/24
検索分析
- 名前:
search-analytics - 説明: Shodan の検索機能とパターンを分析します
- パラメーター:
action(必須): 分析の種類("analyze-query"、"explore-facets"、"examine-filters"、"saved-queries")query(任意): 分析するクエリ(analyze-query アクション用)
- 例:
@shodan search-analytics action=analyze-query query="apache country:DE port:443"
脆弱性ハンティング
- 名前:
vulnerability-hunting - 説明: インターネット全体から特定の脆弱性を探索します
- パラメーター:
vuln_type(必須): 探索する脆弱性の種類("cve"、"product"、"service"、"custom")target(必須): 脆弱性の対象(CVE ID、製品名、サービスの種類)scope(任意): 検索範囲("global"、"regional"、"industry")scope_value(任意): 範囲の値(国、業界)
- 例:
@shodan vulnerability-hunting vuln_type=cve target=CVE-2021-44228 scope=regional scope_value=US
マルウェア分析
- 名前:
malware-analysis - 説明: ファイルや URL を分析し、マルウェアやセキュリティ上の脅威を検出します
- パラメーター:
target_type(必須): 分析する対象の種類("file" または "url")target(必須): 分析するファイルのハッシュ(MD5/SHA1/SHA256)または URLinclude_relationships(任意): 関連データを含めるかどうか("yes" または "no")
- 例:
@shodan malware-analysis target_type=file target=a94a8fe5ccb19ba61c4c0873d391e987982fbbd3
インフラストラクチャ分析
- 名前:
infrastructure-analysis - 説明: Shodan と VirusTotal のデータを組み合わせてネットワークインフラストラクチャを分析します
- パラメーター:
target_type(必須): 分析する対象の種類("ip" または "domain")target(必須): 分析する IP アドレスまたはドメインdepth(任意): 分析の深度("basic" または "comprehensive")include_vt_analysis(任意): VirusTotal の分析を含めるかどうか("yes" または "no")
- 例:
@shodan infrastructure-analysis target_type=domain target=example.com depth=comprehensive
脅威ハンティング
- 名前:
threat-hunting - 説明: 複数のデータソースを組み合わせたインテリジェンスを使い、脅威を探索します
- パラメーター:
indicator_type(必須): インジケーターの種類("ip"、"domain"、"url"、"file")indicator(必須): 調査するインジケーターの値include_vt_analysis(任意): VirusTotal の分析を含めるかどうか("yes" または "no")
- 例:
@shodan threat-hunting indicator_type=ip indicator=8.8.8.8 include_vt_analysis=yes
環境のセットアップ
-
必須の環境変数を設定します:
SHODAN_API_KEY=your_shodan_api_key VIRUSTOTAL_API_KEY=your_virustotal_api_key -
依存関係をインストールします:
npm install -
プロジェクトをビルドします:
npm run build -
サーバーを起動します:
npm start
API のレート制限
- ご利用のサブスクリプションに基づく Shodan API の制限を守ってください
- VirusTotal API には別途レート制限があります
- 可能な場合はバッチ処理を使用してください
- リクエスト間に適切な遅延を設けてください
エラー処理
サーバーは、以下のようなさまざまなエラー状況に対応します:
- 無効な API キー
- レート制限
- ネットワークの問題
- 無効なパラメーター
- 権限の不足
コントリビューション
- リポジトリをフォークします
- 機能ブランチを作成します
- プルリクエストを送信します
License
Copyright © 2024 ADEO Cybersecurity Services. All rights reserved.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。