午前I問題

TCPの3ウェイハンドシェイクを悪用した攻撃に関する記述として、適切なものはどれか。

ア)攻撃者は送信元IPアドレスを偽装したSYNパケットを大量に送信し、サーバに大量の「半開状態」の接続を保持させて資源を枯渇させる。

イ)攻撃者はACKパケットのみを大量に送信することで、サーバのルーティングテーブルを書き換える。

ウ)攻撃者はFINパケットを送信しないことで、TCPコネクションの帯域を無制限に拡張できる。

エ)攻撃者はSYNパケットに大量のペイロードを付与することで、増幅率を高めて攻撃対象に送りつける。

午前I の解答・解説を見る

正解: ア)

解説:

  • ア)正解。SYN flood攻撃は、送信元IPアドレスを偽装(IPスプーフィング)したSYNパケットを大量に送りつけ、サーバがSYN/ACKを返した後のACK応答を待つ「半開状態(half-open)」の接続をバックログキューに滞留させることで、正規の接続要求を処理できなくする攻撃である。
  • イ)不正解。ACKパケットの大量送信(ACK flood)は帯域や処理資源を消費させる攻撃だが、ルーティングテーブルの書き換えとは無関係である。
  • ウ)不正解。TCPの帯域は輻輳制御やウィンドウサイズで管理されており、FINパケットの有無で帯域が「無制限に拡張」されることはない。
  • エ)不正解。SYNパケット自体は本来ペイロードを持たない制御パケットであり、これは後述するDNSアンプ攻撃など別の増幅攻撃の説明と混同した誤り選択肢である。

午前II問題

DNSアンプ(DNS amplification)攻撃に関する記述として、最も適切なものはどれか。

ア)攻撃者がDNSキャッシュサーバの再帰的問い合わせ機能を悪用し、正規の名前解決要求に偽の応答を注入して名前解決結果を汚染する攻撃である。

イ)攻撃者が送信元IPアドレスを攻撃対象に偽装した小さなDNS問い合わせをオープンリゾルバに送り、応答サイズの大きいレコード(ANY、TXT等)を要求することで、小さな問い合わせから大きな応答を攻撃対象に反射・増幅させて送りつける攻撃である。

ウ)攻撃者がDNSサーバのゾーン転送機能を悪用し、内部ネットワーク構成を外部に流出させる攻撃である。

エ)攻撃者がDNSサーバへのTCP接続を大量に確立し、同時接続数の上限に到達させてサービスを停止させる攻撃である。

午前II の解答・解説を見る

正解: イ)

解説:

  • ア)不正解。これはDNSキャッシュポイズニングの説明である。DNSアンプ攻撃とは別の脅威であり、目的(可用性低下 vs 名前解決結果の汚染)も異なる。
  • イ)正解。DNSアンプ攻撃は、送信元IPアドレスを攻撃対象に偽装(IPスプーフィング)した問い合わせをオープンリゾルバ(誰でも利用できる再帰的DNSサーバ)に送信し、問い合わせサイズに比べて応答サイズが大きくなるレコードタイプ(ANY、TXT、DNSSEC関連のRRSIG等)を要求することで、反射(リフレクション)と増幅(アンプリフィケーション)を組み合わせて攻撃対象に大量トラフィックを送りつける手法である。増幅率は数十倍に達することもある。
  • ウ)不正解。ゾーン転送(AXFR)の悪用は情報漏えい(内部ホスト情報の窃取)を目的とした別の攻撃であり、DDoSの一種であるアンプ攻撃とは目的が異なる。
  • エ)不正解。TCP接続の枯渇を狙う攻撃はDNSに限らず一般的なコネクションフラッドの説明であり、DNSアンプ攻撃の本質である「反射・増幅」の要素を含んでいない。

午後問題

Y社はECサイトを自社データセンターで運用している。ある日、Webサーバへのアクセスが急増し、正規利用者が「ページが表示されない」と苦情を訴える障害が発生した。ネットワーク管理者Bさんがファイアウォールのログを確認したところ、以下の特徴が見られた。

  • 送信元IPアドレスが多数の異なるグローバルIPアドレスに分散している
  • 宛先ポートはUDP/53(DNS)からの応答パケットが大量に含まれている
  • Y社のDNSサーバやオープンリゾルバに対してY社自身が問い合わせを送信した形跡はない
  • 1パケットあたりのサイズが通常のDNS応答より大きい(4,000バイト前後)

Bさんはこれを外部のオープンリゾルバを踏み台にしたDDoS攻撃と判断した。Y社は再発防止のため、CDN事業者が提供するDDoS対策サービスとWAF(Web Application Firewall)の導入を検討することになった。

設問1

このDDoS攻撃の名称を答え、攻撃者がY社のIPアドレスを直接の送信元としてパケットを送らず、多数の外部DNSサーバを経由させた狙いを60字以内で2つの観点から説明せよ。

設問1の解答・解説を見る

正解例:

攻撃名:DNSアンプ(DNSリフレクション/増幅)攻撃

狙い:①小さな問い合わせで大きな応答を反射させ通信量を増幅するため。②攻撃元を多数のDNSサーバに分散させ発信元の特定・遮断を困難にするため。(65字目安、2観点で60字程度に収める)

解説: 攻撃者は送信元IPアドレスをY社のものに偽装した問い合わせを多数のオープンリゾルバへ送ることで、(1)ANYやTXTレコードなど応答サイズの大きいレコードを利用した「増幅」効果でY社へ送りつけるトラフィック量を実際の攻撃通信量より大きくでき、(2)攻撃元が特定のIPアドレスに集中しないため単純な送信元IPベースの遮断(ブラックリスト化)が効きにくく、真の攻撃者の特定も困難になる、という2つの利点を得ている。

解説・採点基準(計15点):

採点項目キーワード配点
攻撃名DNSアンプ攻撃/DNSリフレクション攻撃/DNS増幅攻撃のいずれか5点
観点1:増幅「増幅」「応答サイズが大きい」など通信量を増幅する趣旨5点
観点2:分散・秘匿「送信元の分散」「発信元特定の困難化」「遮断されにくい」など5点

部分点:攻撃名が「DDoS攻撃」など一般名称にとどまる場合は2点。観点が1つのみ正確に書けていれば当該観点分のみ加点する。

設問2

Y社が導入を検討しているCDN事業者のDDoS対策サービスとWAFは、それぞれどのような仕組みで今回のような攻撃の影響を緩和するか。両者の役割の違いが分かるように80字以内で説明せよ。

設問2の解答・解説を見る

正解例: CDNのDDoS対策は、攻撃トラフィックを地理的に分散した複数拠点(エッジ)で受け止め・吸収し、正規サーバへの到達自体を遮断する。WAFは正規サーバ手前でHTTPリクエストの中身を検査し、アプリケーション層の不正な攻撃パターンを遮断する。(約110字→要約して80字以内に調整)

解説: CDN事業者のDDoS対策サービスは、世界中に分散配置されたエッジサーバ(スクラビングセンター)で大量トラフィックを受け止め、帯域を消費するボリューム型攻撃(SYN flood、DNSアンプ攻撃等)をオリジンサーバに到達する前に吸収・遮断することを主目的とする。一方WAFは、HTTPリクエストのヘッダやボディの内容を解析し、SQLインジェクションやアプリケーション層のHTTP flood(L7 DDoS)など、通信量だけでは判別できない不正なリクエストパターンを検知・遮断する。両者は防御対象のレイヤ(ネットワーク/トランスポート層 vs アプリケーション層)が異なるため、併用することで多層防御となる。

解説・採点基準(計15点):

採点項目キーワード配点
CDNの役割「分散」「エッジ」「吸収」「オリジンに到達させない」等6点
WAFの役割「リクエスト内容の検査」「アプリケーション層」「不正パターン検知」等6点
両者の違いの明示層(レイヤ)の違いや役割分担に言及している3点

部分点:CDNとWAFいずれか一方の説明のみ正確な場合はその項目分のみ加点。「多層防御」への言及があれば違いの明示として加点対象とする。

重要キーワード

用語説明
DDoS攻撃複数の送信元から大量のトラフィックやリクエストを送りつけ、サービスの可用性を低下させる攻撃
SYN flood送信元IPを偽装したSYNパケットを大量送信し、半開状態の接続でサーバ資源を枯渇させる攻撃
DNSアンプ攻撃オープンリゾルバへの偽装問い合わせを利用し、応答を反射・増幅して対象に送りつける攻撃
オープンリゾルバ送信元を限定せず誰からの問い合わせにも応答する再帰的DNSサーバ。アンプ攻撃の踏み台になりやすい
CDNContent Delivery Network。コンテンツ配信の高速化に加え、分散拠点での攻撃トラフィック吸収にも利用される
WAFWeb Application Firewall。HTTPリクエストの内容を検査しアプリケーション層の攻撃を遮断する仕組み

まとめ

  • 午前I視点: SYN flood攻撃における「半開状態」の概念とTCP 3ウェイハンドシェイクの正常な流れを対比して理解する
  • 午前II視点: DNSアンプ攻撃の「反射」と「増幅」という2つの要素、およびキャッシュポイズニングやゾーン転送悪用など類似攻撃との違いを区別する
  • 午後視点: ログの特徴(送信元分散・大きな応答サイズ)から攻撃手法を特定し、CDNとWAFという異なるレイヤの対策を組み合わせる多層防御の考え方を説明できるようにする