リフレクション攻撃(アンプ攻撃)を防御する方法
*本内容は、米国A10 Networksが発行した技術資料の抄訳版です。原文はこちらよりご確認ください。
*関連ページ:リフレクション攻撃への対策だけで十分ですか?
リフレクション攻撃(アンプ攻撃)とは?
リフレクション攻撃(アンプ攻撃)とは、UDPのコネクションレスな性質を悪用し、インターネット上の無防備なサーバーに対して偽装したリクエストを行うDDoS攻撃の一種です。リフレクション攻撃(アンプ攻撃)は、攻撃の規模として考えると最大クラスの規模になります。
攻撃では、偽装した被害者のIPアドレスを使用して、大量の小さなリクエストをインターネット上のアクセス可能なサーバーに送信します。サーバーは増幅されたレスポンスを何も知らない被害者に大量に返します。サーバーのこのような挙動は、攻撃者が求めている攻撃を手助けするサービスになってしまっています。
以下のnat0のサイトの動画では、このタイプのDDoS攻撃が簡単に紹介されています。記事では、UDPベースのリフレクション攻撃(アンプ攻撃)について、より詳細な説明があります。
このタイプの最も一般的な攻撃では、数百万もの無防備なDNS、NTP、SSDP、SNMP、その他のUDPベースのサービスを使用します。このような攻撃は、1.3TbpsのMemcachedベースのGithub攻撃など、記録的な大容量攻撃となっており、これらのDDoS攻撃の大部分を占めています。以下の図1のグラフは、2018年7月のある1週間において、DDoS攻撃の約73%がamp_flood(増幅かつフラッド型)だったことを示しています。こちらから、現在の攻撃プロトコルの頻度のチャートを確認できます。
図1:攻撃プロトコルの頻度
攻撃者がこの方法を好む理由は、常に武器となるUDPベースのサーバーが利用可能であり、攻撃元の特定が困難であることに加えて、膨大なボリューム攻撃を小規模なボットや一台の強力なサーバーを使用して作成可能で労力がほとんど必要ないためです。
リフレクション攻撃(アンプ攻撃)で使用される「武器」
悪用(エクスプロイト)されたツールのことを、「間違った設定をした無防備なサーバー」と呼んでいましたが、「予防対策の管理が不適切」という説明が適切でしょう。それらのサーバーは、所有者の目的は達成しているが、アクセスコントロールが設定されていない、あるいは忘れられていて管理されていない、または明確な理由なく無意識にインターネットに公開した状態になっています。
例えば、約300万台のSSDPサーバーが、増幅率30倍以上にもなるDDoS攻撃に繰り返し利用されています。所有者がUPnP機能をインターネットに公開したとき、一体どれだけのことを考えていたでしょうか?しかし、これが私たちの住む汚れたサイバー世界なのです。
Memcachedサーバーは、レスポンスの増幅率が巨大で、偽装リクエストを最大51,000倍に増幅できるため、このUDP増幅ツールのリストの中で特に注目されています。Githubへの攻撃のとき、約30万台の無防備なMemcachedサーバーが利用されました。
以下の表は、悪用可能なUDPサービスとその増幅率を示しています。この表の大部分のデータは、国家サイバーセキュリティ通信統合センター(NCCIC)のアラート(TA14-017A):UDPベースの増幅攻撃で閲覧可能です。
表1:悪用可能なUDPサービスと増幅率
タイプ |
増幅率 |
Memcached |
10,000 ~ 51,000 |
NTP |
556.9 |
CharGEN |
358.8 |
QOTD |
140.3 |
RIPv1 |
131.24 |
CLDAP |
56 ~ 70 |
LDAP |
46 ~ 70 |
DNS |
28 ~ 54 |
Quake Network Protocol |
63.9 |
TFTP |
60 |
SSDP |
30.8 |
MSSQL |
25 |
Kad (P2P) |
16.3 |
Portmap (RPCbind) |
7 ~ 28 |
SNMP |
6.3 |
Steam Protocol |
5.5 |
NetBIOS |
3.8 |
BitTorrent |
3.8 |
Multicast DNS (mDNS) |
2 ~ 10 |
今後も発生するMEMCACHEDサーバーの悪用
当初よりインターネットの状況は改善されました。所有者はサーバーの数を約40,000まで削減しています。しかし、これらのMemcachedサーバーは継続して悪用されています。以下の図2は、Qihoo 360社のネットワークセキュリティ調査ラボが提供する世界のDDoS脅威の全体像に関する貴重な見解です。2018年5月~7月の期間、Memcachedは引き続きDDoS攻撃の大きな部分を占めていることがわかります。
図2:リフレクション攻撃で使用されるプロトコルの頻度
リフレクション攻撃(アンプ攻撃)の防御
リフレクションタイプのアンプ攻撃は、大容量のボリューム攻撃であるため、その検出は容易です。しかし、攻撃を緩和するということになると、攻撃がRFCの構造に準拠した正当なソースからの応答であるだけでなく、DNSやNTPなどユーザーが依存する機能を提供するサービスの一部を使用するため容易ではありません。
課題は正当なユーザートラフィックと攻撃トラフィックを正確に区別することです。多くの場合、サービスの応答の遅延に対して再試行を繰り返し行うため、攻撃を受けているサービスは正当なユーザーが増えたように見えます。これらの再試行は誤ってDoS攻撃の挙動として認識されます。
リフレクション攻撃(アンプ攻撃)を緩和する4つの方法
- レートリミット レートリミットはDDoS攻撃緩和方法の一般的なカテゴリの一つです。レートリミットは、宛先や送信元に対して適用されます。宛先に対するレートリミットは無差別的な性質のため、付随する損害を伴います。このため、システムダウンを防止するための最終手段としてのみ適用します。送信元に対するレートリミットは、設定したアクセスポリシーとの差異に基づいて行うため、より効果的です。通信量の多いノイジーな送信元を制限したり、対象の送信元からのフラグメント化されたUDPパケットをドロップしたりすることにより、影響を最小化することができます。
- 正規表現(REGEX)フィルタ トラフィックのシグネチャフィルタを適用すると、リフレクションタイプのアンプ攻撃を効果的に防御できます。これらの攻撃は、正規表現で抽出して識別可能な繰り返し構造を持っています。 正規表現フィルタのデメリットはパフォーマンスです。DDoS防御装置はネットワークの境界部分に配置されるため、ビジネスで使用するインターネット容量の最大値に対応する必要があります。検査を行う方法がソフトウェアかハードウェアかに関係なく、すべてのパケットを検査しようとすると、防御能力を超えてしまう可能性があります。
- ポートのブロック 不要なポートのブロックは以前よりセキュリティ対策として有効です。課題は正当なトラフィックと攻撃者のトラフィックの両者で共通に使用するポートの防御です。DNSのTCP/UDPの53番ポートは、一般的に攻撃を受けるが、必要なポートです。53番ポートをブロックすると、環境内のすべての人に対してDoS攻撃と同じ影響を与えます。一方で、SSDPはインターネット全体で正当に使用される場合がほとんどないため、送信元がインターネットからの1900番ポートのトラフィックをブロックすることは非常に有効です。
- 脅威インテリジェンス 攻撃者は常にインターネットをスキャンして、DDoS攻撃で利用できそうなサーバーを探しています。これらの脆弱なサーバーの情報は、脅威インテリジェンス会社からリアルタイムフィードとして入手可能です。 脆弱なサーバーのIPアドレスを事前に把握してブロックすることは、攻撃を緩和する上で予防的な対策であり、効果的な方法です。この方法は、トラフィックをブロックするために「IPレピュテーション」を使用するため、より正確な緩和が可能になります。課題は、何千万件ものエントリを持つ膨大なフィード情報を取得して、対処することです。 例として、2013年当時の記録となった300GbpsのSpamhaus DNSによるアンプ攻撃の後、インターネットの適切な予防対策を啓蒙し、「ANY」タイプの未認証のDNSクエリに応答する約2,800万の無防備なDNSサーバーを撲滅するためにオープンDNSリゾルバプロジェクトがスタートしました。当時もこれらのサーバーのIPアドレスは確認可能であり、現在も引き続き入手可能です。実際、A10のDDoS脅威インテリジェンスマップを使用すると、DNSのリフレクション攻撃(アンプ攻撃)に現在も利用されている脆弱な約400万のサーバーの識別が可能です。
各タイプのリフレクション攻撃(アンプ攻撃)をブロックする方法
効果的な防御方法を選択するには、有効性と導入コストの適切なバランスを確認し、正当なユーザーへの付随的な損害を防止する必要があります。
表2:ポートブロックと脅威インテリジェンスの使用事例
リフレクションタイプのアンプ攻撃種類 |
アタックの送信元ポート |
推奨緩和方法 |
BitTorrent |
UDP 6881 |
送信元ポートのブロック |
CharGEN |
UDP 19 |
送信元ポートのブロック |
CLDAP |
UDP 389 |
送信元ポートのブロック |
DNS |
UDP 53 |
脅威インテリジェンス |
Kad (P2P) |
UDP 751 |
送信元ポートのブロック |
Memcached |
UDP 11211 |
送信元ポートのブロック or 脅威インテリジェンス |
MSSQL |
UDP 1434 |
送信元ポートのブロック |
Multicast DNS |
UDP 5353 |
送信元ポートのブロック |
NetBIOS |
UDP 137 |
送信元ポートのブロック |
NTP |
UDP 123 |
MONLISTレスポンスのブロックor 脅威インテリジェンス |
Portmap (RPCbind) |
UDP 111 |
送信元ポートのブロック |
QOTD |
UDP 17 |
送信元ポートのブロック |
Quake Network Protocol |
UDP 27960 |
送信元ポートのブロック |
RIPv1 |
UDP 520 |
送信元ポートのブロック |
SNMP |
UDP 161 |
送信元ポートのブロック or 脅威インテリジェンス |
SSDP |
UDP 1900 |
送信元ポートのブロック |
Steam Protocol |
UDP 27015 |
送信元ポートのブロック |
TFTP |
Ephemeral |
脅威インテリジェンス |
A10ができること
リフレクション攻撃(アンプ攻撃)は今後も拡大し、脅威となり続けます。新しいアプリケーションやサービスにより業界のイノベーションが起こると、攻撃者は悪用する新たなツールを探します。防御側として、攻撃方法を理解し、攻撃の送信元を知ることは、DDoS攻撃に対するレジリエンス(耐久力)を獲得し、優位に立つことにつながります。
積極的にポートをブロックし、レピュテーション情報に基づいてIPアドレスのブラックリスト登録を適用することは、一定レベルのリスクを伴います。正当なユーザーが付随的な損害を受ける可能性があるためです。たとえば、NATサービスを介して1つのIPv4アドレスを脆弱なサーバーと正当なユーザーで共有している可能性がありますが、DDoS攻撃があれば標的となったシステムのダウンを防ぐため、疑わしいトラフィックとして排除しなければなりません。
正当なユーザーへの付随的な損害を最小化するため、A10のThunder TPS製品は、革新的な5段階レベルの自動エスカレーション機能を備えています。この機能を利用すると、DDoS防御担当者は事前に定義された適切なレベルの緩和措置を適用できます。たとえば、平常時、つまりレベル0では、緩和措置は実施しません。攻撃が検出された場合、システムにより自動的にレベル1~レベル4に引き上げられます。ポートのブロックや脅威インテリジェンスは、さらなる緩和ポリシーとしていずれかのレベルに動的に割り当てられることが可能です。
当社の実用的なDDoS脅威インテリジェンスは、攻撃者が「武器」として利用可能な膨大な数のIPアドレスを提供します。A10のDDoS脅威インテリジェンスマップを閲覧すると、多くの脆弱なサービスで、数百万単位の個別のIPアドレスが利用されていることがわかります。このDDoS脅威インテリジェンスは、当社のThunder TPS製品に搭載され、最大9,600万エントリを持つ最大規模のクラスリストをサポートしています。