mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/network-services-pentesting/pentesting-ntp.md'] to hi
This commit is contained in:
parent
876fb20f3a
commit
5b67d1a20c
@ -4,59 +4,154 @@
|
||||
|
||||
## Basic Information
|
||||
|
||||
**Network Time Protocol (NTP)** यह सुनिश्चित करता है कि कंप्यूटर और नेटवर्क उपकरण विभिन्न-लेटेंसी नेटवर्क पर अपने घड़ियों को सटीकता से समन्वयित करें। यह आईटी संचालन, सुरक्षा, और लॉगिंग में सटीक समयkeeping बनाए रखने के लिए महत्वपूर्ण है। NTP की सटीकता आवश्यक है, लेकिन यदि इसे सही तरीके से प्रबंधित नहीं किया गया तो यह सुरक्षा जोखिम भी पैदा कर सकता है।
|
||||
**नेटवर्क टाइम प्रोटोकॉल (NTP)** यह सुनिश्चित करता है कि कंप्यूटर और नेटवर्क उपकरण विभिन्न-लेटेंसी नेटवर्क में अपने घड़ियों को सटीक रूप से समन्वयित करें। यह IT संचालन, सुरक्षा और लॉगिंग में सटीक समयkeeping बनाए रखने के लिए महत्वपूर्ण है। चूंकि समय का उपयोग लगभग हर प्रमाणीकरण, क्रिप्टो-प्रोटोकॉल और फोरेंसिक प्रक्रिया में किया जाता है, **एक हमलावर जो NTP को प्रभावित कर सकता है, अक्सर सुरक्षा नियंत्रणों को बायपास कर सकता है या हमलों की जांच करना कठिन बना सकता है।**
|
||||
|
||||
### Summary & Security Tips:
|
||||
### Summary & Security Tips
|
||||
|
||||
- **Purpose**: नेटवर्क पर उपकरणों की घड़ियों को समन्वयित करता है।
|
||||
- **Importance**: सुरक्षा, लॉगिंग, और संचालन के लिए महत्वपूर्ण।
|
||||
- **Security Measures**:
|
||||
- प्रमाणीकरण के साथ विश्वसनीय NTP स्रोतों का उपयोग करें।
|
||||
- NTP सर्वर नेटवर्क पहुंच को सीमित करें।
|
||||
- छेड़छाड़ के संकेतों के लिए समन्वय की निगरानी करें।
|
||||
- **उद्देश्य**: नेटवर्क के माध्यम से उपकरणों की घड़ियों को समन्वयित करना।
|
||||
- **महत्व**: सुरक्षा, लॉगिंग, क्रिप्टो-प्रोटोकॉल और वितरित प्रणालियों के लिए महत्वपूर्ण।
|
||||
- **सुरक्षा उपाय**:
|
||||
- प्रमाणीकरण के साथ विश्वसनीय NTP या NTS (नेटवर्क टाइम सुरक्षा) स्रोतों का उपयोग करें।
|
||||
- यह सीमित करें कि कौन डेमन को क्वेरी/कमांड कर सकता है (``restrict default noquery``, ``kod`` आदि)।
|
||||
- पुराने मोड-6/7 नियंत्रण क्वेरी (``monlist``, ``ntpdc``) को अक्षम करें या उनकी दर को सीमित करें।
|
||||
- छेड़छाड़ के लिए समन्वयन ड्रिफ्ट/लीप-सेकंड स्थिति की निगरानी करें।
|
||||
- डेमन को अपडेट रखें (नीचे हाल के CVEs देखें)।
|
||||
|
||||
**डिफ़ॉल्ट पोर्ट्स**
|
||||
```
|
||||
123/udp NTP (data + legacy control)
|
||||
4460/tcp NTS-KE (RFC 8915) – TLS key-establishment for NTP
|
||||
```
|
||||
|
||||
**Default port:** 123/udp
|
||||
```
|
||||
PORT STATE SERVICE REASON
|
||||
123/udp open ntp udp-response
|
||||
```
|
||||
---
|
||||
## Enumeration
|
||||
```bash
|
||||
ntpq -c readlist <IP_ADDRESS>
|
||||
ntpq -c readvar <IP_ADDRESS>
|
||||
ntpq -c peers <IP_ADDRESS>
|
||||
ntpq -c associations <IP_ADDRESS>
|
||||
ntpdc -c monlist <IP_ADDRESS>
|
||||
ntpdc -c listpeers <IP_ADDRESS>
|
||||
ntpdc -c sysinfo <IP_ADDRESS>
|
||||
```
|
||||
|
||||
### Classic 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 (अधिकांश आधुनिक Linux वितरणों में)
|
||||
|
||||
जब ``cmdallow`` सक्षम होता है, तो केवल कुछ ही निगरानी कमांड दूरस्थ IPs से स्वीकार किए जाते हैं:
|
||||
```bash
|
||||
chronyc -a -n tracking -h <IP>
|
||||
chronyc -a -n sources -v -h <IP>
|
||||
chronyc -a -n sourcestats -h <IP>
|
||||
```
|
||||
**M/S** ध्वजों और अन्य क्षेत्रों (stratum, reach, jitter, आदि) के अर्थ के लिए chronyc मैन पृष्ठ देखें।
|
||||
|
||||
### 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>
|
||||
```
|
||||
## Examine configuration files
|
||||
|
||||
- ntp.conf
|
||||
|
||||
## NTP Amplification Attack
|
||||
|
||||
[**How NTP DDoS Attack Works**](https://resources.infosecinstitute.com/network-time-protocol-ntp-threats-countermeasures/#gref)
|
||||
|
||||
**NTP प्रोटोकॉल**, UDP का उपयोग करते हुए, हैंडशेक प्रक्रियाओं की आवश्यकता के बिना संचालन की अनुमति देता है, TCP के विपरीत। इस विशेषता का उपयोग **NTP DDoS amplification attacks** में किया जाता है। यहाँ, हमलावर एक नकली स्रोत IP के साथ पैकेट बनाते हैं, जिससे ऐसा प्रतीत होता है कि हमले के अनुरोध पीड़ित से आ रहे हैं। ये पैकेट, जो प्रारंभ में छोटे होते हैं, NTP सर्वर को बहुत बड़े डेटा वॉल्यूम के साथ प्रतिक्रिया देने के लिए प्रेरित करते हैं, जिससे हमले को बढ़ावा मिलता है।
|
||||
|
||||
_**MONLIST**_ कमांड, इसके दुर्लभ उपयोग के बावजूद, NTP सेवा से जुड़े अंतिम 600 क्लाइंट्स की रिपोर्ट कर सकता है। जबकि कमांड स्वयं सरल है, ऐसे हमलों में इसका दुरुपयोग महत्वपूर्ण सुरक्षा कमजोरियों को उजागर करता है।
|
||||
### मास/इंटरनेट स्कैनिंग
|
||||
```bash
|
||||
ntpdc -n -c monlist <IP>
|
||||
# Check if MONLIST is enabled (zgrab2 module)
|
||||
zgrab2 ntp --monlist --timeout 3 --output-file monlist.json -f "zmap_results.csv"
|
||||
```
|
||||
## Shodan
|
||||
---
|
||||
## कॉन्फ़िगरेशन फ़ाइलों की जांच करें
|
||||
|
||||
- `ntp`
|
||||
- ``/etc/ntp.conf`` (ntpd)
|
||||
- ``/etc/chrony/chrony.conf`` (chrony)
|
||||
- ``/etc/systemd/timesyncd.conf`` (timesyncd – केवल क्लाइंट)
|
||||
|
||||
## HackTricks Automatic Commands
|
||||
``restrict`` लाइनों, ``kod`` (Kiss-o'-Death) सेटिंग्स, ``disable monitor``/``includefile /etc/ntp/crypto`` और यह कि *NTS* सक्षम है (``nts enable``) पर विशेष ध्यान दें।
|
||||
|
||||
---
|
||||
## हाल की कमजोरियाँ (2023-2025)
|
||||
|
||||
| वर्ष | CVE | घटक | प्रभाव |
|
||||
|------|-----|-----------|--------|
|
||||
| 2023 | **CVE-2023-26551→26555** | ntp 4.2.8p15 (libntp *mstolfp*, *praecis_parse*) | कई आउट-ऑफ-बाउंड लिखने योग्य **ntpq** प्रतिक्रियाओं के माध्यम से। **4.2.8p16** में पैच 🡒 अपग्रेड या बैक-पोर्ट फिक्स। citeturn1search1turn1search2turn1search0|
|
||||
| 2023 | **CVE-2023-33192** | **ntpd-rs** (Rust कार्यान्वयन) | गलत फ़ॉर्मेट वाला **NTS** कुकी दूरस्थ **DoS** का कारण बनता है v0.3.3 से पहले – पोर्ट 123 को प्रभावित करता है जब NTS **अक्षम** हो। citeturn4view0|
|
||||
| 2024 | वितरण अपडेट | **chrony 4.4 / 4.5** – कई सुरक्षा हार्डनिंग और NTS-KE फिक्स (जैसे SUSE-RU-2024:2022) citeturn2search2|
|
||||
| 2024 | रिकॉर्ड DDoS | Cloudflare ने **5.6 Tbps UDP परावर्तन** हमले की रिपोर्ट की (NTP सहित प्रोटोकॉल में)। इंटरनेट-फेसिंग होस्ट पर *monitor* और *monlist* को अक्षम रखें। citeturn5search0|
|
||||
|
||||
> **एक्सप्लॉइट किट**: 2023 ntpq OOB-write श्रृंखला के लिए प्रूफ-ऑफ-कॉन्सेप्ट पेलोड GitHub पर हैं (Meinberg लेख देखें) और इसे सिस्टम प्रशासकों के लिए क्लाइंट-साइड फ़िशिंग के लिए हथियारबंद किया जा सकता है। citeturn1search4
|
||||
|
||||
---
|
||||
## उन्नत हमले
|
||||
|
||||
### 1. NTP एम्प्लीफिकेशन / परावर्तन
|
||||
|
||||
विरासत मोड-7 ``monlist`` क्वेरी **600 होस्ट पते** तक लौटाती है और यह अभी भी हजारों इंटरनेट होस्ट पर मौजूद है। क्योंकि उत्तर (428-468 बाइट/प्रविष्टि) 8-बाइट अनुरोध से *~ 200×* बड़ा है, एक हमलावर तीन अंकों के एम्प्लीफिकेशन फैक्टर तक पहुँच सकता है। शमन:
|
||||
|
||||
- ntp 4.2.8p15+ पर अपग्रेड करें और ``disable monitor`` **जोड़ें**।
|
||||
- DDoS उपकरणों पर UDP/123 की दर-सीमा निर्धारित करें या *sessions-required* सक्षम करें।
|
||||
- स्रोत स्पूफिंग को ब्लॉक करने के लिए *BCP 38* निकासी फ़िल्टरिंग सक्षम करें।
|
||||
|
||||
चरण-दर-चरण विवरण के लिए Cloudflare के लर्निंग-सेंटर लेख को देखें। citeturn5search1
|
||||
|
||||
### 2. समय-शिफ्ट / देरी हमले (Khronos / Chronos अनुसंधान)
|
||||
|
||||
प्रमाणीकरण के साथ भी, एक ऑन-पाथ हमलावर चुपचाप **क्लाइंट घड़ी** को पैकेट गिराकर/देरी देकर **शिफ्ट** कर सकता है। IETF **Khronos (पूर्व में Chronos) ड्राफ्ट** पृष्ठभूमि में विभिन्न सर्वरों को क्वेरी करने और परिणाम की सच्चाई की जांच करने का प्रस्ताव करता है ताकि > 𝚡 मिलीसेकंड का शिफ्ट पता लगाया जा सके। आधुनिक chrony (4.4+) पहले से ही एक समान सच्चाई फ़िल्टर (``maxdistance`` / ``maxjitter``) लागू करता है। citeturn9search1
|
||||
|
||||
### 3. NTS दुरुपयोग और 4460/tcp एक्सपोजर
|
||||
|
||||
NTS भारी क्रिप्टो को एक अलग **TLS 1.3 चैनल पर 4460/tcp** (``ntske/1``) पर ले जाता है। खराब कार्यान्वयन (देखें CVE-2023-33192) कुकीज़ को पार्स करते समय क्रैश हो जाते हैं या कमजोर सिफर की अनुमति देते हैं। पेंटेस्टर्स को चाहिए:
|
||||
```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
|
||||
```
|
||||
Protocol_Name: NTP #Protocol Abbreviation if there is one.
|
||||
Port_Number: 123 #Comma separated if there is more than one.
|
||||
Protocol_Description: Network Time Protocol #Protocol Abbreviation Spelled out
|
||||
स्व-हस्ताक्षरित या समाप्त प्रमाणपत्रों और कमजोर सिफर-सुइट्स (गैर-AEAD) की तलाश करें। संदर्भ: RFC 8915 §4. citeturn11search0
|
||||
|
||||
---
|
||||
## हार्डनिंग / सर्वोत्तम-वर्तमान-प्रथा (BCP-233 / RFC 8633)
|
||||
|
||||
*ऑपरेटर को चाहिए:*
|
||||
|
||||
1. **≥ 4** स्वतंत्र, विविध समय स्रोतों (सार्वजनिक पूल, GPS, PTP-ब्रिज) का उपयोग करें ताकि एकल-स्रोत विषाक्तता से बचा जा सके।
|
||||
2. दुरुपयोगी ग्राहकों को पूर्ण प्रतिक्रियाओं के बजाय **Kiss-o'-Death** दर-सीमा पैकेट प्राप्त करने के लिए ``kod`` और ``limited``/``nomodify`` प्रतिबंध सक्षम करें।
|
||||
3. **panic** घटनाओं या चरण समायोजनों > 1000 सेकंड के लिए डेमन लॉग की निगरानी करें। (RFC 8633 §5.3 के अनुसार हमले के संकेत।)
|
||||
4. कूद-सेकंड आउटेज से बचने के लिए **leap-smear** पर विचार करें, लेकिन सुनिश्चित करें कि *सभी* डाउनस्ट्रीम ग्राहक समान स्मियर विंडो का उपयोग करें।
|
||||
5. कूद-सेकंड ध्वजों को न चूकने के लिए पोलिंग ≤24 घंटे रखें।
|
||||
|
||||
व्यापक चेकलिस्ट के लिए RFC 8633 देखें। citeturn8search0turn8search1
|
||||
|
||||
---
|
||||
## Shodan / Censys Dorks
|
||||
```
|
||||
port:123 "ntpd" # Version banner
|
||||
udp port:123 monlist:true # Censys tag for vulnerable servers
|
||||
port:4460 "ntske" # NTS-KE
|
||||
```
|
||||
---
|
||||
## उपयोगी उपकरण
|
||||
|
||||
| उपकरण | उद्देश्य | उदाहरण |
|
||||
|------|---------|---------|
|
||||
| ``ntpwn`` | स्क्रिप्ट-किडी रैपर जो monlist & peers क्वेरीज़ को स्प्रे करता है | ``python ntpwn.py --monlist targets.txt`` |
|
||||
| **zgrab2 ntp** | मास स्कैनिंग / JSON आउटपुट जिसमें monlist फ्लैग शामिल है | ऊपर दिए गए कमांड को देखें |
|
||||
| ``chronyd`` with ``allow`` | पेंटेस्ट लैब में धोखाधड़ी NTP सर्वर चलाना | ``chronyd -q 'server 127.127.1.0 iburst'`` |
|
||||
| ``BetterCap`` | Wi-Fi पर समय-शिफ्ट MITM के लिए NTP पैकेट इंजेक्ट करना | ``set arp.spoof.targets <victim>; set ntp.time.delta 30s; arp.spoof on`` |
|
||||
|
||||
---
|
||||
## HackTricks स्वचालित कमांड
|
||||
```
|
||||
Protocol_Name: NTP
|
||||
Port_Number: 123
|
||||
Protocol_Description: Network Time Protocol
|
||||
|
||||
Entry_1:
|
||||
Name: Notes
|
||||
@ -71,6 +166,17 @@ Name: Nmap
|
||||
Description: Enumerate NTP
|
||||
Command: nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 {IP}
|
||||
```
|
||||
|
||||
---
|
||||
## References
|
||||
|
||||
{{#include ../banners/hacktricks-training.md}}
|
||||
- RFC 8915 – *Network Time Security for the Network Time Protocol* (port 4460) citeturn11search0
|
||||
- RFC 8633 – *Network Time Protocol BCP* citeturn8search0
|
||||
- Cloudflare DDoS report 2024 Q4 (5.6 Tbps) citeturn5search0
|
||||
- Cloudflare *NTP Amplification Attack* article citeturn5search1
|
||||
- NTP 4.2.8p15 CVE series 2023-04 citeturn1search4
|
||||
- NVD entries **CVE-2023-26551–55**, **CVE-2023-33192** citeturn1search1turn1search2turn1search0turn4view0
|
||||
- SUSE chrony security update 2024 (chrony 4.5) citeturn2search2
|
||||
- Khronos/Chronos draft (time-shift mitigation) citeturn9search1
|
||||
- chronyc manual/examples for remote monitoring citeturn3search0turn10search1
|
||||
- zgrab2 ntp module docs citeturn7search0
|
||||
{{#include /banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user