Hallo Leute,
Nach den beunruhigenden Nachrichten der letzten Tage habe ich heute einen Bug bei Plesk entdeckt, der mich persönlich den Glauben an die Programmierkunst dieser Bude verlieren lässt.
Probiert mal folgendes aus: Schickt mal ein Mail von einem - sagen wir mal o'wichtig@meinedomain.irland an ein Plesk Mailkonto. In diesem Mailkonto legt ihr vorher eine Weiterleitung an, auf ein beliebiges anderes Mailkonto.
Folgendes wird passieren:
Wer des Programmierens nicht mächtig ist: Die Pfosten haben schlicht und einfach vergessen den local part der Mailadresse korrekt zu quoten, dadurch entsteht ungültiger sql Code und die Sache fährt vor die Wand. Weshalb sie mit dem Absender in ihrer SQL Datenbank rumkrosen ist mir unerklärlich.
Um eventuellen Einwänden vozubeugen: Bei o'connor@dom.com handelt es sich durchaus um eine gültige Mailadresse (http://tools.ietf.org/html/rfc2822)
Shit happens - klar, aber wenn der KOT bei denen auch in anderen, sicherheitsrelevanten Teilen eine ähnliche "Qualität" aufweist:
GUTE NACHT ADMINS !
Nennt es paranoid, aber ich habe heute mein Plesk vom Netz genommen. Ich habe im April 3 Tage lang zig Domains/Mail und und und mit einem Riesenaufwand auf einen neuen Server transferiert, nachdem mir das Plesk gehackt worden war. Und jetzt schon wieder so ein Müll, ich hab den Kanal OBERVOLL.
Ich habe es jetzt so gemacht:
Plesks Standardports gewechselt, dann wird man wenigstens nicht bei einem automatisch ablaufenden Angriff auf 8443 oder 8880 erwischt
Dann habe ich mir folgende Scripte geschrieben:
und das Gegenstück
Im wirkichen Leben ist es etwas komplexer, weil ich ausgewählten Kunden über eine passwortgeschützte Seite ermögliche einzelne Dienste/Ports via cgi zu öffnen - aber es geht mir jetzt ja auch nur um die basics.
Bei Interesse beschreibe ich das gerne auch detailierter.
Ein nmap auf diesen Plesk Server sieht nun so aus (wenn vorher script 1 ausgeführt wurde):
Apache, Mail und sonst nix. Da kann ich gleich besser schlafen.
Damit bin ich erst mal zufrieden, ok für die Kunden etwas aufwendiger, aber was ist das gegen einen gehackten Server.
Ich jedenfalls bin restlos bedient was PLESK betrifft und kann jedem nur empfehlen diesen Müll möglichst selten an die Sonne zu lassen.
Klaus
Nach den beunruhigenden Nachrichten der letzten Tage habe ich heute einen Bug bei Plesk entdeckt, der mich persönlich den Glauben an die Programmierkunst dieser Bude verlieren lässt.
Probiert mal folgendes aus: Schickt mal ein Mail von einem - sagen wir mal o'wichtig@meinedomain.irland an ein Plesk Mailkonto. In diesem Mailkonto legt ihr vorher eine Weiterleitung an, auf ein beliebiges anderes Mailkonto.
Folgendes wird passieren:
Code:
Jul 28 16:31:39 h1714533 /usr/lib/plesk-9.0/psa-pc-remote[1596]: Unable to get sender handlers from the database
Jul 28 16:31:39 h1714533 /usr/lib/plesk-9.0/psa-pc-remote[1596]: Unable to prepare SQL statement for query 'SELECT executable, context, name FROM handlers WHERE queue=1 AND type='0' AND enabled=1 AND address='o'connor@yxc.de' ORDER BY priority DESC': near "connor": syntax error
.............
Jul 28 16:49:29 h1714533 postfix-local[3941]: files: write buf 0xbf8e227c[3838] to fd (7) error - (32) Broken pipe
Jul 28 16:49:29 h1714533 postfix-local[3941]: files: cannot write chuck from 5 to 7 - (32) Broken pipe
Jul 28 16:49:29 h1714533 postfix-local[3941]: LOG Unable to forward message to: kdeissweiterleitung@abc.de
Jul 28 16:49:29 h1714533 postfix-local[3941]: LOG found problems in executed program
Jul 28 16:49:29 h1714533 postfix-local[3941]: Unable to send mail for: kdeissweiterleitung@abc.de
Wer des Programmierens nicht mächtig ist: Die Pfosten haben schlicht und einfach vergessen den local part der Mailadresse korrekt zu quoten, dadurch entsteht ungültiger sql Code und die Sache fährt vor die Wand. Weshalb sie mit dem Absender in ihrer SQL Datenbank rumkrosen ist mir unerklärlich.
Um eventuellen Einwänden vozubeugen: Bei o'connor@dom.com handelt es sich durchaus um eine gültige Mailadresse (http://tools.ietf.org/html/rfc2822)
Shit happens - klar, aber wenn der KOT bei denen auch in anderen, sicherheitsrelevanten Teilen eine ähnliche "Qualität" aufweist:
GUTE NACHT ADMINS !
Nennt es paranoid, aber ich habe heute mein Plesk vom Netz genommen. Ich habe im April 3 Tage lang zig Domains/Mail und und und mit einem Riesenaufwand auf einen neuen Server transferiert, nachdem mir das Plesk gehackt worden war. Und jetzt schon wieder so ein Müll, ich hab den Kanal OBERVOLL.
Ich habe es jetzt so gemacht:
Plesks Standardports gewechselt, dann wird man wenigstens nicht bei einem automatisch ablaufenden Angriff auf 8443 oder 8880 erwischt
Dann habe ich mir folgende Scripte geschrieben:
Code:
#! /bin/bash
#plesk stoppen
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
LOG="/tmp/stop_nr_service.log"
echo `date` $0 startup >>$LOG
/etc/init.d/sw-cp-server stop >>$LOG
#ftp&co ports sperren
/sbin/iptables -F
/sbin/iptables -A INPUT -p tcp --dport 21 -j DROP
#/sbin/iptables -A INPUT -p tcp --dport 22 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 3306 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 106 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 23 -j DROP
/sbin/iptables -L >>$LOG
und das Gegenstück
Code:
#plesk starten
/etc/init.d/sw-cp-server start
#firewall aus
iptables -F
Im wirkichen Leben ist es etwas komplexer, weil ich ausgewählten Kunden über eine passwortgeschützte Seite ermögliche einzelne Dienste/Ports via cgi zu öffnen - aber es geht mir jetzt ja auch nur um die basics.
Bei Interesse beschreibe ich das gerne auch detailierter.
Ein nmap auf diesen Plesk Server sieht nun so aus (wenn vorher script 1 ausgeführt wurde):
Code:
Interesting ports on h1xxxxxxx.stratoserver.net (xxx.xxx.xxx.xxx):
Not shown: 982 closed ports
PORT STATE SERVICE VERSION
21/tcp filtered ftp
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu3 (protocol 2.0)
25/tcp open smtp qmail smtpd
53/tcp open domain ISC BIND 9.4.2-P2.1
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) PHP/5.2.4-2ubuntu5.25 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g mod_perl/2.0.3 Perl/v5.8.8)
106/tcp filtered pop3pw
110/tcp open pop3 Courier pop3d
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
143/tcp open imap Courier Imapd (released 2004)
443/tcp open ssl/http Apache httpd 2.2.8 ((Ubuntu) PHP/5.2.4-2ubuntu5.25 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g mod_perl/2.0.3 Perl/v5.8.8)
445/tcp filtered microsoft-ds
465/tcp open ssl/smtp qmail smtpd
587/tcp open smtp qmail smtpd
993/tcp open ssl/imap Courier Imapd (released 2004)
995/tcp open ssl/pop3 Courier pop3d
1720/tcp filtered H.323/Q.931
3306/tcp filtered mysql
Aggressive OS guesses: Linux 2.6.9 (91%), Linux 2.6.9 - 2.6.24 (91%), Linux 2.6.11 (90%), Infoblox NIOS Release 4.1r2-5-22263 (89%), Linux 2.6.9 (CentOS 4.4) (89%), Linux 2.6.18 (CentOS 5.1, x86) (89%), Thomson Symbio VoIP phone (88%), HP Brocade 4100 switch; or Actiontec MI-424-WR, Linksys WRVS4400N, or Netgear WNR834B wireless broadband router (87%), AVM FRITZ!Box FON WLAN 7170 WAP (87%), Dell Remote Access Controller 5/I (DRAC 5/I) (87%)
No exact OS matches for host (test conditions non-ideal).
Uptime guess: 34.099 days (since Sat Jun 16 06:19:22 2012)
Network Distance: 9 hops
TCP Sequence Prediction: Difficulty=193 (Good luck!)
IP ID Sequence Generation: All zeros
Service Info: Host: localhost.localdomain; OSs: Linux, Unix
Damit bin ich erst mal zufrieden, ok für die Kunden etwas aufwendiger, aber was ist das gegen einen gehackten Server.
Ich jedenfalls bin restlos bedient was PLESK betrifft und kann jedem nur empfehlen diesen Müll möglichst selten an die Sonne zu lassen.
Klaus