CVE-2026-19487 in PerlИнформация

Сводка

по VulDB • 13.08.2026

В версиях Perl от 5.9.4 до (не включая) 5.41.9 результаты сопоставления с регулярными выражениями могут быть некорректными из-за того, что устаревший флаг ошибки приводит к преждевременному завершению предварительного сканирования Aho-Corasick в функции S_find_byclass.

Предварительное сканирование просматривает строку (subject) для поиска позиций, где полное регулярное выражение может дать совпадение, и движок пытается применить его начиная с самой левой из записанных позиций. Переход, завершающийся неудачей, устанавливает флаг ошибки, а последующий успешный переход не сбрасывает его. В результате предварительное сканирование интерпретирует устаревший флаг как ошибку и останавливается до того, как сможет зарегистрировать кандидата на совпадение, начинающегося раньше. Это приводит к ситуации, когда один кандидат уже записан, а последующий символ заставляет выполнить переход по ссылке на неудачу (fail link), который завершается успешно.

Пример:

"ABCDE" =~ m/ABCF|BCDE|C/; # совпадение с C в позиции 2, а не BCDE "ABCDE" =~ m/ABCF|BCDE|C(G)/; # нет совпадений, пропущено BCDE

Альтернатива (alternation) такого типа может пропустить вводные данные, которые должны были бы быть найдены, или найти их по неверной ветви. Следовательно, решения о доступе или фильтрации, принимаемые на основе результата сопоставления, могут оказаться ошибочными.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Ответственный

CPANSec

Резервировать

10.08.2026

Раскрытие

13.08.2026

Модерация

принято

Вход

VDB-389651

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Do you know our Splunk app?

Download it now for free!