ヒープスプレーとは

ヒープスプレーは、コンピューターソフトウェアの脆弱性を悪用するためのハッキング手法です。 メモリの一部を利用して、プログラムを制御するように機能します。 メモリの一部がハッキングコードによって制御されると、ハッカーはメモリのヒープ領域にバッファオーバーフローを実装することにより、コードの実行を制御できます。 ヒープスプレーの最も一般的なアプリケーションは、InternetExplorer®などのWebブラウザーのハッキングです。

「ヒープ」とは、コンピューターが特定のプログラムに割り当てる動的なメモリブロックのことで、コンピューターがメモリの仮想パイルをプログラム専用にするために命名されました。 これは、クローゼットや机の収納スペースのようなものと考えることができます。 このメモリヒープは、ソフトウェアまたはオペレーティングシステムのコレクションコードが解放するまで、プログラムに属します。 収集コードは、プログラムがクラッシュしたり、ソフトウェア自体が使用を終了した後にメモリを解放できなかったりした場合に、メモリを回収するフェイルセーフデバイスです。

ヒープスプレーでは、ハッカーが特定のコード部分でメモリヒープを「スプレー」しようとします。 目標は、クローバーをドアフレームの端に押し込んでドアを強制的に開くように、プログラムのメモリヒープ内の特定の位置にコードを配置することです。 情報がヒートスプレーによってメモリヒープに押し込まれた後、ハッカーはヒープまたはメモリバッファ全体をオーバーフローさせ、システム内でエラーを生成できます。 エラーが発生すると、ハッカーはそれらを利用してシステム上で独自のコードを実行できます。

ヒープスプレーは、システム内のメモリの動的割り当てにより機能します。 コンピュータープログラムは、当面の間、メモリのチャンク全体を本質的に「所有」するため、ハッカーは、コンピューターがプログラムに割り当てたメモリ内の相対位置を既に知っています。 したがって、ハッカーはコードをクラックに押し込むために、ほとんど特定性を必要としません。 プログラムを実行し続ける限り、メモリブロックが常に存在することを認識して、盲目的にコードをスプレーできます。 これは、目隠しされた状態でロックを選択しようとすることと比較できます。 ロックが動き回っている場合、タスクはほとんど不可能になりますが、システム内のメモリのヒープと同様に、1つの固定された場所に残っている限り、ジョブは可能になります。

他の言語

この記事は参考になりましたか? フィードバックをお寄せいただきありがとうございます フィードバックをお寄せいただきありがとうございます

どのように我々は助けることができます? どのように我々は助けることができます?