情報セキュリティ

共通プラットフォーム一覧CPE概説

最終更新日:2018年5月31日

独立行政法人 情報処理推進機構
セキュリティセンター

CPE(Common Platform Enumeration)
~製品を識別するための共通のプラットフォーム名の一覧~

共通プラットフォーム一覧CPE(Common Platform Enumeration)(*1)は、情報システムを構成する、ハードウェア、ソフトウェアなどを識別するための共通の名称基準を目指しています。

CPEは、米国政府が推進している情報セキュリティにかかわる技術面での自動化と標準化を実現する技術仕様SCAP(Security Content Automation Protocol)(*2)の構成要素のひとつです。米国政府の支援を受けた非営利団体のMITRE社(*3)が中心となり仕様策定を進めており、2007年1月30日に最初の原案であるCPEバージョン1.0が公開されました。

その後、米国の脆弱性対策データベースであるNIST(*4)のNVD(*5)、米国政府のデスクトップ基準であるFDCC(Federal Desktop Core Configuration)(*6)での適用を通して、仕様改善が行われ、2008年1月31日にCPEバージョン2.1が公開されました。

CPEでは、ハードウェア、オペレーティングシステム、アプリケーションなどのプラットフォームを識別するための、構造化された名称体系を規定しています。また、規定に沿ってプラットフォームに付与した名称一覧がCPE Dictionaryとして、2008年4月15日にNISTから公開されました。

CPEを用いると、ベンダ、セキュリティ専門家、管理者、ユーザ等の間で、脆弱性の存在する対象となるプラットフォームを共通の言葉で議論できるようになります。また、情報システムの資産管理への適用など、情報システムの全般の管理にも役立てることができます。

本資料はMITRE社から2008年1月31日に公開されたCPEバージョン2.1の仕様書と、2008年4月15日にNISTから公開されたCPEバージョン2.1対応のCPE Dictionaryを基に作成しました。詳細は、MITRE社のCPE仕様書とNISTのCPE Dictionaryを参照して下さい。

1. CPE名

CPE名は、ハードウェア、オペレーティングシステム、アプリケーションなどのプラットフォームを識別するため名称です。このCPE名には,2つの特徴があります。
ひとつ目は名称の中に製品種別(ハードウェア,OS,アプリケーション)を加味していること。
ふたつ目はベンダ名と製品名とを連結して名称を生成していることです。

CPE名の基本構成

cpe:/{種別}:{ベンダ名}:{製品名}:{バージョン}:{アップデート}:{エディション}:{言語}

  • ポイント1:大文字と小文字の区別はありません。
  • ポイント2:基本構成のそれぞれの箇所が空白の場合、「全て」を意味します。例えばバージョンが空白の場合、全てのバージョンを意味します。

(1) 種別

CPE名の最初の項目では、製品種別(ハードウェア,OS,アプリケーション)を判別する情報として,h=ハードウェア,o=OS,a=アプリケーションを記述します。将来のCPEバージョンでは、d=ドライバ、l=ライブラリ、r=ランタイム環境、v=仮想化などが加わる可能性があります。

(2) ベンダ名

CPE名の2つ目の項目は、ベンダ名を記述します。ベンダ名は、ドメイン名を利用して作成します。組織名とドメイン名が違う場合でも、ドメイン名を優先します。例えば、(独)情報処理推進機構の場合には、ドメイン名がipa.go.jpであることから、ipaをベンダ名として採用します。

同一名称の2つの異なったベンダがある場合は、完全なドメイン名を使用します。例えば、cpe:/a:acmeが既にCPE Dictionaryに存在しwww.acme.comを表している場合、新たなwww.acme.orgのベンダの新CPE名はcpe:/a:acme.orgとなります。

アプリケーションにベンダや組織が存在しない場合、CPE名に開発者名を使用します。また、ベンダ名や開発者名が複数の単語で構成されている場合、スペースの代わりにアンダースコア(_)を使用します。

ベンダ名がマーケティングや買収などにより変化する場合でも、既存の古いベンダ名のCPE名は変更しません。新たな製品に対しては、新たなベンダ名の新しいCPE名を作成します。

(3) 製品名

CPE名の3つ目の項目では、製品名を記述します。複数の単語で構成されている製品名の場合、スペースをアンダースコア(_)に置き換えた名前を記述します。

例えば、Zone LabsのZoneAlarm Internet Security Suite version 7.0の場合は次のようになります。

  • cpe:/a:zonelabs:zonealarm_internet_security_suite:7.0

複数の単語で構成している製品でも、ベンダが正式に略称を使用し、CPE名が不明瞭にならない場合、略称を採用します。たとえば、「Internet Explorer」の「ie」や「Java Runtime Environment」の「jre」等です。

製品名が変更になった場合でも、既存のCPE名は修正しません。製品の新たなバージョンに対しては、新たな製品名の新しいCPE名を作成します。

(4) バージョン

CPE名の4つ目の項目では、製品のバージョン情報を記述します。

バージョンの記述は、製品名の記述で用いる形式(ピリオド(.)やダッシュ(-)記号などの使用方法)と同様の形式で表示します。

例えば、Adobe Reader version 8.1の場合は次のようになります。

  • cpe:/a:adobe:reader:8.1

(5) アップデート

CPE名の5つ目の項目では、製品のアップデートやサービスパックの情報を記述します。バージョンとアップデートの違いは、ベンダや製品が出す情報に依存します。

例えば、Red Hat Enterprise Linux 4.0 Update 4の場合は次のようになります。

  • cpe:/o:redhat:enterprise_linux:4:update4

通常、製品の最初の公開時にはアップデートの記載はありません。例えば、Enterprise Linuxの最初の公開時にupdate 0の記載はありませんし、Microsoft Windows 2000の最初の公開時にService Pack 0の記載はありません。

しかし、特にベンダが製品の最初の公開時にアップデートを記載している場合もあります。例えば、Red Hatが使用しているGeneral Availability(ga)の場合は次のようになります。

  • cpe:/o:redhat:enterprise_linux:4:ga

(6) エディション

CPE名の6つ目の項目では、製品のエディションを記述します。エディションとはソフトウェア等の提供方法等(例:プロフェッショナル版、無償版)を示します。

例えば、Microsoft Windows 2000 Service Pack 4 Professional Editionの全てのバージョンを示す場合は次のようになります。

  • cpe:/o:microsoft:windows_2000::sp4:pro

(7) 言語

CPE名の7つ目の項目では、製品で使用している言語を特定したい場合に記述します。この項目の表記には、言語識別のためのIETF RFC 4646(*7)のタグを利用します。

例えば、Mozilla Firefox version 2.0.0.6の Mac OSX用の日本語版の場合は次のようになります。

  • cpe:/a:mozilla:firefox:2.0.0.6::osx:ja

(8) 略称について

CPE名では、CPE名をできる限り短くするために略称を利用します。表1に一般的な用語とCPE名で利用する略称を記載します。

表1. CPEが用いる略称

#1 advanced

adv

#2 professional

pro

#3 server

srv

#4 standard

std

#5 edition

ed

#6 version 3.4

3.4

#7 patch level 3

pl3

#8 release 3

r3

#9 release candidate 2

rc2

#10 service pack 4

sp4

#11 support pack 2

sup2

#12 service release 2

sr2

#13 security rollup

sru

#14 general availability

ga

(9) 予約文字について

CPE名を記載するにあたり、表2の予約文字を直接、使用することはできません。使用したい場合は、表2のパーセントエンコーディングの表記を用いる必要があります。

表2. CPEの予約文字

#1 colon

予約文字(読み方)

:(コロン)

%表記

%3A

#2 slash

予約文字(読み方)

/(斜線)

%表記

%2F

#3 question mark

予約文字(読み方)

?(疑問符)

%表記

%3F

#4 pound sign

予約文字(読み方)

#(番号記号)

%表記

%23

#5 open bracket

予約文字(読み方)

[(左大括弧)

%表記

%5B

#6 close bracket

予約文字(読み方)

](右大括弧)

%表記

%5D

#7 at sign

予約文字(読み方)

@(単価記号)

%表記

%40

#8 exclamation point

予約文字(読み方)

!(感嘆符)

%表記

%21

#9 dollar sign

予約文字(読み方)

$(ドル記号)

%表記

%24

#10 ampersand

予約文字(読み方)

&(アンパサンド)

%表記

%26

#11 apostrophe

予約文字(読み方)

'(アポストロフィー)

%表記

%27

#12 open parenthesis

予約文字(読み方)

((左小括弧)

%表記

%28

#13 close parenthesis

予約文字(読み方)

)(右小括弧)

%表記

%29

#14 asterisk

予約文字(読み方)

*(アステリスク)

%表記

%2A

#15 plus sign

予約文字(読み方)

+(正符号)

%表記

%2B

#16 comma

予約文字(読み方)

,(コンマ)

%表記

%2C

#17 semi-colon

予約文字(読み方)

;(セミコロン)

%表記

%3B

#18 equal sign

予約文字(読み方)

=(等号)

%表記

%3D

#19 percent-sign

予約文字(読み方)

%(
パーセント)

%表記

%25

#20 angle bracket

予約文字(読み方)

<(不等号(より小))

#21 angle bracket

予約文字(読み方)

>(不等号(より大))

%表記

%3E

#22 double quote

予約文字(読み方)

"(引用符)

%表記

%22

2. CPE Dictionary

CPE Dictionaryは、CPE仕様書に従ってプラットフォームに付与したCPE名と、CPE名の一般名とを併記した辞書で、NISTから公開されています。CPE DictionaryはXMLによって記載されたプラットフォームの一覧ということができます。

<cpe-item name="cpe:/a:ipa:myjvn">
<title xml:lang="en-US">IPA MyJVN</title>
<title xml:lang="ja">(独)情報処理推進機構 MyJVN</title>
</cpe-item>

3. IPAでのCPEの試行について

IPAでは、NISTが公開しているCPE Dictionaryを参考に、脆弱性対策情報データベース「JVN iPedia( http://jvndb.jvn.jp/ )」で公開するそれぞれの脆弱性対策情報をCPE名で関連付ける脆弱性対策情報共有ツール「MyJVN(マイ・ジェイブイエヌ、http://jvndb.jvn.jp/apis/myjvn/ )」を開発しました(*8)。

MyJVNでは、JVN iPediaに登録されている脆弱性対策情報をCPE名で関連付けることにより、利用者に関係する情報のみを表示するだけではなく、ベンダ名、製品名でのグループ化した表示を実現しています。

今後、NISTが提供するCPE Dictionaryとの連携を図り、製品識別子としてのCPE名を利用していくことで、脆弱性対策情報の提供ならびに流通基盤の整備を図っていくなど、検討を行っていきます。

脚注

  1. (*1)
    CPE(Common Platform Enumeration):製品を識別するための共通のプラットフォーム名の一覧。
  2. (*2)
    SCAP(Security Content Automation Protocol):米国政府が推進している情報セキュリティにかかわる技術面での自動化と標準化を実現する技術仕様。
  3. (*3)
    MITRE Corporation:米国政府向けの技術支援や研究開発を行う非営利組織。
  4. (*4)
    NIST(National Institute of Standards and Technology):米国国立標準技術研究所。米国の科学技術分野における計測と標準に関する研究を行う機関。
  5. (*5)
    NVD(National Vulnerability Database):NISTが運営する脆弱性データベース。
  6. (*6)
    FDCC(Federal Desktop Core Configuration):米国政府が各省庁に向けて、デスクトップ環境の最低限のセキュリティ設定を実施するように定めた基準。
  7. (*7)
    IETF RFC 4646言語識別用タグ。
  8. (*8)

お問い合わせ先

IPA セキュリティセンター(IPA/ISEC)

  • E-mail

    vuln-inqアットマークipa.go.jp

更新履歴

  • 2018年5月31日

    お問い合わせ先を更新

  • 2015年7月22日

    参考情報を追加

  • 2014年3月20日

    参考情報を追加

  • 2010年6月24日

    参考情報を追加

  • 2010年2月25日

    参考情報を追加

  • 2008年10月23日


    掲載