NĂ« kernelin Linux â keyfiyyÉt idarÉçiliyi), e cila lejon njĂ« shĂ«rbim tĂ« dĂ«shtuar pĂ«rmes dĂ«rgimit tĂ« paketave UDP tĂ« dizajnuara posaçërisht (packet-of-death). Problemi Ă«shtĂ« shkaktuar nga njĂ« gabim nĂ« trajtuesin udp_gro_receive_segment (net/ipv4/udp_offload.c) me implementimin e teknologjisĂ« GRO (Generic Receive Offload) dhe mund tĂ« çojĂ« nĂ« dĂ«mtimin e pĂ«rmbajtjes sĂ« zonave tĂ« memories sĂ« kernelit gjatĂ« pĂ«rpunimit tĂ« paketave UDP me mbushje zero (payload bosh).
Problemi prek vetëm kernelin , pasi mbështetje GRO për soketët UDP u në nëntor të vitit të kaluar dhe arriti të futet vetëm në botimin e fundit stabil të kernelit. Teknologjia GRO lejon përshpejtimin e përpunimit të një numri të madh paketash të ardhura, përmes agregimit të disa paketave në blloqe më të mëdha, të cilat nuk kërkojnë përpunim të veçante për secilën paketë.
Për TCP, problemi nuk shfaqet, pasi për këtë protokoll nuk mbështetet agregimi i paketave pa payload.
Deri tani, vulnerabiliteti është rregulluar vetëm në formën e , një përditësim korrigjues ende nuk është publikuar (në përditësimin e djeshëm 5.0.11, korrigjimi ). Nga distribucioni, kernelin 5.0 ka arritur në , , , dhe distribucionet e tjera që përditësohen vazhdimisht. , , dhe problemi nuk e prek.
Problemi u gjet si rezultat i të një sistemi automatizimi të testimit fuzzing të krijuar nga Google dhe analizuesit (Kernel Address Sanitizer), i orientuar drejt identifikimit të gabimeve gjatë punës me memorjen dhe rasteve të qasjes jo të korrektë në memorje, si qasjet në zonat e liruar të memories dhe vendosja e kodit në zona memorjeje, të cilat nuk janë të destinuara për manipulime të tilla.
Burimi: opennet.ru
