NTP Reflection DoS [DRDoS]

Posted: 5 March 2014 in ITsec
Tags: , , , , , , , , ,

Przez ostatnich kilka lat można zaobserwować wzrost w atakach DRDoS na specyficzne usługi, a nie bezpośrednio podatności wysysające łącze chociaż cel ostateczny jest ten sam. Ataki DRDoS odbywają się z reguły na systemy, które zezwalają swoim klientom na niezautentykowane otrzymywanie większych odpowiedzi od zapytania wpływając tym samym negatywnie na ruch sieciowy. Najszczęstrzym przykładem jest oczywiście DNS i otwarte resolwery oraz SNMP. Jednak do tego grona od 10.01.2014r można zaliczyć także protokół czasu NTP.

W tytułowym ataku – atakujący podszywa adres źródłowy zainfekowanego ruchu podmieniając adres źródłowy z docelowym. Konkretne odpowiedzi NTP mogą w ten sposób wygenerować wysoki wskaźnik BAF (Bandwidth Amplification Factor). Protokół NTP służy do synchronizacji czasu urządzeń i operuje na bezpołączeniowym protokole UDP by wysyłać i otrzymywać wiadomości bez walidacji adresu IP źródła wysyłającego zapytania. Wobec czego atak jest bardzo podobny do atakowania DNS. Zagłębiając się w strukturę pakietu – atakujący podnosi wartość requestu REQ_MON_GETLIST na 3360 oraz REQ_MON_GETLIST_1 na 5500 co znacznie podnosi BAF.

Czy jestem podatny?

1. W pierwszej kolejności sprawdź wersję ntpd (jeżeli jest to 4.2.6.x – jesteś podatny)

2. Sprawdź czy wiadomości BAF REQ_MON_GETLIST(*) są wyłączone:

#ntpq -c rv

#ntpdc -c sysinfo

#ntpdc -n -c monlist

3. Sprawdź podatność skryptem do nMapa:

#nmap -sU -pU:123 -Pn -n –script=ntp-monlist [SERVER_NTP]

Obrona

Wystarczy wpis w /etc/ntp.conf dla ipv4 oraz ipv6:

restrict default kod nomodify notrap nopeer noquery

restrict -6 default kod nomodify notrap nopeer noquery

Opcjonalnie można chronić sieć segmentowo:

restrict default noquery

restrict localhost

restrict 192.168.0.0 netmask 255.255.255.0 #sieć

restrict 192.168.5.100 #host


Źródełko: http://www.publicsafety.gc.ca/cnt/rsrcs/cybr-ctr/2014/av14-001-eng.aspx


REQ_MON_GETLIST

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s