アイデンティティとセキュリティ

コラボレーションによるセキュリティ: Confidential Computing でさらにセキュアな未来を構築する

※この投稿は米国時間 2022 年 5 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。

Google Cloud では、お客様の機密データの保護が何よりも重要であり、この目標を達成するうえで暗号化が強力なメカニズムとなると考えています。Google は、お客様がデータをクラウドに取り込む際の転送データの暗号化に何年にもわたって対応してきました。また、Google Cloud に保存されているお客様のすべてのコンテンツに関しても、保存データの暗号化に従来から対応しています。

これらに加えて Google の Confidential Computing ポートフォリオでお客様のデータを処理していただくことで、ライフサイクル全体を通したデータ保護が実現します。Google Cloud の Confidential Computing プロダクトは、隔離されたハードウェア環境で計算を実行することで使用中のデータを保護します。この環境はプロセッサが管理する鍵で暗号化されており、オペレーターはこの鍵を取得できません。このような隔離された環境によって、不正アクセス、そしてアプリケーションや使用中のデータの改変から保護され、パブリック クラウド インフラストラクチャにある機密データと規制対象データを管理する組織は、高いセキュリティを実現できます。

Google のクラウド インフラストラクチャにおいてセキュアな隔離は常に重要な要素であり、Confidential Computing はこの隔離を暗号的に強化します。Google Cloud の Confidential Computing プロダクトは、AMD Secure Encrypted Virtualization(SEV)テクノロジーなど、AMD EPYC™ プロセッサのセキュリティ コンポーネントを利用しています。

業界のコラボレーションを通じて Confidential Computing への信頼を構築する

Confidential Computing テクノロジーをより多くのクラウドのワークロードとサービスに導入するという使命の一環として、Google はこのようなテクノロジーを構築するために使用されるハードウェアとソフトウェアのレビューとテストを継続的に行うようにしています。さまざまな攻撃ベクトルを評価し、Google Cloud Confidential Computing 環境が幅広い攻撃から保護されるようにします。この評価を行うにあたり、Google のサービスおよびインターネット エコシステム全体の安全な使用は、Google が所有または運用しないアプリケーション、ハードウェア、ソフトウェア、サービスとのインタラクションに依存すると認識しています。

Google Cloud Security チーム、Google Project Zero、そして AMD のファームウェアとプロダクトのセキュリティ チームは協力して、AMD Confidential Computing テクノロジーを支えるテクノロジーとファームウェアに対する詳細なレビューを数か月にわたって実施しました。このレビューは Secure Encrypted Virtualization(SEV)対応 CPU、そしてハイパーバイザから Confidential VMs を保護する次世代 Secure Nested Paging(SEV-SNP)対応 CPU の両方を対象としました。このレビューの目標は、Google Cloud の Confidential Computing サービス構築のために AMD が使用するファームウェアとテクノロジーを協働して分析し、このようなテクノロジーへの信頼を強化することです。

この詳細なレビューでは、SEV-SNP を提供する第 3 世代 AMD EPYC プロセッサ ファミリーの AMD Secure Processor の実装に焦点があてられました。SNP は、ゲストの信頼境界からハイパーバイザを除外するテクノロジーを使用して Confidential Computing をさらに改善します。これによりお客様はクラウド サービス プロバイダを信頼できない当事者の一つとして扱うことができます。レビューは数種類の AMD Secure Processor コンポーネントを対象として、複数の異なる攻撃ベクトルが評価されました。レビュー グループは、SEV の設計とソースコード実装をレビューするとともに、カスタム テストコードを記述し、ハードウェアのセキュリティ テストを実行して、この環境に影響を及ぼす可能性のある潜在的な脆弱性を特定しようと試みました。

PCIe hardware pentesting using an IO screamer.jpg

IO スクリーマーを使用した PCIe ハードウェアの侵入テスト

このレビュー中に、セキュリティ チームはさまざまな重大度の潜在的問題を特定して確認しました。AMD はすべての該当する問題を修正することに尽力し、現在は OEM チャンネルで更新されたファームウェアを提供しています。そして現在、Google Cloud の AMD ベースの Confidential Computing ソリューションにはセキュリティ レビュー中に実装されたすべての緩和策が含まれています。

Google のセキュリティ エンジニアリング担当バイス プレジデントである Royal Hansen は、「Google は、より大きなエコシステムにおける各組織の安全を維持するうえで、自社プラットフォーム外のセキュリティ調査へ投資することがきわめて重要なステップだと考えます。組織はテクノロジー上のニーズを満たすうえでセキュアなエコシステムに依存しますが、最終的には我々すべてがそのセキュアなエコシステムの恩恵を受けるのです。このため、このような取り組みにおいて AMD と強力なコラボレーションができることに Google は非常に感謝しています」と述べています。

一方、AMD のエグゼクティブ バイス プレジデント兼最高技術責任者の Mark Papermaster 氏は、「AMD と Google Cloud は協力して Confidential Computing を継続的に推し進め、お客様がパフォーマンスを妥協せずに高いレベルのプライバシーとセキュリティを実現しつつ、機密性の高いワークロードをクラウドへの移行できるようサポートしています。業界のコラボレーションを通じてこのようなテクノロジーのセキュリティに継続的に投資することは、Confidential Computing によってお客様の変革実現をサポートするうえで欠かせません。Google Cloud および Google Security チームと協力して当社のセキュリティ テクノロジーを推し進め、来るべき将来の Confidential Computing の革新を形作ることができることに、AMD としても感謝しています」と語っています。  

クローズド ソースのファームウェアおよび独自仕様のハードウェア コンポーネントの場合、高信頼実行環境のセキュリティ レビューを実施するのは困難です。そのため、今回のような調査とコラボレーションは、より大きなインターネット エコシステムをサポートする基礎的なコンポーネントのセキュリティを向上させるうえで非常に重要です。AMD と Google は、Confidential Computing を採用するお客様にさらなる安心を提供するには透明性が鍵であると考えています。このため、AMD はオープンソースのセキュリティ ファームウェアのモデルに取り組んでいます。

現在は分析が完了して脆弱性への対処が済み、ファームウェア設計のアップデートによりいくつかのバグ クラスが緩和され、脆弱性から復旧する方法が提供されています。これを受けて AMD と Google のセキュリティ チームは、Confidential Computing ソリューションを動かす AMD ファームウェアがお客様の高レベルのセキュリティ要件を満たしていることをともに確認しました。さらに重要な点として、レビューで述べられたさまざまな攻撃から Confidential VMs が保護されていることがレビューで判明しました。

Google Cloud の Confidential Computing ポートフォリオ

Google Cloud Confidential VMsDataproc Confidential Compute、そして Confidential GKE Node は高レベルのセキュリティとプライバシーを実現し、ユーザビリティ、パフォーマンス、スケーリングに妥協することなくお客様のデータ保護ニーズに対応してきました。Google の使命は、このテクノロジーをクラウド全体に拡大することです。Confidential VMs は、AMD Secure Encrypted Virtualization(SEV)を搭載した AMD EPYC プロセッサを搭載したホストで稼働します。SEV を Confidential VMs に組み込むことで、次のようなメリットと機能が得られます。

  • 隔離: メモリの暗号鍵が VM 作成中に AMD Secure Processor によって作成され、AMD Secure Processor 内のみに保存されます。ディスクの暗号化用など他の VM 暗号鍵は、外部の鍵マネージャーまたは Google Cloud HSM で生成、管理できます。これらの鍵セットに Google Cloud はアクセスできず、強力な隔離が提供されます。

  • 証明書: Confidential VMs は仮想トラステッド プラットフォーム モジュール(vTPM)証明書を使用します。Confidential VM が起動するたびに起動証明レポート イベントが生成されてお客様の Cloud Logging に送信されます。これにより、管理者は必要に応じて対処できます。

  • パフォーマンス: Confidential Computing は、要求の厳しい演算タスクにも高いパフォーマンスを提供します。Confidential VMs を有効にしても、ワークロードへの影響はほとんど、またはまったくありません。

将来の Confidential Computing と安全なプラットフォーム

コンピュータ セキュリティに絶対はありませんが、共同での調査によって、複雑な環境で表面化する可能性のあるセキュリティ脆弱性を検出できる可能性が高まり、Confidential Computing ソリューションを現在および未来の脅威から保護するとともに、最終的には、お客様からのさらなる信頼を勝ち取ることにつながります。

Confidential Computing は業界全体規模の取り組みであり、クラウドの機密性の高いワークロードを保護するためには不可欠であると Google は考えます。同時に、この取り組みにおいて継続的に協力をいただいている AMD に感謝しています。

セキュリティ レビューの全文を読むには、こちらのページをご覧ください


謝辞

James Forshaw、Jann Horn、Mark Brand をはじめ、この進行中のセキュリティ コラボレーションとレビューに尽力してくれた Google セキュリティ チームの多くのメンバーに感謝します。

AMD エンジニアとのオープンなコラボレーションを非常にありがたく思うとともに、プロダクト セキュリティへの David Kaplan 氏、Richard Relph 氏、Nathan Nadarajah 氏の尽力に感謝の念を申し上げます。また、AMD のリーダーである Ab Nacef 氏、Prabhu Jayanna 氏、Hugo Romero 氏、Andrej Zdravkovic 氏、Mark Papermaster 氏にも、この共同の取り組みを支援くださり感謝申し上げます。


- プラットフォーム セキュリティ担当プリンシパル エンジニア Andrés Lagar-Cavilla
- Google Cloud スタッフ ソフトウェア エンジニア Cfir Cohen
- Google Cloud グループ プロダクト マネージャー Nelly Porter