Noch vor Kurzem habe ich euch Tipps dazu gegeben, wie ihr Hacker-Angriffe vermeiden könnt. Nun war ich selbst dran.
In der Nacht vom 03.04 auf den 04.04 wurden sowohl WWW Coding als auch ein weiteres Projekt, was auf dem selben Server liegt, gehackt und waren nicht mehr erreichbar.
Der Hacker ZeynnymouZ hatte sich an den Webprojekten zu schaffen gemacht. Die index.php wurde jeweils in index_backup.txt umbenannt und eine eigene Prestige-Datei hinterlegt, die auf den Hacker und seinen erfolgreichen Angriff verwies. Wer sich die Liste aller Angriffe dieses Hackers anschaut, sieht, dass er schon häufiger in den Untiefen des World Wide Webs unterwegs war.
1. Der Schock
Als erstes ist mir das nur bei einem anderen Projekt, was auf dem selben Webspace liegt, aufgefallen. Dort war ein eigenes System installiert und ich war neugierig, welche Sicherheitslücke ich übersehen haben könnte.
Also schnell die Log-Files heruntergeladen. Dann kam schon die erste Ernüchterung, dank Hinweise deutscher Datenschützer speichere ich keine IP-Adressen in meinen Log-Dateien. Na super, so kennt man nicht mal die IP des Hackers.
Immerhin konnte ich so rekonstruieren, wie sich der Hacker Zugriff auf alle Projekte dieses Webspaces verschaffen konnte.
Als erstes fällt auf: In den 3 Tagen vor dem Angriff gab es 7817 Login-Versuche auf die /wp-login.php. Normal sind, durch zahlreiche Bots, 500 an einem Tag. Das ist die erste Auffälligkeit.
2. Die Analyse
Bei den Tausenden Einträgen ist es gar nicht so leicht sich zurecht zu finden. Wie finden wir nun also die entscheidenden Einträge?
Ein Anhaltspunkt sind die auffälligen Login-Einträge. Wenn man schon nicht die IP-Adresse speichert, hat man doch den Browser (in unserem Fall Mozilla 5.0). Damit kann man, etwa mit der Suchfunktion eines Texteditors oder mit einem kleinen Skript, die Aufrufe dieses Besuchers herausfiltern.
Zweiter, sehr wichtiger Anhaltspunkt ist die Erstellungszeit der index_backup.txt. Diese wurde am 03.04.2015 um 16:31:00 angelegt. Schauen wir uns diesen Zeitraum an, wird es interessant:
Das Plugin Simple Ads Manager war verantwortlich für eine Sicherheitslücke. Mit Aufrufen wie /wp-content/plugins/simple-ads-manager/temp.php?y=/PFAD/&view=/DATEI-PFAD/ konnten anscheinend beliebige Dateien ausgelesen werden. Anschließend überschrieb der Hacker mit einem POST-Request die entsprechenden Dateien: /wp-content/plugins/simple-ads-manager/temp.php?y=/PFAD/&edit=/PFAD/index_backup.txt
Zunächst einmal ist es beruhigend zu wissen, dass nicht meine eigene Software Schuld war. Mein Administrationssystem ist recht übersichtlich und man könnte fast sagen, ich weiß, was wo steht. So kann ich Sicherheitslücken längst nicht ausschließen, bei komplexen System wie WordPress und seinen Plugins, ist es aber durchaus wahrscheinlicher, dass sich mal die ein oder andere Sicherheitslücke findet.
Normalerweise installiert man dann das entsprechende Update und hat seine Ruhe. Doch ich war bei WWW Coding in den letzten Monaten eher inaktiv und habe meine Energie anderen Projekten gewidmet. Dementsprechend waren die Plugin-Versionen veraltet und das hat sich jetzt gerächt.
Hinter den massenhaften Angriffen auf meine /wp-login.php steckt zwar augenscheinlich der gleiche Hacker, doch war er damit erfolglos, wohl auch dank des Plugins Limit Login Attempts. Erst nach dieser Attacke ging es an die Schwachstellen einzelner Plugins, wo der Hacker einen Volltreffer landen konnte.
Allerdings kannte er den eigentlich geheimen Nutzer-Namen. WordPress empfiehlt zwar extra bei der Installation nicht „admin“ zu wählen, befolgt man diesen Rat, lässt sich – selbst wenn man einen anderen öffentlichen Namen wählt – der „geheime“ Name recht leicht über ein paar URL-Aufrufe abfragen.
3. Die Lehren für die Zukunft
Was werde ich nun in Zukunft anders machen, um so einen Angriff zu verhindern?
Als erstes werden alle Server-Passwörter geändert. Womöglich hat der Hacker auch Konfigurationsdateien auslesen können, die die Passwörter für die MySQL-Datenbanken beinhalten. Um sicher zu gehen, werde ich diese Passwörter und Admin-Passwörter ändern.
Noch davor habe ich die Plugins auf den neuesten Stand gebracht. So auch das WP-Theme. Außerdem habe ich die automatischen Plugin-Updates aktiviert.
Ich habe nun selbst einmal all das ausprobiert, was der Hacker gemacht hat, und es funktioniert nicht mehr 🙂
In Zukunft wird es ein Hacker also noch schwerer haben, auf diese Website zuzugreifen.
Da mehrere, gutbesuchte Webprojekte für einige Stunden nicht erreichbar waren und mir dadurch Google-Trust und Umsätze verloren gegangen sind, wäre es wohl nur fair gewesen Strafanzeige gegen den Hacker zu stellen. Was schon mit IP-Adresse vermutlich im Sande verlaufen wäre, ist ohne IP-Adresse ein sinnloses Unterfangen.
Dieses Mal weiß ich von ZeynnymouZ nur, dass er seinen Namen auf den unterschiedlichsten Webprojekten hinterlassen hat. Dabei hat er in der Regel auf Schwachstellen verschiedener Content-Management-Systeme gesetzt. Aber ich kenne auch seinen Musik-Geschmack.
ZeynnymouZ hat bei mir ein Youtube-Video hinterlassen. Immerhin kann ich dem Ivan Torrent-Fan auch dankbar sein. Er hätte weitaus mehr Schaden anrichten können.
4. Wie findet man den Hacker?
Hast du selbst schon Erfahrungen mit Hacker-Angriffen gemacht? Vielleicht ist es sogar der gleiche Hacker, der dich heimsucht?
Ganz egal, was so ein Hacker anstellt, sein Verhalten ist in der Regel nach dem deutschen StGB strafbar. Denn zumindest dann, wenn der Server auf deutschem Boden steht und der strafrechtliche Erfolg hier eingetreten ist, kann das deutsche Strafrecht Anwendung finden. Dieser Hinweis stellt keine Rechtsberatung dar.
Doch, um einer Strafanzeige überhaupt zum Erfolg zu verhelfen, wären Informationen über den Hacker notwendig. Um ehrlich sein: Selbst mit der IP-Adresse des Hackers und eindeutigen Beweisen wird eine Strafanzeige in der Regel im Sande verlaufen. Denn er ist auch nicht blöd, nutzt er beispielsweise das Tor-Netzwerk, ist die IP-Adresse wertlos und seine Identität nicht ausfindig zu machen.
Möchtest du trotzdem wissen, wer hinter diesem Angriff steckt? Dafür gibt es hier einige Anhaltspunkte:
- IP-Adresse
Hast du über deine Log-Dateien eine IP-Adresse gefunden? Nutze Tools wie utrace oder dieses Tool, um mehr über Provider, Proxy und Ort herauszufinden. Eventuell stellst du an dieser Stelle bereits fest, dass ein Proxy-Server oder das Tor-Netzwerk verwendet wurde, um die wahre Identität zu verschleiern. - Auffälligkeiten beim Hacking
In jedem Fall ist es wichtig, über die Log-Dateien herauszufinden, wie der Hacker in dein System gekommen ist. Bei diesen Einträgen kannst du auch die Zugriffszeiten abgleichen. Liegen nur wenige Millisekunden oder eine immer ähnliche Anzahl an Sekunden zwischen den Requests, könnte es sich um einen Bot handeln, der entweder eigenständig agiert oder vom Hacker gezielt auf deine Website angesetzt wurde. - Der Browser & weitere Informationen
Kaum ein Hacker wird so blöd sein, mit einem Browser und diversen Plugins wertvolle Informationen bei seinem Opfer zu hinterlassen. Immerhin kannst du mit Hilfe des Browsers häufig einzelne Zugriffe dem Hacker zuordnen. Das ist besonders dann hilfreich, wenn du keine IP-Adresse speicherst. - Packe den Hacker an seiner Ehre
Nicht selten geht es den Angreifern nur darum, ihren Namen auf möglichsten vielen Websites zu hinterlassen. Es geht, wie in meinem Fall, um Ruhm und Ehre. Dieser Name ist zwar auch nur ein Pseudonym, aber schon durch eine einzelne Google-Suche kannst du weitere Opfer ausfindig machen und stößt mit etwas Glück sogar auf Foren-Profile. Seine Beiträge können dir helfen, mehr über ihn Erfahrung zu bringen.
Seien wir ganz ehrlich, mit diesen Tipps, wirst du etwas mehr über deinen Angreifer erfahren, aber nur in den seltensten Fällen seine Identität.
Am wichtigsten sind daher, wie es sich hier mal wieder gezeigt hat, regelmäßige Software-Updates.
In diesem Sinne: einen schönen Ostersonntag.
Update vom 08.04.2015: Dieses Mal haben weitere Hacker zugeschlagen und erneut mehrere Webprojekte zeitweise lahmgelegt. Selbst ein Update des Simple Ads Managers hat keine Wirkung gezeigt. Zumindest meine (neueste) Version des Plugins enthielt ein komplettes Hacker-Interface, sodass jeder Außenstehende die Seite manipulieren konnte! Ob ich so Opfers einer Hackers geworden bin, der sich bei dem Plugin eingenistet hat, oder das Plugin selbst die Dateien ausliefert, kann ich derzeit nicht sagen. Fakt ist jedoch: Simple Ads Manager ist nicht mehr im WP Plugin-Store zu finden und sollte am besten schnellstmöglich ersetzt werden, falls ihr das Plugin installiert habt.
Hallo,
vielen Dank für die Info und den Artikel. Eine meiner WordPressseiten wurde auch gehackt und durch den Serveradmin still gelegt. Habe das WordPress neu hochgeladen und verschiedene Plugins geupdatet. Habe ebenfalls den Eindruck gehabt, das es Simple Ads Manager Plugin gelegen hat. Dieses Plugin ist nicht mehr bei WordPress gelistet, wenn ich das richtig gesehen habe! Gibt es eine Alternative?
Gruß Marco
Hallo Marco,
Dass Simple Ads Manager gar nicht mehr verfügbar ist, habe ich jetzt erst gesehen. Danke für den Hinweis! Die erste Alternative, die mir ins Auge gesprungen ist, ist AdRotate: https://wordpress.org/plugins/adrotate/
Schöne Grüße
Tristan
Oha, ist ja übel, dass Simple Ads Manager da offenbar eine offene Hintertür mitgeliefert hat. Ich habe das Plugin mal als Alternative zum nicht mehr weiterentwickelten WPads genutzt, bin dann aber über AdRotate zu Advanced Ads (https://de.wordpress.org/plugins/advanced-ads/) gekommen und bin bislang sehr zufrieden damit.