ModSecurityの偽陽性に対処したときのメモ。

PC版へ 2023年10月03日

うちのサーバではセキュリティ対策としてModSecurityを入れていて、サーバの脅威となる不正アクセスを弾いています。

かなり効果的に働いてくれているのですが、ログを見てみると、(おそらく)正当なアクセスにもかかわらずアクセスを拒否してしまう、いわゆる「偽陽性」が生じる事例が一定数あるのですね。

偽陽性が発生するルールのIDで目立つのは、うちでは以下の4つ。

OWASP ModSecurity 2.9 Core Rule Set v3.3.4 の:

これらのルールを無効にしてしまうのが、対処としては手っ取り早い。

無効にするには、
  SecRuleRemoveById 941120 941310 942100 942230
とか設定してやる。

手っ取り早いのだけれど、ログを確認すると、これらのルールが正しく不正検知している場合も多くあるので、ルール自体を完全に止めてしまうのには少し抵抗がある。

そこで更に詳しく解析してみると、どうやら

…という、2パターンがあるっぽいことを発見。

A. は、誤検知に引っかかるCookieを特定できたので、検査対象からそのCookieを外します。設定ファイルに以下を記述して Apache を再起動。

もしくは、ルールを直接編集。



そして B. への対処を検討した結果、誤検知が生じるルールを、検索窓が設置されているファイルでのみオフにするのが良かろう…という結論に。

設定したら、Apacheを再起動。

しばらく稼働させてみた結果、偽陽性によるアクセス拒否は皆無になりました。とりあえず大丈夫なようです。

ウェブサイトの使い勝手とセキュリティとのバランスを取りつつの設定作業、かなり難儀した。

関連記事

<<前の記事 | HOME | 次の記事>>

コメント

現在、コメント機能は停止しています。