CVE-2024-56581

HIGHNVD 7.87.8
EchelonGraph scoreMEDIUM confidence

Score 7.8 from GitHub Security Advisory (severity: HIGH) published 2024-12-27. NVD baseline CVSS 7.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, nvd
Trending — 4 sources updated this week
7.8EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 7.8Exploit: None knownExposed: 0

A fix is available — apply it.

In the Linux kernel, the following vulnerability has been resolved:

btrfs: ref-verify: fix use-after-free after invalid ref action

At btrfs_ref_tree_mod() after we successfully inserted the new ref entry (local variable 'ref') into the respective block entry's rbtree (local variable 'be'), if we find an unexpected action of BTRFS_DROP_DELAYED_REF, we error out and free the ref entry without removing it from the block entry's rbtree. Then in the error path of btrfs_ref_tree_mod() we call btrfs_free_ref_cache(), which iterates over all block entries and then calls free_block_entry() for each one, and there we will trigger a use-after-free when we are called against the block entry to which we added the freed ref entry to its rbtree, since the rbtree still points to the block entry, as we didn't remove it from the rbtree before freeing it in the error path at btrfs_ref_tree_mod(). Fix this by removing the new ref entry from the rbtree before freeing it.

Syzbot report this with the following stack traces:

BTRFS error (device loop0 state EA): Ref action 2, root 5, ref_root 0, parent 8564736, owner 0, offset 0, num_refs 18446744073709551615 __btrfs_mod_ref+0x7dd/0xac0 fs/btrfs/extent-tree.c:2523 update_ref_for_cow+0x9cd/0x11f0 fs/btrfs/ctree.c:512 btrfs_force_cow_block+0x9f6/0x1da0 fs/btrfs/ctree.c:594 btrfs_cow_block+0x35e/0xa40 fs/btrfs/ctree.c:754 btrfs_search_slot+0xbdd/0x30d0 fs/btrfs/ctree.c:2116 btrfs_insert_empty_items+0x9c/0x1a0 fs/btrfs/ctree.c:4314 btrfs_insert_empty_item fs/btrfs/ctree.h:669 [inline] btrfs_insert_orphan_item+0x1f1/0x320 fs/btrfs/orphan.c:23 btrfs_orphan_add+0x6d/0x1a0 fs/btrfs/inode.c:3482 btrfs_unlink+0x267/0x350 fs/btrfs/inode.c:4293 vfs_unlink+0x365/0x650 fs/namei.c:4469 do_unlinkat+0x4ae/0x830 fs/namei.c:4533 __do_sys_unlinkat fs/namei.c:4576 [inline] __se_sys_unlinkat fs/namei.c:4569 [inline] __x64_sys_unlinkat+0xcc/0xf0 fs/namei.c:4569 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f BTRFS error (device loop0 state EA): Ref action 1, root 5, ref_root 5, parent 0, owner 260, offset 0, num_refs 1 __btrfs_mod_ref+0x76b/0xac0 fs/btrfs/extent-tree.c:2521 update_ref_for_cow+0x96a/0x11f0 btrfs_force_cow_block+0x9f6/0x1da0 fs/btrfs/ctree.c:594 btrfs_cow_block+0x35e/0xa40 fs/btrfs/ctree.c:754 btrfs_search_slot+0xbdd/0x30d0 fs/btrfs/ctree.c:2116 btrfs_lookup_inode+0xdc/0x480 fs/btrfs/inode-item.c:411 __btrfs_update_delayed_inode+0x1e7/0xb90 fs/btrfs/delayed-inode.c:1030 btrfs_update_delayed_inode fs/btrfs/delayed-inode.c:1114 [inline] __btrfs_commit_inode_delayed_items+0x2318/0x24a0 fs/btrfs/delayed-inode.c:1137 __btrfs_run_delayed_items+0x213/0x490 fs/btrfs/delayed-inode.c:1171 btrfs_commit_transaction+0x8a8/0x3740 fs/btrfs/transaction.c:2313 prepare_to_relocate+0x3c4/0x4c0 fs/btrfs/relocation.c:3586 relocate_block_group+0x16c/0xd40 fs/btrfs/relocation.c:3611 btrfs_relocate_block_group+0x77d/0xd90 fs/btrfs/relocation.c:4081 btrfs_relocate_chunk+0x12c/0x3b0 fs/btrfs/volumes.c:3377 __btrfs_balance+0x1b0f/0x26b0 fs/btrfs/volumes.c:4161 btrfs_balance+0xbdc/0x10c0 fs/btrfs/volumes.c:4538 BTRFS error (device loop0 state EA): Ref action 2, root 5, ref_root 0, parent 8564736, owner 0, offset 0, num_refs 18446744073709551615 __btrfs_mod_ref+0x7dd/0xac0 fs/btrfs/extent-tree.c:2523 update_ref_for_cow+0x9cd/0x11f0 fs/btrfs/ctree.c:512 btrfs_force_cow_block+0x9f6/0x1da0 fs/btrfs/ctree.c:594 btrfs_cow_block+0x35e/0xa40 fs/btrfs/ctree.c:754 btrfs_search_slot+0xbdd/0x30d0 fs/btrfs/ctree.c:2116 btrfs_lookup_inode+0xdc/0x480 fs/btrfs/inode-item.c:411 __btrfs_update_delayed_inode+0x1e7/0xb90 fs/btrfs/delayed-inode.c:1030 btrfs_update_delayed_i ---truncated---

CVSS v3
7.8
EG Score
7.8(medium)
EG Risk
35(Track)
EG Risk 35/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity78% × 45%
Exploitation0% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
15%
KEV
Not listed

Published

December 27, 2024

Last Modified

August 5, 2026

Advisory Details (9)

Auto-updated Aug 4, 2026
Patch available.
generic Patch Available

[SECURITY] [DLA 4075-1] linux security update

https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html
generic Patch Available

[SECURITY] [DLA 4076-1] linux-6.1 security update

https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/dfb9fe7de61f34cc241ab3900bdde93341096e0e
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/d2b85ce0561fde894e28fa01bd5d32820d585006
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/a6f9e7a0bf1185c9070c0de03bb85eafb9abd650
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/7c4e39f9d2af4abaf82ca0e315d1fd340456620f
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/6fd018aa168e472ce35be32296d109db6adb87ea
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/6370db28af9a8ae3bbdfe97f8a48f8f995e144cf
generic

btrfs: ref-verify: fix use-after-free after invalid ref action - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/4275ac2741941c9c7c2293619fdbacb9f70ba85b

Patch Availability(31)

Vendor / EcosystemFixed in / PatchReleasedSource
ubuntulinux-tools-lowlatency-64k (6.11.0-1011.12) @ oracular2026-05-23ubuntu
ubuntulinux-tools-realtime (5.15.0.1080.83) @ jammy2026-05-23ubuntu
ubuntulinux-virtual-hwe-24.04-edge (6.11.0-21.21) @ oracular2026-05-23ubuntu
ubuntulinux-tools-oem-24.04b (6.11.0-1017.17) @ noble2026-05-23ubuntu
ubuntulinux-tools-lowlatency-hwe-24.04-edge (6.11.0-1011.12~24.04.1) @ noble2026-05-23ubuntu
ubuntulinux-tools-nvidia-tegra-rt (5.15.0.1033.33) @ jammy2026-05-23ubuntu
ubuntulinux-virtual-hwe-20.04-edge (5.15.0.135.133) @ jammy2026-05-23ubuntu
ubuntulinux-tools-iot (5.4.0.1048.46) @ focal2026-05-23ubuntu
ubuntulinux-xilinx-zynqmp-tools-host (5.15.0-1044.48) @ jammy2026-05-23ubuntu
ubuntulinux-tools-gcp-fips (5.15.0.1079.69) @ jammy2026-05-23ubuntu
ubuntulinux-tools-kvm (5.15.0.1076.72) @ jammy2026-05-23ubuntu
ubuntulinux-virtual-hwe-18.04-edge (5.4.0.211.206) @ focal2026-05-23ubuntu
ubuntulinux-tools-raspi (6.11.0-1010.10) @ oracular2026-05-23ubuntu
ubuntulinux-xilinx-zynqmp-tools-5.4.0-1060 (5.4.0-1060.64) @ focal2026-05-23ubuntu
ubuntulinux-virtual-hwe-20.04-edge (5.15.0.136.147~20.04.1) @ focal2026-05-23ubuntu
ubuntulinux-tools-azure-fde-edge (5.15.0.1086.95~20.04.1.61) @ focal2026-05-23ubuntu
ubuntulinux-tools-gcp-fips (5.4.0.1145.87) @ focal2026-05-23ubuntu
ubuntulinux-tools-fips (5.4.0.1116.113) @ focal2026-05-23ubuntu
ubuntulinux-tools-aws-fips (5.4.0.1142.89) @ focal2026-05-23ubuntu
ubuntulinux-tools-aws-lts-20.04 (5.4.0.1142.139) @ focal2026-05-23ubuntu
ubuntulinux-tools-aws-edge (5.4.0.1142.152~18.04.1) @ bionic2026-05-23ubuntu
ubuntulinux-virtual (6.8.0-58.60) @ noble2026-05-23ubuntu
ubuntulinux-virtual-hwe-22.04-edge (6.8.0-58.60~22.04.1) @ jammy2026-05-23ubuntu
ubuntulinux-tools-ibm-edge (5.15.0.1074.77~20.04.1) @ focal2026-05-23ubuntu
ubuntulinux-tools-aws-edge (6.8.0-1027.29~22.04.1) @ jammy2026-05-23ubuntu
ubuntulinux-tools-gcp-edge (5.15.0.1081.90~20.04.1) @ focal2026-05-23ubuntu
ubuntulinux-tools-gkeop-6.8 (6.8.0-1010.12) @ noble2026-05-23ubuntu
ubuntulinux-tools-gcp-edge (6.8.0-1028.30~22.04.1) @ jammy2026-05-23ubuntu
ubuntulinux-tools-raspi-hwe-18.04-edge (5.4.0.1129.142~18.04.1) @ bionic2026-05-23ubuntu
ubuntulinux-tools-ibm-edge (5.4.0.1090.95~18.04.1) @ bionic2026-05-23ubuntu
linuxKernel @ 5.4.287osv

Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

All Vendor Advisories

(25)

Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.

Data Freshness Timeline

(refreshed 14× in last 7d / 46× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

Showing the most recent 100 of 128 total refreshes for this CVE.

  1. 2026-08-07 16:26 UTCEPSS rescore
  2. 2026-08-06 13:45 UTCEPSS rescore
  3. 2026-08-05 19:16 UTCEPSS rescore
  4. 2026-08-05 11:49 UTCEG score recompute
  5. 2026-08-05 11:49 UTCVendor advisory
  6. 2026-08-05 11:49 UTCGHSA enrichment
  7. 2026-08-04 15:08 UTCEPSS rescore
  8. 2026-08-04 11:34 UTCGHSA enrichment
  9. 2026-08-04 11:19 UTCEG score recompute
  10. 2026-08-04 11:19 UTCVendor advisory
  11. 2026-08-04 11:19 UTCGHSA enrichment
  12. 2026-08-03 10:35 UTCEPSS rescore
  13. 2026-08-02 02:25 UTCEPSS rescore
  14. 2026-08-02 02:25 UTCEPSS rescore
  15. 2026-08-01 04:14 UTCEPSS rescore
  16. 2026-07-31 07:42 UTCOSV refresh
  17. 2026-07-30 16:26 UTCEPSS rescore
  18. 2026-07-30 16:26 UTCEPSS rescore
  19. 2026-07-30 01:29 UTCEPSS rescore
  20. 2026-07-28 15:35 UTCEPSS rescore
  21. 2026-07-26 14:53 UTCEPSS rescore
  22. 2026-07-25 14:17 UTCEPSS rescore
  23. 2026-07-25 14:17 UTCEPSS rescore
  24. 2026-07-24 14:16 UTCEPSS rescore
  25. 2026-07-23 14:17 UTCEPSS rescore
Show 75 more
  1. 2026-07-23 14:17 UTCEPSS rescore
  2. 2026-07-23 02:45 UTCEG score recompute
  3. 2026-07-22 14:07 UTCEPSS rescore
  4. 2026-07-21 15:23 UTCEPSS rescore
  5. 2026-07-20 17:07 UTCEPSS rescore
  6. 2026-07-19 14:30 UTCEPSS rescore
  7. 2026-07-19 14:30 UTCEPSS rescore
  8. 2026-07-19 02:28 UTCEPSS rescore
  9. 2026-07-19 02:28 UTCEPSS rescore
  10. 2026-07-18 10:03 UTCEPSS rescore
  11. 2026-07-16 17:02 UTCEPSS rescore
  12. 2026-07-15 16:57 UTCEPSS rescore
  13. 2026-07-15 01:59 UTCEPSS rescore
  14. 2026-07-15 01:59 UTCEPSS rescore
  15. 2026-07-13 22:29 UTCEPSS rescore
  16. 2026-07-13 15:08 UTCOSV refresh
  17. 2026-07-13 06:12 UTCEPSS rescore
  18. 2026-07-12 05:45 UTCEPSS rescore
  19. 2026-07-11 08:26 UTCEPSS rescore
  20. 2026-07-09 19:09 UTCEPSS rescore
  21. 2026-07-09 19:09 UTCEPSS rescore
  22. 2026-07-08 15:14 UTCEPSS rescore
  23. 2026-07-07 13:45 UTCEPSS rescore
  24. 2026-07-07 13:45 UTCEPSS rescore
  25. 2026-07-06 16:26 UTCEPSS rescore
  26. 2026-07-06 16:26 UTCEPSS rescore
  27. 2026-07-06 02:22 UTCEPSS rescore
  28. 2026-07-05 02:29 UTCEPSS rescore
  29. 2026-07-04 06:30 UTCEPSS rescore
  30. 2026-07-04 06:30 UTCEPSS rescore
  31. 2026-07-01 15:06 UTCEPSS rescore
  32. 2026-06-30 23:21 UTCEPSS rescore
  33. 2026-06-30 23:21 UTCEPSS rescore
  34. 2026-06-29 14:05 UTCEPSS rescore
  35. 2026-06-28 14:07 UTCEPSS rescore
  36. 2026-06-28 04:55 UTCEPSS rescore
  37. 2026-06-28 04:55 UTCEPSS rescore
  38. 2026-06-27 03:08 UTCEPSS rescore
  39. 2026-06-27 03:07 UTCEPSS rescore
  40. 2026-06-25 13:49 UTCEPSS rescore
  41. 2026-06-25 13:49 UTCEPSS rescore
  42. 2026-06-25 12:31 UTCOSV refresh
  43. 2026-06-24 14:04 UTCEPSS rescore
  44. 2026-06-24 14:04 UTCEPSS rescore
  45. 2026-06-23 21:32 UTCEPSS rescore
  46. 2026-06-22 14:25 UTCEPSS rescore
  47. 2026-06-22 14:25 UTCEPSS rescore
  48. 2026-06-21 14:56 UTCEPSS rescore
  49. 2026-06-21 14:56 UTCEPSS rescore
  50. 2026-06-21 01:59 UTCEPSS rescore
  51. 2026-06-19 19:25 UTCEPSS rescore
  52. 2026-06-19 19:25 UTCEPSS rescore
  53. 2026-06-18 17:52 UTCEPSS rescore
  54. 2026-06-18 17:52 UTCEPSS rescore
  55. 2026-06-17 17:52 UTCEPSS rescore
  56. 2026-06-16 17:52 UTCEPSS rescore
  57. 2026-06-15 17:48 UTCEPSS rescore
  58. 2026-06-14 23:17 UTCEPSS rescore
  59. 2026-06-13 22:59 UTCEPSS rescore
  60. 2026-06-13 22:59 UTCEPSS rescore
  61. 2026-06-12 23:11 UTCEPSS rescore
  62. 2026-06-12 23:11 UTCEPSS rescore
  63. 2026-06-11 13:59 UTCEPSS rescore
  64. 2026-06-11 13:59 UTCEPSS rescore
  65. 2026-06-10 22:18 UTCEPSS rescore
  66. 2026-06-10 22:18 UTCEPSS rescore
  67. 2026-06-10 13:21 UTCEPSS rescore
  68. 2026-06-08 14:16 UTCEPSS rescore
  69. 2026-06-08 14:16 UTCEPSS rescore
  70. 2026-06-08 03:28 UTCOSV refresh
  71. 2026-06-07 15:24 UTCEPSS rescore
  72. 2026-06-07 15:24 UTCEPSS rescore
  73. 2026-06-06 13:46 UTCEPSS rescore
  74. 2026-06-06 13:46 UTCEPSS rescore
  75. 2026-06-05 22:46 UTCEPSS rescore

Frequently asked(5)

What is CVE-2024-56581?
CVE-2024-56581 is a high vulnerability published on December 27, 2024. In the Linux kernel, the following vulnerability has been resolved: btrfs: ref-verify: fix use-after-free after invalid ref action At btrfsreftree_mod() after we successfully inserted the new ref entry (local variable 'ref') into the respective block entry's rbtree (local variable 'be'), if we find…
When was CVE-2024-56581 disclosed?
CVE-2024-56581 was first published in the National Vulnerability Database on December 27, 2024, with the most recent update on August 5, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2024-56581 actively exploited?
CVE-2024-56581 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0% probability of exploitation in the next 30 days, which ranks it in the top 85.2% of all scored CVEs.
What is the CVSS score of CVE-2024-56581?
CVE-2024-56581 has a CVSS v3 base score of 7.8 (NVD).
How do I remediate CVE-2024-56581?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2024-56581, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2024-56581

Explore →

Is Your Infrastructure Affected by CVE-2024-56581?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.