SPOTブログ

2016/09/08

【誤検知】WAFのSiteGuard Liteで閲覧をブロックされてしまった場合の除外設定の方法

最近、サーバーにWAF(ウェブアプリケーションファイアーウォール)が標準搭載されることが増えてきました。

SQLインジェクション等のハッキングとかの攻撃をブロックできるのは確かにすごく便利で安全です。

でも、困ってしまうのが誤検知なんですよね。

最近も、当社で運営するウェブサイトにアクセスしようとしたら、なんとアクセスをブロックされてしまいました…

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-09-08-19-27-26

一般のユーザーさんのアクセスについては問題なかったのですが、社内からアクセス出来ないのは困ります。

そこで、.htaccessを使って、WAFの一部を無効にする方法を見つけましたので、ご紹介します。

検出シグネチャ名で除外設定する方法

検出シグネチャとは、WAFが検出した不正アクセスのルール名のことです。

たとえば、「xss-tagclose2」とか、「xss-try-1」「sqlinj-9」などのことです。

sqlinj-Xの場合だと、名前から推測できる通り、SQLインジェクションだと推測されているわけですね。

この特定のシグネチャをオフにすれば解決出来る場合、.htaccessに以下のように記述します。

SiteGuard_User_ExcludeSig の後ろに除外したいシグネチャを入れればOKです。

ただし、この設定をした場合、その検出ルール全体がオフになってしまいますので、セキュリティが低下してしまう可能性があります。

そこで、今回は、別の方法として、IPアドレスで除外設定をすることにしました。

IPアドレスでWAFの除外設定をする方法

まず、自分のIPアドレスを調べます。

IPアドレスがわかったら、.htaccessに以下の通り記述します。

 192.168.10.1の部分を除外したいIPアドレスに置き換えてください。

もし、2つ以上のIPアドレスを除外したい場合は、以下のように並べて記述すればOKです。

今回はです。