В ядре Linux устранена следующая уязвимость:
vfio/qat: исправлена гонка f_pos в qat_vf_resume_write().
qat_vf_resume_write() проверяет filp->f_pos перед тем, как взять migf->lock, но
копирует в буфер состояния миграции после снятия блокировки и
повторное чтение позиции общего файла.
Таким образом, два параллельных автора могут пройти проверку границ с помощью
старое смещение, затем создайте вторую копию записи после первой расширенной
f_pos, запись за конец буфера состояния миграции.
Прежде чем выполнять проверку границ, выполните migf->lock.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: vfio/qat: fix f_pos race in qat_vf_resume_write() qat_vf_resume_write() checks filp->f_pos before taking migf->lock, but copies into the migration-state buffer after taking the lock and re-reading the shared file position. Two concurrent writers could therefore pass the bounds check with the old offset, then have the second writer copy after the first advanced f_pos, writing past the end of the migration-state buffer. Take migf->lock before doing the boundary checks.
Характеристики атаки
Последствия
Строка CVSS v3.1