Lucene search

K
ubuntucveUbuntu.comUB:CVE-2024-35825
HistoryMay 17, 2024 - 12:00 a.m.

CVE-2024-35825

2024-05-1700:00:00
ubuntu.com
ubuntu.com
1
linux kernel
usb
ncm

6.5 Medium

AI Score

Confidence

High

0.0004 Low

EPSS

Percentile

13.0%

In the Linux kernel, the following vulnerability has been resolved: usb:
gadget: ncm: Fix handling of zero block length packets While connecting to
a Linux host with CDC_NCM_NTB_DEF_SIZE_TX set to 65536, it has been
observed that we receive short packets, which come at interval of 5-10
seconds sometimes and have block length zero but still contain 1-2 valid
datagrams present. According to the NCM spec: β€œIf wBlockLength = 0x0000,
the block is terminated by a short packet. In this case, the USB transfer
must still be shorter than dwNtbInMaxSize or dwNtbOutMaxSize. If exactly
dwNtbInMaxSize or dwNtbOutMaxSize bytes are sent, and the size is a
multiple of wMaxPacketSize for the given pipe, then no ZLP shall be sent.
wBlockLength= 0x0000 must be used with extreme care, because of the
possibility that the host and device may get out of sync, and because of
test issues. wBlockLength = 0x0000 allows the sender to reduce latency by
starting to send a very large NTB, and then shortening it when the sender
discovers that there’s not sufficient data to justify sending a large NTB”
However, there is a potential issue with the current implementation, as it
checks for the occurrence of multiple NTBs in a single giveback by
verifying if the leftover bytes to be processed is zero or not. If the
block length reads zero, we would process the same NTB infintely because
the leftover bytes is never zero and it leads to a crash. Fix this by
bailing out if block length reads zero.

6.5 Medium

AI Score

Confidence

High

0.0004 Low

EPSS

Percentile

13.0%

Related for UB:CVE-2024-35825