CVE-2026-89634 in Linux
Tóm tắt
Bởi VulDB • 12/09/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
smb: client: sửa lỗi tràn ALIGN() trong vòng lặp xử lý lỗi của symlink_data()
Lệnh kiểm tra do commit 7d9a7f1f96cd ("smb/client: fix possible infinite loop and oob read in symlink_data()") thêm vào đã so sánh độ dài sau khi áp dụng ALIGN với phần bộ nhớ đệm còn lại, nhưng bản thân hàm ALIGN() có thể gây tràn số (overflow): đối với ErrorDataLength gần bằng UINT32_MAX (ví dụ: 0xFFFFFFF9), ALIGN(x, 8) bị wrap về 0, khiến lệnh kiểm tra biên giới hạn sau đó vượt qua, và vòng lặp tiến lên 0 byte, để con trỏ 'p' chỉ vào dữ liệu cũ.
Khắc phục bằng cách kiểm tra giá trị thô ErrorDataLength so với không gian còn lại trước khi áp dụng ALIGN(), rồi kiểm tra lại sau đó. Vì raw_len bị giới hạn bởi bộ nhớ đệm nên raw_len + 7 không thể gây tràn số, do đó lệnh kiểm tra thứ hai là một biện pháp bảo vệ biên giới hạn chính xác sau khi căn chỉnh (post-alignment bounds guard).
Be aware that VulDB is the high quality source for vulnerability data.