Strato V-Server mit Plesk gehackt?

jkw

New Member
Hallo Beisammen,
vorab: ich bin kein Profi, sondern betreibe für eine kleine gemeinnützige Organisation einen Server, den ich mit einigermaßen über die runden kriege; da muss ich leider auf die Kosten achten und habe daher bislang keinen Profi gefunden, der den Server 'unangreifbar' macht.

Leider scheint er nun gehackt worden zu sein. Das glaube ich dem httpsd_acces.log entnehmen zu können - keines der dort genannten Passwörter hätte allerdings den Zugang gewähren sollen. Frage 1: Wurde der Zugang nun gehackt?

Auf einmal war jedenfalls der zulässige Festplattenplatz voll und ich konnte mich weder via Plesk noch über unser cms einloggen. Es kam der 500 internal server error.
Bei dem Versuch, es nach dieser Anleitung zu richten (plesk runterfahren, apache runterfahren, plesk hochfahren, apache hochfahren) kam zunächst die Fehlermeldung: apache_control_adapter execudtion failed.

Nachdem sich zehn Minuten nichts tat entschloss ich mich, den Server über das Strato-Backoffice neu zu starten. Resultat weder Plesk noch Website sind erreichbar. Nach SSH-login geprüft, ob Apache läuft - ja, dann plesk gestartet, mit folgender Meldung
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run /mysqld/mysqld.sock' (2)
.
Dieses wird jetzt auch als ERROR: PleskFatalException angezeigt, wenn man die Plesk-Oberfläche via Browser zu erreichen versucht.

Jetzt würde ich den Server komplett neu aufsetzen, dafür bietet Strato die Funktion Neuinstallation' im Backoffice. Ebenso gibt es unter Backup-Control die Möglichkeit, eine der vollständigen Sicherungen der letzten zehn Tage wieder herzustellen (wobei ich hoffe, dass diese durch die Funktion Neuinstallation nicht gelöscht werden - was unsinnig wäre, aber man weiß ja nie, und heute ist der 13. ..).
Nachdem ich mit den ersten zwei Versuchen der Wiederherstellung der Funktion gescheitert bin möchte ich Euch fragen ob Euch etwas besseres einfällt. Und wenn es dann klappt, was ich als erstes unternehmen sollte, um den Angriff von draussen sicherer abzuwehren.

Zusatzfrage: wie kann ich eigentlich feststellen, wie viel Speicherplatz die Dateien auf dem V-Server in Anspruch nehmen, und wie kann ich 'überflüssige' Dateien feststellen?

Besten Dank für Eure Hilfe!

Ps.: Professionelle Hilfe anzunehmen bin ich grundsätzlich geneigt, daher habe ich mit Link auf diese Fragestellung auch ein Jobangebot eingestellt.
 
Last edited by a moderator:
Du hast offensichtlich eine Reihe von Baustellen und Versäumnissen aufzuholen. Zu dem gehört das Thema eher in den Bereich "Security". Zweitens wäre es prima zusätzliche Dateien direkt hier im Forum als Dateianhänge zu erstellen, damit ist auch die dauerhafte Verfügbarkeit sichergestellt, bei externen Hostern verschwinden die Daten meist nach einiger Zeit und man kann später den Thread nicht mehr nachvollziehen.

Zum Problem:

Bei Deinem Problem hilft selbst die beste Kristallkugel nicht weiter. Welches Betriebssystem (genaue Version) setzt Du ein? Gleiches gilt für Plesk. Welche Serverdienste werden mit welcher Software bereitgestellt (Apache ...)? Last but not least - Welche Anwendungen laufen auf dem Server. Vermutlich mehr als nur normale Webanwendungen (PHP-Scripte), weil Du sonst eher ein normales Webhosting-Angebot genutzt hättest statt Dir den Stress mit einem Serverbetrieb unter mangelnden Know-How zuzumuten? Betreibst Du mehrere Domains auf dem Server, wenn ja wieviel in etwa?

Nach dem wir darüber einigermaßen gesicherte Angaben haben, lässt sich erst eine sinnvolle Strategie für das weitere Vorgehen entwerfen. Bis dahin sollte der Server erstmal offline bleiben. Grundsätzlich wird es wohl auf eine Neuinstallation mit vorsichtigen manuellen Wiederherstellen, der Daten für das CMS sowie evtl. weiterer Serverdienste hinauslaufen. Dazu müsste man aber wissen, welche Funktionalitäten alle genutzt wurden, um da ein sinnvolles Vorgehen für die Datensicherung zu skizzieren. Wurden regelmäßig Backups der Nutzerdaten (eMails, Webverzeichnisse) auf externen Servern/Medien gemacht?

P.S.: Streich das mit dem OS und Plesk - ich sehe es in der Signatur ;) Sofern aktuell hätten wir da schonmal bei Plesk den ersten Kandidaten - aktuell ist was anderes.
 
Last edited by a moderator:
Wie TerraX schon geschrieben hat läuft es auf eine Neuinstallation hinaus. Vorher musst du aber unbedingt die Sicherheitslücke finden, sonst baust du dir mit dem Backup sofort wieder mit ein und morgen ist alles wieder im Argen. Wichtigstes Ziel ist also nicht, den Server irgendwie wieder ans Netz zu bekommen, sondern eben auch die Lücke zu schließen.

Ich muss dich obendrein darauf hinweisen, dass du als Betreiber für alles haftest, was auf deinem Server passiert. Also ggf. auch für alle Folgen des Hacks. Unter diesen Geschichtspunkten ist das Argument mit auf Kosten achten und eigenem Server leider oft ein Schuss ins Knie und wird am Ende richtig teuer.
 
... Vorher musst du aber unbedingt die Sicherheitslücke finden, sonst baust du dir mit dem Backup sofort wieder mit ein und morgen ist alles wieder im Argen. Wichtigstes Ziel ist also nicht, den Server irgendwie wieder ans Netz zu bekommen, sondern eben auch die Lücke zu schließen...
Yepp - was Webanwendungen angeht, ist da eine ordentliche Versionsverwaltung sehr hilfreich, da man Veränderungen im Vergleich Soll/Ist ohne viel Tamtam umgehend erkennt.

Ebenso ist bei einem eigenen Server ein identisch eingerichtetes (Software) Testsystem eigentlich Pflicht (Soll-Zustand). Auch das hilft Abweichungen schnell zu erkennen.
 
Danke für die Zwischenantworten

Zu den vorhandenen Sicherungen:
  • im Strato-V-Server-Paket gibt es ein automatisches Backup aller Daten auf dem Server für die letzten zehn Tage 10; diese sind (wohl) vorhanden und wieder herstellbar;
  • darüber hinaus habe ich eine wöchentliche Komplettsicherung unter Plesk als Task eingerichtet, die Daten werden komprimiert auf einen anderen Server übertragen und sind dort vorhanden;
  • darüber hinaus habe ich einen tägliche MySQL-Sicherung (kompletter Dump mit Sicherung auf anderen Server eingerichtet.

Achtung: Seltsamkeit -die vom Plesk-Task erstellten Sicherung vom 10.012012 umfasst 2,6 GB, die nachfolgenden Sicherungen zeigen eine leicht ansteigende Tendenz auf 3 GB, nach Update von Ubuntu 10.04 wird das Backup kleiner (2,4 GB, aber wieder mit einer leicht ansteigenden Tendenz bis zum 22.05., an dem die *.tar Datei 2,6 GB umfasst. Vorletzte Komplettsicherung umfasste nur noch 322 MB, letzte vom 5. Juni 2012 5 MB. :confused: Am 10.4. (227 MB) und 8.5. (23,5 MB) gab es schon einmal solche Ausreißer :confused:

Die SQL-Sicherungen zeigen hingegen ein kontinuierliches Bild: vom 13.08.2011 bis 12.06.2012 steigt der Umfang der *.gz-Datei von 2,1 MB auf 3,2 MB, was mit zunehmendem Content wie auch Nutzerzahl zu erklären ist.

Ein Testsystem lief auf dem gleichen Server - werde ich jetzt auf einem anderen installieren.

Was läuft auf dem Server: eine Community & CMS mit vielen individuellen Anpassungen - mehr nicht.

Nun aber zu meinen Fragen:

deutet das, was ich hier beschreibe, tatsächlich drauf hin, dass sich jemand hineingehackt hat, oder ist das ein technisches Problem, das durch z.B. das Überschreiten der Festplattenkapazität verursacht wurde?

Wie kann ich feststellen, wie viel Speicherplatz die Dateien auf dem V-Server in Anspruch nehmen, und wie kann ich 'überflüssige' Dateien feststellen?

Was bedeutet und wie reagiere ich auf die Fehlermeldung
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
? Oder indiziert diese, dass das System gehackt wurde, weil da eine Datei gelöscht wurde?

Besten Dank!
 
Was für ein CMS + Community lief da (meimeimei - Zahlen, Daten, Fakten, lass Dir nicht alles aus der Nase ziehen) und in welcher Version?

Wurden die Änderungen inkl. Updates/Patches der Webanwendungen z.B. mittels CVS, subversion oder git verwaltet? Das würde die Rekonstruktion von Änderungen u.ä. einfacher gestalten.

Die letzten Plesk-Komplettsicherungen sind vermutlich fragwürdig, wenn überhaupt noch brauchbar.

Die Fehlermeldung bedeutet, das Plesk oder der Webserver nicht auf den mySQL-DB-Server connecten kann, weil er entweder nicht gestartet ist aka läuft oder Socket-Pfad falsch angegeben ist. Eine Option wäre den mySQL-Server von Hand auf der Konsole versuchen neu zu starten und zu schauen was passiert.

Das Kapazitätsproblem der HDD kann verschiedene Ursachen haben, mit der Zeit einfach durch Logs zugemüllt, die nie gelöscht wurden (logrotate), Festplatte/Dateisystem putt (System ist bei einem Neustart dann nur noch im read-only Modus was ähnliche Effekte auslöst), Amok-laufendes Script oder Mißbrauch als Warez-Server (das wird aber eher diskret betrieben, so dass der Server möglichst lange ungestört weiterläuft, ein Hack der sofort auffällt ist eher unerwünscht). Wie auch immer - Du wirst einen Blick auf die Konsole werfen müssen, um festzustellen, was nun Phase ist. Kurz gesagt: Es hat sich ausgeklickt - Plesk ist nicht mehr.

Für eine bequeme Anzeige der genauen Festplattenbelegung an der Konsole möchtest Du Dir bestimmt die Anwendungen NCurses Disk Usage oder Discus anschauen - vorausgesetzt Du bekommst entsprechend Platz freigeschaufelt. Ansonsten musst Du die Befehle df und du als Grundlage nehmen, ist weniger komfortabel aber auch machbar.

Normalerweise, würde man ja erstmal ein Image ziehen und dieses Image dann untersuchen. Aber ich denke, das ist in dem Fall - nunja etwas praxisfern. In jedem Falle solltest Du alle noch verfügbaren Datensicherungen erstmal lokal auf Deinem PC sichern.

P.S.: Wenn nur eine kombinierte Webanwendung betrieben wird, warum wurde dann nicht auf ein geeignetes Webhosting-Angebot zurückgegriffen? Billiger wird das wohl kaum gewesen sein? Insbesondere mit Hinblick auf die nun vermutlich fälligen externen Supportkosten? Grundkenntnisse für die Administration scheinen ja auch nur rudimentär vorhanden zu sein?
 
Last edited by a moderator:
Führe doch mal ein
Code:
du -sch /*
aus damit du überhaupt erfährst in welchem Ordner da die HDD Party abläuft.

Ergebnis bitte ebenso posten.
 
Danke an alle und einen ganz besonders ...

@ Virtual2
du -sch /*
ist ja der Hit, ohne das /* habe ich mit Filezilla zum Erkennen der Struktur und du -sh durch alle Verzeichnisse gekämpft. Und war erfolgreich - es waren wie von mir angedacht temporäre Sicherungsdateien, die aus mir nicht nachvollziehbaren Gründen nicht nach der Übertragung auf den externen Server gelöscht wurden (ist das ein Bug oder ein Feature?).

Die Festplatte war so voll dass keine temporären Files mehr geschrieben werden konnten - schon deshalb funktionierten zwar noch die Webanwendung (ohne Login), nicht aber der Login, ob nun in die Applikation oder Plesk. Alle temporären Sicherungsdateien - 16 GB - gelöscht, Serverstart, und es läuft wieder. :)

Es war kein Hack. Wer sich das von mir im Startbeitrag verlinkte Log angesehen hat konnte daraus erkennen, dass das zwar Attacken waren, die aber alle nicht zum Erfolg führten. Danke für die Bestätigung dieser Vermutung wie auch die Hilfe bei der Suche nach dem Verzeichnis an User @its!:)

Noch zu den unbeantworteten Fragen: das CMS mit Community haben wir aus der Liquidationsmasse eines Unternehmens übernommen, das es nicht mehr gibt, das Produkt wird also nur noch von uns genutzt und in Maßen gepflegt.

Und was ich noch zu korrigieren habe: es war schon Plesk 10.4.4 installiert, das Strato Backoffice zeigt das nur nicht an :rolleyes: .

Jetzt muss ich noch in Erfahrung bringen, wie unter Plesk eine automatische Benachrichtigung einrichten kann, wenn die Festplatte wieder zu 25% zu ist, d.h. 20 G drauf sind. Für Tipps wäre ich dankbar - ich poste das dann aber auch in der Plesk-Sektion des Forums.

Im übrigen ist das Thema erledigt. Danke noch einmal für Eure Hilfe und Beiträge.
 
Last edited by a moderator:
Back
Top