Версии XML::Parser до 2.47 для Perl могли переполнять заранее выделенный размер буфера, вызывать повреждение кучи (двойное освобождение или повреждение) и сбой.
Уровень :utf8 PerlIO, parse_stream() в Expat.xs может переполнить входной буфер XML, поскольку Perl read() возвращает декодированные символы, а SvPV() возвращает многобайтовые байты UTF-8, которые могут превышать размер заранее выделенного буфера. Это может привести к повреждению кучи (двойное освобождение или повреждение) и сбоям.
Показать оригинальное описание (EN)
XML::Parser versions through 2.45 for Perl could overflow the pre-allocated buffer size cause a heap corruption (double free or corruption) and crashes. A :utf8 PerlIO layer, parse_stream() in Expat.xs could overflow the XML input buffer because Perl's read() returns decoded characters while SvPV() gives back multi-byte UTF-8 bytes that can exceed the pre-allocated buffer size. This can cause heap corruption (double free or corruption) and crashes.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Toddr Xml\
cpe:2.3:a:toddr:xml\:\:parser:*:*:*:*:*:perl:*:*
|
— |
2.48
|