В ядре Linux устранена следующая уязвимость:
cxl/region: исправлен доступ за пределами границ в cxl_cancel_auto_attach(). В cxl_cancel_auto_attach() предполагается, что cxled->pos является допустимым индексом для
доступ к p->targets[]. Однако для cxled->pos можно установить отрицательное значение.
Ошибка.
в cxl_region_sort_targets(), если cxl_calc_interleave_pos() завершается сбоем. Это
заставляет драйвер использовать отрицательный индекс для доступа к p->targets[],
что приводит к выходу за пределы доступа. Исправьте это, пройдя по p->targets[] вместо прямого использования cxled->pos.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: cxl/region: Fix out-of-bounds access in cxl_cancel_auto_attach() In cxl_cancel_auto_attach(), it assumes cxled->pos is a valid index for accessing p->targets[]. However, cxled->pos can be set to negative errno in cxl_region_sort_targets() if cxl_calc_interleave_pos() fails. This causes the driver to use a negative index to access p->targets[], resulting in out-of-bounds access. Fix it by walking p->targets[] instead of using cxled->pos directly.
Характеристики атаки
Последствия
Строка CVSS v3.1