Layer 4 vs Layer 7 DDoS-Angriffe - Was ist der Unterschied

Layer 4 vs Layer 7 DDoS-Angriffe - Was ist der Unterschied

Wenn Sie sich jemals mit DDoS-Schutz fuer Ihren Minecraft-Server beschaeftigt haben, sind Sie wahrscheinlich auf die Begriffe "Layer 4" und "Layer 7" gestossen. Manche Dienste werben mit L4-Filterung, andere mit L7-Analyse. Klingt technisch, aber was bedeutet das konkret fuer Ihren Server?

Lassen Sie uns das ohne Lehrbuch-Gerede aufschluesseln. Was diese Schichten sind, welche Angriffe auf welcher Ebene funktionieren und warum vernuenftiger Schutz beides braucht.

Das OSI-Modell (kurz und buendig)

OSI (Open Systems Interconnection) ist ein theoretisches Modell, das Netzwerkkommunikation in 7 Schichten aufteilt. Es wurde in den 80ern zur Standardisierung erfunden und wird immer noch als gemeinsame Sprache verwendet, wenn Leute ueber Netzwerke reden.

Hier sind alle 7 Schichten, von unten nach oben:

  1. Physical - Kabel, Glasfaser, Funkwellen. Physische Uebertragung von Bits.
  2. Data Link - Ethernet-Frames, MAC-Adressen. Datenuebertragung zwischen benachbarten Knoten.
  3. Network - IP-Adressen, Routing. Wie ein Paket den Weg von Punkt A nach Punkt B findet.
  4. Transport - TCP und UDP. Wie Daten zuverlaessig (oder schnell) zwischen Anwendungen geliefert werden.
  5. Session - Sitzungsverwaltung. Existiert in der Praxis kaum als separate Schicht.
  6. Presentation - Kodierung, Verschluesselung. TLS lebt ungefaehr hier.
  7. Application - HTTP, DNS, Minecraft-Protokoll. Womit Endanwendungen tatsaechlich arbeiten.

In der Praxis sind von diesen 7 Schichten drei fuer DDoS-Angriffe und Verteidigung relevant: Layer 3 (Network), Layer 4 (Transport) und Layer 7 (Application). Die Schichten 3 und 4 werden normalerweise als "L3/L4" oder einfach "L4" zusammengefasst, weil Angriffe auf diesen Ebenen aehnlicher Natur sind - sie arbeiten mit rohen Paketen.

L3/L4-Angriffe: Rohe Gewalt

Angriffe auf den Schichten 3 und 4 sind klassisches DDoS in seiner einfachsten Form. Die Idee ist simpel: den Kanal oder die Ressourcen des Servers mit einer enormen Menge an Traffic ueberfluten. Keine Finesse noetig - nur Volumen.

SYN Flood

Einer der aeltesten Angriffe und immer noch einer der haeufigsten. So funktioniert er: Wenn Sie sich per TCP mit einem Server verbinden, gibt es einen Drei-Wege-Handshake - SYN, SYN-ACK, ACK. Bei einem SYN Flood sendet der Angreifer Tausende von SYN-Paketen, schliesst aber den Handshake nie ab. Der Server reserviert Speicher fuer jede halboffene Verbindung und erstickt irgendwann daran.

Fuer Minecraft-Server ist SYN Flood besonders unangenehm, weil jede neue Spielerverbindung mit einem TCP-Handshake beginnt. Wenn die Tabelle halboffener Verbindungen ueberlaeuft, koennen echte Spieler sich einfach nicht verbinden - der Server kann ihre SYN-Pakete nicht verarbeiten.

UDP Flood

UDP ist ein verbindungsloses Protokoll. Kein Handshake, keine Bestaetigungen. Paket senden und fertig. Das macht UDP zum perfekten Werkzeug fuer volumetrische Angriffe: Der Angreifer generiert Gigabytes an UDP-Traffic pro Sekunde und saettigt die eingehende Bandbreite des Servers.

Minecraft nutzt TCP fuer den Hauptspielverkehr, aber viele Server hoeren auch auf UDP (Query-Port, Voice Chat, Plugins). Selbst wenn Ihr Server kein UDP nutzt, verstopft der Angriff trotzdem Ihre Leitung - die Pakete kommen am Netzwerkinterface an und verbrauchen Bandbreite, bevor Ihre Firewall sie verwerfen kann.

Mehr ueber die Unterschiede zwischen diesen Protokollen in unserem Artikel ueber TCP vs UDP-Angriffe.

Amplification-Angriffe

Eine clevere Variante des UDP Flood. Der Angreifer sendet eine kleine Anfrage an einen Zwischenserver (DNS, NTP, memcached) und faelscht die IP-Adresse des Opfers als Absender. Der Zwischenserver antwortet dem Opfer mit einer Antwort, die Dutzende Male groesser ist als die urspruengliche Anfrage.

DNS-Amplification bietet einen Verstaerkungsfaktor von ungefaehr 50x. Memcached - bis zu 51.000x. Das bedeutet, ein Angreifer mit 100 Mbit Anbindung kann einen 5-Gbit-Angriff ueber DNS generieren oder buchstaeblich Terabits ueber memcached.

ICMP Flood und Co.

ICMP Flood (auch Ping Flood), TCP RST Flood, ACK Flood - das sind alles Variationen desselben Themas. Den Server oder seinen Kanal mit Paketen eines bestimmten Typs ueberfluten. Sie unterscheiden sich in den Implementierungsdetails, aber der Kern ist derselbe: Volumen, Volumen, Volumen.

Gemeinsame Merkmale von L3/L4-Angriffen

  • Volumetrisch. Gemessen in Gbps (Gigabit pro Sekunde) oder Mpps (Millionen Pakete pro Sekunde).
  • Stumpf (im positiven Sinne). Man muss nichts ueber die Anwendung wissen - einfach fluten.
  • Relativ leicht zu erkennen. Abnormale Traffic-Spitzen sind auf Graphen sofort sichtbar.
  • Zielen auf Infrastruktur. Das Ziel ist der Kanal, die Netzwerkausruestung oder der TCP-Stack des Servers.

L7-Angriffe: Der smarte Krieg

Layer 7 ist die Anwendungsschicht. Hier leben HTTP, DNS und - wichtig fuer uns - das Minecraft-Protokoll. L7-Angriffe unterscheiden sich grundlegend von L4: Statt roher Gewalt setzen sie auf Finesse.

HTTP Flood

Der klassische L7-Angriff fuer Webserver. Der Angreifer sendet Tausende vollstaendig gueltige HTTP-Anfragen. Aus Netzwerksicht ist das legitimer Traffic - korrekte TCP-Verbindungen, korrekte HTTP-Header. Aber jede Anfrage zwingt den Server zur Arbeit: Datenbank abfragen, Seite rendern, CPU verbrauchen.

Fuer Minecraft ist das weniger direkt relevant (Webpanel und API stehen normalerweise nicht unter solchem Druck), aber wenn Sie Dynmap, Plan oder ein anderes Webpanel auf derselben Maschine betreiben, kann ein HTTP Flood es ueberlasten.

Slowloris

Ein eleganter Angriff, benannt nach dem Plumplori. Die Idee: Viele HTTP-Verbindungen oeffnen und Daten sehr langsam senden, sodass der Server die Verbindung nicht schliessen kann. Jede Verbindung belegt einen Slot auf dem Server, und irgendwann koennen sich legitime Benutzer nicht mehr verbinden, weil alle Slots von langsamen "Zombie"-Verbindungen belegt sind.

Das ist ein Angriff mit minimalem Traffic. Buchstaeblich Kilobits pro Sekunde. Aber die Wirkung ist verheerend - der Server wird unerreichbar.

Bot Joins - Minecraft's L7-Albtraum

Hier wird es fuer Minecraft-Serverbesitzer richtig relevant. Ein Bot Join ist ein L7-Angriff, der spezifisch fuer das Minecraft-Protokoll ist. Der Angreifer startet Tausende gefaelschte Clients, die sich mit dem Server verbinden, den Handshake durchlaufen, sich manchmal sogar authentifizieren - und dabei Serverressourcen verbrennen.

Jeder Bot Join zwingt den Server:

  • Eine TCP-Verbindung anzunehmen
  • Den Minecraft-Handshake zu verarbeiten
  • Den Benutzernamen im Auth-System zu pruefen
  • Moeglicherweise Chunks um den Spawn zu laden
  • Speicher fuer die Spielerentitaet zu reservieren

Bei Tausenden von Bots kommt der Server zum Stillstand. TPS faellt auf null, echte Spieler laggen oder fliegen raus. Und auf L4-Ebene sieht alles voellig normal aus - das sind ja nur regulaere TCP-Verbindungen zu Port 25565.

Crafted Packets - Invalide Pakete

Eine weitere Art von L7-Angriff: Das Senden speziell konstruierter Pakete, die technisch der Minecraft-Protokollstruktur entsprechen, aber unerwartete Daten enthalten. Zum Beispiel uebermaessig lange Strings, negative Werte in Feldern die positive erwarten, oder Pakete in falscher Reihenfolge.

Das Ziel ist es, Exceptions im Servercode auszuloesen, Speicherlecks zu provozieren oder den Server einfach dazu zu bringen, CPU fuer die Verarbeitung von Muell zu verschwenden. Manche Exploits dieser Art koennen einen Server mit einem einzigen Paket zum Absturz bringen - wenn im Code ein unbehandelter Fehlerpfad existiert.

Protokollspezifische Angriffe

Das Minecraft-Protokoll hat seine eigenen Eigenheiten, die Angreifer aktiv ausnutzen:

  • Status Ping Flood - massenhafte Anfragen nach dem Serverstatus (MOTD, Spielerzahl). Jede Anfrage ist legitim, aber in der Masse ueberlasten sie.
  • Login Flood - mehrfache Login-Versuche, die den Server zwingen, die Mojang API zur Verifizierung zu kontaktieren.
  • Chunk Exploit - Manipulation von Chunk-Anfragen, die den Server zwingen, riesige Datenmengen zu generieren und zu senden.

Gemeinsame Merkmale von L7-Angriffen

  • Wenig Traffic. Koennen mit Megabits oder sogar Kilobits pro Sekunde arbeiten.
  • Tarnung. Sehen aus wie legitimer Traffic. Jede einzelne Anfrage ist von einer echten nicht zu unterscheiden.
  • Schwer zu erkennen. Man kann nicht einfach das Trafficvolumen betrachten - man muss den Inhalt analysieren.
  • Zielen auf Anwendungslogik. Das Ziel ist CPU, Speicher und spezifische Schwaechen im Code.
  • Erfordern Protokollkenntnisse. Der Angreifer muss verstehen, wie die Zielanwendung funktioniert.

Wie sich der Schutz auf jeder Ebene unterscheidet

Verschiedene Angriffe erfordern verschiedene Verteidigungen. L4- und L7-Schutz verwenden grundlegend unterschiedliche Ansaetze.

L3/L4-Schutz

Auf dieser Ebene geht es um Geschwindigkeit. Pakete muessen analysiert und verworfen werden, bevor sie die Anwendung erreichen. Wichtigste Werkzeuge:

XDP/eBPF. Filterung auf Netzwerktreiberebene, noch bevor das Paket in den TCP/IP-Stack des Kernels gelangt. Das ist die schnellste Filtermethode - arbeitet mit Leitungsgeschwindigkeit, Millionen Pakete pro Sekunde. MineGuard nutzt genau diese Technologie fuer die L4-Filterung.

SYN Cookies. Ein Mechanismus, der SYN-Pakete ohne Speicherreservierung behandelt. Statt sich jede halboffene Verbindung zu merken, kodiert der Server die Information in der Sequenznummer. Wenn der Client echt ist und ein ACK sendet, wird die Verbindung aufgebaut. Wenn nicht, wurden null Ressourcen verschwendet.

Rate Limiting. Begrenzung der Paketanzahl von einer einzelnen IP oder einem Subnetz. Einfach aber effektiv - wenn eine IP 100.000 Pakete pro Sekunde sendet, ist das eindeutig kein legitimer Spieler.

Blackhole / Null-Route. Letzte Massnahme: Aller Traffic zur angegriffenen IP wird ins Nichts gesendet. Der Angriff hoert auf, aber der Server wird auch unerreichbar. Wird von Providern verwendet, wenn ein Angriff andere Kunden bedroht.

Traffic Scrubbing. Traffic wird ueber ein Reinigungszentrum umgeleitet, wo schlechte Pakete herausgefiltert und gute zum Server durchgelassen werden. Teuer, aber bewaeltigt Angriffe im Hunderte-Gigabit-Bereich.

L7-Schutz

Hier braucht man einen voellig anderen Ansatz. Man kann nicht einfach Pakete zaehlen - man muss verstehen, was drin ist.

Protokollvalidierung. Pruefung, dass jedes Paket dem Minecraft-Protokoll entspricht. Korrekte Struktur, gueltige Feldwerte, richtige Paketreihenfolge. Ungueltige Pakete werden sofort verworfen.

Verhaltensanalyse. Ein echter Spieler verhaelt sich auf bestimmte Weise: Es gibt Verzoegerungen zwischen Aktionen, Mausbewegungen sind nicht perfekt gerade, seine Verbindung folgt einem charakteristischen Muster. Ein Bot verbindet sich sofort, sendet Pakete mit maschineller Praezision, hat keine natuerliche Verzoegerung zwischen Aktionen. Guter L7-Schutz erkennt den Unterschied.

Challenge-Response. Bevor ein Client zum Server durchgelassen wird, stellt der Schutz ihm eine "Frage" - etwas, das ein echter Client automatisch verarbeitet, ein einfacher Bot aber nicht bewaeltigen kann. Fuer Minecraft kann das ein modifizierter Handshake oder eine Datenpruefung bei der Verbindung sein.

Bot-Erkennung. Eine Kombination aus Heuristiken zur Bestimmung, ob eine Verbindung ein Bot ist: Paketsenderate, Client-Version, Verbindungsverhalten, IP-Reputation.

Connection Throttling. Rate Limiting mit Kontextbewusstsein. Nicht nur "nicht mehr als N Verbindungen pro Sekunde", sondern "nicht mehr als N Verbindungen pro Sekunde von Clients mit verdaechtigem Verhalten."

Warum man beide Ebenen braucht

Das ist der Kernpunkt, den viele uebersehen. Schutz nur auf L4 oder nur auf L7 ist wie die Haustuer abschliessen, aber die Fenster offen lassen.

Nur L4-Schutz

SYN Floods und UDP Floods behandeln Sie perfekt. Amplification? Kein Problem. Aber wenn sich 5.000 Bots ueber voellig legitime TCP-Verbindungen mit Ihrem Server verbinden, bemerkt Ihr L4-Filter sie nicht einmal. Jeder Bot hat den Handshake abgeschlossen, ein korrektes SYN gesendet, ein SYN-ACK erhalten, mit ACK geantwortet. Auf der Transportschicht sieht alles sauber aus. Aber der Server stirbt, weil 5.000 gefaelschte Minecraft-Clients den gesamten Speicher aufgefressen haben.

Nur L7-Schutz

Sie blockieren Bot Joins und ungueltige Pakete. Aber wenn 50 Gbps UDP Flood auf Sie einprasseln, sieht Ihr L7-Schutz den Traffic nicht einmal - er saettigt Ihren Kanal, bevor er Ihre Anwendung erreicht. L7-Analyse arbeitet mit Daten innerhalb von Paketen, aber wenn Pakete wegen eines vollen Kanals gar nicht ankommen, gibt es nichts zu analysieren.

Der richtige Ansatz: Mehrschichtiger Schutz

Traffic durchlaeuft zuerst den L3/L4-Filter, der volumetrische Angriffe, Muell-Traffic und Pakete von gefaelschten IPs entfernt. Was durch den ersten Filter kommt, trifft auf den L7-Analysator, der den Inhalt prueft - Protokollgueltigkeit, Client-Verhalten, Rate Limiting auf Anwendungsebene.

Stellen Sie sich das wie einen Flughafen vor: Zuerst wird der Pass kontrolliert (L4 - haben Sie ueberhaupt das Recht, hier einzutreten), dann wird das Gepaeck gescannt (L7 - was genau tragen Sie bei sich). Entfernen Sie eine der Kontrollen und die Sicherheit bricht zusammen.

Praxisbeispiele aus dem Gaming

Beispiel 1: Klassischer UDP Flood

Lehrbuchszenario. Ein konkurrierender Server bestellt einen DDoS auf ein Minecraft-Projekt. Der Angriff ist reiner UDP Flood mit 30-40 Gbps. Der Hoster des Servers sieht den Bandbreitenausschlag und setzt eine Null-Route auf die IP. Server geht fuer ein bis zwei Stunden offline, waehrend der Betreiber sich mit dem Hoster auseinandersetzt. Loesung: L4-Schutz durch einen Proxy mit ausreichender Bandbreitenkapazitaet. Traffic laeuft durch den Filter, UDP-Muell wird entfernt, legitimer Minecraft-TCP-Traffic erreicht den Server.

Beispiel 2: Bot-Join-Angriff

Ein Server mit solidem L4-Schutz. UDP und SYN Floods werden gefiltert. Aber der Angreifer wechselt zu Bot Joins: 3.000 gefaelschte Minecraft-Clients verbinden sich gleichzeitig. Jeder durchlaeuft den TCP-Handshake (L4-Filter laesst sie durch - die Verbindung ist legitim), sendet ein Minecraft-Handshake-Paket und beginnt den Login-Prozess. Der Server versucht 3.000 gleichzeitige Logins zu verarbeiten, TPS faellt auf 1-2, Spieler laggen und werden getrennt. Loesung: L7-Filter, der den Minecraft-Handshake analysiert, Bots anhand ihres Verhaltens identifiziert und blockiert, bevor sie den Server belasten.

Beispiel 3: Kombinierter Angriff

Die unangenehmste Variante. Der Angreifer startet gleichzeitig einen 20-Gbps-UDP-Flood (um den L4-Filter zu belasten), einen SYN Flood (um die Verbindungstabelle zu fuellen) und Bot Joins (um den Server auf Anwendungsebene zu belasten). Jeder Angriff einzeln ist moeglicherweise nicht kritisch, aber zusammen erzeugen sie Druck auf allen Ebenen. Ohne mehrschichtigen Schutz bricht mindestens ein Vektor durch.

Beispiel 4: Crafted-Packet-Exploit

Der Angreifer findet eine spezifische Schwachstelle in einem Server-Plugin. Er sendet ein (!) speziell konstruiertes Paket, das eine Endlosschleife im Handler ausloest. Server stuerzt ab. Keine Gigabits noetig, keine Tausende von Bots - nur ein Paket, aber richtig zusammengebaut. L4-Schutz laesst es durch (es ist ein normales TCP-Datenpaket). Nur L7-Protokollvalidierung kann so etwas fangen - die Pruefung, dass der Paketinhalt korrekt und sicher ist.

Worauf Sie bei der Wahl des Schutzes achten sollten

Wenn Sie DDoS-Schutz fuer einen Spieleserver waehlen, stellen Sie diese Fragen:

Welche L4-Filterkapazitaet? Gemessen in Gbps und Mpps. Fuer einen kleinen Server reichen 10-20 Gbps. Fuer ein ernsthaftes Projekt brauchen Sie 100+ Gbps. Schauen Sie nicht nur auf die Spitzenkapazitaet, sondern auch auf die garantierte.

Gibt es L7-Analyse? Speziell fuer das Minecraft-Protokoll. Eine generische WAF (Web Application Firewall) reicht nicht - Sie brauchen Schutz, der das Minecraft-Protokoll versteht.

Wie hoch ist die Latenz? Filterung fuegt Latenz hinzu. Fuer Spiele ist das kritisch. Guter Schutz fuegt 1-5 ms hinzu. Schlechter Schutz 20-50 ms. Der Unterschied ist enorm fuer PvP.

Wie werden False Positives behandelt? Wenn der Schutz echte Spieler blockiert, ist das schlimmer als gar keinen Schutz zu haben. Fragen Sie nach der False-Positive-Rate.

Kann er kombinierte Angriffe bewaeltigen? Wie kommt das System zurecht, wenn L4- und L7-Angriffe gleichzeitig kommen?

Fazit

Layer 4 und Layer 7 sind nicht zwei Varianten desselben Dings. Es sind verschiedene Kategorien von Angriffen, die auf unterschiedlichen Prinzipien basieren und unterschiedliche Verteidigungsmethoden erfordern.

L3/L4-Angriffe sind rohe Gewalt. Gigabits an Traffic, Millionen von Paketen. Verteidigung arbeitet auf Netzwerkebene: Paketfilterung, Rate Limiting, XDP/eBPF.

L7-Angriffe sind Praezisionswaffen. Wenig Traffic, aber jede Anfrage trifft die Anwendungslogik. Verteidigung arbeitet auf Protokollebene: Validierung, Verhaltensanalyse, Challenge-Response.

Fuer ordentlichen Minecraft-Serverschutz brauchen Sie beide Ebenen. Nicht "entweder-oder", sondern "sowohl-als-auch." L4 entfernt den Muell, L7 filtert das, was durch die erste Schicht gekommen ist und versucht auf Anwendungsebene anzugreifen.

Wenn Ihr aktueller Schutz nur eine dieser Ebenen abdeckt, sind Sie nur zur Haelfte geschuetzt. Und Angreifer wissen das.


Schützen Sie Ihren Server vor DDoS-Angriffen

Kostenloser Schutz mit 5-Minuten-Einrichtung. 1 TB Traffic inklusive.

Kostenlos testen


Weitere Artikel