Vorschlag von Carsten Logemann
Vortrag für Alle | Tags: Security, Best Practice

Sichere Dateirechte: Wissen verbreiten und Provider überzeugen (Mitstreiter gesucht)

Es gilt auf drupal.org als sinnvolle Sicherheitsmaßnahme, dem Webserver Schreibrechte nur in bestimmten Drupal-Ordnern (z.B. "files" und "tmp") zu geben und dort die Ausführung von PHP zu unterbinden. Leider gibt es in der Praxis massenhaft Drupal-Systeme, die nicht entsprechend abgesichert sind!
Insbesondere ist es nicht ratsam, daß der Webserver Drupal-PHP-Dateien modifizieren darf, da dies im Falle eines Einbruchs in ein System missbraucht werden kann. Des weiteren kann ein Hacker sonst Schadcode nachinstallieren und somit den Webserver z.B. in eine "SPAM-Schleuder" verwandeln. Dies war das Ziel von vielen massenhaften Angriffen im Zuge des als "Drupalgeddon" bekannt gewordenen Sicherheitsproblem (siehe Links unten), das leider zu oft von Erfolg der Hacker geprägt war.

Der Test "Safe file system permissions" des Moduls "Security Review" überprüft die Dateirechte und warnt bei schlechter Konfiguration. Ich habe mir zum Zeil gesetzt, diesen Test auf jedem Drupal-System "grün" zu bekommen. Zu diesem Zweck habe ich auf g.d.o die Gruppe "Safe file system permissions" gegründet.

Drupal Administratoren mit tiefer gehenden Konfigurationsrechten auf dem Webserver (Stichwort "Root"-Access) haben die Möglichkeit, den Empfehlungen ("Securing file permissions and ownership") zu folgen. Aber es gibt zu viele Webhosts, die von Providern als "Managed webspace" verwaltet werden, die Einschränkungen haben, ein Drupal System in der empfohlenen Weise sicher zu konfigurieren. Dies gilt auch für einige Provider, die ihre Produkte speziell für den betrieb von Drupal anpreisen. In diesem Sinne dient dieser Vortrag nicht nur der Information über die sichere Konfiguration, sondern auch der Suche nach Mitstreitern, evtl. mit Hilfe der Drupal Association und des Drupal e.V. in Deutschland, das Gespräch auch zu den großen Hostern zu suchen und diese Situation zu ändern.

Auf technischer Seite werde ich kurz aufzeigen, wie sich auch ein Apache/PHP FCGI-Setup mit Suexec (mit der Hoster oft den Kunden Projekte gegeneinander absichern ganz leicht auch mit zwei Systembenutzern und einer gemeinsamen-Gruppe gemäß der offiziellen Empfehlung auf drupal.org konfigurieren lässt. Da mir im Moment leider nur ein Positiv-Beispiel eines größeren Providers bekannt ist, kann ich nur eine Konfiguration in der Server-Veraltung dieses Providers (Hosteurope) zeigen. Daß dieser die nötige Einstellung nicht per Default konfiguriert, sollte man diesem nicht vorwerfen, da Webanwendungen sich sehr unterscheiden, an welchen Stellen, der Webserver Schreibrechte haben darf oder nicht. Ich kenne mich diesbezüglich auch nur mit Drupal aus.

Bis mir jemand ein sicheres Konzept zeigt, wie man eine Webanwendung sich selbst updaten lassen kann über den Webserver (und nicht mit drush über ssh zum Beispiel), ist diese Funktion mehr ein Bug als ein Feature für mich.

Weitere Links:

Abstimmen!

Stimmen: 12

(Zum Abstimmen musst du angemeldet sein.)