123/udp - Pentesting NTP

Reading time: 7 minutes

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking'i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Temel Bilgiler

Ağ Zaman Protokolü (NTP), değişken gecikme sürelerine sahip ağlar üzerinden bilgisayarların ve ağ cihazlarının saatlerini doğru bir şekilde senkronize etmelerini sağlar. IT operasyonları, güvenlik ve günlükleme için kesin zaman tutmanın sürdürülmesi açısından hayati öneme sahiptir. Zaman, neredeyse her kimlik doğrulama, kripto-protokol ve adli süreçte kullanıldığından, NTP'yi etkileyebilen bir saldırgan genellikle güvenlik kontrollerini atlayabilir veya saldırıları araştırmayı zorlaştırabilir.

Özet & Güvenlik İpuçları

  • Amaç: Cihaz saatlerini ağlar üzerinden senkronize eder.
  • Önemi: Güvenlik, günlükleme, kripto-protokoller ve dağıtık sistemler için kritik öneme sahiptir.
  • Güvenlik Önlemleri:
  • Kimlik doğrulama ile güvenilir NTP veya NTS (Ağ Zaman Güvenliği) kaynakları kullanın.
  • Daemon'ı sorgulama/emir verme yetkisini kısıtlayın (restrict default noquery, kod vb.).
  • Eski Mod-6/7 kontrol sorgularını devre dışı bırakın (monlist, ntpdc) veya oran sınırlaması uygulayın.
  • Manipülasyon için senkronizasyon kayması/sıçrama saniyesi durumunu izleyin.
  • Daemon'ı güncel tutun (aşağıdaki son CVE'lere bakın).

Varsayılan portlar

123/udp   NTP            (data + legacy control)
4460/tcp  NTS-KE (RFC 8915) – TLS key-establishment for NTP
PORT    STATE SERVICE REASON
123/udp open  ntp     udp-response

Enumeration

Klasik ntpd / ntpq / ntpdc

bash
# Information & variables
ntpq -c rv <IP>
ntpq -c readvar <IP>
ntpq -c peers <IP>
ntpq -c associations <IP>

# Legacy mode-7 (often disabled >=4.2.8p9)
ntpdc -c monlist <IP>
ntpdc -c listpeers <IP>
ntpdc -c sysinfo  <IP>

chrony / chronyc (çoğu modern Linux dağıtımında)

cmdallow etkinleştirildiğinde, uzaktan IP'lerden yalnızca birkaç izleme komutu kabul edilir:

bash
chronyc -a -n tracking   -h <IP>
chronyc -a -n sources -v -h <IP>
chronyc -a -n sourcestats -h <IP>

M/S bayraklarının ve diğer alanların (stratum, reach, jitter, vb.) anlamı için chronyc man sayfasına bakın.

Nmap

bash
# Safe discovery & vuln detection
nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 <IP>

# Explicit monlist check
nmap -sU -p123 --script ntp-monlist <IP>

Kütle/İnternet taraması

bash
# Check if MONLIST is enabled (zgrab2 module)
zgrab2 ntp --monlist --timeout 3 --output-file monlist.json -f "zmap_results.csv"

Yapılandırma dosyalarını inceleyin

  • /etc/ntp.conf (ntpd)
  • /etc/chrony/chrony.conf (chrony)
  • /etc/systemd/timesyncd.conf (timesyncd – yalnızca istemci)

Özellikle restrict satırlarına, kod (Kiss-o'-Death) ayarlarına, disable monitor/includefile /etc/ntp/crypto ve NTS'nin etkin olup olmadığına (nts enable) dikkat edin.


Son Güvenlik Açıkları (2023-2025)

YılCVEBileşenEtki
2023CVE-2023-26551→26555ntp 4.2.8p15 (libntp mstolfp, praecis_parse)ntpq yanıtları aracılığıyla erişilebilen çoklu sınır dışı yazmaları. 4.2.8p16'da yamanmış, güncelleme veya geri portlama düzeltmeleri yapılmalıdır.
2023CVE-2023-33192ntpd-rs (Rust uygulaması)Bozuk NTS çerezi, v0.3.3'ten önce uzaktan DoS'ye neden olur – NTS devre dışı olsa bile 123 numaralı portu etkiler.
2024dağıtım güncellemelerichrony 4.4 / 4.5 – birkaç güvenlik güçlendirmesi ve NTS-KE düzeltmesi (örn. SUSE-RU-2024:2022)
2024Kayıt DDoSCloudflare, 5.6 Tbps UDP yansıma saldırısı bildirmektedir (NTP kullanılan protokoller arasında). İnternete açık sunucularda monitor ve monlist'i devre dışı bırakın.

Sömürü kitleri: 2023 ntpq OOB-yazma serisi için kanıt konsepti yükleri GitHub'da mevcuttur (Meinberg yazısına bakın) ve sistem yöneticilerinin istemci tarafında oltalama için silahlandırılabilir.


İleri Düzey Saldırılar

1. NTP Amplifikasyonu / Yansıma

Eski Mod-7 monlist sorgusu, 600 host adresine kadar döner ve hala binlerce İnternet sunucusunda mevcuttur. Yanıt (428-468 bayt/girdi) 8 baytlık isteğin ~ 200× daha büyük olduğu için, bir saldırgan üç haneli amplifikasyon faktörlerine ulaşabilir. Önlemler:

  • ntp 4.2.8p15+ sürümüne yükseltin ve ekleyin disable monitor.
  • UDP/123'ü kenarda hız sınırlaması yapın veya DDoS cihazlarında sessions-required'ı etkinleştirin.
  • Kaynak sahteciliğini engellemek için BCP 38 çıkış filtrelemesini etkinleştirin.

Adım adım bir inceleme için Cloudflare’ın öğrenim merkezi makalesine bakın.

2. Zaman Kaydırma / Gecikme saldırıları (Khronos / Chronos araştırması)

Kimlik doğrulama ile bile, bir yol üzerindeki saldırgan, paketleri düşürerek/geciktirerek istemci saatini sessizce kaydırabilir. IETF Khronos (eski adıyla Chronos) taslağı, arka planda çeşitli sunucuları sorgulamayı ve sonucu kontrol ederek > 𝚡 ms kaymayı tespit etmeyi önermektedir. Modern chrony (4.4+) zaten benzer bir kontrol filtresi (maxdistance / maxjitter) uygulamaktadır.

3. NTS kötüye kullanımı & 4460/tcp maruziyeti

NTS, ağır kriptografiyi ayrı bir TLS 1.3 kanalı üzerinde 4460/tcp'ye taşır (ntske/1). Kötü uygulamalar (bkz. CVE-2023-33192) çerezleri işlerken çökebilir veya zayıf şifrelemelere izin verebilir. Pentester'lar:

bash
# TLS reconnaissance
nmap -sV -p 4460 --script ssl-enum-ciphers,ssl-cert <IP>

# Grab banner & ALPN
openssl s_client -connect <IP>:4460 -alpn ntske/1 -tls1_3 -ign_eof

Kendinden imzalı veya süresi dolmuş sertifikaları ve zayıf şifreleme takımları (non-AEAD) arayın. Referans: RFC 8915 §4.


Güçlendirme / En İyi Güncel Uygulama (BCP-233 / RFC 8633)

Operatörler ŞUNLARı yapmalıdır:

  1. Tek bir kaynağın zehirlenmesini önlemek için ≥ 4 bağımsız, çeşitli zaman kaynakları (kamusal havuzlar, GPS, PTP-köprüleri) kullanın.
  2. Kötüye kullanan istemcilerin tam yanıtlar yerine Kiss-o'-Death hız sınırlama paketleri alması için kod ve limited/nomodify kısıtlamalarını etkinleştirin.
  3. Panik olayları veya 1000 s'den büyük adım ayarlamaları için daemon günlüklerini izleyin. (RFC 8633 §5.3'e göre saldırı imzaları.)
  4. Leap-second kesintilerini önlemek için leap-smear'ı düşünün, ancak tüm aşağı akış istemcilerinin aynı smear penceresini kullandığından emin olun.
  5. Leap-second bayraklarının kaçırılmaması için anketi ≤24 saat tutun.

Kapsamlı bir kontrol listesi için RFC 8633'e bakın.


Shodan / Censys Dorks

port:123 "ntpd"          # Version banner
udp port:123 monlist:true # Censys tag for vulnerable servers
port:4460 "ntske"         # NTS-KE

Kullanışlı Araçlar

AraçAmaçÖrnek
ntpwnmonlist & peers sorgularını yaymak için script-kiddie sarmalayıcıpython ntpwn.py --monlist targets.txt
zgrab2 ntpToplu tarama / monlist bayrağı içeren JSON çıktısıYukarıdaki komuta bakın
chronyd ile allowPentest laboratuvarında sahte NTP sunucusu çalıştırmachronyd -q 'server 127.127.1.0 iburst'
BetterCapWi-Fi'de zaman kaydırma MITM için NTP paketleri enjekte etmeset arp.spoof.targets <victim>; set ntp.time.delta 30s; arp.spoof on

HackTricks Otomatik Komutlar

Protocol_Name: NTP
Port_Number: 123
Protocol_Description: Network Time Protocol

Entry_1:
Name: Notes
Description: Notes for NTP
Note: |
The Network Time Protocol (NTP) ensures computers and network devices across variable-latency networks sync their clocks accurately. It's vital for maintaining precise timekeeping in IT operations, security, and logging. NTP's accuracy is essential, but it also poses security risks if not properly managed.

https://book.hacktricks.wiki/en/network-services-pentesting/pentesting-ntp.html

Entry_2:
Name: Nmap
Description: Enumerate NTP
Command: nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 {IP}

Referanslar

  • RFC 8915 – Ağ Zaman Güvenliği için Ağ Zaman Protokolü (port 4460)
  • RFC 8633 – Ağ Zaman Protokolü BCP
  • Cloudflare DDoS raporu 2024 Q4 (5.6 Tbps)
  • Cloudflare NTP Amplifikasyon Saldırısı makalesi
  • NTP 4.2.8p15 CVE serisi 2023-04
  • NVD girişleri CVE-2023-26551–55, CVE-2023-33192
  • SUSE chrony güvenlik güncellemesi 2024 (chrony 4.5)
  • Khronos/Chronos taslağı (zaman kaydırma azaltma)
  • chronyc kılavuzu/uzaktan izleme için örnekler
  • zgrab2 ntp modülü belgeleri

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking'i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin