DDoS攻撃にL3/L4とL7の違いがあるのをご存知ですか?WAFなしでは防げない攻撃とは
DDoS攻撃は一つではない
「DDoS攻撃を受けてサイトがダウンした」というニュースを聞いたことがあるでしょうか。多くの方は「大量のアクセスが来てサーバーが耐えられなくなる」というイメージを持っているかもしれません。
しかし実際には、DDoS攻撃にはL3/L4層の攻撃とL7層の攻撃という大きく異なる2つのタイプがあり、それぞれ攻撃の仕組みも対策方法も全く異なります。
この違いを知らないと、「ファイアウォールがあるから大丈夫」と思っていても、実は無防備な状態になっている可能性があります。
L3/L4 DDoS攻撃とL7 DDoS攻撃の違い
L3/L4 DDoS攻撃(ネットワーク/トランスポート層)
攻撃対象: IPアドレス、ポート、ネットワーク帯域幅
主な攻撃手法:
- SYN Flood: TCP接続の開始要求を大量に送る
- UDP Flood: UDPパケットを大量に送る
- ICMP Flood: pingパケットを大量に送る
攻撃の特徴:
- 大量のパケットやトラフィックでネットワーク帯域やファイアウォールのリソースを枯渇させる
- 異常なトラフィック量として検出しやすい
- 力技で物理的にネットワークを詰まらせる
L7 DDoS攻撃(アプリケーション層)
攻撃対象: Webアプリケーション自体
主な攻撃手法:
- HTTP Flood: 正規のHTTPリクエストを大量に送る
- Slowloris: 接続を長時間保持してリソースを消費
- 特定のAPIエンドポイントへの集中攻撃
攻撃の特徴:
- 正規のリクエストに見えるため、少ないトラフィック量でもサーバーリソース(CPU、メモリ、データベース接続)を消費させられる
- 正規ユーザーとの区別が非常に困難
- より巧妙で検出が難しい
レストランで例えると
L3/L4攻撃: レストランの入口を大勢で塞いで、お客さんが入れなくする(物理的な妨害)
L7攻撃: 普通のお客さんのふりをして入店し、メニューを何度も変更したり、複雑な注文を繰り返してキッチンやスタッフを麻痺させる(巧妙な妨害)
つまり、L3/L4は「力技」、L7は「巧妙な攻撃」という違いがあります。
WAFがない場合、どこまで防げるのか?
一般的なファイアウォールやネットワーク機器だけでは、以下のような防御範囲になります。
防げるもの(L3/L4層の攻撃)
- パケットフィルタリング: 不正なIPアドレスやポートからのアクセスをブロック
- SYN Cookie: SYN Flood攻撃への基本的な対策
- 帯域制限: ある程度のトラフィック制御(ただし自社の帯域を超える攻撃には無力)
従来のファイアウォールは、この層の防御に特化しています。
防げないもの(L7層の攻撃)
- HTTP Flood: 正規のHTTPリクエストとして見えるため、通過させてしまう
- 特定ページへの集中攻撃: データベース処理が重いページやAPIへの攻撃
- Slowloris攻撃: 接続を低速で長時間保持する攻撃
- ボットによる自動化攻撃: 人間のアクセスパターンを模倣したボット
なぜ防げないのか?それは、L7攻撃はアプリケーションの内容を理解して判断する必要があるからです。従来のファイアウォールは「このパケットは通すか、通さないか」というネットワーク層の判断しかできません。
「このHTTPリクエストは正規ユーザーか、攻撃者か」を判断するには、アプリケーション層の防御機能が必要になります。
L7対策にはWAFとアプリケーション層の防御が必要
L7 DDoS攻撃に効果的に対応するには、以下のような機能が必要です。
WAF(Web Application Firewall)
- HTTPリクエストの内容を解析
- 攻撃パターンに一致するリクエストをブロック
- SQLインジェクションやXSSなどの攻撃も同時に防御
Rate Limiting(レート制限)
- 同一IPアドレスからのリクエスト数を制限
- 短時間に大量のリクエストを送る攻撃者をブロック
Bot Management(ボット管理)
- ボットと人間を識別
- 悪意のあるボットをブロック
- 正規のボット(検索エンジンなど)は許可
Challenge(チャレンジページ)
- 疑わしいアクセスに対してJavaScriptチャレンジやCAPTCHAを表示
- ボットと人間を判別
これらの機能が連携することで、初めてL7 DDoS攻撃に対抗できます。
Cloudflareによる多層防御
Cloudflareは、L3/L4とL7の両方の層で同時に防御できる統合的なソリューションを提供しています。
L3/L4層の防御
- グローバルネットワークで自動的に攻撃を緩和
- 大規模な帯域幅攻撃も分散処理で吸収
- Magic Transitなどのサービスでネットワーク層の保護
L7層の防御
- WAF機能による攻撃パターンのブロック
- Rate Limitingでリクエスト数を制御
- Bot Management機能で悪意のあるボットを識別・ブロック
- Challengeページで人間とボットを判別
Cloudflareの強み
すべてのトラフィックがCloudflareのネットワークを経由するため、リバースプロキシとして動作し、オリジンサーバーは攻撃から隠蔽されます。攻撃者はCloudflareの巨大なネットワークと戦うことになり、オリジンサーバーに直接到達できません。
また、無料プランでも基本的なDDoS対策が含まれており、小規模なサイトでも導入しやすいのが特徴です(ただし高度な機能は有料プランで提供)。
まとめ
- DDoS攻撃にはL3/L4層とL7層の2種類があり、攻撃の性質が全く異なる
- 従来のファイアウォールだけではL7攻撃は防げない
- L7対策にはWAFを中心としたアプリケーション層の防御機能が必要
- Cloudflareは両方の層で同時に防御できる統合的なソリューション
「ファイアウォールがあるから安心」ではなく、「どの層の攻撃に対応できているか」を理解することが重要です。特にWebアプリケーションを運営している場合、L7対策は必須と言えるでしょう。