{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-110758","assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","state":"PUBLISHED","assignerShortName":"CPANSec","dateReserved":"2026-10-14T17:07:36.990Z","datePublished":"2026-10-16T22:08:10.917Z","dateUpdated":"2026-10-20T18:31:16.823Z"},"containers":{"cna":{"affected":[{"collectionURL":"https://cpan.org/modules","defaultStatus":"unaffected","modules":["Text::CSV_XS"],"packageName":"Text-CSV_XS","packageURL":"pkg:cpan/Text-CSV_XS","programFiles":["CSV_XS.xs"],"programRoutines":[{"name":"strip_trail_whitespace"}],"repo":"https://github.com/cpan-authors/Text-CSV_XS","versions":[{"lessThan":"1.65","status":"affected","version":"0","versionType":"custom"}]}],"descriptions":[{"lang":"en","value":"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.\n\nUnder 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.\n\nLeading 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."}],"problemTypes":[{"descriptions":[{"cweId":"CWE-127","description":"CWE-127 Buffer Under-read","lang":"en","type":"CWE"}]}],"providerMetadata":{"orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","shortName":"CPANSec","dateUpdated":"2026-10-16T22:08:10.917Z"},"references":[{"tags":["patch"],"url":"https://github.com/cpan-authors/Text-CSV_XS/commit/efed7ee21177c59a5b69e787f84154e1fcb0d095.patch"},{"tags":["release-notes"],"url":"https://metacpan.org/release/HMBRAND/Text-CSV_XS-1.65/changes"}],"solutions":[{"lang":"en","value":"Upgrade to Text-CSV_XS 1.65 or later."}],"source":{"discovery":"UNKNOWN"},"timeline":[{"lang":"en","time":"2026-10-14T00:00:00.000Z","value":"Fix committed to upstream repository."},{"lang":"en","time":"2026-10-15T00:00:00.000Z","value":"Version 1.65 released with fix."}],"title":"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","x_generator":{"engine":"cpansec-cna-tool 0.1"}},"adp":[{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":7.5,"attackVector":"NETWORK","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","integrityImpact":"NONE","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"NONE","privilegesRequired":"NONE","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"timestamp":"2026-10-20T18:31:03.466952Z","id":"CVE-2026-110758","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-10-20T18:31:16.823Z"}}]}}