Nmap扫描STATE=filtered是什么意思?

信息安全 地图
2021-09-07 06:11:39

当我扫描主机的开放端口时,我遇到了以下结果:

PORT     STATE    SERVICE
22/tcp   open     ssh
80/tcp   open     http
139/tcp  filtered netbios-ssn
445/tcp  filtered microsoft-ds
3306/tcp open     mysql

过滤是什么意思?

2个回答

NMAP 参考指南第 15 章中描述了过滤

Nmap 无法确定端口是否打开,因为包过滤会阻止其探测到达端口。过滤可以来自专用防火墙设备、路由器规则或基于主机的防火墙软件。这些端口让攻击者感到沮丧,因为它们提供的信息太少。有时它们会响应 ICMP 错误消息,例如类型 3 代码 13(无法访问目标:管理上禁止通信),但过滤器会简单地丢弃探针而不响应。这迫使 Nmap 重试几次,以防探针由于网络拥塞而不是过滤而被丢弃。这会大大减慢扫描速度。

长话短说 -过滤意味着您无法从扫描位置访问该端口,但这并不意味着该端口在系统本身上已关闭。另一方面,关闭意味着您可以到达港口,但实际上它是关闭的。

Filtered 也是扫描UDP时的常见响应。

扫描 UDP 带来了许多挑战,nmap 文档详细讨论了UDP过滤状态。

提醒:默认情况下,nmap 仅针对 1000 个最“流行”端口扫描 TCP。

过去我曾将Unicornscan用于此特定目的,因为 nmap 有局限性,但可能还有其他工具可以充分发挥作用。我建议您再次尝试使用 UDP 扫描,看看您会得到什么。也许添加一些标志,比如-sV让 nmap 进一步挖掘。

端口 139 和 445 通常使用 tcp,而端口 137、138 使用 udp。

# iptables -A INPUT -d 10.1.1.1 -p udp --dport 137 -j DROP
# iptables -A INPUT -d 10.1.1.1 -p udp --dport 138 -j DROP
# iptables -A INPUT -d 10.1.1.1 -p tcp --dport 139 -j DROP
# iptables -A INPUT -d 10.1.1.1 -p tcp --dport 445 -j DROP

来源:防火墙 Samba