PPTP — PPP sessiyalarini IP tarmog‘i orqali tunnelda tashish uchun yaratilgan eski VPN protokoli. Uning to‘liq nomi Point-to-Point Tunneling Protocol hisoblanadi.
PPTP 1990-yillarda masofaviy foydalanuvchilarni korporativ tarmoqqa ulash uchun keng tarqalgan. U Windows va ko‘plab routerlarda o‘rnatilgan clientga ega bo‘lgani sababli sozlash oson bo‘lgan.
PPTPning odatiy autentifikatsiya va shifrlash usullari zamonaviy xavfsizlik talablariga javob bermaydi. Yangi tizimlarda undan foydalanilmaydi.
PPTP tarkibi
PPTP ikki asosiy aloqa qismidan foydalanadi.
Control connection
Control channel TCP 1723-port orqali ishlaydi.
U quyidagilarni boshqaradi:
Data tunnel
PPP frame’lari o‘zgartirilgan GRE paketlari ichida tashiladi.
PPTP data uchun oddiy GREdan farqli maxsus format ishlatadi. IP headerdagi protocol number baribir 47.
Firewall faqat TCP 1723ga ruxsat bersa yetarli emas. GRE ham o‘tishi kerak.
PPPning roli
PPTP PPP sessiyasini tunnel qiladi.
PPP quyidagilarni beradi:
PPTP ko‘pincha PPP, MS-CHAPv2, MPPE va GRE tunnel kombinatsiyasi bilan ishlatilgan.
Control connection xabarlari
PPTP control protokolida quyidagi xabarlar uchraydi:
- Start-Control-Connection-Request;
- Start-Control-Connection-Reply;
- Stop-Control-Connection-Request;
- Echo-Request;
- Echo-Reply;
- Outgoing-Call-Request;
- Outgoing-Call-Reply;
- Call-Clear-Request;
- Call-Disconnect-Notify.
Control connection tunnel va call holatini saqlaydi.
Call ID
GRE data packetlarida Call ID mavjud. U bir tunnel endpointdagi turli PPP sessionlarni ajratishga yordam beradi.
Har yo‘nalishda Call ID qiymati farq qilishi mumkin.
PPTP GRE headerida sequence va acknowledgement qiymatlari ham bo‘lishi mumkin.
MS-CHAPv2
PPTP remote accessda ko‘pincha MS-CHAPv2 autentifikatsiyasidan foydalangan.
MS-CHAPv2 challenge–response modeliga ega. Parol bevosita yuborilmaydi.
Biroq handshake yozib olinsa, parolga bog‘liq qiymatni offline tekshirish mumkin. Zaif yoki o‘rtacha parollar amaliy hujumga chidamsiz.
MS-CHAPv2ning kriptografik dizayni zamonaviy himoya uchun yetarli emas.
MPPE
Microsoft Point-to-Point Encryption PPP payloadini shifrlash uchun ishlatiladi.
MPPE RC4 oqim shifriga tayanadi. Kalitlar MS-CHAP autentifikatsiyasidan hosil qilinishi mumkin.
Muammolar:
- eski shifr;
- autentifikatsiya kuchiga bog‘liqlik;
- zamonaviy AEAD yo‘qligi;
- forward secrecy yo‘qligi;
- integrity himoyasining cheklanganligi.
MS-CHAPv2 buzilsa, MPPE trafik himoyasi ham xavf ostida qoladi.
NAT muammosi
PPTP control channel TCP 1723da, data esa GREda ishlaydi.
NAT qurilma TCP sessiyani, GRE Call ID va ichki client manzilini birgalikda kuzatishi kerak.
Bir NAT ortida bir nechta PPTP client ishlaganda, eski routerlar Call ID mappingni noto‘g‘ri boshqarishi mumkin.
Shu sababli routerlarda PPTP ALG funksiyasi mavjud bo‘lgan. ALGning o‘zi ham xato va xavfsizlik muammolariga sabab bo‘lishi mumkin.
PPTP ulanish jarayoni
Oddiy jarayon:
- Client serverning TCP 1723-portiga ulanadi.
- Control connection capabilitylari kelishiladi.
- Outgoing call session yaratiladi.
- PPP LCP boshlanadi.
- Foydalanuvchi autentifikatsiyadan o‘tadi.
- IPCP orqali IP manzil olinadi.
- PPP frame’lari GRE orqali uzatiladi.
Control channel ishlashi data tunnel ishlashini kafolatlamaydi. GRE bloklangan bo‘lsa, login bosqichida yoki undan keyin ulanish to‘xtaydi.
Nega xavfsiz emas?
PPTPning muammolari:
- MS-CHAPv2 zaifligi;
- RC4ga tayangan MPPE;
- forward secrecy yo‘qligi;
- zamonaviy AEAD yo‘qligi;
- server identifikatsiyasi cheklangan;
- offline password attack;
- GRE va NAT murakkabligi;
- eski implementatsiya xatolari.
Shifrlash yoqilgan bo‘lsa ham, protokol zamonaviy xavfsiz VPN darajasiga chiqmaydi.
Tarixiy afzalliklari
PPTP o‘z davrida quyidagi afzalliklarga ega bo‘lgan:
- ko‘plab Windows versiyalarida built-in client;
- foydalanuvchi nomi va parol bilan sodda ulanish;
- routerlarda keng qo‘llov;
- alohida sertifikat infratuzilmasi talab qilmaslik;
- nisbatan kichik overhead;
- tez sozlash.
Aynan shu qulaylik uni uzoq vaqt mashhur qilgan.
Zamonaviy muqobillar
PPTP o‘rniga quyidagilar ishlatiladi:
- IKEv2/IPsec;
- WireGuard;
- OpenVPN;
- TLS asosidagi enterprise VPN;
- SSH tunnel faqat ma’lum xizmat uchun;
- ZTNA yechimlari.
Tanlov operatsion tizim, roaming, certificate, performance, user authentication, firewall va audit talabiga bog‘liq.
Legacy tizimni saqlash
Ba’zi eski sanoat yoki maxsus qurilma faqat PPTPni qo‘llashi mumkin.
Vaqtincha ishlatishda:
- internetga to‘g‘ridan-to‘g‘ri ochmaslik;
- alohida VLAN;
- IP allowlist;
- kuchli va noyob parol;
- faqat zarur subnet;
- jump host;
- monitoring;
- migratsiya rejasi
qo‘llanadi.
PPTPni ichki tarmoqda ishlatish ham credential va trafik xavfini yo‘q qilmaydi.
MTU
PPTP GRE va PPP headerlari qo‘shimcha overhead yaratadi.
MTU noto‘g‘ri bo‘lsa:
- katta paketlar yo‘qolishi;
- file transfer qotishi;
- sayt qisman ochilishi;
- fragmentatsiya
mumkin.
PPP MRU va TCP MSS moslashtirilishi mumkin.
Diagnostika
PPTP ishlamasa:
- TCP 1723;
- IP protocol 47;
- PPTP ALG;
- NAT;
- control connection;
- Call ID;
- PPP LCP;
- MS-CHAPv2;
- MPPE;
- IPCP;
- IP pool;
- routing;
- DNS;
- MTU;
- server log
tekshiriladi.
TCP 1723 ochiq bo‘lib, ulanish tugamasa, GRE bloklangan bo‘lishi ehtimoli katta.
PPTPni o‘chirish
Yangi tizimlarda:
- PPTP server service o‘chiriladi;
- TCP 1723 yopiladi;
- GRE policy cheklanadi;
- eski accountlar olib tashlanadi;
- client konfiguratsiyasi yangilanadi;
- muqobil VPNga migratsiya qilinadi;
- loglarda eski ulanishlar tekshiriladi.
PPTP client mavjudligi undan foydalanish xavfsiz degani emas.
PPTP tarixiy protokol sifatida tarmoq xavfsizligi rivojlanishini tushunishda muhimdir.
Bog‘liq tushunchalar
VPN, PPP, GRE, TCP 1723, MS-CHAPv2, MPPE, Remote access, NAT, PPTP ALG, IPsec, WireGuard