メモキャッシュ増幅攻撃:UDPプロトコルの脆弱性を利用する

EdgeOneDev-Dev Team
10 分読む
May 29, 2025
Memcached Amplification Attacks, Vulnerabilities in UDP Protocols, SecurityTutorial

この  分散型サービス拒否(DDoS)攻撃は、Memcachedサーバーに対して行われ、被害者のサーバーネットワークをトラフィックで圧倒し、サービスが停止するまで追い詰めます。攻撃者は脆弱なUDP Memcachedサーバーを利用し、欺瞞的なリクエストを送信することで、これらのサーバーがターゲットの被害者にリクエストトラフィックを洪水のように送り返すように仕向けます。被害者のリソースは急激に増加し、ターゲットサーバーは過負荷となり、新しいリクエストを発行できなくなります。通常のトラフィックはサービスに到達できず、サービス拒否状態になります。

Distributed Denial of Service (DDoS) attack diagram, attacker forges HTTP GET requests to compromised Memcached servers

Memcachedとは?

Memcachedは、高性能のオープンソースシステムで、メモリとデータベースのキャッシング機能を分散させます。動的なウェブサイトやウェブアプリケーションは、キー・バリュー・ペアを利用して、よくアクセスされるデータをメモリ内でキャッシュすることでパフォーマンスを向上させます。Facebook、Twitter、YouTubeなどの大手企業もMemcachedを多用しています。MemcachedのUDPに対するデフォルトのサポートは、攻撃者が攻撃を行う際の人気の理由となっています。

Memcached攻撃の仕組み

ウェブサイトの速度を向上させるツールであるMemcachedには、恐ろしい暗い側面があります。ハッカーによって標的にされたとき、このインメモリキャッシングの素晴らしいものは「デジタル迫撃砲」に変わります - 特殊に作成されたHTTPリクエストを使用して、脆弱なMemcachedサーバーを掌握し、本来はスピード向上のためのデータチャンネルを、ターゲットに対する猛烈な「データ津波」に変換します。
攻撃は、精密に設計された罠のように展開されます:
アイデンティティ偽装:ハッカーはリクエストの送信元アドレスを偽造し、Memcachedに被害者にデータを送信すべきだと信じ込ませます。
連鎖反応の引き金:サーバーの脆弱性を利用し、単純な「GET」リクエストを驚異的な51,000倍に増幅します。
データ津波の創出:数キロバイトのコマンドが突然ギガバイトのUDPパケットに膨れ上がります。
まるで庭のホースに消防ホースを取り付けるかのように、通常のトラフィックが50,000倍に増加し、どんなネットワーク防御も耐えられません。この攻撃は、サーバーを麻痺させるだけでなく、巧妙に本当の攻撃経路を隠し、守備側を偽のリクエストの海に溺れさせます。

Memcached増幅攻撃は、カフェのウェイターに「メニューのすべてをください、後で全体の注文を教えてください」と言って電話するようなものです。ウェイターが折り返しの電話番号を尋ねると、その人はターゲットの被害者の電話番号を伝えます。そして、ターゲットの被害者はレストランから電話を受け取り、彼らが要求していない情報が大量に届きます。

特定の攻撃プロセス

  1. 攻撃者はインターネットをスキャンして脆弱なMemcachedサーバーを見つけ、多くの場合、ターゲットプログラムと同じ物理マシン上で悪意のあるプログラムを実行することが含まれ、通常はマルチテナント環境での展開が関与します。
  2. 次に、攻撃者はターゲットの被害者のIPアドレスを使用してHTTP GETリクエストを偽造し、サーバーに大量のUDP Memcached攻撃ペイロードデータを返すように要求します。このリクエストは、送信元IPアドレスを偽装し、被害者のIPアドレスから来ているように見せかけることを目的としています。
  3. 脆弱なMemcachedサーバーはリクエストを受け取り、被害者のIPアドレスに対して大量のデータを送信します。
  4. 被害者のデータセンターサーバーは、大量のリクエストに応えることで圧倒され、サービスが過負荷になり、通常のリクエストに応じることができなくなります。


なぜMemcached DDoS攻撃はそれほど効果的なのか?

Memcache DRDoSは、2017年6月に360情報セキュリティ部門の0keeチームによって初めて発見され、2017年11月のPoC 2017会議で公に報告されました。この会議の報告書では、攻撃の原理と潜在的な危険について詳述されています。この文書では、攻撃の特徴が記載されています:

  • Memcacheは非常に高い増幅係数を持ち、少なくとも50,000倍以上です。
  • 世界中に約60,000台のMemcachedサーバー(反射ポイント)が存在し、これらのサーバーはしばしば高帯域幅リソースを持っています。

US-CERTセキュリティアドバイザリー、この記事はUDPベースの増幅攻撃の原理と潜在的な危害についても紹介しています。

調査報告に基づいて、以下の結論が導き出せます:
この攻撃方法は、大規模なDDoS攻撃を実施するために悪用される可能性があり、小規模な攻撃チームでも以前は持っていなかった大規模なトラフィック攻撃能力を得ることができます。文書の内容から、Memcached DDoS攻撃が効果的な理由は、攻撃ペイロードトラフィックを最大50,000倍増幅できるためです。これは、少量のリクエストが被害者のサーバーやデータセンターに大量のトラフィックを送信する可能性があることを意味します。さらに、Memcachedサーバーはしばしば高速ネットワークに接続されており、トラフィックが非常に迅速に送信されるため、防御が難しくなります。もう一つの一般的な理由は、攻撃者がDDoS攻撃を実施するために自分のインフラを維持する必要がないことです。攻撃者は、IPスプーフィング、UDPポート攻撃、および他のエンドポイント攻撃のために公開インターネットリソースを利用できます。

主要な国際攻撃事件

DDoS攻撃者と防御者は常にリアルタイムで対立しています。攻撃者はしばしば驚くべき事件を引き起こし、国家、政府、企業、インターネットエコシステムに計り知れない損害を与えます。以下に、いくつかの実際のケースを示します:

GitHubが1.35 Tbps攻撃を受ける

GitHubは、2018年2月28日に歴史上最大の分散型サービス拒否攻撃に直面し、ピーク時にトラフィックが1.35 Tbpsに達しました。この中断はGitHubでのサービスの障害を引き起こし、ユーザーに高いレイテンシをもたらした後、サイトは完全にアクセス不可能になりました。攻撃者はMemcached反射増幅攻撃を実行し、ほぼ50,000倍の増幅係数をもたらしました。偽造されたGitHubのIPアドレスを使用して、攻撃者は公開されたMemcachedサーバーに対して統計リクエストを行い、サーバーはGitHubに応答データを送り返しました。応答データが巨大な規模に達すると、サーバーは過負荷になり、ネットワークが混雑しました。GitHubはその時、AkamaiのCDNサービスを利用し、悪意のあるパケットをクリアするためにトラフィックスクラビングセンターを活用しました。攻撃はAkamaiとの統合後、8分で停止しました。

 米国のサービスプロバイダーが1.7 Tbps攻撃を受ける

GitHub攻撃の数日後、米国のサービスプロバイダーは、ピークトラフィックが1.7 Tbpsに達するMemcached反射攻撃を報告しました。攻撃者は約20,000台の公開されたMemcachedサーバーを使用して、IPアドレスを偽造してトラフィックの洪水を引き起こしました。主なプラットフォームのターゲットには、Google、Amazon、Pornhub、さらにはゲームウェブサイト(Rockstar Games、Minecraftなど)や金融機関が含まれていました。サービスプロバイダーは直ちに60,000台以上の公開されたMemcachedサーバーの修復作業を開始し、MemcachedのUDPトラフィックをブラックリストフィルタリングを通じて制限しました。

ニュージーランド証券取引所への継続的な攻撃

2020年8月の最終週、ニュージーランドの証券取引所は、巧妙に組織されたサイバー攻撃の犠牲になりました。ハッカーはMemcached反射攻撃を使用して、5日間にわたる執拗な攻撃を展開し、取引所にトラフィックの津波を浴びせました。日々のサービスの中断は最大6時間に及び、株式および債券取引を麻痺させ、「接続失敗」の通知が表示される画面を前に投資家を釘付けにしました。
この攻撃は財務的損失を超え、金融インフラ内に脆弱性爆弾を引き起こしました。投資家が自分のアカウントデータが停滞し、市場価格が6時間の時間カプセルに閉じ込められたままになるのを見守る中、個々の懸念は集団的なパニックに雪崩れ込みました。取引所の技術チームは、ニュージーランド政府通信セキュリティ局(GCSB)およびISPと協力して、レイヤード防御を展開するために時間との競争に挑んでいました:専用の高防御IPを介してデジタルファイアウォールを築き、悪意のあるデータのトンネルを無効化するためにトラフィックスクラビングシステムを起動しました。絶え間ない努力により、彼らは最終的に取引システムを復活させました。
ransomwareグループの身元は部分的に不明のままですが、この攻撃の前例のない期間は、歴史的規模のサイバー嵐を示唆しています。この事件は警鐘を鳴らします:暗号通貨と電子取引が支配する時代にあって、すべてのサイバー攻撃は金融の津波を引き起こす可能性があります。投資家のデジタル資産を守るためには、業界全体がよりスマートで適応的な防御アーキテクチャを構築する必要があります。

Memcached攻撃から保護する方法

  • 電源を切る:UDPプロトコルを無効にする: このメモリキャッシングツールのデフォルトであるUDPプロトコルは、チェックなしの空港セキュリティチェックポイントのようなもので、誰でも身分を偽造して通過できます。ハッカーはこれを利用して、リクエストを送信する際に被害者として偽装します。UDPが不要な場合は完全に無効にすることを推奨します。これは、確認されたTCPプロトコルのみが通過することを許可するサーバーにセキュリティドアを設置するようなものです。
  • 電子ゲートキーパーを設置する:スマートファイアウォールを展開する: ファイアウォールは24時間の警備員のように機能し、悪意のあるトラフィックをブラックリストされたIPから正確に特定し、ブロックします。サーバーの入り口に高防御ファイアウォールを展開し、既知の攻撃元からの接続リクエストをリアルタイムで監視し、ブロックすることをお勧めします。これにより、ハッカーがサーバーのドアに触れることが不可能になります。
  • システムをワクチン接種する:ソフトウェアを最新に保つ: 脆弱性は古いソフトウェアを介して広がるインフルエンザウイルスのようなものです。Memcachedチームは、既知の脆弱性を修正するために定期的にセキュリティパッチをリリースしており、最新バージョンに迅速に更新することをお勧めします。これは、サーバーに免疫を与えるワクチン接種のようなものです。
  • 弾薬供給を遮断する:応答データのボリュームを制限する: ハッカーの増幅攻撃は、基本的に何も得られないことを利用したものです。少量のリクエストを使用して大量の応答を引き起こします。各UDPリクエストの応答データを元のリクエストのサイズ以内に制御することをお勧めします。これは、攻撃者の「データ弾薬庫」を完全に無効化するために、大砲を水鉄砲に置き換えるようなものです。

Edgeone は、当社のネットワークエッジでUDPトラフィックをフィルタリングし、これらの増幅攻撃からのリスクを排除します。Edgeoneの保護シナリオは、ゲーム、インターネット、金融、政府、企業などのさまざまな分野をカバーしており、接続されたすべてのサービスに対してL3/L4トラフィックベースのDDoS攻撃保護を提供および有効化します。ネットワークトラフィックをリアルタイムで監視し、DDoS攻撃を検出した際には直ちにトラフィックスクラビングとフィルタリングを実施します。DDoS保護機能は、攻撃プロファイルに基づいた防御アルゴリズム、行動パターン分析、およびAIベースのインテリジェント認識を活用し、以下のタイプのDDoS攻撃を特定し、フィルタリングすることが可能です。さらに、EdgeOneは、接続されたすべてのサービスに基本的なDDoS保護機能とリソースを提供し、ほとんどのサイトサービスやTCP/UDPアプリケーションの日常使用に十分な基本保護を提供します。この基盤の上に、重大なDDoS攻撃のリスクが高いと予想され、持続的な接続を維持する必要がある企業やカスタマイズされたトラフィック制御戦略が必要な企業には、EdgeOneが専用のDDoS保護を提供します。興味がある方は、Edgeoneの高度なDDoS保護をぜひご覧ください。

EdgeOneの試用版を使用して、DDoS脅威に対する次世代のシールドを手に入れよう!

無料で始める

Memcached DDoS攻撃 FAQ

Q1: Memcached反射攻撃をどのように検出できますか?

A1: 

トラフィック監視ツール(NetFlow、SIEMなど)を使用して、異常なUDP 11211ポートトラフィックを検出します。特に、リクエストと応答パケットのサイズに大きな差がある場合(応答パケットがリクエストパケットよりもはるかに大きい場合)に注意してください。

Q2: 攻撃の発信元を追跡するのが難しいのはなぜですか?

A2: 

攻撃者はターゲットIPを偽造し、Memcachedサーバーは世界中に分散しているため、トラフィックソースが分散しています。さらに、攻撃は他の反射技術(NTPなど)と組み合わされることが多く、追跡が難しくなります。

Q3: 企業は大規模な攻撃(Tbpsレベルなど)にどのように対応できますか?

A3:

  • レイヤード防御: CDNおよびDDoS高防御サービスを展開し、バックボーンネットワークやIDC入口でトラフィックをクリーンアップします。
  • プロトコル制限: MemcachedのUDPプロトコルを無効にし、TCPのみを保持し、SASL認証を有効にします。
  • 冗長アーキテクチャ: マルチラインBGPアクセスを使用して、単一障害点を回避します。

Q4: 攻撃を緩和するためのオープンソースツールはありますか?

A4:

  • Mem-Fixed: 攻撃サーバー上でMemcachedサービスをシャットダウンするために特定のコマンドを送信するCoreroによって開発されたツールです。
  • Shodanスキャン: 公開されたMemcachedサーバーを発見し、タイムリーに強化またはブロックするために使用されます。

Q5: 攻撃には身代金の要求が含まれますか?

A5: 

一部の攻撃には、Moneroなどの暗号通貨での支払いを要求する身代金メールが伴います。例えば、GitHub攻撃では、攻撃者がランサムウェアを植え付けることで利益を得ようとしました。

Q6: Memcached攻撃の将来のトレンドは何ですか?

A6: 

公開されたサーバーの数が減少するにつれ、攻撃はより隠れたプロトコル(QUICなど)にシフトするか、AI技術と組み合わせて攻撃経路を最適化する可能性があります。企業は定期的に保護戦略を更新し、0day脆弱性の監視を強化することをお勧めします。

Q7: 個人ユーザーはMemcached攻撃から守る必要がありますか?

A7: 

個人ユーザーは通常、直接のターゲットではありませんが、ルーターやスマートホームデバイスがMemcachedサービスを公開していることに注意する必要があります。デバイスでのインターネットアクセスを無効にし、ファームウェアを定期的に更新することをお勧めします。