我有一个与任何 VPN 相关的小问题。众所周知,VPN 通过具有私有或公共加密密钥的服务器连接以共享加密隧道。
我的问题是,如果不幸的是我的 VPN 的电子邮件和密码从某个地方被泄露,而黑客知道我的用户名和密码,那么他就会瞄准我。如果他在上面有我的凭据,他能看到我的数据进入服务器吗?我的意思是他知道我的用户名和密码,所以黑客可以拦截我的连接并使用我连接的 VPN 用户名和密码对其进行解密吗?如果不是,那么我很好奇 VPN 如何为我单独连接的每个设备分配加密密钥和 VPN 分配密钥,或者为我的所有设备分配相同的密钥(我的意思是如果我的所有设备都使用相同的 ID 和密码登录?
编辑:电子邮件和密码是与服务器交换信息的加密密钥还是在建立连接时随机分配的?
这在很大程度上取决于VPN使用的协议。即使只计算被认为“或多或少标准”的那些也会给你一打左右。几乎所有企业 VPN 系统都使用自己专有的东西。如果您包括各种商业 VPN 应用程序,甚至更多。
然而,几乎所有现代数据加密协议都会为每个连接生成一个新的“会话”密钥。由于各种原因,您的密码并未用作实际密钥。
此外,现在大多数现代数据加密协议都提供所谓的“前向保密”。这基本上意味着每个连接都使用 DH 密钥交换(或类似方法)来派生该会话密钥,确保即使客户端或服务器的长期凭据泄漏,也无法使用它们以某种方式“解密”连接之前捕获的。
例如,SSH 提供前向保密,TLS(使用 ECDHE)、WireGuard、OpenVPN(在其通常的 TLS 模式下)或 IPSec(如果操作正确)也提供前向保密。即使有人可以从外部监视 SSH 连接,但知道您或服务器的密钥仍然不会给他们任何帮助。
然而,情况并非总是如此。例如,在旧的 PPTP MPPE 协议中,几乎每个人都只是为了方便使用而使用 MSCHAP 身份验证,而在 MSCHAP 中,密钥来自您的密码。(不过,PEAP 不会出现这种情况。)因此,如果您使用 PPTP并且攻击者能够窥探您的(加密)数据包,他们很可能可以轻松解密。
当我们谈论廉价的“netflix 每月 1 美元”的 VPN 应用程序时,它们中的一些很好,但你真的必须总是期待最坏的情况。