From 66dbcd37f5b53843ae5cff004ba47b1bdd5c6e64 Mon Sep 17 00:00:00 2001 From: Sean McArthur Date: Wed, 3 Apr 2024 14:22:17 -0400 Subject: [PATCH] h2: continuation flood cause degradation of service (#1930) --- crates/h2/RUSTSEC-0000-0000.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 crates/h2/RUSTSEC-0000-0000.md diff --git a/crates/h2/RUSTSEC-0000-0000.md b/crates/h2/RUSTSEC-0000-0000.md new file mode 100644 index 0000000..34eaecc --- /dev/null +++ b/crates/h2/RUSTSEC-0000-0000.md @@ -0,0 +1,24 @@ +```toml +[advisory] +id = "RUSTSEC-0000-0000" +package = "h2" +date = "2024-04-03" +references = ["https://seanmonstar.com/blog/hyper-http2-continuation-flood/"] +categories = ["denial-of-service"] +keywords = ["http", "http2", "h2"] + +[versions] +patched = ["^0.3.26", ">= 0.4.4"] +``` + +# Degradation of service in h2 servers with CONTINUATION Flood + +An attacker can send a flood of CONTINUATION frames, causing `h2` to process them indefinitely. +This results in an increase in CPU usage. + +Tokio task budget helps prevent this from a complete denial-of-service, as the server can still +respond to legitimate requests, albeit with increased latency. + +More details at "https://seanmonstar.com/blog/hyper-http2-continuation-flood/. + +Patches available for 0.4.x and 0.3.x versions.