{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-89902 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-89902 is a high-severity vulnerability in Linux, published on 16 Sep 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-89902 and fix it if it is affected.\n\nWhat it is: CVE-2026-89902 is a high-severity vulnerability in Linux, published on 16 Sep 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-89902 in the wild and no public exploit code.\n\nAffected product: Linux. 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-89902/ (Markdown: https://insights.sbomify.com/CVE-2026-89902/index.md)","id":"CVE-2026-89902","markdown":"https://insights.sbomify.com/CVE-2026-89902/index.md","name":"CVE-2026-89902","record":{"aliases":["AZL-101619","BELL-CVE-2026-89902","DEBIAN-CVE-2026-89902","GHSA-w2c5-6c3v-2hf7","UBUNTU-CVE-2026-89902"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["privilege_escalation","security_bypass"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Linux kernel","requires_auth":"low_privilege","summary":"A local attacker can trigger a preempt count underflow via a userspace breakpoint, bypassing cgroup socket policies and potentially escalating privileges.","user_interaction":"not_required","vuln_class":"privilege_escalation"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[],"cvss":{"score":7.8,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"},"cwes":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nLoongArch: Avoid preempt count underflow without probe\n\nLoongArch uses break 11 for the breakpoint placed after an instruction\nthat Kprobes executes out of line. Since userspace can issue the same\nbreak instruction, do_bp() can reach kprobe_singlestep_handler() when\nthere is no current probe.\n\nThe handler actually returns false in this case, but it first calls\npreempt_enable_no_resched(). The corresponding preempt_disable() is done\nby kprobe_breakpoint_handler() on a real Kprobe hit, so it has not run\nhere. As a result, an ordinary userspace breakpoint (code 11) underflows\nthe current task's preempt count.\n\nThis also makes in_interrupt() return true until the task schedules. One\nvisible consequence is the socket cgroup attribution: cgroup_sk_alloc()\ntreats the allocation as interrupt context and assigns the socket to the\nroot cgroup. A socket opened from the SIGTRAP handler can then avoid a\nBPF_CGROUP_INET_SOCK_CREATE policy attached to the task's own cgroup.\n\nReturn as soon as kprobe_running() reports no active probe.\n\nThe same check has appeared in [PATCH v10 2/4] of the original LoongArch\nKprobes series, but was dropped before the feature reached mainline.","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":"LoongArch: Avoid preempt count underflow without probe","id":"CVE-2026-89902","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"privilege_escalation","year":"2026"},"n_packages":0,"n_references":5,"next":{"headline":"LoongArch: Do not save/restore percpu base register in rethook trampoline","id":"CVE-2026-89903"},"packages":[],"prev":{"headline":"media: airspy: use vb2_video_unregister_device() on disconnect to fix NULL deref","id":"CVE-2026-89901"},"products":["Linux"],"published":"2026-09-16","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-10-19","vendors":["Linux"]},"summary":"A local attacker can trigger a preempt count underflow via a userspace breakpoint, bypassing cgroup socket policies and potentially escalating privileges.","url":"https://insights.sbomify.com/CVE-2026-89902/"}