In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_conntrack_sip: fix Content-Length u32 truncation in sip_help_tcp() sip_help_tcp() parses the SIP Content-Length header with simple_strtoul(), which returns unsigned long, but stores the result in unsigned int clen. On 64-bit systems, values exceeding UINT_MAX are silently truncated before computing the SIP message boundary. For example, Content-Length 4294967328 (2^32 + 32) is truncated to 32, causing the parser to miscalculate where the current message ends. The loop then treats trailing data in the TCP segment as a second SIP message and processes it through the SDP parser. Fix this by changing clen to unsigned long to match the return type of simple_strtoul(), and reject Content-Length values that exceed the remaining TCP payload length.
En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: netfilter: nf_conntrack_sip: corrección de la truncación u32 de Content-Length en sip_help_tcp() sip_help_tcp() analiza la cabecera SIP Content-Length con simple_strtoul(), que devuelve unsigned long, pero almacena el resultado en unsigned int clen. En sistemas de 64 bits, los valores que exceden UINT_MAX se truncan silenciosamente antes de calcular el límite del mensaje SIP. Por ejemplo, Content-Length 4294967328 (2^32 + 32) se trunca a 32, provocando que el analizador calcule erróneamente dónde termina el mensaje actual. El bucle entonces trata los datos restantes en el segmento TCP como un segundo mensaje SIP y lo procesa a través del analizador SDP. Se corrige esto cambiando clen a unsigned long para que coincida con el tipo de retorno de simple_strtoul(), y rechazando los valores de Content-Length que exceden la longitud restante de la carga útil TCP.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:H
| Attack Vector | NETWORK |
|---|---|
| Attack Complexity | LOW |
| Privileges Required | NONE |
| User Interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality Impact | LOW |
| Integrity Impact | LOW |
| Availability Impact | HIGH |
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Type: Secondary
Exploitability Score: 3.9
Impact Score: 4.7
| Source | Type | Description |
|---|---|---|
| [email protected] | Primary |
en
NVD-CWE-noinfo
|
| Vendor | Product | Version | Update | Type |
|---|---|---|---|---|
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d24246c3640> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d2424535d80> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d24246070c0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d2424535dc0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d23a531d640> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d23a531fcc0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7d23af2bfc00> | Operating System |
| linux | linux_kernel | 7.0 | <built-in method update of dict object at 0x7d2424536800> | Operating System |
| linux | linux_kernel | 7.0 | <built-in method update of dict object at 0x7d23af2be300> | Operating System |
| linux | linux_kernel | 7.0 | <built-in method update of dict object at 0x7d24246c27c0> | Operating System |
| linux | linux_kernel | 7.0 | <built-in method update of dict object at 0x7d23af2be840> | Operating System |
| Vulnerable | CPE |
|---|---|
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:* |