Was ist ein UDP-Flood-DDoS-Angriff?
Ein UDP-Flood ist ein volumetrischer DDoS-Angriff, bei dem enorm viele UDP-Pakete (User Datagram Protocol) an ein Ziel geschickt werden, oft an viele verschiedene Ports, bis Bandbreite, Firewall oder CPU des Ziels erschöpft sind und echter Datenverkehr nicht mehr durchkommt. UDP kennt keinen Verbindungsaufbau, daher kann der Absender seine Adresse fälschen und das Ziel erkennt nicht, wer echt ist. Dieser Eintrag erklärt Funktionsweise und Abwehr. Er ist keine Anleitung für einen Angriff: Systeme anzugreifen, die Ihnen nicht gehören, ist illegal.
Warum sich UDP leicht missbrauchen lässt
UDP ist in RFC 768 als Datagramm-Protokoll definiert, bei dem Zustellung und Schutz vor Duplikaten nicht garantiert sind. Es gibt keinen Verbindungsaufbau, und selbst der Quellport ist optional. Nichts im Protokoll prüft, ob die Quell-IP-Adresse zum Absender gehört, deshalb wird ein Paket mit gefälschter Adresse wie jedes andere angenommen.
So funktioniert ein UDP-Flood
- Direkter Flood. Viele Rechner, meist ein Botnetz, senden UDP-Pakete an zufällige Ports des Ziels. Für jedes Paket sucht der Host nach einer Anwendung an diesem Port. Lauscht dort keine, kann er mit einer ICMP-Meldung "Ziel nicht erreichbar" (Port unreachable, in RFC 792 definiert) antworten, was zusätzlich zur eingehenden Flut ausgehende Last erzeugt.
- Reflexion und Verstärkung. Der Angreifer schickt kleine Anfragen an öffentliche UDP-Server und fälscht die Adresse des Opfers als Absender. Die Server schicken ihre größeren Antworten an das Opfer. Die (archivierte) UDP-Amplification-Warnung der CISA (TA14-017A) nennt Verstärkungsfaktoren wie 28 bis 54 für DNS, 556,9 für NTP und 358,8 für CharGEN sowie bis zu 51.000 für Memcached.
- Gefälschte Absender. Weil die Absenderadresse gefälscht ist, hilft das Sperren einzelner IP-Adressen selten, und der wahre Ursprung ist schwer zu finden.
Reflexionsangriffe haben eigene Einträge: DNS-Amplification und Memcached-DDoS.
Beispiel
Ein Spielestudio betreibt einen Server an einem UDP-Port. Der Datenverkehr springt auf ein Vielfaches der Größe seiner Internetanbindung, fast alles kleine UDP-Pakete von verstreuten Adressen. Die Leitung ist voll, bevor ein Paket die Firewall erreicht, daher ändern Firewall-Regeln auf dem Server nichts. Das Studio braucht seinen Provider, der vorgelagert filtert.
Abwehr gegen einen UDP-Flood
- Vorgelagert abfangen. Eine Flut, die Ihre Leitung füllt, lässt sich nicht auf dem eigenen Server beheben. Nutzen Sie einen DDoS-Schutzdienst oder einen Provider, der Verkehr bereinigt, bevor er Sie erreicht. Die CISA nennt für Betroffene außerdem BGP-basiertes Remotely Triggered Blackholing in Abstimmung mit den Upstream-Providern.
- Ungenutztes schließen. Sperren Sie UDP-Ports, die kein Dienst braucht, und machen Sie nur erreichbar, was Sie betreiben. Zustandsbehaftete UDP-Inspektion hilft am Netzwerkrand.
- Kein Verstärker werden. Schalten Sie unnötige UDP-Dienste ab, begrenzen Sie die Antwortrate bei DNS und anderen UDP-Diensten und lassen Sie offene Resolver oder Memcached nie aus dem Internet erreichbar.
- Spoofing an der Quelle stoppen. Netzbetreiber sollten Ingress-Filterung nach BCP 38 (RFC 2827) einsetzen, die Pakete verwirft, deren Absenderadresse nicht zum ursprünglichen Netz gehört.
- Verkehr beobachten. Alarmieren Sie bei plötzlichen Sprüngen des UDP-Volumens, auffallend großen Antworten an eine Adresse und Abweichungen bei Paketgrößen in Flow-Daten.
Den größeren Rahmen finden Sie unter DDoS-Angriffe stoppen. Ein UDP-Flood ist das Gegenstück auf Netzwerkebene zum HTTP-Flood, der die Webanwendung angreift.
Häufige Fehler
- Sich auf die Server-Firewall verlassen, obwohl die Flut die Leitung sättigt, bevor die Firewall etwas sieht.
- Öffentliche DNS-, NTP- oder ähnliche UDP-Dienste mit Standardeinstellungen betreiben und so Teil eines fremden Angriffs werden.
- Keinen Kontaktweg und keinen Plan mit dem Hosting-Anbieter haben, bis der Angriff läuft.
Wo LoadFocus ins Spiel kommt
LoadFocus simuliert keine Angriffe, auch keine UDP-Floods. Die Lasttests senden HTTP- und HTTPS-Anfragen aus 25 Cloud-Regionen, und einen volumetrischen UDP-Angriff muss Ihr Hosting- oder DDoS-Schutzanbieter vorgelagert abfangen. Ein Lasttest zeigt, wie sich Ihre Webanwendung bei wachsendem legitimem Traffic verhält, damit Sie Ihre tatsächliche Kapazität und Reserve kennen. Mehr dazu in Lasttest vs. Stresstest und Spike-Tests. Testen Sie nur Systeme, die Ihnen gehören oder für die Sie eine schriftliche Erlaubnis haben, und prüfen Sie zuvor die Test-Richtlinien Ihres Hosting-Anbieters.
Häufige Fragen
Was ist ein UDP-Flood einfach erklärt?
Ein Angriff, der sehr viele UDP-Pakete an ein Ziel schickt, sodass dessen Netzwerkleitung, Firewall oder Server an die Kapazitätsgrenze kommt und legitime Nutzer sich nicht mehr verbinden können.
Warum können Angreifer bei UDP die Absenderadresse fälschen?
UDP hat keinen Verbindungsaufbau und prüft nicht, wer ein Paket gesendet hat, daher wird ein Paket mit gefälschter Absenderadresse angenommen. Deshalb funktionieren Reflexionsangriffe, und deshalb ist Ingress-Filterung (BCP 38) wichtig.
Kann eine Firewall einen UDP-Flood stoppen?
Nur teilweise. Eine Firewall kann UDP-Verkehr an ungenutzte Ports verwerfen, aber eine Flut, die Ihre Internetanbindung füllt, muss vorgelagert von Ihrem Provider oder einem DDoS-Schutzdienst gefiltert werden.
Simuliert LoadFocus UDP-Floods?
Nein. LoadFocus-Lasttests senden HTTP- und HTTPS-Anfragen, um zu messen, wie Ihre Anwendung unter legitimer Last arbeitet. Angriffssimulationen gibt es nicht.
Verwandte Begriffe
Verwandte LoadFocus-Tools
Setze dieses Konzept mit LoadFocus in die Praxis um, derselben Plattform, die alles antreibt, was du gerade gelesen hast.