如何使用 nmap ACK 扫描区分有状态防火墙和无状态防火墙

dlo*_*290 4 iptables nmap

我很难弄清楚这一点。据说,nmap可以通过使用-sA或 ACK 扫描来区分有状态防火墙和无状态防火墙,但我不知道如何从nmapACK 扫描的输出中辨别这一事实。

\n

据我所知,nmap将 ACK 标记的数据包发送到目标,目标将根据某些标准响应或不响应。

\n
    \n
  1. 如果端口打开或关闭且未过滤,目标将响应 RST。
  2. \n
  3. 如果过滤器正在丢弃流量,目标将根本不会响应
  4. \n
  5. 如果过滤器拒绝流量,目标将发送 ICMP 错误消息
  6. \n
\n

如果是这样,那么 \xc2\xb4nmap\xc2\xb4 将报告任何响应 RST 的端口为unfiltered,并将所有其他端口报告为filtered。这看起来像这样......(使用IPTABLES具有无状态规则的防火墙)

\n
$ sudo nmap -sA -T4 192.168.219.135\n\n\nStarting Nmap 7.12 ( https://nmap.org ) at 2016-06-28 16:35 EDT     \nNmap scan report for metasploitable (192.168.219.135)    \nHost is up (0.00027s latency).   \nNot shown: 994 filtered ports   \nPORT    STATE      SERVICE  \n22/tcp  unfiltered ssh  \n25/tcp  unfiltered smtp  \n53/tcp  unfiltered domain  \n70/tcp  unfiltered gopher  \n80/tcp  unfiltered http  \n113/tcp unfiltered ident  \nMAC Address: 00:0C:29:B7:F7:70 (VMware)\n\nNmap done: 1 IP address (1 host up) scanned in 4.40 seconds\n
Run Code Online (Sandbox Code Playgroud)\n

根据该输出,人们如何辨别这是有状态的还是无状态的?

\n

我已经阅读了有关该主题的所有内容,包括这nmap本书,但没有一个例子对我来说有意义。这与书中示例 10.2 的输出基本相同nmap;事实上它几乎是一样的!问题是,这本书指出,这是针对运行STATEFUL 规则的主机的nmap输出!nmapIPTABLES

\n

如果我可以从无状态防火墙获得与有状态防火墙相同的输出,那么我应该如何从nmapACK 扫描中判断我遇到的是哪个防火墙?

\n

我非常沮丧,我真的很感谢为我提供的任何帮助。

\n

bon*_*ing 5

让我们考虑一下有状态防火墙和无状态防火墙之间的行为差​​异。无状态防火墙将根据端口号进行阻止,但它不能仅仅阻止传入的 ACK 数据包,因为这些数据包可能是为了响应传出连接而发送的。因此,从-sA扫描的角度来看,端口将显示为“未过滤”,因为防火墙仅过滤 SYN 数据包。

另一方面,状态防火墙可以确定传入的 ACK 数据包是否是已建立的传出连接的一部分。它仅在未经请求的情况下阻止数据包(如 的情况-sA)。因此 Nmap 会将端口标记为“已过滤”。

所以最终的判断是:如果 ACK 扫描显示某些端口为“已过滤”,那么它很可能是状态防火墙。如果全部显示为“未过滤”,但常规 SYN 扫描显示某些为“已过滤”,则它是无状态防火墙。