PPTP
PPTP (англ. Point-to-Point Tunneling Protocol) — туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети. PPTP помещает (инкапсулирует) кадры PPP в IP-пакеты для передачи по глобальной IP-сети, например Интернет. PPTP может также использоваться для организации туннеля между двумя локальными сетями. РРТР использует дополнительное TCP-соединение для обслуживания туннеля.
Содержание |
[править] Спецификация
Спецификация протокола была опубликована как «информационная» RFC 2637 в 1999 году. Она не была ратифицирована IETF. Протокол считается менее безопасным, чем IPSec. PPTP работает, устанавливая обычную PPP сессию с противоположной стороной с помощью протокола Generic Routing Encapsulation. Второе соединение на TCP-порте 1723 используется для инициации и управления GRE-соединением. PPTP сложно перенаправлять за сетевой экран, так как он требует одновременного установления двух сетевых сессий.
PPTP-трафик может быть зашифрован с помощью MPPE. Для аутентификации клиентов могут использоваться различные механизмы, наиболее безопасные из них — MS-CHAPv2 и EAP-TLS.
[править] Реализация PPTP
Cisco первой реализовала PPTP и позже лицензировала эту технологию корпорации Microsoft.
PPTP удалось добиться популярности благодаря тому, что это первый протокол туннелирования, который был поддержан корпорацией Microsoft. Все версии Microsoft Windows, начиная с Windows 95 OSR2, включают в свой состав PPTP-клиент, однако существует ограничение на два одновременных исходящих соединения. А сервис удалённого доступа для Microsoft Windows включает в себя PPTP сервер.
Некоторое время в Linux-дистрибутивах отсутствовала полная поддержка PPTP из-за опасения патентных претензий по поводу протокола MPPE. Впервые полная поддержка MPPE появилась в Linux 2.6.13 (2005 год). Официально поддержка PPTP была начата с версии ядра Linux 2.6.14. Тем не менее, сам факт применения MPPE в PPTP фактически не обеспечивает безопасность протокола PPTP.
Операционная система FreeBSD поддерживает PPTP протокол, используя в качестве сервера PPTP порт mpd (/usr/ports/net/mpd), используя подсистему netgraph; можно также использовать программу PoPToP (/usr/ports/net/poptop). В качестве клиента PPTP в системе FreeBSD может выступать либо порт pptpclient (/usr/ports/net/pptpclient), либо порт mpd, работающий в режиме клиента.
Mac OS X поставляется со встроенным PPTP клиентом. Cisco и Efficient Networks продают реализации PPTP клиента для более старых версий Mac OS. КПК Palm, имеющие поддержку Wi-Fi, поставляются с PPTP клиентом Mergic.
Microsoft Windows Mobile 2003 и более новые также поддерживают PPTP.
[править] Безопасность протокола PPTP
PPTP был объектом множества анализов безопасности, в нём были обнаружены различные серьёзные уязвимости. Известные относятся к используемым протоколам аутентификации PPP, устройству протокола MPPE, и интеграции между аутентификациями MPPE и PPP для установки сессионного ключа. Краткий обзор данных уязвимостей:
- MSCHAP-v1 совершенно ненадёжен. Существуют утилиты для лёгкого извлечения хешей паролей из перехваченного обмена MSCHAP-v1.[1]
- MSCHAP-v2 уязвим к словарной атаке на перехваченные challenge response пакеты. Существуют программы, выполняющие данный процесс.[2]
- При использовании MSCHAP-v1, MPPE использует одинаковый RC4 сессионный ключ для шифрования информационного потока в обоих направлениях. Поэтому стандартным методом является выполнение XOR’а потоков из разных направлений вместе, благодаря чему криптоаналитик может узнать ключ.[3]
- MPPE использует RC4 поток для шифрования. Не существует метода для аутентификации цифробуквенного потока и поэтому данный поток уязвим к атаке, делающей подмену битов. Злоумышленник легко может изменить поток при передаче и заменить некоторые биты, чтобы изменить исходящий поток без опасности своего обнаружения. Данная подмена битов может быть обнаружена с помощью протоколов, считающих контрольные суммы.[1]
[править] См. также
[править] Примечания
[править] Ссылки
- RFC 2637
- FAQ по PPTP от Microsoft (англ.)
- ЧаВо по дырам в безопасности в реализации Майкрософт, Брюс Шнайер, 1998
- Poptop, сервер PPTP для Linux
- PPTP клиент, Linux, FreeBSD и NetBSD клиент
- pptpproxy — Linux pptp-прокси
- Настройка PPTP VPN в Windows (виста) (рус.)
- Почему не следует внедрять PPTP (англ.)
| Основные протоколы TCP/IP по уровням модели OSI | |||||||
|---|---|---|---|---|---|---|---|
| Прикладной |
BGP • HTTP • HTTPS • DHCP • IRC • SNMP • DNS • DNSSEC • NNTP • XMPP • SIP • BitTorrent • IPP • NTP • SNTP
|
||||||
| Представления | XDR • SSL | ||||||
| Сеансовый | ADSP • H.245 • iSNS • NetBIOS • PAP • RPC • L2TP • PPTP • RTCP • SMPP • SCP • SSH • ZIP • SDP | ||||||
| Транспортный | TCP • UDP • SCTP • DCCP • RUDP • RTP | ||||||
| Сетевой | IPv4 • IPv6 • IPsec • ICMP • IGMP • ARP • RARP • RIP2 • OSPF | ||||||
| Канальный | Ethernet • PPPoE • PPP • L2F • 802.11 Wi-Fi • 802.16 WiMax • Token ring • ARCNET • FDDI • HDLC • SLIP • ATM • DTM • X.25 • Frame relay • SMDS • STP | ||||||
| Физический | Ethernet • RS-232 • EIA-422 • RS-449 • RS-485 | ||||||
| Список портов TCP и UDP | |||||||
|
|
|
|---|---|
| Программное обеспечение | Check Point VPN-1 · Cisco Systems VPN Client · CloudVPN · CryptoLink · Gbridge · Hamachi · Microsoft Forefront Unified Access Gateway · n2n · Openswan · OpenVPN · strongSwan · Vyatta · Social VPN · Tinc · Wippien · Jabpunch · Chaply · pLan OpenVPN Edition (ZeroGC Gaming Client) |
| Механизмы | SSTP · IPsec · L2TP · L2TPv3 · PPTP · Split tunneling |
| Управляемые поставщиком | Layer 2 Forwarding Protocol · DirectAccess |
Для улучшения этой статьи желательно?:
|
| Это заготовка статьи о компьютерных сетях. Вы можете помочь проекту, исправив и дополнив её. |