WordPress-Hack

hahni

Active Member
Hallo zusammen,
auf einem Server gibt es eine Webpräsenz, die immer wieder gehackt wird. Eigentlich nicht im klassischen Sinne, aber es werden in den Media-Verzeichnissen immer wieder php-Skripte abgelegt, die im Aufbau her gleich sind (BASE64-encodiert) und dann Spam überwiegend an Hotmail oder Yahoo verschicken. Alle Extensions/Plug-ins wurden aktualisiert und WordPress an sich auch. Wenn ich die Skripte lösche, tauchen die auch wieder nach ein paar Tagen auf. Allerdings sind sie dann woanders abgelegt oder heißen anders. FTP-Kennwort wurde auch schon geändert. Woran könnte dies liegen und was ist zu tun?
Viele Grüße
Hahni
 

florian030

Well-Known Member
Irgendeine Schwachstelle in einem der Plugins. Ältere Versionen des Rev-Sliders habe auch einiges an Lücken...
 

hahni

Active Member
Ich vermute Contact-Form 7. Aber eigentlich bleibt demnach nur, alle Plug-ins zu deaktivieren und dann wieder der Reihe nach einzuschalten und zu warten, ob sich was tut?
 

Till

Administrator
Oder Du schaust Dir mal das access.log im Detail an, denn wenn ein script abgelegt wurde ahndelt es sich ja vermutlich um einen POST Request und die sind weit weniger häufig als GET Requests. Seh Dir also mal an wann genau die Dateien angelegt wurden und suche dann im access.log nach einem Post Request der exakt oder minimal vor dem timestamp der datei im Log der website steht.
 

hahni

Active Member
Das ist eine sehr gute Idee. Das mache ich, denn dann sollte man doch herausfinden, welches Programm-Modul dafür zuständig ist und genau dort eingreifen. Nun muss ich leider nur wieder warten, bis diese oder eine andere Skript-Datei angelegt wurde. Nervt aber, weil diese Spammerei immer auch die Reputation des Servers herabsetzt.
 

hahni

Active Member
Zwischenzeitlich weiß ich, dass es "Stealrat" ist. Die Entfernung ist die eine Sache. In dem Fall stoppt sofort der Spam-Versand. Aber nach wenigen Tagen kehrt der Mist wieder zurück. Auch nach einem Update des Cores und aller Extensions. Was tunß
 

nowayback

Well-Known Member
das übliche... tmp mit noexec mounten, php einstellungen ändern, sodass exec und co funktionieren, website richtig konfigurieren (fastcgi etc.) ggf Kennwörter innerhalb WP und das DB PW ändern... sowas halt. oder die website einfach richtig neu sauber aufsetzen.

ggf auch das theme checken. da kann sich auch mist ansammeln
 

Till

Administrator
Und schau dir die logs an, such nach post requests zum Zeitpunkt an dem die malware Scripte erstellt wurden. Das kann helfen das anfälliger Modul einzugrenzen.
 

hahni

Active Member
Mit "fast-cgi" läuft die Webseite seit ISPC3 eh. "/tmp" mit noexec mounten? Die Sache mit den Logs klingt plausibel. Ich habe nun mal die Webseite komplett bereinigt und warte ab, ob der Bot wieder zuschlägt. Und dann werde ich analysieren, Till. ABER: in den Access-Logs steht doch kein Post Request?
 

Till

Administrator
ABER: in den Access-Logs steht doch kein Post Request?

Na klar steht der da drin inkl. URL auf den der POST erfolgte, natürlich nicht der POST Inhalt. Logge Dich mal in wp ein, danach mach mal:

grep POST access.log

Ich arbeite gerade an einem neuen malware scan tool, basierend auf Malware signaturen die ich mit mehreren ISPConfig Hostern zusammen entwickle. Ist noch nicht released aber läuft schon sehr gut, habe gerade eben einen Kundenserver erfolgreich damit gescannt und viel gefunden. Wenn Du magst kannst Du es mal vorab ausprobieren. Und zwar als root auf der shell einloggen, dann:

Code:
cd /tmp
wget http://www.ispprotect.com/download/ispp_scan.tar.gz
tar xfz ispp_scan.tar.gz
./ispp_scan.sh

Wenn Du den ganzen server (alle websites) scannen willst gibst Du als Pfad /var/www an wenn er danach fragt. Beim Lizenzcode gib das wort "trial" ein.

Der Scan kann je nach Größe des Servers wirklich lange dauern, bitte nicht abbrechen, einfach shell fenster auflassen und warten bis er fertig ist. Er zeigt Dir die potentiellen Malware Funde dann auf der shell an wenn er fertig ist und speichert sie auch in einer Datei.
 

hahni

Active Member
Hallo Till,
das klingt praktisch und das werde ich mir einmal ansehen. Das Tool von dir installiert nichts weiter als dass es als stand-alone-Lösung arbeitet und lässt sich auch mühelos und rückstandfrei wieder entfernen?
Viele Grüße
Hahni
 

Till

Administrator
Da wird nichts weiter installiert. Es läd lediglich ioncube loader runter wenn er nicht bereits vorhanden ist, der loader wird aber nur temporär für den tool aufruf auf der Kommandzeile eingebunden und nicht im System installiert. Wenn Du es so machst:

mkdir /tmp/scan
cd /tmp/scan
wget http://www.ispprotect.com/download/ispp_scan.tar.gz
tar xfz ispp_scan.tar.gz
./ispp_scan.sh

dann kannst Du es nachher einfach mit:

rm -rf /tmp/scan

wieder entfernen.
 

hahni

Active Member
Mein erster Eindruck: das Tool benötigt sehr lange, aber es scheint sehr gründlich zu sein. Ich werde nun einmal das Ergebnis aus. Dann kann ich dir auch sagen, ob es False Positives gab. Auf jeden Fall sieht die Sache sehr hilfreich aus - bisher :)!
 

Till

Administrator
Wir konnten die Scan Geschwindigkeit des Tools nochmal deutlich erhöhen und es werden jetzt auch weitere CMS beim update check erkannt. Neue Signaturen gab es natürlich auch. Er zeigt jetzt auch während des Scans die Geschätzte Dauer an und ob es schon Treffer gab.

ISPProtect ist jetzt offiziell verfügbar, wer es mal testen mag kann es gern von http://ispprotect.de runter laden. Dort gibt es jetzt auch eine Dokumentationsseite die alle Optionen beschreibt.
 

nowayback

Well-Known Member
Wir konnten die Scan Geschwindigkeit des Tools nochmal deutlich erhöhen und es werden jetzt auch weitere CMS beim update check erkannt. Neue Signaturen gab es natürlich auch. Er zeigt jetzt auch während des Scans die Geschätzte Dauer an und ob es schon Treffer gab.

ISPProtect ist jetzt offiziell verfügbar, wer es mal testen mag kann es gern von http://ispprotect.de runter laden. Dort gibt es jetzt auch eine Dokumentationsseite die alle Optionen beschreibt.

What our clients say about ISPProtect [...] pixcept KG
;)

# 0 3 * * * root /usr/local/ispprotect/ispp_scan --update && /usr/local/ispprotect/ispp_scan --path=/var/www --email-results=root@localhost --non-interactive --scan-key=AAA-BBB-CCC-DDD
Blöd wenn es Kunden SSH Zugänge gibt, denn die sehen den Key. Besser wäre eine Config Datei, wo man den hinterlegen kann.

Preis: Meiner Meinung nach zu teuer... 71 Cent pro Scan wären mir persönlich zuviel, wenn man bedenkt das man einen Echtzeitschutz für paar Euro im Monat bekommt. Alleine der Unterschied Echtzeitschutz - manuelles Scannen würde jeden Entscheider bei uns dazu bringen lieber den Echtzeitschutz zu nehmen.

Alles in Allem gebt ihr euch bestimmt viel Mühe damit, aber habt euch auch einen harten Markt ausgesucht. Wenn ich Zeit finde, werde ich das aber auf jeden Fall mal testen.

Grüße
nwb
 

florian030

Well-Known Member
Der Scanner läuft mitlerweile richtig gut. Mit ein paar excludes läuft das auch nicht zu lange. ini-File finde ich gut. Bis jetzt stand ich damit aber immer ziemlich alleine da. ;)
 

Till

Administrator
Das mit dem .ini File sehen wir uns nochmal an.

Preis: Meiner Meinung nach zu teuer... 71 Cent pro Scan wären mir persönlich zuviel, wenn man bedenkt das man einen Echtzeitschutz für paar Euro im Monat bekommt. Alleine der Unterschied Echtzeitschutz - manuelles Scannen würde jeden Entscheider bei uns dazu bringen lieber den Echtzeitschutz zu nehmen.

Der Punkt ist das Kunden im Normalfall keine Echtzeitschutz haben und auch der nicht immer 100%ig funktioniert. ISPProtect scan ist nicht als Ersatz für eine application Frewall gedacht sondern als Tool zum reinigen von bereits befallenen Seiten und zur Kontrolle das nichts durch die application Firewall durch gekommen ist. Die meisten Leute haben ihre Website nicht im GIT oder SVN, können also auch keinen check gegen known good Dateien machen. Es bleibt dann nur die Seite zu säubern oder von Grund auf neu zu entwickeln, wenn Du eine Seite von Hand säuberst dauert das leicht mehrere Stunden, wenn Dafür normale Supportpreise ansetzt bist Du leicht bei ein paar hundert EUR. Ich denke mal das 5 EUR für 5 Scans bzw. günstigere Preise für größere Pakete da im Vergleich ein günstiges Angebot ist.

Alles in Allem gebt ihr euch bestimmt viel Mühe damit, aber habt euch auch einen harten Markt ausgesucht. Wenn ich Zeit finde, werde ich das aber auf jeden Fall mal testen.

Ich freue mich auf Dein Feedback :)
 

hahni

Active Member
Es scheint sich unlizenziert nur einmal ausführen zu lassen:
--
Could not run scan with key trial because of error: No more trials for this server left.
--
 

Till

Administrator
Die trial Version kannst Du einmal verwenden. Wenn Du Deinen Server regelmäßig mit ISPProtect scannen möchtest dann Du auf ispprotect.de eine "pro Scan" oder eine Jahreslizenz mit unlimitierten Scans kaufen.
 

hahni

Active Member
Dann hatte ich das doch richtig verstanden. Ich war nur irritiert weil es hieß, man könnte das neue Skript noch einmal testen.
 

Werbung

Top