CVE-2026-50171
Description
A flaw was found in the @angular/common package of Angular. The formatNumber function, which is also used by DecimalPipe, PercentPipe, and CurrencyPipe, does not properly validate the upper bounds of the digitsInfo parameter. A remote attacker could exploit this by providing a maliciously crafted digitsInfo string with excessively large fraction digit values. This leads to an unbounded loop, causing a Denial of Service (DoS) in the affected application.
Statement
A flaw was found in the @angular/common package. The formatNumber function, also used by DecimalPipe, PercentPipe, and CurrencyPipe, does not validate the upper bounds of the digitsInfo parameter. When a maliciously crafted digitsInfo string with excessively large fraction digit values is provided, the internal roundNumber function enters an unbounded loop, causing a Denial of Service through memory exhaustion and CPU hang. Exploitation requires the application to pass user-controlled input to the digitsInfo parameter, which is not the default Angular usage pattern.
Mitigation
Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.
Upgrade to fixed versions or apply patches (ref: https://github.com/angular/angular/security/advisories/GHSA-p3vc-36g9-x9gr)
Common Vulnerability Scoring System (CVSS) Score Details
Info alert:Important note
CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).
The following CVSS metrics and score provided are preliminary and subject to review.
CVSS v3 Score Breakdown
| Red Hat | NVD | cve.org | |
|---|---|---|---|
| Base Score | 5.9 | 6.1 | N/A |
| Attack Vector | Network | Network | N/A |
| Attack Complexity | High | Low | N/A |
| Privileges Required | None | None | N/A |
| User Interaction | None | Required | N/A |
| Scope | Unchanged | Changed | N/A |
| Confidentiality | None | Low | N/A |
| Integrity Impact | None | Low | N/A |
| Availability Impact | High | None | N/A |
Vector
Red Hat: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
NVD: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Red Hat CVSS v3 Score Explanation
AC:H - exploitation requires user-controlled input routed to digitsInfo parameter, which is not the default Angular pattern
Understanding the Weakness (CWE)
Availability
Technical Impact: DoS: Resource Consumption (CPU); DoS: Resource Consumption (Memory); DoS: Amplification
An infinite loop will cause unexpected consumption of resources, such as CPU cycles or memory. The software's operation may slow down, or cause a long time to respond.
Frequently Asked Questions
Not sure what something means? Check out our Security Glossary.
Want to get errata notifications? Sign up here.