バッファオーバーフロー(buffer overflow)Keywords

2007年10月26日 17時28分 公開
[TechTarget]

 バッファオーバーフローは、プログラムやプロセスがバッファ(一時データ記憶領域)に、想定されている以上に大量のデータを格納しようとした場合に発生する。バッファは有限の量のデータを収めるように作成されるため、それを超える情報(どこかに格納されなければならない)は隣のバッファにあふれてしまい、そこに保持されている有効なデータを破壊したり、上書きしたりする。こうしたバッファオーバーフローは、プログラミングエラーのせいで偶然発生する場合もあるが、データの完全性に対するセキュリティ攻撃で広く悪用されるようになっている。バッファオーバーフロー攻撃では、バッファの許容量を超えるデータに含まれるコードが特定のアクションを引き起こす。それによって標的のコンピュータに新しい命令を送信し、例えばユーザーのファイルを破壊したり、データを改ざんしたり、機密情報を漏らしたりといったことが行われる。バッファオーバーフロー攻撃が登場したのは、C言語がその枠組みを提供し、お粗末なプログラミング手法が脆弱性を招いたためと言われている。

 2000年7月に、Microsoft OutlookとOutlook Expressにバッファオーバーフローの脆弱性が発見された。プログラムの欠陥により、攻撃者が電子メールを送るだけでターゲットコンピュータの完全性を侵害することが可能になっていた。この攻撃を受けたユーザーは、一般的な電子メールウイルスの場合とは異なり、添付ファイルを開かないことで自分を守ることはできなかった。実際、ユーザーがメッセージを開かなくてもこの攻撃は成立した。両プログラムのメッセージヘッダメカニズムの欠陥を突いて、攻撃者は不正に長いデータをヘッダに含むメッセージを送信。これによりオーバーフローを発生させ、受信者のコンピュータ上で任意の種類のコードを実行できた。受信者がメッセージをサーバからダウンロードすると、直ちにヘッダ処理が行われ、攻撃プロセスが開始されることになるため、この種のバッファオーバーフロー攻撃は非常に防ぎにくかった。その後、Microsoftはこの脆弱性を解消するパッチを作成した。

ITmedia マーケティング新着記事

news061.png

高齢男性はレジ待ちが苦手、女性は待たないためにアプリを活用――アイリッジ調査
実店舗を持つ企業が「アプリでどのようなユーザー体験を提供すべきか」を考えるヒントが...

news193.jpg

IASがブランドセーフティーの計測を拡張 誤報に関するレポートを追加
IASは、ブランドセーフティーと適合性の計測ソリューションを拡張し、誤報とともに広告が...

news047.png

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...