8

你不能用 netcat 监听一个端口范围吗?您可以扫描一个范围,但不能听它出现。所以唯一的解决方案是脚本?

4

4 回答 4

6

我知道这篇文章很旧,但我最近找到了一个不错的解决方案,那就是一个不错的单行。外壳 = bash,操作系统 = Redhat 7。

for j in 202{0..5}; do nc -lvnp $j & done

从 2020 年到 2025 年,这应该会打开许多​​侦听端口,或者您想要的任何范围。

如果您不是 root 用户而是 sudoer,并且必须在 1024 以下的端口监听,请在命令sudo之前添加。nc

for j in 101{0..5}; do sudo nc -lvnp $j & done

已编辑:n/c:缺少本地端口参数。{-p}

于 2018-04-20T20:37:13.237 回答
3

我认为它不支持该功能。如果您对任何旧解决方案感到满意,您可以使用ncatnetcat 的版本,并为每个端口设置转发。您可以为除第一个端口之外的所有端口生成一个转发器,然后在第一个端口上侦听:

first_port=2999
last_port=3004

for (( i = first_port+1; i <= last_port; i++ )) do
    ncat -l -k -p $i -c "nc localhost $last_port" &
done

ncat -l -k -p $first_port

我承认,这很邋遢。

于 2013-09-20T02:21:03.337 回答
3

如果您希望通过多个本地端口扫描您的目的地,您可以使用-p <PORT>选项 [1]。这告诉 netcat 查看该本地端口,这与告诉它在所述端口上设置后门侦听器时非常相似。如果它们被拆分,您也可以将这些端口串在一起。这是我刚刚使用的一个例子。

$ nc -vvz -p 80 -p 8080 -p 443 testserver.mycompany.com 3066

那是我的伎俩。当然,您也可以列出多个目标端口,使其也通过每个本地端口扫描这些目标端口。

[1] http://www.instructables.com/id/More-Fun-with-netcat/step2/Basic-Netcat-commands/

于 2014-02-03T16:24:21.907 回答
1

或iptables,

iptables -t nat -A INPUT -p tcp --dport 8080 -j REDIRECT --to-port 80
于 2013-09-24T13:52:45.593 回答