隔離ランタイムの対応表

対象本文

第4章のprocess、container、bubblewrap、gVisor、microVM、Kata Containers、isolate、confidential executionを補います。図4-1の概念軸へ製品名と代表値を固定しないための更新先です。

収集方法

2026年7月10日に各runtimeの公式architecture、利用例、論文を確認し、7月11日にWALLET/Hacher論文の版と評価値を再確認しました。2026年8月6日にbubblewrap、Claude Code、Codexの公式資料を確認しました。性能値は原典が測った条件だけに限定し、managed serviceのSLOへ外挿しません。

現在の答え

系譜境界の置き方強み主な代償・確認点現行の代表例
OS process/containerhost kernelを共有しnamespace/cgroup等で分離起動と密度、Linux toolingkernel共有、capability、seccomp、runtime設定一般的なcontainer runtime、Cloudflare Containers
userspace application kernelsyscallをuserspace kernelで受け、host kernelへの面を狭めるcontainer互換性とattack surface縮小の折衷syscall互換性、I/O性能、platform設定gVisor、GKE Sandbox、Cloud Run、GKE Agent Sandbox
microVMKVM/hypervisorでguest kernelごと分離し、device modelを削るVM境界と高速起動の両立guest memory、boot、snapshot整合、host/hypervisorFirecracker、Lambda、AgentCore、Lambda MicroVMs
VM-backed containercontainer interfaceを保ち、各pod/containerを軽量VMへ入れるOCI/Kubernetes体験とVM境界構成部品、起動、device、networkKata Containers
language isolate/Wasmengine内のmemory/contextを分け、capabilityを絞る極小単位、高密度、高速起動OS互換性、native code、engine/host境界Cloudflare Workers isolates、Wasm runtime
confidential VM内の入れ子hardware-backed confidential VM内にさらにprocess/LibOS境界cloud operatorを含む脅威へのTCB縮小を狙うattestation、I/O、鍵、研究段階の保証WALLET(初版名Hacher)等の研究

共通方向は、利用者codeが直接触れる共有面を減らしながら、割当単位を小さくして密度と起動を保つことです。差は、Linux互換性をどこまで残すか、kernelを共有するか、hardware virtualizationを使うか、信頼するTCBをどこへ置くかにあります。

Firecracker公式は、user space開始125ms未満、memory overhead 5MiB未満、hostあたり毎秒最大150 microVMという設計値を示します。これはFirecrackerの特定測定であり、Lambda、AgentCore、他社serviceの起動SLOではありません。

gVisorはLinux interfaceをuserspaceのSentryで実装し、host kernelとの直接面を減らします。公式はCloud Run、GKE Sandbox等の採用を示す一方、未実装syscallとI/O overheadを明記します。互換性はimage名から決めず、対象workloadで試験します。

ローカルのコードエージェントで使うbubblewrap

bubblewrapは、共有カーネル型の独立した隔離方式ではなく、Linuxのnamespaceとmountを組み合わせて、プロセスへ見せる世界を構成する低レベルの道具です。必ず新しいmount namespaceを作り、見せるpathと読み書きの可否を呼び出し側が与えます。必要に応じてuser、PID、network、IPC、UTS namespaceやseccompを組み合わせられます。

2026年8月時点のLinux版Claude Codeは、bubblewrapでfilesystemの境界を適用し、sandbox外のproxyで通信先を制御します。CodexのLinux sandboxは、読み取り専用を既定としたfilesystemをbubblewrapで構成し、書き込み可能なrootを重ね、seccompとPR_SET_NO_NEW_PRIVSを併用します。

bubblewrap自身は完成済みのsecurity policyではありません。どのpathを見せ、どこを書かせ、process空間やnetworkを分けるかは、呼び出すframeworkの責任です。microVM相当の独立kernel境界として扱わず、共有kernel型の実装例として読みます。

WALLET(2025年4月30日公開のv1ではHacher)は、AMD SEV-SNP上のconfidential VM内へ軽量なtrustletを入れ子にする研究です。論文は、比較対象に対するend-to-end latencyの15〜93%削減と、function densityの最大907倍を著者評価として報告しています。測定条件に依存する研究値であり、商用serviceの保証ではありません。ここで重要なのは数値だけでなく、VM境界の内側でもTCBとfunction間通信を再設計できるという研究方向です。

一次資料

記入用の雛形——脅威モデル(空欄版)

書籍第4章4.8の脅威モデルを自分のワークフローで書き出すための空欄版です。

対象ワークフロー:
守る資産:
信頼しない入力:

攻撃面        到達し得る資産        予防制御        検知・失効・破棄        証拠
入力:
生成コード:
ツール:
依存取得:
ネットワーク:
ホスト:
制御面:

サンドボックス内に置く資格:
許可する外向き通信:
壁が破られたときの停止・失効手順:

既知の未知

変更履歴