{"api_version":"1","generated_at":"2026-10-17T01:55:42+00:00","cve":"CVE-2026-110753","urls":{"html":"https://cve.report/CVE-2026-110753","api":"https://cve.report/api/cve/CVE-2026-110753.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-110753","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-110753"},"summary":{"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","description":"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.\n\nWith 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.\n\nThe variable is then freed while the application still references it, so later code uses freed memory and can crash the process.","state":"PUBLISHED","assigner":"CPANSec","published_at":"2026-10-16 23:17:00","updated_at":"2026-10-16 23:17:00"},"problem_types":["CWE-416","CWE-911","CWE-416 CWE-416 Use After Free","CWE-911 CWE-911 Improper Update of Reference Count"],"metrics":[],"references":[{"url":"https://github.com/cpan-authors/Text-CSV_XS/commit/f082d5c8aab1b8d16b6181d4f3042a06947e260f.patch","name":"https://github.com/cpan-authors/Text-CSV_XS/commit/f082d5c8aab1b8d16b6181d4f3042a06947e260f.patch","refsource":"9b29abf9-4ab0-4765-b253-1875cd9b441e","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://metacpan.org/release/HMBRAND/Text-CSV_XS-1.65/changes","name":"https://metacpan.org/release/HMBRAND/Text-CSV_XS-1.65/changes","refsource":"9b29abf9-4ab0-4765-b253-1875cd9b441e","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-110753","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-110753","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[{"source":"CNA","time":"2026-10-14T00:00:00.000Z","lang":"en","value":"Fix committed to upstream repository."},{"source":"CNA","time":"2026-10-15T00:00:00.000Z","lang":"en","value":"Version 1.65 released with fix."}],"solutions":[{"source":"CNA","title":"","value":"Upgrade to Text-CSV_XS 1.65 or later.","time":"","lang":"en"}],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"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":"Text::CSV_XS::getline"}],"repo":"https://github.com/cpan-authors/Text-CSV_XS","versions":[{"lessThan":"1.65","status":"affected","version":"1.46","versionType":"custom"}]}],"descriptions":[{"lang":"en","value":"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.\n\nWith 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.\n\nThe variable is then freed while the application still references it, so later code uses freed memory and can crash the process."}],"problemTypes":[{"descriptions":[{"cweId":"CWE-416","description":"CWE-416 Use After Free","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-911","description":"CWE-911 Improper Update of Reference Count","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-16T22:06:23.680Z","orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","shortName":"CPANSec"},"references":[{"tags":["patch"],"url":"https://github.com/cpan-authors/Text-CSV_XS/commit/f082d5c8aab1b8d16b6181d4f3042a06947e260f.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 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","x_generator":{"engine":"cpansec-cna-tool 0.1"}}},"cveMetadata":{"assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","assignerShortName":"CPANSec","cveId":"CVE-2026-110753","datePublished":"2026-10-16T22:06:23.680Z","dateReserved":"2026-10-14T17:06:13.039Z","dateUpdated":"2026-10-16T22:06:23.680Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-16 23:17:00","lastModifiedDate":"2026-10-16 23:17:00","problem_types":["CWE-416","CWE-911","CWE-416 CWE-416 Use After Free","CWE-911 CWE-911 Improper Update of Reference Count"],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"110753","Ordinal":"1","Title":"Text::CSV_XS versions from 1.46 before 1.65 for Perl have a use-","CVE":"CVE-2026-110753","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"110753","Ordinal":"1","NoteData":"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.\n\nWith 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.\n\nThe variable is then freed while the application still references it, so later code uses freed memory and can crash the process.","Type":"Description","Title":"Text::CSV_XS versions from 1.46 before 1.65 for Perl have a use-"}]}}}