Katalog CVE

CVE-2026-64186

WysokieCVSS 7.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.12%

Percentyl 2 - wyżej niż 2% wszystkich znanych CVE

Streszczenie

W jądrze Linux w sterowniku AMD IOMMU wykryto potencjalny dostęp poza zakresem w interfejsie debugfs. Funkcje iommu_mmio_write() i iommu_capability_write() używały kstrtou32_from_user() do parsowania danych wejściowych, co mogło prowadzić do konwersji dużych wartości na ujemne liczby całkowite, a następnie do odczytu/zapisu poza dozwolonym obszarem pamięci.

Ocena ryzyka

Atakujący z lokalnym dostępem do systemu i uprawnieniami do debugfs mógłby wykorzystać tę podatność do odczytu lub zapisu poza granicami bufora, co może prowadzić do ujawnienia wrażliwych danych lub naruszenia integralności systemu.

Rekomendacja

Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę, która zastępuje kstrtou32_from_user() funkcją kstrtos32_from_user() i dodaje jawną walidację wartości ujemnych.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: iommu/amd: Remove latent out-of-bounds access in IOMMU debugfs In iommu_mmio_write() and iommu_capability_write(), the variables dbg_mmio_offset and dbg_cap_offset are declared as int. However, they are populated using kstrtou32_from_user(). If a user provides a sufficiently large value, it can become a negative integer. Prior to this patch, the AMD IOMMU debugfs implementation was already protected by different mechanisms. 1. #define OFS_IN_SZ 8 ensures the user string <= 8 bytes, so e.g. 0xffffffff isn't a valid input. if (cnt > OFS_IN_SZ) return -EINVAL; 2. Implicit type promotion in iommu_mmio_write(), dbg_mmio_offset is int and iommu->mmio_phys_end is u64 if (dbg_mmio_offset > iommu->mmio_phys_end - sizeof(u64)) return -EINVAL; 3. The show handlers would currently catch the negative number and refuse to perform the read. Replace kstrtou32_from_user() with kstrtos32_from_user() to parse the input, and check for negative values to explicitly prevent out-of-bounds memory accesses directly in iommu_mmio_write() and iommu_capability_write().

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS