IE-Loop of death :)

Bei einem meiner Server kam es letztens zu ein paar kleinen aber doch merklichen Verzögerungen im Zugriff.(merklich in dem Sinne, dass Nagios eine Warnung gab). Nichts besonderes eigentlich. Der Server ist eh schon fast 10 Jahre alt und beherbergt 134 aktive Webauftritte. Da kann es mal vorkommen, dass wir diverse dDOS-Attacken haben oder ein Skript aus dem Ruder gelaufen ist. Meist bemerkt man das garnicht.

Der Server-Status machte dann auch auf einen Webauftritt aufmerksam, der verdächtig häufig von nur wenigen IP-Adressen aufgerufen wurde. Dafür aber massenhaft.
Hier ein Bild der Statistik der Zugriffe:

Das sah dann eigentlich nach einem normalen dDOS aus. Stutzig machte aber dann der Fakt, daß es IP-Adressen aus verschiedenen Netzen waren. (Soweit wir das jedenfalls feststellen konnten – denn wir haben das letzte Oktet der IP nicht, da dies anonymisiert wird).
Zwei weitere Dinge waren in der Logdatei auffällig: 1. Die Zugriffe kamen nur von verschiedenen Versionen des Internet Explorers. 2. Die Zahl der Anfragen nach Status-Code 302 ( Seite an anderer Stelle gefunden) war enorm hoch: 5.718.357 .

Was war die Ursache?

Der Kunde hatte in seinem Webauftritt in seiner .htacess-Datei die Directive genutzt um eine eigene 404-Seite aufzurufen:

ErrorDocument 404 http://www.DOMAINNAME.de/404page.html

Soweit, so gut.
Dummerweise hat er vergessen, die Datei 404page.html anzulegen.

Folglich kam es zu einem Loop: Jemand mit dem Internet Explorer wollte eine nicht vorhandene Seite aufrufen. Daraufhin lieferte der Webserver mit dem Code 302 eine neue URL aus. Der Browser rief diese URL dann auf und der Webserver antwortete wie zuvor.
Und der Internet Explorer (und laut Statistik nur der IE in den Versionen 7 und 8 ) fiel darauf hinein…
Andere Browser stellten den Loop fast sofort von selbst fest und brachten eine entsprechende Fehlerseite.

2 Kommentare zu “IE-Loop of death :)

Kommentarfunktion ist geschlossen.

  1. Antwortet Apache da nicht normalerweise mit einer Apache-typischen, weißen Seite „404, file not found. Additionally, the 404-file was not found.“?