SUSE Linux Enterprise Server、Intel® TDXのサポートを開始

Share
Share

信頼性の高いデータ保護は、コンピューティングにおける長年の目標であり、エンドユーザーや法律に求められる要件です。2つのデータ保護技術は、異なる段階でデータを保護し、私たちと共に歩んできました。それは以下の2つです:

  1. 転送中のデータ保護 データがネットワーク上で転送される場合、ネットワーク暗号化と認証メカニズムで保護されます。現在よく使われているプロトコルには、TLS(Transport Layer Security)やSSH(Secure Shell)などがあります。
  2. 静止時のデータ保護 データがディスク上に保存されている場合、さまざまなオペレーティングシステムのディスク暗号化機能を使用して保護されます。Linuxでは、暗号化にはdm_crypt、完全性保護にはdm_integrityを使用します。データ検証用にdm_verityもある。

これまで欠けていたのは、アプリケーションの使用中にデータを保護する一連の技術です。データを使用するためには、データを復号化してメインメモリにロードする必要があります。暗号化されていないデータは、悪意のある行為者にとってはより容易なターゲットとなります。

近年、このデータ保護のギャップを埋めるために、使用中のデータを保護する技術が最新のプロセッサーに追加されました。その最初の技術の1つがIntel® SGXで、既存のアプリケーション内に安全なトラステッド実行環境(TEE)を提供します。

SGXは使用中のデータを保護する優れた方法ですが、アプリケーション層の変更が必要です。新しいIntel® プロセッサーには、別のデータ保護機能が追加されています: トラステッドメイン拡張(TDX)です。TDXはハードウェア仮想化に基づいており、TEE内でオペレーティングシステム全体を実行することができます。TDXでは、アプリケーションレイヤーでの変更は必要ないため、より広範なワークロードに使用中のデータを保護することができます。

Intel® TDXとは?

Intel® トラステッド・ドメイン・エクステンションは、トラステッド実行環境内で仮想マシンを実行することを可能にします。ハードウェア側からいくつかの保護機能が実装されています。保護された仮想マシンは、トラステッドメイン(TD)とも呼ばれます。TDXは以下を提供します:

  1. メモリの暗号化 TD が使用するすべてのメモリは、TEE の外部で実行されるソフトウェア(ホストハイパーバイザな ど)からのアクセスを許可しないように、ハードウェアによって暗号化されます。メモリコントローラは、強力な AES-128 暗号化を実装し、CPU は、TEE 内で実行されているソフトウェアに対してのみ、暗号化されていないデータアクセスを許可します。TD のオペレーティングシステムは、一部のメモリをホストから見えるようにすることを決定できます。これは、TD とハイパーバイザ間の通信に必要です。
  2. レジスタの暗号化 TD のメモリだけでなく、レジスタの状態も暗号化され、ハイパーバイザによるアクセスや変更から保護されます。これにより、TDのレジスタに保存された秘密へのアクセスや、実行フローに対する攻撃を防ぐことができます。
  3. メモリの整合性 ハードウェアは、暗号化されたメモリ内容に対する攻撃、すなわちリプレイ攻撃やリマッピング攻撃からもTDを保護します。これらの攻撃により、ハイパーバイザは暗号化された古いデータを再生したり、暗号化されたデータを異なるアドレスにマッピングしたりすることができます。これらの攻撃は、TDの実行フローを乗っ取り、TDを騙して秘密を漏らす可能性があります。Intel® TDX は、TD 内からこれらの攻撃を検出できるようにすることで、ハードウェア側からこれらの攻撃を防御します。

Intel® TDXのLinuxサポート – 現在と将来

Intel® TDXは、アプリケーションレイヤーに変更を加えることなく、ワークロードをデータ・イン・ユース保護で実行することを可能にします。しかし、TD内でオペレーティングシステムをセットアップして実行するには、ホスト仮想化スタックとゲスト・オペレーティング・システムにいくつかの変更を加える必要があります。

現在:

アップストリームのLinuxカーネルは、バージョン5.19以降、Intel®トラステッドメインでの実行をサポートしています。SUSEのエンジニアは、このコードをSUSE Linux Enterprise 15-SP5およびopenSUSE Leap 15.5にバックポートしました。

これらのバージョン以降のSUSEディストリビューションは、トラステッドドメインのゲストオペレーティングシステムとして使用できます。

今後:

TDゲストとしての実行はかなり前からサポートされていますが、トラステッドドメインを実行するホストオペレーティングシステムとしてLinuxを使用するためのサポートは、メインラインのLinuxカーネルや仮想化スタックの上位部分にはまだマージされていません。

これらのパッチはまだ議論中であり、おそらく来年中には上流のプロジェクトにマージされるでしょう。とはいえ、このパッチはアップストリームではないため、SUSE Enterpriseディストリビューションに含めることはできません。

Intel® TDX と SUSE

SUSE Linux Enterprise ServerでのIntel® TDXのテスト

SUSEでは、TDX対応ハードウェアにアクセスできるユーザや顧客のために、TDXハイパーバイザ環境のセットアップに必要な主要コンポーネントのデモパッケージを提供しています。このパッケージは、SUSE Linux Enterprise Server 15-SP5およびopenSUSE Leap 15.5用に構築されており、Linuxカーネル、QEMU、およびトラステッドドメイン用仮想ファームウェア(TDVF)が含まれています。これらのパッケージをTDX対応マシンにインストールすることで、当社のユーザーや顧客は、TDが提供する保護を試したり、この新しいテクノロジーを試すことができます。

SUSE Linux Enterprise ServerまたはopenSUSE Leapでトラステッドドメインを実行するためのホストとゲストイメージのセットアップ方法について詳しく説明したドキュメントも用意されています。このドキュメントは、GitHubのtdx-demoリポジトリ(https://github.com/SUSE/tdx-demo/blob/main/INSTALL-SLES-15-SP5.md)にあります。

今後のSUSEディストリビューションでのIntel® TDXサポート

本日、SUSE Linux Enterprise Server 15-SP5およびopenSUSE Leap 15.5のTDXホストセットアップ用の実験的なデモパッケージを提供します。これらのパッケージはサポートなしで提供されるため、実験およびテスト用です。

しかし、これで終わりではありません。TDXパッチがそれぞれのアップストリームリポジトリにマージされたことで、SUSEのエンジニアはこれらのパッチをディストリビューションに統合し、追加パッケージをインストールする必要がなくなります。

現在の計画では、SUSE Linux Enterprise Server 15-SP6でTechnology PreviewステータスのIntel® TDXホストサポートを提供し、SUSE Linux Enterprise Server 15-SP7とその他の将来の製品で完全なエンタープライズサポートを提供する予定です。



Share
(Visited 3 times, 1 visits today)
Avatar photo
1,959 views
Joerg Roedel Jörg is leading the Confidential Computing efforts at SUSE and is working with AMD on enabling SEV and related technologies. In this role he implemented major parts of the AMD SEV-ES guest support in the Linux kernel and brought it upstream into kernel 5.10. He is also active in the Linux kernel community as the maintainer for the IOMMU subsystem and a contributor to other areas like KVM or the X86 architecture.