Ich bin kürzlich von fehlerhaften Fehlermeldungen von mod_security frequentiert worden. Die Filtersätze decken veraltete PHP-Exploits ab, und ich muss meine Inhalte neu schreiben, da Wordpress & Co vor Jahren Fehler hatte.
Passiert das jemand anderem?
Apache mod_security blockiert möglicherweise gefährliche HTTP-Anforderungen, bevor sie Anwendungen erreichen (speziell PHP). Es werden verschiedene Filtersätze verwendet, die hauptsächlich auf Regex basieren.
Also habe ich einen netten Shared Hosting Anbieter, technisch passend und so. Aber das nervte mich:
Erst letzte Woche musste ich einen Parameternamen &src=
in einer meiner Apps ändern, weil mod_security damit JEDE Anfragen blockiert. Ich habe die Details nicht nachgeschlagen, aber diese Filterregel verhinderte die Ausnutzbarkeit einer anderen App, die ich nicht verwende und von der ich wahrscheinlich noch nie gehört habe. Trotzdem musste ich meinen Code neu schreiben (das Umbenennen von Parametern reicht oft aus, um mod_security auszutricksen), was nichts damit zu tun hatte oder damit gemein hatte!
Und heute blockiert ein alberner Regex Formulareingaben, weil ich PHP-Beispielcode einreichen wollte. Dies ist das einfache Zeug, vor dem mod_security schützen soll. Aber ich glaube nicht, dass mod_security ernsthaft verschleierten Code erkennen kann und nur bei offensichtlichen (und in diesem Fall völlig trivialen) PHP-Schnipsel abläuft.
Grundsätzlich werde ich von mod_security bestraft, weil andere Leute fehleranfällige Apps veröffentlicht haben. (Ich sage nicht, dass meine Apps extrem sicher sind - ich bin ziemlich sicherheitsbedürftig, mache aber keine hyperbolischen Ansprüche.)
Ich habe meinen Provider bereits gebeten, sie trotzdem zu deaktivieren. Die Vorteile sind zu gering, IMO und für meine Apps.
Was denkst du? Ist mod_security außerhalb des WP-Hostings sehr sinnvoll? Oder sind es wirklich nur ein paar schwarze Listen mit längst vergangenen Sicherheitslücken? Welche der Regeln sind tatsächlich hilfreich? Gibt es eine entsprechende Anwendungsebene?
<?php doBadStuff(); ?>
diese Funktion nicht ausgeführt wird. (Es sei denn, Sie verwendeneval
natürlich, was sowieso böse ist.)Antworten:
Ich persönlich sehe mod_security als Patch. Ich verwende es auf einigen unserer Server, auf denen wir den hochgeladenen Code nicht kontrollieren können (z. B. gemeinsam genutzte Hosting-Server), aber es hat sich für mich nie wirklich als gute Lösung angefühlt. Aufgrund seines breiten und sehr allgemeinen Blacklist-Ansatzes ist es eher ein Patch, um Sicherheitslücken zu schließen, als eine gute Sicherheitsrichtlinie.
Es kann auch ein falsches Sicherheitsgefühl vermitteln. mod_security kann einige häufige Angriffe aufdecken, aber keinen Angriff verhindern. Wieder ist es eine schwarze Liste allgemein bekannter Angriffe. Wenn Sie einfach mod_security installieren und denken, dass Sie magisch sicher sind, irren Sie sich schrecklich.
Ich habe eine viel bessere Richtlinie für verwaltete Server gefunden, bei der mein Team den gesamten Code überprüft, der auf ihnen platziert ist, kombiniert mit vielen Protokollen, Protokolldateianalysen, Berichtssystemen und Intrusion Detection / Intrusion Prevention-Systemen (IPS). Jedes Mal , wenn Software von Drittanbietern oder Open Source installiert wird (ich sehe Sie an , WordPress!), Führen wir ein Protokoll darüber, wo sie installiert wurde, und wenn neue Versionen veröffentlicht werden, aktualisieren wir jede installierte Kopie.
Auch hier ist es wahrscheinlicher, dass Sie mod_security auf einem gemeinsam genutzten Hosting-Server finden, wie Sie es jetzt erleben. Wenn Sie wachsen, können Sie zu einem VPS- oder Clod-basierten Hosting-Anbieter wechseln, bei dem Sie Ihre eigene verwaltete Umgebung erhalten und die verfügbare Software genauer steuern können.
quelle
Meiner Meinung nach ist mod_security eine gute Idee, wenn Sie ein Anfänger in der Programmierung sind. Wenn Sie sich jedoch die Zeit nehmen, Ihre Anwendungen korrekt zu schreiben, und vermeiden, unsicheren Code zu schreiben, der eval oder verkettete GET-Zeichenfolgen direkt in SQL verwendet, sollten Sie in Ordnung sein es. mod_security wird die ernsthaften Hacker niemals aufhalten, und wenn Sie eine gute Anwendung haben, geben die Skriptkinder auf und wechseln zur nächsten wirklich schwachen und unsicheren App da draußen.
quelle