没有服务监听的开放端口会带来风险吗?

信息安全 网络 防火墙 港口
2021-08-27 12:41:59

我有一台运行 Ubuntu 16.04 服务器版的家庭服务器。我有几个端口,我的路由器转发到我的服务器并且ufw在我的服务器上允许,以便我可以访问 LAN 外部的服务 - 即自定义端口上的 SSH(因为路由器阻止端口 22 进行转发)和端口 80 和 443用于我的 Web 服务器的 HTTP 和 HTTPS。我想为开发目的打开一个端口 - 特别是端口 9991,它与任何特定的服务/协议无关。大多数情况下,侦听此端口的开发服务器不会运行。但是,路由器仍然会将此端口上的请求转发到服务器,这仍然是允许的ufw如果端口上没有服务侦听,但它对传入连接开放,是否存在安全威胁?

3个回答

在 nmap 术语中,“开放”端口通常是服务绑定并侦听的端口;否则端口未打开。

但是,您似乎在询问是否在防火墙上打开了一个端口。也就是说,允许远程主机通过防火墙连接到服务器上的端口 9991,即使该端口上没有任何绑定并且这些连接尝试会导致拒绝。然而,这带来了一些风险:

  • 如果您的服务器遭到入侵,您可以在该端口上运行 HTTP 服务器,并使用它来传播非法内容(例如勒索软件二进制文件或托管 C&C 服务器)。

    此外,在企业设置中,这台受感染的服务器还可用于通过指向该服务器的网络钓鱼攻击来感染组织内的其他机器——包括那些无法连接到 Internet 的机器。这将有更高的成功机会,因为企业用户可能比外部服务器更信任内部服务器。

    最后,当一个人可以简单地在这个端口上启动 sshd 侦听时,使受感染的服务器易于访问会容易得多。

  • 如果有人升级此服务器上的操作系统,新版本可能会引入侦听此端口的服务。此服务在默认配置中可能不安全 - 例如,它可能具有已知的默认凭据 - 并导致可利用的漏洞。

如果端口后面没有服务器,则从技术上讲,它没有被打开。我假设您的问题更多:没有服务器的端口不会被防火墙阻止是否有风险?

我的答案将分为两部分。首先,由于没有服务器在该端口上侦听,因此没有实际风险。但确实表明防火墙配置不当。

最佳安全实践建议防火墙阻止任何不需要的东西。这只是关注分离原则的一个应用:防火墙管理员不应该确切知道服务器是如何配置的,他应该只考虑所需的通道并阻止其他所有内容。

所以即使没有直接的风险,在防火墙级别不阻塞端口仍然是一个糟糕的配置。

不,如果没有服务在该端口上侦听,则绝对没有风险。传输控制协议 (TCP) 和用户数据报协议 (UDP) 在其标头中指定源和目标端口号,因此如果没有服务响应,则不会建立连接并关闭套接字。