GNU Bison неправильно обрабатывает пути вывода, определенные грамматикой. Директивы грамматики, такие как %output и %header, позволяют указывать пути к файлам, которые принимаются без ограничений, и переопределяют параметры вывода, предоставленные вызывающей стороной. При обработке грамматики, предоставленной злоумышленником, такое поведение позволяет направлять сгенерированные файлы в произвольные доступные для записи места в файловой системе, потенциально перезаписывая существующие файлы, доступные для процесса Bison.
Сопровождающие этого проекта были уведомлены об этой уязвимости и исправили проблему в коммите 8d101c19d4d9aaedf83a448c925513742d4efcf0. Однако они не предоставили диапазон уязвимых версий. Версия 3.8.2 была протестирована и подтверждена как уязвимая, другие версии не тестировались, но также могут быть уязвимыми.
Показать оригинальное описание (EN)
GNU Bison improperly handles grammar‑defined output paths. Grammar directives such as %output and %header allow specifying file paths, which are accepted without restriction and override caller‑supplied output options. When processing attacker-supplied grammar, this behavior allows directing generated files to arbitrary writable locations on the filesystem, potentially overwriting existing files accessible to the Bison process. Maintainers of this project were notified about this vulnerability, and fixed the issue in commit 8d101c19d4d9aaedf83a448c925513742d4efcf0. However, they did not provide vulnerable version range. Version 3.8.2 was tested and confirmed as vulnerable, other versions were not tested but might also be vulnerable.
Характеристики атаки
Последствия
Строка CVSS v4.0