0

私は mod_security2 を使用する初心者です。私はそれを約3週間しか使用していません。

誰かが次のことを達成する方法を教えてくれることを願っています。次のルールを作成する方法を探しています。

  1. URL の場合、ドメイン名の後に/SOMETHING
  2. そして、引数名 (任意の場所にdateorを含むtimestamp) または (正確にlastLogon)
  3. そして、引数の値は正規表現と一致します^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}[-+]?[0-9]{4}$
  4. または、引数名は正確に「filters」です (値に関係なく)
  5. 次に、ctl:ruleRemoveTargetById=981173 を実行します。

リファレンス マニュアルに欠けていると私が思うのは、SecRule の説明された複雑な例です。見つからなかっただけかもしれませんが、その場合はご容赦ください。正しい方向に向けてください。

バージョン2.9.0を使用しています

たぶん、チェーンなどを使用していますか?機能させることができませんでした (ブール値が必要なためor)。知らない。

私はすでに助けを求めてこのリクエストを書いているので、知っておくと便利なショートカットがあるかもしれません: ドメイン名の後の URL が で始まる場合に適用される多くのルールを書く必要が/SOMETHINGあります。それらを処理する簡単な方法はありますか?

前もって感謝します。

4

3 に答える 3

0

やり方がわかった気がします。

    SecRule REQUEST_FILENAME "@beginsWith /SOMETHING" "phase:1,t:none,nolog,pass,ctl:ruleRemoveTargetById=981173;ARGS:filters,id:'10000'"
    SecRule REQUEST_FILENAME "@beginsWith /SOMETHING" "phase:1,chain,t:none,nolog,pass,ctl:ruleRemoveById=981173,id:'10010'"
        SecRule ARGS:/(?i)^.*date.*$/|ARGS:/(?i)^.*timestamp.*$/|ARGS:lastLogon "@rx ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}[-+]?[0-9]{4}$" "t:none"

私は正しいですか?コメントはありますか?

于 2016-03-05T00:26:08.113 に答える