Tahle chyba zustala 10 let v klidu, ale sotva se o ni zacalo psat, tak je to jeden ntp amplification utok za druhym. Dneska uz je to treti ddos, z toho dva pomoci NTP.
Viz graf z cacti: https://www.hosting90.cz/graph_image.png
Musel jsem svůj server z pool.ntp.org vyřadit už loni na podzim, protože byl opakovaně zneužíván k reflection attacku. Ten se bohužel takhle jednoduše nevyřeší, protože provoz u mne nebyl příliš velký, ale moje odpovědi byly součástí DDos útoku vedeného přes tisíce různých ntpd. Dokonce to nevyřešil ani rate limit, protože zdroje i cíle odpovědí se měnily (různé DDos nebo plošný DDos na balík IP adres). Takže se obávám, že tohle je jen polovičaté řešení.
Samotný přenos časových zpráv nepředstavuje problém, jsou to zprávy srovnatelně velké s TCP handshake hlavičkou, kterou lze odrazit od kterékoli služby postavené nad TCP.
Oproti tomu funkce monlist byla schopná na dotaz délky 192 B vygenerovat 100 odpovědí po 440B. (tedy 100× více paketů a 229× více dat). Samozřejmě, pokud server není určen k poskytování přesného času, je nejbezpečnější přístup k němu zcela zablokovat. Rozhodně ale není místo pro nějaké přehnané obavy z provozování veřejného NTP serveru.
Hele já jsem prostě pomalejší a něco mi uniká...
Jednotlivý počítač i server v Internetu. Konfigurace je taková že o synchronizaci času žádá počítač/server.
Příchozí (nevyžádané) zprávy jsou standardně blokovány (bez odpovědí) - tedy možnost zahlcení daného počítače minimální, a možnost zahlcení dalších počítačů od následné komunikace tohoto počítače je nulová (předpokládám že ty delší odpovědi by měly jít směrovat na určený cíl, namísto na původní zdroj).
P.S.
To nemluvím o tom že většina počítačů i serverů komunikuje se známým NPT serverem a není tedy problém udělat pravidla úplně a přesně vyhovující potřebě.
Nojo, TOR, to je hodně dlouhé vedení.
Máš-li na serveru ntpd, slouží v základním nastavení zároveň jako klient, i jako server, tedy odpovídá na žádosti o přesný čas. Pokud to nezakážeš, je výchozí konfiguraci navíc umožněno komukoli získat ze serveru provozní informace, kterých může být na malý dotaz celkem dost.
Něco jiného je, pokud používáš jen SNTP, který se jednou za čas probudí, zjistí aktuální čas a dostaví hodiny. Jenže to se zase nedoporučuje, protože čas se mění skokově a to může některým programům (třeba Dovecot) hodně vadit.