研究概要 |
本研究では,OSによるバッファオーバーフロー攻撃の防止手法として,3種類の手法を用いたシステムに関する研究をおこなった. 一番目はSegmentShieldと呼ぶシステムである.このシステムの手法では,「ポインタごまかし型」と呼ばれる新しい種類の攻撃の防止を目的として,Inte1社のIA-32(lntel x86)のセグメント機構を活用して,リターンアドレスの書き換えを確実に防止しつつも,オーバーヘッドを低く抑えることに成功した. 二番目はNXShieldと呼ぶシステムである.このシステムの手法では,多くの近代的プロセッサに搭載されているメモリの実行禁止属性による保護を回避して任意のコードを実行可能にする「連鎖型return-into-libc攻撃」と呼ばれる攻撃の防止を目的として,OSのアクセス制御機構によりメモリの実行禁止属性が不正に解除されることを防止する手法を実現した. 三番目はSpaceShield と呼ぶ手法である.このシステムの手法では,上記の2つの新しい攻撃手法を包括的に防止しつつも,オーバーヘッドが極めて低い保護機構の実現を目的として,アドレス空間分割という手法を用いた.プログラムの仮想アドレス空間を,ポインタ空間とデータ空間の2つに分割することにより,ポインタの書き換えを防止しつつ,既存のプログラムにおける命令コード中のアドレスのオフセットだけを書き換えて新たな命令の追加を不要にすることにより,極めてオーバーヘッドの低い保護機構の実現が可能になった.
|