cpdb-libs предоставляет фронтенд и бэкенд библиотеки для проекта Common Printing Dialog Backends (CPDB). В версиях с 1.0 по 2.0b4 cpdb-libs…
cpdb-libs предоставляет фронтенд и бэкенд библиотеки для проекта Common Printing Dialog Backends (CPDB). В версиях с 1.0 по 2.0b4 cpdb-libs уязвим к переполнению буфера из-за неправильного использования `scanf(3)`. cpdb-libs использует функции `fscanf()` и `scanf()` для разбора командных строк и конфигурационных файлов, помещая прочитанные компоненты строк в буферы фиксированной длины, но не ограничивает длину строк, которые будут прочитаны, что приводит к переполнению буфера, когда строка длиннее 1023 символов. Исправление для этой проблемы доступно в коммите f181bd1f14757c2ae0f17cc76dc20421a40f30b7. Поскольку все буферы имеют длину 1024 символа, исправление ограничивает максимальную длину строки, которая может быть прочитана, до 1023, заменяя все вхождения `%s` на `%1023s` во всех вызовах функций `fscanf()` и `scanf()`.
Переполнение стекового буфера — это условие, при котором перезаписываемый буфер размещён в стеке (то есть является локальной переменной или, редко, параметром функции).
https://cwe.mitre.org/data/definitions/121.html →Открыть в коллекции CWE →| Продукт | Вендор | Статус |
|---|---|---|
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | Отслеживается | |
| cpdb-libs | * | Отслеживается |