CVE-2021-47516

In the Linux kernel, the following vulnerability has been resolved: nfp: Fix memory leak in nfp_cpp_area_cache_add() In line 800 (#1), nfp_cpp_area_alloc() allocates and initializes a CPP area structure. But in line 807 (#2), when the cache is allocated failed, this CPP area structure is not freed, which will result in memory leak. We can fix it by freeing the CPP area when the cache is allocated failed (#2). 792 int nfp_cpp_area_cache_add(struct nfp_cpp *cpp, size_t size) 793 { 794 struct nfp_cpp_area_cache *cache; 795 struct nfp_cpp_area *area; 800 area = nfp_cpp_area_alloc(cpp, NFP_CPP_ID(7, NFP_CPP_ACTION_RW, 0), 801 0, size); // #1: allocates and initializes 802 if (!area) 803 return -ENOMEM; 805 cache = kzalloc(sizeof(*cache), GFP_KERNEL); 806 if (!cache) 807 return -ENOMEM; // #2: missing free 817 return 0; 818 }
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

10 Jun 2024, 18:43

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se resolvió la siguiente vulnerabilidad: nfp: corrige la pérdida de memoria en nfp_cpp_area_cache_add() En la línea 800 (#1), nfp_cpp_area_alloc() asigna e inicializa una estructura de área CPP. Pero en la línea 807 (#2), cuando falla la asignación de caché, esta estructura de área CPP no se libera, lo que resultará en una pérdida de memoria. Podemos solucionarlo liberando el área de CPP cuando falla la asignación de caché (#2). 792 int nfp_cpp_area_cache_add(struct nfp_cpp *cpp, size_t tamaño) 793 { 794 struct nfp_cpp_area_cache *cache; 795 estructura nfp_cpp_area *área; área 800 = nfp_cpp_area_alloc(cpp, NFP_CPP_ID(7, NFP_CPP_ACTION_RW, 0), 801 0, tamaño); // #1: asigna e inicializa 802 if (!area) 803 return -ENOMEM; 805 caché = kzalloc(sizeof(*cache), GFP_KERNEL); 806 si (!cache) 807 retorno -ENOMEM; // #2: falta el retorno 817 gratuito 0; 818 }
References () https://git.kernel.org/stable/c/2e0e072e62fdaf7816220af08e05c020f0fcb77a - () https://git.kernel.org/stable/c/2e0e072e62fdaf7816220af08e05c020f0fcb77a - Patch
References () https://git.kernel.org/stable/c/3e93abcdcec0436fbf0b6a88ae806902426895a2 - () https://git.kernel.org/stable/c/3e93abcdcec0436fbf0b6a88ae806902426895a2 - Patch
References () https://git.kernel.org/stable/c/484069b5de9d223cc1c64c6f80389a99cfef51f1 - () https://git.kernel.org/stable/c/484069b5de9d223cc1c64c6f80389a99cfef51f1 - Patch
References () https://git.kernel.org/stable/c/c56c96303e9289cc34716b1179597b6f470833de - () https://git.kernel.org/stable/c/c56c96303e9289cc34716b1179597b6f470833de - Patch
References () https://git.kernel.org/stable/c/eb51f639ef3fd5498b7def290ed8681b6aadd9a7 - () https://git.kernel.org/stable/c/eb51f639ef3fd5498b7def290ed8681b6aadd9a7 - Patch
References () https://git.kernel.org/stable/c/f707820c09239d6f67699d9b2ff57863cc7905b0 - () https://git.kernel.org/stable/c/f707820c09239d6f67699d9b2ff57863cc7905b0 - Patch
First Time Linux
Linux linux Kernel
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CWE CWE-401
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

24 May 2024, 15:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-05-24 15:15

Updated : 2024-06-10 18:43


NVD link : CVE-2021-47516

Mitre link : CVE-2021-47516

CVE.ORG link : CVE-2021-47516


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-401

Missing Release of Memory after Effective Lifetime