2月5日、Phoronixが「Microsoft's New Open-Source Project: LiteBox As A Rust-Based Sandboxing Library OS」と題した記事を公開した。この記事では、Microsoftが主導するRustベースのセキュリティ重視なライブラリOS「LiteBox」について詳しく紹介されている。

以下に、その内容を紹介する。
Microsoftは、Rustプログラミング言語で記述され、Linuxの仮想化ベースセキュリティ(LVBS)を活用するセキュリティ特化型ライブラリOS「LiteBox」の開発を進めており、オープンソースで公開されている。MicrosoftでLinux OSセキュリティおよびOSSエンゲージメントのリードを務めるJames Morris氏が、2日前に利用可能になったことをアナウンスした
LiteBoxは、一見すると単なる新しいサンドボックス技術に見えるが、その実態は「OSのあり方そのものを再定義する」極めて革新的なアプローチを秘めている。
なぜLiteBoxは「革新的」なのか:OSを「膜」に変える発想
従来の仮想化技術やコンテナ技術では、アプリケーションの下に巨大で複雑な「Linuxカーネル」が存在することが当然とされていた。しかし、数百万行におよぶC言語製のカーネルは常に脆弱性のリスクを孕んでいる。
LiteBoxの革新性は、この巨大な汎用カーネルを排除し、Rustで書かれた極小の「ライブラリOS」に置き換えた点にある。LiteBoxは、ホストOSとアプリケーションの境界線に位置し、必要最小限の機能だけを肩代わりする。これにより、攻撃面を物理的に削ぎ落とし、鉄壁のサンドボックスを実現しているのだ。
設計の鍵となる「North」と「South」の分離
LiteBoxは、自身を「ハブ」として設計しており、上下のインターフェースを完全に切り離している。
- Northインターフェース(北:アプリケーション側):
rustixなどに着想を得た、型安全な窓口だ。Linuxアプリケーションが発行するシステムコールをここで受け取る。アプリ側からすれば「普通のLinux」に見えるが、LiteBoxがその要求を精査し、安全な形に変換する。 - Southインターフェース(南:プラットフォーム側):
Windows、ハイパーバイザ、あるいはSEV-SNPといった機密コンピューティング対応のハードウェアなど、土台となる基盤との接続を担う。
この分離構造により、「同じLinuxアプリを、コードを一切変えずに、Windows上や最新の暗号化CPU上で、極めてセキュアに動かす」という、パズルのような柔軟な運用が可能となった。
Microsoftが「RustでLinuxを包む」戦略的意義
Microsoftがこのプロジェクトを推進している点も注目に値する。Azureのようなクラウド基盤において、Linuxアプリの実行効率とセキュリティを両立させることは至上命題だ。
「OSをライブラリ化する」という古くからある理想を、「Rustという安全な言語」と「Microsoftの強力なインフラ技術」で実用レベルに昇華させた点に、本プロジェクトの真の革新性がある。
想定される主要なユースケース
LiteBoxの柔軟な設計により、以下のような幅広いシナリオが想定されている。
- Windows上で修正なしのLinuxプログラムを実行する
- Linux上でLinuxアプリケーションをサンドボックス化する
- SEV-SNP(ハードウェアによるメモリ暗号化環境)上でプログラムを実行する
- Linux上でOP-TEE(信頼実行環境)プログラムを実行する
- LVBS(Linux Virtualization Based Security)上での実行
プロジェクトの現状
本プロジェクトはMITライセンスの下でオープンソースとして公開されている。
現在は活発な開発段階(プレビュー)にあり、GitHub上でその進化を確認することができる。
詳細はMicrosoft's New Open-Source Project: LiteBox As A Rust-Based Sandboxing Library OSを参照していただきたい。