Verwenden Sie das ModSecurity Apache Module auf einem Cloud Server mit Ubuntu 16.04.
ModSecurity ist eine kostenlose Web Application Firewall (WAF), die eine einfache und leistungsstarke Möglichkeit ist, einen Server vor webbasierter Malware und Hacking-Versuchen zu schützen. Erfahren Sie, wie Sie ModSecurity und das offiziell empfohlene OWASP Core Rule Set (CRS) installieren, das einen Server vor Malware und Hacking in Form von SQL-Injektion, Session Hijacking, Cross-Site-Scripting, Trojanern und vielen anderen Formen von webbasierten Exploits schützt.
- Kostengünstige vCPUs und leistungsstarke dedizierte Cores
- Höchste Flexibilität ohne Mindestvertragslaufzeit
- Inklusive 24/7 Experten-Support
Anforderungen
- Ein Cloud Server unter Linux (Ubuntu 16.04)
- Der Apache wurde installiert und läuft.
Der Apache ist standardmäßig auf einer Standardinstallation installiert und läuft dort. Wenn Ihr Server mit einer Minimalinstallation erstellt wurde, müssen Sie den Apache installieren und konfigurieren, bevor Sie fortfahren können.
ModSecurity installieren
Installieren Sie das libapache2-modsecurity-Paket:
sudo apt-get install libapache2-modsecurity
Verwenden Sie apachectl -M | grep security, um sicherzustellen, dass das Paket installiert wurde. Der Server antwortet mit:
user@localhost:~# apachectl -M | grep security
security2_module (shared)
Erstellen Sie ein Verzeichnis für die ModSecurity-Regeln:
sudo mkdir /etc/modsecurity
Erstellen Sie eine Datei für ModSecurity-Regeln und öffnen Sie die Datei zur Bearbeitung:
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 Änderungen wirksam werden:
sudo systemctl restart apache2
Installation und Konfiguration des OWASP Core Rule Set (CRS)
Das OWASP Core Rule Set (CRS) erweitert die Funktionalität von ModSecurity um eine Reihe von Sicherheitsregeln zum Schutz Ihres Servers.
Zuerst installieren Sie das git-Paket:
sudo apt-get install git
Gehen Sie in das Verzeichnis /etc/apache2:
cd /etc/apache2/
Laden Sie die OWASP-Installationsdateien herunter:
sudo git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git
Wechseln Sie in das neue OWASP-Verzeichnis:
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 Hauptkonfigurationsdatei des Apache zur Bearbeitung:
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 Änderungen wirksam werden:
systemctl restart apache2
- Flexibel: Hosting, das jedem Website-Traffic standhält
- Verlässlich: Inklusive 24/7-Support und persönlicher Beratung
- Sicher: Kostenloses SSL-Zertifikat, DDoS-Schutz und Backups
Überprüfen Sie, ob ModSecurity installiert ist und das OWASP CRS geladen ist
Sie können das OWASP CRS von ModSecurity testen, indem Sie die URL besuchen:
http://example.com/?param="><script>alert(1);</script>
Dabei wird example.com durch den Domänennamen oder die IP-Adresse Ihres Servers ersetzt.
Der Zugang wird Ihnen mit einem 403 verweigert: Verbotener 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"]
Aktualisierung 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 aktualisieren. Zur Aktualisierung 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 periodically run this script to update the OWASP CRS for the latest security patches.