linuxカーネルの実行保護(ESP:Executable space protection)について調査したのでメモ. ESPとはOSのセキュリティを高めるための機能の一つ.ESPを使うとたとえば buffer overflow などによる exploit を未然に防ぐことができる. Linux での主な実装は vanilla kernel(何もパッチを当てていない"素"のLinuxカーネル) RedhatのExec Shield の2系統があり,どちらの実装も 実行可能なメモリ空間の管理 (NX: No eXecute) メモリ空間のランダマイズ (ASLR:address space layout randomization) を行うことで,セキュリティの向上を図っている*1 以下,二つの実装を比較する形で詳細について,まとめる. ESPを使う方法 下記の方法でESPを有効にしたカー