検索
連載

「バッファオーバーフロー」とは

「バッファオーバーフロー」とは、バッファー(データの一時記憶領域)に、想定以上の長さのデータが入力されてしまう現象である。「バッファオーバーラン」ともいう。

Share
Tweet
LINE
Hatena

 「バッファオーバーフロー」とは、バッファー(データの一時記憶領域)に、想定以上の長さのデータが入力されてしまう現象である。「バッファオーバーラン」ともいう。バッファーの制御がプログラマーに依存するC言語/C++言語のプログラムで意図せずに起きることが多い。

 悪意のある攻撃者は、バッファオーバーフローを利用することで、意図的に許容量を超えるデータを送り付けてシステムの機能を停止させることができる。また、データがあふれ出たことによる意図しないプログラムの動きを利用して、悪意のあるプログラムを実行することもできる。

 このバッファオーバーフローを利用した攻撃の例として、スタックとヒープの領域を対象とした攻撃が挙げられる。スタックを対象とした攻撃では、あふれた値で関数の戻り先アドレスを上書きすることにより、制御を奪うことができる。ヒープを対象とした攻撃では、ヒープのメモリ構造を壊したり、偽装することで制御を奪ったりすることができる。

 バッファオーバーフローは最も代表的なセキュリティホールであるため、多くの対策が講じられている。

 開発工程時に、バッファオーバーフローを起こす危険性のある関数の利用を避ける。バッファオーバーフロー対策用のライブラリや関数を利用する。コンパイラの持つセキュリティ機構を適用する。運用環境ではアドレス空間配置のランダム化によって攻撃を難しくするなどが挙げられる。

■更新履歴

【2004/1/1】初版公開。

【2019/1/28】最新情報に合わせて内容を書き直しました(セキュリティ・キャンプ実施協議会 著)。


Copyright © ITmedia, Inc. All Rights Reserved.

Security & Trust 記事ランキング

  1. 米国/英国政府が勧告する25の脆弱性、活発に悪用されている9件のCVEとは、その対処法は? GreyNoise Intelligence調査
  2. セキュリティ担当者の54%が「脅威検知ツールのせいで仕事が増える」と回答、懸念の正体とは? Vectra AI調査
  3. セキュリティ専門家も「何かがおかしいけれど、攻撃とは言い切れない」と判断に迷う現象が急増 EGセキュアソリューションズ
  4. OpenAIの生成AIを悪用していた脅威アクターとは? OpenAIが脅威レポートの最新版を公開
  5. インサイダーが原因の情報漏えいを経験した国内企業が約3割の今、対策における「責任の所在」の誤解とは
  6. 約9割の経営層が「ランサムウェアは危ない」と認識、だが約4割は「問題解決は自分の役割ではない」と考えている Vade調査
  7. 人命を盾にする医療機関へのランサムウェア攻撃、身代金の平均支払額や損失額は? 主な手口と有効な対策とは? Microsoftがレポート
  8. 「このままゼロトラストへ進んでいいの?」と迷う企業やこれから入門する企業も必見、ゼロトラストの本質、始め方/進め方が分かる無料の電子書籍
  9. AIチャットを全社活用している竹中工務店は生成AIの「ブレーキにはならない」インシデント対策を何からどう進めたのか
  10. MicrosoftがAD認証情報を盗むサイバー攻撃「Kerberoasting」を警告 検知/防御方法は?
ページトップに戻る