CVE-2026-110758: Text::CSV_XS versions before 1.65 for Perl read before the start of an all-blank field under allow_whitespace in strip_trail_whitespace
Stig Palmquist 16 Oct 2026 22:14 UTC
========================================================================
CVE-2026-110758 CPAN Security Group
========================================================================
CVE ID: CVE-2026-110758
Distribution: Text-CSV_XS
Versions: before 1.65
MetaCPAN: https://metacpan.org/dist/Text-CSV_XS
VCS Repo: https://github.com/cpan-authors/Text-CSV_XS
Text::CSV_XS versions before 1.65 for Perl read before the start of an
all-blank field under allow_whitespace in strip_trail_whitespace
Description
-----------
Text::CSV_XS versions before 1.65 for Perl read before the start of an
all-blank field under allow_whitespace in strip_trail_whitespace.
Under allow_whitespace, strip_trail_whitespace removes trailing spaces
and tabs from each unquoted field without stopping at the start of the
field. For a field of only blanks it reads the byte before the field's
heap buffer. If that byte is also a space or tab, it may be zeroed and
the walk continue backwards, depending on what the allocator placed
there.
Leading blanks are normally skipped before a field is stored, but an
all-blank field still arrives after a leading escape_char that differs
from quote_char, or as a quoted field in getline when its line ends in
two CRs.
Problem types
-------------
- CWE-127 Buffer Under-read
Solutions
---------
Upgrade to Text-CSV_XS 1.65 or later.
References
----------
https://github.com/cpan-authors/Text-CSV_XS/commit/efed7ee21177c59a5b69e787f84154e1fcb0d095.patch
https://metacpan.org/release/HMBRAND/Text-CSV_XS-1.65/changes
Timeline
--------
- 2026-10-14: Fix committed to upstream repository.
- 2026-10-15: Version 1.65 released with fix.