特定の要求をバイパスして WAF を通過しないようにすることができます。
WAF をバイパスするいくつかの方法を以下に示します。
コンテンツの長さから
コンテンツの長さが定義された値よりも大きい場合は、WAF をバイパスできます。
カスタム ルールの構文:
SecRule 'Variable:"value"' "phase:1,id:4000100,nolog,pass,ctl:ruleEngine=off"
例:
この例では、content-length ヘッダーの値が 1048576 より大きい場合、要求は WAF をスキップします。
SecRule REQUEST_HEADERS:Content-Length "@gt 1048576" "phase:1,id:4000100,nolog,pass,ctl:ruleEngine=off"
チャンク転送エンコードから
WAF は、転送エンコード タイプに基づいてバイパスできます。
カスタム ルールの構文:
SecRule 'Variable "@match criteria"'""
チャンク エンコード ペイロードの部分的なバッファリングがサポートされています。クライアントから送信された元のチャンク境界を維持しながら、他のペイロードがストリーミングされます。
例:
この例では、転送に使用されるエンコードの形式がチャンク化されている場合、要求は WAF をスキップします。
SecRule REQUEST_HEADERS:Transfer-Encoding "@contains chunked" "phase:1,id:4000101,nolog,pass,ctl:ruleEngine=off"
要求されたパスの特定のパターンに基づく
WAF は、要求されたパスの特定のパターンに従ってバイパスできます。
カスタム ルールの構文:
SecRule 'Variable:"value"'"id:4000102,phase:1,t:none,pass,ctl:ruleEngine=off"
例:
この例では、文字列 /IDMProv/login.do
で始まる要求はすべて WAF をバイパスします。
SecRule REQUEST_URI “@beginsWith /IDMProv/login.do” “id:4000102,phase:1,t:none,pass,ctl:ruleEngine=off”