Archiv

Archiv für die Kategorie ‘Plesk’

Plesk proftpd root Exploit Warnung

21. November 2010 Keine Kommentare

Ich habe grade die Mitteilung von einem Kunden erhalten, dass sein Linux Plesk Hostingserver massiv überlastet ist. in.proftpd Prozesse lasteten die CPU des Systems so aus, dass der Load auf über 40 nach oben schoss.

Ein ps aux zeigte Prozesse mit den Namen httpd, apache die vom Verzeichnis /tmp/.ICE-unix/.root aus gestartet wurden. Diese öffneten eine IRC Verbindung zu einem Server um von dort aus „Mitglied“ eines Botnetzes zu werden.

COMMAND   PID USER   FD   TYPE    DEVICE    SIZE     NODE NAME
perl    19715 root  cwd    DIR       9,0    4096 54214771 /tmp/.ICE-unix/.root
perl    19715 root  rtd    DIR       9,0    4096        2 /
perl    19715 root  txt    REG       9,0 1253828  7983805 /usr/bin/perl
perl    19715 root  mem    REG       9,0         41631748 /lib/i686/cmov/libresolv-2.7.so (path inode=41633634)
perl    19715 root  mem    REG       9,0         41631755 /lib/i686/cmov/libnss_dns-2.7.so (path inode=41633648)
perl    19715 root  mem    REG       9,0         41631757 /lib/i686/cmov/libnss_files-2.7.so (path inode=41633630)
perl    19715 root  mem    REG       9,0   19816  8144232 /usr/lib/perl/5.10.0/auto/Socket/Socket.so
perl    19715 root  mem    REG       9,0         41631753 /lib/i686/cmov/libcrypt-2.7.so (path inode=41633627)
perl    19715 root  mem    REG       9,0         41631762 /lib/i686/cmov/libc-2.7.so (path inode=41633638)
perl    19715 root  mem    REG       9,0         41631754 /lib/i686/cmov/libpthread-2.7.so (path inode=41633647)
perl    19715 root  mem    REG       9,0         41631752 /lib/i686/cmov/libm-2.7.so (path inode=41633631)
perl    19715 root  mem    REG       9,0         41631756 /lib/i686/cmov/libdl-2.7.so (path inode=41633640)
perl    19715 root  mem    REG       9,0   16548  8144230 /usr/lib/perl/5.10.0/auto/IO/IO.so
perl    19715 root  mem    REG       9,0         41615628 /lib/ld-2.7.so (path inode=41615384)
perl    19715 root    0u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    1u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    2u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)
perl    19715 root    3u  IPv4 112239334              TCP xxx.de:38139->ns.free-vidz.com:ircd (ESTABLISHED)
perl    19715 root    4u   REG       9,0   49416 46776325 /var/run/proftpd_scoreboard
perl    19715 root    5u  IPv4 112238056              TCP xxx.de:58255->ichsuchesex.info:45295 (CLOSE_WAIT)

Die Hacker nutzen dabei folgende Lücke aus: http://bugs.proftpd.org/show_bug.cgi?id=3521

Das miese an der Geschichte ist, dass die Hacker dadurch sofort root Rechte auf dem System hatten.

Da das Paket psa-proftpd von Plesk direkt bereitgestellt wird und nichts mir der Distribution zu tun hat, muss man das Update über die Plesk Oberfläche einspielen. Es sind alle Plesk Versionen von 9.5.x bis 10.x betroffen. Dazu existiert bereits eine Nachricht auf der Parallels Webseite: http://www.parallels.com/de/products/plesk/ProFTPD

Also wirklich dringend Updaten, die Lücke wird bereits automatisiert genutzt und ein Angreifer erhält root Rechte.

KategorienPlesk

Plesk authpsa relaylock hohe CPU Auslastung

18. September 2009 1 Kommentar

Plesk ärgert mich seit Monaten damit eine nicht 100% funktionierende E-Mail Implementierung zu haben. Egal ob qmail oder Postfix auf dem Server installiert ist, beide Pakete sind nicht einwandfrei.

1.
Die qmail authpsa pop3-before-smtp Implementierung sorgt aufgrund eines Bugs dafür, dass sich der Server solange hochschaukelt bis kaum mehr ein Dienst reagiert oder auch gleich der ganze Server abschmiert. Dieser Bug ist seit Monaten bekannt und veröffentlicht, getan wird jedoch nichts. Am Endes dieses Blogeintrags ist ein witziges Beweisbild zu sehen. Es handelt sich hier um einen Dual Quad-Xeon mit jeweils 4 mal 2Ghz.

2.
Die Postfix Implementierung ist dahingehend defekt, dass Mails die bereits von entfernten Mailservern angenommen wurden nicht final ins Postfach zugestellt werden:

postfix/spawn[926]: warning: command /usr/lib/plesk-9.0/postfix-queue killed by signal 11
postfix/smtpd[891]: warning: lost connection with proxy 127.0.0.1:10025
before-remote[929]: Lost connection
before-remote[929]: Some error occured
postfix/smtpd[930]: lost connection after DATA from unknown[127.0.0.1]
postfix/smtpd[930]: disconnect from unknown[127.0.0.1]

Dabei gibt es keine Kriterien wie Größe, Absender, Zeitpunkt. Bei meinen Versuchen war dies alles variabel.

Aufgrund dieser instabilen Mailserverentwicklungen ist Plesk im Moment nicht mehr als ein notwendiges Übel, dass es Providern sehr schwer macht, den Endkunden stabile Services zu bieten. Dies habe ich per E-Mail ebenso Parallels (E-Mail: info@parallels.com) mehrfach gesendet und niemals eine Antwort erhalten. Wahrscheinlich kamen meine E-Mails dort nicht an.

KategorienPlesk

Plesk: spamdyke POP-Before-SMTP qmail

26. März 2008 6 Kommentare

English version of this article

Neben dem hier geschilderten Problem mit SMTP-Auth in Verbindung mit spamdyke, haben mich heute einige User darauf hingewiesen dass POP-Before-SMTP seit Inbetriebnahme des qmail Spamfilters dessen Installation ich hier beschrieben habe, nicht mehr funktioniert.

Nach einigen Minuten intensiver Google Suche gab es zu diesem Thema keine Lösung, außer ein „geht nicht mehr und ist ohnehin schlecht“. Dies ist jedoch keine sinnvolle Lösung und mich und meine User und daher habe ich nachgeforscht wie sich dieses Problem einigermaßen zufriedenstellend lösen lässt.

Plesk (besser gesagt relaylock) speichert die IP Adressen welche POP-Before-SMTP Authentifiziert sein sollen in der Datenbank psa und der Tabelle smtp_poplocks ab.

Das nachfolgende Perl Script liest diese Tabelle aus und bildet daraus eine IP Liste, welche sich als ip-whitelist-file für spamdyke verwenden lässt.

Bei der Entscheidung zwischen Perl Daemon oder Cronjob Script, habe ich mich zum Cronjob entschlossen, da ich davon ausgehe dass es sehr selten ist dass ein User eine E-Mail >59 Sekunden nach dem POP Abruf versenden will und gleichzeitig vollkommen auf SMTP-Auth verzichtet.

Die Installation erfolgt folgendermaßen:

# Download und überprüfen des Scriptinhalts:
wget "URL from end of this post"
chmod 700 spamdyke-pop-before-smtp*
nano spamdyke-pop-before-smtp*
 
# Für Debian
apt-get install liblog-log4perl-perl
 
# Allgemein für jede andere Distribution
perl -MCPAN -e shell
install Log::Log4perl
 
# /etc/spamdyke.conf (oder allgemein die Konfiguration öffnen) und folgende Zeile einfügen
ip-whitelist-file=/var/qmail/spamdyke/pop-before-smtp
 
# Einrichten des Cronjobs mittels "crontab -e"
*       *       *       *       *       /pfad/zum/script/spamdyke-pop-before-smtp.pl

Das Script wird nun alle 60 Sekunden gestartet, liest die Datenbank aus, schreibt das Whitelist File (/var/qmail/spamdyke/pop-before-smtp) und somit ist POP-Before-SMTP wieder funktionstüchtig.

Das Programm generiert keine Ausgabe sondern logged alle Fehler in einer Datei namens /var/log/pop-before-smtp.log. Wer bei Fehlern zusätzlich eine E-Mail an root erhalten will (insofern der Cron Daemon ist dahingehend konfiguriert“ muss nichts weiter tun als die Zeile
open STDERR, '>/dev/null'; auszukommentieren.

Download Link für Plesk x bis Plesk 8:
spamdyke-pop-before-smtp-plesk-x-8.pl

Download Link für Plesk 9 bis Plesk x:
spamdyke-pop-before-smtp-plesk-9-x.pl

KategorienPlesk