Trong cốt lõi Linux tính dễ bị tổn thương (), cho phép bạn từ chối dịch vụ từ xa bằng cách gửi các gói UDP được thiết kế đặc biệt (gói chết). Sự cố xảy ra do lỗi trong trình xử lý phân đoạn udp_gro_receive_segment (net/ipv4/udp_offload.c) khi triển khai công nghệ GRO (Giảm tải nhận chung) và có thể dẫn đến hư hỏng nội dung của vùng bộ nhớ kernel khi xử lý gói UDP không có phần đệm (tải trọng trống).
Vấn đề chỉ ảnh hưởng đến kernel kể từ khi hỗ trợ GRO cho ổ cắm UDP đã bị vào tháng 11 năm ngoái và chỉ mới có được bản phát hành kernel ổn định mới nhất. Công nghệ GRO cho phép bạn tăng tốc độ xử lý một số lượng lớn các gói đến bằng cách tổng hợp nhiều gói thành các khối lớn hơn mà không yêu cầu xử lý riêng từng gói.
Đối với TCP, sự cố không xảy ra vì giao thức này không hỗ trợ tập hợp gói mà không có tải trọng.
Lỗ hổng cho đến nay chỉ được khắc phục ở dạng , bản cập nhật khắc phục vẫn chưa được xuất bản (bản cập nhật sửa lỗi 5.0.11 ngày hôm qua ). Từ bộ công cụ phân phối, kernel 5.0 đã được đưa vào , , , và các bản phân phối được cập nhật liên tục khác. , , и vấn đề không ảnh hưởng.
Kết quả là vấn đề đã được tìm thấy Hệ thống kiểm tra mờ tự động do Google tạo và máy phân tích (KernelAddressSanitizer), nhằm mục đích xác định lỗi khi làm việc với bộ nhớ và các sự kiện truy cập bộ nhớ không chính xác, chẳng hạn như truy cập vào các vùng bộ nhớ được giải phóng và đặt mã vào các vùng bộ nhớ không dành cho các thao tác đó.
Nguồn: opennet.ru
