HTML ブロック等で 403 エラーが出るとき WAF を確認
HTML ブロックなどで、HTML コーディングを直接流し込んでいる時に、403 エラーが発生することがあります。
また記事ブロックで HTML コードを流し込んでいる時にも同じエラーが出ることが確認できました。
これは、WAF(ウェブアプリケーションファイアウォール) を有効にしている場合によく起こるかもです。特に AJAX な方法でデータのやり取りを行っている場合に発生します。
5.7.x で Chrome の Developer Tools の Console で 403 の挙動を確認すると
-----
POST XXXXXXX/ccm/system/dialogs/page/add_block/submit?ccm_token=XXXXX&cID=XX 403 (Forbidden)
-----
みたいなエラーを確認できます。
これは、WAF(ウェブアプリケーションファイアウォール)が、特定のコードがウェブサイトに送信されていると、攻撃をしているとみなされているためです。
ブラウザを通じで HTML や Javascript のコードを送るようにすると、同じようにブロックされます。
ちなみに、これは concrete5 に限ったことではなく、WordPress の TrustForm プラグインのフォーム管理画面でも同じように、管理画面でフォームの編集ができなくなるという不具合が発生したことを確認しています。
なので、CMS を使っているときは、WAF をオフにするか、どうしてもセキュリティーが気になってWAFをオンにしたい人が、403 エラーが発生した時だけ都度WAFをオフにして更新するようにしてください。
このエラーは、WAF を導入している
- さくらインターネット
- ロリポップ
- ヘテムル
- Zenlogic
などでエラーが発生することを確認しています。
concrete5 ではなにも問題が起きていないのに突然 403 エラーが出だした時は WAF を確認して下さい。
はやみ
Re: HTML ブロック等で 403 エラーが出るとき WAF を確認
その際にポップアップに表示されたメッセージも共有しておきます。
こちらもWAFを無効にすることで更新できるようになりました。