Sicherheit

Webseiten sind das Ziel von Hacker-Angriffen, d.h. nicht nur von pubertierenden Script-Kiddies. Goggle hat zur Anzahl der geknackten Seiten  eine Statistik veröffentlicht. Besonders komplexe Systeme wie Wordpress und Drupal  mit vielen undurchsichtigen Plugins haben schwer feststellbare Sicherheitslücken.

Ein besonders kompliziertes Problem sind sog. XSS - Lücken (cross site scripting).

Zum verbesserten Schutz gegen X-XSS gibt es einen nicht von allen Browsern unterstützten htaccess-Eintrag :

<IfModule mod_headers.c> 
  Header set X-XSS-Protection "1; mode=block" 
</IfModule>

Eine erhöhte Sicherheit gegen diesbezügliche Clickframe-Angriffe gibt ein X-Frame-Options - htaccess-Eintrag

Header append X-FRAME-OPTIONS "SAMEORIGIN"

* Cross site tracing

Ein Hacker, der versucht, ein CMS anzugreifen, versucht zuerst einmal, Informationen zu erhalten. Daher wird (auch von den Apache-Entwicklern) empfohlen, die Trace-Funktion auszuschalten.

RewriteCond %{REQUEST_METHOD} ^TRACE 
  RewriteRule .* - [F]

 

* Directory indexing

Wer seine Seite gegen die Anzeige der Verzeichnis-Liste sichern will , kann eine htaccess-Datei mit dem Inhalt :   

 '  Options  -Indexes '   oder mit

IndexOptions -FancyIndexing

  in das entsprechende Verzeichnis kopieren. Eine Alternative ist, eine leere index.php hineinzukopieren

 

* Weitere Sicherheit bietet der Umstieg auf das https-Protokoll. 

 

* Eine weitere  Möglichkeit sind Vorfilter der URI, die Inhalte wie ?cgi , <script , escape  und ähnliches ausfiltern und dann die gesamte und auf eine bestimmte länge begrenzte URL mit PUT (o.ä.) zurückschreiben. Hier muss die Uri dann frei von bestimmten Zeichen wie ? sein, was bei vielen CMSsen besonders im eingeloggten Zustand Probleme bereitet und komplexe Filter erfordert.

 

*  Cross.-Site Request Forgery (CSRF) ist ein Angriff, der einen Endbenutzer dazu zwingt, unerwünschte Aktionen in einer Webanwendung auszuführen, in der er sich gerade authentifiziert. Zum Schutz dagegen gibt es sog. CSRF-Tokens. Typesetter verwendet CSRF-Tokens und in der neuen Beta einen diesbezüglich  erhöhten Schutz für das Dashboard.

Diesbezüglich  wurden anderweitig Plugins entwickelt wie der CSRF-Protector (zum anbinden an die index.php) und Csurf .

* OWASP mit vielen Hinweisen

* HTML5 - Security

* Content Security Policy


Diese Einträge betreffen hauptsächlich den Apache-Webserver.  Sie sind für den Nginx nicht anwendbar, es gibt aber htaccess-Konverter für Nginx-conf und spezielle Sicherungsoptionen.

*  Converting Apache Rewrite Rules to NGINX Rewrite Rules