NRDAX
Submit

← registry

NRDAX-T0388 - Unbounded Header-List-Size Default OOM

memory_amp · active · first seen 2026-07-13

provenance: Reproduced in NullRabbit's attack-reproduction pipeline

mechanism

The node-side defect is an insecure default: the HTTP/3 codec's maxHeaderListSize defaults to the near-unbounded RFC 9114 ceiling ((1<<62)-1) whenever a peer omits SETTINGS_MAX_FIELD_SECTION_SIZE, instead of inheriting the safe bounded default already enforced for HTTP/1.1 and HTTP/2. An attacker simply never sends that setting, then transmits a HEADERS/QPACK block containing an enormous COUNT of distinct literal header fields; the codec keeps decoding and buffering each field with no size ceiling. The fix-class is enforcing a safe bounded default (and/or hard cap independent of peer-advertised settings) for field-section size in the HTTP/3 codec, which measurably manifests as unbounded heap growth culminating in OutOfMemoryError/process death.

instances (1)

chainprimitivefidelityoriginreproducer (bundle)source
http3 netty_http3_field_section_oom proxy reverse-engineered-cve netty_http3_field_section_oom -

related (memory_amp)

cite

https://nrdax.com/techniques/NRDAX-T0388

plain

NRDAX Registry. Technique NRDAX-T0388.

bibtex
@misc{nrdax_NRDAX_T0388,
  title = {Unbounded Header-List-Size Default OOM (NRDAX-T0388)},
  howpublished = {NRDAX Registry},
  url = {https://nrdax.com/techniques/NRDAX-T0388},
}
json (csl)
{
  "id": "nrdax-NRDAX-T0388",
  "type": "dataset",
  "title": "Unbounded Header-List-Size Default OOM (NRDAX-T0388)",
  "URL": "https://nrdax.com/techniques/NRDAX-T0388",
  "publisher": "NRDAX Registry"
}