В ядре Linux устранена следующая уязвимость:
dm-pcache: отклонять группы опций без значений
Цель pcache анализирует необязательные аргументы как пары имя/значение. А
таблица, которая объявляет один необязательный аргумент и предоставляет только
распознаваемое имя опции, например «cache_mode», достигает
parse_cache_opts() с argc == 1. Анализатор использует имя,
уменьшает argc до нуля, затем снова вызывает dm_shift_arg() для получения значения.
dm_shift_arg() возвращает NULL, если аргументов не осталось, и следующее
strcmp() разыменовывает этот NULL-указатель.
Перед использованием убедитесь, что каждая распознанная опция имеет значение. Это сохраняет действительные таблицы «cache_mode writeback» и «data_crc true/false» без изменений, в то время как некорректные таблицы терпят неудачу во время целевого построения с точной ошибкой пропущенного значения.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: dm-pcache: reject option groups without values The pcache target parses optional arguments as name/value pairs. A table that advertises one optional argument and supplies only a recognized option name, for example "cache_mode", reaches parse_cache_opts() with argc == 1. The parser consumes the name, decrements argc to zero, then calls dm_shift_arg() again for the value. dm_shift_arg() returns NULL when no arguments remain, and the following strcmp() dereferences that NULL pointer. Check that each recognized option has a value before consuming it. This keeps valid "cache_mode writeback" and "data_crc true/false" tables unchanged while making malformed tables fail during target construction with a precise missing-value error.