Was ist HTTP?
HTTP, das Hypertext Transfer Protocol, ist die «Sprache», die dein Webbrowser und die Webseiten miteinander sprechen, wenn du das Internet benutzt. Es wird hauptsächlich eingesetzt, um Webseiten aus dem Internet in einen Webbrowser zu laden.
Der Server erhält die entsprechende Anfrage und schickt dann die Webseite zurück an deinen Browser. Das geschieht über eine HTTP-Antwort. Es ist, als würdest du einen Brief an jemanden schreiben und dann eine Antwort mit der gewünschten Information erhalten.
Angriffe über HTTP
Mit zunehmender Beliebtheit von HTTP steigen die Sicherheitsrisiken und wie jedes Protokoll ist auch HTTP anfällig für Angriffe. Angreifende nutzen beispielsweise Denial-of-Service (DoS) - Angriffstechniken, um die Erreichbarkeit einer Webseite einzuschränken. Ein DoS-Angriff kann mit einer Überflutung eines Briefkastens mit irrelevanten Briefen verglichen werden, sodass echte, relevante Briefe nicht mehr zugestellt werden können. In der Welt des Internets bedeutet das, dass eine Webseite oder ein Onlinedienst mit so vielen Anfragen bombardiert wird, dass er nicht mehr in der Lage ist, legitime Anfragen zu bearbeiten. Dies führt dazu, dass die Webseite oder der Dienst für normale User nicht mehr verfügbar ist. Ein solcher unterbrochener Dienst kann schwerwiegende Folgen haben, da er den Benutzenden den Zugang zu wichtigen Ressourcen oder Diensten verwehrt. Dies kann zu Umsatzeinbussen führen, insbesondere für Unternehmen, die auf ihre Onlinepräsenz angewiesen sind, um Produkte zu verkaufen oder Dienstleistungen anzubieten. Überdies kann ein unterbrochener Dienst das Vertrauen der User beeinträchtigen und zu einem Imageverlust führen.
Verbindung zwischen HTTP und TCP
HTTP läuft über das Transmission Control Protocol (TCP). Als Ergebnis kann ein Webserver auch vielen TCP-bezogenen Angriffen ausgesetzt sein. Bei der Planung eines Schutzes für HTTP-Dienste ist es deshalb wichtig zu beachten, dass die Angriffsfläche viel breiter ist als nur über das HTTP-Protokoll. Jeder Distributed Denial-of-Service (DDoS) - Angriff verwendet heute mehrere Vektoren, um einen Denial-of-Service zu erzeugen. Um dies zu verhindern, sollte der Server in der Lage sein, sich vor all diesen Vektoren zu schützen. DDoS-Attacken ähneln DoS-Angriffen, mit der Ausnahme, dass die Anfragen von verschiedenen Quellen (Vektoren) versandt werden. Ein DDoS-Angriff funktioniert ähnlich wie die Überflutung von Briefkästen mit Briefen. Statt von einer einzelnen Person, werden sie von vielen verschiedenen Absendern gleichzeitig überhäuft. Diese «Briefe» sind in Wirklichkeit Datenpakete, die an Computer oder Websites gesendet werden. Durch die grosse Anzahl an Paketen wird die Internetverbindung oder Website überlastet, sodass sie für normale Benutzer unzugänglich wird.
Diese Angriffe können auf verschiedene Dienste und Protokolle abzielen, nicht nur auf HTTP. Aufgrund seiner Bedeutung für die Wirtschaft und der Verbreitung von HTTP wird das Protokoll aber häufig für DoS-Angriffe verwendet.
Welche Arten von Angriffen gibt es?
Methoden zur Eindämmung solcher Angriffe
HTTP-Flutangriffe von normalem Traffic zu unterscheiden, ist sehr aufwändig, da sie Standard-URL-Anfragen verwenden. Dies macht sie zu einer der anspruchsvollsten nicht schwachstellenbasierten Sicherheitsherausforderungen, mit denen Server und Anwendungen heute konfrontiert sind. Traditionelle ratenbasierte Erkennung ist bei HTTP-Flutangriffen unwirksam, da das Datenverkehrsvolumen bei HTTP-Fluten oft unter den Erkennungsschwellen liegt.
Die wirkungsvollsten Mechanismen zur Eindämmung beruhen auf einer Kombination von Traffic-Profiling-Methoden, darunter die Identifizierung von IP-Reputation, die Überwachung von abnormalem Verhalten und die Verwendung fortschrittlicher Sicherheitsherausforderungen (zum Beispiel Aufforderungen zum Parsen von JavaScript).
Web application firewall (WAF) - eine Lösung für solche Angriffe
Eine WAF, oder «Web Application Firewall» (Webanwendungs-Firewall), ist wie ein Sicherheitsdienst für eine Website oder eine Onlineanwendung. Stell dir vor, deine Website ist ein Haus und die WAF ist ein Sicherheitsdienst, der an der Tür steht und alle eintretenden Personen überprüft, um sicherzustellen, dass sie keine Gefahr darstellen.
Wenn jemand versucht, deine Website zu besuchen, muss er an der WAF vorbei. Ähnlich, wie ein Sicherheitsdienst die Identität und Absichten von Personen überprüft, überprüft die WAF den eingehenden Datenverkehr auf deiner Website. Sie prüft, ob die Anfragen von echten Usern kommen oder ob es sich um böswillige Angriffe handelt, wie Versuche, die Website lahmzulegen oder auf vertrauliche Daten zuzugreifen.
Wie funktioniert eine WAF?
Eine WAF schützt deine Webanwendungen, indem sie jeglichen bösartigen HTTP/S-Verkehr, der über die Webanwendung läuft, filtert, überwacht, blockiert und verhindert, dass unbefugte Daten die Anwendung verlassen. Dies geschieht durch die Einhaltung eines Satzes von Richtlinien, die dabei helfen zu bestimmen, welcher Verkehr bösartig ist und welcher sicher. Genau wie ein Proxyserver als Vermittler fungiert, um die Identität eines Clients zu schützen, arbeitet eine WAF in ähnlicher Weise, jedoch umgekehrt – als sogenannter Reverse-Proxy – und fungiert als vermittelnde Partei, die den Webanwendungsserver vor einem potenziell bösartigen Client schützt.
WAF-Sicherheitsmodelle
Was sind netzwerkbasierte, hostbasierte und cloudbasierte WAFs?
Eine WAF kann auf eine von drei verschiedene Arten implementiert werden, von denen jede ihre eigenen Vor- und Nachteile hat:Wie wir unsere Kundschaft vor HTTP- und DDoS-Angriffen schützen
Fazit
HTTP kann verschiedenen Angriffen ausgesetzt sein, wie DoS, Injection, XSS, CSRF, SYN-Flut und GET-Flut. Eine WAF ist eine umfassende Lösung, um Webanwendungen vor solchen Angriffen zu schützen. Sie kann netzwerk-, host- oder cloudbasiert sein. Bei der Auswahl ist eine gute Vorbereitung wichtig und bei Nine helfen wir gerne dabei, geeignete Schutzmassnahmen zu finden und umzusetzen.
Titelbild: Wie der Botnet-Controller bei einem Angriff auf einen Server kompromittierte Hosts steuert. Bildquelle: https://www.wallarm.com/what/website-security-and-prevention-of-a-http-flood-attack