One Gadget

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

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

基本情報

One Gadget は、systemや**"/bin/sh"を使用せずにシェルを取得することを可能にします。One Gadget は、libcライブラリ内でシェル(execve("/bin/sh"))を取得する方法を見つけ、たった1つのアドレス**だけを使用します。 ただし、通常、いくつかの制約があります。最も一般的で回避が容易なものは、[rsp+0x30] == NULLのようなものです。RSP内の値を制御できるため、さらにいくつかのNULL値を送信して制約を回避すればよいです。

ONE_GADGET = libc.address + 0x4526a
rop2 = base + p64(ONE_GADGET) + "\x00"*100

One Gadget が示すアドレスには、libc がロードされているベースアドレスを追加する必要があります

One Gadget は、任意の書き込みを実行するテクニックに大きな助けとなり、ROP チェーンを単純化することができます。必要なのは1つのアドレスを呼び出すだけです。

ARM64

github リポジトリによると、ARM64 がサポートされていますが、Kali 2023.3 の libc で実行すると、ガジェットが見つかりません

Angry Gadget

github リポジトリ から: OneGadget に触発されたこのツールは、Python で書かれており、execve('/bin/sh', NULL, NULL) を実行するガジェットの制約をテストするために angr を使用します。One Gadget から試すガジェットがなくなった場合、Angry Gadget はより複雑な制約を持つ多くのガジェットを提供します!

pip install angry_gadget

angry_gadget.py examples/libc6_2.23-0ubuntu10_amd64.so
htARTE(HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ

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

Last updated