Ubuntu Weekly Topics

2020年11月20日号 Meltdown/Spectre/Foreshadowの後の世界・“PLATYPUS”

この記事を読むのに必要な時間:およそ 3.5 分

Meltdown/Spectre/Foreshadowの後の世界・“PLATYPUS”

ほぼ定番になった感のある注1⁠,プロセッサ関連の新しい脆弱性が公開されました。PLATYPUS(Power Leakage Attacks: Targeting Your Protected User Secrets)攻撃と名付けられたこの手法は,⁠システム上で行われている計算の内容」を推定できます。これまでの脆弱性とはややアプローチが異なるものの,⁠CPU上の秘匿されるべき領域を推定できる」という特性は同じです。

注1
Intelのプロセッサ関連の脆弱性は適切な保護の後,⁠業界としての対策が終わった後」に公表されるプロセスが確立しています。これにより,Spectre/Meltdown発見時のような混乱は避けられ,⁠いつもの」と言えるような状態になりつつあります。ちなみに腕に覚えがあり,脆弱性を発見することに成功した場合は,この「業界を挙げての体制整備」の一環である,Intelによるbug bountyプログラムを通じて,最大で10万ドルの賞金を得ることもできます。……とはいえ,発見されたらカーネルやファームウェアを更新する必要がある(あるいは,今回はそうではありませんが,⁠CPUの性能が減少することがある⁠⁠)という点については回避できないので,一定の注意が必要です。

原理としては,⁠最近のCPUにはきわめて精密な消費電力を報告するインターフェースが準備されている。たとえばIntelのRAPL (Running Average Power Limit⁠⁠どのような計算をしているか』によってCPUの消費電力は特徴的に変動する。変動パターンは,実際に行った計算と強く相関がある」⁠これはSGXに保護されている領域であっても例外ではない」⁠おまけに,消費電力を取得するインターフェースはただのMSR(Machine Specific Register)なので,一部のOSでは一般ユーザーに公開されている」⁠この結果として脆弱性となるというものです。このアプローチを利用して,KASLRの迂回とSGXによって保護されたRSA秘密鍵の復元が可能であるという動画が公開されています注2⁠。

注2
おそらく意図的なものと思われますが,報告者達が公開してるWebサイトにある各種動画は,⁠ハリウッド映画に出てくるクラッキングの様子」に近い見た目になっています。

この問題への対策としては,⁠一般ユーザーがアクセスできる電力センサの値」を手がかりに攻撃するという性質上,対策には「一部のOSでは一般ユーザーがRAPLにアクセスできるようになっているため,まずそれを隠す」という措置と,⁠消費電力からの推定を行いにくくする」という二つの対処が必要になります。Linuxは「一部のOS」に該当し,/sys/devices/virtual/powercap以下から取得することが可能でした。

Ubuntuとしての対策はこれを踏まえており,対応するカーネルusn-4626-1と,対応用マイクロコードアップデータusn-4628-1usn-4628-2がリリースされています。

また,一時的な回避のためのアプローチとして,⁠一般ユーザーが問題のインターフェースにアクセスできないようにする」ためのワンライナーとして,find /sys/devices/virtual/powercap/ -name energy_uj -exec chmod 400 {} \;というものが提示されています(このアプローチは再起動で揮発するため,起動のたびに行う必要があります⁠⁠。

全体的には「いつもの」という認識で良いレベルであり,対処としても「アップデータを当てましょう」というものです。まだ行っていなければ対応を開始しましょう。

その他のニュース

  • 「IoTデバイスに必要なセキュリティと防御について」というUbuntu Coreの宣伝に限りなく近い記事。最終的に「Ubuntu Coreがお勧めです」という結論には落ちるものの,視点の網羅性や論点の整理のために使うことはできそうです。
  • Windows TerminalのTipsについて。
  • Ubuntu TouchをプリインストールOSとして選択できる,物理キーボード付端末Pro1 Xのクラウドファンディングが行われています。

今週のセキュリティアップデート

usn-4624-1:libexifのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005749.html
  • Ubuntu 20.10・20.04 LTS・18.04 LTS・16.04 LTS・14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2020-0452を修正します。
  • 悪意ある加工を施したファイルを読み込ませることで,不定な動作・任意のコードの実行が可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4625-1:Firefoxのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005750.html
  • Ubuntu 20.10・20.04 LTS・18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-26950を修正します。
  • Firefox 82.0.3のUbuntuパッケージ版です。
  • 対処方法:アップデータを適用の上,Firefoxを再起動してください。
usn-4626-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005751.html
  • Ubuntu 20.10用のアップデータがリリースされています。CVE-2020-27194, CVE-2020-8694を修正します。
  • ⁠PLATYPUS⁠攻撃を含む複数の問題に対処します。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
  • 備考:ABIの変更を伴いますので,カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため,通常はそのままアップデートの適用を行えば対応できます。
usn-4627-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005752.html
  • Ubuntu 20.04 LTS・18.04 LTS・16.04 LTS・14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2020-8694を修正します。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
  • 備考:ABIの変更を伴いますので,カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため,通常はそのままアップデートの適用を行えば対応できます。
usn-4628-1, usn-4628-2:Intel Microcodeのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005753.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005757.html
  • Ubuntu 20.10・20.04 LTS・18.04 LTS・16.04 LTS・14.04 ESM用のアップデータがリリースされています。CVE-2020-8695, CVE-2020-8696, CVE-2020-8698を修正します。
  • ⁠PLATYPUS⁠攻撃を含む複数の問題に対処します。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
  • 備考:ABIの変更を伴いますので,カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため,通常はそのままアップデートの適用を行えば対応できます。
  • 備考:当初のマイクロコードパッケージにはTiger Lakeの一部で起動不能を誘発する問題があったため,更新版が提供されています.
usn-4629-1:MoinMoinのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005754.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-15275, CVE-2020-25074を修正します。
  • 悪意ある操作を行うことで,任意のコードの実行が可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4630-1:Raptorのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005755.html
  • Ubuntu 20.10・20.04 LTS・18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2017-18926を修正します。
  • 悪意ある加工を施したファイルを処理させることで,DoS・任意のコードの実行が可能でした。
  • 対処方法:アップデータを適用の上,Raptorを利用しているソフトウェア(典型的にはLibreOffice)を再起動してください。
usn-4622-2:OpenLDAPのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005756.html
  • Ubuntu 14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2020-25692を修正します。
  • usn-4622-1のESM用パッケージです。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4171-6:Apportの再アップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005758.html
  • Ubuntu 20.10・20.04 LTS・18.04 LTS・16.04 LTS用のアップデータがリリースされています。
  • usn-4171-1で提供された修正を含む,より強化された保護を提供するためのパッケージです。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4631-1:libmaxminddbのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005759.html
  • Ubuntu 20.10・20.04 LTS用のアップデータがリリースされています。CVE-2020-28241を修正します。
  • 悪意ある操作を行うことで,DoSが可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4632-1:SLiRPのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-November/005760.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-7039, CVE-2020-8608を修正します。
  • 悪意ある操作を行うことで,任意のコードの実行が可能でした。
  • 対処方法:アップデータを適用の上,QEMU仮想マシンを再起動してください。
usn-4607-2:OpenJDKの再アップデート

著者プロフィール

吉田史(よしだふみひと)

システム管理を中心にWindows/PC Unixを併用している。Ubuntu Japanese Teamではパッケージサーバの管理や翻訳などの作業を担当。