ホームページのセキュリティ対策ガイド|WordPress・WAF設定の実例付き

WordPressで作成したホームページのWAF設定後にYouTube埋め込みページで403エラーが発生した事例と対処法を備忘録として置いておきます。

今回、WEBサイトのセキュリティ強化を目的として、お客様の通販サイトにてWAF(Web Application Firewall)の設定を行いました。

しかし、設定後に問題が発生。

商品ページ内にYouTubeを埋め込み表示しているページのみ、WordPressで「更新」ボタンを押すと403エラーが表示され、保存できなくなったのです。

調査結果

遮断履歴の閲覧をした所iframe要素が原因でクロスサイトスクリプティングとみなされた形跡がありました。

WordPressにWAFを適用した場合、

iframeを利用した外部サイトの埋め込み
(例:YouTube、Googleマップなど)

これらの表示や更新処理がブロックされるケースがあることがわかりました。

原因

原因は、iframeによる外部サイトの読み込みです。

iframeは、悪意のあるスクリプトを埋め込む「クロスサイトスクリプティング(XSS)」攻撃の入り口になる可能性があります。
そのため、WAFはセキュリティ対策としてiframeを含む通信を遮断することがあります。

つまり今回の挙動は、「セキュリティ対策としては正常な動作」ということになります。

実施した対策

今回の環境では、

・サーバー側でもWAF設定を有効化
・WordPress側でもWAF機能を有効化

という二重のセキュリティ構成になっていました。

そこで、

サーバー側のWAFはそのまま維持し、WordPress側WAFの「クロスサイトスクリプティング(XSS)対策」のみを解除しました。

これにより、セキュリティレベルを大きく下げることなくYouTube埋め込みページの更新も正常化というバランスを取ることができました。

まとめ

WAFは非常に重要なセキュリティ対策ですが、

・iframe要素
・外部埋め込みコンテンツ
・API連携

などを使用しているサイトでは、意図しないブロックが発生する可能性があります。

WAF設定後に403エラーが発生した場合は、どのページで起きているか、外部コンテンツを埋め込んでいないかなどを確認すると、原因特定がスムーズになります。

セキュリティと利便性のバランスを取りながら、適切な設定を行うことが重要です。

以上簡単ではありますが、頭を使った出来事でしたので共有しておきます。
同じ様な現象が起こり、解決できない場合は相談してくださいね。何か解決の糸口がつかめるかもしれません。

藤井 祐介

1981年広島生まれ。自動車メーカーから2010年に独立し、スマートフォン(当時はケータイ)を主軸に置いたWEBマーケティング、WEBデザインを行い、これまで500社以上の相談に耳を傾けてきた。常に経営者によりそい、”お客様より商品やサービスを理解する”こと信念に、日々進化するインターネット業界の勉強を行う。
東京リベンジャーズは”千冬”推し。最近はナルトを途中挫折してキングダムを読み始めたがまた挫折しそうなCEO。

関連記事

PAGE TOP