Script versendet massenweise email ueber meinen server

N

nicecap

Guest
Massen-email-versand mit Spam ueber meinen server

Hallo Forumer.

Vor ein paar Tagen begann es, dass von meinem Server von genau einer von insgesamt ca. 10 Domains massenweise emails mit Spam versendet wurden. Und zwar immer unter nicht existenten email-Adressen dieser Domain.

Ich habe sofort die zulaessige Anzahl ausgehender emails auf 0 begrenzt und mich auf die Suche nach der Ursache begeben.

Dabei habe ich zunaechst nach einem verantwortlichen Script gesucht; bin da aber nicht fuendig geworden. Maldet hat auch nichts gefunden. Das Passwort des einzigen FTP-Users fuer die betreffende Domain habe ich sofort geaendert und die Postfix configuration main.cfg hinsichtlich sender Rechte optimiert. Daraufhin hoerte das versenden der Massenemails schlagartig auf.
Nach ca. 16 Stunden fing es wieder an. Diesmal hat maldet ein script gefunden und mein access.log der domain zeichnete auch jede Menge POSTs auf dieses script auf. Wiederum habe ich das FTP-Kennwort geaendert (Urteil zum Passwort von Plesk: sehr stark) Das Script hatte sich unter einem Plugin-Verzeichnis von Joomla versteckt und wurde heute von Maldet identifiziert (gestern aber nicht - war vielleicht noch nicht da).

Meine Frage nun: Ich hatte ja gestern erst das FTP-Passwort auf einen starken Wert gesetzt. Wie kann dann heute ein neues script aufgespielt worden sein? Bzw. was gibt es sonst noch fuer Blockademoeglichkeiten, damit niemand unbefugt Daten auf meinem Server ablegen kann?

Und ausserdem: offensichtlich ist meine Postfix main.cfg immer noch nicht gut genug abgesichert gegen Aussendungen von nicht existenten Usern - Kann ich es irgendwie serverweit verbieten, dass emails von nicht existenten Usern verschickt werden?
Hier ein auszug aus dem was ich bis jetzt in der main.dfg eingetragen habe:
---------------------------
mynetworks_style = host
mynetworks = 127.0.0.0/8

smtpd_sender_restrictions =
permit_mynetworks,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
check_sender_access hash:/var/spool/postfix/plesk/blacklists,
permit_sasl_authenticated

smtpd_client_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_rbl_client ix.dnsbl.manitu.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client sbl-xbl.spamhaus.org,
reject_rbl_client psbl.surriel.com,
reject_rbl_client noptr.spamrats.com,
reject_rbl_client bl.spamcop.net

smtp_send_xforward_command = yes
smtpd_authorized_xforward_hosts = 127.0.0.0/8 [::1]/128
smtpd_sasl_auth_enable = yes

Und dann noch: wie bekomme ich ein Log in dem auch das fuer den Versand zustaendige script mit genannt wird?

Ich habe einen Strato Vserver mit Ubuntu 14.04 und PHP 5.59.

Vielen Dank, dass Ihr meinen Post durchgelesen habt - wuerde mich ueber hilfreiche Antworten sehr freuen.

Chris
 
Last edited by a moderator:
Hallo nicecap,

solche Probleme sind eigentlich ganz normal bei Webservern. Sobald man mal irgendeine Software (also bei dir wohl Joomla, oder eines der Joomla Plugins) drauf hat die eine Sicherheitslücke hat - und das passiert recht schnell wenn man nicht regelmäßig updated - dann schmuggeln automatische Scripts die nach solchen Lücken suchen ein bisschen PHP-Programmcode ein.

Dieser PHP-Programmcode tarnt sich in einer (oder mehreren) der hunderten PHP-Dateien auf deinem Webspace. Sobald das bösartige Script einmal Zugang hatte kann es quasi alle Dateien in dem Webspace des aktuellen Users verseuchen. Meist versucht es das auch... (natürlich nicht übermäßig, es will ja nicht auffallen!)

Die Programmcodes sind dabei so gut getarnt und vielfältig dass sie fast nicht zu finden sind. Im Regelfall bedeutet sowas das Neuaufsetzen aus einem Backup.
Gemeinerweise werden die Programmcodes erst aktiv wenn du eine PHP-Datei von Joomla (die ganz normal funktioniert) mit ein paar geheimen Parametern fütterst. Und dann plötzlich gibt dir dieses Script Vollzugriff auf den Webspace. (das ganze nennt sich dann z.B. "PHP Shell")
Es kann auch sein dass dieses Script schon ein paar Wochen "schläft" und erst jetzt aktiv wurde. So ist es sicher dass es auch in deinen Backups versteckt ist.
(Deswegen soll man soviel wie möglich neu installieren und nur das nötigste (Datenbank!) aus dem Backup holen... dass je nach CMS bösartige Programmcodes auch in der Datenbank leben können lassen wir mal außen vor!)

Was also bei dir Mails verschickt (und höchstwahrscheinlich seinem Herrn und Meister auch Vollzugriff unter dem jeweiligen Webaccount gibt) ist kein FTP-User sondern es sind ein paar, bis ein paar dutzend verseuchte PHP-Dateien.

Es ist löblich dass du deinen Mailserver umkonfigurieren willst, nur diese Scripts hast du trotzdem noch drauf. Und wenn sie nicht Mails versenden kommen sie vielleicht auf noch dümmere Ideen...
Spätestens wenn dein Server beginnt Angriffe gegen andere Server zu fahren oder illegale Dateien auszuliefern hast du ein richtiges Problem!

Also:
- Den betroffenen Webaccount löschen und komplett neu aufbauen.
- Alles was geht (Joomla + Plugins + Theme...) neu runterladen und frisch installieren (natürlich die aktuellste Version - wenn das nicht geht, nachträglich alles aktualisieren!)
- Ganz am Ende deine Datenbank und deine Medien-Dateien wieder aus dem Backup zurückholen. Dabei kann es nicht schaden alles mit ein paar Virenscannern zu untersuchen (wobei die bösartige Scripte oft nicht finden!) und außerdem jede '.php', '.js' und '.html' ganz, ganz, ganz genau anzusehen.

Wenn du Hilfe brauchst melde dich hier.
Viel Glück!

Thomas
 
Last edited by a moderator:
Vielen Dank fuer die Antworten, speziell an Dich Thomas.

Ich werde auf jeden Fall sofort den Webaccount loeschen und dann alles was ich als Backup habe untersuchen bevor ich es wieder aufspiele.

Natuerlich kann ich nicht alle Joomla und Extension codes untersuchen - ich gehe mal davon aus, dass wenn ich diese ganz neu aufspiele diese allerdings sauber sind.

Chris
 
Natuerlich kann ich nicht alle Joomla und Extension codes untersuchen - ich gehe mal davon aus, dass wenn ich diese ganz neu aufspiele diese allerdings sauber sind.

Das kommt drauf an. Falls du schon die aktuellen Versionen von Joomla und den Plugins verwendet hast, wirst du dir die Lücke wieder einfangen. Dann hilft nur prüfen, welche Plugins wirklich benötigt werden und alle weiteren weglassen (und hoffen, dass das Plugin mit der Lücke da dann bei war).
 
Vielleicht hilft es auch schon, über die Dateien Maldet laufen zu lassen. Was WordPress angeht kann ich mich noch erinnern, dank Datensicherung des /wp-content/ Verzeichnisses und Datenbank-Dump relativ leicht alles wiederherzustellen.

Dazu sind natürlich ordentliche Sicherungen notwendig. :)

Viel Erfolg!
 
Last edited by a moderator:
Wenn ich das richtig verstanden habe, hat maldet ja ein verdächtiges Script im Joomla Plugin Verzeichnis gefunden. Aber das muß ja irgendwie dahin gekommen sein und dieses wie ist nun zu klären.
Außerdem würde ich mich nicht auf maldet verlassen, den der kann auch nur die Malware erkennen, die erkennt.
 
Verlassen kann man sich auf gar nichts. Aber maldet kann schonmal die Arbeit erleichtern, indem es allgemeine Gefahren erkennt und reportiert. Als kleines Hilfsmittel taugt es also allemal.
 
Für die Joomla-Core Dateien ist auch der Checksum Scanner hilfreich. https://joomla-extensions.kubik-rubik.de/de/downloads/jcs-joomla-checksum-scanner In jedem Fall müsste schon beim Verdacht eines Hacks ein Passwortschhutz auf das öffentliche Root-Verzeichnis gesetzt werden. Ansonsten denke ich natürlich ebenso wie ThomasChr sollte der komplette Webnutzer und auch dessen Passwort gelöscht werden, da in Joomla auch FTP Verbindungen genutzt werden "können".

Grüße
Chriss
 
Hallöchen alle miteinander. Ich würde mich gerne mal hier einklinken, mitlesen und mitreden :)

Grund ist, auf dem Server vom Kumpel von mir ist eine WordPress Seite, die ab und an infiziert wird. Das macht sich wie folgt bemerkbar, der Server versendet E-Mails wie verrückt, php mail() ist schon via php.ini deaktiviert und dennoch haut er schon mal was raus.

Interessant wäre jetzt zu erfahren, wie diese Ordner oder PHP Dateien in das WordPress System kommen... daher wollte ich mal horchen, ob ihr da eine passende Lösung habt oder ob es ein empfehlenswertes Plugin gibt.

Gruß, Domi
 
Wo sowas her kommen kann?
Unregelmäßige Updates beim Server und dessen Diensten
Sicherheitslücken im Server selbst
Schlechte Passworte im System
Abgefischte Passworte
Veraltete WP-Plugins
Unsichere WP-Themes
Unsicher programmierter PHP-Code
SQL-Injection bei Formularen etc. auf WP-Seiten
Gekaufte Exploits zum Einbruch
...

Schwer zu sagen.

//EDIT:
Für Worpdpress schau dir mal https://wordpress.org/plugins/sucuri-scanner/
an
 
Last edited by a moderator:
Moin, vielen Dank für den Link mit dem Securi Scanner, dass Tool schaue ich mir morgen mal in Ruhe an :) Mir ging es bei der Frage "woher kommt das" eher darum, wo sind die Lücken in dieser WordPress Installation?! :)

Da ich den Server vom Kumpel wie meine Server kenne, schließe ich Probleme vom Server selbst aus, denn andere WordPress und Joomla Installationen (darunter sogar ein älteres Joomla 1.5) sind save :)

Daher tippe ich halt, wie du sagtest auf WP Plugins, fehlerhafte Formulare (SQL Injection) oder schadhafte PHP Codes im WordPress. An das Theme selbst habe ich allerdings noch nicht gedacht.. ist ein guter Ansatz und dafür bedanke ich mich schon mal.

Wenn ich mit dem Scanner schon mal etwas heraus finde, gebe ich Feedback.
Gruß, Domi
 
Oha, diese Autoupdatefunktion ist ja ein trojanisches Pferd. Gut, dass ich kein Wordpress hoste. Noch ein kleine Anmerkung: Selbst in der DB kann sich Schadcode befinden.
 
Last edited by a moderator:
Ja, dass habe ich mir auch gedacht.. hatte schon mal irgendwo gelesen, dass diese Auto-Update Funktion ärger macht und diese dann abgestellt. Anleitungen gab es hier und hier.

Ob das ausreicht, weiß ich jetzt aber nicht zu 100%

Gruß, Domi

p.s. dieses Securi Scan scheint gut zu sein. Das Tool hat gleich erst einmal angeboten, ein paar .htaccess Dateien zu erstellt und darin das Ausführen von z.b. PHP Dateien in einigen Verzeichnissen verboten :)
 
Das bezog sich darauf, dass Entwickler anscheinend ihre Projekte einfach an andere abgeben können und die Nachfolger dann den Schadcode integrieren und das als Update verkaufen.
 
Das bezog sich darauf, dass Entwickler anscheinend ihre Projekte einfach an andere abgeben können und die Nachfolger dann den Schadcode integrieren und das als Update verkaufen.

Du meinst wie bei dem supertollen node.js?
Ach nee, dort ist es ja noch viel schlimmer...
 
Back
Top