VulnCheck エクスプロイト&脆弱性インテリジェンスは、NIST National Vulnerability Database (NVD)、CISA KEVカタログなどをダウンロードするための別々のスクリプトを必要としません。VulnCheck エクスプロイト&脆弱性インテリジェンスを統合することで、脆弱性の悪用および脆弱性全般に関するクラス最高の情報をタイムリーに得ることができる、オープンソースインテリジェンス(OSINT)製品と統合されます。
最も重要なのは、他の純粋な脆弱性中心のソリューションとは異なり、VulnCheckはエクスプロイトインテリジェンスと脆弱性インテリジェンスを統合して提供する点です。エクスプロイトインテリジェンスと脆弱性インテリジェンスを組み合わせることで、脆弱性の優先順位付けと修正に関するより良い洞察が得られます。
悪用に関して、VulnCheck エクスプロイト&脆弱性インテリジェンスは、脆弱性の悪用状況を理解するのに役立つさまざまな機能を提供します。これには以下が含まれますが、これに限定されません。
VulnCheck APIは、VulnCheck エクスプロイト&脆弱性インテリジェンスの利用を簡単に開始できます。まず、次のようにexploitsインデックスに対して/v3/index/:index?cve=:cve APIをクエリします。
curl --request GET \
--url https://api.vulncheck.com/v3/index/exploits?cve=CVE-2024-4577 \
--header 'Accept: application/json' \
--header 'Authorization: Bearer insert_token_here'
package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
vulncheck "github.com/vulncheck-oss/sdk-go-v2/v2"
)
func main() {
configuration := vulncheck.NewConfiguration()
configuration.Scheme = "https"
configuration.Host = "api.vulncheck.com"
client := vulncheck.NewAPIClient(configuration)
token := os.Getenv("VULNCHECK_API_TOKEN")
auth := context.WithValue(
context.Background(),
vulncheck.ContextAPIKeys,
map[string]vulncheck.APIKey{
"Bearer": {Key: token},
},
)
resp, httpRes, err := client.IndicesAPI.IndexExploitsGet(auth).Cve("CVE-2024-4577").Execute()
if err != nil || httpRes.StatusCode != 200 {
log.Fatal(err)
}
prettyJSON, err := json.MarshalIndent(resp.Data, "", " ")
if err != nil {
log.Fatalf("Failed to generate JSON: %v", err)
return
}
fmt.Println(string(prettyJSON))
}
import vulncheck_sdk
configuration = vulncheck_sdk.Configuration(host="https://api.vulncheck.com/v3")
configuration.api_key["Bearer"] = "insert_token_here"
with vulncheck_sdk.ApiClient(configuration) as api_client:
indices_client = vulncheck_sdk.IndicesApi(api_client)
api_response = indices_client.index_exploits_get(cve="CVE-2024-4577")
print(api_response.data)
vulncheck index browse exploits --cve CVE-2024-4577
上記の例は、エクスプロイトインデックスを検索してCVE-2024-4577に関する情報を取得します。
有効なCVE識別子を使用して/v3/index/exploits?cve=:cve APIエンドポイントを呼び出した後、次のようなレスポンスが返されます。
{
"_benchmark": 0.046138,
"_meta": {
"timestamp": "2025-10-22T17:48:19.609308818Z",
// ...
},
"data": [
{
"id": "CVE-2024-4577",
"public_exploit_found": true,
"commercial_exploit_found": true,
"weaponized_exploit_found": true,
"max_exploit_maturity": "weaponized",
"reported_exploited_by_honeypot_service": true,
"reported_exploited_by_vulncheck_canaries": true,
"reported_exploited": true,
"reported_exploited_by_threat_actors": true,
"reported_exploited_by_ransomware": true,
"reported_exploited_by_botnets": true,
"inKEV": true,
"inVCKEV": true,
"timeline": {
"nvd_published": "2024-06-09T20:15:09.55Z",
"nvd_last_modified": "2025-10-21T23:16:37.27Z",
"first_exploit_published": "2023-01-13T00:00:00Z",
"first_exploit_published_weaponized_or_higher": "2024-06-07T00:00:00Z",
"most_recent_exploit_published": "2025-08-25T00:00:00Z",
"first_reported_threat_actor": "2024-06-07T00:00:00Z",
"most_recent_reported_threat_actor": "2025-10-07T00:00:00Z",
"first_reported_ransomware": "2024-06-10T00:00:00Z",
"most_recent_reported_ransomware": "2024-08-02T00:00:00Z",
"first_reported_botnet": "2024-07-25T00:00:00Z",
"most_recent_reported_botnet": "2024-11-07T00:00:00Z",
"cisa_kev_date_added": "2024-06-12T00:00:00Z",
"cisa_kev_date_due": "2024-07-03T00:00:00Z",
"vulncheck_kev_date_added": "2024-06-07T00:00:00Z",
"vulncheck_kev_date_due": "2024-07-03T00:00:00Z"
},
"trending": {
"github": false
},
"epss": {
"epss_score": 0.94374,
"epss_percentile": 0.99961,
"last_modified": "2025-10-20T21:40:23.840873662Z"
},
"counts": {
"exploits": 92,
"threat_actors": 4,
"botnets": 3,
"ransomware_families": 2
},
"exploits": [
{
"url": "https://raw.githubusercontent.com/vulncheck-oss/0day.today.archive/main/web-applications/39659.txt",
"name": "PHP < 8.3.8 - Unauthenticated Remote Code Execution (Windows) Exploit",
"refsource": "0day.today",
"date_added": "2024-06-14T00:00:00Z",
"exploit_maturity": "poc",
"exploit_availability": "publicly-available",
"validation_level": "third-party-aggregated"
},
{
"url": "https://api.vulncheck.com/v3/index/initial-access?cve=CVE-2024-4577",
"name": "PHP CGI Argument Injection",
"refsource": "vulncheck-initial-access",
"date_added": "2024-06-08T00:00:00Z",
"exploit_maturity": "weaponized",
"exploit_availability": "commercially-available",
"exploit_type": "initial-access",
"validation_level": "vulncheck-authored",
"clone_ssh_url": "git@git.vulncheck.com:vulncheck/initial-access.git"
}
// ...
],
"reported_exploitation": [
{
"url": "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json",
"name": "PHP-CGI OS Command Injection Vulnerability",
"refsource": "cisa-kev",
"date_added": "2024-06-12T00:00:00Z"
},
{
"url": "https://dashboard.shadowserver.org/statistics/honeypot/vulnerability/map/?day=2024-06-11&host_type=src&vulnerability=cve-2024-4577",
"name": "PHP (PHP-CGI) (CVE-2024-4577)",
"refsource": "shadowserver-exploited",
"date_added": "2024-06-11T00:00:00Z"
}
// ...
]
}
]
}
上記の例のレスポンスは、
CVE-2024-4577に対してexploitsインデックスが返す内容を示しています
| 属性 | 意味 |
|---|---|
| id | CVE ID |
| public_exploit_found | 公開エクスプロイトが発見されました |
| commercial_exploit_found | 商用エクスプロイトが発見されました |
| weaponized_exploit_found | 武器化とは、エクスプロイトがマルウェア (悪意のある Microsoft Word ドキュメントなど) 内に含まれている場合、実際に悪用されていることが報告されている場合、または「ポイント アンド クリック」エクスプロイトを容易にする場合 (すべてまたはほとんどのターゲットに対して機能し、MetaSploit、VulnCheck Initial Access Intelligence、CANVAS、または Core Impact のエクスプロイトなど、確実に動作する場合など) など、明らかに悪意のあるエクスプロイトを指します。さらに、兵器化されたエクスプロイトには通常、二次的なペイロード、ドロッパー、またはインプラントが含まれます。 |
| reported_exploited | 報告された悪用が確認されており、この脆弱性は実際に悪用・悪用されることが知られています。 |
| reported_exploited_by_threat_actors | 攻撃者がこの脆弱性を持っていると考えられています。 |
| reported_exploited_by_ransomware | この脆弱性はランサムウェア キャンペーンに悪用されています。 |
| reported_exploited_by_botnets | 1 つ以上のボットネットがこの脆弱性の原因であると考えられています。 |
| inKEV | CISA KEV (悪用された既知の脆弱性) カタログに含まれています。 |
| inVCKEV | VulnCheck KEV (悪用された既知の脆弱性) カタログに含まれています。 |
| 最大エクスプロイト成熟度 | 意味 |
|---|---|
| Weaponized | 武器化済みとは、悪意のあるエクスプロイトを指します。例えば、マルウェア内に含まれるエクスプロイトや、実際に悪用されたことが報告されたもの、または「クリックするだけ」での悪用を容易にするもの(MetaSploit、VulnCheck Initial Access Intelligence、CANVAS、Core Impactなどで広く悪用できるもの)が該当します。通常、武器化されたエクスプロイトには、二次ペイロード、ドロッパー、またはインプラントが含まれます。 |
| reported_exploited_by_honeypot_service | エクスプロイト活動によりサードパーティのハニーポットが起動しました。 |
| reported_exploited_by_vulncheck_canaries | エクスプロイト活動により、VulnCheck カナリアがトリガーされました。 |
| POC | POC(概念実証)は、現在悪用を実証するために使用できるものを指します。これには、ブログ投稿、curlリクエスト、Pythonスクリプトなどが含まれます。 |
| 属性 | 意味 |
|---|---|
| nvd_published | NVD が脆弱性を公開したとき。 |
| nvd_last_modified | NVD が最後に脆弱性を変更したとき |
| first_exploit_published | 最初のエクスプロイトが公開されたとき |
| first_exploit_published_weaponized_or_higher | 最初の武器化されたエクスプロイトまたはエクスプロイトの証拠が入手可能になったとき。 |
| most_recent_exploit_published | 最後のエクスプロイトが公開されたとき |
| first_reported_threat_actor | 最初の攻撃者が報告されたとき |
| most_recent_reported_threat_actor | 最新の脅威アクターが報告された時期 |
| first_reported_ransomware | ランサムウェアが最初に報告されたとき |
| most_recent_reported_ransomware | ランサムウェアが最後に報告された時期 |
| first_reported_botnet | ボットネットが最初に報告されたとき |
| most_recent_reported_botnet | ボットネットが最後に報告された時期 |
| cisa_kev_date_added | CVE が CISA KEV に追加されたとき |
| cisa_kev_date_due | CISA KEV の期限 |
| vulncheck_kev_date_added | 最初に知られている悪用が報告されたとき |
* 証拠がない場合、またはヌルの日付が存在する場合、タイムライン属性は省略されます。
| 属性 | 意味 |
|---|---|
| epss_score | EPSS スコア |
| epss_precentile | EPSS パーセンタイル |
| 属性 | 意味 |
|---|---|
| exploits | 発見されたエクスプロイトの総数。 |
| threat_actors | 攻撃者の総数。 |
| botnets | 起因するボットネットの総数。 |
| ransomware | この脆弱性を利用したランサムウェア キャンペーンの総数。 |
VulnCheck エクスプロイト&脆弱性インテリジェンスは、インデックス化されたエクスプロイトのブロック内にエクスプロイトタイプフィールドを維持しています。このフィールドは、初期アクセスエクスプロイトのような高影響のエクスプロイトと、サービス拒否エクスプロイトのような低影響のエクスプロイトを区別するのに役立ちます。
| エクスプロイトタイプ | 意味 |
|---|---|
| Initial Access | 初期アクセスエクスプロイトは、通常最も高い影響を持つエクスプロイトです。これらの脆弱性は、リモートコード実行(RCE)脆弱性とも呼ばれ、リモートで実行され、悪用に資格情報を必要としないことが多いです。 |
| Remote with credentials | リモートで資格情報を必要とするエクスプロイトは、ネットワークに接続されたアプリケーションをターゲットにしますが、悪用には資格情報が必要です。 |
| Local | ローカルエクスプロイトの例には、Linuxのsetuidバイナリを対象とするものが含まれます。 |
| Client-side | クライアントサイドエクスプロイトの例には、Microsoft WordやExcelなどのクライアントアプリケーションを対象とするものがあります。 |
| Infoleak | 情報漏洩エクスプロイトは、ターゲットからデータを漏洩させますが、ターゲットの完全性には影響しません。 |
| Denial of Service | サービス拒否エクスプロイトは、通常、サービスやアプリケーションをクラッシュさせます。注: サービス拒否エクスプロイトは、初期アクセスエクスプロイトが投稿される前に、初期アクセス脆弱性を対象とすることが多いです。 |
上記の表は、現在利用可能なVulnCheck エクスプロイト&脆弱性インテリジェンスのエクスプロイトタイプを示しています。
| Exploit Availability | 意味 |
|---|---|
| commercially-available | VulnCheck Initial AccessやCore Impactのエクスプロイトのように、商用として提供されています。 |
| publicly-available | Gitベースのエクスプロイト、ブログ投稿、Metasploitモジュール、Nucleiテンプレートのように、公開されています。 |
| privately-available | 公開されておらず、商用としても提供されていません。 |
exploits配列の各エントリには、そのエクスプロイトがどの程度検証されているかを示すvalidation_levelフィールドが含まれます。以下の値は、検証の根拠が強い順に並んでいます。
| Validation Level | 意味 |
|---|---|
| vulncheck-authored | VulnCheckのエクスプロイト開発者が作成し、保守しています。 |
| vulncheck-exploit-dev-review | VulnCheckのエクスプロイト開発者が技術的にレビューしています。 |
| vulncheck-analyst-review | VulnCheckのアナリストが関連性と信頼性をレビューしていますが、必ずしも実行検証は行っていません。 |
| third-party-validated | 信頼できる第三者が、そのエクスプロイトが動作することを主張または実証しています。 |
| third-party-aggregated | 第三者によって収集されましたが、技術的な検証の根拠はありません。 |
| uncategorized | 検証レベルが未割り当てです。 |
reported_exploitationのエントリには検証レベルは含まれません。これらはエクスプロイトそのものではなく、脆弱性が悪用されたという報告であるためです。
Gitでホストされているエクスプロイト(refsourceがgithub-exploits、gitlab-exploits、gitee-exploits、bitbucket-exploits、codeberg-exploitsのいずれかであるもの)は、VulnCheckのエクスプロイト開発者によるレビューを経た後、VulnCheck独自のgitサービスに一度だけクローンされます。このクローンは意図的な特定時点のスナップショットです。VulnCheckは再取得を行わないため、上流のリポジトリがその後に書き換えられ、force-pushされ、非公開化され、あるいは削除されたとしても、取得できる内容はレビュー時点の内容と一致します。したがってスナップショットは実際のリポジトリより古い場合があります。これは欠陥ではなく、提供している保証そのものです。
| 属性 | 意味 |
|---|---|
| clone_ssh_url_cached | VulnCheckがキャッシュしたリポジトリのクローンのSSH URL。クローンにはclone-gitエンタイトルメントと、アカウントに登録されたSSHキーが必要です。 |
| commit_hash | VulnCheckがキャッシュしたクローンが固定されている40文字の16進コミット。 |
| date_cached | VulnCheckが自身のコピーを凍結した時刻(RFC3339形式)。 |
date_addedはレビュー日ではありませんGit由来のエクスプロイトエントリにおけるdate_addedは上流のリポジトリを示すもので、通常はそのリポジトリが作成された日付です。VulnCheckがエクスプロイトをレビューした日付でも、VulnCheckがリポジトリをキャッシュした日付でもありません。後者にはdate_cachedを使用してください。
この2つは頻繁に異なります。github.com/0Nightsedge0/CVE-2024-9950-PoCの例:
| フィールド | 値 | 意味 |
|---|---|---|
| date_added | 2025-01-12T00:00:00Z | 上流のリポジトリは2025年1月12日に作成されました |
| date_cached | 2025-01-22T15:49:20Z | VulnCheckはその10日後に自身のコピーを凍結しました |
reference_urlは現在のリポジトリを参照し続けますreference_urlはコミットではなくブランチを指しているため、現在そのブランチの先頭にあるものを解決します。固定はされていません。ブランチ参照をcommit_hashに置き換えることで、不変な形式を再構成できます。
| 形式 | URL |
|---|---|
| ブランチ参照(可変) | https://raw.githubusercontent.com/0Nightsedge0/CVE-2024-9950-PoC/refs/heads/main/CVE-2024-9950-PoC.ps1 |
commit_hashに固定(不変) | https://raw.githubusercontent.com/0Nightsedge0/CVE-2024-9950-PoC/87dc974de7cfd04e899c2c532fab6440306fc902/CVE-2024-9950-PoC.ps1 |
同じ置き換えにより、https://github.com/<owner>/<repo>/tree/<commit_hash>という形式でツリー全体の不変なビューを得られます。
キャッシュされたコピーをクローンし、そのHEADが公開されているcommit_hashと一致することを確認します。
git clone git@git-poc.vulncheck.com:github.com/<owner>/<repo>.git
cd <repo>
git rev-parse HEAD
出力される値は、エクスプロイトエントリのcommit_hashと一致します。クローンにはclone-gitエンタイトルメントが必要です。アクセスの設定についてはSSHキーを参照してください。