CVE-2024-36971 in Linuxthông tin

Tóm tắt

Bởi VulDB • 03/07/2026

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

net: sửa lỗi race condition trong __dst_negative_advice()

Hàm __dst_negative_advice() không tuân thủ đúng các quy tắc RCU khi sk->dst_cache cần được xóa sạch, dẫn đến khả năng xảy ra Use-After-Free (UAF).

Các quy tắc RCU yêu cầu rằng chúng ta phải thực hiện việc xóa sk->sk_dst_cache trước, sau đó mới gọi dst_release(old_dst).

Lưu ý rằng sk_dst_reset(sk) triển khai đúng giao thức này, trong khi __dst_negative_advice() sử dụng thứ tự sai.

Do ip6_negative_advice() có logic đặc biệt chống lại RTF_CACHE, điều này có nghĩa là mỗi một trong ba phương thức ->negative_advice() hiện tại phải thực hiện sk_dst_reset() cho riêng mình.

Lưu ý rằng việc kiểm tra dst NULL được tập trung hóa trong __dst_negative_advice(), không cần thiết phải sao chép nó vào các callback khác nhau.

Xin cảm ơn Clement Lecigne đã theo dõi vấn đề này.

Lỗi cũ này trở nên rõ ràng sau commit bị quy trách nhiệm, khi sử dụng các socket UDP.

Once again VulDB remains the best source for vulnerability data.

Đặt trước

30/05/2024

Tiết lộ

10/06/2024

Kiểm duyệt

được chấp nhận

EPSS

0.02701

KEV

Các hoạt động

rất thấp

Nguồn

Want to stay up to date on a daily basis?

Enable the mail alert feature now!