Pointer Redirecting
Last updated
Last updated
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
関数呼び出しがスタックにある文字列のアドレスを使用する場合、バッファオーバーフローを悪用してこのアドレスを上書きし、バイナリ内の別の文字列のアドレスを置くことが可能です。
例えば、system
関数呼び出しがコマンドを実行するために文字列のアドレスを使用する場合、攻撃者はスタックに別の文字列のアドレス、export PATH=.:$PATH
を置き、現在のディレクトリに新しい文字列の最初の文字の名前のスクリプトを作成することができます。これにより、バイナリによって実行されます。
以下に例を示します:
32ビット、スタック内のフラグ文字列のアドレスを変更してputs
によって印刷されるようにします。
文字列ポインタと同様ですが、関数に適用されます。スタックに呼び出される関数のアドレスが含まれている場合、それを変更することが可能です(例:**system
**を呼び出すために)。
以下に例を示します:
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)