GitHub Advisoryadvisory · crates.io

GHSA-mjw4-jj88-v687 panic on parsing crafted phonenumber inputs

CRITICAL Published 2024-07-09 Modified 2024-11-18 Official page ↗
Aliases
CVE-2024-39697
Ecosystem
crates.io
Packages
phonenumber
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
Weaknesses
CWE-1284, CWE-248, CWE-392
Reviewed
2024-07-09

Affected packages

• crates.io phonenumber: >= 0.3.4, < 0.3.6 → fixed in 0.3.6

Description

Impact The phonenumber parsing code may panic due to a reachable `assert!` guard on the phonenumber string. In a typical deployment of rust-phonenumber, this may get triggered by feeding a maliciously crafted phonenumber, e.g. over the network, specifically strings of the form `+dwPAA;phone-context=AA`, where the "number" part potentially parses as a number larger than 2^56. Since f69abee1/0.3.4/#52. 0.2.x series is not affected. Patches Upgrade to 0.3.6 or higher. Workarounds n/a References Whereas https://github.com/whisperfish/rust-phonenumber/issues/69 did not provide an example code path, property testing found a few: `+dwPAA;phone-context=AA`.

Related

Alias · CVE (1)

  • CVE-2024-39697 phonenumber is a library for parsing, formatting and validating international phone numbers. vulnerability

Weakness · CWE (3)

  • CWE-1284 Improper Validation of Specified Quantity in Input weakness
  • CWE-248 Uncaught Exception weakness
  • CWE-392 Missing Report of Error Condition weakness

References