GitHubが、過去最大規模とみられるDDoS攻撃を受けたことを明らかにした。
GitHubに対する最初の攻撃は最大1.35Tbpsに達し、2度目の攻撃は400Gbpsだった。つまり、これは記録されている限り過去最大のDDoS攻撃ということになる。これまで、最大の攻撃はおよそ1.1Tbpsだった。
GitHubは開発者向けブログで、GitHub.comがDDoS攻撃の影響で協定世界時28日17時21分から17時26分まで利用できなくなり、17時26分から17時30分までは断続的に利用不可となっていたことを明らかにした。
GitHubは、この攻撃で「ユーザーのデータの機密性や完全性が危険にさらされる」ことは全くなかったとしている。
「2月28日17時21分から17時30分までの間、われわれは膨大な量のDDoS攻撃を検知し、これに対処した。この攻撃は、数万に及ぶ固有のエンドポイントにわたる1000以上の異なる自動システムから発生していた。1秒当たり1億2690万パケットによって最大1.35Tbpsに達したのは、(中略)『memcached』をベースとするアプローチを使った増幅攻撃だった」(GitHub)
このDDoS攻撃の特徴は、独特の方法で自らの力を増幅することだ。Akamaiによると、具体的にはUDPベースのmemcachedトラフィックを利用する。
同社によると、memcachedはデータをキャッシュして、ディスクやデータベースのような高負荷データストアの負担を軽減するためのツール。インターネットに接続しないシステムでの使用のみを想定しており、認証は不要だという。現在、既知の無防備なシステムが5万以上あるとしている。
memcachedの「get」要求を受信すると、システムは要求された値をメモリから取得した後、それらの値を連続ストリームで返信することで応答を作成すると、Akamaiは説明している。
しかし、DDoS攻撃者は、このプロトコルを使って攻撃を仕掛けられることに気づいた。Cloudflareによると、攻撃者はまずインターネットに接続するmemcachedサーバ上に大量のペイロードを埋め込む。その後、攻撃者は「get」要求メッセージを標的のソースIPで偽装する。これにより、そのインターネット接続するサーバに対して短い要求を送信すると、被害者に大量のトラフィックが届くようになる。
「15バイトの要求によって、134キロバイトの応答が不運な標的に送信されることもある。これは1万倍の増幅率だ。実際に、われわれは15バイトの要求が750キロバイトの応答を引き起こす事例を確認したこともある(それは5万1200倍の増幅率だ)」(Cloudflare)。
GitHubは、そうした攻撃が大量のトラフィックを生成する仕組みを次のように説明した。「IPアドレスの偽装により、memcachedの応答が別のアドレス(例えば、GitHub.comへのサービス提供に使われるアドレス)を標的にし、そのアドレスに対して、偽装されていないソースによって送信される必要のあるデータよりも大量のデータを送信することを可能にする。(Cloudflareの)記事で説明された誤設定による脆弱性は、その種類の攻撃の中で、幾分ユニークなものである。なぜならその攻撃の増幅率は最大5万1000だからだ。つまり、攻撃者によって1バイトが送信されるたびに、最大51キロバイトが標的に送信される」
攻撃の規模が大きかったため、GitHubはトラフィックをAkamaiに転送することを決め、同社の協力によりシステムを復旧させた。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
地味ながら負荷の高い議事録作成作業に衝撃
使って納得「自動議事録作成マシン」の実力