Sicherheitslücken bei S4Y

tim

Registered User
Hallo zusammen,

ich habe einen vServer mit SuSE 9 und Confixx Premium 2003 bei S4Y.

1.)
Bei mir sind die Dateien
/usr/local/confixx/confixx_main.conf
/srv/www/confixx/webftp.conf (oder /var/www/confixx/webftp.conf)
/srv/www/confixx/webmail.conf (oder /var/www/confixx/webmail.conf)

auf 644 gestellt, d.h. jeder User hat lesenden Zugriff auf diese Datei.

Das dumme daran ist, dass dort das MySQL-Root-Passwort in Klartext hinterlegt ist.
Und das Dümmere daran ist, dass man bei S4Y im Administrator-Bereich das Root- und MySQL-Passwort neu setzen lassen kann, wobei diese Passwörter immer identisch sind! D.h. wenn jemand das MySQL-Passwort hat, hat er auch gleich das root-Passwort. Da kann man ja nur hoffen, dass jeder nach einem Passwort-Reset die Passwörter ändert.

Minimum-Verbesserungsvorschlag: MySQL- und root-Passwort trennen und die betroffenen Dateien nicht für die gesamte Welt lesbar machen.

2.)
Eine weitere Sicherheitslücke ist auch im Administrations-Bereich vorhanden. Man kann sich nämlich seine neu gesetzten Passwörter ansehen. Daraus folgt, dass die Passwörter entweder in Klartext oder höchstens so verschlüsselt in der DB abgelegt sind, dass man sie ohne weiteres wieder entschlüsseln kann.

Hackt jemand den Administrations-Server, hat er auch gleich alle root-Passwörter von den Servern, bei denen das root-Passwort nicht per Hand geändert wurde.

Verbesserungsvorschlag: Die neu erzeugten Passwörter werden nach der Anzeige im Administrations-Bereich (mit fettem Hinweis, dass man sich die Passwörter gut merken sollte!) aus der Administrations-DB gelöscht. Wer sie vergisst, kann sie ja wieder neu setzen lassen.

Gruß
tim
 

Huschi

Moderator
Staff member
tim said:
/usr/local/confixx/confixx_main.conf
Hier stimme ich Dir nicht zu! Das Verzeichnis /usr/local/confixx/ ist nähmlich nur für root zugänglich. Die Zugriffsrechte werden also bereits auf Verzeichnisebene beschränkt.

/srv/www/confixx/webftp.conf (oder /var/www/confixx/webftp.conf)
/srv/www/confixx/webmail.conf (oder /var/www/confixx/webmail.conf)
Hier stimme ich Dir zu, wobei hier lediglich die Zugangsdaten von der Confixx-Datenbank drin stehen.
Hier ist das übliche Problem mit Webanwendungen. Zum Einen müssen die Zugangsdaten irgendwo stehen, zum Anderen müssen sie für den Apache-User lesbar sein (und damit i.d.R. für Alle).

Beim 2. Punkt stimme ich Dir voll zu. Darum habe ich damals mein Root-Passwort nicht über das Admin-Interface geändert.

huschi.
 

tim

Registered User
Huschi said:
Hier stimme ich Dir nicht zu! Das Verzeichnis /usr/local/confixx/ ist nähmlich nur für root zugänglich. Die Zugriffsrechte werden also bereits auf Verzeichnisebene beschränkt.

Bei mir steht es auf 755. Das bedeutet also, dass jeder Lesen und Ausführen kann! Ich habe ja die Vermutung, dass es mit dem SuSE-Image zusammenhängt, denn ich selbst habe das Verzeichnis weder angelegt noch geändert.

Hier stimme ich Dir zu, wobei hier lediglich die Zugangsdaten von der Confixx-Datenbank drin stehen.
Hier ist das übliche Problem mit Webanwendungen. Zum Einen müssen die Zugangsdaten irgendwo stehen, zum Anderen müssen sie für den Apache-User lesbar sein (und damit i.d.R. für Alle).

Beim 2. Punkt stimme ich Dir voll zu. Darum habe ich damals mein Root-Passwort nicht über das Admin-Interface geändert.

huschi.

Apache läuft bei mir als wwwrun. Wenn ich den Zugriff auf die Dateien auf wwwrun einschränke, müsste es doch dann eigentlich ausreichen, oder sehe ich das verkehrt? Wäre immerhin besser als jetzt.

Gruß
tim
 

Huschi

Moderator
Staff member
Dann wird es Zeit /usr/local/confixx/ auf 700 zu setzten... ;)

tim said:
Apache läuft bei mir als wwwrun. Wenn ich den Zugriff auf die Dateien auf wwwrun einschränke, müsste es doch dann eigentlich ausreichen, oder sehe ich das verkehrt?
Ja, siehst Du verkehrt. Denn jeder lokale User (wir reden hier nur von lokalen Usern mit SSH- oder FTP-Zugang) kann mit wenig Erfahrung zur Not über Server-Scripte die Dateien auslesen.

huschi.
 

Huschi

Moderator
Staff member
tim said:
Was kann man sonst noch tun?
In Bezug auf die webmail.conf und webftp.conf?

Für Paranoide:
Erstellen eines neuen DB-Users, der nur auf die Tabellen lesenden Zugriff hat, die webftp und webmail wirklich brauchen.

huschi.
 

mbroemme

Blog Benutzer
Hi,

zu der Sache mit dem Kundeninterface, ich find das selber bescheuert, Zugangsdaten muss man nicht speichern, wenn der Kunde die einmal hat, hat er sie, vergisst er sie, hat er pech. Aber so sollte es ja nicht sein, damit man Zugangsdaten erneut versenden kann und alles son Kram :(

Es hat ansich nirgens einen praktischen Nutzen, aendert der Kunde sein root-Passwort per passwd so steht im Kundeninterface ja auch das alte, da er uns das neue sicher nicht mitteilen wird. ;)
 

tim

Registered User
Hallo Maik,

es wäre sicherlich schon einiges besser, wenn man im Kundeninterface klar darauf hinweisen würde und dass die Passwörter direkt auf dem Server unbedingt neu gesetzt werden sollten, nachdem man wieder Zugang zu seinem Server hat.

Gruss
tim
 
Top