Common Exploiting Problems
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
リモートサーバーに**system('/bin/sh')
**を呼び出すエクスプロイトを送信すると、これはサーバープロセスで実行され、/bin/sh
はstdin(FD: 0
)からの入力を期待し、stdoutおよびstderr(FDs 1
および 2
)に出力を印刷します。したがって、攻撃者はシェルと対話することができません。
これを修正する方法は、サーバーが起動したときにFD番号 3
(リスニング用)を作成し、その後、あなたの接続が**FD番号 4
**になると仮定することです。したがって、syscall **dup2
**を使用してstdin(FD 0)とstdout(FD 1)をFD 4(攻撃者の接続のもの)に複製することが可能であり、これによりシェルが実行されたときに連絡を取ることが可能になります。
socatはすでに**stdin
とstdout
をソケットに転送します。ただし、pty
モードはDELETE文字を含みます**。したがって、\x7f
(DELETE
-)を送信すると、あなたのエクスプロイトの前の文字を削除します。
これを回避するために、エスケープ文字\x16
を送信する任意の\x7f
の前に追加する必要があります。
ここでこの動作の例を 見つけることができます。
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)