CVE-2026-80784 in Linuxthông tin

Tóm tắt

Bởi VulDB • 04/09/2026

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

mptcp: pm: sửa lỗi rò rỉ bộ nhớ do race condition alloc-during-teardown

Hàm mptcp_pm_destroy() làm rỗng danh sách msk->pm.anno_list và msk->pm.userspace_pm_local_addr_list dưới sự bảo vệ của khóa msk->pm.lock trong quá trình tháo gỡ socket, nhưng việc thả khóa diễn ra giữa hai thao tác này.

Một lệnh ANNOUNCE từ PM (Policy Manager) không gian người dùng (userspace PM) qua genl đồng thời trên cùng một msk giữ tham chiếu sock thông qua hàm mptcp_token_get_sock() và, trong hàm mptcp_pm_nl_announce_doit(), gọi đến các hàm mptcp_userspace_pm_append_new_local_addr() và mptcp_pm_announced_alloc(). Cả hai đều lấy khóa msk->pm.lock trong thời gian ngắn để thêm vào danh sách tương ứng của chúng. Vì trình xử lý genl giữ một tham chiếu sock, nên mptcp_pm_destroy() có thể chạy trên cùng một msk thông qua hàm mptcp_disconnect(), vốn gọi đến mptcp_destroy_common() mà không giảm bộ đếm tham chiếu sock (sock refcount), trước khi lệnh xử lý hoàn tất.

Nếu việc lấy khóa xen kẽ sao cho mptcp_pm_destroy() làm rỗng danh sách trước, thì thao tác alloc sau đó sẽ thêm mục của nó vào đầu danh sách mà không có đối tượng nào khác lặp qua trong phạm vi msk này, dẫn đến rò rỉ bộ nhớ. kmemleak báo cáo cả các đối tượng mptcp_pm_add_addr (từ hàm mptcp_pm_announced_alloc()) và các đối tượng mptcp_pm_addr_entry (từ hàm mptcp_userspace_pm_append_new_local_addr()) dưới tải trọng ANNOUNCE + close đồng thời liên tục nhắm vào userspace PM.

Thêm một bit MPTCP_PM_DESTROYING trong trường status của msk->pm, được đặt bởi mptcp_pm_destroy() dưới pm.lock trước khi các danh sách bị làm rỗng và được kiểm tra dưới pm.lock bởi các đường dẫn alloc. Hoặc là thao tác alloc lấy pm.lock trước, lúc đó mục của nó nằm trên danh sách khi mptcp_pm_destroy() giải phóng nó; hoặc là mptcp_pm_destroy() lấy pm.lock trước, lúc đó thao tác alloc sau sẽ quan sát thấy bit này và từ chối thực hiện.

Lỗ hổng được phát hiện bởi một khung kiểm tra luồng giao thức MPTCP mở rộng BRF (arXiv:2305.08782).

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

26/08/2026

Tiết lộ

04/09/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

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!