Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2023-53087— drm/i915/active: Fix misuse of non-idle barriers as fence trackers

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于drm_i915_active错误使用非空闲屏障。

CVSS 7.8 · High EPSS 0.22% · P12

Possible ATT&CK Techniques 1 AI

T1068 · Exploitation for Privilege Escalation

Affected Version Matrix 12

VendorProduct Version RangeStatus
Linux Linux 311770173fac27845a3a83e2c16100a54d308f72< 5e784a7d07af42057c0576fb647b482f4cb0dc2c affected
311770173fac27845a3a83e2c16100a54d308f72< 6ab7d33617559cced63d467928f478ea5c459021 affected
311770173fac27845a3a83e2c16100a54d308f72< 5c7591b8574c52c56b3994c2fbef1a3a311b5715 affected
311770173fac27845a3a83e2c16100a54d308f72< 9159db27fb19bbf1c91b5c9d5285e66cc96cc5ff affected
311770173fac27845a3a83e2c16100a54d308f72< e0e6b416b25ee14716f3549e0cbec1011b193809 affected
5.5 affected
< 5.5 unaffected
5.10.176≤ 5.10.* unaffected
… +4 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2023-53087

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
drm/i915/active: Fix misuse of non-idle barriers as fence trackers
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: drm/i915/active: Fix misuse of non-idle barriers as fence trackers Users reported oopses on list corruptions when using i915 perf with a number of concurrently running graphics applications. Root cause analysis pointed at an issue in barrier processing code -- a race among perf open / close replacing active barriers with perf requests on kernel context and concurrent barrier preallocate / acquire operations performed during user context first pin / last unpin. When adding a request to a composite tracker, we try to reuse an existing fence tracker, already allocated and registered with that composite. The tracker we obtain may already track another fence, may be an idle barrier, or an active barrier. If the tracker we get occurs a non-idle barrier then we try to delete that barrier from a list of barrier tasks it belongs to. However, while doing that we don't respect return value from a function that performs the barrier deletion. Should the deletion ever fail, we would end up reusing the tracker still registered as a barrier task. Since the same structure field is reused with both fence callback lists and barrier tasks list, list corruptions would likely occur. Barriers are now deleted from a barrier tasks list by temporarily removing the list content, traversing that content with skip over the node to be deleted, then populating the list back with the modified content. Should that intentionally racy concurrent deletion attempts be not serialized, one or more of those may fail because of the list being temporary empty. Related code that ignores the results of barrier deletion was initially introduced in v5.4 by commit d8af05ff38ae ("drm/i915: Allow sharing the idle-barrier from other kernel requests"). However, all users of the barrier deletion routine were apparently serialized at that time, then the issue didn't exhibit itself. Results of git bisect with help of a newly developed igt@gem_barrier_race@remote-request IGT test indicate that list corruptions might start to appear after commit 311770173fac ("drm/i915/gt: Schedule request retirement when timeline idles"), introduced in v5.5. Respect results of barrier deletion attempts -- mark the barrier as idle only if successfully deleted from the list. Then, before proceeding with setting our fence as the one currently tracked, make sure that the tracker we've got is not a non-idle barrier. If that check fails then don't use that tracker but go back and try to acquire a new, usable one. v3: use unlikely() to document what outcome we expect (Andi), - fix bad grammar in commit description. v2: no code changes, - blame commit 311770173fac ("drm/i915/gt: Schedule request retirement when timeline idles"), v5.5, not commit d8af05ff38ae ("drm/i915: Allow sharing the idle-barrier from other kernel requests"), v5.4, - reword commit description. (cherry picked from commit 506006055769b10d1b2b4e22f636f3b45e0e9fc7)
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于drm_i915_active错误使用非空闲屏障。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux 311770173fac27845a3a83e2c16100a54d308f72 ~ 5e784a7d07af42057c0576fb647b482f4cb0dc2c -
Linux Linux 5.5 -

II. Public POCs for CVE-2023-53087

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-53087

请登录查看更多情报信息。

Patches & Fixes for CVE-2023-53087 (5)

Same Patch Batch · Linux · 2025-05-02 · 107 CVEs total

CVE-2023-53116 9.8 CRITICAL nvmet: avoid potential UAF in nvmet_req_complete()
CVE-2023-53083 9.8 CRITICAL nfsd: don't replace page in rq_pages if it's a continuation of last page
CVE-2023-53086 8.8 HIGH wifi: mt76: connac: do not check WED status for non-mmio devices
CVE-2025-37798 7.8 HIGH codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()
CVE-2023-53138 7.8 HIGH net: caif: Fix use-after-free in cfusbl_device_notify()
CVE-2023-53111 7.8 HIGH loop: Fix use-after-free issues
CVE-2023-53107 7.8 HIGH veth: Fix use after free in XDP_REDIRECT
CVE-2023-53102 7.8 HIGH ice: xsk: disable txq irq before flushing hw
CVE-2023-53100 7.8 HIGH ext4: fix WARNING in ext4_update_inline_data
CVE-2023-53094 7.8 HIGH tty: serial: fsl_lpuart: fix race on RX DMA shutdown
CVE-2023-53090 7.8 HIGH drm/amdkfd: Fix an illegal memory access
CVE-2023-53088 7.8 HIGH mptcp: fix UaF in listener shutdown
CVE-2023-53084 7.8 HIGH drm/shmem-helper: Remove another errant put in error path
CVE-2023-53080 7.8 HIGH xsk: Add missing overflow check in xdp_umem_reg
CVE-2023-53072 7.8 HIGH mptcp: use the workqueue to destroy unaccepted sockets
CVE-2023-53065 7.8 HIGH perf/core: Fix perf_output_begin parameter is incorrectly invoked in perf_event_bpf_output
CVE-2023-53057 7.8 HIGH Bluetooth: HCI: Fix global-out-of-bounds
CVE-2023-53052 7.8 HIGH cifs: fix use-after-free bug in refresh_cache_worker()
CVE-2023-53047 7.8 HIGH tee: amdtee: fix race condition in amdtee_open_session
CVE-2023-53039 7.8 HIGH HID: intel-ish-hid: ipc: Fix potential use-after-free in work function

Showing top 20 of 107 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2023-53087

No comments yet


Leave a comment