hacktricks/network-services-pentesting/pentesting-ntp.md
2024-02-11 02:13:58 +00:00

16 KiB

123/udp - Kupima Usalama wa NTP

Jifunze kuhusu kudukua AWS kutoka mwanzo hadi kuwa bingwa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Jiunge na HackenProof Discord ili kuwasiliana na wadukuzi wenye uzoefu na wawindaji wa tuzo za mdudu!

Machapisho Kuhusu Kudukua
Shiriki na yaliyomo yanayochunguza msisimko na changamoto za kudukua

Habari za Kudukua za Wakati Halisi
Endelea kuwa na habari za ulimwengu wa kudukua kwa kasi kupitia habari na ufahamu wa wakati halisi

Matangazo ya Hivi Karibuni
Baki na habari kuhusu uzinduzi wa tuzo za mdudu mpya na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wadukuzi bora leo!

Taarifa Msingi

Network Time Protocol (NTP) inahakikisha kompyuta na vifaa vya mtandao kwenye mitandao yenye kuchelewa kwa wakati wanalingana saa zao kwa usahihi. Ni muhimu kwa kudumisha wakati sahihi katika shughuli za IT, usalama, na kumbukumbu. Uwiano wa NTP ni muhimu, lakini pia unaleta hatari za usalama ikiwa hautasimamiwa vizuri.

Muhtasari na Vidokezo vya Usalama:

  • Lengo: Kulinganisha saa za vifaa kupitia mitandao.
  • Umuhimu: Muhimu kwa usalama, kumbukumbu, na shughuli.
  • Hatua za Usalama:
  • Tumia vyanzo vya NTP vinavyoaminika na uthibitishaji.
  • Punguza upatikanaji wa mtandao wa seva ya NTP.
  • Fuatilia uwiano kwa dalili za kuingiliwa.

Bandari ya chaguo-msingi: 123/udp

PORT    STATE SERVICE REASON
123/udp open  ntp     udp-response

Uchambuzi

NTP (Network Time Protocol)

NTP ni itifaki ya mtandao inayotumiwa kusawazisha saa za vifaa vya mtandao. Inaruhusu vifaa kusawazisha saa zao na seva ya wakati. Wakati mwingine, NTP inaweza kuwa na udhaifu ambao unaweza kutumiwa na wadukuzi kuingia kwenye mfumo.

Kuchunguza Huduma ya NTP

Kutambua ikiwa huduma ya NTP inapatikana kwenye mfumo, unaweza kutumia amri ifuatayo:

nmap -p 123 <IP>

Kuchunguza Matoleo ya NTP

Kutambua toleo la NTP inayotumiwa na mfumo, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Kuchunguza Udhaifu wa NTP

Kutambua ikiwa mfumo una udhaifu wa NTP, unaweza kutumia zana kama ntpdc au ntpdate:

ntpdc -c monlist <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP

Kutambua mipangilio ya NTP iliyowekwa kwenye mfumo, unaweza kutumia amri ifuatayo:

cat /etc/ntp.conf

Au:

cat /etc/xntp.conf

Kuchunguza Historia ya NTP

Kutambua historia ya NTP iliyohifadhiwa kwenye mfumo, unaweza kutumia amri ifuatayo:

cat /var/log/ntp.log

Au:

cat /var/log/xntp.log

Kuchunguza Usalama wa NTP

Kutambua ikiwa mfumo una hatua za usalama zilizowekwa kwenye huduma ya NTP, unaweza kutumia amri ifuatayo:

ntpq -p <IP>

Au:

ntpdate -q <IP>

Kuchunguza Matumizi ya NTP

Kutambua matumizi ya NTP kwenye mfumo, unaweza kutumia amri ifuatayo:

ps aux | grep ntp

Au:

ps aux | grep xntpd

Kuchunguza Uthibitishaji wa NTP

Kutambua ikiwa mfumo una uthibitishaji wa NTP ulioanzishwa, unaweza kutumia amri ifuatayo:

cat /etc/ntp.keys

Au:

cat /etc/xntp.keys

Kuchunguza Mipangilio ya NTP ya Wateja

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja wa mfumo, unaweza kutumia amri ifuatayo:

cat /etc/ntp.conf

Au:

cat /etc/xntp.conf

Kuchunguza Mipangilio ya NTP ya Seva

Kutambua mipangilio ya NTP iliyowekwa kwenye seva ya mfumo, unaweza kutumia amri ifuatayo:

cat /etc/ntp.conf

Au:

cat /etc/xntp.conf

Kuchunguza Mipangilio ya NTP ya Wateja na Seva

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo, unaweza kutumia amri ifuatayo:

cat /etc/ntp.conf

Au:

cat /etc/xntp.conf

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya GUI

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya GUI, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya API

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya API, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya CLI

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya CLI, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya SDK

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya SDK, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Script

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya script, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Plugin

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya plugin, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Extension

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya kipengele cha ziada, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Add-on

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya nyongeza, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Module

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya moduli, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Library

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya maktaba, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Framework

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya mfumo, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Package

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya pakiti, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Dependency

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya tegemezi, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Container

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya chombo, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Virtualization

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya uwekaji wa kawaida, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Hypervisor

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya hypervisor, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Operating System

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya mfumo wa uendeshaji, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Network

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya mtandao, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Firewall

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya firewall, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Router

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya router, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Switch

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya swichi, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Load Balancer

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya kubalansisha mzigo, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya Proxy

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya proksi, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya IDS/IPS

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya IDS/IPS, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya WAF

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya WAF, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya CDN

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya CDN, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya DNS

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya DNS, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya DHCP

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya DHCP, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya VPN

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya VPN, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

ntpdate -q <IP>

Kuchunguza Mipangilio ya NTP ya Wateja na Seva kwa njia ya VLAN

Kutambua mipangilio ya NTP iliyowekwa kwenye wateja na seva ya mfumo kwa njia ya VLAN, unaweza kutumia amri ifuatayo:

ntpdate -q <IP>

Au:

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>
nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 <IP>

Angalia faili za usanidi

  • ntp.conf

Shambulio la NTP Amplification

Jinsi Shambulio la NTP DDoS Linavyofanya Kazi

Itifaki ya NTP, ikitumia UDP, inaruhusu uendeshaji bila hitaji la taratibu za salamu, tofauti na TCP. Tabia hii inatumika katika shambulio la NTP DDoS amplification. Hapa, wadukuzi hujenga pakiti zenye anwani ya IP bandia, ikifanya iweonekane kama ombi la shambulio linatoka kwa mwathirika. Pakiti hizi, awali ndogo, zinachochea seva ya NTP kujibu kwa kiasi kikubwa cha data, kuzidisha shambulio.

Amri ya MONLIST, ingawa hutumiwa mara chache, inaweza kuripoti wateja 600 wa mwisho waliounganishwa na huduma ya NTP. Ingawa amri yenyewe ni rahisi, matumizi mabaya katika shambulio kama hilo yanabainisha udhaifu mkubwa wa usalama.

ntpdc -n -c monlist <IP>

Shodan

  • ntp

Amri za Kiotomatiki za HackTricks

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

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.xyz/pentesting/pentesting-ntp

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}

Jiunge na seva ya HackenProof Discord ili kuwasiliana na wadukuzi wenye uzoefu na wawindaji wa tuzo za mdudu!

Machapisho ya Udukuzi
Shiriki na yaliyomo yanayochunguza msisimko na changamoto za udukuzi

Habari za Udukuzi za Waktu Halisi
Endelea kuwa na habari za ulimwengu wa udukuzi kwa kutumia habari na ufahamu wa wakati halisi

Matangazo ya Hivi Karibuni
Baki na habari kuhusu tuzo za mdudu zinazoanzishwa na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wadukuzi bora leo!

Jifunze udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks: