Skip to main content
QUICK REVIEW

[論文レビュー] Insecure Until Proven Updated: Analyzing AMD SEV's Remote Attestation

Robert Buhren|arXiv (Cornell University)|Jan 1, 2019
Cloud Data Security Solutions被引用数 3
ひとこと要約

この論文は、AMD Epyc Naples CPUにおけるAMD SEVリモートアテステーションプロトコルが、PSPファームウェア内に抽出可能なプラットフォーム固有の鍵を含むため、根本的に不正なセキュリティホールを有すると示している。ファームウェアが侵害されると、攻撃者はSEVの存在を偽装し、ゲストメモリを復号可能となり、すべての暗号保護機能を無効化できる。これにより、信頼できないクラウドプロバイダーに対するSEVの保護機能は無効化され、ソフトウェアのみの緩和策は存在しない。

ABSTRACT

Customers of cloud services have to trust the cloud providers, as they control the building blocks that form the cloud. This includes the hypervisor enabling the sharing of a single hardware platform among multiple tenants. AMD Secure Encrypted Virtualization (SEV) claims a new level of protection in cloud scenarios. AMD SEV encrypts the main memory of virtual machines with VM-specific keys, thereby denying the higher-privileged hypervisor access to a guest's memory. To enable the cloud customer to verify the correct deployment of his virtual machine, SEV additionally introduces a remote attestation protocol.This paper analyzes the firmware components that implement the SEV remote attestation protocol on the current AMD Epyc Naples CPU series. We demonstrate that it is possible to extract critical CPU-specific keys that are fundamental for the security of the remote attestation protocol.Building on the extracted keys, we propose attacks that allow a malicious cloud provider a complete circumvention of the SEV protection mechanisms. Although the underlying firmware issues were already fixed by AMD, we show that the current series of AMD Epyc CPUs, i.e., the Naples series, does not prevent the installation of previous firmware versions. We show that the severity of our proposed attacks is very high as no purely software-based mitigations are possible. This effectively renders the SEV technology on current AMD Epyc CPUs useless when confronted with an untrusted cloud provider. To overcome these issues, we also propose robust changes to the SEV design that allow future generations of the SEV technology to mitigate the proposed attacks.

研究の動機と目的

  • AMD Epyc Naples CPUにおけるSEVリモートアテステーションを実装するファームウェアコンponentsの分析を目的とする。
  • 不正なファームウェアアクセスを許可するPSPセキュアブートメカニズムにおける脆弱性の特定を目的とする。
  • 抽出された鍵がどのようにしてSEVの存在を偽装し、ゲストメモリを復号するかを実証することを目的とする。
  • 脆弱なファームウェアバージョンへのロールバックが可能であることを示し、SEVの信頼性を損なうことを目的とする。
  • ファームウェアの欠陥にもかかわらず将来の信頼性保証を可能にする再設計されたリモートアテステーションプロトコルの提案を目的とする。

提案手法

  • AMD Epyc Naples CPUのPSPファームウェアを逆解析し、セキュアブートプロセスにおけるセキュリティホールを同定した。
  • PSPのメモリに対する任意の読み取り・書き込みアクセスを可能にする修正済みファームウェアイメージを開発した。
  • 3種類の異なるEpycプロセッサにおいて、PSPメモリからチップエンダースメント鍵(CEK)を抽出した。
  • 抽出されたCEKを用いて、SEV保護プラットフォームを模倣し、ゲストメモリを復号する攻撃を構築した。
  • CEKを用いて暗号化されたVM状態を漏洩可能にする移行攻撃を実証した。
  • ファームウェアバージョンの強制を含む、信頼性を損なわない再設計されたリモートアテステーションプロトコルを提案した。

実験結果

リサーチクエスチョン

  • RQ1AMD Epyc Naples CPUのPSPファームウェアから、SEVリモートアテステーションに使用されるプラットフォーム固有の秘密鍵を抽出可能か?
  • RQ2ロールバック保護の欠如が、SEVリモートアテステーションのセキュリティに及ぼす影響はどの程度か?
  • RQ3悪意あるクラウドプロバイダーが抽出されたCEKを悪用して、ゲストメモリを復号するか、SEVの存在を偽装可能か?
  • RQ4なぜ、これらのファームウェアレベルの脆弱性に対して、純粋なソフトウェア対策は効果がないのか?
  • RQ5将来のSEV設計において、PSPファームウェアの侵害が想定されても、信頼性を保証する方法は何か?

主な発見

  • チップエンダースメント鍵(CEK)が、3種類の異なるAMD Epyc NaplesプロセッサのPSPファームウェアから正常に抽出された。
  • 抽出されたCEKにより、攻撃者は正当なSEV保護プラットフォームを模倣可能となり、リモートアテステーションの完全な偽装が可能となった。
  • 修正済みSEVファームウェアにより、PSPのメモリに対する任意アクセスが可能となり、暗号化されたゲストメモリを平文で抽出可能となった。
  • 脆弱なPSPファームウェアバージョンへのロールバックが可能であり、抽出されたCEKは永久に有効なままとなり、鍵が恒久的に危険にさらされた。
  • 脆弱性はファームウェアおよびハードウェアの信頼の根拠に起因するため、ソフトウェアのみの緩和策ではセキュリティを回復できない。
  • 現在のSEV設計では、Epyc NaplesシステムにおけるVMの正しく配置が保証できず、結果としてSEVのセキュリティ保証が無効化された。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。