CVE-2026-52986
Gravedad CVSS v3.1:
CRÍTICA
Tipo:
CWE-476
Desreferencia a puntero nulo (NULL)
Fecha de publicación:
24/06/2026
Última modificación:
14/07/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
netfilter: nf_conntrack_sip: don&#39;t use simple_strtoul<br />
<br />
Replace unsafe port parsing in epaddr_len(), ct_sip_parse_header_uri(),<br />
and ct_sip_parse_request() with a new sip_parse_port() helper that<br />
validates each digit against the buffer limit, eliminating the use of<br />
simple_strtoul() which assumes NUL-terminated strings.<br />
<br />
The previous code dereferenced pointers without bounds checks after<br />
sip_parse_addr() and relied on simple_strtoul() on non-NUL-terminated<br />
skb data. A port that reaches the buffer limit without a trailing<br />
character is also rejected as malformed.<br />
<br />
Also get rid of all simple_strtoul() usage in conntrack, prefer a<br />
stricter version instead. There are intentional changes:<br />
<br />
- Bail out if number is > UINT_MAX and indicate a failure, same for<br />
too long sequences.<br />
While we do accept 05535 as port 5535, we will not accept e.g.<br />
&#39;sip:10.0.0.1:005060&#39;. While its syntactically valid under RFC 3261,<br />
we should restrict this to not waste cycles when presented with<br />
malformed packets with 64k &#39;0&#39; characters.<br />
<br />
- Force base 10 in ct_sip_parse_numerical_param(). This is used to fetch<br />
&#39;expire=&#39; and &#39;rports=&#39;; both are expected to use base-10.<br />
<br />
- In nf_nat_sip.c, only accept the parsed value if its within the 1k-64k<br />
range.<br />
<br />
- epaddr_len now returns 0 if the port is invalid, as it already does<br />
for invalid ip addresses. This is intentional. nf_conntrack_sip<br />
performs lots of guesswork to find the right parts of the message<br />
to parse. Being stricter could break existing setups.<br />
Connection tracking helpers are designed to allow traffic to<br />
pass, not to block it.<br />
<br />
Based on an earlier patch from Jenny Guanni Qu .
Impacto
Puntuación base 3.x
9.80
Gravedad 3.x
CRÍTICA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 2.6.26 (incluyendo) | 5.10.258 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (incluyendo) | 5.15.209 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (incluyendo) | 6.1.175 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.6.141 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.12.91 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 (incluyendo) | 6.18.33 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 (incluyendo) | 7.0.10 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/523762e3b6933fff81f01dfa3c60c0774044cdab
- https://git.kernel.org/stable/c/7df9863bf538a626e8a684e59cb2c43eac0ef3c8
- https://git.kernel.org/stable/c/8cd0358379570003659186706e077929d6930c40
- https://git.kernel.org/stable/c/8cf6809cddcbe301aedfc6b51bcd4944d45795f6
- https://git.kernel.org/stable/c/9c6afcb1c3cbb2c0da65b8515ac14d7273872f84
- https://git.kernel.org/stable/c/9f69c323ae0ab517e595c2cc74e0ae0d9d085611
- https://git.kernel.org/stable/c/b3264c977e79d8a25778d4fd11520f00fea1329c
- https://git.kernel.org/stable/c/ea2ecd29b8f4433e52607192ca91084f95787ca0



