
CVE catalog
CVE-2026-17495
moment is a JavaScript date library for parsing, validating, manipulating, and formatting dates. In versions 2.29.2 through 2.30.1, a specially crafted non-string object passed to moment.locale() can
- Severity
- Medium · CVSS 5.9
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Published
- Updated
- Source
- [NVD] · [CVE record]
- EPSS
- 0.52% · Oct 25, 2026
moment is a JavaScript date library for parsing, validating, manipulating, and formatting dates. In versions 2.29.2 through 2.30.1, a specially crafted non-string object passed to moment.locale() can bypass the locale-name path-traversal guard. The guard assumes the input is a string, so an object whose match() method satisfies the check while its toString() returns a traversal path reaches an internal require() call with attacker-controlled path segments. This is an incomplete fix for CVE-2022-24785 and primarily affects npm (server-side) users that pass user-provided input directly to moment.locale(). The issue is fixed in moment 2.31.0, and users should upgrade to 2.31.0 or later. As a workaround, validate that any user-supplied input is a string before passing it to moment.locale().
Vulnerable and fixed packages
Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.
| Distribution | Package | Release | Version | Status |
|---|---|---|---|---|
| Debian | node-moment | sid | 2.31.0+ds1-1 | fixed |
| Debian | node-moment | forky | 2.31.0+ds1-1 | fixed |
| Debian | node-moment | trixie | 2.29.4+ds-1 | vulnerable |
| Debian | node-moment | bookworm | 2.29.4+ds-1 | vulnerable |
| Npm | moment | Not reported | 2.31.0 | fixed |
Fixed-version evidence
| Distribution | Package | Type | Release | Fixed version | Urgency | Origin | Bugs |
|---|---|---|---|---|---|---|---|
| Debian | node-moment | source | sid | 2.31.0+ds1-1 | not yet assigned | Not reported | [1148182] |
| Debian | node-moment | source | forky | 2.31.0+ds1-1 | not yet assigned | Not reported | [1148182] |
| Debian | node-moment | source | trixie | (unfixed) | not yet assigned | Not reported | [1148182] |
| Debian | node-moment | source | bookworm | (unfixed) | not yet assigned | Not reported | [1148182] |
| Npm | moment | npm | Not reported | 2.31.0 | Not reported | GHSA-4P3W-J4W9-5JQW | Not reported |
Notes
[trixie] node-moment: Minor issue [bookworm] node-moment: Minor issue, requires passing a complex object directly to moment.locale()
OpenFactory catalog packages
[Debian 12 (Bookworm)]
- [libjs-moment]Affected
Source package: [node-moment]
Details (2)
2.29.4+ds-1· all · bookwormAffected
nvd · node-moment · debian · bookworm; nvd · node-moment · debian · 12
2.29.4+ds-1· all · bookwormAffected
nvd · node-moment · debian · bookworm; nvd · node-moment · debian · 12
- [node-moment]Affected
Details (2)
2.29.4+ds-1· all · bookwormAffected
nvd · node-moment · debian · bookworm; nvd · node-moment · debian · 12
2.29.4+ds-1· all · bookwormAffected
nvd · node-moment · debian · bookworm; nvd · node-moment · debian · 12
[Debian 13 (Trixie)]
- [libjs-moment]Affected
Source package: [node-moment]
Details (2)
2.29.4+ds-1· all · trixieAffected
nvd · node-moment · debian · 13
2.29.4+ds-1· all · trixieAffected
nvd · node-moment · debian · 13
- [node-moment]Affected
Details (2)
2.29.4+ds-1· all · trixieAffected
nvd · node-moment · debian · 13
2.29.4+ds-1· all · trixieAffected
nvd · node-moment · debian · 13
Observed:
References
- [https://ftp.suse.com/pub/projects/security/]
- [https://github.com/advisories/GHSA-4p3w-j4w9-5jqw]
- [https://nvd.nist.gov/vuln/detail/CVE-2026-17495]
- [https://osv.dev/vulnerability/DEBIAN-CVE-2026-17495]
- [https://security-tracker.debian.org/tracker/CVE-2026-17495]
- [https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-17495.json]
[Debian Security Tracker] · [FIRST EPSS] · [GitHub Advisory Database] · [National Vulnerability Database (NVD)] · [OSV Package Vulnerability Database] · [Red Hat security advisories and VEX] · [SUSE security advisories and VEX]