CVE-2024-53151

In the Linux kernel, the following vulnerability has been resolved: svcrdma: Address an integer overflow Dan Carpenter reports: > Commit 78147ca8b4a9 ("svcrdma: Add a "parsed chunk list" data > structure") from Jun 22, 2020 (linux-next), leads to the following > Smatch static checker warning: > > net/sunrpc/xprtrdma/svc_rdma_recvfrom.c:498 xdr_check_write_chunk() > warn: potential user controlled sizeof overflow 'segcount * 4 * 4' > > net/sunrpc/xprtrdma/svc_rdma_recvfrom.c > 488 static bool xdr_check_write_chunk(struct svc_rdma_recv_ctxt *rctxt) > 489 { > 490 u32 segcount; > 491 __be32 *p; > 492 > 493 if (xdr_stream_decode_u32(&rctxt->rc_stream, &segcount)) > ^^^^^^^^ > > 494 return false; > 495 > 496 /* A bogus segcount causes this buffer overflow check to fail. */ > 497 p = xdr_inline_decode(&rctxt->rc_stream, > --> 498 segcount * rpcrdma_segment_maxsz * sizeof(*p)); > > > segcount is an untrusted u32. On 32bit systems anything >= SIZE_MAX / 16 will > have an integer overflow and some those values will be accepted by > xdr_inline_decode().
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

07 Jan 2025, 16:41

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CWE CWE-190
References () https://git.kernel.org/stable/c/21e1cf688fb0397788c8dd42e1e0b08d58ac5c7b - () https://git.kernel.org/stable/c/21e1cf688fb0397788c8dd42e1e0b08d58ac5c7b - Patch
References () https://git.kernel.org/stable/c/3c63d8946e578663b868cb9912dac616ea68bfd0 - () https://git.kernel.org/stable/c/3c63d8946e578663b868cb9912dac616ea68bfd0 - Patch
References () https://git.kernel.org/stable/c/4cbc3ba6dc2f746497cade60bcbaa82ae3696689 - () https://git.kernel.org/stable/c/4cbc3ba6dc2f746497cade60bcbaa82ae3696689 - Patch
References () https://git.kernel.org/stable/c/838dd342962cef4c320632a5af48d3c31f2f9877 - () https://git.kernel.org/stable/c/838dd342962cef4c320632a5af48d3c31f2f9877 - Patch
References () https://git.kernel.org/stable/c/c1f8195bf68edd2cef0f18a4cead394075a54b5a - () https://git.kernel.org/stable/c/c1f8195bf68edd2cef0f18a4cead394075a54b5a - Patch
References () https://git.kernel.org/stable/c/e5c440c227ecdc721f2da0dd88b6358afd1031a7 - () https://git.kernel.org/stable/c/e5c440c227ecdc721f2da0dd88b6358afd1031a7 - Patch
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
First Time Linux linux Kernel
Linux
Summary
  • (es) En el kernel de Linux, se resolvió la siguiente vulnerabilidad: svcrdma: soluciona un desbordamiento de enteros Dan Carpenter informa: > Commit 78147ca8b4a9 ("svcrdma: agrega una estructura de datos de lista de fragmentos analizados") del 22 de junio de 2020 (linux-next ), conduce a la siguiente > Advertencia del comprobador estático Smatch: > > net/sunrpc/xprtrdma/svc_rdma_recvfrom.c:498 xdr_check_write_chunk() > advertencia: tamaño de desbordamiento potencial controlado por el usuario 'segcount * 4 * 4' > > net/sunrpc/xprtrdma/svc_rdma_recvfrom.c > 488 static bool xdr_check_write_chunk(struct svc_rdma_recv_ctxt *rctxt) > 489 { > 490 u32 segcount; > 491 __be32 *p; > 492 > 493 if (xdr_stream_decode_u32(&rctxt->rc_stream, &segcount)) > ^^^^^^^^ > > 494 devuelve falso; > 495 > 496 /* Un recuento de segmentos falso provoca que esta comprobación de desbordamiento del búfer falle. */> 497 p = xdr_inline_decode(&rctxt->rc_stream, > --> 498 segcount * rpcrdma_segment_maxsz * sizeof(*p)); > > > segcount es un u32 que no es de confianza. En sistemas de 32 bits, cualquier cosa >= TAMAÑO_MAX / 16 tendrá > un desbordamiento de enteros y algunos de esos valores serán aceptados por > xdr_inline_decode().

24 Dec 2024, 12:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-12-24 12:15

Updated : 2025-01-07 16:41


NVD link : CVE-2024-53151

Mitre link : CVE-2024-53151

CVE.ORG link : CVE-2024-53151


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-190

Integer Overflow or Wraparound