従来のファイアウォールとWAFの違い・Cloudflare WAFの強みは?

「WAFを導入しましょう」と言われて、「ファイアウォールとは違うの?」と思ったことはありませんか?

どちらも「ファイアウォール」という名前がついているし、どこが違うのだろう?

今回は、従来のファイアウォールとWAFの違いを、できるだけ専門用語を使わずに解説します。

従来のファイアウォールとWAFは「見ているもの」が違う

先に結論を言うと、最も重要な違いは以下の通りです:

  • 従来のファイアウォール → 「どこから来たか」を見る
  • WAF → 「何をしようとしているか」を見る

この違いが、Webアプリケーションのセキュリティにおいて決定的に重要なのです。

それでは、この違いを分かりやすく解説していきましょう。

従来のファイアウォールとWAFの違い

郵便配達で例えると

従来のファイアウォール = 封筒の外側をチェックする門番

封筒の外側だけを確認します:

  • 差出人の住所(送信元IPアドレス)
  • 宛先の住所(宛先IPアドレス)
  • 配送方法(TCPかUDPか)
  • どの入口から入るか(ポート番号)

正規の送信元ではない場合「郵便物は受け取らない」「この入口(ポート)は閉鎖」という判断をし、拒否します。

WAF = 封筒を開けて中身をチェックする検閲係

封筒を開けて中身を詳しく確認します:

  • 手紙の内容(HTTPリクエストの本文)
  • どんな用件か(GETかPOSTか)
  • 添付物は何か(パラメータの値)
  • 怪しい文章や記号がないか(攻撃コード)

「正規の住所から来ても、中に危険物が入っていたら止める」という判断をします。

ネットワーク層とアプリケーション層の違い

インターネット通信は「階層構造」になっている

インターネット通信は、役割が事なる7つの層(Layer)が重なって動いています。
従来のファイアウォールとWAFは、この異なる層で動作しているため、見えるものが全く違うのです。

下の層(物理的な部分)

ネットワーク層(Layer 3)

  • IPアドレス(どこからどこへ)
  • ルーターがここで働く
  • 例:「東京都渋谷区○○から、大阪市北区○○へ配達」

トランスポート層(Layer 4)

  • ポート番号(どの入口から)
  • TCP(確実配達)かUDP(速達)か
  • 例:「正面玄関(ポート80)から配達」

従来のファイアウォールはここで動作します


上の層(内容の部分)

アプリケーション層(L7)

  • HTTP、HTTPS(Webページ)
  • 実際のデータ内容
  • 例:「寿司10貫、醤油多め、わさび抜き」
  • 例:「ユーザーID: tanaka、パスワード: ****」

WAFはここで動作します

建物で例えると分かりやすい

ネットワーク層・トランスポート層(L3/L4)

  • 建物の住所
  • 何階の何号室か
  • エレベーターでの移動

アプリケーション層(L7)

  • 部屋に入って実際に何をするか
  • 書類を提出する、会議をする、荷物を受け取る
  • 具体的な用件の内容

実際のWebアクセスで見る違い

あなたが「https://example.com/login」にログインしようとする時:

ネットワーク層・トランスポート層(L3/L4)が見ているもの

送信元:あなたのPC(192.168.XXX.XXX)
宛先:example.comのサーバー(203.0.XXX.XXX)
ポート:443(HTTPS用)
プロトコル:TCP

「誰がどこに行こうとしているか」だけ

アプリケーション層(L7)が見ているもの

POST /login HTTP/1.1
Host: example.com
Cookie: session_id=abc123

username=admin' OR '1'='1
password=anything

「何をしようとしているか」まで見える → このSQLインジェクション攻撃を検知できる!

なぜWAFが必要なのか

従来のファイアウォールでは防げない攻撃

従来のファイアウォールは、以下のような判断しかできません:

  • 「正規の住所(IPアドレス)から来た」
  • 「正規のポート(80/443)を使っている」 → OK、通します

しかし、攻撃者は正規のルートを使って攻撃してきます

Webアプリケーションを狙う主な攻撃

SQLインジェクション
データベースに不正なSQL文を送り込む攻撃です。顧客情報の漏洩やデータの改ざんにつながります。

クロスサイトスクリプティング(XSS)
悪意のあるJavaScriptコードを埋め込み、ユーザーのセッション情報を盗む攻撃です。

不正ログイン試行(ブルートフォース攻撃)
大量のパスワードを試行してアカウントを乗っ取ろうとする攻撃です。

ゼロデイ攻撃
まだパッチが提供されていない脆弱性を突く攻撃です。

APIへの攻撃
過剰なリクエストでサービスを停止させたり、不正なデータを送り込んだりする攻撃です。

これらの攻撃は、すべて正規のIPアドレスから、正規のポートを使ってやってきます。
従来のファイアウォールでは、中身を見ることができないため、防ぐことができません。

WAFだけが中身を開けて検査できるのです。

従来のファイアウォールとWAFは「補完関係」

両方必要な理由

従来のファイアウォールとWAFは、役割が違います
どちらか一方だけでは不十分で、両方を組み合わせることで、多層防御が実現できます。

従来のファイアウォール(L3/L4)

  • ネットワークレベルの不正アクセスをブロック
  • 不要なポートを閉じる
  • 基本的な通信制御

WAF(L7)

  • Webアプリケーションへの攻撃をブロック
  • SQLインジェクション、XSSなどを防御
  • アプリケーションレベルの保護

Cloudflare WAFの強み

Cloudflareは世界330以上の都市にデータセンターを展開し、常に世界中のトラフィック・リクエストを見ています。
だから機械学習がとても早く、新種の攻撃にも素早く対応・自動でアップデートされます。
ほかのWAFよりも優れているのは世界中でCloudflareが使用されているからですが、なぜCloudflareが使用されているかというと、 機能充実ながら無料プランがあることや、有料プランも20ドルからという脅威のコスパではないでしょうか。
このコスパが利用客を呼び、この利用客が結局CloudflareのWAFの性能アップに還元されているとも言えますね。

これからのWebセキュリティ

Webアプリケーションへの攻撃は、今後ますます巧妙化していきます。
「ファイアウォールがあるから大丈夫」という時代は終わりました。
WAFは「あると良い」ものではなく、「必須」のセキュリティ対策です。
特にCloudflare WAFは、強力な保護機能を持ちながら料金も安価なので、手軽に導入できるのではないでしょうか。


注意事項

Cloudflareの機能や詳細は、公式サイトで最新情報をご確認ください。
最終的なセキュリティ対策の選択は、あなたのサイトの要件や予算を考慮したうえで、ご自身の責任で判断してください。