HMBRAND Text::CSV_XS up to 1.61 on Perl after_parse/before_print/on_error expired pointer dereference
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.7 | $0-$5k | 0.00 |
Summary
A vulnerability marked as critical has been reported in HMBRAND Text::CSV_XS up to 1.61 on Perl. Affected is the function after_parse/before_print/on_error. The manipulation leads to expired pointer dereference.
This vulnerability is documented as CVE-2026-7111. The attack can be initiated remotely. There is not any exploit available.
It is suggested to upgrade the affected component.
Details
A vulnerability was found in HMBRAND Text::CSV_XS up to 1.61 on Perl. It has been rated as critical. This issue affects the function after_parse/before_print/on_error. The manipulation with an unknown input leads to a expired pointer dereference vulnerability. Using CWE to declare the problem leads to CWE-825. The product dereferences a pointer that contains a location for memory that was previously valid, but is no longer valid. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
Text::CSV_XS versions before 1.62 for Perl have a use-after-free when registered callbacks extend the Perl argument stack, which may enable type confusion or memory corruption. The Parse, print, getline, and getline_all methods invoke registered callbacks (for example after_parse, before_print, or on_error) and cache the Perl argument stack pointer across the call. If a callback extends the argument stack enough to trigger a reallocation, the return value is written through the stale pointer into the freed buffer, and the caller reads the original $self argument as the return value instead. Calling code that expects parsed data from getline_all receives the Text::CSV_XS object in its place, leading to logic errors or crashes. Text::CSV_XS objects used without any registered callbacks are not affected.
The weakness was released by Leon Timmermans as c17f31a5f2bf36674748eb4b6e25672f0571a224. The advisory is shared at github.com. The identification of this vulnerability is CVE-2026-7111 since 04/26/2026. The exploitation is known to be easy. The attack may be initiated remotely. No form of authentication is needed for a successful exploitation. Technical details are known, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 313633 (openSUSE 16 Security Update : perl-Text-CSV_XS (openSUSE-SU-2026:20708-1)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 1.62 eliminates this vulnerability.
The vulnerability is also documented in the vulnerability database at Tenable (313633). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Product
Vendor
Name
Version
- 1.0
- 1.1
- 1.2
- 1.3
- 1.4
- 1.5
- 1.6
- 1.7
- 1.8
- 1.9
- 1.10
- 1.11
- 1.12
- 1.13
- 1.14
- 1.15
- 1.16
- 1.17
- 1.18
- 1.19
- 1.20
- 1.21
- 1.22
- 1.23
- 1.24
- 1.25
- 1.26
- 1.27
- 1.28
- 1.29
- 1.30
- 1.31
- 1.32
- 1.33
- 1.34
- 1.35
- 1.36
- 1.37
- 1.38
- 1.39
- 1.40
- 1.41
- 1.42
- 1.43
- 1.44
- 1.45
- 1.46
- 1.47
- 1.48
- 1.49
- 1.50
- 1.51
- 1.52
- 1.53
- 1.54
- 1.55
- 1.56
- 1.57
- 1.58
- 1.59
- 1.60
- 1.61
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.8VulDB Meta Temp Score: 7.7
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔒
VulDB Reliability: 🔍
ADP CISA Base Score: 8.4
ADP CISA Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Expired pointer dereferenceCWE: CWE-825
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 313633
Nessus Name: openSUSE 16 Security Update : perl-Text-CSV_XS (openSUSE-SU-2026:20708-1)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Text::CSV_XS 1.62
Timeline
04/26/2026 CVE reserved04/29/2026 Advisory disclosed
04/29/2026 VulDB entry created
06/25/2026 VulDB entry last update
Sources
Advisory: c17f31a5f2bf36674748eb4b6e25672f0571a224Researcher: Leon Timmermans
Status: Confirmed
CVE: CVE-2026-7111 (🔒)
GCVE (CVE): GCVE-0-2026-7111
GCVE (VulDB): GCVE-100-360161
Entry
Created: 04/29/2026 16:54Updated: 06/25/2026 22:58
Changes: 04/29/2026 16:54 (57), 05/11/2026 06:23 (2), 06/25/2026 22:58 (11)
Complete: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
No comments yet. Languages: en.
Please log in to comment.