Sicherheitsrisiko bei der Verwendung eines Benutzers für alle Shared-Hosting-Clients?

Sicherheitsrisiko bei der Verwendung eines Benutzers für alle Shared-Hosting-Clients?

Ich habe derzeit meinen CentOS 6.6 VPS für Kunden eingerichtet, die Websites auf meinem Server hosten. Sie haben FTP-Zugriff über einen virtuellen Benutzer (mit vsftpd als echtem Benutzer), der in ihren WWW-Ordner chrootet ist. Ihre E-Mails werden im Home-Ordner von vmail gespeichert, kategorisiert nach Domäne und (virtuellem) Benutzer.

Im Nachhinein sehe ich, dass das ziemlich umständlich war. Es wäre einfacher und wahrscheinlich besser gewesen, wenn ich für alle meine Kunden echte Benutzer verwendet hätte, ihren Home-Ordner nach /var/www umgeleitet und ihre E-Mails auch dort gespeichert hätte. Wahrscheinlich sollte PHP auch daran gehindert werden, das Home-Verzeichnis des Benutzers zu verlassen (bin mir allerdings nicht sicher, wie).

Ist mein Setup mit Risiken verbunden? Könnte ein Angreifer, der Benutzer X kompromittiert hat, problemlos auch Benutzer Y kompromittieren? Wäre es ratsam, zum vorgeschlagenen Setup zu wechseln? Das wird Tage dauern, ich bin mir nicht sicher, ob es den Aufwand wert ist …

Ich verwende Apache, MySQL, PHP, Postfix, Dovecot, VSFTP.

Antwort1

Angesichts der besonderen Gefahr, dass ein Benutzer auf die Dateien eines anderen Benutzers zugreifen kann, ist die Ausführung aller „Benutzer“ im selben Sicherheitskontext wie jetzt wahrscheinlicher und daher riskanter.

Es gibt hier Feinheiten, da das andere Setup andere Bedrohungen birgt, die die Chroot-Version vielleicht nicht hat.chroot ist kein Sicherheitsfeature.

Letztendlich wird das Risiko wahrscheinlich davon abhängen, welche Auswirkungen es hätte, wenn ein Benutzer Zugriff auf die Daten eines anderen Benutzers hätte. Wenn die Auswirkungen gering sind, lohnt es sich möglicherweise nicht, alles zu ändern. Aber „sollte“ man es gemäß bewährter Verfahren zum Schutz der Vertraulichkeit ändern? Wahrscheinlich.

verwandte Informationen