CVE-2025-71225 in Linuxthông tin

Tóm tắt

Bởi VulDB • 27/05/2026

Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:

md: tạm dừng mảng (array) trong khi cập nhật raid_disks thông qua sysfs

Trong hàm raid1_reshape(), freeze_array() được gọi trước khi sửa đổi bộ nhớ đệm r1bio (conf->r1bio_pool) và conf->raid_disks, và unfreeze_array() được gọi sau khi cập nhật hoàn tất.

Tuy nhiên, freeze_array() chỉ chờ cho đến khi nr_sync_pending và (nr_pending - nr_queued) của tất cả các bucket đạt về 0. Khi xảy ra lỗi I/O, nr_queued sẽ tăng lên và r1bio tương ứng được đưa vào hàng đợi trên retry_list hoặc bio_end_io_list. Kết quả là, freeze_array() có thể giải phóng khóa (unblock) trước khi các r1bio này được giải phóng.

Điều này có thể dẫn đến tình trạng conf->raid_disks và mempool đã được cập nhật trong khi các r1bio đã được đưa vào hàng đợi, được phân bổ với giá trị raid_disks cũ, sau đó được giải phóng. Do đó, free_r1bio() có thể truy cập bộ nhớ ngoài vùng cho phép (out of bounds) trong put_all_bios() và giải phóng các r1bio có kích thước không đúng cho mempool mới, có khả năng gây ra sự cố với mempool.

Vì chỉ có I/O bình thường mới có thể làm tăng nr_queued khi xảy ra lỗi I/O, việc tạm dừng mảng sẽ tránh được vấn đề này.

Lưu ý: Việc cập nhật raid_disks thông qua ioctl SET_ARRAY_INFO đã tạm dừng mảng. Do đó, chúng tôi tạm dừng mảng khi cập nhật raid_disks thông qua sysfs để tránh vấn đề này.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

chịu trách nhiệm

Linux

Đặt trước

14/02/2026

Tiết lộ

18/02/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00084

KEV

không

Các hoạt động

rất thấp

Nguồn

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!