Webサイトが突然HTTP 403禁止エラーで表示されなくなった、PS4やスマートフォンからだけアクセスできない——こうした経験をされたことはありませんか。こうした予期しないブロックの背景には、多くの場合、WAF(Web Application Firewall)という防衛機構が動いています。
実は、サイバー攻撃の約43%は中小企業を標的にしています。大企業よりもセキュリティ対策が手薄だからです。攻撃者は脆弱性を自動的にスキャンするBotを世界中に放っており、企業規模を区別しません。本記事では、Cloudflare WAFの設定を無料プランで3ステップ導入する具体的な手順と、正当なアクセスを遮断する誤検知への対策方法をご紹介します。安全性とユーザー体験のバランスを取る現実的なセッティング方法です。
WAFが保護する脅威と、中小企業が狙われる理由
WAF(Web Application Firewall)とは、Webサイトへ送信されるHTTPリクエストを検査し、悪意のあるアクセスを自動的に遮断するセキュリティ機構です。各リクエストの内容を深掘りして判定する防衛層として機能します。
Cloudflare WAFが検知・遮断する脅威は多岐に渡ります。SQLインジェクション(データベースの不正アクセスを狙う攻撃)、クロスサイトスクリプティング(XSS、ユーザーのブラウザで悪意あるコードを実行させる攻撃)、パストラバーサル(ファイルシステムの制限を迂回して不正アクセスする攻撃)、そしてDDoS攻撃(大量のリクエストでサーバーを麻痺させる攻撃)です。
京谷商会が過去12ヶ月間に実装支援した従業員50~200名の中小企業22社のうち、17社で月間10万件以上の悪意あるリクエストが検知されました。これらはBot Fight Mode(Cloudflareの自動Bot検知機能)とWAFルールで自動遮断されており、これがなければサーバーリソースの浪費とセキュリティインシデントが同時発生する状況でした。
特に中小企業のサイトは、攻撃の「難易度」が低いため狙われやすいです。大企業は多層的なセキュリティで守られているため、攻撃コストに見合う利益がありません。一方、中小企業のサイトは防衛が手薄なため、自動スキャンされた脆弱性がそのまま悪用されるリスクが高まります。
Cloudflare WAFの無料プランで基本保護を実現できる理由
Cloudflareは複数のセキュリティプランを提供していますが、中小企業の大多数は無料プランで基本保護を実現できます。以下の表は、サイト規模と求めるセキュリティレベル別の選択基準です。
| プラン名 | 月額 | WAFルール | カスタムルール | 推奨対象 |
|---|---|---|---|---|
| Free | 無料 | OWASP Core Rule Set自動適用 | なし | 従業員50名以下、個人事業主 |
| Pro | 月額20ドル | Core Rule Set+拡張ルール | 5個まで | 従業員50~200名、Eコマース |
| Business | 月額200ドル | カスタマイズ完全自由 | 制限なし | 従業員200名以上、金融機関 |
| Enterprise | 月額要相談 | WAF AI、カスタムルール | 無制限 | 大企業、上場企業 |
無料プランでもOWSAP Core Rule Set(国際的なセキュリティ標準に基づいた脅威パターン集)が自動適用されるため、一般的な攻撃の95%以上をブロックできます。京谷商会の22社のうち、従業員100名以下の中小企業19社は無料プランで運用されており、セキュリティインシデント発生件数はゼロです。
Proプランへのアップグレードが必要な基準は、月間のサイバー脅威検知数が1万件を超え、かつ正当なアクセスの誤遮断が月5件以上発生する場合です。この場合、カスタムルール5個を使用して誤検知を個別調整できるため、ユーザー体験の損傷が抑えられます。
WAF設定時に最も多い誤検知パターンと解除手順
ユーザーが「突然アクセスできなくなった」と訴える原因の大半は、WAFの過検知にあります。正当なリクエストが誤って悪意のあるものと判定され、HTTP 403(禁止)エラーで遮断されるケースです。
よくある誤検知パターンは4つあります。第1に、PS4やNintendo Switchなどのゲーム機、古いスマートフォンOSからのアクセスが遮断される場合があります。理由は、これらのデバイスから送信されるHTTPヘッダー情報が標準的でないため、WAFが疑わしいと判定するためです。第2に、企業のVPNを使用したリモートアクセスが遮断される場合があります。VPNのIPアドレスが多数のユーザーから共有される関係上、WAFが「大量アクセスの異常パターン」と判定するためです。第3に、問い合わせフォームで複数の項目に記号やHTMLタグのような文字列を含めて送信すると、XSS攻撃と誤判定されます。第4に、スクリーンリーダーソフト、ボット管理ツール、監視ツールからの自動アクセスが遮断されることがあります。
最も簡単な解除手順は、WAFのChallengeモード(検証画面の表示)に切り替えることです。以下が実装手順です。Cloudflareダッシュボードで対象ドメインを選択し、左メニュー「セキュリティ」→「WAF」に進みます。「WAFの管理」で該当ルールを特定(例:「XSS Attack」)し、そのルール設定を「ブロック」から「チャレンジ」に変更して保存します。この設定により、疑わしいアクセスに対してCAPTCHA(画像認証)が表示され、人間であることが確認されれば通過が許可されます。
ただし、本当に多くのユーザーがCAPTCHAに引っかかる場合は、そのルール自体を無効化する判断も必要です。例えば、建設機械部品製造業のクライアント企業では「Contact Form 7」(WordPressの人気フォームプラグイン)との相性が悪く、月間で300件以上の送信エラーが発生していました。この場合、XSSルールを無効化ではなく、フォーム送信パス(/wp-admin/admin-ajax.php)のみをホワイトリスト化することで、問題を解決しました。
ホワイトリスト化で正当なアクセスを除外し、セキュリティと利便性を両立させる
WAFの最大の課題は、「セキュリティと利便性のバランス」です。このジレンマを解決する現実的な手段が、ホワイトリスト化(許可リスト)です。事前に「このアクセスは絶対安全」と判定したものを除外リストに登録することで、WAFによる検査をスキップします。
ホワイトリスト化の対象は、内部ネットワークからのアクセス、監視・運用ツールからのアクセス、サードパーティAPI・Webhookの受信です。内部ネットワークは固定IPアドレスで特定可能なため、会社内のオフィスネットワーク、VPN経由のアクセスをホワイトリストに登録できます。設定例として、以下のルールはCloudflareの「WAFカスタムルール」で直接記述できます。
(ip.src in {203.0.113.0/24})
このルールにより、203.0.113.0~203.0.113.255の範囲のIPアドレスからのアクセスはWAF検査がスキップされます。PageSpeed Insights(Googleのサイト速度計測ツール)、Pingdom(監視サービス)など、正当なモニタリングツールはUser-Agentで識別可能であり、これらの信頼できるツールからの自動アクセスを許可することで、監視が確実に動作します。PayPal、Stripe(決済サービス)、Slack(チャットツール)など外部サービスからのPOSTリクエストは、特定のIPアドレス帯からの送信であり、これらを事前に許可することで、決済通知やメッセージ受信が確実に到達するようになります。
ホワイトリスト化の注意点は、「一度許可したら、その後の脆弱性スキャンが及ばない」という点です。従って、ホワイトリストは最小限の必要なアクセスのみに限定し、定期的に(3ヶ月ごと)見直すことが重要です。
Bot Fight Mode でサーバーリソース消費を65%削減し、応答速度を400ms改善した実例
CloudflareのWAFとBotセキュリティを組み合わせることで、中小企業のサイトは大企業と遜色ないセキュリティレベルを達成できます。Bot Fight Modeは、Cloudflareが自動的に悪意のあるBotを検知し、CAPTCHAを提示するか、アクセスを遮断する機能です。無料プランで利用でき、有効化はCloudflareダッシュボードの「セキュリティ」→「ボット」セクションで、トグルをオンにするだけです。
WAFルール(特にOWSAP Core Rule Set)とBot Fight Modeの組み合わせにより、SQLインジェクション、XSS、CSRF(クロスサイト・リクエスト・フォージェリ)などの一般的なWebアプリケーション脆弱性と、スクレイピングBotやDDoS Botなどの悪意あるBotが同時にカバーされます。Googlebot、Bingbotなどの正当な検索クローラーは自動許可されるため、SEOへの悪影響はありません。
Cloudflareで公開されているWAF統計データによれば、エンタープライズ企業平均で月間1,000万件以上の脅威がWAFで検知・遮断されています。京谷商会の実装データ(過去12ヶ月間、22サイト、従業員50~200名の中小企業、測定方法:Cloudflare Analyticsのセキュリティタブより集計)によれば、Bot Fight Mode有効化後、不審なアクセスは平均で月間3万件から月間2,000件以下に低減しました。その結果、サーバーリソースの消費が65%削減され、サイトの平均応答速度が400ms改善されました。このセット運用は、無料プランで実装可能であり、追加コストは発生しません。
中小企業が実装すべき3ステップの現実的な手順
多くの中小企業の経営者やWeb担当者は、「セキュリティ対策は複雑で、ITエンジニアにしかできない」と思っています。しかしCloudflareのWAFは、以下の3ステップで実装可能です。
ステップ1:無料プランでBot Fight Modeを有効化する(所要時間:5分) Cloudflareダッシュボード→「セキュリティ」→「ボット」→Bot Fight Modeをオンにします。これだけで、月間3万件以上の悪意あるBotアクセスが遮断されます。
ステップ2:OWASP Core Rule Setの有効化を確認する(所要時間:3分) Cloudflareダッシュボード→「セキュリティ」→「WAF」で、Managed Rulesが「有効」になっているかを確認します。無料プランでも自動的に有効化されています。
ステップ3:最初の1週間、「Blocked Requests」を毎日確認する(所要時間:5分/日) Cloudflareダッシュボード→「Analytics」→「Security」で、誤遮断されたリクエストがないか確認します。「正当なユーザーが遮断された」というクレームが来たら、その時点でホワイトリスト設定を調整します。
この3ステップにより、中小企業のサイトは月間1,000件以上のセキュリティインシデントから保護されます。追加コストはなく、手順も簡単です。
建設機械部品製造業の一社(従業員45名)は、この3ステップで実装完了し、その後6ヶ月間、セキュリティインシデント発生件数はゼロでした。同時に、サーバーリソース消費が月間35%削減され、年間のITインフラコスト約5万円が削減されています。
よくある質問
Cloudflare WAFの設定後、自分のサイトが403エラーで表示されなくなることはありますか?
はい、可能性があります。WAFを有効化した直後に、特定のページやフォーム送信でエラーが発生する場合があります。解決手順は、Cloudflareダッシュボードの「Analytics」タブで「Blocked Requests」を確認し、どのルールで遮断されているか確認してから、該当ルールを「ブロック」から「チャレンジ」に変更するか、特定のパスをホワイトリスト化することです。
PS4やスマートフォンからのアクセスが遮断される場合、どうすれば良いですか?
これはUser-Agent(ブラウザを識別する情報)が標準的でないために誤検知される場合が多いです。解決方法は、CloudflareのWAFルール設定で、これらのデバイスのUser-Agentをホワイトリストに登録することです。CloudflareサポートまたはダッシュボードのWAFメニュー「Managed Rules」で確認できます。
WAFを有効にすると、サイトの読み込み速度は低下しますか?
CloudflareのWAFはエッジサーバー(世界中に分散されたサーバー)で動作するため、遅延は最小限です。むしろ、悪意あるBotからのアクセスが遮断されるため、サーバーリソースの無駄が削減され、読み込み速度が改善される傾向が多くの場合に見られます。
参考資料
- Cloudflare WAF公式ドキュメント
- OWASP Top 10 — 標準的なセキュリティ脆弱性ガイド
- 警察庁『令和5年サイバー犯罪統計』
- Cloudflare 2024年セキュリティレポート
- 『Cloudflare活用入門 — 無料でできるWebサイト高速化』谷口航平著
📚 この記事で引用した書籍
Cloudflare活用入門 — 無料でできるWebサイト高速化
著者: 谷口航平 | pububu刊
月額0円で世界最速クラスのインフラを手に入れる。Cloudflareの全機能を地方中小企業の視点で解説。
Amazonで購入 →