@techreport{oai:ipsj.ixsq.nii.ac.jp:02003131, author = {吉田,晃太郎 and 山田,浩史}, issue = {11}, month = {Jul}, note = {コンテナ技術はマルチテナントなクラウドサービスで広く利用されている.オペレーティングシステム(OS)で各テナントを隔離することでリソースを効率よく利用できる.コンテナはパフォーマンスの面で仮想マシンよりも有利である.一方で,コンテナにはセキュリティ面で問題がある.仮想マシンは機能が限られた低レベルのハードウェアインターフェースを介して動作するのに対して,コンテナは豊富な機能を有するシステムコールを使って動作するためである.カーネルのバグや脆弱性を突かれやすく,その影響はOS上で稼働しているすべてのコンテナに伝播してしまう.そこで,本研究では各コンテナのオブジェクトを隔離し,カーネルにバグや脆弱性があったとしても,他のコンテナのカーネルコンテキストからアクセスできないようにする.OSのエラーを局所化するカーネル内メモリ隔離を提案する.具体的には,各コンテナが自身のメモリオブジェクトにしかアクセスできないようにする.コンテナに応じて,メモリオブジェクト単位でのアクセス制御を行い,コンテナ間で分離されるメモリオブジェクトのメモリ隔離をする.本研究ではカーネルレベルメモリ隔離に,Intel PKSを用いて,提案手法をLinux 6.5.0に実装し,Namespaceで隔離される一部のメモリオブジェクトにアクセス制御を実現した.実験の結果,提案手法でメモリ隔離したメモリオブジェクトへの不正アクセスが生じたとき,ページフォルトが発生し,実行を停止できた.また,アクセス制御を行ったメモリオブジェクトを利用するシステムコールの実行時間は従来の2から3倍程度であった.}, title = {コンテナのコンテキストを考慮したカーネル内メモリ隔離機構}, year = {2025} }