Ubuntu Weekly Topics

2020年5月22日号WSL2の新機能と今後、新しい姿のLinuxデスクトッププラットフォーム

WSL2の新機能と今後、新しい姿のLinuxデスクトッププラットフォーム

Microsoft Build 2020において、WSLに関わるいくつかの新機能お披露目されました。

Windows 10 2020 May Update(あるいは「Windows 10 Ver.2004⁠⁠)におけるWSL2の紹介や、WSL2用のLinux Kernelの話題だけかと思いきや、多くの「隠し球」が提供される展開となっています。発表されたものを順不同に見ていきましょう。

まず、もっとも大きな発表が『WSL2向けのDirectX』の発表です。テクノロジースタックとしてはこれは、以下のものから構成されています。

  • WDDMドライバで動作するGPUを、Linuxゲストに対して準仮想化で提供する、WDDM GPU Paravirtualization(GPU-PV⁠⁠。要するに「ゲストマシンから利用できる、薄くラップされたGPU」です。純粋なGPUをそのままパススルーするわけではなく、あくまでWDDMに基づいた「WDDMで定義された動作をするGPU(っぽく見える仮想デバイス⁠⁠」というものではあるものの、事実上は「仮想化されたGPU」と大差ありません[1]
  • DirectX subsystemのコアにあたる、dxgkrnlLinux用インターフェース層。これはWSL2上でのみ機能する「Windows側のdxgkrnlへパススルーすることでDirectX12のコア動作を実現するデバイス」として振る舞います。
  • Linux向けにリコンパイルされたDxCoreとD3D12。これは要するに「DirectX12のOS準拠部分」と同義です。
  • 同じく、Linux向けに動作するように調整されたuser mode driver。これは「DirectX12のGPU依存コード」と同義です。

……このあたりで前提知識がDirectXの構造にさしかかってきたのでUbuntuユーザー向けに不可逆圧縮してしまいますが、⁠いろいろな黒魔術を駆使して、DirectX12がホストマシン上と遜色のない性能を発揮しつつ、ゲストLinux上で動くようになります、特にWSL2では簡単に動きます」というものと理解しておけば良いでしょう[2]⁠。また、同種の仕組みを利用してDirectMLNVIDIA CUDAも利用できるようにすることが示されています。

現時点においては、⁠DirectX12に依存するLinuxアプリケーション」の需要って、ゲーム以外にあるんだっけ、ということは言わないでおくのが良いでしょう。なぜなら、DirectX12はOpenGLやOpenCLのラッパーとして動作し[3]⁠、多くの用途に利用できるからです。

もう一つ、Build 2020ではWSL2に関してきわめて大きな発表が行われました。WSL2上での「GUIアプリケーションのサポート」がそれで、デモでは「Outlookの横で、WindowsアプリかのようにGedit, File, Eye of Gnomeが動作する様子が示されました[4]⁠。こちらはGPUサポートやDirectX12サポートとは異なり、⁠今後の発表をお待ちください」というステータスではあるものの、⁠WindowsアプリケーションもLinuxアプリケーションも区別なく扱える」未来が見えてくることになりそうです。

その他のニュース

  • bugs.launchpad.netから送られてくるメールのFromが、実ユーザーのメールアドレスではなく「(bugid)@bugs.laucnhpad.net」⁠たとえばLP#1なら1@bugs.launchpad.net)になる、というアナウンス(すでに発動済みです⁠⁠。

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

usn-4354-1:Mailmanのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005424.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-12108を修正します。
  • 悪意ある入力を行うことで、ログインページに不当なコンテンツを表示させることが可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4355-1:PulseAudioのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005425.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-11931LP#1877102を修正します。
  • 本来オーディオ再生のみが可能であるべきsnapパッケージにおいて、録音を可能にする手法がありました。
  • 対処方法:アップデータを適用の上、セッションを再起動(一度ログアウトして再度ログイン)してください。
usn-4353-2:Firefoxの再アップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005426.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS用のアップデータがリリースされています。
  • Firefox 76.0.1のUbuntuパッケージ版です。
  • 対処方法:アップデータを適用の上、Firefoxを再起動してください。
usn-4357-1:IPRouteのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005427.html
  • Ubuntu 18.04 LTS用のアップデータがリリースされています。CVE-2019-20795を修正します。
  • 悪意ある入力を行うことで、任意のコードの実行が可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4356-1:Squidのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005428.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2019-12519, CVE-2019-12521, CVE-2019-18860, CVE-2020-11945を修正します。
  • 悪意ある入力を行うことで、任意のコードの実行が可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-3911-2:fileの再アップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005429.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。
  • usn-3911-1の修正において、過剰なバッファ制限を行った結果として、得られる情報が意図せず減少していましたLP#1835596⁠。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4358-1:libexifのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005430.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS・14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2018-20030, CVE-2020-12767を修正します。
  • 悪意あるタグを含む画像を処理させることで、DoSの誘発が可能でした。
  • 対処方法:アップデータを適用の上、セッションを再起動(一度ログアウトして再度ログイン)してください。
usn-4359-1:APTのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005431.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-3810を修正します。
  • ローカルの攻撃者がタイミング攻撃を行うことで、DoSが可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4360-1, usn-4360-2, usn-4360-3:json-cのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005432.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005433.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005434.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS・16.04 LTS・14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2020-12762を修正します。
  • 悪意ある加工を施したファイルを処理させることで、任意のコードの実行が可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
  • 備考:usn-4360-1で提供されたパッケージにはメモリリークや更新時にシステムをクラッシュさせる問題が存在していたため、一時的に元のバージョンに戻されています。
usn-4361-1:Dovecotのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005435.html
  • Ubuntu 20.04 LTS・19.10用のアップデータがリリースされています。CVE-2020-10957, CVE-2020-10958, CVE-2020-10967を修正します。
  • 悪意ある入力を行うことで、DoSと任意のコードの実行が可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4362-1:DPDKのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005436.html
  • Ubuntu 20.04 LTS・19.10・18.04 LTS用のアップデータがリリースされています。CVE-2020-10722, CVE-2020-10723, CVE-2020-10724, CVE-2020-10725, CVE-2020-10726を修正します。
  • 悪意ある入力を行うことで、DoSと任意のコードの実行が可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-4363-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005437.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2020-11494, CVE-2020-11565, CVE-2020-11669, CVE-2020-12657を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-4364-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-May/005438.html
  • Ubuntu 16.04 LTS・14.04 ESM用のアップデータがリリースされています。CVE-2019-19060, CVE-2020-10942, CVE-2020-11494, CVE-2020-11565, CVE-2020-11608, CVE-2020-11609, CVE-2020-11668を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。

おすすめ記事

記事・ニュース一覧