Microsoft Plutonセキュリティ プロセッサを理解する
※ 本ブログは、米国時間 2025/1/31 に公開された “Understanding the Microsoft Pluton security processor” の抄訳です。
2024年、Microsoft Plutonセキュリティ プロセッサ (Pluton) がすべてのCopilot+ PC でデフォルトで有効になることを発表しました。PC パートナーの豊富なエコシステムによって製造された新しい Pluton デバイスを使用して、この基礎的なテクノロジーとそれがどのように進化し続けるかを深く掘り下げる機会を設けました。
Pluton とは?
マイクロソフトのPlutonセキュリティ プロセッサは、Windows 11 のための、安全で、柔軟で、更新可能なハードウェア基盤です。2020 年にマイクロソフトがシリコン パートナーとともにPlutonを発表した当初、私たちはPlutonがデバイスにもたらすセキュリティ上の利点と保護について説明しました。それ以来、マイクロソフトはシリコン パートナーやデバイス パートナーと協力し、PC 市場における Plutonの存在感を高める努力を続けています。Pluton セキュリティ プロセッサは、マイクロソフト セキュア フューチャー イニシアチブ (SFI) のコミットメントを実践した一例です。
CPU システム オン チップ (SoC) 上の専用ハードウェアで動作する Pluton は、認証情報や暗号化キーのような機密資産の保護を強化するのに役立ちます。Pluton はまた、ファームウェアと機能のアップデートをマイクロソフトから直接受け取ることで、管理を簡素化し、安全なロールアウトと導入の慣行を遵守しながら、現在および将来の脅威に対する継続的な保護を提供します。
Pluton アーキテクチャ – 概要
Plutonが機能するためには、ハードウェア、ファームウェア、ソフトウェアの3つの要素が揃う必要があります。下図に示すように、これらの要素は一体となって機能します:

Pluton アーキテクチャ
現在と将来のセキュリティのための構造
Pluton の次のステップを計画する中で、私たちは Pluton が最初に構想されたときから2つの主要な情報を認識していました:
- 2019年、マイクロソフトのセキュリティ リサーチデータによると、マイクロソフトが CVE (Common Vulnerability and Exposure) を割り当てた脆弱性の約 70% がメモリ安全性の問題でした。私たちは、脅威の状況から予想される傾向から、メモリの安全性が顧客にとってさらに重要になると予想しました。米国政府のCISA (Cybersecurity & Infrastructure Security Agency) による 2023 年の勧告は、ソフトウェア製品におけるメモリ安全性の緊急の必要性を強調し、脅威への対応にさらなる焦点と緊急性を加えています。
- 顧客は Windows デバイスをより長く使うことを期待し、そのためデバイスの寿命まで確実にアップデートされることを望んでいます。このトレンドに沿って、マイクロソフトは2023年に、新しいSurfaceデバイスは一般提供開始日から、従来の最低 4 年間ではなく、少なくとも 6 年間のドライバとファームウェアのアップデートを受けると発表しました。[i]
これらの認識から、私たちは次のような重要な問いを立てました:デバイスを購入したその日から、そのデバイスの全使用期間にわたって顧客の安全を守るためのセキュリティ プロセッサを構築するために、私たちは何をすべきなのか?
更新可能性は、Pluton の旅が始まったときからの基本的な目標でした。長年にわたってPluton の回復力を確保するためには、メモリ セーフ プラットフォーム上に構築する必要がありました。このアプローチにより、2024 年に Copilot+ PC のようなデバイスに搭載されるセキュリティ プロセッサが更新され、急速に変化する脅威の状況に対してより高い耐性を維持しながら、何年も先まで性能を維持することが可能になります。これはPluton のアーキテクチャの大きな転換につながり、セキュリティ プロセッサのファームウェアに Rust を使用する最初の実質的なステップを踏み出しました。
Pluton セキュリティ プロセッサのファームウェアの基盤にTock OSを使用した Rustを採用
完全にカスタム化されたソリューションをゼロから構築することも含め、複数のアプローチを慎重に評価した結果、我々は Pluton の Rust ベースの基盤として Tock OS を使用することを決定しました。Tock OS カーネルは完全に Rust プログラミング言語で書かれており、小規模ながら活発なオープンソースコミュニティがあります。 Tock OS は Pluton ファームウェアの共通基盤を形成し、ハードウェア サポートは各アーキテクチャ向けにドライバとハードウェア インターフェイス ライブラリ (HIL) が実装されています。サポートされているプラットフォーム上の TPM (Trusted Platform Module) ファームウェアのような顧客向け機能は、Tock カーネルの上に Tock ユーザーモード アプリとして実装されています。

Pluton ファームウェア アーキテクチャ
セキュリティ ソリューションの構築は一種のチーム スポーツだと認識しています。Tock OS コミュニティは一緒に仕事をする上で素晴らしい存在であったため、我々はそのコミュニティに恩返しをすることなく Tock OS を使うことはしたくありませんでした。Tock との仕事の一環として、我々は Pluton チームが最近行った2つの貢献を紹介できることを嬉しく思います:
- 2024年6月に開催された TockWorld 7 カンファレンスで、Pluton チームの Bobby Reynolds と Gustavo Scotti が “Porting Tock to x86 for Pluton ” というセッションを行いました。
- インテル®パートナー セキュリティ エンジン (IPSE) ハードウェア上で Pluton をサポートするため、Tock に x86 アーキテクチャのサポートを追加しました。
これらの変更は公開されており、アップストリームレビューと将来の Tock への組み込みのために提出されています:カーネルをx86アーキテクチャに移植 by reynoldsbd – Pull Request #4171 – tock/tock (github.com) .
AMD Ryzen™ AI および Intel® Core™ Ultraプロセッサ (シリーズ2) 搭載の Copilot+ PC は、当社の新しい Rust ベースのコアを搭載してリリースされる最初の Pluton プラットフォームです。AMD と Intel の両社がこの先駆的な取り組みに協力してくれたことに大いに感謝しています。
攻撃対象領域を減らすために設計された堅牢なハードウェア
ハードウェア層では、Pluton は大型 SoC に組み込まれた専用のハードウェア セキュリティ プロセッサ上で直接動作します。各 CPU シリコン プロバイダがセキュリティ プロセッサ用のハードウェアを実装する一方で、アーキテクチャはすべての Windows 11 PC で一貫しています。ハードウェア セキュリティ プロセッサは、独自のマイクロコントローラ コアを持ち、独自のリード オンリ メモリ (ROM) から起動し、統合性検証済みの Pluton ファームウェアを専用のスタティック ランダム アクセス メモリ (SRAM) にロードして実行します。
重要な設計ポイントは、 Pluton セキュリティ プロセッサ シリコンを SoC の中央演算処理装置 (CPU) コアやその他のハードウェアから分離することです。このアプローチは、ここ数年で明るみに出たハードウェア攻撃に対処し、重要なセキュリティおよび暗号操作の攻撃対象領域を減らすために取られました。これには、メイン CPU に求められるものとは異なる、性能とセキュリティのトレードオフが伴います。例えば、メインシステムのダイナミックランダムアクセスメモリ (DRAM) を狙ったキャッシュベースのサイドチャネル攻撃は、Pluton SRAM から情報を引き出すことができません。メイン CPU コアは、セキュリティが強化された専用のハードウェア インターフェイスを介してのみ Pluton と通信できるため、Pluton に対する攻撃対象が減少します。
専用のマイクロコントローラ、ROM、SRAM に加え、Pluton は独自のセキュリティに特化したハードウェアを備えています。例えば、乱数発生器 (RNG)、ハッシュ (SHA-2 、対称暗号化 (AES)、非対称暗号化 (RSA、ECC) などの暗号アルゴリズムのアクセラレータなどです。これにより、暗号鍵の作成や使用といったセキュリティ上重要な操作は、 Plutonハードウェアのバウンダリ内で行われ、メイン CPU からアクセスされたり干渉されたりすることはありません。また、これらの操作に最適なパフォーマンスを提供するのに役立ちます。
Pluton のハードウェア設計は、より大規模なシステムにおける既存のハードウェアおよびファームウェアのセキュリティ機能を補完することを意図しています。UEFI Measured Boot、System Guard Secure Launch、メモリインテグリティなどの機能は、CPU コア上で実行されるコードに必要な保護を提供し続けます。
Pluton セキュリティ プロセッサは、CPU コア上のいかなるコードの実行も制御または傍受しません。例えば、Pluton はマシン上で実行されるオペレーティング システムを制御しません。Pluton は、他のデバイスと同様に、IOMMU (Input-Output Memory Management Unit) の制限を受けます。Secured-core PC は、Pluton を含むシステム上のデバイスの分離を強制するカーネルDMA保護を有効にします。Pluton セキュリティ プロセッサは、鍵や測定値のような暗号材料を保護することができ、CPU コア上で実行されるどのコードからも隔離された状態で、保存された情報に対する操作を実行することができます。この特性は、Pluton の主な目的である攻撃者からの暗号機密の保護に理想的であり、例えば、ユーザー データがユーザーの所有物であることや、システム内でのアイデンティティがユーザーのものであることを保証するのに役立ちます。
すべての Pluton セキュリティ プロセッサに存在する上記の共通コンポーネントに加えて、マイクロソフトはシリコン パートナーと協力して、最先端のハードウェア セキュリティ技術のいくつかをそれぞれの Pluton セキュリティ プロセッサの設計に統合しています。これにより、これらのパートナーは、フォールトインジェクションやサイドチャネル攻撃に対する革新的な保護機能など、自社のチップに独自のセキュリティ機能を追加し、セキュリティ認証を取得することができます。その結果、Pluton ハードウェア層は、より広範な業界の最先端技術とともに進化し続けることになります。
- AMD Ryzen™ 6000 シリーズは Pluton 機能のパイオニアであり、顧客は最近取得したFIPS 140-3認証からこのハードウェアの詳細を知ることができます。今年発売されたAMD Ryzen™ AI 300シリーズ搭載の Copilot+ PC も Pluton をサポートしています。
- Copilot+ PC 用のインテル® Core™ Ultraプロセッサ (シリーズ2) には、インテル®パートナー セキュリティ エンジン (IPSE) が搭載されています。これは、CPU と SoC 内のハードウェアベースのセキュリティ分離により、Pluton の機能をサポートします。
- Snapdragon® X シリーズを搭載した Copilot+ PC には、Qualcomm® Secure Processing Unit (SPU) が搭載されています。これにより、Pluton の機能を、独立した高保証セキュリティエンクレーブで実行されるセキュアなアプリケーションとして実装できます。Snapdragonプロセッサの詳細については、こちらをご覧ください。
ファームウェアの更新が可能なため、強力な保護と信頼性を確保
Pluton ファームウェア層は、オペレーティング システム、アプリケーション プラット フォーム、またはシステム ファームウェアによって、様々なシナリオで必要とされる、より高いレ ベルのセキュリティ機能を提供するために、ハードウェア層を利用します。
マイクロソフトが開発した他のセキュリティ上重要なコードと同様に、Pluton ファームウェアは、不正なコード実行を防ぐための強力なコードインテグリティ保護、古い脆弱なバージョンのファームウェアをロードしないためのロールバック保護など、厳格なファームウェアセキュリティのベストプラクティスに従っています。
特定のシリコンの Pluton ハードウェア上で実行される Pluton ファームウェアは、利用可能な場合には高度なハードウェア機能を利用し、攻撃に対してシステムをさらに強固にします。例えば、Pluton ファームウェアは、ファームウェア自身の SRAM をさらに保護するために、ハード ウェア層で利用可能なメモリ保護ハードウェアを利用します。また、ハードウェア鍵ストレージ (利用可能な場合) を利用し、危殆化したファームウェアが秘密鍵情報を引き出すことができないように、鍵の保護を助けます。Pluton ファームウェアは、異なるハードウェア機能を利用することができますが、ソフトウェア層との一貫 したインターフェイスを維持するため、Pluton と相互作用するソフトウェアを変更する必要はありません。
Windows 11 上で動作する Pluton ドライバ、OS 機能、アプリケーション
Plutonソフトウェア層は、通常のオペレーティング システムと、Pluton セキュリティ プロセッサおよび関連機能のドライバ サポートから構成されます。Windows OSにネイティブな Pluton ドライバまたは TPM ドライバは、Pluton の特定のコンフィギュレーションとのインタラクション方法を自動的に決定します。Pluton の機能は、上位のソフトウェア層やアプリケーションから抽象化され、基礎となるフレームワークは、利用可能な場合に自動的に Pluton を活用します。私たちの目標は、信頼性と継続的な改善を促進するビルトインのサービス性を中心に、最も強固な基礎を持つエンドツーエンドのセキュリティ ワークフローとエクスペリエンスの構築を支援することです。
Plutonの対応構成
幅広い Windows エコシステムの多様なニーズをサポートするため、Windows の OEM (相手先商標製品製造) メーカーが、さまざまな顧客のニーズを満たすために選択できるさまざまな構成があります:
- Pluton は、ディスクリート TPM 2.0 デバイスと並んで、セキュリティ プロセッサとして使用することができます。Pluton は、ハードウェアに根ざしたセキュリティ機能を提供することができ、既存の Windows セキュリティ機能を強化し、将来のアップデートでサポートされるハードウェア上で新しいセキュリティ機能を有効にするのに役立ちます。
- Pluton は、サポートされているシステム上で TPM 2.0 として構成することもできます。Windows 11 は、BitLocker や Windows Hello などの機能で TPM 2.0 機能を使用し、ユーザーデータと ID を保護するために使用される暗号材料を保護しています。Pluton は Trusted Computing Group (TCG) の TPM 2.0 仕様に準拠しており、OEM はシステムの TPM として Pluton を使用するか、デバイスの BIOS 設定で UI を公開し、顧客がデバイスに Pluton または別の TPM オプションが存在する場合にそれを選択できるようにするオプションがあります。
特定の SoC や PC モデルの構成やハードウェアの詳細については、シリコン パートナーや OEM のドキュメントを参照してください。
Pluton キー ストレージ プロバイダのご紹介
Pluton のセキュリティ機能を拡張し、進化する脅威から最新の保護を提供する新しいソフトウェア機能の追加を目指しています。最初の追加機能は、将来のアップデートで提供される予定で、Pluton が設定された TPM でなくても有効になる Pluton 用のキー ストレージ プロバイダ (KSP) です。これは、Windows の開発者になじみのある API を使用して、Pluton の暗号化機能を Windows システムとアプリケーションで利用できるようにするのに役立ちます。Pluton のセキュリティ特性に加えて、セキュリティハードウェアと統合するアプリケーションは、異なるシナリオで鍵がどのように管理されるかという点で、より友好的な開発者の動作から恩恵を受けます。これには、ファームウェアのアップグレードや PC のリセットのような、比較的珍しいが重要なイベントが含まれます。キーをクリアするような操作は、キーを管理するアプリケーションか、エンド ユーザーにとって直感的で、開発者が PC リセットのように考慮することに慣れているシステム アクションによって実行されます。Microsoft Entra および Microsoft Intune チームは、クライアント コンポーネントの保護を Pluton KSP に統合しています。Copilot+ PC の将来のアップデートにより、Pluton KSP と関連機能が対応ハードウェア上で有効になります。
Windows セキュリティの詳細
更新されたWindowsセキュリティブックは、Windowsでセキュリティを維持する方法を理解するのに役立ちます。Windows 11 と Copilot+ PC の詳細については、こちらをご覧ください。
マイクロソフトのセキュリティソリューションの詳細については、当社の Web サイトをご覧ください。セキュリティ ブログをブックマークしておいていただくと、セキュリティに関する専門的な情報を常にチェックできます。また、LinkedIn (Microsoft Security) と X (@MSFTSecurity) で、サイバーセキュリティに関する最新ニュースや最新情報をご覧ください。
[i] 拡張ドライバおよびファームウェア サポートは、2021 年以降に一般提供されたデバイスに適用されます。詳細については、Windows ベースのデバイスの Surface ドライバとファームウェアのライフサイクルを参照してください。
マイクロソフトでは、意見交換の場やベスト プラクティスの共有場所を設けています。コミュニティとの交流には、Windows Tech Community (英語) をご利用ください。ブックマークしておくと便利です。また、ベスト プラクティスを探すには、X や LinkedIn で @MSWindowsITPro をフォローしてください。サポートが必要な場合は、Microsoft Q&A の Windows のページをご覧ください。
Join the conversation