btrfs: qgroup: fix quota root leak after quota disable failure (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.22 % · percentile 13 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Modified
Description
In the Linux kernel, the following vulnerability has been resolved: btrfs: qgroup: fix quota root leak after quota disable failure If during the quota disable we fail when cleaning the quota tree or when deleting the root from the root tree, we jump to the 'out' label without ever dropping the reference on the quota root, resulting in a leak of the root since fs_info->quota_root is no longer pointing to the root (we have set it to NULL just before those steps). Fix this by always doing a btrfs_put_root() call under the 'out' label. This is a problem that exists since qgroups were first added in 2012 by commit bed92eae26cc ("Btrfs: qgroup implementation and prototypes"), but back then we missed a kfree on the quota root and free_extent_buffer() calls on its root and commit root nodes, since back then roots were not yet reference counted.
Weaknesses (CWE)
- CWE-401 — Missing Release of Memory after Effective Lifetime
References
- https://git.kernel.org/stable/c/94818bdb00ef34a996a06aa63d11f591074cb757
- https://git.kernel.org/stable/c/8a69529f22590b67bb018de9acbcf94abc8603cf
- https://git.kernel.org/stable/c/5ef3961682e5310f2221bae99bcf9f5d0f4b0d51
- https://git.kernel.org/stable/c/f88aeff5a173e8ba3133314eb4b964236ef3589d
- https://git.kernel.org/stable/c/7dd6a5b96157a21245566b21fd58276a214357ff
- https://git.kernel.org/stable/c/a7e4c6a3031c74078dba7fa36239d0f4fe476c53
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
European references
- ENISA EUVD · EUVD-2024-38875
- GCVE · GCVE-0-2024-41078
CERT-FR advisories
- CERTFR-2025-AVI-0677 — Multiples vulnérabilités dans les produits Siemens · cert.ssi.gouv.fr
- CERTFR-2025-AVI-0022 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2025-AVI-0002 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2024-AVI-1080 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-1013 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0997 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0957 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0822 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0779 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2024-AVI-0719 — Multiples vulnérabilités dans le noyau Linux de Debian · 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
Affected configurations (NVD CPE)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*< 5.10.223cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.11 < 5.15.164cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.16 < 6.1.101cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.2 < 6.6.42cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.7 < 6.9.11cpe:2.3:o:linux:linux_kernel:6.10:rc1:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.10:rc3:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.10:rc4:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.10:rc5:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected bed92eae26ccf280d1a2168b7509447b56675a27 < 94818bdb00ef34a996a06aa63d11f591074cb757 ; affected bed92eae26ccf280d1a2168b7509447b56675a27 < 8a69529f22590b67bb018de9acbcf94abc8603cf ; affected bed92eae26ccf280d1a2168b7509447b56675a27 < 5ef3961682e5310f2221bae99bcf9f5d0f4b0d51 ; affected bed92eae26ccf280d1a2168b7509447b56675a27 < f88aeff5a173e8ba3133314eb4b964236ef3589d ; affected bed92eae26ccf280d1a2168b7509447b56675a27 < 7dd6a5b96157a21245566b21fd58276a214357ff ; affected bed92eae26ccf280d1a2168b7509447b56675a27 < a7e4c6a3031c74078dba7fa36239d0f4fe476c53 |
| Linux · Linux | affected 3.6 ; unaffected 0 < 3.6 ; unaffected 5.10.223 ≤ 5.10.* ; unaffected 5.15.164 ≤ 5.15.* ; unaffected 6.1.101 ≤ 6.1.* ; unaffected 6.6.42 ≤ 6.6.* |
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 |