Skip to main content

CVE-2022-48662: Vulnerability in Linux Linux

High
VulnerabilityCVE-2022-48662cvecve-2022-48662
Published: Sun Apr 28 2024 (04/28/2024, 13:01:31 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: drm/i915/gem: Really move i915_gem_context.link under ref protection i915_perf assumes that it can use the i915_gem_context reference to protect its i915->gem.contexts.list iteration. However, this requires that we do not remove the context from the list until after we drop the final reference and release the struct. If, as currently, we remove the context from the list during context_close(), the link.next pointer may be poisoned while we are holding the context reference and cause a GPF: [ 4070.573157] i915 0000:00:02.0: [drm:i915_perf_open_ioctl [i915]] filtering on ctx_id=0x1fffff ctx_id_mask=0x1fffff [ 4070.574881] general protection fault, probably for non-canonical address 0xdead000000000100: 0000 [#1] PREEMPT SMP [ 4070.574897] CPU: 1 PID: 284392 Comm: amd_performance Tainted: G E 5.17.9 #180 [ 4070.574903] Hardware name: Intel Corporation NUC7i5BNK/NUC7i5BNB, BIOS BNKBL357.86A.0052.2017.0918.1346 09/18/2017 [ 4070.574907] RIP: 0010:oa_configure_all_contexts.isra.0+0x222/0x350 [i915] [ 4070.574982] Code: 08 e8 32 6e 10 e1 4d 8b 6d 50 b8 ff ff ff ff 49 83 ed 50 f0 41 0f c1 04 24 83 f8 01 0f 84 e3 00 00 00 85 c0 0f 8e fa 00 00 00 <49> 8b 45 50 48 8d 70 b0 49 8d 45 50 48 39 44 24 10 0f 85 34 fe ff [ 4070.574990] RSP: 0018:ffffc90002077b78 EFLAGS: 00010202 [ 4070.574995] RAX: 0000000000000002 RBX: 0000000000000002 RCX: 0000000000000000 [ 4070.575000] RDX: 0000000000000001 RSI: ffffc90002077b20 RDI: ffff88810ddc7c68 [ 4070.575004] RBP: 0000000000000001 R08: ffff888103242648 R09: fffffffffffffffc [ 4070.575008] R10: ffffffff82c50bc0 R11: 0000000000025c80 R12: ffff888101bf1860 [ 4070.575012] R13: dead0000000000b0 R14: ffffc90002077c04 R15: ffff88810be5cabc [ 4070.575016] FS: 00007f1ed50c0780(0000) GS:ffff88885ec80000(0000) knlGS:0000000000000000 [ 4070.575021] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 4070.575025] CR2: 00007f1ed5590280 CR3: 000000010ef6f005 CR4: 00000000003706e0 [ 4070.575029] Call Trace: [ 4070.575033] <TASK> [ 4070.575037] lrc_configure_all_contexts+0x13e/0x150 [i915] [ 4070.575103] gen8_enable_metric_set+0x4d/0x90 [i915] [ 4070.575164] i915_perf_open_ioctl+0xbc0/0x1500 [i915] [ 4070.575224] ? asm_common_interrupt+0x1e/0x40 [ 4070.575232] ? i915_oa_init_reg_state+0x110/0x110 [i915] [ 4070.575290] drm_ioctl_kernel+0x85/0x110 [ 4070.575296] ? update_load_avg+0x5f/0x5e0 [ 4070.575302] drm_ioctl+0x1d3/0x370 [ 4070.575307] ? i915_oa_init_reg_state+0x110/0x110 [i915] [ 4070.575382] ? gen8_gt_irq_handler+0x46/0x130 [i915] [ 4070.575445] __x64_sys_ioctl+0x3c4/0x8d0 [ 4070.575451] ? __do_softirq+0xaa/0x1d2 [ 4070.575456] do_syscall_64+0x35/0x80 [ 4070.575461] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 4070.575467] RIP: 0033:0x7f1ed5c10397 [ 4070.575471] Code: 3c 1c e8 1c ff ff ff 85 c0 79 87 49 c7 c4 ff ff ff ff 5b 5d 4c 89 e0 41 5c c3 66 0f 1f 84 00 00 00 00 00 b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a9 da 0d 00 f7 d8 64 89 01 48 [ 4070.575478] RSP: 002b:00007ffd65c8d7a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 [ 4070.575484] RAX: ffffffffffffffda RBX: 0000000000000006 RCX: 00007f1ed5c10397 [ 4070.575488] RDX: 00007ffd65c8d7c0 RSI: 0000000040106476 RDI: 0000000000000006 [ 4070.575492] RBP: 00005620972f9c60 R08: 000000000000000a R09: 0000000000000005 [ 4070.575496] R10: 000000000000000d R11: 0000000000000246 R12: 000000000000000a [ 4070.575500] R13: 000000000000000d R14: 0000000000000000 R15: 00007ffd65c8d7c0 [ 4070.575505] </TASK> [ 4070.575507] Modules linked in: nls_ascii(E) nls_cp437(E) vfat(E) fat(E) i915(E) x86_pkg_temp_thermal(E) intel_powerclamp(E) crct10dif_pclmul(E) crc32_pclmul(E) crc32c_intel(E) aesni_intel(E) crypto_simd(E) intel_gtt(E) cryptd(E) ttm(E) rapl(E) intel_cstate(E) drm_kms_helper(E) cfbfillrect(E) syscopyarea(E) cfbimgblt(E) intel_uncore(E) sysfillrect(E) mei_me(E) sysimgblt(E) i2c_i801(E) fb_sys_fops(E) mei(E) intel_pch_thermal(E) i2c_smbus ---truncated---

AI-Powered Analysis

AILast updated: 07/03/2025, 03:11:15 UTC

Technical Analysis

CVE-2022-48662 is a high-severity vulnerability in the Linux kernel's Intel i915 graphics driver subsystem, specifically within the Direct Rendering Manager (DRM) component. The flaw arises from improper handling of the i915_gem_context linked list during context closure. The i915_perf component assumes that the i915_gem_context reference protects iteration over the gem.contexts.list. However, the context is removed from this list prematurely during context_close(), before the final reference is dropped and the structure is released. This premature removal can poison the link.next pointer, leading to a general protection fault (GPF) due to dereferencing invalid or non-canonical memory addresses. The vulnerability manifests as a kernel crash (GPF) triggered by ioctl calls related to performance monitoring on Intel integrated graphics hardware, as evidenced by the detailed kernel stack trace and register dumps. The root cause is a race condition and use-after-free scenario in the i915 driver’s context management, classified under CWE-119 (Improper Restriction of Operations within the Bounds of a Memory Buffer). Exploitation requires local privileges (AV:L), low attack complexity (AC:L), and privileges (PR:L), but no user interaction (UI:N). The impact includes full confidentiality, integrity, and availability compromise (C:H/I:H/A:H), as a kernel crash can lead to denial of service and potentially privilege escalation or arbitrary code execution if exploited further. The vulnerability affects specific Linux kernel versions containing the vulnerable commit (f8246cf4d9a9...), and has been patched in recent kernel updates. No known exploits are currently in the wild, but the high CVSS score (7.8) and the critical nature of kernel vulnerabilities warrant immediate attention.

Potential Impact

For European organizations, this vulnerability poses a significant risk, especially those relying on Linux-based systems with Intel integrated graphics hardware, such as desktops, laptops, and servers running workloads that utilize the i915 driver. The vulnerability can lead to kernel crashes causing denial of service, disrupting critical services and operations. In environments where Linux is used for sensitive workloads, including financial institutions, research centers, and governmental agencies, exploitation could lead to data breaches or system compromise if combined with other attack vectors. The requirement for local privileges limits remote exploitation, but insider threats or compromised user accounts could trigger the vulnerability. Additionally, organizations using performance monitoring tools or custom software interfacing with the i915 driver are at higher risk. The disruption caused by kernel panics can affect availability of services and potentially lead to data corruption or loss. Given the widespread use of Linux in European IT infrastructure, the vulnerability could have broad operational impacts if not mitigated promptly.

Mitigation Recommendations

European organizations should prioritize updating their Linux kernels to versions that include the patch fixing CVE-2022-48662. Kernel updates from trusted distributors (e.g., Debian, Ubuntu, Red Hat, SUSE) should be applied promptly. For systems where immediate patching is not feasible, organizations should restrict access to systems with Intel integrated graphics to trusted users only, minimizing the risk of local exploitation. Monitoring and auditing of kernel logs for signs of i915-related crashes or suspicious ioctl calls can help detect attempted exploitation. Additionally, organizations should review and harden user privilege management to prevent unauthorized local access. Disabling or limiting the use of performance monitoring features that interact with i915_perf may reduce exposure. For critical environments, consider deploying kernel live patching solutions to apply fixes without downtime. Finally, maintain up-to-date backups and incident response plans to quickly recover from potential disruptions caused by exploitation attempts.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-02-25T13:44:28.319Z
Cisa Enriched
true
Cvss Version
3.1
State
PUBLISHED

Threat ID: 682d982ec4522896dcbe5df9

Added to database: 5/21/2025, 9:09:02 AM

Last enriched: 7/3/2025, 3:11:15 AM

Last updated: 8/18/2025, 6:56:52 AM

Views: 11

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats