Wie GitHub einen DDoS-Angriff erfolgreich abwehren konnte

Wie GitHub einen DDoS-Angriff erfolgreich abwehren konnte

Am Mittwoch, den 28. Februar 2018 um 9:15 Uhr Pacific Standard Time, wurde der beliebte webbasierte Hosting-Service für Software-Entwicklung GitHub, Opfer eines massiven DDoS-Angriffs, der Auswirkungen auf 20 Millionen Mitglieder weltweit hatte. Es war einer der größten DDoS-Angriffe, mit einem Spitzenwert des Angriffsverkehrs von 1,3 Tbps. Einige User, die sich gerade beim Code Check-in befanden, suchten direkt auf Twitter nach Antworten oder machten ihrem Unmut laut. Leider war auch die GitHub-Statusseite betroffen, was der Situation noch mehr Ungewissheit verlieh. Bereits wenige Minuten nach dem Angriff traten die DDoS-Abwehrsysteme von GitHub in Aktion, was die Störung auf ein Minimum reduzierte und den Angriff abwehrte. Hinter folgendem Link finden Sie eine Analyse des DDoS-Angriffs und der Schadensbegrenzung von GitHub.

Update (1. März 2018): GitHub wurde am Donnerstag, dem 1. März 2018 um 9:10 Uhr Pacific Standard Time (PST) Opfer eines zweiten DDoS-Angriffs. Die Verfügbarkeit sank um 61% (doppelt so stark wie beim gestrigen Angriff), aber die Dienste waren innerhalb von 15 Minuten wiederhergestellt. Die Auswirkungen des zweiten Angriffs scheinen stärker und globaler zu sein als die des ersten.

Abbildung 1: Besorgte Nutzer von GitHub nutzten Twitter, um ihre Erfahrungen auszutauschen und an Informationen zu gelangen.

Erste Anzeichen eines Angriffs

Um 9:15 Uhr PST machten einige unserer weltweiten Cloud-Agenten auf einen Rückgang der Verfügbarkeit von GitHub-Diensten aufmerksam. Die Verfügbarkeit des HTTP-Servers für www.github.com sank um 26% (Abbildung 2), was hauptsächlich auf Verbindungsfehler in der TCP-Signalisierungsphase zurückzuführen war. Verbindungsfehler deuten typischerweise auf ein tiefergehendes Problem auf der Netzwerkebene hin. Der gestiegene Paketverluste innerhalb der Netzwerkschicht bestätigte unsere Theorie.

Abbildung 2: Die HTTP-Verfügbarkeit für GitHub sank weltweit um 26%, was mit einem Netzwerkpaketverlust von 24% einherging.

Das Ziel eines DDoS-Angriffs ist es, Ressourcen zu überfordern, um den Zugriff auf einen Dienst vorübergehend zu unterbrechen. Dies kann auf viele Arten erreicht werden. Es ist beispielsweise gängige Praxis, das Netzwerk mit einer Vielzahl von Paketen zu überlasten. In diesem Fall kam es in einigen Netzwerkpfaden zu fast 100% Paketverlust (Abbildung 3), was auf einen Denial-of-Service-Angriff hindeutet.

Abbildung 3: Hohe Paketverluste im Netzwerk sind ein guter Indikator für eingeschränkte Ressourcen aufgrund eines DDoS-Angriffs.

Prolexic im BGP Path bestätigt DDoS-Angriff

Der Verdacht, dass GitHub von einem DDoS-Angriff betroffen war, wurde durch BGP-Daten weiter bestätigt. ThousandEyes erfasst mehrere Datensätze über verschiedene Netzwerkebenen hinweg, um die Anwendungsleistung und die Benutzererfahrung mit Netzwerkanomalien zu korrelieren. Innerhalb weniger Minuten nach dem Angriff bemerkten wir, dass Prolexic in den BGP AS Pfad eingeführt wurde, das mindestens 5 der Präfixe von GitHub erreichen konnte. Abbildung 4 zeigt eine dreidimensionale Darstellung der BGP-Erreichbarkeit von GitHub-Präfixen von mehreren Überwachungspunkten (BGP-Routenmonitore) aus. 100% unserer BGG-Monitore stellten Pfadänderungen fest. Vor dem Angriff führte GitHub (AS 36459) Peering mit 4 verschiedenen Upstream-ISPs aus, darunter Telia, Level 3 und NTT. Mit der wirksamen DDoS-Mitigation zog GitHub seine BGP-Routen (gekennzeichnet durch rot gestrichelte Linien) von seinen primären Upstream-ISPs zurück und etablierte ein neues BGP-Peering mit Prolexic (AS 32787). Prolexic ist eine Tochtergesellschaft von Akamai und eine beliebte DDoS-Mitigationsplattform. Diese Änderung des BGP-Pfades zwang den gesamten für GitHub bestimmten Traffic durch das Scrubbing-Center von Prolexic. Dies konnte den DDoS-Angriff abfangen und minimieren. Innerhalb von 15 Minuten, um 9:30 Uhr PST, waren die GitHub-Dienste wiederhergestellt (Abbildung 1), die Auswirkungen des DDoS-Angriffs waren also auf ein Minimum reduziert.

Abbildung 4: GitHub (AS 36459) trennt Routen von primären Upstream-Anbietern und stellt ein neues Peering mit Prolexic (AS 32787), einer DDoS-Mitigationsplattform her.

Eine erfolgreiche und effiziente DDoS-Abwehr

GitHub war bei der Abwehr des DDoS-Angriffs enorm effizient. Innerhalb weniger Minuten wurde der Angriff erkannt und DDoS-Abwehrmaßnahmen eingeleitet. Die DDoS-Abwehr wurde enorm schnell umgesetzt, darum ist es sehr wahrscheinlich, dass der gesamte Erkennungs- und Abwehrprozess automatisiert wurde (und das ist ziemlich beeindruckend!). Während die Auswirkungen des Angriffs nicht länger als 15 Minuten spürbar waren, floss der für GitHub bestimmte Datenverkehr noch bis zu 6 Stunden nach dem Angriff durch Bereinigungszentren von Prolexic. Die beiden Spitzen in der untenstehenden Zeitachse zur BGP-Pfadänderung (Abbildung 5) zeigen den jeweiligen Zeitpunkt, zu dem Prolexic in den AS-Pfad eingeführt und anschließend entfernt wurde.

Abbildung 5: Der für GitHub bestimmte Verkehr wurde bis zu 6 Stunden nach dem DDoS-Angriff an die Bereinigungszentren von Prolexic weitergeleitet.

Zwei Angriffe in zwei Tagen

Der gestrige Angriff war einzigartig in der Geschichte der DDoS-Angriffe. Es war mit 1,3 Tbps Angriffs-Traffic der größte DDoS-Angriff aller Zeiten. Innerhalb von 24 Stunden kam es jedoch zu einem weiteren DDoS-Angriff auf GitHub. Und dieser scheint schwerwiegendere Auswirkungen gehabt zu haben. Die Verfügbarkeit von GitHub fiel heute um 61%, verglichen mit den 26% am Vortag. Siehe Abbildung 6 und Abbildung 7, die die beiden DDoS-Angriffe aus Sicht der Service-Verfügbarkeit und des globalen Umfangs vergleichen. Genau wie gestern schritt Prolexic umgehend ein, um die Auswirkungen des Angriffs abzuschwächen.

Abbildung 6: 28 Februar 2018, DDoS-Angriff auf GitHub. Verfügbarkeit sank um 26%.
Abbildung 7: 1. März 2018, DDoS-Angriff auf GitHub. Verfügbarkeit sank um 61%. Die Auswirkungen scheinen im Vergleich zu gestern sehr weitreichend zu sein.

Überwachung der DDoS-Abwehr

DDoS-Angriffe treten immer häufiger auf und werden immer effektiver. Während der GitHub-Angriff nur minimale Betriebsunterbrechungen mit sich brachte und ein gut ausgeführter Abwehrprozess stattfand, können nicht alle DDoS-Angriffe gleich behandelt werden. Es ist jedoch immer hilfreich, sich einen Überblick darüber zu verschaffen, wie sich Ihr Abwehrdienst bei einem Angriff verhält und welche Auswirkungen dies auf die Nutzererfahrung hat. Ohne diese Transparenz über alle Ihre digitalen Services, können Sie Ihr Online-Business nicht effektiv steuern. Wenn Sie diese Art der Netzwerkintelligenz selbst erleben möchten, fordern Sie eine Demo an oder starten Sie direkt eine kostenlose Testversion von ThousandEyes.