Podatność w pliku udp.c jądra Linux (wersje przed 4.5) umożliwia zdalnemu atakującemu wykonanie dowolnego kodu bez uwierzytelnienia. Błąd jest krytyczny ze względu na sieciowy wektor ataku oraz brak wymagań co do uprawnień.
▸ Pokaż oryginał (EN)
udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.
Problem tkwi w mechanizmie obsługi wywołania systemowego recv z flagą MSG_PEEK dla protokołu UDP. Podczas takiego wywołania dochodzi do niezabezpieczonego, podwójnego obliczenia sumy kontrolnej (checksum) pakietu. Zdalny atakujący może wywołać ten błąd poprzez wysłanie odpowiednio spreparowanego ruchu UDP, co prowadzi do wykonania arbitralnego kodu w kontekście jądra systemu.
Atakujący może zdalnie wykonać dowolny kod (RCE) w przestrzeni jądra systemu operacyjnego, co w praktyce oznacza pełne przejęcie kontroli nad systemem, w tym uzyskanie dostępu do danych, modyfikację systemu oraz eskalację uprawnień.
Należy zaktualizować jądro Linux do wersji 4.5 lub nowszej. Poprawka dostępna jest w repozytorium jądra Linux (commit 197c949e7798fbf28cfadc69d9ca0c2abbf93231). Dla systemów Android należy zastosować aktualizacje wskazane w biuletynie bezpieczeństwa Android z kwietnia 2017 roku.
Jądro Linux w wersjach przed 4.5, w tym systemy Android oparte na podatnych wersjach jądra (wymienione w biuletynie bezpieczeństwa Android z kwietnia 2017).
Podatność została uwzględniona w biuletynie bezpieczeństwa Android z dnia 2017-04-01, co wskazuje na jej obecność również w urządzeniach mobilnych z systemem Android opartych na podatnych wersjach jądra Linux.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HGoogle Android
OSGoogle≤ 7.1.1Linux Kernel
OSLinux3.3 – 3.4.113 (bez)3.5 – 3.10.103 (bez)3.11 – 3.12.53 (bez)3.13 – 3.14.77 (bez)3.2 – 3.2.76 (bez)3.17 – 3.18.45 (bez)3.19 – 4.1.40 (bez)4.2 – 4.4.21 (bez)3.15 – 3.16.35 (bez)
Powiązane podatności
Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty
Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP
RCE przez YAML deserialization w IBM Aspera Faspex
RCE w VMware Workspace ONE Access i Identity Manager poprzez server-side template injection
Command Injection w VMware Workspace One Access i Identity Manager