ModSecurity und OWASP unter CentOS 6 und Apache 2

ModSecurity ist eine Firewall auf Webanwendungsebene, die für die Verwendung mit IIS, Apache2 und Nginx entwickelt wurde. Es handelt sich um kostenlose Open-Source-Software, die unter der Apache-Lizenz 2.0 veröffentlicht wurde. ModSecurity hilft beim Sichern Ihres Webservers, indem es Ihren Website-Verkehr überwacht und analysiert. Dies geschieht in Echtzeit, um Angriffe der meisten bekannten Exploits mithilfe regulärer Ausdrücke zu erkennen und zu blockieren. ModSecurity bietet allein nur begrenzten Schutz und stützt sich auf Regelsätze, um den Schutz zu maximieren.

Der Kernregelsatz (CRS) des Open Web Application Security Project (OWASP) ist ein Satz allgemeiner Angriffserkennungsregeln, die eine grundlegende Schutzstufe für jede Webanwendung bieten. Der Regelsatz ist kostenlos, Open Source und wird derzeit von Spider Labs gesponsert.

OWASP CRS bietet:

  • HTTP-Schutz - Erkennen von Verstößen gegen das HTTP-Protokoll und eine lokal definierte Verwendungsrichtlinie.
  • Echtzeit-Blacklist-Lookups - nutzt die IP-Reputation von Drittanbietern.
  • HTTP Denial of Service-Schutz - Schutz vor HTTP-Flooding und langsamen HTTP-DoS-Angriffen.
  • Schutz vor allgemeinen Webangriffen - Erkennen häufiger Sicherheitsangriffe auf Webanwendungen.
  • Automatisierungserkennung - Erkennung von Bots, Crawlern, Scannern und anderen schädlichen Oberflächenaktivitäten.
  • Integration in AV Scanning for File Uploads - Erkennt schädliche Dateien, die über die Webanwendung hochgeladen wurden.
  • Nachverfolgung sensibler Daten - Verfolgt die Kreditkartennutzung und blockiert Leckagen.
  • Trojanerschutz - Erkennt Trojaner.
  • Identifizierung von Anwendungsfehlern - Warnungen bei Fehlkonfigurationen der Anwendung.
  • Fehlererkennung und -verstecken - Verschleierung von vom Server gesendeten Fehlermeldungen.

Installation

Dieses Handbuch zeigt Ihnen, wie Sie den ModSecurity- und OWASP-Regelsatz unter CentOS 6 unter Apache 2 installieren.

Zunächst müssen Sie sicherstellen, dass Ihr System auf dem neuesten Stand ist.

 yum -y update

Wenn Sie Apache 2 nicht installiert haben, installieren Sie es jetzt.

 yum -y install httpd

Sie müssen jetzt einige Abhängigkeiten installieren, damit ModSecurity funktioniert. Abhängig von Ihrer Serverkonfiguration sind möglicherweise einige oder alle dieser Pakete bereits installiert. Yum installiert die Pakete, die Sie nicht haben, und informiert Sie, wenn eines der Pakete bereits installiert ist.

 yum -y install httpd-devel git gcc make libxml2 pcre-devel libxml2-devel curl-devel

Wechseln Sie das Verzeichnis und laden Sie den Quellcode von der ModSecuity-Website herunter. Die aktuelle stabile Version ist 2.8.

 cd /opt/
 wget https://www.modsecurity.org/tarball/2.8.0/modsecurity-2.8.0.tar.gz

Extrahieren Sie das Paket und wechseln Sie in sein Verzeichnis.

 tar xzfv modsecurity-2.8.0.tar.gz 
 cd modsecurity-2.8.0

Konfigurieren und kompilieren Sie den Quellcode.

 ./configure
 make
 make install

Kopieren Sie die Standard-ModSecurity-Konfigurations- und Unicode-Zuordnungsdatei in das Apache-Verzeichnis.

 cp modsecurity.conf-recommended /etc/httpd/conf.d/modsecurity.conf
 cp unicode.mapping /etc/httpd/conf.d/

Konfigurieren Sie Apache für die Verwendung von ModSecurity. Es gibt zwei Möglichkeiten, wie Sie dies tun können.

 echo LoadModule security2_module modules/mod_security2.so >> /etc/httpd/conf/httpd.conf

... oder verwenden Sie einen Texteditor wie nano:

 nano /etc/httpd/conf/httpd.conf

Fügen Sie am Ende dieser Datei in einer separaten Zeile Folgendes hinzu:

 LoadModule security2_module modules/mod_security2.so

Sie können Apache jetzt starten und so konfigurieren, dass es beim Booten startet.

 service httpd start
 chkconfig httpd on

Wenn Sie Apache vor der Verwendung dieses Handbuchs installiert hatten, müssen Sie es nur neu starten.

 service httpd restart

Sie können jetzt den OWASP-Kernregelsatz herunterladen.

 cd /etc/httpd
 git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git

Konfigurieren Sie nun den OWASP-Regelsatz.

 cd modsecurity-crs
 cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_config.conf

Als Nächstes müssen Sie den Regelsatz zur Apache-Konfiguration hinzufügen. Auch dies können wir auf zwei Arten tun.

 echo Include modsecurity-crs/modsecurity_crs_10_config.conf >> /etc/httpd/conf/httpd.conf
 echo Include modsecurity-crs/base_rules/*.conf >> /etc/httpd/conf/httpd.conf

... oder mit einem Texteditor:

 nano /etc/httpd/conf/httpd.conf

Fügen Sie am Ende der Datei in separaten Zeilen Folgendes hinzu:

 Include modsecurity-crs/modsecurity_crs_10_config.conf
 Include modsecurity-crs/base_rules/*.conf

Starten Sie nun Apache neu.

 service httpd restart

Löschen Sie abschließend die Installationsdateien.

 yum erase /opt/modsecurity-2.8.0
 yum erase /opt/modsecurity-2.8.0.tar.gz

Verwenden von ModSecurity

Standardmäßig wird ModSecurity nur im Erkennungsmodus ausgeführt. Dies bedeutet, dass alle Regelbrüche protokolliert werden, jedoch keine Maßnahmen ergriffen werden. Dies wird für Neuinstallationen empfohlen, damit Sie die im Apache-Fehlerprotokoll generierten Ereignisse überwachen können. Nach dem Überprüfen des Protokolls können Sie entscheiden, ob Änderungen am Regelsatz oder Deaktivieren der Regel (siehe unten) vorgenommen werden sollen, bevor Sie in den Schutzmodus wechseln.

So zeigen Sie das Apache-Fehlerprotokoll an:

 cat /var/log/httpd/error_log

Die ModSecurity-Zeile im Apache-Fehlerprotokoll ist in neun Elemente unterteilt. Jedes Element gibt Auskunft darüber, warum das Ereignis ausgelöst wurde.

  • Der erste Teil gibt an, welche Regeldatei dieses Ereignis ausgelöst hat.
  • Der zweite Teil gibt an, in welcher Zeile der Regeldatei die Regel beginnt.
  • Das dritte Element gibt an, welche Regel ausgelöst wurde.
  • Das vierte Element informiert Sie über die Überarbeitung der Regel.
  • Das fünfte Element enthält spezielle Daten für Debugging-Zwecke.
  • Das sechste Element definiert den Protokollierungsschweregrad dieses Ereignisschweregrads.
  • Der siebte Abschnitt beschreibt, welche Aktion in welcher Phase stattgefunden hat.

Beachten Sie, dass je nach Konfiguration Ihres Servers einige Elemente fehlen können.

Öffnen Sie die conf-Datei in einem Texteditor, um ModSecurity in den Schutzmodus zu ändern:

 nano /etc/httpd/conf.d/modsecurity.conf

... und ändern:

 SecRuleEngine DetectionOnly

zu:

 SecRuleEngine On

Wenn beim Ausführen von ModSecurity Blockaden auftreten, müssen Sie die Regel im HTTP-Fehlerprotokoll identifizieren. Mit dem Befehl "tail" können Sie die Protokolle in Echtzeit anzeigen:

 tail -f /var/log/httpd/error_log

Wiederholen Sie die Aktion, die den Block verursacht hat, während Sie das Protokoll überwachen.

Ändern eines Regelsatzes / Deaktivieren einer Regel-ID

Das Ändern eines Regelsatzes geht über den Rahmen dieses Lernprogramms hinaus.

Um eine bestimmte Regel zu deaktivieren, identifizieren Sie die Regel-ID im dritten Element (z. B. [id = 200000]) und deaktivieren sie anschließend in der Apache-Konfigurationsdatei:

 nano /etc/httpd/conf/httpd.conf

... indem Sie am Ende der Datei Folgendes mit der Regel-ID hinzufügen:

<IfModule mod_security2.c>
SecRuleRemoveById 200000
</IfModule>

Wenn Sie feststellen, dass ModSecurity alle Aktionen auf Ihren Websites blockiert, befindet sich "Core Rule Set" wahrscheinlich im "Self-Contained" -Modus. Sie müssen dies in "Kollaborative Erkennung" ändern, wodurch nur Anomalien erkannt und blockiert werden. Gleichzeitig können Sie die Optionen "In sich geschlossen" anzeigen und ändern, wenn Sie dies möchten.

 nano /etc/httpd/modsecurity-crs/modsecurity_crs_10_config.conf

Ändern Sie "Erkennung" in "In sich geschlossen".

Sie können ModSecurity auch so konfigurieren, dass Ihre IP-Adresse durch die Webanwendungs-Firewall (WAF) ohne Protokollierung zugelassen wird:

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=Off

... oder mit Protokollierung:

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=DetectionOnly

Einen Kommentar hinterlassen

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.