W sterowniku kryptograficznym safexcel jądra Linux wykryto brak obsługi błędów zwracanych przez makro dma_map_sg(). Podatność o ocenie CVSS 9.8 może prowadzić do poważnych konsekwencji związanych z niezmapowanymi buforami DMA.
▸ Pokaż oryginał (EN)
In the Linux kernel, the following vulnerability has been resolved: crypto: safexcel - Add error handling for dma_map_sg() calls Macro dma_map_sg() may return 0 on error. This patch enables checks in case of the macro failure and ensures unmapping of previously mapped buffers with dma_unmap_sg(). Found by Linux Verification Center (linuxtesting.org) with static analysis tool SVACE.
Makro dma_map_sg() może zwrócić wartość 0 w przypadku błędu, sygnalizując niepowodzenie mapowania pamięci DMA. Sterownik safexcel nie sprawdzał tego przypadku, przez co w razie błędu nie były wywoływane odpowiednie procedury odmapowania (dma_unmap_sg()) dla wcześniej zmapowanych buforów. Podatność została odkryta przy użyciu statycznej analizy kodu przez Linux Verification Center (linuxtesting.org) z narzędziem SVACE. Poprawka dodaje odpowiednie sprawdzenia wyniku makra oraz zapewnia prawidłowe odmapowanie buforów w przypadku wystąpienia błędu.
Niezwrócenie zasobów DMA może prowadzić do naruszenia integralności pamięci, niestabilności systemu lub potencjalnie do wykonania nieautoryzowanych operacji w kontekście jądra systemu operacyjnego.
Należy zastosować patche dostępne u producenta zgodnie z referencjami — konkretne commity naprawcze dostępne pod adresami: git.kernel.org/stable/c/4c0ac81a172a69a7733290915276672787e904ec, 8084b788c2fb1260f7d44c032d5124680b20d2b2, 87e02063d07708cac5bfe9fd3a6a242898758ac8, fc0b785802b856566df3ac943e38a072557001c4
Linux Kernel — wersje wskazane w referencjach producenta (łatki dostępne pod wskazanymi commitami w repozytorium stable)
Podatność wykryta przez Linux Verification Center (linuxtesting.org) przy użyciu narzędzia do statycznej analizy kodu SVACE.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux Kernel
OSLinux6.1 – 6.1.75 (bez)6.2 – 6.6.14 (bez)6.7 – 6.7.2 (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