セキュリティ

CPEとは?セキュリティ識別子・ネットワーク機器・CPEクレジットの違いと使い分け

CPEという略語は、脆弱性管理では製品を一意に表す識別子「Common Platform Enumeration」を、ネットワークでは利用者宅に置く通信機器「顧客構内設備(Customer Premises Equipment)」を、資格の世界では継続教育の単位「CPEクレジット」を指す。検索結果に通信事業者のページとセキュリティ標準のページが同時に並ぶのはこのためだ。この記事では4つの意味の見分け方をまず示し、そのうえでIT実務で扱う機会がもっとも多いセキュリティ識別子としてのCPEを、書式・CVEとの結び付き・2026年に起きた運用環境の変化まで掘り下げる。

まとめ

  • セキュリティ文脈のCPEはNISTが管理する製品識別子で、cpe:2.3:a:microsoft:internet_explorer:8.0.6001:beta:*:*:*:*:*:* のように部(part)・ベンダー・製品・バージョンなど11属性を固定順で並べる(NIST IR 7695)。
  • ネットワークのCPEは顧客構内設備。ホームゲートウェイやONU、セットトップボックスなど、事業者と利用者の責任分界点に置かれる機器を指す(JPNIC)。両者に技術的な関係はない。
  • 資格のCPEはContinuing Professional Education。CISSPなら3年間で120CPEが維持要件になる(ISC2)。
  • CVEが「脆弱性そのもの」のID、CPEが「影響を受ける製品」のID。NVDはCVEにCPEマッチ文字列を付けて、どの製品のどのバージョンが該当するかを機械可読にしている。
  • NVDは2026年4月15日から、CISA KEV掲載・連邦政府利用・大統領令14028の重要ソフトウェアに該当しないCVEを「Lowest Priority(即時エンリッチ対象外)」とした。CPEマッチ文字列が付かないCVEが構造的に増えるため、CPE照合だけに依存した脆弱性管理は取りこぼす。
  • OSSコンポーネントはpurl、商用製品はCPEが得意領域。SBOMには両方を載せておくのが現実解になる。

CPEの4つの意味と、どれを指しているかの見分け方

同じ3文字でも分野ごとに別物なので、まず自分が読んでいる文書がどの分野のものかを確定させたい。判断は「隣に何の語があるか」でほぼ付く。

分野 正式名称 意味 周辺に出る語
セキュリティ Common Platform Enumeration 製品を一意に識別する名前 CVE、NVD、SCAP、脆弱性、SBOM
ネットワーク Customer Premises Equipment 顧客構内設備(宅内機器) ルータ、ONU、SD-WAN、回線、事業者
資格 Continuing Professional Education 継続教育の単位(CPEクレジット) CISSP、ISC2、更新、クレジット
広告 Cost Per Engagement エンゲージメント1回あたりの単価 CPC、CPA、運用、インフルエンサー

セキュリティ・脆弱性管理のCPE(Common Platform Enumeration)

NISTが仕様を定める製品識別子で、OSやアプリケーション、ハードウェアを「ベンダー名+製品名+バージョン」の決まった書式で表す。人が書く「Windows Server 2019」「windows_server 2019」といった表記ゆれを吸収し、脆弱性情報と資産情報を機械的に突き合わせるための共通語彙にあたる。IT実務でCPEといえば通常これを指し、本記事の以降の章もこの意味で扱う。

ネットワークのCPE(顧客構内設備/Customer Premises Equipment)

JPNICの用語解説では、CPEは利用者の建物内に設置される通信機器を指し、事業者と利用者の責任分界点にあたると説明されている。具体例は電話機、ブロードバンドルータ、ケーブルモデム、セットトップボックスなど。SD-WANやマネージドルータのサービス資料に出てくる「CPE」はこちらで、識別子のCPEとは何の関係もない。

宅内機器のなかでも役割は分かれる。ONU(光回線終端装置)は光信号とイーサネット信号を相互変換する終端装置、ホームゲートウェイはONUの機能にルータ・ひかり電話・無線LANを統合した事業者貸与機器、市販ルータは利用者が自分で選ぶNAT・DHCP・無線LANの装置にあたる。事業者資料の「CPE」はこの3種をまとめて指すことが多く、責任分界点がどこかを読み取るときは「貸与か持ち込みか」で切り分けるとよい。回線工事や機器交換の話題であれば、ネットワークのCPEだと判断してよい。

資格のCPE(Continuing Professional Education=CPEクレジット)

セキュリティ資格や会計士資格の維持に必要な継続教育の単位。ISC2の場合、CISSPは3年間の認定期間で120CPE(うちグループBは30CPEまで)と年次維持費135ドルが維持要件になる。同じセキュリティ業界の話題でありながら識別子のCPEと紛らわしいのはこの用法で、「取得する」「貯める」という動詞が付いていればクレジットのほうだ。取得計画の立て方はCISSPの勉強方法|勉強時間・8ドメイン対策・教材を体系解説【2026年版】で扱っている(要件は改定されるため、最新はISC2公式で確認してほしい)。

広告のCPE(Cost Per Engagement)

いいね・シェア・動画視聴といった反応1件あたりの単価を指す広告指標で、広告費をエンゲージメント数で割って算出する。CPC(クリック単価)やCPA(獲得単価)と並べて出てくる。技術文書に登場することはまずないので、IT担当者が混同する場面は少ない。

Common Platform Enumeration の役割とSCAPでの位置づけ

CPE単体では脆弱性を検知しない。CPEはSCAP(Security Content Automation Protocol)を構成する要素のひとつで、担当は「製品名の語彙」に限られる。脆弱性そのものの識別はCVE、種類の分類はCWE、深刻度の点数化はCVSSが担い、CPEはそれらを自社の資産に結び付ける接着剤として働く。

資産台帳の「Apache HTTP Server 2.4.62」と、CVE告知の「2.4.0以上2.4.63未満が影響」(説明のための仮の例)を突き合わせる場面を考えるとわかりやすい。台帳側の製品名がCPEで表現されていれば、CVE側のCPEマッチ文字列と機械的に比較するだけで該当・非該当が判定でき、表記ゆれの人手照合が消える。SCAPの全体像はSCAPとは?セキュリティ設定共通化手順とSCAP 1.4の変更点【2026年版】、各識別子の役割分担はCVEとCWEの違いとは?脆弱性管理の基礎をCVSS・相互関係とあわせて解説で整理している。

CPE名の書式:URI形式とフォーマット文字列

現行仕様はCPE 2.3(NIST IR 7695)。ただしNVDのデータや古いスキャナ設定には2.2のURI形式が今も残っており、実務では両方を読む必要がある。

cpe:2.3 のフォーマット文字列と11属性

フォーマット文字列(FS)は、接頭辞 cpe:2.3: の後ろに11個の属性をコロン区切りで固定順に並べる。

cpe:2.3:part:vendor:product:version:update:edition:language:sw_edition:target_sw:target_hw:other

# NIST IR 7695 の例
cpe:2.3:a:microsoft:internet_explorer:8.0.6001:beta:*:*:*:*:*:*

先頭の part は製品の種別で、a=アプリケーション、o=OS、h=ハードウェア。vendor と product はベンダーが名乗る表記ではなく、CPE辞書に登録された表記(小文字・空白はアンダースコア)を使う点が実務上の落とし穴になる。

一方、CPE 2.2のURI形式は属性が7つしかなく、書式も異なる。

cpe:/{part}:{vendor}:{product}:{version}:{update}:{edition}:{language}

cpe:/a:microsoft:internet_explorer:8.0.6001:beta

2.2のURI形式には sw_edition や target_sw(動作するプラットフォーム)が無く、「Windows版のみ影響」といった条件を表現できない。CVEレコード形式のcpeApplicabilityブロックが受け付けるのはCPE 2.3名のみで、この表現力の差と整合する仕様になっている。

ただし cpe:/ で始まるからといって2.2とは限らない。CPE 2.3にもURIバインディングがあり、そこでは拡張された4属性を edition 欄に ~ 区切りで詰め込む(packed edition)。取り込み処理を書くときは接頭辞だけで判定せず、edition に ~ が含まれるかまで見て正規化する。

ワイルドカード「*」と「-」の使い分け

属性値に置ける記号は2種類あり、意味が逆になる。* はANY(どの値でもよい/未指定)、- はNA(該当なし=その属性は存在しない)を表す。上の例で末尾が * で埋まっているのは「言語やターゲットOSを問わない」という意味であって、「値が空」ではない。ここを - に置き換えるとマッチ結果が変わるため、CPE名を自分で書くときは既存の辞書登録名をコピーするのが安全だ。

公式CPE辞書での製品名の調べ方

正しいベンダー名・製品名はNVDのOfficial CPE Dictionary(nvd.nist.gov/products/cpe)で検索できる。辞書は名前の追加・修正がある日は毎晩更新され、NVDは辞書へのCPE名の提出も受け付けている。自社製品や社内システムの資産台帳にCPEを持たせるなら、まず辞書を引いて登録済みの正式表記があるかを確認し、無い場合にだけ命名規則に沿って自前で組み立てる、という順番になる。

PythonでのCPE名の解析・変換(PyPI cpeパッケージ)

CPE名の妥当性検証やURI形式とフォーマット文字列の相互変換は、PyPIの cpe パッケージで完結する。CPE 1.1/2.2/2.3と、WFN・URI・FSの3バインディングに対応している。

pip install cpe

>>> from cpe import CPE
>>> c22 = CPE('cpe:/o:redhat:enterprise_linux:4:update4', CPE.VERSION_2_2)
>>> c22.get_product()
['enterprise_linux']
>>> c22.as_wfn()
'wfn:[part="o", vendor="redhat", product="enterprise_linux", version="4", update="update4"]'

最新は1.3.1(2024年10月)でリリース間隔は長いため、NVD APIから取得した新しいデータを扱う場合は、正規化処理を自前で持っておくと仕様追随のリスクを切り離せる。

CVE・NVDにおけるCPEの使われ方

CVEレコードは「この脆弱性はどの製品のどのバージョンに影響するか」を示す必要がある。この対応付けがApplicability Statement(適用可能性ステートメント)で、中身はCPEマッチ文字列とバージョン範囲の組み合わせだ。CVE Record Formatでは、CNA(採番機関)とADPのコンテナにcpeApplicabilityブロックを置いてCPE 2.3名やマッチ文字列、バージョン範囲を記述できる。CNAが記述しなかった場合、従来はNVDのエンリッチ担当がCVEを分析してCPEを付与していた。

脆弱性スキャナやSCAツールが「この製品が危険です」と言えるのは、CVE側にCPEが付き、かつ自社資産側の製品名もCPEで表現できているときに限られる。どちらかが欠ければ検知は成立しない。CVEそのものの仕組みはCVE(共通脆弱性識別子)とは?仕組み・CVSS/CWE/NVDとの違いと2026年の運営体制変化、深刻度の読み方はCVSSとは?脆弱性の深刻度スコアの見方・計算方法とv4.0の変更点を解説にまとめている。

NVDの2026年4月の方針変更で、CPE照合だけの脆弱性管理は成立しなくなった

ここが2026年に最も押さえるべき変化だ。NISTは2026年4月15日から、NVDのエンリッチ対象を絞り込む運用に切り替えた。優先されるのは(1)CISAのKEV(既知の悪用された脆弱性)カタログ掲載CVE、(2)連邦政府で利用されるソフトウェアのCVE、(3)大統領令14028が定める重要ソフトウェアのCVEの3区分で、KEV掲載分は受領から1営業日での付与を目標にしている。これに当たらないCVEは「Lowest Priority – not scheduled for immediate enrichment」に分類される。2026年3月1日より前に公開されたバックログのCVEも「Not Scheduled」に移された。あわせてNISTは、提出元がすでに深刻度スコアを付けているCVEについて、NVDとして別個のスコアを定常的には付与しない運用へ切り替えている。背景はCVE登録数の急増で、NISTは2020年から2025年で263%増、2026年第1四半期は前年同期比で約3分の1増と説明している。

実務への影響は明確で、「NVDにCPEが付いているCVE」だけを追う運用は、脆弱性の取りこぼしを前提にした運用に変わったということだ。CNAが自らcpeApplicabilityを書いていればCPEは付くが、書かないCNAのCVEはKEV等に該当しない限り、CPEが付かないまま公開され続ける。CPEマッチに依存するスキャナは、そのCVEについて沈黙する。

優先度をつけるなら、まずKEVの日次確認だ。悪用が確認された脆弱性はNVD側でも最優先で処理されるうえ、放置したときの被害が最も大きい。次に、OSSについてはOSVやGitHub Advisory Databaseといったpurlベースの情報源を併用し、CPEが付いていなくても検知できる経路を確保する。商用製品やアプライアンスはこの経路が使えないため、ベンダーのセキュリティアドバイザリとディストリビューションのエラータの購読が最後の砦になる。CPEは商用製品の識別に依然として必要だが、単一の入口にはできない。

SBOMでのCPEとpurlの使い分け

SBOM(ソフトウェア部品表)を作るとき、コンポーネントの識別子としてCPEを書くかpurl(Package URL)を書くかで迷う場面がある。両者は競合ではなく守備範囲が違う。

観点 CPE purl
得意な対象 商用製品・OS・ハードウェア OSSパッケージ(npm、PyPI、Maven等)
名前の出どころ NVDの公式CPE辞書(中央管理) パッケージのメタデータから生成
未登録製品 辞書に無ければ照合できない パッケージが存在すれば必ず作れる
主な参照先 NVD、SCAP系ツール OSV、GitHub Advisory、OSS Index

purlはパッケージのメタデータから機械的に作れるため、CVEが採番されるまでCPE名が存在しないOSSライブラリでも識別子を用意できる。逆に商用ソフトウェアやアプライアンスはpurlの表現が弱く、CPEに分がある。CVE Record Format 5.2.0(2025年10月)では affected 配列に packageURL プロパティが追加され、CNAはCVEレコードにpurlを記載できるようになった(記載は任意)。CPEとpurlは置き換え関係ではなく、併記される前提で仕様が整備されている。

したがってSBOMを出力する側の実務判断は単純で、CycloneDXでもSPDXでも、書けるなら両方書く。片方しか書けないなら、対象がOSS中心ならpurl、商用製品やファームウェア中心ならCPEを優先する。スキャン側の挙動を確認したい場合は、Trivy(トリビー)とは|使い方・インストール・読み方の入門ガイド【2026】のようなツールでSBOMを読み込ませ、どの識別子で照合されているかを見ておくと運用設計がぶれない。

CPE運用でつまずく典型パターン

CPEを資産管理に組み込むときの詰まりどころは、仕様そのものより名前の扱いに集中する。以下はいずれも、CPE辞書の命名規則とマッチ仕様から構造的に生じるものだ。

  • ベンダー名の表記ゆれ:辞書上のvendorは microsoft のように小文字・アンダースコア区切りで、企業の正式社名とも製品パッケージの表示名とも一致しない。台帳側で「Microsoft Corporation」と持っているとマッチしない。
  • 辞書に存在しない製品:社内開発システムや国内ベンダーの製品は辞書に登録が無いことが多い。自前でCPE名を組み立てても、CVE側が同じ名前を使っていなければ照合は成立しない。CPEを付けること自体が目的化しやすいので、照合先があるかを先に確認する。
  • URI形式とFS形式の混在:古い設定ファイルやツールの出力に cpe:/a: 形式が残っていると、フォーマット文字列前提の照合ロジックから漏れる。取り込み時に形式を判定し、packed editionの有無まで見て正規化してから保存する。
  • バージョン範囲の取り違え:CPE名自体は単一バージョンしか表せず、「2.4.0以上2.4.63未満」のような範囲はマッチ文字列側のバージョン範囲指定で表現される。CPE名を文字列比較するだけの自作スクリプトは、範囲指定の脆弱性を丸ごと見落とす。

よくある質問(FAQ)

CPEとCVEの違いは何ですか?

CVEは脆弱性そのものに付く番号(例:CVE-2026-40175)、CPEは影響を受ける製品に付く名前です。CVEレコードの中に「どの製品のどのバージョンが該当するか」を示すCPEマッチ文字列が入る、という包含関係になります。

ネットワーク機器の「CPE」とセキュリティの「CPE」は関係がありますか?

ありません。ネットワークのCPEはCustomer Premises Equipment(顧客構内設備)で、ルータやONUなど宅内に置かれる機器を指します。セキュリティのCPEはCommon Platform Enumerationという識別子の仕様で、略語が同じだけの別概念です。

自社製品や社内システムのCPE名はどこで調べられますか?

NVDのOfficial CPE Dictionary(nvd.nist.gov/products/cpe)の検索機能で調べられます。辞書は毎晩更新され、NVDはCPE名の提出も受け付けています。登録が無い製品については、CVE側が同じ名前を参照しない限り照合が成立しない点に注意してください。

SBOMにはCPEとpurlのどちらを書くべきですか?

両方書けるなら両方書くのが安全です。OSSパッケージはpurlのほうが確実に識別でき、商用製品やハードウェアはCPEのほうが情報源とつながります。片方に絞るなら、対象コンポーネントの性質で選びます。

CPEが付いていないCVEはどう追えばよいですか?

2026年4月15日以降、NVDはKEV掲載・連邦政府利用・大統領令14028該当以外のCVEを即時エンリッチの対象外としています。CPEが付かないCVEは今後も増えるため、ベンダーのアドバイザリ、ディストリビューションのエラータ、purlベースのOSV・GitHub Advisory Databaseを併用して補完してください。

関連記事

資料請求

RELATED POSTS 関連記事