mac80211: fix use-after-free in CCMP/GCMP RX (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.34 % · percentile 28 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Modified
Description
In the Linux kernel, the following vulnerability has been resolved: mac80211: fix use-after-free in CCMP/GCMP RX When PN checking is done in mac80211, for fragmentation we need to copy the PN to the RX struct so we can later use it to do a comparison, since commit bf30ca922a0c ("mac80211: check defrag PN against current frame"). Unfortunately, in that commit I used the 'hdr' variable without it being necessarily valid, so use-after-free could occur if it was necessary to reallocate (parts of) the frame. Fix this by reloading the variable after the code that results in the reallocations, if any. This fixes https://bugzilla.kernel.org/show_bug.cgi?id=214401.
Weaknesses (CWE)
- CWE-416 — Use After Free
References
- https://git.kernel.org/stable/c/447d001b875d0e7f211c4ba004916028da994258
- https://git.kernel.org/stable/c/31de381aef0ab1b342f62485118dc8a19363dc78
- https://git.kernel.org/stable/c/f556e1d6fb9f2923a9a36f3df638c7d79ba09dbb
- https://git.kernel.org/stable/c/3d5d629c99c468458022e9b381789de3595bf4dd
- https://git.kernel.org/stable/c/50149e0866a82cef33e680ee68dc380a5bc75d32
- https://git.kernel.org/stable/c/57de2dcb18742dc2860861c9f496da7d42b67da0
- https://git.kernel.org/stable/c/27d3eb5616ee2c0a3b30c3fa34813368ed1f3dc9
- https://git.kernel.org/stable/c/94513069eb549737bcfc3d988d6ed4da948a2de8
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | Linux |
| CVSS 3.1 | HIGH 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary) |
| CVSS 3.1 | HIGH 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | NVD · nvd@nist.gov (Primary) |
European references
- ENISA EUVD · EUVD-2021-34393
- GCVE · GCVE-0-2021-47388
CERT-FR advisories
- 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-0526 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0496 — 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.4.271 < 4.4.286cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 4.9.271 < 4.9.285cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 4.14.235 < 4.14.249cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 4.19.193 < 4.19.209cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.4.124 < 5.4.151cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.10.42 < 5.10.71cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.12.9 < 5.14.10cpe:2.3:o:linux:linux_kernel:5.15:rc1:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:5.15:rc2:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:5.15:rc3:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected 608b0a2ae928a74a2f89e02227339dd79cdb63cf < 447d001b875d0e7f211c4ba004916028da994258 ; affected d0f613fe6de344dc17ba04a88921a2094c13d3fa < 31de381aef0ab1b342f62485118dc8a19363dc78 ; affected a9b57952fed41556c950a92123086724eaf11919 < f556e1d6fb9f2923a9a36f3df638c7d79ba09dbb ; affected 0f716b48ed25503e6961f4b5b40ece36f7e4ed26 < 3d5d629c99c468458022e9b381789de3595bf4dd ; affected c8b3a6150dc8ac78d5fdd5fbdfc4806249ef8b2c < 50149e0866a82cef33e680ee68dc380a5bc75d32 ; affected e64ea0597050157f926ac2ba9b478a44ee5be945 < 57de2dcb18742dc2860861c9f496da7d42b67da0 |
| Linux · Linux | affected 5.13 ; unaffected 0 < 5.13 ; unaffected 4.4.286 ≤ 4.4.* ; unaffected 4.9.285 ≤ 4.9.* ; unaffected 4.14.249 ≤ 4.14.* ; unaffected 4.19.209 ≤ 4.19.* |
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 |