我正在寻找可以在防火墙网络中使用的工具,以扫描防火墙以查找开放的传出端口。
我已经做过一些研究,发现Firewalk了,但是10年来它一直没有得到维护,并且当我尝试它时似乎对我没有用。
我进行了一次谷歌搜索,发现一些网站说您可以使用nmap进行此操作,但是我也无法正常进行。
有没有人比在防火墙外设置一个监听每个端口并尝试从内部进行端口扫描的盒子更好的方法?
我正在寻找可以在防火墙网络中使用的工具,以扫描防火墙以查找开放的传出端口。
我已经做过一些研究,发现Firewalk了,但是10年来它一直没有得到维护,并且当我尝试它时似乎对我没有用。
我进行了一次谷歌搜索,发现一些网站说您可以使用nmap进行此操作,但是我也无法正常进行。
有没有人比在防火墙外设置一个监听每个端口并尝试从内部进行端口扫描的盒子更好的方法?
Answers:
假设您有三个子网,并且其中有一个服务器,但是要查看对其他两个子网开放的规则。我从服务器对其他两个运行nmap扫描。我通常使用以下行:
nmap -v -oA `hostname`_full-nmap-`/bin/date +%y%m%d` -P0 -sS -F -n --host_timeout 240000 --max_rtt_timeout 300 --initial_rtt_timeout 2000 --max_parallelism 250 192.168.123.0/24 192.168.234.0/24
您也可以将类似的概念路由应用到Internet,因为nmap将识别要过滤的端口。
这是我所做的:
在被测网络中设置一台计算机,在Internet上其他位置(在防火墙的另一侧)设置一台计算机。使用Windows或linux(我使用过CentOS)应该没问题。我有一个公共IP,但我想它可以与1:1 NAT一起使用。
在Internet机器上,我运行了一个命令,该命令将使用nc打开计算机上的每个端口。我做了
for i in `seq 1 65000`; do nc -l $i &; sleep 1; done
睡眠是为了防止它一次产生过多的netcat进程。一切正常,但花费了65000秒(过夜)。
在经过测试的网络上,我只需运行
nmap -p- -PN <IP>
然后等待结果。
频闪会做吗? http://www.cerias.purdue.edu/about/history/coast/archive/data/categ50.html
我使用nmap取得了不错的结果。
nmap -v -oA `hostname`_full-nmap-`/bin/date +%y%m%d` -Pn -sS -F -n --host_timeout 240 --max_rtt_timeout 3 --initial_rtt_timeout 2 --max_parallelism 250 <IPADDRESS>