PPTP VPN 是否安全?在 DD-WRT 下?

信息安全 虚拟专用网 固件 pptp
2021-09-02 09:05:43

PPTP 不像 SSL/TLS 那样是一个开放的、经过批准的标准。(参见:http ://en.wikipedia.org/wiki/Transport_Layer_Security#TLS_1.2和http://datatracker.ietf.org/doc/rfc5246/

PPTP 最流行(部署最广泛)的实现来自 Microsoft,在 WinNT 中。此实现还用于许多设计用于与 WinNT 及其后续版本一起使用的第 3 方应用程序。

PPTP 的 MS 实现(使用 MS-CHAP 身份验证)在 1998 年被公开证明被密码破解(参见https://www.schneier.com/paper-pptp.html)。还有一些实用程序可用于嗅探 MS-CHAP 身份验证会话并自动从中提取密码(L0phtCrack v2.0,1997 年发布)。

那么,问题来了:有谁知道PPTP的DD-WRT实现细节吗?我看到“v24-sp2 mini”中的 PPTP 服务器使用“MPPE 加密”并存储“CHAP 机密”。它是否具有与 1997 年 PPTP/MS-CHAP 相同的漏洞?这个协议的实现是否比 16 年前更好?
或者,对于国产 VPN,我是否需要升级我的硬件和固件才能使用 OpenVPN?

(根据用户推荐从 superuser.com/questions 重新发布。)

1个回答

PPTP彻底坏了。在这一点上,最不关心他们打算保护的通信的人都不应该使用它。这不是选择某人的实现而不是另一个的问题。它最严重的缺陷在于协议设计,无法修复。

正如您在问题中指出的那样,MSCHAPv1 在 15 年前就被破坏了。众所周知,它的替代品 MSCHAPv2 一直很弱。现在它可以在几个小时内被暴力破解在去年的 DEFCON 上得到了展示,您现在可以使用在线服务来破解它。

您可以将 EAP-TLS 身份验证与 PPTP 一起使用,但这需要完整的公钥基础设施,除非您正在构建企业 VPN,否则您不必付出努力。有很多活动部件,所以这不是你可能为个人项目做的事情。

然后,以上仅涉及身份验证。加密 MPPE 使用 RC4。但是,没有消息身份验证,因此攻击者有可能在传输过程中修改您的流量,但很可能不会被检测到。而且RC4 一天比一天弱(这是另一个话题)......

微软则建议使用 L2TP 或 IPSec 或 SSTPOpenVPN 也是一种可能,尤其是在您处理非 Microsoft 系统时。

最后,PoPToP(PPTP 的 Linux 实现)的实现者建议不要使用它,并且已经这样做了将近十年。