# WordPress-Hack



## hahni (27. Okt. 2015)

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 (27. Okt. 2015)

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


----------



## hahni (27. Okt. 2015)

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 (27. Okt. 2015)

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 (29. Okt. 2015)

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 (20. Nov. 2015)

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 (20. Nov. 2015)

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 (20. Nov. 2015)

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 (21. Nov. 2015)

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 (21. Nov. 2015)

Zitat von hahni:


> 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:


```
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 (23. Nov. 2015)

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 (23. Nov. 2015)

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 (24. Nov. 2015)

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 (9. Dez. 2015)

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 (9. Dez. 2015)

Zitat von Till:


> 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 (9. Dez. 2015)

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 (9. Dez. 2015)

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



Zitat von nowayback:


> 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.



Zitat von nowayback:


> 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 (6. Jan. 2016)

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 (6. Jan. 2016)

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 (6. Jan. 2016)

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


----------



## reSh (19. Jan. 2016)

Hallo,

ich wollte es auch gerade testen jedoch bekam ich gleich beim ersten Aufruf die Meldung, dass der Key "trail" nicht gültig sei.


----------



## florian030 (20. Jan. 2016)

schon mal tr*ia*l versucht?


----------



## reSh (20. Jan. 2016)

Hallo,

danke das wars! Wer lesen kann ...


----------

