---
id: CVE-2026-110753
title: >-
  Text::CSV_XS versions from 1.46 before 1.65 for Perl have a use-after-free of
  bind_columns variables when skip_empty_rows skips an empty line in getline
summary: >-
  Text::CSV_XS versions from 1.46 before 1.65 for Perl have a use-after-free of
  bind_columns variables when skip_empty_rows skips an empty line in getline.


  With bind_columns, the parser writes each field into the caller's own scalar
  witho…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: adp
cwe:
  - CWE-416
  - CWE-911
  - CWE-825
vendor: Red Hat
product: Text-CSV_XS
affected:
  - Text-CSV_XS >= 1.46 < 1.65
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-10-20T18:14:16.549927Z'
published: '2026-10-16'
updated: '2026-10-20'
sourceUpdated: '2026-10-20T18:14:23.696Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-110753'
references:
  - url: >-
      https://github.com/cpan-authors/Text-CSV_XS/commit/f082d5c8aab1b8d16b6181d4f3042a06947e260f.patch
  - url: 'https://metacpan.org/release/HMBRAND/Text-CSV_XS-1.65/changes'
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-110753.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-110753'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2554507'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-110753'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-110753'
tags:
  - cve.org
  - csaf
  - vex
  - red-hat
  - score-dispute
epss: 0.00407
epssPercentile: 0.34792
scores:
  adp: 9.8
  vendor: 5.5
ingestedAt: '2026-10-16T22:54:45.851Z'
---

## Overview

Text::CSV_XS versions from 1.46 before 1.65 for Perl have a use-after-free of bind_columns variables when skip_empty_rows skips an empty line in getline.

With bind_columns, the parser writes each field into the caller's own scalar without taking a reference to it. When skip_empty_rows skips an empty last line, the parser frees the current field scalar without checking whether it is bound, dropping one reference from the application's variable. The "eof" mode does the same on any empty line.

The variable is then freed while the application still references it, so later code uses freed memory and can crash the process.

## Affected

- `Text-CSV_XS >= 1.46 < 1.65`

## Remediation

Upgrade to Text-CSV_XS 1.65 or later.

## Vendor advisories

- **Red Hat VEX** · Moderate · affected: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 9 · no fix planned: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 9 · updated 2026-10-19 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-110753.json)
