This protocol allows you to implement a secure point-to-point connection by creating a tunnel in an insecure network.
The work of PPTP is to implement PPP frames in IP packets for transferring them to any IP network, including the Internet. In addition, this technology can be used to create a tunnel between local networks.
A TCP connection is used to service the created PPTP tunnel.
The protocol specification was published in 1999 in RFC2637, but the IETF community has not ratified it.
Less secure than IPSec, PPTP establishes a PPP session using the GRE protocol. The 1723 TCP port is used to control and initiate the GRE connection. Redirecting PPTP to the firewall is difficult because the protocol requires two sessions to be established simultaneously.
Traffic can be encrypted using MPPE, and various mechanisms are used for authentication, the most secure of which are EAP-TLS and MS-CHAPv2.
The technology was first implemented by Cisco, subsequently selling a license to use Microsoft. The popularity of PPTP came because it was the first protocol that Microsoft used for tunneling. Starting with Windows95 OSR2, the PPTP client is included in all versions of Microsoft OS, however, it has a limit on two outgoing connections running simultaneously.
Due to patent difficulties in Linux distributions, for some time there was no full support for PPTP. It first appeared in 2005 in the Linux kernel version 2.6.13, and officially – since version 2.6.13. In terms of security, the use of MPEE does not provide sufficient PPTP security.
FreeBSD also supports PPTP, using mpd and the netgraph subsystem as a server, as well as, alternatively, the PoPToP program. As a client, pptpclient can act as either a mpd client. All of these programs are available through the port system.
MacOS X has a built-in PPTP client, and older versions of MacOS have implementations sold by Cisco. Palm Wi-Fi enabled PDAs come with a Mergic client. PPTP support is also implemented in Windows Mobile and Apple iOS (iPhone, iPad).
As a result of numerous analytical studies in the implementation of PPTP, a number of serious vulnerabilities were discovered. These relate to the MPPE protocol device, the authentication protocols used by PPP, and the integration of MPPE and PPP during the installation of the session key. Here is a short list of vulnerabilities:
For MPPE encryption, the RC4 stream is used. Since there is no implementation of authentication of a stream of numbers and letters, this stream is vulnerable to bit substitution. An attacker can replace a number of bits to change the outgoing stream without the danger of detecting itself. You can only see such a spoofing in protocols that use checksum calculation.
MSCHAP-v1 is absolutely unreliable (a number of utilities allows extracting password hashes from the exchange MSCHAP-v1).
MSCHAP-v2 is considered vulnerable to a dictionary attack on intercepted challenge response packets (there are utilities that perform similar attacks).
Using MSCHAP-v1, MPPE uses one RC4 session key for encryption in both directions. Because of this, key extraction can be done using fairly simple methods.
Our VPN service fully supports PPTP technology. To connect you will need a username, password and server address – you will get all this data by entering your code on the VPN page of the section and selecting the appropriate items (PPTP will be written in brackets). You can buy the code itself, or get it once a day for free.
You can also read about other VPN technologies: L2TP and OpenVPN. They, as well as PPTP, are supported by our service.