drm/vmwgfx: Unmap the surface before resetting it on a plane state
In the Linux kernel, the following vulnerability has been resolved: drm/vmwgfx: Unmap the surface before resetting it on a plane state Switch to a new plane state requires unreferencing of all held surfaces. In the work required for mob cursors the mapped surfaces started being cached but the variable indicating whether the surface is currently mapped was not being reset. This leads to crashes as the duplicated state, incorrectly, indicates the that surface is mapped even when no surface is present. That's because after unreferencing the surface it's perfectly possible for the plane to be backed by a bo instead of a surface. Reset the surface mapped flag when unreferencing the plane state surface to fix null derefs in cleanup. Fixes crashes in KDE KWin 6.0 on Wayland: Oops: 0000 [#1] PREEMPT SMP PTI CPU: 4 PID: 2533 Comm: kwin_wayland Not tainted 6.7.0-rc3-vmwgfx #2 Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 11/12/2020 RIP: 0010:vmw_du_cursor_plane_cleanup_fb+0x124/0x140 [vmwgfx] Code: 00 00 00 75 3a 48 83 c4 10 5b 5d c3 cc cc cc cc 48 8b b3 a8 00 00 00 48 c7 c7 99 90 43 c0 e8 93 c5 db ca 48 8b 83 a8 00 00 00 <48> 8b 78 28 e8 e3 f> RSP: 0018:ffffb6b98216fa80 EFLAGS: 00010246 RAX: 0000000000000000 RBX: ffff969d84cdcb00 RCX: 0000000000000027 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff969e75f21600 RBP: ffff969d4143dc50 R08: 0000000000000000 R09: ffffb6b98216f920 R10: 0000000000000003 R11: ffff969e7feb3b10 R12: 0000000000000000 R13: 0000000000000000 R14: 000000000000027b R15: ffff969d49c9fc00 FS: 00007f1e8f1b4180(0000) GS:ffff969e75f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000028 CR3: 0000000104006004 CR4: 00000000003706f0 Call Trace: <TASK> ? __die+0x23/0x70 ? page_fault_oops+0x171/0x4e0 ? exc_page_fault+0x7f/0x180 ? asm_exc_page_fault+0x26/0x30 ? vmw_du_cursor_plane_cleanup_fb+0x124/0x140 [vmwgfx] drm_atomic_helper_cleanup_planes+0x9b/0xc0 commit_tail+0xd1/0x130 drm_atomic_helper_commit+0x11a/0x140 drm_atomic_commit+0x97/0xd0 ? __pfx___drm_printfn_info+0x10/0x10 drm_atomic_helper_update_plane+0xf5/0x160 drm_mode_cursor_universal+0x10e/0x270 drm_mode_cursor_common+0x102/0x230 ? __pfx_drm_mode_cursor2_ioctl+0x10/0x10 drm_ioctl_kernel+0xb2/0x110 drm_ioctl+0x26d/0x4b0 ? __pfx_drm_mode_cursor2_ioctl+0x10/0x10 ? __pfx_drm_ioctl+0x10/0x10 vmw_generic_ioctl+0xa4/0x110 [vmwgfx] __x64_sys_ioctl+0x94/0xd0 do_syscall_64+0x61/0xe0 ? __x64_sys_ioctl+0xaf/0xd0 ? syscall_exit_to_user_mode+0x2b/0x40 ? do_syscall_64+0x70/0xe0 ? __x64_sys_ioctl+0xaf/0xd0 ? syscall_exit_to_user_mode+0x2b/0x40 ? do_syscall_64+0x70/0xe0 ? exc_page_fault+0x7f/0x180 entry_SYSCALL_64_after_hwframe+0x6e/0x76 RIP: 0033:0x7f1e93f279ed Code: 04 25 28 00 00 00 48 89 45 c8 31 c0 48 8d 45 10 c7 45 b0 10 00 00 00 48 89 45 b8 48 8d 45 d0 48 89 45 c0 b8 10 00 00 00 0f 05 <89> c2 3d 00 f0 ff f> RSP: 002b:00007ffca0faf600 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 000055db876ed2c0 RCX: 00007f1e93f279ed RDX: 00007ffca0faf6c0 RSI: 00000000c02464bb RDI: 0000000000000015 RBP: 00007ffca0faf650 R08: 000055db87184010 R09: 0000000000000007 R10: 000055db886471a0 R11: 0000000000000246 R12: 00007ffca0faf6c0 R13: 00000000c02464bb R14: 0000000000000015 R15: 00007ffca0faf790 </TASK> Modules linked in: snd_seq_dummy snd_hrtimer nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_ine> CR2: 0000000000000028 ---[ end trace 0000000000000000 ]--- RIP: 0010:vmw_du_cursor_plane_cleanup_fb+0x124/0x140 [vmwgfx] Code: 00 00 00 75 3a 48 83 c4 10 5b 5d c3 cc cc cc cc 48 8b b3 a8 00 00 00 48 c7 c7 99 90 43 c0 e8 93 c5 db ca 48 8b 83 a8 00 00 00 <48> 8b 78 28 e8 e3 f> RSP: 0018:ffffb6b98216fa80 EFLAGS: 00010246 RAX: 0000000000000000 RBX: ffff969d84cdcb00 RCX: 0000000000000027 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff969e75f21600 RBP: ffff969d4143 ---truncated---
- Yayın
- 1 May 2024
- Güncelleme
- 17 Haz 2026
- EPSS
- %0,2 · 12. yüzdelik
- CWE
- CWE-476
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
22
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,2
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- kısmi
Vulnrichment: CISA'nın karar ağacı girdileri.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- linux linux kernel5.19 ve sonrası · 6.6.24 öncesi
- linux linux kernel6.7 ve sonrası · 6.7.12 öncesi
- linux linux kernel6.8 ve sonrası · 6.8.3 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (Linux) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
Linux Linux
- 5.19etkilenir
- 485d98d472d53f9617ffdfba5e677ac29ad4fe20 ve sonrası · 0a23f95af7f28dae7c0f7c82578ca5e1a239d461 öncesietkilenir · git
- 485d98d472d53f9617ffdfba5e677ac29ad4fe20 ve sonrası · 105f72cc48c4c93f4578fcc61e06276471858e92 öncesietkilenir · git
- 485d98d472d53f9617ffdfba5e677ac29ad4fe20 ve sonrası · 75baad63c033b3b900d822bffbc96c9d3649bc75 öncesietkilenir · git
- 485d98d472d53f9617ffdfba5e677ac29ad4fe20 ve sonrası · 27571c64f1855881753e6f33c3186573afbab7ba öncesietkilenir · git
- 5.19 öncesietkilenmez · semver
- 6.6.24 ve sonrası · 6.6.* dahil öncesietkilenmez · semver
- 6.7.12 ve sonrası · 6.7.* dahil öncesietkilenmez · semver
- 6.8.3 ve sonrası · 6.8.* dahil öncesietkilenmez · semver
- 6.9 ve sonrasıetkilenmez · original_commit_for_fix
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | linux | tüm sürümler | — |
| Debian:13 | linux | 6.7.12-1 öncesi | 6.7.12-1 |
| Red Hat:rhel_eus:9.4::appstream | bpftool-debuginfo | 0:7.3.0-427.57.1.el9_4 öncesi | 0:7.3.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-debug-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-debug-devel | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-debug-devel-matched | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-devel | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-64k-devel-matched | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debug-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debug-devel | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debug-devel-matched | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debuginfo-common-aarch64 | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debuginfo-common-ppc64le | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debuginfo-common-s390x | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-debuginfo-common-x86_64 | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-devel | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-devel-matched | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-doc | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-rt-debug-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-rt-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-tools-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
| Red Hat:rhel_eus:9.4::appstream | kernel-zfcpdump-debuginfo | 0:5.14.0-427.57.1.el9_4 öncesi | 0:5.14.0-427.57.1.el9_4 |
+58
Aynı üründe
linux: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV89Hemen
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Hemen
- CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV83Hemen
- CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV77Bu hafta
- CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV77Bu hafta
- CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV77Bu hafta
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| Linux Linux | 0a23f95af7f28dae7c0f7c82578ca5e1a239d461 | Üretici (CNA) |
| Linux Linux | 105f72cc48c4c93f4578fcc61e06276471858e92 | Üretici (CNA) |
| Linux Linux | 27571c64f1855881753e6f33c3186573afbab7ba | Üretici (CNA) |
| Linux Linux | 75baad63c033b3b900d822bffbc96c9d3649bc75 | Üretici (CNA) |
| debian:linux | 6.7.12-1 · Debian:13 | Paket deposu (OSV) |
| red hat:bpftool-debuginfo | 0:7.3.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-debug-debuginfo | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-debug-devel | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-debug-devel-matched | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-debuginfo | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-devel | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-64k-devel-matched | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-debug-debuginfo | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-debug-devel | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-debug-devel-matched | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-debuginfo | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| red hat:kernel-debuginfo-common-aarch64 | 0:5.14.0-427.57.1.el9_4 · Red Hat:rhel_eus:9.4::appstream | Paket deposu (OSV) |
| suse:kernel-rt | 6.4.0-9.1 · SUSE:Linux Micro 6.0 | Paket deposu (OSV) |
| suse:kernel-source-rt | 6.4.0-9.1 · SUSE:Linux Micro 6.0 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
Gece hesaplanan ilişki yok.
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yok
- Bütünlük
- yok
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Yok
- Bütünlük etkisi
- Yok
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-476 · NULL Pointer DereferenceCVSS vektörü
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Bu CWE için MITRE'de CAPEC/ATT&CK eşlemesi yok.
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
385 binden fazla zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinDeğişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- git.kernel.org/stable/c/0a23f95af7f28dae7c0f7c82578ca5e1a239d461
- git.kernel.org/stable/c/105f72cc48c4c93f4578fcc61e06276471858e92
- git.kernel.org/stable/c/27571c64f1855881753e6f33c3186573afbab7ba
- git.kernel.org/stable/c/75baad63c033b3b900d822bffbc96c9d3649bc75
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.