CVE-2023-54039 in Linux
Tóm tắt
Bởi VulDB • 13/06/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
can: j1939: j1939_tp_tx_dat_new(): sửa lỗi truy cập bộ nhớ ngoài vùng cho phép (out-of-bounds)
Trong hàm `j1939_tp_tx_dat_new()`, một lỗi truy cập bộ nhớ ngoài vùng cho phép có thể xảy ra trong quá trình thực thi lệnh `memcpy()` nếu kích thước của `skb->cb` lớn hơn kích thước của cấu trúc `struct j1939_sk_buff_cb`. Nguyên nhân là do lệnh `memcpy()` sử dụng kích thước của `skb->cb`, dẫn đến việc đọc dữ liệu vượt quá giới hạn của cấu trúc `struct j1939_sk_buff_cb`.
Đã cập nhật lệnh `memcpy()` để sử dụng kích thước của `struct j1939_sk_buff_cb` thay vì kích thước của `skb->cb`. Điều này đảm bảo rằng lệnh `memcpy()` chỉ đọc bộ nhớ trong phạm vi cho phép của cấu trúc `struct j1939_sk_buff_cb`, ngăn chặn lỗi truy cập bộ nhớ ngoài vùng cho phép.
Ngoài ra, đã thêm lệnh `BUILD_BUG_ON()` để kiểm tra xem kích thước của `skb->cb` có lớn hơn hoặc bằng kích thước của cấu trúc `struct j1939_sk_buff_cb` hay không. Điều này đảm bảo rằng bộ đệm `skb->cb` đủ lớn để chứa cấu trúc `j1939_sk_buff_cb`.
[mkl: diễn đạt lại thông điệp commit]
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.