В ядре Linux устранена следующая уязвимость:
fbdev: sm501fb: исправлены ошибки буфера в коде привязки OF. Код, который получает режим буфера кадров из OF, имеет «использование после освобождения»,
«переполнение буфера» и утечки памяти.
info->edid_data не является бесплатным, если функции проверки не работают или если
pd->def_mode установлен. Если включены и CRT, и PANEL, информация->edid_data используется после
освобождается и освобождается дважды.
Строка, возвращаемая of_get_property(np, "mode", &len), просто
записывается либо над статическим «640x480-16@60», либо над параметром модуля
строка без учета ее длины (которая, скорее всего, длиннее). Используйте kstrump() для режима OF и освободите все перед освобождением 'info.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: fbdev: sm501fb: Fix buffer errors in OF binding code The code that gets the frame buffer mode from OF has 'use after free', 'buffer overrun' and memory leaks. info->edid_data isn't free if the probe functions fail or if pd->def_mode is set. If both the CRT and PANEL are enabled info->edid_data is used after being freed and is freed twice. The string returned by of_get_property(np, "mode", &len) is just written over either the static "640x480-16@60" or the module parameter string without any regard for the length (which is most likely longer). Use kstrump() for the OF mode and free everything before freeing 'info.