Vulnerabilitat al nucli de Linux que pot provocar una fallada enviant un paquet UDP

Al nucli Linux identificat vulnerabilitat (CVE-2019-11683), que us permet provocar de forma remota una denegació de servei mitjançant l'enviament de paquets UDP dissenyats especialment (packet-of-death). El problema és causat per un error al controlador udp_gro_receive_segment (net/ipv4/udp_offload.c) amb la implementació de la tecnologia GRO (Generic Receive Offload) i pot provocar danys al contingut de les àrees de memòria del nucli quan es processen paquets UDP amb farciment zero. (càrrega útil buida).

El problema només afecta el nucli 5.0ja que el suport de GRO per a sockets UDP era implementat el novembre de l'any passat i només va aconseguir entrar a la darrera versió estable del nucli. La tecnologia GRO us permet accelerar el processament d'un gran nombre de paquets entrants mitjançant l'agregació de diversos paquets en blocs més grans que no requereixen un processament separat de cada paquet.
Per a TCP, el problema no es produeix, ja que aquest protocol no admet l'agregació de paquets sense càrrega útil.

La vulnerabilitat s'ha solucionat fins ara només en la forma pegat, l'actualització correctiva encara no s'ha publicat (la correcció de l'actualització 5.0.11 d'ahir no inclòs). A partir dels kits de distribució, el nucli 5.0 va aconseguir ser inclòs Fedora 30, Ubuntu 19.04, Arch Linux, Gentoo i altres distribucions actualitzades contínuament. Debian, Ubuntu 18.10 i anteriors, RHEL/CentOS и SUSE/openSUSE el problema no afecta.

El problema es va trobar com a resultat utilitzar Sistema automatitzat de proves de fuzzing creat per Google syzbot i analitzador KASAN (KernelAddressSanitizer), orientat a identificar errors en treballar amb memòria i fets d'accés incorrecte a la memòria, com ara accedir a àrees de memòria alliberades i col·locar codi en àrees de memòria no destinades a aquestes manipulacions.

Font: opennet.ru

Afegeix comentari