CVE-2024-39490
ipv6: sr: fix missing sk_buff release in seg6_input_core
At a glance
- Source
- NVD
- EPSS
- EPSS 0.22 % · percentile 13 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Analyzed
Description
In the Linux kernel, the following vulnerability has been resolved: ipv6: sr: fix missing sk_buff release in seg6_input_core The seg6_input() function is responsible for adding the SRH into a packet, delegating the operation to the seg6_input_core(). This function uses the skb_cow_head() to ensure that there is sufficient headroom in the sk_buff for accommodating the link-layer header. In the event that the skb_cow_header() function fails, the seg6_input_core() catches the error but it does not release the sk_buff, which will result in a memory leak. This issue was introduced in commit af3b5158b89d ("ipv6: sr: fix BUG due to headroom too small after SRH push") and persists even after commit 7a3f5b0de364 ("netfilter: add netfilter hooks to SRv6 data plane"), where the entire seg6_input() code was refactored to deal with netfilter hooks. The proposed patch addresses the identified memory leak by requiring the seg6_input_core() function to release the sk_buff in the event that skb_cow_head() fails.
Weaknesses (CWE)
- CWE-401 — Missing Release of Memory after Effective Lifetime
References
- https://git.kernel.org/stable/c/e8688218e38111ace457509d8f0cad75f79c1a7a
- https://git.kernel.org/stable/c/8f1fc3b86eaea70be6abcae2e9aa7e7b99453864
- https://git.kernel.org/stable/c/f4df8c7670a73752201cbde215254598efdf6ce8
- https://git.kernel.org/stable/c/f5fec1588642e415a3d72e02140160661b303940
- https://git.kernel.org/stable/c/5447f9708d9e4c17a647b16a9cb29e9e02820bd9
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 6.2 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | CISA-ADP |
| CVSS 3.1 | MEDIUM 6.2 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | NVD · 134c704f-9b21-4f2e-91b3-4a467353bcc0 (Secondary) |
European references
- ENISA EUVD · EUVD-2024-38327
- GCVE · GCVE-0-2024-39490
CERT-FR advisories
- CERTFR-2024-AVI-0823 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0799 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0778 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0717 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0693 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0669 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 4.12 < 5.15.161cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.16 < 6.1.93cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.2 < 6.6.33cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.7 < 6.9.4
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected af3b5158b89d3bab9be881113417558c71b71ca4 < e8688218e38111ace457509d8f0cad75f79c1a7a ; affected af3b5158b89d3bab9be881113417558c71b71ca4 < 8f1fc3b86eaea70be6abcae2e9aa7e7b99453864 ; affected af3b5158b89d3bab9be881113417558c71b71ca4 < f4df8c7670a73752201cbde215254598efdf6ce8 ; affected af3b5158b89d3bab9be881113417558c71b71ca4 < f5fec1588642e415a3d72e02140160661b303940 ; affected af3b5158b89d3bab9be881113417558c71b71ca4 < 5447f9708d9e4c17a647b16a9cb29e9e02820bd9 |
| Linux · Linux | affected 4.12 ; unaffected 0 < 4.12 ; unaffected 5.15.161 ≤ 5.15.* ; unaffected 6.1.93 ≤ 6.1.* ; unaffected 6.6.33 ≤ 6.6.* ; unaffected 6.9.4 ≤ 6.9.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |