Amplification攻撃2月下旬より、memcachedを用いたUDPのAmplificationによるDDoS攻撃が、インターネット上の複数個所で観測されています。本稿ではその概要を取り上げると共に、IIJにおける観測状況を記載します。概要memcached[1]はメモリ管理の効率化を目的としたツールで、データベースを使用するWebアプリケーションサーバなど、高パフォーマンスを求められる環境で使用されます。memcachedはサーバ・クライアントモデルで動作し、アプリケーションはソケット通信を用いてmemcachedと通信します。memcachedは初期設定では、ホスト上の全てのネットワークインタフェースにおいて、TCP及びUDPのポート11211に対する着信を受け付けます[2]。そのため、ファイアウォールなどで適切にフィルタされていない場合、インターネット上の不特定多数のホストからの通信を受け付けてしまう可能性があります。memcachedのコマンドはUDPで送受信することが可能であり、またリクエストよりもレスポンスの方がメッセージサイズが大きいことから、通信量を増幅させるAmplification攻撃に使用される恐れがあります。本件を用いたDoS攻撃も発生しており、例えば2月28日にはGitHub宛に最大で1.35Tbpsの通信が発生し、サービスが一時的に停止される事態がありました[3]。本件については2018年2月末頃に、JPCERT/CCなど複数の組織から注意喚起が公開されています[4]。本件が公表されてから開発元であるDormandoは、UDPが標準で無効となるようmemcachedの仕様を変更しています[5]。IIJにおける探索通信の観測IIJでも、memcachedを探索しているものと推測される通信を多く観測しています。図-1はIIJマネージドファイアウォールサービスをご利用のお客様に対する、11211/udpを宛先とする通信の件数を宛先IPアドレス単位で正規化したものです。JPCERT/CCからの注意喚起にも記載されている、2月21日頃から件数が増加していることが確認出来ており、本攻撃に利用可能なホストを探索しているものと考えられます。図-2は11211/udpを宛先とする通信の送信元IPアドレス数を示したものです。IPアドレス数も通信件数と同様に、2月下旬に増加していることが確認出来ます。上記のグラフは2018年2月中旬からを対象としていますが、IIJバックボーン内に設置しているハニーポットでは、2017年8月頃から11211/udp及び11211/tcpを宛先とした通信を観測しています。ハニーポットにおける検出でも、2月下旬以降の件数が多く観測されています。7にて、本事象を用いた攻撃が成立することを確認しました。16.04.2にて、対策が有効であることを確認しました。図-3はUbuntuにおける初期状態の設定ファイルです。127.0.0.1′′オプションが指定されていることから、明示的に開放しない限りは外部からのリクエストに応答しません。0′′オプションを使用してUDPによる着信を無効化したりする必要があります(図-5)。7におけるmemcached設定変更例memcachedの設定変更による対策が出来ない場合は、上流のネットワーク機器やホストのファイアウォールにて、当該通信を遮断することでも対策可能です。実行しておく必要がない場合は、memcachedを停止しておくことも対策となります。今回はmemcachedが用いられていますが、ネットワークを用いるプログラムの多くは初期設定では複数のネットワークインタフェースにて着信を許可するため、適切な設定または通信のフィルタが必要となります。使用されているソフトウェアの設定やネットワーク構成をご確認頂き、不適切な状態が発見された場合には適切に対処するようにしてください。