Podatność w sterowniku hv_netvsc jądra Linux umożliwia zwolnienie odszyfrowanej (współdzielonej) pamięci do alokatora stron w przypadku niepowodzenia operacji set_memory_decrypted(). Może to prowadzić do poważnych problemów funkcjonalnych lub bezpieczeństwa w środowiskach Confidential Computing (CoCo VM).
▸ Pokaż oryginał (EN)
In the Linux kernel, the following vulnerability has been resolved: hv_netvsc: Don't free decrypted memory In CoCo VMs it is possible for the untrusted host to cause set_memory_encrypted() or set_memory_decrypted() to fail such that an error is returned and the resulting memory is shared. Callers need to take care to handle these errors to avoid returning decrypted (shared) memory to the page allocator, which could lead to functional or security issues. The netvsc driver could free decrypted/shared pages if set_memory_decrypted() fails. Check the decrypted field in the gpadl to decide whether to free the memory.
W maszynach wirtualnych klasy CoCo (Confidential Computing) niezaufany host może spowodować niepowodzenie wywołań set_memory_encrypted() lub set_memory_decrypted() w taki sposób, że funkcje zwracają błąd, a pamięć pozostaje w stanie współdzielonym (odszyfrowanym). Sterownik hv_netvsc nie sprawdzał poprawnie pola decrypted w strukturze gpadl przed zwolnieniem stron. W rezultacie odszyfrowane/współdzielone strony mogły zostać zwrócone do alokatora stron, co stanowi wyciek pamięci (CWE-401) i potencjalnie udostępnia wrażliwe dane.
Atakujący kontrolujący niezaufany host może doprowadzić do ujawnienia wrażliwych danych z pamięci gościa lub destabilizacji systemu poprzez wymuszenie obsługi współdzielonej pamięci jako prywatnej. W najgorszym przypadku możliwe jest naruszenie poufności i integralności danych przetwarzanych w chronionych maszynach wirtualnych.
Należy zastosować patche dostępne u producenta zgodnie z referencjami (commity: 4aaed9dbe8acd2b6114458f0498a617283d6275b, a56fe611326332bf6b7126e5559590c57dcebad4, bbf9ac34677b57506a13682b31a2a718934c0e31 w stabilnym drzewie jądra Linux). Zaleca się aktualizację do najnowszej wersji jądra zawierającej wymienione poprawki.
Jądro Linux (Linux Kernel) — wersje wskazane w referencjach producenta; podatność dotyczy środowisk używających sterownika hv_netvsc w konfiguracjach Confidential Computing (CoCo VM)
Podatność dotyczy wyłącznie środowisk Confidential Computing (CoCo VM) z hipernadzorcą Hyper-V. Systemy niedziałające w takich środowiskach nie są bezpośrednio narażone.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux Kernel
OSLinux6.9< 6.6.316.7 – 6.8.10 (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