CVE-2025-21689
Linux Kernel USB Quatech2 Null Pointer Dereference
Description
In the Linux kernel, the following vulnerability has been resolved: USB: serial: quatech2: fix null-ptr-deref in qt2_process_read_urb() This patch addresses a null-ptr-deref in qt2_process_read_urb() due to an incorrect bounds check in the following: if (newport > serial->num_ports) { dev_err(&port->dev, "%s - port change to invalid port: %i\n", __func__, newport); break; } The condition doesn't account for the valid range of the serial->port buffer, which is from 0 to serial->num_ports - 1. When newport is equal to serial->num_ports, the assignment of "port" in the following code is out-of-bounds and NULL: serial_priv->current_port = newport; port = serial->port[serial_priv->current_port]; The fix checks if newport is greater than or equal to serial->num_ports indicating it is out-of-bounds.
INFO
Published Date :
Feb. 10, 2025, 4:15 p.m.
Last Modified :
Feb. 21, 2025, 4:36 p.m.
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Remotely Exploitable :
No
Impact Score :
3.6
Exploitability Score :
1.8
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2025-21689
.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2025-21689
vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2025-21689
vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
Initial Analysis by [email protected]
Feb. 21, 2025
Action Type Old Value New Value Added CVSS V3.1 NIST AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H Added CWE NIST CWE-476 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 3.5 up to (excluding) 5.4.290 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.5 up to (excluding) 5.10.234 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11 up to (excluding) 5.15.178 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.16 up to (excluding) 6.1.128 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.2 up to (excluding) 6.6.75 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.7 up to (excluding) 6.12.12 *cpe:2.3:o:linux:linux_kernel:6.13:-:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc2:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc3:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc4:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc5:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc6:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.13:rc7:*:*:*:*:*:* Changed Reference Type https://git.kernel.org/stable/c/4b9b41fabcd38990f69ef0cee9c631d954a2b530 No Types Assigned https://git.kernel.org/stable/c/4b9b41fabcd38990f69ef0cee9c631d954a2b530 Patch Changed Reference Type https://git.kernel.org/stable/c/575a5adf48b06a2980c9eeffedf699ed5534fade No Types Assigned https://git.kernel.org/stable/c/575a5adf48b06a2980c9eeffedf699ed5534fade Patch Changed Reference Type https://git.kernel.org/stable/c/6068dcff7f19e9fa6fa23ee03453ad6a40fa4efe No Types Assigned https://git.kernel.org/stable/c/6068dcff7f19e9fa6fa23ee03453ad6a40fa4efe Patch Changed Reference Type https://git.kernel.org/stable/c/6377838560c03b36e1153a42ef727533def9b68f No Types Assigned https://git.kernel.org/stable/c/6377838560c03b36e1153a42ef727533def9b68f Patch Changed Reference Type https://git.kernel.org/stable/c/8542b33622571f54dfc2a267fce378b6e3840b8b No Types Assigned https://git.kernel.org/stable/c/8542b33622571f54dfc2a267fce378b6e3840b8b Patch Changed Reference Type https://git.kernel.org/stable/c/94770cf7c5124f0268d481886829dc2beecc4507 No Types Assigned https://git.kernel.org/stable/c/94770cf7c5124f0268d481886829dc2beecc4507 Patch Changed Reference Type https://git.kernel.org/stable/c/f371471708c7d997f763b0e70565026eb67cc470 No Types Assigned https://git.kernel.org/stable/c/f371471708c7d997f763b0e70565026eb67cc470 Patch Changed Reference Type https://git.kernel.org/stable/c/fa4c7472469d97c4707698b4c0e098f8cfc2bf22 No Types Assigned https://git.kernel.org/stable/c/fa4c7472469d97c4707698b4c0e098f8cfc2bf22 Patch -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Feb. 10, 2025
Action Type Old Value New Value Added Description In the Linux kernel, the following vulnerability has been resolved: USB: serial: quatech2: fix null-ptr-deref in qt2_process_read_urb() This patch addresses a null-ptr-deref in qt2_process_read_urb() due to an incorrect bounds check in the following: if (newport > serial->num_ports) { dev_err(&port->dev, "%s - port change to invalid port: %i\n", __func__, newport); break; } The condition doesn't account for the valid range of the serial->port buffer, which is from 0 to serial->num_ports - 1. When newport is equal to serial->num_ports, the assignment of "port" in the following code is out-of-bounds and NULL: serial_priv->current_port = newport; port = serial->port[serial_priv->current_port]; The fix checks if newport is greater than or equal to serial->num_ports indicating it is out-of-bounds. Added Reference https://git.kernel.org/stable/c/4b9b41fabcd38990f69ef0cee9c631d954a2b530 Added Reference https://git.kernel.org/stable/c/575a5adf48b06a2980c9eeffedf699ed5534fade Added Reference https://git.kernel.org/stable/c/6068dcff7f19e9fa6fa23ee03453ad6a40fa4efe Added Reference https://git.kernel.org/stable/c/6377838560c03b36e1153a42ef727533def9b68f Added Reference https://git.kernel.org/stable/c/8542b33622571f54dfc2a267fce378b6e3840b8b Added Reference https://git.kernel.org/stable/c/94770cf7c5124f0268d481886829dc2beecc4507 Added Reference https://git.kernel.org/stable/c/f371471708c7d997f763b0e70565026eb67cc470 Added Reference https://git.kernel.org/stable/c/fa4c7472469d97c4707698b4c0e098f8cfc2bf22
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2025-21689
is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2025-21689
weaknesses.