@techreport{oai:ipsj.ixsq.nii.ac.jp:02000823,
 author = {谷本,陽祐 and 山田,浩史},
 issue = {17},
 month = {Feb},
 note = {オペレーティングシステム(OS)はシステムの根幹をなすソフトウェアである.OSカーネルが何らかの理由により動作を停止すると,その影響はシステム全体に及ぶ.また,Linuxなどのモノリシックカーネルでは,カーネルが使用するアドレス空間(カーネル空間)は単一であり,カーネルを構成するファイルシステムやプロセス管理といったコンポーネントの間では,一切のアクセス制御が行われない.そのため,仮にバグによってあるコンポーネントがカーネル空間内でメモリ破壊を引き起こすと,その影響はカーネル全体に及ぶ.このような背景がある中で,Linuxといったモノリシックカーネルでは脆弱性や修正の報告は跡を絶たず,中でもメモリ破壊を発生させる脆弱性が大多数を占める.カーネル空間内でのメモリ破壊は未定義の動作を引き起こし,それは攻撃者にとって不正に特権を取得したり,システムを停止させるといった攻撃に有用である.そこで本研究では,モノリシックカーネルにバグがあった際の悪影響を小さくすることを目的とし,システムコールなどといった,カーネルコンテキストの状態に応じたカーネル空間内の動的なアクセス制御を行うKC-domainを提案する.仮にコンテキストがアクセスが承認されていないメモリオブジェクトにアクセスした場合,ページフォールト起こして実行を停止させる.これにより,不正なメモリアクセスが未然に阻止され,メモリ破壊の発生を防止する.本研究ではアクセス制御にIntel MPKのPKSを採用し,xv6に本提案手法のアクセス制御を適用したIv6を実装した.実験の結果,Iv6は不正なアクセスを防止しつつ,ランタイムオーバーヘッドは実装前のxv6と比較してLMBenchで平均1.36倍,ApacheBenchは平均1.11倍であった.},
 title = {カーネルコンテキストを考慮したメモリ隔離機構},
 year = {2025}
}