# cve-research CVE,NVD,JVN iPediaの活用方法および脆弱性について 製品名や日本語で検索が可能です ## 基本知識 ### CVE (Common Vulnerabilities and Exposures) 世界共通の脆弱性識別子 「この脆弱性は何か」を一意に特定するID 公式サイト: https://cve.mitre.org 特徴: * CVE ID の存在確認が主目的 * 技術詳細はやや少なめ 形式: ``` CVE-2024-12345 ``` * **CVSS** (Common Vulnerability Scoring System) * 脆弱性そのものではなく「深刻度の評価指標」 * `CVSS v3.1 Base Score: 9.8 (Critical)` * 攻撃のしやすさ * 影響範囲 * 機密性・完全性・可用性 * 7.0以上: 要対応-9.0以上: 緊急 * CWE (Common Weakness Enumeration) * 脆弱性の種類・設計ミスの分類 * `CWE-798: Use of Hard-coded Credentials` その他見るポイントについて * Attack Vector * NETWORK → 特に危険 * Authentication * None = 未認証で攻撃可能 * Affected Versions * 自分の使っているバージョンが含まれるか ### NVD (National Vulnerability Database) 一番よく使われるCVEのデータベース 実務ではほぼここを見る。OSSの脆弱性調査もここが定番です。 * 運営: NIST(米国) * URL: https://nvd.nist.gov * 特徴: * CVE + CVSS + CWE を網羅 * 機械可読(JSON API) * NVDはAPIを提供しています。 * 少量利用 → APIキー不要 * 多量アクセス → 無料APIキー取得可 ``` https://services.nvd.nist.gov/rest/json/cves/2.0 ``` ### JVN iPedia(日本語) 日本語で確認したい場合のデータベース * 公式サイト: https://jvndb.jvn.jp + **特徴** * 日本語解説あり * 国内ベンダー・OSS対応 * CVEと完全対応 --- ## その他セキュリティで有名なAPIやツール * **cve.circl.lu** * 「CVE情報を取得するための軽量な公開API / DB」 * 運営: CIRCL(ルクセンブルクのCERT) * 無料・登録不要 * REST API で直接叩ける * OSS / 学習 / 個人ツール向け * API例: `https://cve.circl.lu/api/cve/CVE-2023-27524` * **Trivy** * 「実際の環境をスキャンする脆弱性スキャナ」 * 開発: Aqua Security * OSS(無料) * 超定番 * ローカル / CI / Docker / Kubernetes対応 * **スキャンできるもの** * Dockerイメージ、ファイルシステム、OSパッケージ、言語依存関係(pip / npm / etc0) * IaC(Terraform など) * 実行コマンド例: `trivy image apache/superset:latest` * 実行内容 * NVD / OSV などのDBを取得 * 依存関係と照合 * CVSSスコア付きで結果表示 * **Dependabot** * 提供: GitHub * GitHub上なら無料 * リポジトリ単位で有効化 * 機能の内容 * requirements.txt / package.json などを監視 * 脆弱なライブラリを検知 * 修正版へのPRを自動作成 * 例: ``` requests 2.28.0 に CVE-XXXX があるので 2.31.0 へ更新するPRを作りました ``` * 確認内容 * GitHub Advisory DB * NVD / OSV * CVEを意識しなくても勝手に対処が進む * 使いどころ * GitHub運用 * OSS / SaaS * ライブラリ中心のアプリ