MacOS 上的 nc (netcat) 是否缺少“-e”标志?

MacOS 上的 nc (netcat) 是否缺少“-e”标志?

当我尝试运行时nc -l 1337 -e /bin/bash,它说:

nc: invalid option -- e
usage: nc [-46AacCDdEFhklMnOortUuvz] [-K tc] [-b boundif] [-i interval] 
[-p source_port] [--apple-delegate-pid pid] [--apple-delegate-uuid uuid]
      [-s source_ip_address] [-w timeout] [-X proxy_version]
      [-x proxy_address[:port]] [hostname] [port[s]]

我想远程运行命令,但它只是远程打印文本。为什么这不起作用以及如何修复它?

答案1

你不必使用nc -l 1337 -e /bin/bash.相反,另一种工作方式完全相同的方法是nc -l 1337 | /bin/bash将接收到的所有内容输出到/bin/bash.

答案2

或者尝试nc target port | /bin/bash | nc target port

例子:

nc 192.168.1.10 4444 | /bin/bash | nc 192.168.1.10 4444

它将把从第一个接收的内容重定向到第二个nc/bin/bash并将输出重定向/bin/bash到第二个nc。这是一种解决方法,但它确实有效。 :)
否则只需安装 ncat。

相关内容