{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-43338 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-43338 is a medium-severity denial of service vulnerability in Linux kernel, published on 8 May 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-43338 and fix it if it is affected.\n\nWhat it is: CVE-2026-43338 is a medium-severity denial of service vulnerability in Linux kernel, published on 8 May 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-43338 in the wild and no public exploit code.\n\nAffected product: Linux kernel. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-43338/ (Markdown: https://insights.sbomify.com/CVE-2026-43338/index.md)","id":"CVE-2026-43338","markdown":"https://insights.sbomify.com/CVE-2026-43338/index.md","name":"CVE-2026-43338","record":{"aliases":["AZL-86115","BELL-CVE-2026-43338","DEBIAN-CVE-2026-43338","GHSA-5h67-3fpf-pw2r","ROOT-OS-DEBIAN-11-CVE-2026-43338","ROOT-OS-DEBIAN-12-CVE-2026-43338","ROOT-OS-UBUNTU-2204-CVE-2026-43338","ROOT-OS-UBUNTU-2404-CVE-2026-43338","UBUNTU-CVE-2026-43338"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Linux kernel btrfs","requires_auth":"low_privilege","summary":"A local attacker can trigger a transaction abort and denial of service in the Linux kernel btrfs filesystem by exhausting space during qgroup operations.","user_interaction":"not_required","vuln_class":"denial_of_service"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[{"product":"linux_kernel","vendor":"linux"}],"cvss":{"score":5.5,"severity":"medium","source":"nvd","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","version":"3.1"},"cwes":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: reserve enough transaction items for qgroup ioctls\n\nCurrently our qgroup ioctls don't reserve any space, they just do a\ntransaction join, which does not reserve any space, neither for the quota\ntree updates nor for the delayed refs generated when updating the quota\ntree. The quota root uses the global block reserve, which is fine most of\nthe time since we don't expect a lot of updates to the quota root, or to\nbe too close to -ENOSPC such that other critical metadata updates need to\nresort to the global reserve.\n\nHowever this is not optimal, as not reserving proper space may result in a\ntransaction abort due to not reserving space for delayed refs and then\nabusing the use of the global block reserve.\n\nFor example, the following reproducer (which is unlikely to model any\nreal world use case, but just to illustrate the problem), triggers such a\ntransaction abort due to -ENOSPC when running delayed refs:\n\n  $ cat test.sh\n  #!/bin/bash\n\n  DEV=/dev/nullb0\n  MNT=/mnt/nullb0\n\n  umount $DEV \u0026\u003e /dev/null\n  # Limit device to 1G so that it's much faster to reproduce the issue.\n  mkfs.btrfs -f -b 1G $DEV\n  mount -o commit=600 $DEV $MNT\n\n  fallocate -l 800M $MNT/filler\n  btrfs quota enable $MNT\n\n  for ((i = 1; i \u003c= 400000; i++)); do\n      btrfs qgroup create 1/$i $MNT\n  done\n\n  umount $MNT\n\nWhen running this, we can see in dmesg/syslog that a transaction abort\nhappened:\n\n  [436.490] BTRFS error (device nullb0): failed to run delayed ref for logical 30408704 num_bytes 16384 type 176 action 1 ref_mod 1: -28\n  [436.493] ------------[ cut here ]------------\n  [436.494] BTRFS: Transaction aborted (error -28)\n  [436.495] WARNING: fs/btrfs/extent-tree.c:2247 at btrfs_run_delayed_refs+0xd9/0x110 [btrfs], CPU#4: umount/2495372\n  [436.497] Modules linked in: btrfs loop (...)\n  [436.508] CPU: 4 UID: 0 PID: 2495372 Comm: umount Tainted: G        W           6.19.0-rc8-btrfs-next-225+ #1 PREEMPT(full)\n  [436.510] Tainted: [W]=WARN\n  [436.511] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.2-0-gea1b7a073390-prebuilt.qemu.org 04/01/2014\n  [436.513] RIP: 0010:btrfs_run_delayed_refs+0xdf/0x110 [btrfs]\n  [436.514] Code: 0f 82 ea (...)\n  [436.518] RSP: 0018:ffffd511850b7d78 EFLAGS: 00010292\n  [436.519] RAX: 00000000ffffffe4 RBX: ffff8f120dad37e0 RCX: 0000000002040001\n  [436.520] RDX: 0000000000000002 RSI: 00000000ffffffe4 RDI: ffffffffc090fd80\n  [436.522] RBP: 0000000000000000 R08: 0000000000000001 R09: ffffffffc04d1867\n  [436.523] R10: ffff8f18dc1fffa8 R11: 0000000000000003 R12: ffff8f173aa89400\n  [436.524] R13: 0000000000000000 R14: ffff8f173aa89400 R15: 0000000000000000\n  [436.526] FS:  00007fe59045d840(0000) GS:ffff8f192e22e000(0000) knlGS:0000000000000000\n  [436.527] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n  [436.528] CR2: 00007fe5905ff2b0 CR3: 000000060710a002 CR4: 0000000000370ef0\n  [436.530] Call Trace:\n  [436.530]  \u003cTASK\u003e\n  [436.530]  btrfs_commit_transaction+0x73/0xc00 [btrfs]\n  [436.531]  ? btrfs_attach_transaction_barrier+0x1e/0x70 [btrfs]\n  [436.532]  sync_filesystem+0x7a/0x90\n  [436.533]  generic_shutdown_super+0x28/0x180\n  [436.533]  kill_anon_super+0x12/0x40\n  [436.534]  btrfs_kill_super+0x12/0x20 [btrfs]\n  [436.534]  deactivate_locked_super+0x2f/0xb0\n  [436.534]  cleanup_mnt+0xea/0x180\n  [436.535]  task_work_run+0x58/0xa0\n  [436.535]  exit_to_user_mode_loop+0xed/0x480\n  [436.536]  ? __x64_sys_umount+0x68/0x80\n  [436.536]  do_syscall_64+0x2a5/0xf20\n  [436.537]  entry_SYSCALL_64_after_hwframe+0x76/0x7e\n  [436.537] RIP: 0033:0x7fe5906b6217\n  [436.538] Code: 0d 00 f7 (...)\n  [436.540] RSP: 002b:00007ffcd87a61f8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6\n  [436.541] RAX: 0000000000000000 RBX: 00005618b9ecadc8 RCX: 00007fe5906b6217\n  [436.541] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00005618b9ecb100\n  [436.542] RBP: 0000000000000000 R08: 00007ffcd87a4fe0 R09: 00000000ffffffff\n  [436.544] R10: 0000000000000103 R11: \n---truncated---","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"btrfs: reserve enough transaction items for qgroup ioctls","id":"CVE-2026-43338","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":"linux:linux_kernel","products":["linux:linux_kernel"],"type":"denial_of_service","year":"2026"},"n_packages":0,"n_references":5,"next":{"headline":"ipv6: prevent possible UaF in addrconf_permanent_addr()","id":"CVE-2026-43339"},"packages":[],"prev":{"headline":"drm/amd/display: Fix NULL pointer dereference in dcn401_init_hw()","id":"CVE-2026-43337"},"products":["Linux"],"published":"2026-05-08","related":[{"cvss_score":8.8,"headline":"Linux Kernel Out-of-Bounds Write","id":"CVE-2026-53266","kev_date_added":"2026-09-18","published":"2026-06-25"},{"cvss_score":8.8,"headline":"Linux Kernel Improper Input Validation","id":"CVE-2013-6282","kev_date_added":"2022-09-15","published":"2013-11-19"},{"cvss_score":8.4,"headline":"Linux Kernel Heap-Based Buffer Overflow","id":"CVE-2022-0185","kev_date_added":"2024-08-21","published":"2022-02-11"},{"cvss_score":8.4,"headline":"Linux Kernel Privilege Escalation","id":"CVE-2013-2094","kev_date_added":"2022-09-15","published":"2013-05-14"},{"cvss_score":7.8,"headline":"Linux Kernel Unspecified","id":"CVE-2026-53362","kev_date_added":"2026-08-27","published":"2026-07-04"},{"cvss_score":7.8,"headline":"Linux Kernel Missing Initialization of a Variable","id":"CVE-2026-46300","kev_date_added":"2026-10-28","published":"2026-05-23"},{"cvss_score":7.8,"headline":"Linux Kernel Race Condition","id":"CVE-2025-39964","kev_date_added":"2026-09-18","published":"2025-10-13"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-10-21","vendors":["Linux"]},"summary":"A local attacker can trigger a transaction abort and denial of service in the Linux kernel btrfs filesystem by exhausting space during qgroup operations.","url":"https://insights.sbomify.com/CVE-2026-43338/"}