Cisco Talos は、クラウド サービスプロバイダーの Cloudflare が今週初めに発表した新手の分散型サービス妨害(DDoS)攻撃を精力的に追跡しています。Cloudflare のブログ記事に書かれている手口により、過去最大の DDoS 攻撃が発生しました。今後はさらに大規模な攻撃が発生しやすくなる可能性があります。
CVE-2023-44487
HTTP/2 プロトコルの脆弱性である CVE-2023-44487 が最近悪用され、複数の標的に対して激しい DDoS 攻撃が開始されました。この問題は、HTTP/2 プロトコルがリクエストのキャンセル(リセット)を処理する方法に起因します。クライアントが HTTP/2 リクエストのリセットを発行すると、対応するストリームがキャンセルされるのでサーバーのリソースが消費されます。一方クライアントは、リセットの発行後直ちに新しいストリームを開くことができます。このように HTTP/2 ストリームを即座に開いてキャンセルする「Rapid Reset」により、サービス妨害が引き起こされます。HTTP/2 はさまざまな Web プラットフォームに組み込まれているので、この脆弱性は広範囲に影響を及ぼす可能性があります。
HTTP/2 は、前バージョンの HTTP プロトコルの改良版であり、HTTP リクエストの処理方法などが変更されています。HTTP の初期バージョンは、リクエストとレスポンスのシリアル化によって実現されており、クライアントは同じ TCP 接続を用いてサーバーにリクエストを送信し、そのサーバーからレスポンスを受信します。それに対し HTTP/2 は、リクエストとレスポンスを HTTP/2 フレームで送受信します。各フレームは固有のストリーム ID を持ち、その ID を使用してリクエストとレスポンスの対応関係を識別します。これにより、リクエストの多重化と並列処理が可能になります。この設計は、今日の Web トラフィックの発生方法にはるかに沿ったものです。一般的に、Web ページを読み込む際はさまざまなタイプのデータに対する大量の非同期リクエストが必要となるからです。
しかしながら、この新しい仕組みにはサービス妨害の脆弱性が存在します。攻撃者は、短時間に大量のリクエストとリセットを行えば HTTP/2 サーバーの貴重なリソースが消費され、それがサービス妨害になることを発見しました。問題は、特定の種類の Web ページを表示するときに、こうした大量のリクエストが発生すると考えられることです。たとえば、ユーザーがページを素早くスクロールして画像のレンダリング速度を上げようとする場合もリセットが発生する可能性があります。状況を悪化させる他の要因としては、HTTP/2 サーバーがサポート可能な同時接続数に対するハードリミットが挙げられます。RFC 9113 では、「並列処理を不必要に制限しないために」HTTP/2 サーバーの SETTINGS_MAX_CONCURRENT_STREAMS を最低 100 にすることが推奨されています。攻撃者が多数のシステムを自身の管理下に置き、オープンまたはハーフオープンの HTTP/2 接続でこれらの接続プールをいっぱいにすると、HTTP/2 サーバーが処理しきれなくなる場合があります。
これがまさに Cloudflare や他の大手プロバイダーで起きていることです。8 月下旬から、この新たな手口を用いた大規模な DDoS 攻撃が Cloudflare などのネットワークで確認されるようになりました。ピーク時にはとうとう 1 秒間に 2 億リクエストを超えましたが、これはわずか 2 万台のシステムからなるボットネットで成し遂げられています。もし、この種の攻撃がもっと大規模なボットネットを使用して仕掛けられたら、トラフィック量が桁違いに大きくなり、はるかに大きな影響を及ぼす可能性があります。そのため、できるだけ早くパッチ適用などの軽減策を実施することが強く求められています。
カバレッジ
今回の脅威は、以下の製品で検出してブロックすることが可能です。
Cisco Secure Endpoint(旧 AMP for Endpoints)は、この記事で説明したマルウェアの実行を阻止するのに最適です。Cisco Secure Endpoint の無料トライアルはこちらからお申し込みください。
Cisco Secure Email(旧 E メールセキュリティ)は、攻撃の一環として攻撃者が送りつける不正な電子メールをブロックします。Cisco Secure Email の無料トライアルはこちらからお申し込みください。
Threat Defense Virtual、適応型セキュリティアプライアンス、Meraki MX など、Cisco Secure Firewall(旧次世代ファイアウォールおよび Firepower NGFW)アプライアンスは、この脅威に関連する悪意のあるアクティビティを検出できます。
Cisco Secure Network/Cloud Analytics(Stealthwatch/Stealthwatch Cloud)は、ネットワークトラフィックを自動的に分析し、接続されているすべてのデバイスで、望ましくない可能性があるアクティビティをユーザーに警告します。
Cisco Secure Malware Analytics(Threat Grid)は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護機能を組み込みます。
Umbrella(シスコのセキュア インターネット ゲートウェイ(SIG))は、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。Umbrella の無料トライアルはこちらからお申し込みください。
Cisco Secure Web Appliance(旧 Web セキュリティアプライアンス)は、危険性のあるサイトを自動的にブロックし、ユーザーがアクセスする前に疑わしいサイトを検査します。
特定の環境および脅威データに対する追加の保護機能は、Firewall Management Center から入手できます。
Cisco Duo は、ユーザーに多要素認証を提供し、承認されたユーザーのみがネットワークにアクセスできるようにします。
オープンソースの Snort サブスクライバルールセットをお使いであれば、Snort.org で購入可能な最新のルールパックをダウンロードすることで、最新状態を維持できます。
Snort SID:
62519
本稿は 2023 年 10 月 11 日に Talos Group のブログに投稿された「What to know about the HTTP/2 Rapid Reset DDoS attacks」の抄訳です。