Ende der Möglichkeiten

Es ist leider noch nicht vorbei. Um 11.27 Uhr heute gab es wieder eine heftige Attacke auf den Server. Ich bin am Ende meiner Möglichkeiten. Nach Rücksprache mit dem Provider versuchen wir nun mithilfe einer externe Firewall und dessen Log-Files mehr Details zu ermitteln. Das nehme ich jetzt persönlich.

got him?

Fast glaube ich den Schmutzbeutel, der seit Wochen meinen Server mehr oder weniger regelmäßig in die Knie gezwungen hat,  erwischt zu haben.

Ein intensives Studium der Log-Files blieb bis dato leider ohne Ergebnis, absolut nichts auffälliges zu finden. Selbst als ich die Logs einem Profi zur Ansicht aushändigte, konnte der mir nicht weiter helfen. So fürchtete ich, dass der unnütze Mensch eine unbekannte Lücke in Debian oder Apache, oder PHP oder MySQL ausnutzt und sah meine Möglichkeiten schon schwinden. Die endgültige Alternative wäre, vom Provider eine Firewall/Proxy vor den Server stellen zu lassen, doch zuvor wollte ich mit meinen Möglichkeiten versuchen der Sache auf den Grund zu gehen. Lernen heißt auch Erfahrungen machen.

Seit Tagen lies ich tagsüber eine Art Monitor in der Konsole meines Servers mitlaufen um nach Möglichkeit genau einen Zeitpunkt zu erwischen, wann „es“ passiert. Dafür nutzte ich top -u %APACHE-USER% , nur um die httpd Prozesse des Apache-Users im Blick zu haben. Im Schnitt gibt zwischen 10 und 30 dieser Prozesse auf meinem Server, je nachdem wie viele Besucher sich hier tummeln, ein Besucher entspricht einem httpd Prozess. Wenn ein Besucher für längere Zeit (600 Sekunden) nicht mehr geklickt hat, wird ’sein‘ Prozess (child) automatisch beendet.

Vergangene Woche ist es wieder passiert, mit einem Schlag und binnen Sekunden stieg die Anzahl der httpd Prozesse rapide an, bei weit über 150 lies der Apache dann letztlich seine Flügel hängen, er wurde überlastet und stieg daraufhin aus. Da ich ja schon in der Konsole war, konnte ich dann ziemlich zeitnah dann Maßnahmen einleiten, um den Apachen wieder zum laufen zu bekommen.

Ein anschließendes Studium der access_log (main) blieb jedoch immer ohne greifbares Ergebnis, bis auf ein paar normale Aufrufe war das Log zu dem Zeitpunkt leider leer. Der Apache war also so ausgelastet, dass er nicht man mehr ins Log schreiben konnte. Dran bleiben ist die Devise und so ritt ich noch einige seiner Attacken ab, begrenzte die Clients im Apache, setzte den  Timeout herab, die Menge der gleichzeitigen Zugriffe usw. Mehr oder weniger fummelt ich an Sachen herum, die ich so noch nicht kannte, aber durchaus interessant waren zu erfahren. Ob ich das in 2 Wochen jedoch noch weiß, wird sich allerdings dann noch zeigen.

Gestern hat hat dieses Stück Dreck gleich 2 Attacken gefahren, morgens um ca. 11Uhr und mittags. Bei der 2. Attacke hatte der Apache endlich ausreichend Zeit etwas in sein Log zu schreiben:

Endlich ein verwertbarer Hinweis um in den Logs der letzten Wochen nach ‚merkwürdigen‘ Aufrufen für diese Datei zu suchen. Siehe da, kurz bevor die Überlastungen stattfanden wurde immer zuerst diese PHP-Datei aufgerufen und kurz danach schmierte der Apache dann ab. Das ist das Muster, nachdem ich sucht habe.

Die PHP-Datei macht nichts anderes, als in der Sidebar ein Bild in zufälliger Reihenfolge aus meiner 365-Tage Knipserei einzublenden. Aber scheinbar war das sein Angriffspunkt, warum und wozu auch immer. Mittlerweile habe ich diese Funktion gegen die Flickr-Badge ersetzt. Aber ich habe endlich eine IP, die laut ripe.net zur Telekom gehört. Über deren Interface http://www.t-com.de/ip-abuse habe ich die IP gemeldet, zusätzlich habe ich die IP per deny.hosts generell für meinen Server gesperrt. Nun bin ich gespannt.

So sehr ich mich auch wegen dieses Idioten geärgert habe, das Verfolgen und das Nachvollziehen hatte auch wieder einen gewissen Reiz und hat mir merkwürdigerweise auch wieder Spaß gemacht, irgendwie zumindest

Attacke – schon wieder

Gestern zwischen 18.30 Uhr bis heute morgen um 06.20 Uhr hat es mal wieder ein nutzloser Mensch versucht mit einer massiven Attacke meinen Server zu hacken. Gelungen ist ihm das nicht, doch haben die schieren Massen an Seitenaufrufe den Kleinen in die Knie gezwungen. Er ist auch nicht wie zuvor abgeraucht sondern hat brav und folgsam alle Aufrufe im Stapel bearbeitet bzw. umgeleitet. Und doch war die lange Attacke von mir unbemerkt, weil ich in Karlsruhe und offline war. Nun ja, irgendwann macht der Arsch einen Fehler und dann werde ich der Rasenmäher sein, der über den Seinen hinweg fahren wird. *foshizzle