Repository: nervosnetwork/ckb (language: rust)

Issue:
RUSTSEC-2024-0003: Resource exhaustion vulnerability in h2 may lead to Denial of Service (DoS)

> Resource exhaustion vulnerability in h2 may lead to Denial of Service (DoS)

| Details             |                                                |
| ------------------- | ---------------------------------------------- |
| Package             | `h2`                      |
| Version             | `0.3.21`                   |
| Date                | 2024-01-17                         |
| Patched versions    | `^0.3.24,>=0.4.2`                  |

An attacker with an HTTP/2 connection to an affected endpoint can send a steady stream of invalid frames to force the
generation of reset frames on the victim endpoint.
By closing their recv window, the attacker could then force these resets to be queued in an unbounded fashion,
resulting in Out Of Memory (OOM) and high CPU usage.

This fix is corrected in [hyperium/h2#737](https://github.com/hyperium/h2/pull/737), which limits the total number of
internal error resets emitted by default before the connection is closed.

See [advisory page](https://rustsec.org/advisories/RUSTSEC-2024-0003.html) for additional details.



Discussion / hints:

Fix patch:
diff --git a/Cargo.lock b/Cargo.lock
index 909a2d2b0c..75d4d236cc 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2448,9 +2448,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.21"
+version = "0.3.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833"
+checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
 dependencies = [
  "bytes",
  "fnv",
@@ -2458,7 +2458,7 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "http",
- "indexmap 1.9.3",
+ "indexmap 2.0.2",
  "slab",
  "tokio",
  "tokio-util",


Test patch: