PPTP has become obsolete
https://www.ovpn.com/en/blog/pptp-has-become-obsolete/
PPTP has become obsolete
What is PPTP?
PPTP stands for Point-to-Point Tunneling Protocol and was created with the help of Microsoft in the 1990s. It is a continuation of PPP and comes preinstalled on all versions of Windows since Windows 95. It was officially added into the Linux kernel on the 28th of October 2005.
Why is PPTP not secure?
The history of PPTP is filled with flaws that have been detected by security experts. The first incident happened back in 1998, when Bruce Schneier & Mudge published[1] their findings regarding the authentication protocol MS-CHAPv1. The flaws that were found included:
- Hashing of passwords
- Vulnerability in the case of man-in-the-middle (MITM) attacks.
- Encryption – the possibility to decrypt data being sent through the protocol
Following the report made by Bruce Schneier, Microsoft released an update of the authentication protocol, named MS-CHAPv2. However, it didn’t take long before Bruce Schneier & Mudge published[2]an essay detailing the security flaws in the new protocol.
In conclusion, MS-CHAPv2 will only be as secure as the password is in itself. This is problematic since it means that MS-CHAPv2 is vulnerable to, for example, dictionary attacks.
In 2012, it was revealed[3] that a brute-force attack on MS-CHAPv2 has the complexity of just 256, meaning only one single DES key.
How do you intercept PPTP?
Since the complexity is just 256, it is very simple to brute-force the password and gain access to intercept all network traffic in plain text. Using the chapcrack application[4], you can intercept a network for every MS-CHAPv2 ’handshakes’.
When the application finds a ‘handshake’, it can show all kinds of interesting information, such as user name, known plain text, and two known cipher texts, and it can also crack the third DES key.
It will also show you a token that you can use on CloudCracker[5]. CloudCracker will brute-force the password in less than 24 hours, giving you the password, allowing you to continue intercepting the network traffic in plain text using chapcrack.
The traffic that is passing through PPTP can in other words be seen as plain text. This means that VPN providers offering PPTP is offering a service that anyone can decrypt.
So why is PPTP still being used?
There are mainly two reasons why PPTP is still being used.
- PPTP has come preinstalled on most operating systems for a long time.
- It’s easy to get started. Nothing needs to be installed.
What can you do to increase the security?
The first thing you should do is to avoid PPTP altogether. Even Microsoft[6] has gone as far as to say that you shouldn’t use PPTP. OpenVPN[7] is the most secure alternative as far as VPN tunnels go.
Unfortunately, there is not a whole lot you can do if you’ve already purchased a PPTP subscription by another VPN provider that doesn’t want to change to OpenVPN.
What you can do is ask your provider what kind of authentication protocol they are using for PPTP. EAP-TLS[8] is regarded as the most secure authentication protocol for PPTP to date. If your VPN provider is using EAP-TLS, you can sleep a little bit better at night, but the best alternative remains to be switching to OpenVPN.
Sources
[1] https://www.schneier.com/paper-pptp.pdf
[2] https://www.schneier.com/paper-pptpv2.html
[3] https://www.cloudcracker.com/blog/2012/07/29/cracking-ms-chap-v2/
[4] https://github.com/moxie0/chapcrack
[5] https://www.cloudcracker.com/
[6] https://technet.microsoft.com/library/security/2743314
[7] https://openvpn.net/index.php/open-source.html
[8] http://technet.microsoft.com/en-us/library/cc739638(WS.10).aspx
PPTP has become obsolete的更多相关文章
- centos7 配置PPTP、L2TP、IPSec服务
首先,推荐跑下面的脚本: https://github.com/BoizZ/PPTP-L2TP-IPSec-VPN-auto-installation-script-for-CentOS-7 这个脚本 ...
- Juniper SSG5 PPTP VPN 619错误解决
公司分部的客户端需要使用PPTP VPN连接总部,将网关更换为Juniper SSG5后,客户端出现了每几个小时自动断开的现象,错误619. 解决:Security —— ALG —— 开启PPTP协 ...
- Ubuntu Server 设置PPTP客户端连接
安装PPTP客户端 apt-get install pptp-linux 设置连接账号信息 sudo vim /etc/ppp/chap-secrets 其中$login_name是登录名:$pass ...
- 【转】CentOS上部署PPTP和L2TP over IPSec简要笔记
PPTP部署 安装 PPTP 需要 MPPE 和较高版本的 ppp ( > 2.4.3 ) 支持,不过 CentOS 5.0/RHEL 5 的 2.6.18 内核已经集成了 MPPE 和高版本的 ...
- OracleConnection is obsolete
用EF搞Oracle的 fake CodeFirst 时,一直报错以下错误: 对类型“System.Data.OracleClient.OracleConnection”的存储区提供程序实例调用“ge ...
- Ubuntu PPTP 服务器安装
安装相应的包 sudo apt-get install pptpd 修改配置文件pptpd.conf sudo vim /etc/pptpd.conf 设置对应的VPN网络,localip是服务器的, ...
- [原创]解决net-speeder与pptp不兼容的问题
解决net-speeder与pptp不兼容的问题 终于受不了很多玩意儿都被墙了,每次FQ费半天劲,浪费时间,于是在搬瓦工搞了个VPS,年付19美元,挺便宜的,赶紧的VPN搭起,优化走起. VPN搭建很 ...
- centos 安装pptp
1. 安装依赖 ppp yum -y install ppp 2. 编译安装pptpd wget http://jaist.dl.sourceforge.net/project/poptop/pptp ...
- 手动建库时一个小错误:ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
此前执行了CREATE SPFILE FROM MEMORY. 重新使用SPFILE启动时,出错如下: SYS@ bys3>startup ORA-32004: obsolete or dep ...
随机推荐
- Servlet用户登录功能实现
需求:完成用户登录页面校验 第一步:创建一个用户登录的html页面 <!DOCTYPE html> <html> <head> <meta charset=& ...
- HttpUtils 封装类
作为一个web开发人员,对Http 请求,并不陌生.有时候,我们请求的时候,需要使用代码实现,一般情况,我们使用Apache Jakarta Common 下的子项目.的HttpClient. 可是我 ...
- unity Socket TCP连接案例(一)
非常清晰的demo 服务端 using System; using System.Collections; using System.Collections.Generic; using System ...
- C 标准库 - string.h之strrchr使用
strrchr Locate last occurrence of character in string, Returns a pointer to the last occurrence of c ...
- C 标准库 - string.h之strncpy使用
strncpy 把 src 所指向的字符串复制到 dest,最多复制 n 个字符.当 src 的长度小于 n 时,dest 的剩余部分将用空字节填充. char *strncpy(char *dest ...
- MySql的用户权限
用户管理 MySQL数据库中的表与其他任何关系表没有区别,都可以通过典型的SQL命令修改其结构和数据.可以使用GRANT和REVOKE命令.通过这些命令,可以创建和禁用用户,可以在线授予和撤回用户访问 ...
- 用C语言实现Ping程序功能---转
ping命令是用来查看网络上另一个主机系统的网络连接是否正常的一个工具.ping命令的工作原理是:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者,这 ...
- MySQL 8.0 压缩包版安装方法
转自:https://blog.csdn.net/yangs_2012/article/details/80412016 注意: 操作系统:Windows 10 专业版(64位) MySQL版本:my ...
- 三:Mybatis知识整理(3)
一:mybatis中模糊查询的方法: 1.直接传参法:在java传参时进行拼接 -- %keyword% 2.mysql内置函数:concart('%',#{keyword},'%') -- 拼接sq ...
- 版本控制器之SVN
1.开发中的实际问题 1.1 小明负责的模块就要完成了,就在即将Release之前的一瞬间,电脑突然蓝屏,硬盘光荣牺牲!几个月来的努力付之东流——需求之一:备份! 1.2 这个项目中需要一个很复杂的功 ...