# Lightweight Sandboxing ## 定義 Lightweight Sandboxing(軽量サンドボックス化)とは、コンテナなどの軽量仮想化環境に対して、VM 方式のような大きな性能・起動時間のオーバーヘッドを伴わずに追加の隔離を提供するアプローチである。目標は、コンテナ本来のスケーラビリティと迅速な起動を維持しつつ、OS カーネル脆弱性や悪意あるコンテナからの攻撃を緩和することである。(Source: [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]] §1, §3.1) ## 横断的知見 - **完全統合型サンドボックスのオーバーヘッド**: gVisor はユーザ空間カーネルによるシステムコールインターセプトで UnixBench システムコールオーバーヘッドが runC 比 96% 悪化し、Kata Containers は VM ベースで起動時間と仮想化オーバーヘッドが大きい。これに対し、Sandbox Tailoring(Subaco)と Container Transplantation はいずれも「VM/gVisor のような完全統合型手法を避け、より標高の低い機構で隔離を強化する」方針を採る。(Source: [[@2021__UCC__Concentrated Isolation for Container Networks Toward Application-aware Sandbox Tailoring]], [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]]) - **隔離強化の 2 つの方向性**: Sandbox Tailoring はリソースごとに隔離強度を選択し(ネットワークは強固に、CPU・メモリ・ファイルシステムは軽量に)、リソース単位でトレードオフを最適化する。Container Transplantation は OS カーネル単位で異種 OS へ移植し、Linux カーネル固有の脆弱性を無力化する。両者は隔離を「どこに適用するか」という点で異なるが、いずれもコンテナの軽量性を維持することを第一にしている。(Source: [[@2021__UCC__Concentrated Isolation for Container Networks Toward Application-aware Sandbox Tailoring]], [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]]) - **性能指標の多様性**: Subaco は Nginx/Memcached のスループットと起動時間を指標とし、Container Transplantation は UnixBench のシステムコールオーバーヘッドを指標とする。軽量性を測る指標は用途に依存し、単一指標では比較が不十分である。(Source: [[@2021__UCC__Concentrated Isolation for Container Networks Toward Application-aware Sandbox Tailoring]] §6.2, [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]] §5.2) ## 未解決の問い - 軽量サンドボックス化の「軽量さ」を統一的に測る指標は何か。起動時間、システムコールオーバーヘッド、メモリフットプリント、スループット、どれを優先すべきか。 - Sandbox Tailoring と Container Transplantation を組み合わせた場合、軽量性と隔離強度のどのような相乗効果が期待できるか。 - 軽量サンドボックス手法間の互換性はどの程度保たれるか。OCI ランタイムインターフェースを満たさない手法を運用に組み込む際の課題は何か。 ## 関連 - ソース: [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]] / [[@2021__UCC__Concentrated Isolation for Container Networks Toward Application-aware Sandbox Tailoring]] - エンティティ: [[gVisor]] / [[Kata Containers]] / [[Docker]] / [[FreeBSD]] / [[Linuxulator]] - 概念: [[Container Transplantation]] / [[Sandbox Tailoring]] / [[Capability-based Security]] / [[コンテナ仮想化]] - 関連 MOC: [[Cloud Container Orchestration]] ## 出典 - [[@2023__APSys__Reducing Attack Surface with Container Transplantation for Lightweight Sandboxing]](§1, §3, §5) - [[@2021__UCC__Concentrated Isolation for Container Networks Toward Application-aware Sandbox Tailoring]](§1, §6)