В ядре Linux устранена следующая уязвимость:
s390/dasd: распространение длины частичного завершения по восстановлению ERP.
dasd_default_erp_postaction() копирует время и состояние устройства из
готовый запрос ERP возвращается к исходному запросу, но отбрасывается
proc_bytes. Частично выполненный запрос, чтение ESE файла
еще не выделенная дорожка возвращает меньше байтов, чем запрошено, а затем
восстановленный через цепочку ERP, теряет свою длину частичного завершения.
__dasd_cleanup_cqr() затем видит proc_bytes == 0 и завершает всю операцию.
запрос вместо повторной постановки остатка в очередь, молча возвращающий обнуление
данные для той части, которая никогда не читалась.
Перенесите proc_bytes в исходный запрос, как и другой.
состояние каждого запроса.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: s390/dasd: Propagate partial completion length across ERP recovery dasd_default_erp_postaction() copies the timing and device state from the finished ERP request back to the original request but drops proc_bytes. A request that was partially completed, an ESE read of a not-yet-allocated track returns fewer bytes than requested, and then recovered through the ERP chain loses its partial-completion length. __dasd_cleanup_cqr() then sees proc_bytes == 0 and completes the whole request instead of requeueing the remainder, silently returning zeroed data for the part that was never read. Carry proc_bytes over to the original request like the other per-request state.
Характеристики атаки
Последствия
Строка CVSS v3.1