本周二,AWS、Google和Cloudflare表示,他們在8月份檢測到有史以來規模最大的分布式拒絕服務(DDoS)攻擊——而這是由于HTTP/2協議的一個零日漏洞(CVE-2023-44487)被利用。
AWS表示在2023年8月28日至29日期間,他們目擊了一次峰值超過每秒1.55億次請求的攻擊;Cloudflare觀察到了一個每秒2.01億次請求的峰值;Google則表示,他們在8月份遭受的攻擊規模是先前記錄的8倍多——每秒3.98億次請求。
HTTP/2是大約60%的網絡應用程序的一部分,決定了用戶與網站互動的速度和質量。HTTP/2協議的一個特性是,允許在一個TCP連接上向服務器發送多個HTTP請求。這些請求按順序流式傳輸到服務器上,服務器收集這些請求流,進行處理并做出響應。因此,當瀏覽器打開一個頁面時,它可以通過一個連接逐個發送所有內容的請求,這比HTTP/1.x的傳統方法更高效——后者通常需要花費時間和資源來建立多個并行的TCP連接來從服務器獲取內容,HTTP/2則通過一個連接完成所有操作。
HTTP/2協議的流式傳輸功能的一個特點是能夠發送請求,并在不久后取消該請求。當客戶端發出一個請求,然后取消它時,服務器會停止處理該請求,但保持HTTP/2連接開放。這樣就避免了打開和關閉多個TCP連接。
雖然服務器在一個TCP連接上只允許有限數量的流,但Rapid Reset攻擊繞過了這個限制。攻擊者發送一個請求到流中,然后迅速重置該流,取消該請求并保持連接開放。因為每個請求都被取消了,所以并未計入最大允許流的數量。攻擊者只需不斷發送請求并快速重置,重復此過程,如此一來服務器就不得不開始和停止大量垃圾請求。
Cloudflare的分析顯示,黑客通過利用HTTP/2中的上述漏洞,僅需要使用一個比平常小得多的機器人網絡(大約兩萬臺機器),就能夠產生如此大量的請求,并有可能讓支持HTTP/2的幾乎任何服務器或應用程序癱瘓,突顯了該漏洞對于沒有保護的網絡來說是多么具有威脅性。
由于問題出自HTTP/2功能本身,因此并沒有技術上的修復補丁。上述三家服務提供商都已經為此發布了緩解措施,以免受Rapid Reset攻擊的影響。
嘶吼專業版
嘶吼專業版
FreeBuf
CNCERT國家工程研究中心
FreeBuf
007bug
007bug
綠盟科技
上官雨寶
007bug