Yahoo greift an (DDoS)

By | 25. Januar 2010

Da kommt man nichtsahnend in die Firma und beginnt mit den allmorgentlichen Checks der Server. Prompt springt mir der Webserver mit einer Prozessorauslastung von 100% ins Auge.

Sofort auf die Kiste verbunden und geguckt was da los ist. Mhhh w3wp.exe (Internet Infomation Server Dienst) steht auf 99% Prozessorlast. Mhh könnte ja sein, dass sich was festgefressen hat. Also Webapplikation einmal neugestartet. Dann war 30 Sekunden Ruhe. Danach schoß die Prozessorlast wieder auf 100%.

So langsam gehen die Alarmlampen im Kopf an. Internet Infomation Server Dienst neugestartet, danach Prozessorlast wieder auf 100%. Anruf beim Support unseres CMS. Rumgefummel an Config Dateien, Logs lesen… Nix besonderes gefunden.

Dann mal ein „netstat -ano“ gemacht und insgesamt 30 Verbindungen von *.crawler.yahoo.net gesehen. Kam mir nicht sonderlich komisch vor, vielleicht Crawlt Yahoo ja gerade unsere Seite. Irgendwer fährt da gerade ne DDoS Attacke auf unseren Webserver, so viel war sicher. Dann eine IP-Adresse aus China gesehen (Die klauen ja alles 😉 ) und erst mal ausgesperrt. Es wurde immer noch nicht ruhiger.

Dann alle IP-Adressen außer meiner eigenen vom Server ausgesperrt. Voila plötzlich Ruhe, keine Last mehr auf dem Prozessor. Bin dann gut ne halbe Stunde auf der Seite Rumgesurft ohne das der Prozessor sich auch nur über die 1% Marke bewegt hat.

Also Seite wieder für alle verfügbar geschaltet und schon ging es wieder los. 100% Auslastung innerhalb von 2 Minuten. Und wieder war der komische Yahoo Crawler dabei.

Wieder in die Logs geschaut und gesehen, dass der Yahoo crawler, die ganze Zeit versucht ca. 10.000 unsichtbare Adressen aus unserem Shop zu indexieren.

Robots.txt angepasst und einen Disallow für den Pfad erteilt, den der Yahoo Crawler versucht zu indexieren. 3 Mal dürft ihr raten wieviel das den Yahoo Crawler interessiert hat!

Richtig! Dem Ding war das Scheiß egal. Ok also härtere Maßnahmen: Jeder der ca. 10.000 Seiten ein Tag vergeben, die die Meldung 403 (Zugriff Verweigert) an den Crawler zurück geben soll. Aber auch das war dem Yahoo Crawler egal, er crawlt einfach weiter über die Seiten und versucht trotz 403 Meldung weiter zu machen. Dabei hat er die Prozessorlast immer auf 100% hochgetrieben.

Letzte Möglichkeit war dann nur noch das komplette Ausschließen des Yahoo Crawlers über seine IP Adresse. Danach war dann wieder Frieden.

Das Ende vom Lied:

  • Support Mitarbeiter vom CMS und ich sind um mindestens 3 Jahre gealtert.
  • 6 Stunden verschwendete Zeit wegen einem scheiß Bot.
  • Anruf bei Yahoo
  • E-Mail an Yahoo mit technischen Details, weil der Mensch am Telefon keinen Plan hat.
  • Warten auf Antwort der Yahoo Techies.

Bin mal gespannt wann Yahoo sich meldet. Im Netz geistern irgendwie merkwürdig viele Foreneinträge rum, die die selbe Symptomatik beschreiben. Bis die Ihren Bot nicht unter Kontrolle haben, besucht uns erstmal kein Yahoo Crawler mehr.

Ausserdem: Wer bitteschön kommt auf die Idee seinen Crawler „Slurp“ zu nennen ? Slimer von den Ghostbusters wäre da treffender, denn der hat genauso einen Unfug gemacht.

Das Schlimme an der Sache war, dass ich unsere Geschäftsleitung darüber informiert habe, dass wir angegriffen werden. Diese entschied: „Ziehen Sie den Stecker“ (Was ich natürlich nicht gemacht habe sondern nur externe IP-Zugriffe gesperrt.)

Und dann der Gang zur Geschäftsleitung….

…äääätsch wir wurden garnicht angegriffen, war nur Yahoo die ihren Crawler nicht im Griff haben. Erklär das mal einer, einem technisch komplett unwissenden Chef (was nicht negativ gemeint ist, ist ja schließlich meine Aufgabe mich damit auszukennen). Wir waren, dann doch alle froh, dass es kein böswilliger Angriff auf unser Unternehmen war und es sich als Fehler von Yahoo herausstellte. JA Fehler von Yahoo!!! Sämtliche anderen Crawler Bots besitzen so viel Intelligenz und „Anstand“ auf ein DISALLOW zu hören und nicht einfach weiter zu machen.

3 thoughts on “Yahoo greift an (DDoS)

  1. Infogurke

    Ist dir vielleicht in den Sinn gekommen, dass der Crawler nicht vor jedem Request die robits.txt checkt? Genau so verhalt es such mit dem 403er, der nur für die eine URL gültig ist.

    Das Problem ist wahrscheinlich, dass eurer CMS ziemlich bescheidene URLs baut.

    Reply
    1. executrex Post author

      Ja das ist mir in den Sinn gekommen. Daher ist der Crawler erstmal ausgesperrt. Ich gehe davon aus, dass der Crawler eine gecachte Version der Robots.txt benutzt hat bzw. auch andere gecachete Seiteninhalte die er mal gefunden hat. Sperre deshalb den Crawler für ein paar Tage aus und hoffe, dass er einen refresh macht. Sollte der Bot dann nochmal unsere seite besuchen erhält er hoffentlich die aktuelle robots.txt und die aktuellen 403 Antworten. Danke für den Hinweis

      Reply
  2. Auch ein Admin

    Tja, so spielt das Leben. Wir warten nun schon seit Weihnachten darauf das der Yahoo-Crawler mal ein bisschen in fahrt kommt und unsere Seiten indiziert.

    Reply

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.