OpenBSDプロジェクトは、米国時間5月1日にリリース予定のOpenBSD最新版で、「バッファオーバーフローを防げるようになる」と期待している。同プロジェクトが、4月10日に開催されたセキュリティ会議、CanSecWestで、OpenBSD最新版のセキュリティ機能について発表した。
バッファオーバーフローはソフトウェア上のメモリエラーで、セキュリティ専門家を30年以上も悩ませている。攻撃者は過多な情報を要求するプログラムを送り込んでこの欠陥を悪用する。攻撃者が送信するデータは、アプリケーションをクラッシュさせるコードと、攻撃者が動作させようとするプログラムあるいはそれを指示するメモリアドレスの2つのコンポーネントを含んでいる。アプリケーションをクラッシュさせてから、OSに望みのプログラムを実行させるという手口だ。
OpenBSDの最新版では、3つの方法でOSを強化したという。まず、アプリケーションやデータの記録構造である「スタック」がメモリで常駐する場所を無作為にした。これにより、バッファオーバーフローを狙ったコードと、システムのメモリ配置が一致しないようにする。
また、悪意のあるプログラムの実行を防止するために、重要なアドレスのスタック保存方法を変更した。「カナリア」と呼ばれる小さなタグをメモリ構造に配置し、アドレスが修正されたかどうか検知できるようにした。
最後に、「ページ」と呼ばれるプログラムやデータのブロックを、メモリの書き込み部分と実行部分の2つのうちどちらかに置くようにした。BSDファイルシステムに入り込んだ悪意のあるプログラムが、書き換えと実行を同時に処理することを防ぐ。しかし、64ビットプロセッサではこのようなメモリ保護が可能だが、最も使用されている32ビットプロセッサでは保護が効かない。OpenBSDプロジェクトは、コンピュータのメモリを分割することで問題解決を図るとしている。
32ビットプロセッサ対応のメモリページ構造保護機能は、およそ半年後に追加する計画だが、その他の機能は5月1日リリース版に組み込む。
この記事は海外CNET Networks発のニュースをCNET Japanが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」