Ein Denial of Service (DoS)-Angriff ist ein böswilliger Versuch, die Verfügbarkeit eines Zielsystems, wie etwa einer Website oder einer Anwendung, für legitimierte Endbenutzer zu beeinträchtigen. In der Regel generieren Angreifer hohe Volumen an Paketen oder Anfragen, die letztendlich das Zielsystem überwältigen. Bei einem Distributed Denial of Service (DDoS)-Angriff verwendet der Angreifer mehrere kompromittierte oder gesteuerte Quellen, um den Angriff zu generieren.
Im Allgemeinen können DDoS-Angriffe danach aufgegliedert werden, welche Ebene des Open Systems Interconnection (OSI)-Modells sie angreifen. Sie erfolgen am häufigsten auf die Ebenen Netzwerk (Ebene 3), Transport (Ebene 4), Präsentation (Ebene 6) und Anwendung (Ebene 7).
# | Ebene | Anwendung | Beschreibung | Vektorbeispiel |
7 | Anwendung | Daten | Netzwerkprozess für Anwendung | HTTP-Floods, DNS-Abfrage-Floods |
6 | Präsentation | Daten | Datenrepräsentation und -verschlüsselung | SSL-Missbrauch |
5 | Vortrag | Daten | Kommunikation zwischen Hosts | nicht verfügbar |
4 | Transport | Teile | End-to-End-Verbindungen und Zuverlässigkeit | SYN-Floods |
3 | Netzwerk | Pakete | Pfadbestimmung und logische Adressierung | UDP-Reflection-Angriffe |
2 | Datenverbindungen | Frames | Physische Adressierung | nicht verfügbar |
1 | Physisch | Bits | Medien-, Signal- und Binärübertragung | nicht verfügbar |
Wenn Sie über Vorkehrungen für derartige Angriffe nachdenken, ist es hilfreich, diese Angriffe einzuordnen: Angriffe auf Infrastrukturebene (Ebenen 3 und 4) und auf Anwendungsebene (Ebenen 6 und 7).
Angriffe auf Infrastrukturebene
Angriffe auf Ebene 3 und 4 werden in der Regel als Angriffe auf Infrastrukturebene kategorisiert. Diese stellen zudem den häufigsten Typ von DDoS-Angriffen dar und enthalten Vektoren wie synchronisierte (SYN) Floods und andere Reflection-Angriffe wie User Datagram Packet (UDP) Floods. Diese Angriffe weisen in der Regel eine hohes Volumen auf und überlasten die Kapazität des Netzwerks oder der Anwendungsserver. Glücklicherweise weisen diese Angriffe allerdings auch einen Typ mit klaren Signaturen auf und sind einfacher zu erkennen.
Angriffe auf Anwendungsebene
Angriffe auf Ebene 6 und 7 werden häufig als Angriffe auf Anwendungsebene kategorisiert. Diese Angriffe erfolgen zwar weniger häufig, sind aber tendenziell ausgeklügelter. Diese Angriffe weisen in der Regel ein geringes Volumen im Vergleich zu Angriffen auf Infrastrukturebene auf, konzentrieren sich allerdings tendenziell eher auf besonders teure Teile der Anwendung, die dadurch für echte Benutzer unerschwinglich werden. Beispiel: Eine Flut von HTTP-Anfragen auf einer Anmeldungsseite oder eine teure Such-API oder sogar Wordpress XML-RPC Floods (auch bekannt als Wordpress Pingback-Angriffe).
Angriffsfläche verringern
Eine der ersten Techniken zum Abschwächen von DDoS-Angriffen ist die Minimierung der Oberfläche, die angegriffen werden kann. Dadurch werden die Optionen für Angreifer eingeschränkt und Sie müssen Schutzvorkehrungen an nur einem Ort treffen. Wir möchten sicherstellen, dass unsere Anwendungen oder Ressourcen nicht in Kontakt mit Ports, Protokollen oder Anwendungen gelangen, von denen sie keine Kommunikation erwarten. Dadurch werden die möglichen Angriffspunkte minimiert und wir können uns auf die Vorkehrungen konzentrieren. In einigen Fällen können Sie dies tun, indem Sie Ihre Rechenressourcen hinter Content Distribution Networks (CDNs) oder Load Balancer platzieren und den direkten Internetdatenverkehr auf bestimmte Teile Ihrer Infrastruktur wie etwa Datenbankserver begrenzen. In anderen Fällen können Sie Firewalls oder Access Control Lists (ACLs) verwenden, um zu steuern, welcher Datenverkehr Ihre Anwendungen erreicht.
Skalierung planen
Die beiden wichtigsten Überlegungen zum Abschwächen groß angelegter DDoS-Angriffe sind Bandbreite oder Übertragungskapazität sowie Serverkapazität, die die Angriffe aufnehmen und abschwächen.
Übertragungskapazität. Bei der Gestaltung Ihrer Anwendungen muss sichergestellt sein, dass Ihr Hostinganbieter ausreichend redundante Internetkonnektivität bereitstellt, die Ihnen die Abwicklung hoher Datenvolumina erlaubt. Da das ultimative Ziel von DDoS-Angriffen lautet, die Verfügbarkeit Ihrer Ressourcen/Anwendungen zu beeinträchtigen, sollten Sie diese nicht nur in der Nähe Ihrer Endbenutzer, sondern auch in der Nähe von großen Internetknotenpunkten platzieren, die Ihren Benutzern einfachen Zugriff auf Ihre Anwendung auch bei hohen Datenvolumina ermöglichen. Darüber hinaus können Webanwendungen einen Schritt weitergehen und Content Distribution Networks (CDNs) sowie Smart DNS Resolution Services einsetzen, die eine zusätzliche Ebene der Netzwerkinfrastruktur zum Bereitstellen von Inhalten und zum Auflösen von DNS-Abfragen an Standorten bieten, die häufig näher bei Ihren Endbenutzern liegen.
Serverkapazität. Die meisten DDoS-Angriffe sind volumetrische Angriffe, die zahlreiche Ressourcen benötigen. Daher ist es wichtig, dass Sie Ihre Rechenressourcen schnell skalieren können. Sie können dies entweder durch Verwenden größerer Rechenressourcen oder von Rechenressourcen mit Funktionen wie teuren Netzwerkschnittstellen oder Enhanced Networking erreichen, die größere Volumina unterstützen. Zudem werden häufig Load Balancer zur fortlaufenden Überwachung und Umschichtung von Lasten zwischen Ressourcen verwendet, um Überlastungen einzelner Ressourcen zu verhindern.
Unterscheiden zwischen normalem und nicht normalem Datenverkehr
Immer wenn wir erhöhten Datenverkehr an einem Host feststellen, ist die allererste Reaktion, nur so viel Datenverkehr zuzulassen, wie unser Host abwickeln kann, ohne die Verfügbarkeit zu beeinträchtigen. Dieses Konzept wird als Quotenbegrenzung bezeichnet. Fortgeschrittenere Schutzmaßnahmen gehen einen Schritt weiter und akzeptieren nur berechtigten Datenverkehr, indem sie die einzelnen Pakete selbst analysieren. Dazu müssen Sie die Eigenschaften des berechtigten Datenverkehrs kennen, der das Ziel in der Regel erreicht, um die Pakete mit dieser Basis zu vergleichen.
Bereitstellen von Firewalls für ausgeklügelte Angriffe auf Anwendungen
Die Verwendung einer Web Application Firewall (WAF) gegen Angriffe, wie etwa SQL Injection oder Cross-Site Request Forgery, die versucht, Schwachstellen in der Anwendung zu finden, hat sich bewährt. Zudem sollten Sie aufgrund der einzigartigen Natur dieser Anfgriffe einfach benutzerdefinierte Vorkehrungen gegen unberechtigte Anfragen erstellen können mit Merkmalen wie Tarnung als gutwilliger Datenverkehr oder Ursprung von böswilligen IPs, unerwarteten Geographien usw. Gelegentlich ist dies zudem hilfreich bei Vorkehrungen gegen Angriffe, um Expertensupport zu erhalten und Datenverkehrsmuster studieren und benutzerdefinierte Schutzmaßnahmen erstellen zu können.
Ihr Konto befindet sich in der kostenlosen AWS-Stufe. Hier können Sie kostenlos praktische Erfahrungen mit der AWS-Plattform und den Produkten und Services sammeln.
Alle AWS-Kunden profitieren ohne zusätzliche Kosten vom automatischen Schutz durch AWS Shield Standard.