コンテンツにスキップ

プレビュー版

このガイドはプレビュー版です。内容は今後変わることがあります。

ライブラリ・商用製品を登録する#

使う方法だけ読む

OS のパッケージ以外のソフトウェアを管理します。アプリケーションが使っている言語のライブラリ(npm、pip、gem、Maven など)と、パッケージ管理の外で入れた商用製品やミドルウェア(Oracle、JP1、ダウンロードした Tomcat など)の2つに分けて説明します。ネットワーク機器はネットワーク機器を登録するをご覧ください。

  • 対象者

    技術担当(アプリケーションやミドルウェアを担当する方)

  • 所要時間

    方法によって異なります

  • このページでわかること

    ライブラリの登録方法の選び方と、CPE 登録の手順

  • 完了の目安

    管理したいライブラリやソフトウェアがソフトウェア一覧に並び、脆弱性が検知されている

アプリケーションの依存ライブラリ#

ライブラリの情報をどこから取れるかで、方法が決まります。複数の方法を組み合わせても構いません。

情報の取り方 方法 更新
CI/CD のツールを使っている Docker スキャン(Trivy)の CI/CD 連携:ビルドのたびに依存ライブラリを自動で登録します 自動
サーバ上に lockfile がある ☆ローカルスキャン(lockfile を指定):スキャナの設定ファイルに lockfile のパスを書きます。lockfile の内容を解析します 自動
手元に lockfile だけがある LockFile ペーストスキャン:スキャナは不要です。lockfile の内容を画面に貼り付けます 手動
ビルドのパイプラインで SBOM を作っている SBOM インポート(SBOM インポート)。部品に PURL があることをおすすめします(PURL も CPE もない部品は、割り当てるまで検知されません)。SBOM を更新する運用が前提です 手動
ソースコードを GitHub で管理している GitHub 連携:GitHub のセキュリティアラートの検知結果を取り込みます 自動
AWS(EC2・Lambda)で動いている Amazon Inspector 連携(Amazon Inspector 連携) 自動

ライブラリは、ライブラリ名とバージョン(PURL)で識別し、脆弱性を検知します。GitHub Actions で lockfile を自動で更新する場合は、fvuls-lockfile-uploader の v2 を使ってください(CI/CD パイプラインに組み込む)。C/C++ のソースに同梱されたライブラリは、専用のツールで識別できます(C/C++ ライブラリ)。lockfile の指定方法はアプリケーションスキャン、GitHub 連携はGitHub 連携、対応している言語は対応環境をご覧ください。

商用製品・ミドルウェア(CPE 登録)#

CPE は、製品とバージョンを世界共通の書き方で表した名札です(例:cpe:/a:apache:http_server:2.4.54)。ソフトウェアに CPE を割り当てると、脆弱性データベース(NVD、JVN など)と照らし合わせて脆弱性を検知できます。

CPE 登録が向いているもの・向かないもの#

向いているもの 向かないもの(別の方法を使う)
ソースからのビルド、インストーラでの導入、手動配置など、OS のパッケージ管理の外で入れたソフトウェア OS のパッケージ(rpm、deb、apk)→ ローカル・リモート・ペーストスキャンを使います。CPE で検知すると誤検知が多くなります
Oracle Database、JP1 などの商用ミドルウェアやアプライアンス 言語のライブラリ(npm、Maven、PyPI など)→ アプリケーションスキャンや SBOM インポート(PURL で検知)を使います

Windows のサードパーティ製品は、グループ設定の「CPE 自動割当」を使うと、自動で CPE を付けられます。

登録の前に用意するもの#

  • 製品名とベンダ名
  • 正確なバージョン(例:2.4.54。「2.4系」では足りません)
  • 登録先のサーバ(既存のサーバ、または管理用の擬似サーバ)

NVD の CPE 検索ページで、その製品の CPE があるかを先に確かめておくと確実です。複数のソフトウェアにまとめて割り当てる「CPE 割当」ボタン(ソフトウェア一覧)では、候補ごとに NVD の検索ページへのリンクも表示されます。

手順#

  1. 登録の方法を選ぶ - 一覧にまだないソフトウェアを足すとき:サーバ詳細の「ソフトウェア」タブで「ソフトウェア登録」を押します。開いた画面で製品名とバージョンを選ぶか、CPE の文字列を直接入力して登録し、手順4に進みます。 - 一覧にはあるが脆弱性が出ていないソフトウェアに付けるとき:「ソフトウェア」タブで対象をクリックし、「CPE/PURL 割当」を開いて手順2に進みます。
  2. 割り当ての方法を選ぶ:CPE の欄の ⊕ を押すと、「ベンダ名/プロダクト名割当」と「CPE 割当」を選ぶ画面が出ます。 - ベンダ名/プロダクト名割当:ベンダ名と製品名だけを決めます。バージョンはソフトウェアのバージョンから自動で補われます。ソフトウェアの種類によっては選べません。 - CPE 割当:バージョンまで含めて自分で決めます。バージョンを上げたときは、CPE も手で直す必要があります。 - CPE の欄に「検証済辞書に基づき CPE が自動で割り当てられます」と出ている場合は、自動割当が有効です。手で割り当てるときは、右のアイコンで自動割当を無効にしてから ⊕ を押します。
  3. 製品を探して、バージョンを選ぶ(CPE 割当の場合):「CPE 検索」タブで vendor/product を入れて「検索」を押し、「version」で実際に入っているバージョンを正確に選んで「送信」します。「* (ANY)」のままにすると誤検知が増えます。CPE の文字列がわかっている場合は、「直接入力」タブで入力できます。
  4. 手動スキャンで確認する:登録した CPE は、次のスキャンで初めて照らし合わされます。手動スキャンを1回実行し、CPE と紐づく脆弱性が一覧に並ぶことを確認します。

複数をまとめて登録したいときは、テキストでの一括登録、CSV(製品名,バージョン,ベンダ名)、OWASP Dependency Check の XML、API も使えます。

ソフトウェア詳細の「CPE/PURL 割当」タブと、CPE の欄の ⊕

「ベンダ名/プロダクト名割当」と「CPE 割当」を選ぶ画面

「CPE 割当」の「CPE 検索」で、vendor/product を検索した画面

運用で知っておきたいこと#

  • バージョンを上げたら CPE も更新する:CPE は自動では変わりません。古いままだと、直したはずの脆弱性が出続けます。
  • 「非推奨 CPE」の警告が出たら更新する:NVD 側で古い形式になった CPE です。そのままだと新しい脆弱性が検知されなくなります。
  • CPE を外すと、紐づく脆弱性とタスクも消える:割り当てを解除した時点で、その CPE で検知していた情報は削除されます。
  • 「JVN で検知」は和製ソフトのときだけ:NVD に情報がない和製ソフトのときだけ使います。バージョンを問わず製品名で検知するため、誤検知が増えます。

ソフトウェア一覧の「脆弱性検知」列で、「要 CPE 割当」や「要見直し」と表示されたソフトウェアを見つけられます。各表示の意味と対応は脆弱性検知列をご覧ください。

よくあるつまずき#

症状 原因と対処
検知が多すぎる バージョンが「* (ANY)」や「2.4系」のような指定になっていないかを確認します
以前は出ていた脆弱性が出なくなった 2026年10月のリリースで、バージョンを厳密に比較できない場合の近似的な照合(あいまいな一致)を廃止し、誤検知を減らしました。実際に入っているバージョンを正確に登録してください。あわせて、OpenSSL の 1.1.1n のような英字を含むバージョンも正しく照合できるようになっています
検知が少なすぎる、出ない 手動スキャンを実行したか、NVD にその CPE の情報があるか、ベンダ名の綴りが合っているかを確認します

つまずいたとき#

うまくいかないときは、つまずいたとき(よくある質問)をご覧ください。

それでも解決しない場合は、お問い合わせ窓口からご連絡ください。対象の製品名とバージョン、割り当てた CPE、期待する検知結果を添えていただくと、調査が早くなります。

さらに詳しく知りたいとき#

次に読むページ#

登録が終わったら、設定② サーバ・製品を登録するの「初期範囲のサーバをすべて登録したら」で確認します。

設定② サーバ・製品を登録するへ進む