Mod­Se­cu­ri­ty ist eine kos­ten­lo­se Web Ap­pli­ca­ti­on Firewall (WAF), die eine einfache und leis­tungs­star­ke Mög­lich­keit ist, einen Server vor web­ba­sier­ter Malware und Hacking-Versuchen zu schützen. Erfahren Sie, wie Sie Mod­Se­cu­ri­ty und das offiziell emp­foh­le­ne OWASP Core Rule Set (CRS) in­stal­lie­ren, das einen Server vor Malware und Hacking in Form von SQL-Injektion, Session Hijacking, Cross-Site-Scripting, Trojanern und vielen anderen Formen von web­ba­sier­ten Exploits schützt.

Compute Engine
Die ideale IaaS für Ihre Workloads
  • Kos­ten­güns­ti­ge vCPUs und leis­tungs­star­ke de­di­zier­te Cores
  • Höchste Fle­xi­bi­li­tät ohne Min­dest­ver­trags­lauf­zeit
  • Inklusive 24/7 Experten-Support

An­for­de­run­gen

  • Ein Cloud Server unter Linux (Ubuntu 16.04)
  • Der Apache wurde in­stal­liert und läuft.
Hinweis

Der Apache ist stan­dard­mä­ßig auf einer Stan­dard­in­stal­la­ti­on in­stal­liert und läuft dort. Wenn Ihr Server mit einer Mi­ni­mal­in­stal­la­ti­on erstellt wurde, müssen Sie den Apache in­stal­lie­ren und kon­fi­gu­rie­ren, bevor Sie fort­fah­ren können.

Mod­Se­cu­ri­ty in­stal­lie­ren

In­stal­lie­ren Sie das libapache2-mod­se­cu­ri­ty-Paket:

sudo apt-get install libapache2-modsecurity

Verwenden Sie apachectl -M | grep security, um si­cher­zu­stel­len, dass das Paket in­stal­liert wurde. Der Server antwortet mit:

user@localhost:~# apachectl -M | grep security
security2_module (shared)

Erstellen Sie ein Ver­zeich­nis für die Mod­Se­cu­ri­ty-Regeln:

sudo mkdir /etc/modsecurity

Erstellen Sie eine Datei für Mod­Se­cu­ri­ty-Regeln und öffnen Sie die Datei zur Be­ar­bei­tung:

sudo nano /etc/modsecurity/mod_security.conf

Fügen Sie Folgendes zur Datei hinzu:

<IfModule mod_security2.c>
    SecRuleEngine On
    SecRequestBodyAccess On
    SecResponseBodyAccess On 
    SecResponseBodyMimeType text/plain text/html text/xml application/octet-stream 
    SecDataDir /tmp
</IfModule>

Speichern und beenden Sie die Datei. Starten Sie dann den Apache neu, damit die Än­de­run­gen wirksam werden:

sudo systemctl restart apache2

In­stal­la­ti­on und Kon­fi­gu­ra­ti­on des OWASP Core Rule Set (CRS)

Das OWASP Core Rule Set (CRS) erweitert die Funk­tio­na­li­tät von Mod­Se­cu­ri­ty um eine Reihe von Si­cher­heits­re­geln zum Schutz Ihres Servers.

Zuerst in­stal­lie­ren Sie das git-Paket:

sudo apt-get install git

Gehen Sie in das Ver­zeich­nis /etc/apache2:

cd /etc/apache2/

Laden Sie die OWASP-In­stal­la­ti­ons­da­tei­en herunter:

sudo git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git

Wechseln Sie in das neue OWASP-Ver­zeich­nis:

cd owasp-modsecurity-crs

Erstellen Sie eine Kopie der Beispiel-Setup-Datei und benennen Sie sie um:

sudo cp crs-setup.conf.example crs-setup.conf

Öffnen Sie die Haupt­kon­fi­gu­ra­ti­ons­da­tei des Apache zur Be­ar­bei­tung:

sudo nano /etc/apache2/apache2.conf

Scrollen Sie nach unten zu dem Abschnitt, der lautet:

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

Füge die folgenden zwei Zeilen hinzu:

Include /etc/apache2/owasp-modsecurity-crs/crs-setup.conf
Include /etc/apache2/owasp-modsecurity-crs/rules/*.conf

Speichern und beenden Sie die Datei. Starten Sie dann den Apache neu, damit die Än­de­run­gen wirksam werden:

systemctl restart apache2
Web­hos­ting
Das beste Web­hos­ting zum Spit­zen­preis
  • 3x schneller und 60 % günstiger
  • Maximale Ver­füg­bar­keit mit > 99.99 %
  • Nur bei IONOS: Bis zu 500 GB Spei­cher­platz inklusive

Über­prü­fen Sie, ob Mod­Se­cu­ri­ty in­stal­liert ist und das OWASP CRS geladen ist

Sie können das OWASP CRS von Mod­Se­cu­ri­ty testen, indem Sie die URL besuchen:

http://example.com/?param="><script>alert(1);</script>

Dabei wird example.com durch den Do­mä­nen­na­men oder die IP-Adresse Ihres Servers ersetzt.

Der Zugang wird Ihnen mit einem 403 ver­wei­gert: Ver­bo­te­ner Fehler. Außerdem wird dieser Fehler in der Datei /var/log/apache2/error.log mit einem ähnlichen Eintrag wie:

[Tue Aug 01 21:28:41.118995 2017] [:error] [pid 59913] [client 79.196.255.255] ModSecurity: Warning. Pattern match "^[\\\\d.:]+$" at REQUEST_HEADERS:Host. [file "/etc/apache2/owasp-modsecurity-crs/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf"] [line "810"] [id "920350"] [rev "2"] [msg "Host header is a numeric IP address"] [data "50.21.182.126:80"] [severity "WARNING"] [ver "OWASP_CRS/3.0.0"] [maturity "9"] [accuracy "9"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-protocol"] [tag "OWASP_CRS/PROTOCOL_VIOLATION/IP_HOST"] [tag "WASCTC/WASC-21"] [tag "OWASP_TOP_10/A7"] [tag "PCI/6.5.10"] [hostname "50.21.182.126"] [uri "/phpmanager/"] [unique_id "WYDyiX8AAAEAAOoJ5qMAAAAA"]

Ak­tua­li­sie­rung des OWASP Core Rule Set (CRS)

Das OWASP CRS wird mit einem Skript geliefert, das Sie ausführen können, um die Regeln auf die neueste Version zu ak­tua­li­sie­ren. Zur Ak­tua­li­sie­rung von OWASP:

sudo python /etc/apache2/owasp-modsecurity-crs/util/upgrade.py --crs

Wenn Sie es jetzt ausführen, um den Befehl zu testen, antwortet es mit:

crs:
From https://github.com/SpiderLabs/owasp-modsecurity-crs
 * branch            HEAD       -> FETCH_HEAD
Already up-to-date.

We recommend that you pe­ri­odi­cal­ly run this script to update the OWASP CRS for the latest security patches.

Zum Hauptmenü