Skip to content
OpenAdvisories
High · 7.5 CVE-2026-60074 EUVD-2026-51124GHSA-hfqp-m279-7mj7

Date::Manip versions through 7.00 for Perl return corrupted dates via non-ASCII decimal digits that pass the numeric range tests in check

Published Jul 30, 2026 · Updated Sep 2, 2026 · Assigned by CPANSec

Description

Date::Manip versions through 7.00 for Perl return corrupted dates via non-ASCII decimal digits that pass the numeric range tests in check.

The parse regexes capture year, month and day with the `\d` shorthand, which on a character string matches the whole Unicode decimal digit property `\p{Nd}` and not just `[0-9]`. Date::Manip::Base::check then validates the captured fields with numeric comparisons alone (`$y<1 || $y>9999`, `$m<1 || $m>12`, `$d<1 || $d>$days`), and _parse_check stores the numified fields (`$y+0`). Perl truncates a string at the first character that is not an ASCII digit, so a field whose leading characters are ASCII digits numifies to an in-range prefix and satisfies every test: a year field of three ASCII digits followed by U+0664 ARABIC-INDIC DIGIT FOUR numifies to 202, giving the year 0202, and one non-ASCII digit in the month or day field shifts those fields the same way. The hour, minute and second fields match explicit ASCII character classes (`0?[0-9]`, `[0-5][0-9]`) and do not shift, though a non-ASCII digit in a fractional hour or minute field truncates the fraction.

Any caller that passes an untrusted character string to ParseDate() or Date::Manip::Date->parse() can get back a date that differs from the string it parsed, with no parse error. Where the parsed date gates logic such as an expiry check or a retention window, the shift goes unnoticed.

Affected products

VendorProductAffectedFixed
— Date-Manip ≤ 7.00 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 libdate-manip-perl 6.99-2 —
Debian 13 libdate-manip-perl No fix yet —
Debian 12 libdate-manip-perl No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.04 LTS libdate-manip-perl No fix yet —
Ubuntu 24.04 LTS libdate-manip-perl No fix yet —
Ubuntu 22.04 LTS libdate-manip-perl No fix yet —
Ubuntu 20.04 LTS libdate-manip-perl No fix yet —
Ubuntu 18.04 LTS libdate-manip-perl No fix yet —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS libdate-manip-perl No fix yet —
Ubuntu 14.04 LTS libdate-manip-perl No fix yet —
ReleasePackageFixed inAdvisory
SLES 15 SP7 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES 15 SP6 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES 15 SP5 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES 15 SP4 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES 12 SP5 perl-Date-Manip 6.42-3.3.1 SUSE-SU-2026:3537-1
Show 7 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 16.0 perl-Date-Manip 6.960.0-160000.3.1 SUSE-SU-2026:23229-1, SUSE-SU-2026:23218-1
SLES for SAP 15 SP6 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES for SAP 15 SP5 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES for SAP 15 SP4 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLES 16.0 perl-Date-Manip 6.960.0-160000.3.1 SUSE-SU-2026:23229-1, SUSE-SU-2026:23218-1
SLE HPC 15 SP5 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
SLE HPC 15 SP4 perl-Date-Manip 6.70-150000.4.3.1 SUSE-SU-2026:3551-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed perl-Date-Manip 6.990.0-2.1 openSUSE-SU-2026:11457-1
openSUSE Leap 16.0 perl-Date-Manip 6.960.0-160000.3.1 openSUSE-SU-2026:21552-1, openSUSE-SU-2026:21510-1

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 perl-Date-Manip 6.85-1.amzn2023.0.3 ALAS2023-2026-2050
Amazon Linux 2 perl-Date-Manip 6.41-2.amzn2.0.1 ALAS2-2026-3856

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 perl-Date-Manip No fix yet —

Advisories 9

References