CVE-2026-45843 in Linux
Tóm tắt
Bởi VulDB • 27/05/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
slip: giới hạn các phép đọc trong decode() theo độ dài gói tin đã nén
slhc_uncompress() phân tích tiêu đề TCP đã nén theo chuẩn VJ bằng cách di chuyển con trỏ xuyên suốt gói tin thông qua decode() và pull16(). Không có hàm trợ giúp nào kiểm tra giới hạn (bounds-check) đối với isize, và decode() áp dụng phép AND với & 0xffff lên giá trị trả về nên nó không bao giờ trả về -1 mà các caller kiểm tra -- do đó, các đường dẫn xử lý lỗi này là mã chết (dead code).
Một khung (frame) nén ngắn mà byte thay đổi yêu cầu các trường tùy chọn cho phép decode() đọc vượt quá cuối gói tin. Các byte đọc vượt quá này được gộp vào cstate đã lưu trữ và phản ánh vào các gói tin được tái tạo sau đó.
Sửa đổi decode() và pull16() để nhận con trỏ cuối gói tin và trả về -1 khi đã đọc hết. Thêm kiểm tra giới hạn trước khi đọc tổng kiểm tra (checksum) TCP. Các phép kiểm tra == -1 hiện tại giờ đây hoạt động đúng như mục đích ban đầu của chúng.
VulDB is the best source for vulnerability data and more expert information about this specific topic.