Linus Torvaldsは9月30日(米国時間)、次期Linuxカーネル「Linux 5.4」の最初のリリース候補(RC)版となる「Linux 5.4-rc1」を公開した。Linusがマージウィンドウのクローズ後も実装の可否を明らかにしていなかった「ロックダウン(lockdown)」機能も含まれている。
- Linux 5.4-rc1 -Linus Torvalds
Linux 5.4において議論の対象となっていたロックダウンは、rootを含むあらゆるアカウントからのカーネルコードへのアクセスを制限するモジュール機能で、ユーザランドとカーネルの境界線をより明確にし、カーネルに対する不正な改竄を防ぐことを狙いとしている。ただし、現状ではデフォルトで無効となっており、セキュリティモジュール(LSM:Linux Security Module)として提供される予定だ。ロックダウンを有効にすると、ハイバネーションや/dev/memへの書き込み、CPU MSRレジスタへのアクセスなどが厳しく制限されることになる。
なおロックダウンには「integrity」と「confidentiality」という2つのモードが用意されており、integrityを有効にするとユーザランドによる実行中のカーネルへの修正が無効となり、confidentialityではユーザランドがカーネルのコンフィデンシャルな情報を引き出すことができなくなる。
ロックダウンは2010年ごろからGoogleのエンジニアであるMatthew Garrettによって提案されていたが、カーネルの機能が著しく制限されることになるため、Linusはこのモジュールの実装に対して慎重な姿勢を取り続けていた。だが、カーネルのセキュリティ強化を望む声が強まったことから、Red Hatなどエンタープライズ向けのディストリビュータが独自パッチとしてロックダウン機能を提供しはじめ、「複数のロックダウンのパッチに合わせるよりも、メインラインで実装すべき」という意見が大勢を占めるようになる。長年に渡って議論とレビューが繰り返された結果、Linusは最終的に9月28日(米国時間)にロックダウンを受け入れ、メインラインへのマージを決定した。Linux 5.4-rc1公開の2日前のことである。
- Merge branch 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security -Linux kernel source tree
Linux 5.4には、ロックダウンのほかにも、新GPUのサポートやMicrosoftのexFATサポートなど多くの機能強化が予定されている。順調に行けば2019年11月後半には正式リリースとなる見込みだ。