CVE-2026-7111

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.
Configurations

Configuration 1 (hide)

cpe:2.3:a:hmbrand:text\:\:csv_xs:*:*:*:*:*:perl:*:*

History

26 Oct 2026, 20:10

Type Values Removed Values Added
Summary
  • (es) Las versiones de Text::CSV_XS anteriores a la 1.62 para Perl tienen un uso después de liberación cuando las devoluciones de llamada registradas extienden la pila de argumentos de Perl, lo que puede permitir confusión de tipos o corrupción de memoria. Los métodos Parse, print, getline y getline_all invocan devoluciones de llamada registradas (por ejemplo, after_parse, before_print o on_error) y almacenan en caché el puntero de la pila de argumentos de Perl durante la llamada. Si una devolución de llamada extiende la pila de argumentos lo suficiente como para activar una reasignación, el valor de retorno se escribe a través del puntero obsoleto en el búfer liberado, y el llamador lee el argumento $self original como el valor de retorno en su lugar. El código que llama y espera datos analizados de getline_all recibe el objeto Text::CSV_XS en su lugar, lo que lleva a errores de lógica o fallos. Los objetos Text::CSV_XS utilizados sin ninguna devolución de llamada registrada no se ven afectados.

Information

Published : 2026-04-29 15:16

Updated : 2026-10-26 20:10


NVD link : CVE-2026-7111

Mitre link : CVE-2026-7111

CVE.ORG link : CVE-2026-7111


JSON object : View

Products Affected

hmbrand

  • text\
CWE
CWE-416

Use After Free

CWE-825

Expired Pointer Dereference