NTP reflection Angriff

Wie ihr sicherlich schon mitbekommen habt, wurde vor wenigen Tagen Cloudflare von einem größeren DDoS-Angriff heimgesucht. Mit 400Gigabit/Sekunde war dieser Angriff der größte der bisher gestartet wurde.

Auf Platz zwei ist nun der bisher größte Angriff auf Spamhaus.org im März 2013 mit 300Gigabit/Sekunde abgerutscht.

Der Angriff auf Cloudflare war so gigantisch das zeitweiße der französische Internetknoten (Parix) nicht erreichbar war. Hier ist man sich jedoch nicht sicher ob das mit dem Angriff auf Cloudflare zusammen hängt oder ob hier ein eigener Angriff stattgefunden hat. Bei Parix konnten hier Spitzenwerte bis zu 350 Gigabit feststellt werden.

Was ist aber ein NTP reflection Angriff?

Bei einer NTP reflection Attacke wird der Server dazu gebracht weitere Server im Internet mit NTP Paketen anzugreifen. Diese Angriffsart kann nur vorkommen, wenn ihr auf euren Servern einen NTP-Zeitserver zum Abgleichen der Systemzeit nutzt.

Die Angreifer fälschen die Datenpackete und setzen dabei die IP Adresse des angegriffenen als Source-IP (Quell-IP) ein. Die NTP-Server antworten auf die Anfrage und senden Daten an die “neue” Source-IP zurück.

Bei einer Anfrage kann mit bis zu 600 Datensätzen geantwortet werden.

Wenn mann jedoch anstatt nur einem Server eine falsche IP Adresse gibt, an tausende Server eine modifizierte Anfrage schickt und als Quell-IP die IP des angegriffenen Systems einsetzt, haben wir einen klassischen DDoS Angriff.

Bin ich anfällig?

Unter Debian/Ubuntu gibt es ein Tool namens “ntpdc”. Hier folgenden Befehl ausführen:

ntpdc -n -c monlist 127.0.0.1

Wenn du nun folgende Ausgabe erhälst ist alles in Ordnung:

Server reports data not found

Kommt jedoch eine Ausgabe ähnlich folgender seit ihr theoretisch verwundbar:

remote address          port local address      count m ver rstr avgint  lstint
===============================================================================
176.9.40.244             123 5.9.55.201          2468 4 4    1d0   1033     351
144.76.7.34              123 5.9.55.201          2469 4 4    1d0   1033     400
2a01:4f8:121:50a1::2     123 2a01:4f8:161:51c4::2     2466 4 4    1d0   1034     618
46.235.112.25            123 5.9.55.201          2468 4 4    1d0   1033     862
58.215.177.51          52642 5.9.55.220            18 3 4    1d0 110883 1742448

Ich bin betroffen, was kann ich dagegen unternehmen?

Die Lösung ist relativ einfach. In der Datei /etc/ntp.conf folgende Zeile am Ende einfügen:

disable monitor

anschließend den NTP Dienst neustarten:

/etc/init.d/ntp restart

Wenn ihr nun die Überprüfung nochmals durchführt, sollte keine Liste mehr angezeigt werden.