古いJSライブラリは見直しを!エックスサーバーのWAF設定にブロックされた

古いJSライブラリは見直しを!エックスサーバーのWAF設定にブロックされた

2024年10月9日

2024年9月下旬から、とあるWEBサイトの表示がおかしい。
WordPress6.6.2の自動更新があり、プラグインの更新メンテナンス後、しばらくというタイミング。

現象としては、ページの一部の画像やテキストが表示されない。

具体的には、下スクロールすると画像とテキストが左右から出てくるスタイル、JSやCSSで制御されているタイプのものだ。
更に最悪なのは、問い合わせフォームの入力フォームの部分も出てこない(送信ボタンだけが表示されている)。問い合わせフォームが機能しないとは、このサイトにとっては致命的である。

このWEBサイトは、2019年にWEB制作会社にて構築。
テーマはその会社のオリジナルで、ほぼPHPでデザイン制作されている。
固定ページで更新できるのは、カスタムフィールドで設定されているところのみ。

WordPressやプラグインのアップデートは基本的には自社にて行っている。

今回、アップデート以外の変更や更新は行っていないので原因がわからない。

ということで、制作会社に問い合わせ、改善依頼を行った。

原因は、

エックスサーバー側の仕様変更に伴う不具合ということ。

具体的には、使用している「jquery.cookie.js」プログラムが、サーバー側のセキュリティ側で動作しないため

とのこと。

改善作業として、

プログラムの名称を変更することで、表示問題は改善された。

プログラムの名称を変更することについて、セキュリティが弱くなる等の問題は生じないものと思われます。

うーん、この見解には納得がいかないないが、まずは問い合わせフォームのリカバリを優先することにした。

不具合が発生したときに、こちらで調べたところ、デベロッパーツールでエラーが出力されていたことを把握していた。

Failed to load resource: the server responded with a status of 403 () jquery.cookie.js

デベロッパーツールで出力されたjquery.cookie.jsのエラー

また、制作会社の回答を受けて検索すると、確かに以下のような見解と解決方法なども明記されていた。

■【js.cookie.js】XserverのWAF仕様変更によるJavaScriptエラーについて:株式会社グレイズ

回避策として、4つの方法が上がっている。

今後の運用を考えると、「代替ライブラリの使用」がいちばん妥当だと思われる。

jquery.cookie.jsは、2014年4月以降、更新されておらず、また脆弱性の情報もあるようだ。

■ Xserverで発生するJavaScriptエラーについて:a-blog cms developer

こちらのCMSは、フィックスバージョンを次の日に対応したようだ。

エックスサーバーにも、問い合わせフォームから「WAF設定」への質問を送信した。(チャットでは、回答できないとのことで問い合わせフォームとなった経緯あり)

質問Q.

WAF仕様変更はどこで知ることができますか?

先日よりWEBサイトの一部が表示しない事象が発生し、制作会社からWAF>XXSで「jquery.cookie.js」がブロックされたためと説明を受けました。
また、以下のサイトにも書かれていました。 https://glazestyle.com/blog/js-cookie-js/ https://developer.a-blogcms.jp/blog/news/xserver-waf.html

ブラウザのデベロッパーツールでもエラーが出力されています。
Failed to load resource: the server responded with a status of 403 ()

上記2サイトの記載は正しいでしょうか?
また、そうであれば、仕様変更の案内があれば、不具合対策もすぐにできたのにと思っていますが
こちらが案内を見落としているだけでしょうか?

回答A.エックスサーバーより

WAF設定の仕様そのものの変更はございませんが、
検知ルールにつきましては適宜見直しや更新を実施しております。

「XSS対策」をOFFとしていただくことで問題が解消する場合、
直近の更新において、当該のプログラムや出力内容において、
何らかのルールに抵触する状態となってしまったものと存じます。

また恐れ入りますが、検知ルールの調整に際しましては、
セキュリティの関係上、その内容などを開示しておりません。

申し訳ございませんが、何卒ご了承くださいますよう
お願い申し上げます。

WAF設定につきましては、可能性として上述のような状況が
定期的に発生し得ますため、もし今後も同様の問題が生じたり、
そういったリスクを最初から回避されたいという場合、
恐れ入りますが、設定をOFFとした状態にてご運用いただき、
別種のセキュリティを導入するなどご検討くださいますよう
お願い申し上げます。

この度はこのようなご案内となり、誠に申し訳ございません。

またセキュリティ上、同じ現象が発生することもありうる。
通知もないので直ぐに気が付くか、悩ましいところだ。

古いJSライブラリは、配布されているプラグインやテーマに由来するものであれば、アップデートで更新される可能性がある。

オリジナルのテーマでは、なかなかアップデートまで行うことは出来ないので、制作から数年経つとこんな現象も起こりうる。

WordPressの構築環境、利用しているレンタルサーバーによって違うので、一概にはいえないが、継続したサイトの運営とセキュリティ、3~5年での大きな見直しの必然性を感じだ次第である。

追記 2024/10/10

2024/10/7にエックスサーバーから、「メンテナンスのお知らせ」にWAF設定を問題が発生した9/24の適用前に戻したと案内があった。

9/24以降、WAF機能の検知パターン更新に伴う意図しない検知の発生について(修正済み)

問い合わせの回答は、案内できないという感じだったが、影響が大きかったのでしょうね・・・

今後の対応として、事前告知とするとなっているが、セキュリティとのせめぎ合い。
どう対応していくのか?

継続して情報収集が必要だ。