Web-Browser basierter DDoS-Angriff mit HTML5 und JavaScript


Hausarbeit, 2018

24 Seiten, Note: 1,7


Leseprobe

Inhaltsverzeichnis

1 Einleitung

2 Theorie
2.1 Beschreibung und Funktionsweise einer DDoS-Attacke
2.2 Die kurze Geschichte eines typischen DDoS-Angriffs
2.2.1 Scanning
2.2.2 Setting up
2.2.3 Attack
2.3 Variationen und bekannte Angriffsarten
2.3.1 Angriffe ohne Verbindungsaufbau
2.3.2 Angriffe mit Verbindungsaufbau
2.3.3 Angriffe unter Ausnutzung von HTML 5 und JavaScript
2.4 Fallstudien zu bekannten Attacken
2.4.1 Anonymous gegen Scientology
2.4.2 Web-Browser basierte DDoS-Attacke gegen GreatFire.org
2.4.3 Web-Browser basierte DDoS-Attacke gegen Cloudflare.com
2.5 Grenzen und Möglichkeiten

3 Praxis: Infrastruktur
3.1 Zielsetzung
3.2 HTML5
3.3 JavaScript
3.4 Webserver

4 Praxis: Implementierung

5 Praxis: DDoS-Angriffe
5.1 Vorbereitung
5.2 Durchführung
5.2.1 ImageFlooding
5.2.2 HttpFlooding
5.2.3 SeverEventFlooding
5.2.4 WebsocketFlooding
5.3 Auswertung und Spurensuche
5.3.1 ImageFlooding

6 Anhang
6.1 Quellcode HTML5
6.2 Quellcode JavaScript
6.2.1 ImageFlooding
6.2.2 HttpFlooding
6.2.3 EventFlooding
6.2.4 WebsocketFlooding
6.3 Quellenverzeichnis

1 Einleitung

Die vorliegende Hausarbeit ist ein Thema aus einem ganzen Komplex an Themen, die den Studenten der digitalen Forensik des Jahrgangs 2018 der Hochschule Albstadt-Sigmaringen im Studienmodul M103 zur Auswahl gestellt wurden. Gegenstand dieses Moduls sind die Grundlagen des Internets. Der Titel meiner Hausarbeit lautet „Web-Browser basierter DDoS- Angriff mit HTML5 und JavaScript“. Die Aufgabenstellung sieht vor, dass der Sachverhalt zum einen theoretisch erarbeitet wird und zum anderen an einem Praxisbeispiel demonstriert wird.

Abschnitt II. widmet sich der theoretischen Annäherung an das Thema. In diesem Teil wird unter anderem erklärt woher die Bezeichnung DDoS stammt und wie ein Angriff abläuft.Des Weiteren werden die verschiedenen Angriffsarten beschrieben und exemplarisch prominente DDoS-Angriffe der letzten Jahre dargestellt und, soweit als möglich,nachvollzogen. In diesen Kontexten wird im speziellen auf die Aspekte einer Web-Browser basierten Angriffsform eingegangen.

Abschnitt III. und IV. bedienen sich der erarbeiteten Theorie und bereiten das Praxisbeispiel unter anderem vor, indem zunächst die Infrastruktur und die beteiligten Elemente dargestellt werden. Dazu zählen vor allem der anzugreifende Webserver und die Webseite, mittels der der Angriff simuliert werden soll. Anschließend wird die Implementierung nachvollzogen.

Abschnitt V. soll protokollarisch den Verlauf des durchgeführten Praxisversuches dokumentieren. Darunter fällt auch die Untersuchung von möglichen Spuren, die beim Versuch hinterlassen wurden.

Schlussendlich sind in Abschnitt VI. die Verzeichnisse über die nötigen Nachweise zu finden.

2 Theorie

2.1 Beschreibung und Funktionsweise einer DDoS-Attacke

Zunächst soll an dieser Stelle eine kurze Einführung in Distributed-Denial-of-Service(DDoS)-Attacken gegeben werden, bevor wir uns der Web-Browser basierten Variante widmen. Ist die Thematik DDoS einmal erklärt, lässt sich daraus sehr schnell ableiten was unter dem Titel der Hausarbeit konkret zu verstehen ist.

Bei einem DDoS-Angriff handelt es sich üblicherweise um einen netzwerkbasierten DoSAngriff mit der Absicht einen Client, einen Service oder ein ganzes System außer Betrieb zu nehmen.

Denial-of-Service-Angriffe, die über ein Netzwerk gegen ein System gerichtet sind,beabsichtigen eine Leistungseinschränkung oder komplette Außerdienststellung (denial,keine weiteren Anfragen durch Dritte möglich) des anvisierten Opfers. Dies wird realisiert,indem die entsprechenden Ressourcen, die das Zielsystem zur Verfügung stellt,aufgebraucht werden. Unter Ressourcen sind in diesem Fall Prozesse, Speicherkapazitäten und Ähnliches zu verstehen. Der Angriff erfolgt indirekt, ein System wird genutzt, um ein weiteres, das Zielsystem, anzugreifen [9].

DDoS macht sich im Besonderen eine weit ausgedehnte (verteilte, daher distributed)Struktur aus Clients, Master und Daemon (so genannte Zombies) zu Nutze.

Auslöser des Feldzuges gegen das Zielsystem ist eine Aktion am Client, welcher die Master ansteuert. In diesem Zusammenhang sind unter Master kompromittierte Hosts zu verstehen, die mit einer bösartigen Software zur Steuerung mehrerer Daemons ausgestattet sind. Daemons wiederum sind ebenfalls infizierte Hosts, die eine Software ausführen, die beispielsweise eine Überflutung des Zielsystems mit Paketen zur Folge hat.Der Erfolg eines Angriffes hängt demnach hauptsächlich von der Menge der infizierten Hosts (auch „Agentensysteme“), sowie deren koordinierter und gleichzeitiger Zusammenarbeit ab, um eine möglichst hohe Payload zur Überlastung bezüglich Bandweite, Rechenkraft und ähnlichen Ressourcen des Ziels zu generieren [4].

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1: Prinzipskizze Distributed Denial of Service[4]

Web-Browser basierte DDoS-Angriffe sind hingegen viel perfider, sie kommen ohne einen Verbund an infizierten Maschinen aus. Stattdessen reicht es völlig aus eine Webseite mit eingebetteten Schadcode zu besuchen, die Maschine des Clients muss dabei nicht aktiv kompromittiert werden. Das Clientsystem stellt allein seine Rechenkraft und seine Netzwerkverbindung ‚zur Verfügung‘, um den Schadcode der Seite für die Dauer des Besuches immer und immer wieder auszuführen und das Zielsystem damit gegebenenfalls zu überfordern[1].

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2: Prinzipskizze Web-Browser basierter DDoS- Angriff[1]

2.2 Die kurze Geschichte eines typischen DDoS-Angriffs

2.2.1 Scanning

Die Vorbereitung eines klassischen DDoS-Angriffs erfordert, wie im vorherigen Abschnitt beschrieben, einen großen Verbund an rekrutierten Hosts, um das Zielsystem bezüglich seiner Ressourcen zu erschöpfen. Bevor die eigentliche Attacke also erfolgen kann, muss bereits mit krimineller Absicht eine Reihe von anderen Systemen befallen werden. Zu diesem Zweck wird das Netz als erstes nach angreifbaren Hosts untersucht, dieses‚Scanning‘ erfolgt automatisiert mittels weit verbreiterter und leicht erhältlicher Tools. Ist ein Rechnersystem mit dem nötigen Schadcode infiziert, kann dieses, ebenfalls automatisiert, weiter nach anfälligen Opfern suchen, diese infizieren und der Kreislaufbeginnt von vorn [4].

Der Ablauf bei einem Web-Browser basierten DDoS-Angriff weist Ähnlichkeiten auf, was die bisher beschriebenen Phasen angeht. Das Scanning besteht darin eine geeignete Schwachstelle in der Webseite zu finden, in die der JavaScript-Code eingeschleust werden soll. Davor muss die Art und Weise, wie JavaScript seinen Weg auf die Seite findet, genauestens analysiert werden. Ist eine entsprechende Schwachstelle gefunden,lässt sich diese meist auch auf andere Zielseiten anwenden [1].

2.2.2 Setting up

Zurück zum klassischen DDoS: Das Scanning ist abgeschlossen, die potentiellen Zombies sind entdeckt, es folgt die letzte Phase vor dem Angriff: Der Aufbau. Ist ein System mit dem nötigen Schadcode infiziert, kann dieses, ebenfalls automatisiert, weiter nach anfälligen Opfern suchen und diese infizieren. Die Weiterverbreitung des Schadcodes kann auf unterschiedliche Arten erfolgen und macht sich verschiedene Aspekte zu Nutze.Dies wird im Rahmen der vorliegenden Arbeit an dieser Stelle nicht weiter vertieft. Ein Netz an kontrollierten Systemen kann heutzutage vergleichsweise schnell aufgebaut werden, wenn die nötigen Tools entsprechend konfiguriert sind und ausreichendAngriffsflächen in dem zu scannenden Bereich eines Netzwerkes vorhanden sind. Die Attacken mittels des Mirai-Botnetzes, welches sich schlecht gesicherte Teilnehmer des Internet of Things einverleibte, haben das in der jüngsten Vergangenheit hervorragend demonstriert.

Bei Web-Browser basierten DDoS-Angriffen ist das Mittel der Wahl die Webseite von der aus das JavaScript ausgeführt wird. Denkbar ist natürlich der Aufbau einer eigenen Webseite, die den Code bereits benutzt. Da aber der Angriff von der Anzahl der Webseitenbesucher abhängt, bietet es sich an Seiten zu identifizieren, die bereits einen hohen Traffic besitzen und Überlegungen anzustellen, wie der manipulierte Code eingeschleust werden kann. Ist der Code einmal eingebettet und wird er nicht entdeckt,können weitere Seiten mit hohem Besuchsaufkommen verändert werden, um die Verbreitung des Skriptes noch zu steigern [1].

2.2.3 Attack

Für die traditionelle DDoS-Attacke ist nun ein Netz aus infizierten Slaves etabliert und der eigentliche Angriff kann erfolgen. Zur Erinnerung: Ein Verbund aus infizierten Systemen besteht aus Master- und Slave-Maschinen. Das Kommando für die Attacke kann jedoch von einem einzigen Rechner erfolgen und eine ganze Lawine an Ereignissen auslösen.

Der Angreifer triggert koordiniert die Master seines kreierten Bot-Netzes an und löst beiihnen die Direktive für den Angriff aus. Die Master steuern die ihnen unterstehenden Strohmänner an und lösen damit den Befehl zur Datenüberflutung des Zielsystems aus.Ein Verschleiern (Spoofing) der IP-Adressen der Zombies ist dabei eine oft genutzte Technik, um dem unter Angriff stehenden System die Möglichkeit zu nehmen, den Ursprung des Angriffs herauszufinden oder den unerwünschten Traffic effizient herauszufiltern [4].

Web-Browser basierte DDoS-Attacken laufen in ihrer Schlussphase ähnlich ab. Der Angreifer schaltet den Code scharf, er wird ausführbar und mit den ersten Besuchern der Webseite beginnt der Angriff auch schon. Die Anzahl der Inhaltsaufrufe beim Zielsystem steigen messbar an. Eine Filterung ist zwar möglich, hat aber zur Folge, dass die aufrufende Seite Inhalt und Performance einbüßt. Die aufgerufene Seite, also das eigentliche Ziel des Angriffs, muss gestellte, auch legitime, Anfragen abweisen und steht auch für den eigenen Verkehr nicht mehr zur Verfügung.

2.3 Variationen und bekannte Angriffsarten

Klassische DDoS-Attacken lassen sich anhand ihrer Angriffsart in unterschiedliche Varianten einteilen. Zusammenfassend geht es dabei um das Mittel zum Zweck und die dazugehörigen identifizierten Schwachstellen bzw. Besonderheiten der Implementierung.An dieser Stelle wird eine grobe Unterteilung in Angriffen vorgenommen, die keine Verbindung benötigen und diejenigen, die eine Verbindung mit dem Zielsystem aufbauen,weil sie beispielsweise das jeweilige Protokoll ausnutzen. Bezogen auf die Aufgabenstellung wird außerdem beleuchtet wie Angriffe speziell unter Ausnutzung von HTML 5 und JavaScript erfolgen können und wie diese einzuordnen sind.

2.3.1 Angriffe ohne Verbindungsaufbau

Darunter sind an dieser Stelle die Angriffe gemeint, die das Zielsystem beeinträchtigen,indem sie z.B. eine Masse an Daten schicken ohne direkt eine Verbindung aufzubauen.

Webserver sind hierbei ein beliebtes Angriffsziel. Ein Webserver kann auf unterschiedliche Arten dazu gebracht werden Ressourcen zu verschwenden. Bekannt ist unter anderem die Variante einer Flut von Anfragen an den Server (hier speziell Apache2), die jeweils möglichst viele HTTP-Header integriert haben. Weiterhin können in massenhaft angefragten URLs möglichst viele Frontslashes (/) untergebracht werden und damit verhindert werden, dass der Server weitere legitime Anfragen verarbeiten kann. Außerdem sind noch so genannte CrashIIS- Attacken bekannt, die sich vor allem gegen den Microsoft Server richten und mittels falsch kreierter GET-Anfragen Probleme verursachen.

Ein weiterer verbindungsloser Angriff, für den DDoS missbraucht werden kann und dessen Ziel nicht unbedingt ein Webserver sein muss, ist eine smurf-Attacke. Dazu werden an die Broadcast-Adressen von Subnetzen ICMP-Pakete gesendet, die aber mittels Manipulation als Absender die IP-Adresse des Opfers beinhalten. Jede, zum jeweiligen Subnetz gehörende, Maschine schickt seine Antwort an das Zielsystem und überlastet es damit.

Nicht zu verwechseln ist dies mit dem ‚Ping of Death‘, der darauf basiert, dass in einem gesendeten Paket mehr als die erlaubten 65536 Byte des IP-Protokolls gesendet werden und damit eventuell einen Absturz provoziert wird.

Eine weitere Abart von manipulierter Datenübermittlung ist die ‚Teardrop‘ benannte Attacke. In diesem Fall schickt der Angreifer ein Datenpaket in Richtung des Angegriffenen, das auf dem Weg dorthin fragmentiert und in kleinere Teile aufgeteilt wird.Im Zuge dessen wird ein Strom von IP-Fragmenten erzeugt, dessen Offset-Feld überladen ist. Dem Opfer bleibt die undankbare Aufgabe diese missgestalteten Datenbruchstücke wieder richtig zusammenzusetzen. Dieser Vorgang erschöpft die vorhandenen Mittel der Maschine und führt zum Crash oder Reboot [4].

Es gibt noch viele weitere Abwandlungen bezüglich der verbindungslosen Angriffe und weitere werden sicherlich noch entdeckt werden. Dies soll jedoch als Einblick genügen und eine Vorstellung davon liefern, was unter dieser Art von Invasion zu verstehen ist.

2.3.2 Angriffe mit Verbindungsaufbau

Unter den verbindungsorientierten Typen von Angriffen sind beispielsweise SYN-Floods zu verstehen, die den Drei-Wege Handschlag von TCP dafür ausnutzen um Verbindungsressourcen zu binden. Anstatt den Austausch mit dem Opfer im dritten Schritt des Handshakes mit einem Acknowlegde ordnungsgemäß abzuschließen, bleibt die Rückfrage des Opfers im zweiten Schritt unbeantwortet. Das Zielsystem wartet weiterhin auf eine Antwort, eine halboffene TCP-Verbindung ist entstanden, die eine neue Anfrage auf dem gleichen Weg verhindert.

Einige Netzwerkarchitekturen legen für jede neue TCP/IP-Verbindung einen neuen Prozess an und auch hier ist es das Mittel der Wahl so viele halboffene Verbindungen wie möglich zu erzwingen, um weitere Anfragen von Außen zu blockieren. In die selbe Kategorie fällt der SSH Process Table Angriff, der bei der angegriffenen Maschine mit jedem Login auf einer neuen Secure Shell einen neuen Prozess belegt.

Auch UDP eignet sich als Mittel zum Zweck eines DDoS-Ansturms. Das nachfolgende Szenario wird auch als ‚UDP-Storm‘ bezeichnet und dieser funktioniert wie im Folgenden beschrieben. Der UDP-Verbindung eigen ist, dass zum einen jedes Mal Zeichen (Character) generiert (‚chargen-service‘) werden, wenn ein UDP-Paket erhalten wird. Zum anderen sorgt ein ‚echo-service‘ dafür, dass jegliche erhaltene Zeichen reflektiert werden.Nutzt man beide Mechanismen aus, so ist es mittels gespoofter Pakete, die die Opferadresse enthalten und auch an unbeteiligte Systeme geschickt werden können, möglich einen endlosen Strom an nutzloser Kommunikation zwischen Zombies und dem Zielsystem zu generieren [4]. Diese Vorgehensweise eignet sich außerdem sehr gut, um das betroffene Netzwerk mit Traffic zu fluten.

[...]

Ende der Leseprobe aus 24 Seiten

Details

Titel
Web-Browser basierter DDoS-Angriff mit HTML5 und JavaScript
Hochschule
Hochschule Albstadt-Sigmaringen; Albstadt
Note
1,7
Autor
Jahr
2018
Seiten
24
Katalognummer
V454859
ISBN (eBook)
9783668881211
ISBN (Buch)
9783668881228
Sprache
Deutsch
Schlagworte
DDoS, JavaScript, HTML5, Web-Browser, IT-Security, IT-Forensik, Digitale Forensik
Arbeit zitieren
Lee Kirsten (Autor), 2018, Web-Browser basierter DDoS-Angriff mit HTML5 und JavaScript, München, GRIN Verlag, https://www.grin.com/document/454859

Kommentare

  • Noch keine Kommentare.
Im eBook lesen
Titel: Web-Browser basierter DDoS-Angriff mit HTML5 und JavaScript



Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden