我有点不明白这个漏洞意味着什么,有人能帮助我理解吗?
我对结果部分特别困惑。为什么源端口 25 与随机源端口会有所不同,它们都来自外部世界?
漏洞:
TCP 源端口通过防火墙威胁:
您的防火墙策略似乎允许具有特定源端口的 TCP 数据包通过。影响:
某些类型的请求可以穿过防火墙。此漏洞报告结果部分列出的端口号是未经授权的用户可以用来绕过防火墙的源端口。解决方案:
确保所有过滤规则都正确且足够严格。如果防火墙打算拒绝与特定端口的 TCP 连接,则应将其配置为阻止所有发往此端口的 TCP SYN 数据包,无论源端口是什么。遵守:
不适用结果:
该主机对使用源端口 25 发送到目标端口 22 的 4 次 TCP SYN 探测做出了 4 次响应。但是,它对使用随机源端口发送到同一目标端口的 4 次 TCP SYN 探测根本没有做出响应。
答案1
当客户端连接到服务器时,客户端会选择一个介于 1024 和 65535 之间的空闲 tcp 端口。在 Linux/Unix 上,非 root 用户不能选择小于 1024 的端口。然后它连接到一个众所周知的端口,例如 http 的 80 端口...
报告称,如果源端口是特定的(您的示例中为 22 和 25),它可以到达目标端口,但如果使用随机端口(例如,介于 1024 和 65535 之间),则无法到达。客户端通常使用随机端口,因此您的规则不应考虑源端口号
因此,您的一条规则是不好的,因为如果源端口是特定的,它就允许流动,而它只应该在目标端口上进行过滤,这是两者之间唯一的静态部分。
我猜你错过了创建规则之一,因为你无意中交换了源值和目标值
答案2
我在漏洞扫描中也看到了这个,不过是针对 UDP 端口 53。在我看来,出现这个的原因是我们创建了防火墙策略规则,允许特定的源 IP 地址通过任意端口连接到目标 IP 和目标端口。在防火墙前面有运行 ACL 的互联网路由器。我们允许任何端口访问,比如 80、443、21、22 等,因为我们的防火墙会为我们的 DMZ 服务器处理这些端口的规则,如果允许所有人访问您的网站,就无法按 IP 进行过滤。因此,ACL 会阻止大量请求,但允许 80、443、22 等端口,因为 ACL 允许这些端口进入。然后防火墙会重置数据包,以便扫描仪将其视为关闭的端口。