CVE-2022-29167

ReDoS vulnerability in header parsing in hawk

State
Published
Severity
7.4 High
Published
May 5, 2022
Updated
Apr 23, 2025
Reserved
Apr 13, 2022

Read the record on cve.org

Description

Hawk is an HTTP authentication scheme providing mechanisms for making authenticated HTTP requests with partial cryptographic verification of the request and response, covering the HTTP method, request URI, host, and optionally the request payload. Hawk used a regular expression to parse `Host` HTTP header (`Hawk.utils.parseHost()`), which was subject to regular expression DoS attack - meaning each added character in the attacker's input increases the computation time exponentially. `parseHost()` was patched in `9.0.1` to use built-in `URL` class to parse hostname instead. `Hawk.authenticate()` accepts `options` argument. If that contains `host` and `port`, those would be used instead of a call to `utils.parseHost()`.

Scores

CVSSScoreVectorSource
3.17.4 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:N/A:HGitHub_M

Weaknesses

  • CWE-400 Uncontrolled Resource Consumption

Affected Products

ProductVersions
hawkmozilla
  • < 9.0.1Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.