Skip to main content

バッファオーバーフローとは何ですか?

bufferバッファオーバーフローは、プログラムがバッファーに書き込もうとし、境界の外側に踏み込んでいるときに発生し、プログラムが他のプログラムに属する可能性のあるメモリに情報を書き込みます。これは、オペレーティングシステム内のメモリの完全性に違反し、その結果、実行プログラムの重大なエラーと潜在的なクラッシュが生じます。バッファオーバーフローの主な危険は、2つの主要な要素から来ています。まず、コンピューターのメモリマップ&mdashとして、バッファの外部で記述された情報は表面上は失われます。メモリロケーションのリスト—それを説明することはできません。第二に、バッファオーバーフローは、別のプログラムのメモリに保存された情報を誤って上書きし、別のプログラムの実行を効果的に妨害することもできます。別のことを指します。バッファの最も一般的な使用は通常、ビデオまたはオーディオの再生にあります。コンピューターは、メモリ内の追加のx秒の映像またはオーディオを追加するため、システムに何かが一時的に見逃せても再生が中断されないようにします。バッファーは、マップに描かれた境界線内にのみ存在する国と同じように、コンピューターメモリ内の特定の事前に決められた場所内にのみ存在します。これらの仮想ラインの外に出ると、プログラムが実行されるだけでなく、システム上の他のプログラムの問題が発生します。これが発生すると、バッファーの外側に記述された情報は、コンピューターマップから効果的に落ちます。言い換えれば、システムにはそれを取得する方法がなくなりました。コンピューターは、メモリに割り当てられた特定のバッファースペース内でバッファーされた情報を検索することのみを知っているため、オーバーフローされた情報がどこに行ったのかを把握する方法はありません。これに加えて、バッファオーバーフローには、コンピューターで実行されている他のプログラムを混乱させる可能性があります。バッファの両側にあるメモリストレージスペースが、すでに他の実行プログラムに割り当てられていると想像してください。バッファーの情報が設計された領域を通過すると、メモリのセクションに既に保存されている情報を上書きして破損します。したがって、バッファオーバーフローは、隣接するプログラムの有効性を損なう可能性のある問題であり、独自の操作を破壊する可能性があります。