バッファオーバーフロー(Buffer Overflow)
バッファオーバーフロー(Buffer Overflow)とは、ひとことで言えば、プログラムが確保したメモリ領域(バッファ)を超えるデータを書き込むことで、隣接するメモリを上書きし、プログラムの異常動作や任意のコード実行を引き起こす脆弱性です。たとえば、ユーザー名の入力欄に想定以上の長さの文字列を送り込み、戻りアドレスを上書きして攻撃者が用意したシェルコードを実行させるスタックベースのバッファオーバーフローが代表的です。C/C++など手動メモリ管理を行う言語で特に発生しやすく、歴史的に多くの重大な脆弱性の原因となってきました。ASLR(アドレス空間レイアウトのランダム化)やDEP(データ実行防止)、安全な関数の使用が主な対策です。

