我应该对“私人”网络上不安全的 HTTP 有多担心?

我应该对“私人”网络上不安全的 HTTP 有多担心?

因此,我加入了一个新团队,该团队开发并运营一项可在互联网上使用的服务。该服务面向 B2B 而非消费者,尽管任何人都可以注册一个低端账户来试用它(如果您的潜在客户的开发人员在签约前无法试用,那么您将一事无成!)。

最近,我惊讶地发现,我原本以为可以通过 HTTPS 向一组严格控制的客户端证书提供一些东西,而现在却通过开放的 HTTP 传输,没有任何形式的身份验证。比如 Consul 键/值存储,其中的一些值是密码,或者 Docker 私有注册表,其中的一些图像包含私钥(目前正在进行一个项目,从图像中删除密钥并在运行时注入它们,但旧图像仍在注册表中,我不敢打赌密钥已被更改)。可能还有其他处于类似情况的服务我还没有找到。

我问过的同事也认为这不是理想的选择,但他并不担心,因为这些服务只在(第三方托管的)数据中心的私有网络上公开。谢天谢地,它们无法从互联网路由(如果一切正常的话)。不过,这似乎需要对网络路由配置抱有很高的信任,更不用说如果其中一台服务器确实受到攻击,那么它对内部网络的访问意味着其余服务器都成了活靶子。

这是我第一次负责公共服务,到目前为止,我一直在“拆封”的世界工作,我们销售软件,但客户安装并运行它。所以我不知道这有多糟糕。我会提出这个问题并尝试修复它,但我想让一个在运行生产服务方面更有经验的社区来运行它,以便调整我应该喊多大声。这真的很糟糕,我们应该放下一切直到它被修复,还是不太好,但实际上在现实中并不罕见?

以访客身份发帖因为我不想透露任何有关这是谁的服务的线索:)

答案1

我觉得这不是什么大问题,警告提供连接私人服务器的网络(无论是虚拟的还是物理的)已切换,这不是什么大问题。

我经常说,安全是不存在的摘要,只有威胁和对此的响应,无论是适当的还是其他的。那么你的威胁模型是什么?攻击者破坏了面向互联网的服务器;他现在能做什么?

网络上的 SSL(包括 HTTPS)提供两种服务:加密和身份验证。加密无法防范这种威胁模型:如果后端网络已切换,攻击者只能看到往返于受感染服务器的流量。由于这是 SSL 端点,攻击者将能够读取所有流量反正身份验证提供了一点好处,但这只是痕迹:即使他们没有使用通常的自签名证书(这往往会破坏身份验证),您也可以相当有信心您确实在与后端服务器对话,因为您控制着内部网络,并且威胁模型没有指定网络基础设施的渗透。

简而言之:你写道“如果其中一台服务器确实受到攻击,那么它对内部网络的访问意味着其余服务器都将成为目标“。 这是真实的,但这并不代表内部串扰是加密的

当你对 Ryan 评论说“从办公室到托管的私有 LAN 的访问是通过 VPN 进行的,并且生产服务上的操作是通过专用的 Linux 笔记本电脑而不是开发人员的主机完成的“,我看到一家公司实际上思维关于威胁模型和响应,而不是像某种闪亮的安全毯一样挥舞加密,并假设他们现在很安全,因为加密。听起来他们努力确保从安全性中受益的部分,而不担心没有受益的部分。

答案2

我和一位朋友就这个问题进行了长时间的交谈。归根结底,这取决于你在做什么,以及你的网络是什么样的。

总体来说:很糟糕。

多年来,密码学已经变得越来越容易实现,因此真的没有太多理由不去实现它。

但这实际上取决于您网络上传输的内容。这些信息是否需要保密/认证?请记住,尽管目的地可能无法路由到互联网 - 但您的机器可以。从技术上讲,如果有人窃听您的机器或您与目的地之间的任何路由/交换设备,您的数据就会受到损害。您应该始终假设,如果您的机器可以访问互联网,那么外面的某个人可能拥有您拥有的所有权力。仅仅因为互联网无法直接访问您的私人局域网并不意味着它无法通过危及您的机器来访问它。

这是一容易地这是一个有争议的话题,但一般来说,没有加密会降低你的安全态势。如果你能做到,那就去做吧。我同意你的情况风险很小,但还是——去做吧!

相关内容