WWW2Exec - atexit()

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

__atexit構造

現在はこれを悪用するのは非常に珍しいです!

atexit()は、他の関数がパラメータとして渡される関数であり、これらの関数は**exit()の実行時やmainreturn時に実行されます。 これらの関数アドレスを任意に変更して、例えばシェルコードを指すようにすることができれば、プロセスの制御を取得できますが、現在はこれがより複雑になっています。 現在、実行される関数へのアドレスはいくつかの構造体の背後に隠されており**、最終的にそれが指すアドレスは関数のアドレスではなく、XORランダムキー暗号化されています。そのため、現在、この攻撃ベクトルはx86およびx64_86ではあまり有用ではありません暗号化関数は**PTR_MANGLEです。 m68k、mips32、mips64、aarch64、arm、hppaなどの他のアーキテクチャ**は、同じものを返すため、暗号化関数を実装していません。そのため、これらのアーキテクチャはこのベクトルによって攻撃される可能性があります。

これがどのように機能するかの詳細な説明は、https://m101.github.io/binholic/2017/05/20/notes-on-abusing-exit-handlers.htmlで見つけることができます。

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

Last updated