User Tools

Site Tools


it_best_practise:apache:mod_security

mod_security Modul

Versionsinformation

  • Webserver: Apache 2.4.x / Apache 2.2.x
  • mod_security Versionsnummer 2.9.1
  • mod_security Regeln: OWASP CRS 3.0(gold)

Modulfunktion

Laut Webseite https://modsecurity.org/ ermöglicht das Modul die den Betrieb einer Web Application Firewall und soll SQL Injections und Cross Site Scripting Attacks verhindern.

Installation

Das Modul von https://modsecurity.org/download.html herunterladen und installieren. Falls das Modul nicht für das genutzte Betriebssystem des Webservers verfügbar ist, empfiehlt es sich, es selbst zu kompilieren.

Die Datei modsecurity.conf-recommended an den eigenen Server anpassen und als modsecurity.conf in das Verzeichnis mit den Webserverkonfigurationsdateien kopieren.

Die Firewall - Regelsätze von https://github.com/SpiderLabs/owasp-modsecurity-crs/releases ebenfalls herunterladen.

Die Konfigurationsdatei crs-setup.conf.example an den eigenen Server anpassen und zusammen mit den Firewall-Regeln aus dem rules Verzeichnis an die in der modsecurity.conf angegebene Stelle kopieren.

Den Webserver neu starten.

Konfiguration

Es empfiehlt sich, die Konfigurationseinstellung SecRuleEngine in modsecurity.conf zuerst einaml auf DetectionOnly zu lassen, um zu verhindern, dass durch False Positives der Webserver seine Aufgaben nicht mehr wahrnimmt.

Es kann Sinn machen, die RWTH IP-Adressen auf eine whitelist zu setzen. Das geht in der REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf Datei im Verzeichnis, in dem sich die Firewall-Regeln befinden.

Syntax Beispiel: SecRule REMOTE_ADDR “@ipMatch xx.yy.aa.bb/16,xx.yy.aa.bb/16,xx.yy.aa.bb/16” “phase:1,id:1000,pass,nolog,ctl:ruleEngine=Off”

Weiterhin können folgende Webserver-Dienste auch zu False Positives führen und müssen dann eventuell durch Ausnahmen erlaubt werden:

  • Webmail-Schnittstellen
  • SVN / GIT Schnittstellen
  • Editieren von CMS Inhalten
  • Download von Dateien mit bestimmten Endungen (z.B. .dat .dll .exe)
  • piwik Webanalytics
  • Shibboleth Anwendungen
  • selbst geschriebene php / sql Anwendungen

Auswertung der Log-Dateien

Die Auswertung und Aufbereitung der Log-Dateien kann z.B. durch graylog https://www.graylog.org/ vorgenommen werden:

it_best_practise/apache/mod_security.txt · Last modified: 2024/02/27 11:41 by 127.0.0.1