Description
Text::CSV_XS versions before 1.65 for Perl allow record splitting by writing strings used as numbers without quotes in combine.

combine and print do not check whether a field needs quotes when its value has Perl's integer or numeric flag set. Perl sets these flags on a string used in a numeric operation when it parses as a number, which allows leading and trailing whitespace. With binary set, as csv does by default, "12\n" passes a check such as $qty > 0 and is then written unquoted with its newline.

A value validated as a number can end the record early and turn the fields after it into a separate row.
Published: 2026-10-16
Score: n/a
EPSS: n/a
KEV: No
Impact: Record Splitting / Data Integrity
Action: Patch
AI Analysis

Impact

The vulnerability resides in Text::CSV_XS's combine routine, which does not enforce quoting for fields that have Perl's numeric flag set. When a string that parses as a number contains a newline, Perl treats it as numeric and allows the newline to pass a check such as $qty > 0, causing the field to be written without quotes. The newline then terminates the current record, and any remaining text on that line is interpreted as a new CSV row. This record splitting can corrupt data streams, mislead applications that consume the CSV, or allow an attacker to inject unintended data into subsequent rows. The flaw is a classic example of improper handling of input encoding (CWE-116).

Affected Systems

The defect affects all releases of Text::CSV_XS older than version 1.65. Users who depend on the module for generating or consuming CSV data in Perl applications are at risk, particularly when numeric values may include whitespace or newline characters. The advisory covers the core CPAN distribution; no specific vendor product beyond the Perl module is listed.

Risk and Exploitability

No EPSS score or KEV listing is available, and the CVE does not provide a CVSS rating. Nonetheless, the flaw permits an attacker with the ability to supply input to the combine function to split records arbitrarily, potentially undermining data integrity or facilitating injection of malicious rows into downstream systems. Because the attack only requires crafted input to the CSV generation routine, it can be executed without elevated privileges if the attacker can influence the data source.

Generated by OpenCVE AI on October 16, 2026 at 23:15 UTC.

Remediation

Vendor Solution

Upgrade to Text-CSV_XS 1.65 or later.


OpenCVE Recommended Actions

  • Upgrade Text::CSV_XS to version 1.65 or later as recommended by the vendor
  • Avoid supplying numeric strings that contain newlines; sanitize or escape such inputs before calling combine
  • Consider setting the module's binmode to text mode if binary handling is not required
  • Audit CSV generation code to ensure that all fields are properly quoted or validated before writing

Generated by OpenCVE AI on October 16, 2026 at 23:15 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 16 Oct 2026 22:30:00 +0000

Type Values Removed Values Added
Description Text::CSV_XS versions before 1.65 for Perl allow record splitting by writing strings used as numbers without quotes in combine. combine and print do not check whether a field needs quotes when its value has Perl's integer or numeric flag set. Perl sets these flags on a string used in a numeric operation when it parses as a number, which allows leading and trailing whitespace. With binary set, as csv does by default, "12\n" passes a check such as $qty > 0 and is then written unquoted with its newline. A value validated as a number can end the record early and turn the fields after it into a separate row.
Title Text::CSV_XS versions before 1.65 for Perl allow record splitting by writing strings used as numbers without quotes in combine
Weaknesses CWE-116
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-10-16T22:07:56.450Z

Reserved: 2026-10-14T17:07:22.647Z

Link: CVE-2026-110757

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-16T23:17:00.953

Modified: 2026-10-16T23:17:00.953

Link: CVE-2026-110757

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-16T23:30:13Z

Weaknesses
  • CWE-116

    Improper Encoding or Escaping of Output