mcpField
E
Entity Attack Surface

Entity Attack Surface

リモート
ryanclinton--entity-attack-surface-mcp.apify.actorセキュリティ032 週間前に更新

Entity Attack Surface について

Entity Attack Surfaceは、ドメインの外部露出を評価するセキュリティチーム、サイバー保険会社、M&A担当者向けのMCPサーバーです。受動的な調査データを統合し、対象を能動スキャンせずに構造化された結果とリスク評価を返します。

主な機能

  1. 0111種類の受動調査ソースを並行処理
  2. 02DNS、証明書、公開ポートを検出
  3. 03技術スタックをCVEとCISA KEVに照合
  4. 04公開コードの露出と履歴変化を検出
  5. 05多面的なスコアとリスク評価を生成

活用シーン

  1. 01MSSP顧客の外部露出状況を評価
  2. 02サイバー保険の引受判断に活用
  3. 03SOCチーム向けに資産変化を監視
  4. 04ベンダーやM&Aのセキュリティ調査

MCP 対応

MCPクライアントに、探索、脆弱性マッピング、コード露出確認、包括レポートなど8種類の評価ツールを公開します。結果には構造化JSON、露出スコア、リスク評価が含まれます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://ryanclinton--entity-attack-surface-mcp.apify.actor/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

Entity Attack Surface MCP Server

ApifyForge で表示 | Apify Store で利用


クイックスタート

MCP クライアント(Claude Desktop、Cursor、Windsurf)に追加します。

{
  "mcpServers": {
    "entity-attack-surface-mcp": {
      "url": "https://ryanclinton--entity-attack-surface-mcp.apify.actor/mcp"
    }
  }
}

Model Context Protocol を介して、あらゆるドメインのエンティティ攻撃対象領域をマッピングします。この MCP サーバーは 11 のパッシブな偵察ソースを連携させ、組織のデジタル上の露出を包括的に把握します。DNS インフラストラクチャ、SSL 証明書の拡散状況、Censys にインデックスされたオープンポート、テクノロジースタックの脆弱性、CISA Known Exploited Vulnerabilities、公開コードの漏えい、過去からの変化などを調査します。アクティブスキャンを行わずに、構造化された AI 対応のセキュリティインテリジェンスを必要とする MSSP、サイバー保険会社、SOC チーム、M&A のデューデリジェンス担当者向けに設計されています。

AI アシスタントやセキュリティワークフローを、目的別に構築された 8 つのツールに接続できます。これらのツールは並列で実行され、4 つのリスク軸にわたって検出結果を評価し、Exposure Score(0~100)と A~F の成績評価を含む構造化 JSON を返します。MCP エンドポイントを追加するだけで利用でき、ほかのセットアップは不要です。サーバーは Apify のインフラストラクチャ上で待機モードで動作します。

抽出できるデータ

データ項目ソース例
📡 DNS レコード(A、AAAA、MX、TXT、CNAME、NS)DNS レコードルックアップmail.acmecorp.com → 192.0.2.45
🔐 SSL 証明書とサブドメイン列挙crt.sh Certificate Transparencyapi.acmecorp.com、staging.acmecorp.com
🌐 ドメイン登録情報と所有権WHOIS ルックアップレジストラー、作成日、有効期限、登録者
🖥 インターネットに公開されたホストとオープンポートCensys Host Search3 台のホストでポート 443、3389、6379
📍 IP アドレスの位置情報と ASNIP ジオロケーション米国東部(AS14618 Amazon)、ドイツ(AS16509 Amazon)
🐛 検出されたテクノロジーに関連する CVENVD CVE DatabaseCVE-2024-1234、CVSS 9.8 — Apache HTTP
🚨 実際に悪用されている脆弱性CISA KEV CatalogKEV との一致が 2 件 — 緊急の修正が必要
🔧 Web テクノロジーのフィンガープリントTech Stack DetectorWordPress 6.4、jQuery 1.12、PHP 8.1、Nginx
📚 Web プレゼンスの過去のスナップショットWayback Machine2009 年から現在までのスナップショット 847 件
💻 公開コードと認証情報の露出GitHub Repo Searchフラグが付いたリポジトリ 3 件:internal-config、deploy-keys
🔄 Web サイトの最近のコンテンツ変更Website Change Monitor変更を 2 件検出、うち 1 件はコンテンツの差分が 50% 超
📊 Exposure Score と成績評価Scoring Engineスコア:67/100 — 露出度:高、成績:D

Entity Attack Surface MCP Server を使う理由

手作業でセキュリティ評価を行うには、数日かかります。熟練したアナリストは、DNS を手動で照会し、証明書透明性ログを取得し、Censys を確認し、検出されたテクノロジーごとに CVE を調べ、CISA KEV と照合し、GitHub で漏えいしたリポジトリを確認して、検出結果を一貫性のあるリスク像にまとめる必要があります。このプロセスでは 8~12 個のツールを使い、ドメインごとに 4~8 時間かかるうえ、実際の対応につなげにくい一貫性のない結果が生成されます。

この MCP は、パッシブな偵察パイプライン全体を数分で自動化します。MCP 対応の AI クライアント(Claude、Cursor、Windsurf、Cline)から単一のツールを呼び出すだけで、軸別のスコア、優先順位付けされた検出結果、修正の推奨事項を含む構造化 JSON を取得できます。取締役会向けレポート、引受判断、SIEM への取り込みにすぐに活用できます。

  • スケジュール実行 — クライアントポートフォリオ全体を対象に攻撃対象領域の調査を毎週実行し、攻撃者に先んじて新たな露出を検出できます
  • API アクセス — Python、JavaScript、または任意の HTTP クライアントから評価を実行し、GRC プラットフォームやチケット管理システムと連携できます
  • 並列実行 — 最大 11 個のアクターを同時に実行し、評価にかかる時間を数時間から数分に短縮できます
  • 監視 — Apify ウェブフックを介して、スキャンの完了時や重大な検出結果があった場合に Slack またはメールでアラートを受け取れます
  • 連携 — ウェブフックを介して、結果を Zapier、Make、Google Sheets、HubSpot、またはカスタム SIEM パイプラインに接続できます

特長

  • 8 種類の特化型 MCP ツールで、資産の発見、脆弱性のマッピング、KEV の確認、拡散状況の分析、ドリフトの検出、コードの露出、ベンダー評価、完全なベクトルレポートに対応します
  • 11 のアクターによる並列オーケストレーション — DNS、SSL/crt.sh、WHOIS、Censys、IP Geo、NVD CVE、CISA KEV、Tech Stack、Wayback Machine、GitHub、Website Change Monitor に 1 回の呼び出しですべてクエリします
  • **露出スコア(0~100)**を、4 つの重み付けされた指標で算出します:インフラ露出(0~30)、脆弱性露出(0~30)、コードとデータの露出(0~20)、過去のドリフト(0~20)
  • 5 段階の露出グレードと、自動化された推奨事項を提供します:MINIMAL、LOW、MODERATE、HIGH、CRITICAL EXPOSURE。それぞれに具体的な修正措置の説明が付属します
  • 技術スタックから CVE、KEV へのパイプライン — ウェブ技術を検出し、それぞれを NVD と照合してから、CISA KEV との一致があれば、BOD 22-01 のコンプライアンス情報とともに緊急案件としてエスカレーションします
  • CISA KEV との照合と修正期限の追跡により、必要なパッチ適用日を過ぎた脆弱性にフラグを付けます
  • 8 つの高リスクポートを対象に危険なポートを検出します:FTP(21)、Telnet(23)、SMB(445)、RDP(3389)、VNC(5900)、Redis(6379)、MongoDB(27017)、Elasticsearch(9200)
  • Apache、Log4j、Struts、WordPress、Confluence、Jenkins など、脆弱性の記録が歴史的に重要な 20 種類の技術を厳選したリストと照合し、CVE の多い技術をフィンガープリントします
  • インフラ拡散スコアを複合式で算出します:サブドメイン数 × 2 + IP 数 × 3 + 開放ポート数 × 4 + 国数 × 5。LOW/MODERATE/HIGH で評価します
  • **サードパーティのサイバー評価(A~F)**を、メールセキュリティ 20%、SSL の衛生状態 25%、ネットワーク露出 35%、技術の複雑さ 20%の重み付けで算出します
  • コード露出スキャンでは、3 つのリスクレベルにわたる 11 個の機密キーワードパターンを対象にします(HIGH:secret、credential、password、token、api-key。MEDIUM:private、internal、config、.env。LOW:deploy、infra)
  • 古いリポジトリを検出し、12 か月以上コミットのない公開リポジトリに、未パッチの依存関係リスクとしてフラグを付けます
  • 過去のドリフト分析では、Wayback Machine のアーカイブの深さと現在の技術スタックを照合し、キャッシュ版に残存している可能性のあるデータを明らかにします
  • パッシブな偵察のみ — 対象にパケットを送信せず、アクティブスキャンも行わないため、完全に安全かつ合法です
  • イベントごとの従量課金 — 課金対象はツール呼び出しのみで、アクターの実行回数やデータ行数では課金されません

攻撃対象領域インテリジェンスのユースケース

MSSP のクライアントポートフォリオ評価

50~500 社のクライアントを管理する MSSP が、毎月各クライアントの外部攻撃対象領域を手動で評価するのは困難です。この MCP を使えば、クライアント全体を対象とした外部露出調査を自動化できます。毎週のスケジュールで各クライアントのドメインを discover_attack_surface と tech_stack_vulnerability_map に渡します。次回の QBR の前に、新たに CISA KEV と一致したクライアントや、新たに露出した危険なポートを特定できます。アナリストの人員を増やすことなく、レポートに定量化された露出スコアを含められます。

サイバー保険の引受審査と更新

引受担当者は、サイバー保険契約を締結する前に、客観的な技術リスク指標を必要とします。質問票に基づく手動評価では、実際の露出を見逃してしまいます。契約締結前に third_party_cyber_rating と attack_vector_report を呼び出すことで、メールセキュリティ、SSL の衛生状態、ネットワーク露出、技術の複雑さを項目別に示した複合的な A~F のサイバー評価を生成できます。露出スコアを使って申込者を分類し、価格設定の判断を裏付け、引受ファイルにデューデリジェンスの記録を残せます。

SOC の継続的な監視と脅威検知

SOC チームは、新しいサブドメインの出現、証明書の期限切れ、危険なポートの開放、CISA KEV との一致など、組織の攻撃対象領域が変化した際に把握する必要があります。discover_attack_surface と cisa_kev_exposure_check を毎日または毎週実行するようスケジュールします。ウェブフックを介して、結果を SIEM やチケット管理プラットフォームに接続します。脅威アクターに悪用される前に、シャドー IT、不正なデプロイ、または進行中の侵害を示す可能性があるインフラの変化を検知します。

M&A の技術デューデリジェンス

企業を買収することは、その企業のセキュリティ上の負債も引き継ぐことを意味します。技術デューデリジェンスでは、隠れた負債が見つからないことがよくあります。たとえば、シャドー IT のサブドメイン、脆弱な技術スタック、公開リポジトリに露出した認証情報、買収対象のインフラストラクチャで危険な状態のまま開いているポートなどです。デューデリジェンス期間中に、買収対象のドメインと GitHub 組織を対象に attack_vector_report と exposed_code_secrets_scan を実行します。契約締結前にセキュリティ上の負債を定量化し、契約条件に是正義務を盛り込みます。

ベンダーリスク管理とサプライチェーンセキュリティ

セキュリティ態勢が不十分なサードパーティベンダーは、侵害の主な侵入経路です。third_party_cyber_rating を使って、オンボーディング時や年次レビュー時にベンダーのサイバーリスク評価を生成します。SPF/DMARC の未設定、証明書の期限切れ、インターネットに公開された RDP、または技術スタックに含まれる CISA KEV の該当項目があるベンダーにフラグを立てます。評価済みベンダーのレジストリを維持し、契約更新サイクルに合わせて自動的に再評価します。

開発者と DevSecOps のセキュリティ監査

開発チームは、社内ツール名、設定参照、デプロイスクリプトなどを含む公開 GitHub リポジトリを通じて、組織のリスクを高める可能性があります。セキュリティ監査やペネトレーションテストの前に、組織の GitHub 組織を対象に exposed_code_secrets_scan を実行します。HIGH リスクのキーワード(secret、credential、token、api-key)を含むリポジトリや、未パッチの依存関係を含む可能性がある古いリポジトリを特定します。検出結果を活用して、シークレットのローテーションとリポジトリの整理に取り組むスプリントを実施します。

攻撃対象領域の評価を実行する方法

  1. MCP サーバーを AI クライアントに追加する — エンドポイント URL https://entity-attack-surface-mcp.apify.actor/mcp をコピーし、Claude Desktop、Cursor、または Cline の MCP 設定に貼り付けます。Apify API トークンを Bearer トークンとして追加します。設定構文の詳細については、以下の接続セクションを参照してください。

  2. AI アシスタントに評価の実行を依頼する — 「acmecorp.com の攻撃対象領域を評価し、CISA KEV に該当する項目があればフラグを立ててください」のような自然言語のリクエストを入力します。AI が適切なツールを選択し、ドメインを渡して、構造化された結果を返します。

  3. Exposure Score と検出結果を確認する — レスポンスには、スコア(0~100)、レターグレード、カテゴリごとの具体的な検出結果を含む各側面の内訳が含まれます。CISA KEV に該当する項目は、緊急アラートと BOD 22-01 の修正に関する文言とともに表示されます。

  4. 結果をエクスポートまたは転送する — JSON 出力は Apify のインテグレーションを通じて Google Sheets に保存したり、Webhook 経由で SIEM に送信したり、AI アシスタントで PDF レポートに整形したりできます。

MCP ツール

ツール実行料金呼び出される Actor 数主な用途
discover_attack_surface$2.004-5初期調査、資産インベントリ、サイバー保険
tech_stack_vulnerability_map$2.002+脆弱性評価、セキュリティ監査
cisa_kev_exposure_check$2.003コンプライアンス(BOD 22-01)、緊急パッチ適用
infrastructure_sprawl_analysis$2.004シャドー IT の発見、M&A のデューデリジェンス
historical_drift_detection$2.002侵害の検出、変更の監査
exposed_code_secrets_scan$2.001コード漏えいの検出、開発者のセキュリティ
third_party_cyber_rating$4.005ベンダーリスク管理、サイバー保険
attack_vector_report$4.0010-11全面的な評価、取締役会への報告
ツールの入力パラメーター

discover_attack_surface

パラメーター型必須デフォルト説明
domainstringはい—対象ドメイン。例:"acmecorp.com"
include_ip_geobooleanいいえtrue検出されたホストの IP ジオロケーションを含めるかどうか

tech_stack_vulnerability_map

パラメーター型必須デフォルト説明
urlstringはい—対象 URL。例:"https://acmecorp.com"
max_cves_per_technumberいいえ5検出されたテクノロジーごとに返す CVE の最大数

cisa_kev_exposure_check

パラメーター型必須デフォルト説明
urlstringはい—チェック対象の URL

infrastructure_sprawl_analysis

パラメーター型必須デフォルト説明
domainstringはい—分析対象のルートドメイン

historical_drift_detection

パラメーター型必須デフォルト説明
urlstringはい—分析対象の URL
wayback_limitnumberいいえ20取得する Wayback Machine のスナップショットの最大数

exposed_code_secrets_scan

パラメーター型必須デフォルト説明
organizationstringはい—検索する GitHub 組織または会社名
max_reposnumberいいえ30分析するリポジトリの最大数

third_party_cyber_rating

パラメーター型必須デフォルト説明
domainstringはい—評価対象のベンダードメイン

attack_vector_report

パラメーター型必須デフォルト説明
domainstringはい—対象ドメイン
urlstringいいえhttps://<domain>テクノロジースタック検出に使用する特定の URL
github_orgstringいいえ—コード露出分析を行う GitHub 組織

出力例

中規模の SaaS 企業に対する attack_vector_report:

{
  "domain": "pinnaclesoftware.io",
  "exposureScore": 67,
  "exposureGrade": "HIGH EXPOSURE",
  "dimensions": {
    "infrastructure": {
      "score": 22,
      "max": 30,
      "findings": [
        "14 unique IP addresses — significant infrastructure sprawl",
        "No SPF record — vulnerable to email spoofing",
        "No DMARC record — no email authentication policy",
        "Dangerous ports exposed: 3389, 6379 (RDP/Redis)"
      ]
    },
    "vulnerability": {
      "score": 21,
      "max": 30,
      "findings": [
        "4 high-CVE-history technologies detected: wordpress, jquery, php, nginx",
        "3 CRITICAL CVE(s) found in detected technology stack",
        "7 HIGH severity CVE(s)",
        "2 CISA Known Exploited Vulnerability(ies) — ACTIVELY EXPLOITED IN THE WILD",
        "1 KEV(s) past remediation deadline"
      ]
    },
    "codeData": {
      "score": 11,
      "max": 20,
      "findings": [
        "2 public repo(s) with potentially sensitive names/descriptions: internal-config, deploy-credentials",
        "23 public repositories",
        "8 stale/unmaintained public repos (no updates >1 year) — potential unpatched dependencies"
      ]
    },
    "historicalDrift": {
      "score": 13,
      "max": 20,
      "findings": [
        "Web presence dates back 14 years (since ~2010) — long history of potential cached data",
        "312 Wayback Machine snapshots — extensive archived content",
        "3 recent website change(s) detected — active modification of attack surface",
        "1 large content change(s) (>50% diff) — potential compromise or major restructuring",
        "Historical data available for drift analysis — compare archived vs current technology stack"
      ]
    }
  },
  "recommendation": "High exposure. Immediate remediation recommended. Engage security team for attack surface reduction.",
  "actorsUsed": 11,
  "assetSummary": {
    "dnsRecords": 18,
    "sslCertificates": 34,
    "censysHosts": 7,
    "technologies": 22,
    "cves": 41,
    "cisaKevs": 2,
    "waybackSnapshots": 20,
    "githubRepos": 23
  }
}

ベンダー評価に対する third_party_cyber_rating:

{
  "domain": "cloudsupplier.net",
  "cyberRating": "C",
  "compositeScore": 74,
  "components": {
    "emailSecurity": {
      "score": 60,
      "hasSPF": true,
      "hasDMARC": false
    },
    "sslHygiene": {
      "score": 100,
      "totalCerts": 12,
      "expiredCerts": 0
    },
    "networkExposure": {
      "score": 65,
      "openPorts": 8,
      "dangerousPortsExposed": [3389]
    },
    "techComplexity": {
      "score": 70,
      "technologies": 20
    }
  },
  "whois": [
    {
      "domain": "cloudsupplier.net",
      "registrar": "Namecheap Inc.",
      "createdDate": "2017-03-14",
      "expiresDate": "2026-03-14"
    }
  ]
}

cisa_kev_exposure_check — 緊急アラート:

{
  "url": "https://legacyapp.betaindustries.com",
  "technologiesScanned": 14,
  "kevCatalogSize": 1100,
  "matchingKEVs": 2,
  "alert": "URGENT: 2 actively exploited vulnerability(ies) found in detected tech stack. Immediate patching required per BOD 22-01.",
  "kevMatches": [
    {
      "cveID": "CVE-2021-44228",
      "vendorProject": "Apache",
      "product": "Log4j",
      "vulnerabilityName": "Apache Log4j2 Remote Code Execution Vulnerability",
      "dateAdded": "2021-12-10",
      "dueDate": "2021-12-24",
      "requiredAction": "Apply updates per vendor instructions"
    }
  ],
  "detectedTechnologies": ["apache", "log4j", "tomcat", "jquery", "wordpress"]
}

出力フィールド

attack_vector_report
フィールド型説明
domainstring評価対象のドメイン
exposureScorenumber複合エクスポージャースコア、0~100。数値が高いほどリスクが高くなります
exposureGradestring次のいずれか:MINIMAL、LOW、MODERATE、HIGH、CRITICAL EXPOSURE
recommendationstringスコア帯に応じた優先順位付きの修復ガイダンス
actorsUsednumber照会したデータソースの数(最大11)
dimensions.infrastructure.scorenumberインフラストラクチャのエクスポージャー副スコア(0~30)
dimensions.infrastructure.findingsstring[]具体的なインフラストラクチャの検出事項
dimensions.vulnerability.scorenumber脆弱性のエクスポージャー副スコア(0~30)
dimensions.vulnerability.findingsstring[]CVE および CISA KEV の検出事項
dimensions.codeData.scorenumberコードとデータのエクスポージャー副スコア(0~20)
dimensions.codeData.findingsstring[]GitHub のエクスポージャー検出事項
dimensions.historicalDrift.scorenumber履歴変化の副スコア(0~20)
dimensions.historicalDrift.findingsstring[]Wayback および変更監視の検出事項
assetSummary.dnsRecordsnumber取得した DNS レコードの合計数
assetSummary.sslCertificatesnumber見つかった SSL 証明書/サブドメインの数
assetSummary.censysHostsnumberCensys にインデックス登録されたインターネット公開ホスト数
assetSummary.technologiesnumber検出されたウェブテクノロジーの数
assetSummary.cvesnumberテクノロジースタック全体で見つかった CVE の合計数
assetSummary.cisaKevsnumber見つかった CISA KEV の一致数
assetSummary.waybackSnapshotsnumber取得した Wayback Machine スナップショットの数
assetSummary.githubReposnumber分析した GitHub リポジトリ数
third_party_cyber_rating
フィールド型説明
cyberRatingstringレターグレード:A、B、C、D、F
compositeScorenumber加重複合スコア、0~100。数値が高いほどセキュリティ態勢が良好です
components.emailSecurity.scorenumberメールセキュリティ副スコア(0~100)。SPF/DMARC が設定されていない場合は減点されます
components.emailSecurity.hasSPFbooleanSPF レコードが存在するかどうか
components.emailSecurity.hasDMARCbooleanDMARC レコードが存在するかどうか
components.sslHygiene.scorenumberSSL 管理状況の副スコア。証明書の期限切れまたは未設定の場合は減点されます
components.sslHygiene.expiredCertsnumber期限切れの SSL 証明書の数
components.networkExposure.scorenumberネットワークエクスポージャーの副スコア。危険なポートごとに減点されます
components.networkExposure.dangerousPortsExposednumber[]オープン状態で見つかった危険なポート番号
components.techComplexity.scorenumberテクノロジーの複雑さの副スコア
components.techComplexity.technologiesnumber検出された異なるテクノロジーの数

攻撃対象領域の評価にはいくらかかりますか?

この MCP サーバーでは、イベントごとの従量課金制を採用しています。トリガーされたイベントに基づき、ツール呼び出しごとに料金が発生します。プラットフォームのコンピューティング料金は含まれています。サブスクリプションや月額最低利用料金はありません。

シナリオ呼び出すツール料金
インフラストラクチャの簡易調査discover_attack_surface$2.00
CISA KEV への露出チェックcisa_kev_exposure_check$2.00
技術スタックの脆弱性マップtech_stack_vulnerability_map$2.00
インフラストラクチャの分散分析infrastructure_sprawl_analysis$2.00
過去からの変化の検出historical_drift_detection$2.00
公開コード内のシークレットのスキャンexposed_code_secrets_scan$2.00
サードパーティのサイバー評価third_party_cyber_rating$4.00
完全な攻撃ベクトルレポートattack_vector_report$4.00

コストを管理するために、実行ごとに最大支出額を設定できます。予算に達すると、サーバーは処理を停止します。

SecurityScorecard の年間 $2,000~10,000、または同等の料金帯の BitSight と比較してください。MSSP のクライアント評価や定期的なベンダーチェックでは、この MCP を使うと、サブスクリプション契約なしで同等のパッシブな偵察データを評価あたり $2~4 で取得できます。

Apify の Free プランには、月額 $5 分のプラットフォームクレジットが含まれており、毎月 1~2 回の完全な評価を無料で実施できます。

この MCP サーバーへの接続方法

Claude Desktop

claude_desktop_config.json に追加します。

{
  "mcpServers": {
    "entity-attack-surface": {
      "url": "https://entity-attack-surface-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}
Cursor / Windsurf / Cline

エディターの MCP 設定パネルで MCP サーバーを追加します。

  • エンドポイント:https://entity-attack-surface-mcp.apify.actor/mcp
  • 認証:Bearer トークン(console.apify.com/account/integrations から取得した Apify API トークン)
プログラムから利用する場合(HTTP / cURL)
# Call the attack_vector_report tool
curl -X POST "https://entity-attack-surface-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "attack_vector_report",
      "arguments": {
        "domain": "acmecorp.com",
        "github_org": "acmecorp"
      }
    },
    "id": 1
  }'
Python(Apify API 経由)
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run = client.actor("ryanclinton/entity-attack-surface-mcp").call(run_input={})

# The MCP server runs in standby mode — use the endpoint directly for MCP calls.
# For one-off programmatic use, call via HTTP as shown above.
print(f"Server URL: https://entity-attack-surface-mcp.apify.actor/mcp")
print(f"Run ID: {run['id']}")
JavaScript
import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "YOUR_API_TOKEN" });

// For direct MCP tool calls, use the HTTP endpoint:
const response = await fetch("https://entity-attack-surface-mcp.apify.actor/mcp", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": `Bearer YOUR_API_TOKEN`,
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    method: "tools/call",
    params: {
      name: "third_party_cyber_rating",
      arguments: { domain: "vendor-example.com" },
    },
    id: 1,
  }),
});

const result = await response.json();
const rating = JSON.parse(result.result.content[0].text);
console.log(`Cyber rating for vendor: ${rating.cyberRating} (${rating.compositeScore}/100)`);
console.log(`Dangerous ports exposed: ${rating.components.networkExposure.dangerousPortsExposed.join(", ") || "None"}`);

Entity Attack Surface MCP Server の仕組み

フェーズ 1:並列データ収集

各ツール呼び出しでは、runActorsParallel() を介して複数の Apify アクターに同時にリクエストを送信します。attack_vector_report ツールは、DNS レコード検索(最大 50 件)、crt.sh の SSL 証明書検索(最大 50 件)、WHOIS 登録データ、Censys によるホスト列挙(最大 20 台)、IP ジオロケーション、技術スタックの検出(最大 50 種類)、NVD CVE 検索、CISA KEV カタログの取得(最大 100 件)、Wayback Machine のスナップショット取得、ウェブサイト変更モニターのデータという 10~11 件のアクター呼び出しを同時に実行します。GitHub 組織が指定されている場合は、11 件目の並列呼び出しとして GitHub リポジトリ検索を実行します。各アクターのタイムアウトは 120 秒です。

フェーズ 2:技術スタックから CVE、KEV へのパイプライン

脆弱性の評価には、3 段階のパイプラインを使用します。まず、Tech Stack Detector が対象 URL 上の技術を最大 10 種類特定します。次に、各技術名を個別の並列クエリとして NVD CVE データベースに送信します(技術ごとに最大 max_cves_per_tech 件)。最後に、CISA KEV カタログを取得し、ベンダーと製品のフィールドを照合して、検出された技術名と相互参照します。KEV と一致する項目があると、必要な修正期限を含む BOD 22-01 準拠アラートが発行されます。CVE データが届く前に初期リスクシグナルを生成するため、CVE の履歴が多い技術名を集めた厳選リスト(Apache、Log4j、Struts、WordPress、Drupal、Confluence、Jenkins など 20 件)を使って、技術を事前スクリーニングします。

Phase 3:露出スコアリングエンジン

computeExposureScore() 関数は、収集したすべてのデータを、独立した4つのディメンションスコアラーで処理します。

  • インフラストラクチャの露出(0-30):DNS の IP 分散(ユニーク IP が 10 を超える場合は 6 点、5 を超える場合は 3 点)、SPF の未設定(3 点)、DMARC の未設定(2 点)、SSL サブドメイン数(20 を超える場合は 5 点、10 を超える場合は 3 点)、期限切れの証明書(4 点)、新しいドメイン(2 点)、Censys によるオープンポート数(10 ポートを超える場合は 6 点、5 を超える場合は 3 点)、危険なポート 8 種のいずれかが存在する場合(5 点)、複数国にまたがるインフラストラクチャ(2 点)をスコア化します。
  • 脆弱性の露出(0-30):CVE の多いテクノロジー(1 件につき 2 点、最大 8 点)、CRITICAL CVE(1 件につき 3 点、最大 12 点)、HIGH CVE(1 件につき 2 点、最大 6 点)、CISA KEV との一致(1 件につき 5 点、最大 15 点)をスコア化します。
  • コードとデータの露出(0-20):機密情報を示す名前のパターンを含むリポジトリ(8 点)、公開リポジトリ数が多い場合(50 を超える場合は 5 点、20 を超える場合は 3 点)、古いリポジトリ数(5 を超える場合は 4 点)をスコア化します。
  • 履歴の変化(0-20):Wayback Machine のアーカイブが大規模な場合(100 スナップショットを超える場合は 4 点)、ウェブサイトの変更が検出された場合(3 点)、大規模なコンテンツ変更(差分が 50% を超える場合は 5 点)、テクノロジーと履歴の比較データが利用可能な場合(2 点)をスコア化します。

各ディメンションのスコアには上限が適用され、合計を算出した後、総合スコアも 100 点を上限とします。グレードは5段階で割り当てられます:MINIMAL(0-15)、LOW(16-35)、MODERATE(36-55)、HIGH(56-75)、CRITICAL(76-100)。

Phase 4:サードパーティ評価の加重複合スコア

third_party_cyber_rating ツールでは、別の加重スコアリングモデルを使用します。4つの構成要素はそれぞれ 100 点から始まり、減点されます。メールセキュリティは SPF または DMARC レコードが未設定の場合に 40 点減点されます。SSL の衛生状態は、証明書が期限切れの場合に 30 点、証明書が見つからない場合に 50 点減点されます。ネットワークの露出は、危険なポートが露出している場合はポートごとに 15 点、オープンポートの合計が 10 を超える場合は 20 点減点されます。テクノロジーの複雑さは、検出されたテクノロジー 1 件につき 1.5 点減点されます(上限は 30 件)。各構成要素は、メールセキュリティ 20%、SSL の衛生状態 25%、ネットワークの露出 35%、テクノロジーの複雑さ 20% の重みで統合されます。複合スコア(0-100)は、文字グレード A(90-100)、B(80-89)、C(70-79)、D(60-69)、F(0-59)に対応します。注:このモデルでは、スコアが高いほどセキュリティ態勢が良好であり、Exposure Score とは逆です。

最大限の成果を得るためのヒント

  1. 完全なレポートを実行する前に、discover_attack_surface を実行してください。 サーフェス検出ツールは $2 で、サブドメイン数、IP の分散状況、Censys の検出結果をすばやく提示します。その結果をもとに、完全な attack_vector_report($4)を実行する価値があるか判断してください。

  2. テクノロジー企業を評価する際は、attack_vector_report に github_org を指定してください。 コードやデータの露出は、Exposure Score の最大 20 ポイントを占めます。GitHub の分析を省略すると、重要な評価項目が採点されません。

  3. 迅速なトリアージツールとして cisa_kev_exposure_check を使用してください。 1 回あたり $2 で、最小限のコストで最も緊急性の高い検出結果(実際に悪用されている脆弱性)を特定できます。新しいベンダーの評価時、または CISA KEV カタログの更新後に、最初に実行してください。

  4. 変更を検出するため、discover_attack_surface のスキャンを毎週実施するようスケジュールしてください。 インフラストラクチャの変更(SSL 証明書の透明性情報から新たに見つかったサブドメイン、Censys にインデックスされた新しいホスト、開放ポートの変化など)は、シャドー IT や未承認のデプロイを示す最も早い兆候です。毎週実行することで、変更のベースラインを作成できます。

  5. infrastructure_sprawl_analysis の結果を CMDB と照合してください。 SSL 証明書の透明性情報から得られるサブドメイン一覧には、社内の資産インベントリで追跡されていないシステムが含まれていることがよくあります。CMDB にないサブドメインは、すべてシャドー IT です。

  6. M&A のデューデリジェンスでは、github_org を指定して attack_vector_report を実行した後、third_party_cyber_rating を別途実行してください。 attack_vector_report は Exposure Score モデル(高いほど悪い)を使用し、third_party_cyber_rating はサイバー評価モデル(高いほど良い)を使用します。両方を組み合わせることで、対象のセキュリティ態勢を独立した 2 つの視点から評価できます。

  7. バッチ評価には支出上限を設定してください。 API を通じて多数のベンダーを評価する場合は、アクター呼び出しに maxTotalChargeUsd を設定し、費用が予想外に膨らむのを防いでください。

  8. SOC と連携するには、Webhook の出力を SIEM に転送してください。 attack_vector_report の JSON 出力は構造が整っており一貫しているため、各フィールドを SIEM のアラートスキーマに簡単に対応付けられます。CISA KEV との一致、またはしきい値を超える Exposure Score が検出された実行の完了時に、結果を SIEM の HTTP 入力へ POST するよう Apify Webhook を設定してください。

他の Apify アクターとの組み合わせ

アクター組み合わせ方
ウェブサイト技術スタック検出tech_stack_vulnerability_map を呼び出す前に、単独で技術を検出しておくことで、CVE の検索を実行する前に見つかる技術を確認できます
WHOIS ドメイン検索discover_attack_surface に詳細な登録者履歴を加えます。M&A 対象のドメイン年齢や所有権の確認に役立ちます
ウェブサイト変更モニターhistorical_drift_detection でベースラインを作成した後、重要なページの変更を個別に監視するようスケジュールし、継続的な変更を追跡します
企業詳細調査サイバー露出スコアに、財務健全性、経営陣、法務履歴などの企業情報を組み合わせ、M&A やベンダーのデューデリジェンスに必要な情報を網羅します
ウェブサイト連絡先スクレイパー攻撃対象領域のマッピングでサブドメインを特定した後、連絡先情報をスクレイピングして、責任ある開示やベンダーへの修復依頼に向けたセキュリティチームの連絡先を見つけます
B2B リード評価この MCP を使用してリスクのある見込み客を特定する MSSP は、Exposure Score が HIGH または CRITICAL のドメインをリード評価に渡し、対象を絞ったアプローチに活用できます
Trustpilot レビュー分析サイバーリスク評価に評判データを組み合わせ、技術的リスクと顧客体験のシグナルを含む包括的なベンダーデューデリジェンスを行います

制限事項

  • アクティブスキャンは行いません — この MCP はパッシブな偵察のみを実施します。開いているポートの検出には、リアルタイムのポートプロービングではなく、Censys の定期的なインターネット全体のスキャンインデックスを使用します。前回の Censys スキャン以降に、ポートが開いたり閉じたりしている可能性があります。
  • 技術スタックの検出には、アクセス可能でクロール可能な URL が必要です — 対象の URL が 200 以外のレスポンスを返すか、Tech Stack Detector をブロックする場合、Exposure Score の脆弱性の評価が不完全になります(技術を 0 件検出した場合、CVE または KEV のデータはありません)。
  • CISA KEV との照合は名前に基づいています — ページ上で検出された技術名を KEV カタログと照合します。バージョンごとの照合は行いません。一致した技術が修正済みのバージョンで動作している可能性があるため、KEV アラートに基づいて対応する前に手動で確認する必要があります。
  • GitHub コードの露出検出はメタデータのみに基づいています — exposed_code_secrets_scan ツールは、リポジトリ名、説明、メタデータを分析します。ファイルの内容を読み取ったり、コードをスキャンして実際のシークレットを検出したりすることはありません。HIGH リスクのフラグは、リポジトリ名が機密性の高い内容を示唆しているという意味であり、シークレットの存在が確認されたという意味ではありません。
  • Censys のインデックス対象範囲にはばらつきがあります — すべての IP アドレスや組織が同じようにインデックス化されているわけではありません。小規模なインフラや新たにプロビジョニングされたインフラは、Censys の結果に表示されない場合があります。
  • 証明書の透明性は公開 CT ログに依存します — crt.sh による SSL サブドメインの検出対象は、パブリック CA が発行した証明書です。内部またはプライベート PKI の証明書は表示されません。
  • 過去の変化の分析は Wayback Machine のカバレッジに左右されます — Internet Archive にインデックス化されていないページ(robots.txt によりクロールが禁止されているページ、公開されたばかりのページ、トラフィックの少ないページ)では、取得できるスナップショットデータが最小限になります。
  • Exposure Score はリスクの指標であり、侵入テストではありません — このツールは、露出を示す表層的な指標を特定します。脆弱性の悪用、認証のテスト、検出された CVE が対象システムで実際に到達可能かどうかの確認は行いません。
  • SPF/DMARC の検出は DNS レコードの内容解析に依存します — 標準以外の形式のレコードは、正しく検出されない場合があります。

インテグレーション

  • Zapier — Zapier のワークフローから攻撃対象領域の評価を開始し、新たに高リスクのベンダーが登録された際に、検出結果を Slack、Jira、または HubSpot に振り分けます
  • Make — スケジュールに従って third_party_cyber_rating を呼び出し、結果を Google Sheets のリスク登録簿に記録するベンダーレビューワークフローを自動化します
  • Google Sheets — ベンダーポートフォリオ全体の Exposure Score とサイバー評価を、確認や追跡に使えるライブスプレッドシートに出力します
  • Apify API — HTTP 経由の JSON-RPC を使用して、GRC プラットフォーム、SIEM、またはセキュリティオーケストレーションツールから、この MCP サーバーをプログラムで呼び出します
  • Webhooks — attack_vector_report の実行が完了し、スコアがアラートのしきい値を超えた際に、SIEM またはチケット管理システムへ POST 通知を送信します
  • LangChain / LlamaIndex — 複数の組織シグナルにわたるサイバーリスクを統合する AI セキュリティエージェントで、攻撃対象領域のデータを検索ソースとして活用します

トラブルシューティング

  • Exposure Score のあるディメンションがすべて 0 になる — 特定のディメンションのスコアが 0 の場合、基盤となるアクターから空の結果が返された可能性があります。最も一般的な原因は、サブドメインが多数あるドメインで discover_attack_surface のステップがタイムアウトすることです。アクターの結果上限を下げるか、ツールを個別に実行して、どのデータソースで問題が発生しているかを特定してください。

  • Tech Stack Detector が 0 件のテクノロジーを返す — Tech Stack Detector は、200 のレスポンスを返す稼働中の URL を必要とします。https://yourdomain.com にアクセスでき、IP ホワイトリストで保護されていないことを確認してください。対象が SPA または JavaScript でレンダリングされるアプリの場合、Tech Stack Detector が完全に解析できないことがあります。この場合、Exposure Score の脆弱性および KEV のディメンションに影響します。

  • 既知の KEV があるソフトウェアでも CISA KEV チェックで一致が 0 件になる — KEV の相互参照では、テクノロジー名の文字列を照合します。Tech Stack Detector が、KEV カタログのベンダー/製品フィールドと完全には一致しない一般的なフレームワーク名を返すと、一致が見つからないことがあります。特定の製品バージョンを CISA KEV カタログ で検索して、手動で確認してください。

  • exposed_code_secrets_scan が 0 件のリポジトリを返す — GitHub 組織名が正確な GitHub 組織スラッグと一致しない場合、検索結果は返されません。ツールを呼び出す前に、組織の正確な GitHub ユーザー名を確認してください(大文字と小文字を区別します)。

  • 大規模なドメインでレート制限またはタイムアウトのエラーが発生する — 数百のサブドメインと Censys にインデックスされた多数のホストを持つ大規模なエンタープライズドメインでは、アクターがタイムアウトすることがあります(アクターごとに 120 秒の制限)。大規模なドメインでは、すべてのアクターを並列実行する attack_vector_report を使わず、infrastructure_sprawl_analysis と tech_stack_vulnerability_map を別々に実行してください。

責任ある使用

  • この MCP サーバーは、公開されているデータソース(DNS、WHOIS、証明書透明性ログ、NVD、CISA KEV カタログ、Wayback Machine、GitHub の公開リポジトリ、Censys)のみを使用して、受動的な偵察を行います。
  • いかなる場合も、アクティブスキャン、パケットの挿入、脆弱性の悪用は行いません。
  • 特にサードパーティーベンダーの評価では、対象ドメインを評価する権限があることを必ず確認してください。
  • CISA KEV のデータは、米国政府の公開カタログを情報提供目的で使用しています。調査結果に基づいて行動する前に、検証が必要です。
  • 引受審査、ベンダー契約、情報開示においてセキュリティインテリジェンスデータを使用する際は、適用される法律および規制を遵守してください。
  • ウェブスクレイピングと受動的な偵察の合法性に関するガイダンスについては、Apify's guide を参照してください。

FAQ

この MCP を介した攻撃対象領域のマッピングは、SecurityScorecard や BitSight とどう違いますか? SecurityScorecard と BitSight は、年間 2,000~10,000 ドル以上の費用がかかる、独自のデータ収集を行うサブスクリプション型のプラットフォームです。この MCP は、サブスクリプションなしで同じ公開ソースを評価ごとに 2~4 ドルで照会します。商用プラットフォームは、より広範な独自のベースラインを提供します。この MCP は、オンデマンド評価、API 駆動のワークフロー、AI アシスタントとの統合に適しています。

攻撃対象領域の検出では、アクティブスキャンや対象へのパケット送信を行いますか? いいえ。すべてのデータソースは受動的です。DNS クエリは公開リゾルバーに送信され、SSL 証明書は crt.sh の公開ログから取得され、ホストデータは Censys の事前構築済みスキャンインデックスから取得されます。また、テックスタックの検出では、公開アクセス可能な HTTP レスポンスを読み取ります。プローブ、挿入、悪用は一切行いません。このツールによって、対象ドメインに通常と異なるトラフィックが送信されることはありません。 技術スタックから CVE へのパイプラインの精度はどの程度ですか? 精度は、Tech Stack Detector が対象の URL で識別できる内容によって異なります。一般に公開されている技術(サーバーヘッダー、HTML メタタグ、JavaScript ライブラリのシグネチャ、CMS の指標)は確実に検出されます。認証の背後にある技術、内部サービス、または高度に難読化されたスタックは検出できません。CVE の照合は技術名に対するキーワードベースで行われ、バージョン固有の照合は行われません。

CISA KEV カタログとは何ですか?攻撃対象領域の評価で重要なのはなぜですか? CISA Known Exploited Vulnerabilities カタログは、米国サイバーセキュリティ・インフラストラクチャ安全保障庁が管理しており、実際に脅威アクターによって悪用されていることが確認された CVE を一覧にしています。拘束力のある運用指令 22-01 に基づき、米国連邦政府機関は定められた期限内に KEV の項目へパッチを適用する必要があります。ベンダーまたは対象の技術スタックで KEV との一致が見つかった場合、あらゆる攻撃対象領域評価において最も緊急性の高い検出結果となります。これは理論上のリスクだけでなく、悪用能力が確認されていることを示します。

1 回の実行で評価できるドメイン数はいくつですか? 各ツール呼び出しで評価するドメインまたは URL は 1 つです。ポートフォリオを一括評価するには、アプリケーションから HTTP API 経由でツールをループ処理によりプログラムから呼び出してください。Apify Scheduler を使って定期的なスキャンを実行し、maxTotalChargeUsd の上限を設定して一括処理のコストを管理してください。

この MCP をスケジュールして継続的に監視できますか? はい。Apify Scheduler を使って、discover_attack_surface または cisa_kev_exposure_check を毎日、毎週、または毎月実行するよう設定してください。ウェブフックと組み合わせれば、新たに高リスクの検出結果が見つかった際にチームへ通知できます。変更検出の用途では、historical_drift_detection ツールを週次スケジュールと組み合わせることで、実用的な侵害検知ワークフローを構築できます。

第三者のドメインに対して攻撃対象領域のマッピングを行うことは合法ですか? 一般に公開されているデータ(DNS レコード、WHOIS、証明書透明性ログ、公開されている脆弱性データベース)を使用したパッシブな偵察は、ほとんどの法域で合法です。このツールは脆弱性の悪用、プライベートシステムへのアクセス、または不正アクセスを行いません。ベンダー評価では、パッシブな偵察はサードパーティリスク管理における標準的な手法です。詳しくは、Apify のウェブスクレイピングの合法性に関するガイドをご覧ください。

完全な attack_vector_report の実行にはどのくらいかかりますか? 完全なレポートでは、最大 11 個のアクターを並列実行し、それぞれに 120 秒のタイムアウトを設定します。実際には、基盤となる各アクターがデータを返す速さに応じて、ほとんどの評価は 60~180 秒で完了します。サブドメインや Censys の結果が多いデータ豊富なドメインは、情報が最小限のドメインより時間がかかります。

どの Exposure Score でエスカレーションすべきですか? 推奨しきい値は次のとおりです。スコアが 55 を超える(MODERATE 以上)場合は、次のスプリント内にセキュリティレビューを予定してください。スコアが 75 を超える(CRITICAL)場合は、直ちにセキュリティチームの対応を依頼してください。CISA KEV との一致が返された場合は、合計スコアにかかわらずエスカレーションしてください。KEV との一致は、実際に悪用されるリスクがあることを示します。

この MCP を LangChain や LlamaIndex などの AI フレームワークと併用できますか? はい。https://entity-attack-surface-mcp.apify.actor/mcp の MCP エンドポイントは、あらゆる MCP クライアントと互換性があります。LangChain や LlamaIndex では、Apify インテグレーションを使うか、HTTP エンドポイントをカスタムツールとして直接呼び出してください。構造化された JSON レスポンスを利用すれば、攻撃対象領域のデータを他のデータソースと統合するセキュリティインテリジェンスエージェントを簡単に構築できます。 基盤となるアクターが失敗またはタイムアウトした場合、どうなりますか? オーケストレーション層は個々のアクターの失敗を捕捉し、実行全体を失敗させるのではなく、そのデータソースの空の配列を返します。他のアクターの結果は引き続き返されます。Tech Stack Detector などの重要なアクターがタイムアウトした場合、該当する指標のスコアは検出結果がゼロとして反映され、Exposure Score は実際より低くなります。actorsUsed フィールドには、データを正常に返したアクターの数が表示されます。

公開コードのシークレットスキャンはどのように機能しますか? このツールは、対象組織名に一致する公開リポジトリを GitHub で検索し、各リポジトリの名前、説明、フルネームを、3 つのリスクレベルに分類された 11 個のキーワードパターンと照合します。HIGH(secret、credential、password、token、api-key)、MEDIUM(private、internal、config、.env)、LOW(deploy、infra)です。12 か月以上コミットがない古いリポジトリにもフラグが付けられます。ファイルの内容は読み取らず、メタデータのみを分析します。

改善にご協力ください

問題が発生した場合、Apify アカウントで実行の共有を有効にすると、問題のデバッグを迅速に進めることができます。

  1. アカウント設定 > プライバシーに移動します
  2. Share runs with public Actor creators を有効にします

これにより、問題が発生した際に実行の詳細を確認できるため、より迅速に問題を解決できます。データを閲覧できるのはアクターの開発者のみで、一般公開されることはありません。

サポート

バグを見つけた場合や機能のリクエストがある場合は、このアクターのページにある Issues タブで問題を報告してください。カスタムソリューション、エンタープライズ向け統合、MSSP のボリューム価格については、Apify プラットフォームからお問い合わせください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。