目標達成 すべての支援者に感謝 — 100%達成しました!

目標: 1000 CNY · 調達済み: 1336 CNY

100%

CVE-2026-74568— KVM arm64 vgic LPI释放与重新注册竞争漏洞

AI Predicted 6.5 Difficulty: Moderate

Possible ATT&CK Techniques 1AI

T1203 · Exploitation for Client Execution
新しい脆弱性情報の通知を購読するログインして購読

I. CVE-2026-74568の基本情報

脆弱性情報

脆弱性についてご質問がありますか?Shenlongの分析が参考になるかご確認ください!
Shenlongの10の質問を表示 ↗

高度な大規模言語モデル技術を使用していますが、出力には不正確または古い情報が含まれる可能性があります。Shenlongはデータの正確性を確保するよう努めていますが、実際の状況に基づいて検証・判断してください。

脆弱性タイトル
KVM: arm64: vgic: Fix race between LPI release and re-registration
ソース: CVE Program / CVE List V5
脆弱性説明
In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: vgic: Fix race between LPI release and re-registration Fix a potential race between decrementing an LPI's reference count and evicting that structure from the LPI xarray. LPI structures are maintained in the VGIC LPI xarray (dist->lpi_xa). When the reference count of an LPI structure drops to zero, vgic_release_lpi_locked() removes the structure from the xarray and frees it under the xarray lock. However, the release of an LPI can race with a concurrent LPI re-registration with the same INTID via vgic_add_lpi() on another CPU, since the reference count drop and the xarray eviction are not performed in a single atomic step. This can happen e.g. if the guest issues a DISCARD while the LPI is still referenced from a vCPU's active-pending list (ap_list), and the same INTID is re-mapped via MAPTI. Particularly, vgic_release_lpi_locked() is called from two distinct paths: direct release via vgic_put_irq(), and deferred release via vgic_release_deleted_lpis(). During direct release, the issue can result in deleting a newly registered LPI from the xarray: CPU0 (Releasing LPI) CPU1 (Adding new LPI) ==================== ===================== vgic_put_irq() __vgic_put_irq() refcount_dec_and_test() vgic_add_lpi() xa_lock_irqsave() old_irq = xa_load(.., intid) vgic_try_get_irq_ref(old_irq) == false new IRQ inserted --> __xa_store(.., intid, ..) xa_unlock_irqrestore() xa_lock_irqsave(); vgic_release_lpi_locked() __xa_erase(.., irq->intid) <-- BUG: new IRQ is erased kfree_rcu(old_irq) During the deferred release path, the old IRQ can be leaked: CPU0 (Releasing LPI) CPU1 (Adding new LPI) ==================== ===================== vgic_put_irq_norelease() __vgic_put_irq() refcount_dec_and_test() irq->pending_release = true vgic_add_lpi() xa_lock_irqsave() old_irq = xa_load(.., intid) vgic_try_get_irq_ref(oldirq) == false BUG: old IRQ overwritten --> __xa_store(.., intid, ..) xa_unlock_irqrestore() vgic_release_deleted_lpis() xa_lock_irqsave() xa_for_each() { .. } <-- old IRQ with pending_release = true is gone, so it cannot be released To fix the direct release path, move the reference count drop inside the xarray lock, making sure that vgic_add_lpi() never encounters the to-be-released LPI. In the deferred release path, the refcount drop must happen under a raw spinlock, so the xarray lock cannot be grabbed, and the same solution does not work. Instead, update vgic_add_lpi(), so that if it evicts an LPI from the xarray, it takes on the responsibility of freeing it. Consequently, an LPI may now be freed concurrently after a deferred release drops the refcount, so accessing the pending_release field is no longer safe from use-after-free. Delete all uses of the flag, and update vgic_release_deleted_lpis() to identify orphaned LPIs purely based on their refcount.
ソース: CVE Program / CVE List V5
CVSS情報
N/A
ソース: CVE Program / CVE List V5
脆弱性タイプ
N/A
ソース: CVE Program / CVE List V5

影響を受ける製品

ベンダープロダクト影響を受けるバージョンCPE購読
LinuxLinux 3a08a6ca7c373198c84e2a8c025c395ee966ff8a ~ 292e80a159aa88635bf668a7212cfdf526b8bd52 -
LinuxLinux 6.17 -

II. CVE-2026-74568の公開POC

#POC説明ソースリンクShenlongリンク
AI生成POCプレミアム

公開POCは見つかりませんでした。

ログインしてAI POCを生成

III. CVE-2026-74568のインテリジェンス情報

登录查看更多情报信息。

CVE-2026-74568 补丁与修复 (2)

Same Patch Batch · Linux · 2026-08-15 · 848 CVEs total

CVE-2026-72255netfilter: nf_queue: pin bridge device while NFQUEUE holds fake dst
CVE-2026-72268fbdev: tdfxfb: fix potential memory leak in tdfxfb_probe()
CVE-2026-72267fbdev: carminefb: fix potential memory leak in alloc_carmine_fb()
CVE-2026-72266fbdev: vesafb: fix memory leak in vesafb_probe()
CVE-2026-72265fbdev: nvidia: fix potential memory leak in nvidiafb_probe()
CVE-2026-72264fbdev: tridentfb: fix potential memory leak in trident_pci_probe()
CVE-2026-72262ASoC: SOF: ipc3-control: Fix heap overflow in bytes_ext put/get
CVE-2026-72263ASoC: SOF: topology: fix memory leak in snd_sof_load_topology
CVE-2026-72261ASoC: SOF: ipc3-control: Validate size in snd_sof_update_control
CVE-2026-72260ASoC: mediatek: mt8192: Check runtime resume during probe
CVE-2026-72259ASoC: mediatek: mt8192: Release reserved memory on cleanup
CVE-2026-72258ASoC: mediatek: mt8183: Release reserved memory on cleanup
CVE-2026-72256netfilter: xt_cluster: reject template conntracks in hash match
CVE-2026-72257ASoC: qcom: q6apm: fix NULL pointer dereference in graph_callback
CVE-2026-72245gpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path
CVE-2026-72248netfilter: flowtable: support IPIP tunnel with direct xmit
CVE-2026-72247netfilter: nf_conncount: fix zone comparison in tuple dedup
CVE-2026-72246netfilter: flowtable: use correct direction to set up tunnel route
CVE-2026-72249netfilter: flowtable: use dst in this direction when pushing IPIP header
CVE-2026-72244gpu/buddy: bail out of try_harder when alignment cannot be honoured

Showing 20 of 848 CVEs. View all on vendor page →

IV. 関連脆弱性

V. CVE-2026-74568へのコメント

まだコメントはありません


コメントを残す