お知らせ

エックスサーバーでWAFをオンにした時にでる501エラー

エックスサーバーで運用しているワードプレスでブログなどを書いた時に特定の文字を入れると501エラーが表示されます。

原因はエックスサーバーのWAFのコマンドラインが投稿内に含まれている特定の文字列を攻撃と判断しエラーを返しています。

WAFにはサーバーに対するコマンドラインを防ぐ機能がありリナックスで利用するコマンドがその対象になります。

エックスサーバーのホームページにはこのような記載があります。

https://www.xserver.ne.jp/manual/man_server_waf.php

kill、ftp、mail、ping、ls 等コマンドに関連する文字列が含まれたアクセスを検知します。

この説明文がいかにも不親切で上記5つの文字だけでなく他にもたくさんあります。というか普通の人がブログにkill ping lsなんて書かないですよね。

cd cp cat tar

このブログはエックスサーバーではないので、上記文字を入れて記事を書いても問題ありませんが、エックスサーバーですと更新ボタンを押した瞬間に501が表示されるはずです。

対策

他のブログではWAFを切ればいいとかエックスサーバーなら項目ごとにオンオフを切り替えることが出来るのでコマンドラインだけどオフにすればいいなどと書かれていますがWAFは切っちゃだめです。

半角英数で書かず全角英数にすることで回避できます。

CDをCD mail を mailなどとすればエックスサーバーWAFコマンドラインの過剰反応を回避できます。