[レポート]基調講演 5: パネルディスカッション コンフィデンシャル・コンピューティング 副題:データセキュリティにおけるパラダイムシフト – AWS Security Roadshow Japan 2021 #awscloud #AWSSecurityRoadshow

AWS Security Roadshow Japan 2021で行われた「基調講演 5: パネルディスカッション コンフィデンシャル・コンピューティング 副題:データセキュリティにおけるパラダイムシフト」のセッションレポートです
2021.11.11

こんにちは、臼田です。

本日はAWS Security Roadshow Japan 2021で行われた以下の講演のレポートです。

基調講演5: コンフィデンシャル・コンピューティング (副題:データセキュリティにおけるパラダイムシフト)

センシティブ・データをクラウド環境のみならず、システム全体でどのように取り扱っていくのか、というのはお客様の重要な関心事項です。本セッションでは、そうしたデータについて転送時の暗号化 (data in transit)、また保管する際 (data at rest) の暗号化といった従来の手法に加え、データそのものを処理する際 (data in use) の保護策として近年新たに注目されているコンフィデンシャル・コンピューティングについて、登場の背景、活用方法や将来展望等を有識者に幅広くディスカッションします。

デジタル庁 Head of Government Cloud 梅谷 晃宏 氏 奈良先端科学技術大学院大学 先端科学技術研究科 教授 門林 雄基 氏 アマゾン ウェブ サービス ジャパン合同会社 プリンシパルソリューションアーキテクト コンテナスペシャリスト 荒木 靖宏 Amazon Web Services Director, Head of Compute Specialist, Asia Pacific and Japan Toshihiko Yasuda

レポート

  • コンフィデンシャルコンピューティングについて、どのような影響を与えていくかパネルディスカッションする
  • 3つの内容
  • コンフィデンシャルコンピューティングが注目されるようになってきた背景
  • コンフィデンシャルコンピューティングがどのようなシーンで利用されるか
  • AWSの上でコンフィデンシャルコンピューティングをどう実現していくか

コンフィデンシャルコンピューティングが注目されるようになってきた背景

  • 門林先生の話
    • ざっくりいうと秘密に処理を行うという意味
    • ネットワーク、ストレージ、コンピューティングのセキュリティなど
    • ネットワークはTLS1.3になった
    • ストレージも暗号化できている
    • ネットワークとストレージの間、データを処理しているところが危ないのでは
    • メモリ上のデータは安全なのか?
      • メモリ上のデータを抜くマルウェアもある
      • この状況が10-15年続いている
    • 隣のテナントから鍵を盗めるのでは
      • Spectre, Meltdown
      • タイミングアタック
    • 外付けデバイスからメモリを覗き見ることが出来るのでは
      • USB, GPU, NICなど
      • DMAを外付けデバイスが使っている
    • こういった事ができないのでCPUやハードウェアで暗号化することがコンフィデンシャルコンピューティング
  • 梅谷さんから利用者観点の話
    • アカデミックは研究だが利用者としては実務レベルでどれくらい脅威があるか気になる
    • Spectreとか出てきたら、「うちってどうなんだろう?」ってなる
    • メモリって大丈夫なのか?は実はオンプレや仮想化技術の段階で出てきていた
    • サイドチャネル攻撃に対する対策を考えていく必要がある
    • 今までは最適解がなかった
    • オンメモリの一部だけソフトウェアで暗号化するなどの対策はあった
    • コンフィデンシャルコンピューティングが出てきたのでハードウェアでの対策になりセキュアな統制が取れるようになった
    • これが今ようやく始まったような感じ
    • どう使っていくかもこれからの話
    • ただ決定打になるものであると思う
  • 荒木さんからクラウド事業者として何を意識しているか、どういう現状認識があるか
    • 梅谷さんの極端に振れてしまう話
    • クラウドはまだ早いよって経営者が判断してしまうことは良くない
    • ホストを分離する手法もある
    • 他にもサイドチャネル攻撃がされない仕組みの検討をしている
  • 梅谷さん
    • ハードで分離するとセキュアである一般認識がある
    • ソフトウェアだと捻じ曲げる可能性が残るがハードではそれができない
    • 一方で最後までデータを守るところはソフトウェアと合わせてやっていかないといけない
    • 組み合わせてどうやるかを考えないと意味がない
    • ハードなのかソフトなのか、ではない
    • 総合的なリスクコントロール
  • 実務の面ではどうなのか?というバランスはどう考えているか(荒木さんから梅谷さんへの質問)
    • プロセスが複雑で意見が分かれると進まない
    • 日本人はリスクコントロールが苦手な嫌いがある
    • 0/1で考えがち
    • 本当はグラデーションがある
    • どこまでどうしていくか、リスクベース
    • 全体を考えないといけない
  • 門林先生の意見
    • Spectre, Meltdownから数年立っている
    • コンフィデンシャルコンピューティングに対して国際会議でも議論していて論文もたくさん出ている
    • しかしまだ陥落していない
    • そろそろ実用ではないか、というところが研究者を含めた業界のコンセンサスではないか

コンフィデンシャルコンピューティングがどのようなシーンで利用されるか

  • どのような利用がされるか
  • 門林先生
    • ハッキングにしっかり対策できる
    • 機微な情報やクレジットカード情報などをクラウド上で扱える
  • 梅谷さん
    • 同じく機微な情報などの扱いで活用できる
    • 金融・医療・政府などの規制で適用できる
    • ブロックチェーンの話やPCI DSSなど
    • 政府ではマイナンバー、個人情報保護委員会が見ているところをどう処理するか
    • コンフィデンシャルコンピューティングで処理するものはこれだって決めていくことは必要
    • 今は幅広く適用できると考えている
  • 保護されていく範囲が増えていくか?(梅谷さんへの質問)
    • セキュリティはCIAで語ることがある
    • データが改ざんされると大変
    • 医薬品とかは少し変わるだけで事故になる
    • データを処理するところも保護する必要がある
    • 完全性の話につながってくる
    • 政府ではDFFTに注目している
      • 乱暴に言うと重要なデータをどう国際的に流通させるか
      • これでも貢献できるのでは
    • 単独の機関ではなく複数の機関が機密の維持をしたままやりとりできる
      • データが流通すると改ざん等のリスクが増える
      • それを下支えできる
  • 門林先生
    • 機微な情報を確証を持って扱えると新しいサービスが出来る
    • セキュリティとしての話というよりセキュリティを生かしてマイナンバーとかの活用の話につながる
    • セキュリティは黒子
    • どうカスタマーエクスペリエンスにつなげるか
  • 新しいユースケースが出てくるがどういう事例があるか(荒木さん)
    • AWS Nitro Enclavesは2社事例がある
      • crypto.com
      • evervault
        • コンフィデンシャルコンピューティングのやり方はいっぱいある
        • どう評価してNitro Enclavesを選定したかブログにしている
  • クラウドベンダーにどう期待しているか?(梅谷さんへの質問)
    • 機能を出すだけではない
    • どう業務に使えるか説明しているか
  • 門林先生
    • ユーザーとしては最終的に簡単に使えることが求められるのでは
    • 利便性で工夫されている
    • EC2でNitro Enclavesが使えるのはいい
    • KMSと連携できる
    • 使いやすいのは非常にいい
    • 人材育成の観点
      • ドキュメントが豊富でエンジニアがすぐに利用できるか
    • 企業はすぐに活用したい
      • 例えば海外の品質の低い工場がある場合
      • OA情報をクラウドに上げて遠隔でチェックしたくなる
      • 上げていいかの観点で使えるようになる
    • セキュリティが必要な現場ではコンフィデンシャルコンピューティングやNitor Enclavesの啓蒙が必要
  • 梅谷さん
    • 啓蒙は重要なポイント
    • 本格的なサービスが出てきたことが知られていない
    • 例えば専用線を毎回引くのかなどの問題がある
    • インターネットを利用してリスクを低減する1つの仕組みになる
    • クラウドベンダーからの訴求は必要
  • クラウドの運用でどのようにセキュリティの懸念を払拭してきたか(荒木さんへの質問)
    • 専用ホストの安全性
    • 従業員のバックグラウンドチェックもしている
    • AWSのバーチャルマシンに取り組んだ
    • Nitro System
    • Nitro Controllerでハードウェアが信頼の起点になっている
    • Nitro Security chipで不揮発ストレージへの書き込みをブロック
    • Nitro Hypervisor
      • Attack Surfaceが極小化されたハイパーバイザー
    • 更にどうやっていくか
    • EC2でのAttack Surfaceを削減するにはどうするか
      • 自社のシステム管理者、開発者、アプリケーションからアクセスさせずに機密データを処理できる分離した環境を安価に素早く構築したい、というニーズに答える
      • 機密データを処理するところだけベアメタルで分離した環境を使うのはコストがかかる
  • 梅谷さん
    • クラウドのメリットはスケーラビリティ
    • PoCを小さく始めてやっていく
    • コストとして小さく始められる事がい
  • 荒木さん
    • 機密データを処理するところを小さく始められるようにNitro Enclavesを作った
  • 2つの話があった
    • AWS側でNitro Systemにより環境を分離した
    • ユーザー側で利用できるようにNitro Enclavesを作った
  • Nitro Enclavesをどう活用できるか(梅谷さんへの質問)
    • Enclavesは洞窟という意味
    • 誰も洞窟を見れない
    • 管理している側も処理しているところを見れない
    • 処理の中身は事前に定義したとおりでセキュア
    • 処理のときに組み合わせて使う情報を分離しておく
    • 結果だけもらえる
  • 実装上の期待はあるか(門林先生への質問)
    • これまで秘密の情報を暗号化したまま処理する研究をしていた
    • 準同型暗号
    • マッチングで時間がかかる
    • Nitroはハードウェアなので非常に早い
    • 数千や数万倍ほど違うのでは
    • これまでとぜんぜん違うユースケースがでてくるのでは

AWSの上でコンフィデンシャルコンピューティングをどう実現していくか

  • 荒木さん
    • 使いやすさ
    • コンテナ技術を利用している
    • コンテナで簡単に作れる
    • 入れたコンポーネントの分だけ攻撃ポイントになるが1つしかない
    • Rustで実装している
    • KMSを使った例
      • データストアに暗号化されたデータがある
      • Enclavesからそれを使う
      • 暗号化されたデータとデータキーをEnclavesで読み込む
      • 署名された校正証明ドキュメントを取得
      • データキーの復号をKMSを送信
      • 身元証明をした後復号してEnclavesに返す
      • 復号したデータキーで機密データを復号
  • 梅谷さん
    • KMSはHSMが後ろにある
    • ハードウェアでトラストを持つ
  • 門林先生
    • ソフトウェアは脆弱性がある
    • ソフトウェアだけのDefenceは限界がある
    • ハードウェアで信頼の根っこを持つ
    • その上でソフトウェアで信頼を追加
    • 継続的に信頼を保証していく
  • 梅谷さん
    • 署名された構成証明ドキュメントが重要
    • 信頼性を積み重ねている
  • 荒木さん
    • コンテナに入ったものが構成証明ドキュメントにのる
    • コンテナを作る場合の安全性確保は必要だが、動いているものに対しては信頼が持てる
    • vsockで通信するからNitro Enclaves側をオペレーションできない
  • 梅谷さん
    • 実際には人のオペレーションが一番脆弱
    • オペレーションが届かないのでセキュアである
  • 門林先生
    • 管理者アカウントが狙われる
    • SolarWindsの事例もある
    • リスクがないように作られている
  • ソフトウェアだけでなくハードウェアでセキュリティが確保されている
  • 人の手を排してセキュアにしている
  • 今後の発展に対してどんな期待があるか
  • 門林先生
    • コンフィデンシャルコンピューティングは名前が難しいので認知度が低すぎる
    • 積極的に宣伝してほしい
    • 名前を考えるとか
    • わかりやすいCMを打つとか
    • トレーニングとかリソースを拡充してほしい
    • エンジニアが1日で使えるようになるくらい
  • 梅谷さん
    • 技術を使うことはリスクとセット
    • 特別なことではない、自然なこと
    • コンピューティングだけリスクが軽視されるのはおかしい
    • 強力な手段としてコンフィデンシャルコンピューティングがある
    • どの事例にどう使えるかを発信してほしい
    • セキュリティは0/1で考えられやすい
    • そうではなくて具体的にリスクを細分化してどこでカバーするか考える
  • 荒木さん
    • AWSではNitro Enclavesの事例を増やしていきたい
    • 説明をできるようにしていきたい
    • これをやるべきという流れにしていきたい

感想

コンフィデンシャルコンピューティングが難しいというのはそのとおりですね。

しかし最初に出てきたなぜ必要になったのかの背景はわかりやすかったです。転送時の暗号化と保管時の暗号化の間にある、処理中の暗号化は今後も注目していきたいですね。

そして活用していきましょう!