Di inti Linux kerentanan (), yang memungkinkan Anda menyebabkan penolakan layanan dari jarak jauh dengan mengirimkan paket UDP yang dirancang khusus (paket kematian). Masalah tersebut disebabkan oleh error pada handler udp_gro_receive_segment (net/ipv4/udp_offload.c) dengan implementasi teknologi GRO (Generic Accept Offload) dan dapat mengakibatkan kerusakan pada isi area memori kernel saat memproses paket UDP dengan zero padding (muatan kosong).
Masalahnya hanya mempengaruhi kernel karena dukungan GRO untuk soket UDP adalah pada bulan November tahun lalu dan hanya berhasil masuk ke rilis kernel stabil terbaru. Teknologi GRO memungkinkan Anda untuk mempercepat pemrosesan paket masuk dalam jumlah besar dengan menggabungkan beberapa paket ke dalam blok yang lebih besar yang tidak memerlukan pemrosesan terpisah untuk setiap paket.
Untuk TCP, masalah tidak terjadi karena protokol ini tidak mendukung agregasi paket tanpa payload.
Kerentanan sejauh ini hanya diperbaiki dalam bentuk , pembaruan korektif belum dipublikasikan (perbaikan pembaruan 5.0.11 kemarin ). Dari kit distribusi, kernel 5.0 berhasil dimasukkan ke dalamnya , , , dan distribusi lainnya yang terus diperbarui. , , ΠΈ masalahnya tidak mempengaruhi.
Hasilnya, masalah ditemukan Sistem pengujian fuzzing otomatis yang dibuat oleh Google dan penganalisa (KernelAddressSanitizer), bertujuan untuk mengidentifikasi kesalahan saat bekerja dengan memori dan fakta akses memori yang salah, seperti mengakses area memori yang dibebaskan dan menempatkan kode di area memori yang tidak dimaksudkan untuk manipulasi tersebut.
Sumber: opennet.ru
