The Point-to-Point Tunneling Protocol (PPTP) is an obsolete method for implementing
virtual private networks. PPTP has many well known security issues.
PPTP uses a
TCP
TCP may refer to:
Science and technology
* Transformer coupled plasma
* Tool Center Point, see Robot end effector
Computing
* Transmission Control Protocol, a fundamental Internet standard
* Telephony control protocol, a Bluetooth communication s ...
control channel and a
Generic Routing Encapsulation
Generic Routing Encapsulation (GRE) is a tunneling protocol developed by Cisco Systems that can encapsulate a wide variety of network layer protocols inside virtual point-to-point links or point-to-multipoint links over an Internet Protocol net ...
tunnel to encapsulate
PPP packets. Many modern VPNs use various forms of
UDP for this same functionality.
The PPTP specification does not describe
encryption
In cryptography, encryption is the process of encoding information. This process converts the original representation of the information, known as plaintext, into an alternative form known as ciphertext. Ideally, only authorized parties can dec ...
or
authentication
Authentication (from ''authentikos'', "real, genuine", from αὐθέντης ''authentes'', "author") is the act of proving an assertion, such as the identity of a computer system user. In contrast with identification, the act of indicat ...
features and relies on the Point-to-Point Protocol being tunneled to implement any and all security functionalities.
The PPTP implementation that ships with the
Microsoft Windows product families implements various levels of authentication and encryption natively as standard features of the Windows PPTP stack. The intended use of this protocol is to provide security levels and remote access levels comparable with typical
VPN products.
History
A specification for PPTP was published in July 1999 as RFC 2637 and was developed by a vendor consortium formed by
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
,
Ascend Communications (today part of
Nokia
Nokia Corporation (natively Nokia Oyj, referred to as Nokia) is a Finnish multinational telecommunications, information technology, and consumer electronics corporation, established in 1865. Nokia's main headquarters are in Espoo, Finlan ...
),
3Com
3Com Corporation was an American digital electronics manufacturer best known for its computer network products. The company was co-founded in 1979 by Robert Metcalfe, Howard Charney and others. Bill Krause joined as President in 1981. Metcalfe e ...
, and others.
PPTP has not been proposed nor ratified as a standard by the
Internet Engineering Task Force
The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and ...
.
Description
A PPTP tunnel is instantiated by communication to the peer on
TCP
TCP may refer to:
Science and technology
* Transformer coupled plasma
* Tool Center Point, see Robot end effector
Computing
* Transmission Control Protocol, a fundamental Internet standard
* Telephony control protocol, a Bluetooth communication s ...
port 1723. This TCP connection is then used to initiate and manage a
GRE tunnel to the same peer. The PPTP GRE packet format is non standard, including a new ''acknowledgement number'' field replacing the typical ''routing'' field in the GRE header. However, as in a normal GRE connection, those modified GRE packets are directly encapsulated into IP packets, and seen as IP protocol number 47. The GRE tunnel is used to carry encapsulated PPP packets, allowing the tunnelling of any protocols that can be carried within PPP, including
IP,
NetBEUI and
IPX.
In the Microsoft implementation, the tunneled PPP traffic can be authenticated with
PAP,
CHAP
Chap may refer to:
*Chap (instrument), a Southeast Asian percussion instrument
* Chap Petersen (born 1968), American politician and Virginia state senator
*Chap, Virginia, United States, an unincorporated community
*'' The Chap'', a British magazi ...
,
MS-CHAP v1/v2 .
Security
PPTP has been the subject of many security analyses and serious security vulnerabilities have been found in the protocol. The known vulnerabilities relate to the underlying PPP authentication protocols used, the design of the
MPPE protocol as well as the integration between MPPE and PPP authentication for session key establishment.
A summary of these vulnerabilities is below:
*
MS-CHAP-v1 is fundamentally insecure. Tools exist to trivially extract the NT Password hashes from a captured MSCHAP-v1 exchange.
[Bruce Schneier, ''Cryptanalysis of Microsoft's Point to Point Tunneling Protocol (PPTP)''](_blank)
* When using MS-CHAP-v1,
MPPE uses the same RC4 session key for encryption in both directions of the communication flow. This can be cryptanalysed with standard methods by XORing the streams from each direction together.
* MS-CHAP-v2 is vulnerable to dictionary attacks on the captured challenge response packets. Tools exist to perform this process rapidly.
* In 2012, it was demonstrated that the complexity of a brute-force attack on a MS-CHAP-v2 key is equivalent to a brute-force attack on a single
DES key. An online service was also demonstrated which is capable of decrypting a MS-CHAP-v2 MD4 passphrase in 23 hours.
* MPPE uses the
RC4 stream cipher for encryption. There is no method for authentication of the ciphertext stream and therefore the ciphertext is vulnerable to a bit-flipping attack. An attacker could modify the stream in transit and adjust single bits to change the output stream without possibility of detection. These bit flips may be detected by the protocols themselves through checksums or other means.
[
]EAP-TLS
Extensible Authentication Protocol (EAP) is an authentication framework frequently used in network and internet connections. It is defined in , which made obsolete, and is updated by .
EAP is an authentication framework for providing the transport ...
is seen as the superior authentication choice for PPTP; however, it requires implementation of a public-key infrastructure for both client and server certificates. As such, it may not be a viable authentication option for some remote access installations. Most networks that use PPTP have to apply additional security measures or be deemed completely inappropriate for the modern internet environment. At the same time, doing so means negating the aforementioned benefits of the protocol to some point.
See also
*IPsec
In computing, Internet Protocol Security (IPsec) is a secure network protocol suite that authenticates and encrypts packets of data to provide secure encrypted communication between two computers over an Internet Protocol network. It is used in ...
* Layer 2 Tunneling Protocol (L2TP)
* Secure Socket Tunneling Protocol (SSTP)
*OpenVPN
OpenVPN is a virtual private network (VPN) system that implements techniques to create secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It implements both client-server architect ...
, open source software application that implements VPN
* WireGuard, a simple and effective VPN implementation
References
External links
Windows NT: Understanding PPTP
from Microsoft
Bruce Schneier
Bruce Schneier (; born January 15, 1963) is an American cryptographer, computer security professional, privacy specialist, and writer. Schneier is a Lecturer in Public Policy at the Harvard Kennedy School and a Fellow at the Berkman Klein Ce ...
, 1998
Cryptanalysis of Microsoft's PPTP Authentication Extensions
(MS-CHAPv2), Bruce Schneier
Bruce Schneier (; born January 15, 1963) is an American cryptographer, computer security professional, privacy specialist, and writer. Schneier is a Lecturer in Public Policy at the Harvard Kennedy School and a Fellow at the Berkman Klein Ce ...
, 1999
{{VPN
Broken cryptography algorithms
Transport layer protocols
Tunneling protocols