Verstärkter reflektierter Angriff auf DNS-Server

11

Der Begriff Amplified reflected attackist neu für mich und ich habe ein paar Fragen dazu.

Ich habe gehört, dass es meistens mit DNS-Servern passiert - stimmt das?
Wie schützen Sie sich davor?
Woher wissen Sie, ob Ihre Server bei einem solchen Angriff verwendet werden können? Handelt es sich um ein Konfigurationsproblem?

Mike Janson
quelle

Antworten:

22

Erstens zielt diese Art von Angriff nicht (hauptsächlich) auf DNS selbst ab, wie Ihr Titel andeutet. Es wird natürlich eine zusätzliche Belastung für DNS-Server verursachen, aber der Hauptzweck besteht darin, jemand anderem DDoS zu geben. Eine schlechte Serverkonfiguration könnte es noch schlimmer machen, aber letztendlich ist dieses Problem mit dem Design von DNS und UDP und in der Tat mit jedem zustandslosen Kommunikationsprotokoll verbunden.

Im Grunde funktioniert es so: Ein Angreifer sendet normale (DNS) Anfragen an einen (DNS) Server. Diese Abfragen werden so gefälscht, als ob sie vom Zielsystem stammen. Der DNS-Server beantwortet nun die Anfrage und sendet die Antwort an den mutmaßlichen Ursprung zurück - das Opfer. Deshalb nennt man es Reflexionsangriff .

Dies ist möglich, weil Sie die Quelle der zustandslosen Kommunikation (als DNS über UDP) so gut überprüfen können, wie Sie der Absenderadresse auf einer Postkarte vertrauen können. Der Server kann einfach nicht entscheiden, ob eine Abfrage legitim ist oder Teil eines solchen Angriffs ist. DNS ist hier nur das beliebteste Protokoll, da es sehr viele Server dafür gibt und Sie nicht viel technischen Einblick oder spezielle Ausrüstung benötigen, um es (falsch) zu verwenden.

Schauen Sie sich den Verstärkungsteil an , um die Situation zu verschlimmern (und überhaupt angreifbar zu machen) . Es wäre nicht sehr schädlich, wenn der Verkehr des Angreifers gleich groß wäre wie der resultierende Verkehr. Der einzige Vorteil für den Angreifer wäre, dass seine Adresse hinter dem DNS-Server versteckt wird. Er könnte die Absenderadresse direkt vortäuschen, es wäre absolut nicht nötig, über DNS umzuleiten. Aber DNS-Antworten, und das ist ein weiterer Punkt, warum DNS hier so beliebt ist, können viel größer sein als die Frage. Abhängig von den genauen verwendeten Abfragen finden Sie hierzu unterschiedliche Zahlen. Sie können jedoch bis zu 1:60 betragen, wenn der Server für rekursive Abfragen geeignet istfür dich. Der Angreifer benötigt also nicht viele Maschinen unter seiner Kontrolle, um viel böswilligen Datenverkehr zu erzeugen.

Da Sie im öffentlichen Internet leicht Hunderte und Tausende von "offenen" DNS-Servern finden können, können Sie schnell berechnen, wie wenig Arbeit ein Angreifer leisten muss, wenn jeder offene DNS-Server, den er kennt, seine Anfragen sechzigfach an das Ziel überträgt. Wie ich eingangs sagte, gibt es keinen wirklich guten Weg, dies zu kontern. Natürlich stehen viele DNS-Server aufgrund von Fehlkonfigurationen allen offen, obwohl dies nicht der Fall sein sollte. Aber es gibt genauso viele offene Server, die geöffnet sein müssen, denn genau das ist ihr Zweck.

Sie können zwar nicht feststellen, ob eine Anforderung Teil eines Angriffs ist oder nicht. Ihre einzige Option besteht darin, den Server nicht mehr auszuführen. Sie können mit Ratenbegrenzung und anderen Spielzeugen herumspielen, aber Sie können dies nicht vollständig loswerden. Wenn Sie zum Spaß DNS bereitstellen, können Sie die Quell-IP der Anforderungen auf die schwarze Liste setzen. Wenn Sie sich jedoch in größerem Maßstab befinden, würde dies dem Opfer noch mehr Schaden zufügen. Denken Sie daran, dass Sie auf dem DNS-Server nur die Adresse des Opfers sehen können. Stellen Sie sich vor, Ihr Unternehmen wird über das DNS Ihres Anbieters angegriffen und Ihr Anbieter beschließt, den DNS-Dienst für Ihr Unternehmen zu kürzen. Der Angreifer könnte dies als eine Unmenge von Bonuspunkten in Bezug auf Denial-of-Service bewerten .

Wie auch immer, diese Angriffe finden den ganzen Tag und die ganze Nacht statt und werden als "Hintergrundgeräusche" des Internets angesehen. Wenn Sie einen öffentlichen (rekursiven) DNS-Server einrichten, dauert es nicht lange, bis Sie an zufälligen Angriffen teilnehmen. Natürlich wird es manchmal sehr schlimm, wenn große Infrastrukturen (wie sogar die DNS-Root-Server) zur Verstärkung missbraucht werden, aber in diesen Fällen werden proaktive Gegenmaßnahmen vom Personal ergriffen, bis der Angriff auf "normale" Ebenen abfällt.


Soweit zum Unterricht. Um Ihre Frage endlich zu beantworten:

Sie wissen, dass Ihr Server anfällig ist, wenn er Anfragen ohne Einschränkung beantwortet. Zeitraum. Wenn Sie rekursive Abfragen bearbeiten, kann Ihr Server das angegebene Verhältnis von 1:60 für den Angreifer generieren. Wenn es nur nicht rekursiv dient, ist es nicht so schlecht, aber trotzdem ...

So...

  • Stellen Sie sicher, dass Sie wirklich einen öffentlichen DNS-Server ausführen müssen
  • Wenn Sie müssen, werfen Sie einen Blick auf BIND's allow-recursionund allow-queryDirektiven
  • Wenn Ihr DNS-Server für Ihre eigene Zone autorisierend ist , ist überhaupt keine Rekursion erforderlich. Setzen Sie allow-recursionden Wert auf "Keine".
  • Wenn Sie einen Resolver für andere Domänen ausführen möchten , beschränken Sie die zulässigen Benutzer für Abfragen und rekursive Abfragen. In den genannten Anweisungen können Sie IP-Adressen, Netzwerke oder Zugriffslisten definieren
  • Denken Sie an die Begrenzung des DNS-Datenverkehrs nicht nur in BIND, sondern auch auf Systemebene. Als sehr einfaches Beispiel erlauben diese iptables-Regeln nicht mehr als 10 Abfragen pro Minute von jeder IP-Adresse:

.

iptables -A INPUT -p udp --dport 53 --set --name dnslimit
iptables -A INPUT -p udp --dport 53 -m recent --update --seconds 60 --hitcount 11 --name dnslimit -j DROP

In Anbetracht dieser Punkte sollten Sie bereit sein, loszulegen. Möglicherweise befindet sich ab und zu noch böswilliger Datenverkehr auf Ihrem Server, jedoch nicht in Mengen, die Ihnen einen guten Schlaf ermöglichen.

Karma Sicherungskasten
quelle
3
Das ist eine wirklich gute Antwort. Vielen Dank, dass Sie sich die Zeit genommen haben, es zu schreiben.
Jamieb
1
@mikejanson serverfault.com/questions/450099 - Schauen Sie sich diese Frage an, um zu sehen, welche anderen Optionen Sie möglicherweise haben (insbesondere den BIND-Patch von Vixie & Schryver )
the-wabbit
RRL ist jetzt eine Standardfunktion von bind und anderen Nameservern: kb.isc.org/article/AA-01000/189/…
Patrick Mevzek
Es ist im Allgemeinen falsch, denselben Server autorisierend und rekursiv zu haben. Best Practices empfehlen, dies in zwei separate Prozesse aufzuteilen.
Patrick Mevzek