{
    "dataType": "CVE_RECORD",
    "cveMetadata": {
        "cveId": "CVE-2024-26598",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-02-19T14:20:24.128Z",
        "datePublished": "2024-02-23T14:46:26.672Z",
        "dateUpdated": "2026-08-05T11:26:10.792Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T11:26:10.792Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache\n\nThere is a potential UAF scenario in the case of an LPI translation\ncache hit racing with an operation that invalidates the cache, such\nas a DISCARD ITS command. The root of the problem is that\nvgic_its_check_cache() does not elevate the refcount on the vgic_irq\nbefore dropping the lock that serializes refcount changes.\n\nHave vgic_its_check_cache() raise the refcount on the returned vgic_irq\nand add the corresponding decrement after queueing the interrupt."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
                        "baseScore": 8.8,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:L - Exploitation requires running code inside a KVM/arm64 guest (to issue ITS DISCARD/MAPD commands via GITS_CWRITER) or holding local /dev/kvm access to drive KVM_SIGNAL_MSI, so the attacker needs local access to the host or a VM on it. No purely remote network path can drive both sides of the race.\nAC:L - The attacker controls both sides of the race — one vCPU thread issues DISCARD/MAPD ITS commands while another CPU (vhost worker via irqfd, or a userspace KVM_SIGNAL_MSI thread) performs the cache lookup — and can prime the cache deterministically with an INT command and repeat the loop indefinitely without any detection or rate limit.\nPR:L - The attacker only needs to be an unprivileged guest (or a local unprivileged user with /dev/kvm access, which is standard on virtualization hosts); no host root or special capability is required, and ITS emulation is created by default by QEMU's virt machine with GICv3.\nUI:N - The entire sequence — MAPTI/INT to populate the translation cache, MSI generation, and the DISCARD command — is driven autonomously by the attacker from inside the guest. No victim action is needed.\nS:C - The vulnerable component is KVM's vGIC ITS emulation, whose security authority is the guest VM, but the corrupted memory is host kernel heap; a guest crossing into host kernel memory is a guest-to-host boundary violation.\nC:H - The freed vgic_irq can be reallocated with attacker-controlled data and is then read back (intid, priority, group, config, vcpu/target_vcpu pointers) and re-linked into live host kernel lists, giving an arbitrary-pointer dereference and kernel memory disclosure primitive.\nI:H - The stale pointer is written through — spinlock acquire, pending_latch store, kref increment, and list_add_tail writing both into the freed chunk and storing its address into the live ap_list — a use-after-free write primitive leveragable for control-flow hijack and host privilege escalation.\nA:H - Even without successful heap grooming, the use-after-free corrupts the vgic ap_list and LPI list, reliably producing kernel oops, list-corruption BUG, or lock-up, taking down the entire host and all co-resident VMs."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "arch/arm64/kvm/vgic/vgic-its.c"
                    ],
                    "versions": [
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "d04acadb6490aa3314f9c9e087691e55de153b88",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "ba7be666740847d967822bed15500656b26bc703",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "12c2759ab1343c124ed46ba48f27bd1ef5d2dff4",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "dba788e25f05209adf2b0175eb1691dc89fb1ba6",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "65b201bf3e9af1b0254243a5881390eda56f72d1",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "dd3956a1b3dd11f46488c928cb890d6937d1ca80",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "6211753fdfd05af9e08f54c8d0ba3ee516034878",
                            "lessThan": "ad362fe07fecf0aba839ff2cc59a3617bd42c33f",
                            "status": "affected",
                            "versionType": "git"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "arch/arm64/kvm/vgic/vgic-its.c"
                    ],
                    "versions": [
                        {
                            "version": "3.11",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "3.11",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.4.269",
                            "lessThanOrEqual": "5.4.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.10.209",
                            "lessThanOrEqual": "5.10.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.148",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.75",
                            "lessThanOrEqual": "6.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.14",
                            "lessThanOrEqual": "6.6.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.7.2",
                            "lessThanOrEqual": "6.7.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.8",
                            "lessThanOrEqual": "*",
                            "status": "unaffected",
                            "versionType": "original_commit_for_fix"
                        }
                    ]
                }
            ],
            "cpeApplicability": [
                {
                    "nodes": [
                        {
                            "operator": "OR",
                            "negate": false,
                            "cpeMatch": [
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "5.4.269"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "5.10.209"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "5.15.148"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "6.1.75"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "6.6.14"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "6.7.2"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "3.11",
                                    "versionEndExcluding": "6.8"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/d04acadb6490aa3314f9c9e087691e55de153b88"
                },
                {
                    "url": "https://git.kernel.org/stable/c/ba7be666740847d967822bed15500656b26bc703"
                },
                {
                    "url": "https://git.kernel.org/stable/c/12c2759ab1343c124ed46ba48f27bd1ef5d2dff4"
                },
                {
                    "url": "https://git.kernel.org/stable/c/dba788e25f05209adf2b0175eb1691dc89fb1ba6"
                },
                {
                    "url": "https://git.kernel.org/stable/c/65b201bf3e9af1b0254243a5881390eda56f72d1"
                },
                {
                    "url": "https://git.kernel.org/stable/c/dd3956a1b3dd11f46488c928cb890d6937d1ca80"
                },
                {
                    "url": "https://git.kernel.org/stable/c/ad362fe07fecf0aba839ff2cc59a3617bd42c33f"
                }
            ],
            "title": "KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2024-08-02T00:07:19.689Z"
                },
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "https://git.kernel.org/stable/c/d04acadb6490aa3314f9c9e087691e55de153b88",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/ba7be666740847d967822bed15500656b26bc703",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/12c2759ab1343c124ed46ba48f27bd1ef5d2dff4",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/dba788e25f05209adf2b0175eb1691dc89fb1ba6",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/65b201bf3e9af1b0254243a5881390eda56f72d1",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/dd3956a1b3dd11f46488c928cb890d6937d1ca80",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/ad362fe07fecf0aba839ff2cc59a3617bd42c33f",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00016.html",
                        "tags": [
                            "x_transferred"
                        ]
                    }
                ]
            },
            {
                "problemTypes": [
                    {
                        "descriptions": [
                            {
                                "type": "CWE",
                                "cweId": "CWE-416",
                                "lang": "en",
                                "description": "CWE-416 Use After Free"
                            }
                        ]
                    }
                ],
                "affected": [
                    {
                        "vendor": "linux",
                        "product": "linux_kernel",
                        "cpes": [
                            "cpe:2.3:o:linux:linux_kernel:-:*:*:*:*:*:*:*"
                        ],
                        "defaultStatus": "unknown",
                        "versions": [
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "d04acadb6490",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "ba7be6667408",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "12c2759ab134",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "dba788e25f05",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "65b201bf3e9a",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "dd3956a1b3dd",
                                "versionType": "custom"
                            },
                            {
                                "version": "1da177e4c3f4",
                                "status": "affected",
                                "lessThan": "ad362fe07fec",
                                "versionType": "custom"
                            },
                            {
                                "version": "5.4.269",
                                "status": "unaffected",
                                "lessThanOrEqual": "5.5",
                                "versionType": "custom"
                            },
                            {
                                "version": "5.10.209",
                                "status": "unaffected",
                                "lessThanOrEqual": "5.11",
                                "versionType": "custom"
                            },
                            {
                                "version": "5.15.148",
                                "status": "unaffected",
                                "lessThanOrEqual": "5.16",
                                "versionType": "custom"
                            },
                            {
                                "version": "6.1.75",
                                "status": "unaffected",
                                "lessThanOrEqual": "6.2",
                                "versionType": "custom"
                            },
                            {
                                "version": "6.6.14",
                                "status": "unaffected",
                                "lessThanOrEqual": "6.7",
                                "versionType": "custom"
                            },
                            {
                                "version": "6.7.2",
                                "status": "unaffected",
                                "lessThanOrEqual": "6.8",
                                "versionType": "custom"
                            },
                            {
                                "version": "6.8",
                                "status": "unaffected",
                                "lessThanOrEqual": "*",
                                "versionType": "custom"
                            }
                        ]
                    }
                ],
                "metrics": [
                    {
                        "cvssV3_1": {
                            "scope": "UNCHANGED",
                            "version": "3.1",
                            "baseScore": 7.8,
                            "attackVector": "LOCAL",
                            "baseSeverity": "HIGH",
                            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                            "integrityImpact": "HIGH",
                            "userInteraction": "NONE",
                            "attackComplexity": "LOW",
                            "availabilityImpact": "HIGH",
                            "privilegesRequired": "LOW",
                            "confidentialityImpact": "HIGH"
                        }
                    },
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "timestamp": "2025-04-22T16:15:47.782832Z",
                                "id": "CVE-2024-26598",
                                "options": [
                                    {
                                        "Exploitation": "none"
                                    },
                                    {
                                        "Automatable": "no"
                                    },
                                    {
                                        "Technical Impact": "total"
                                    }
                                ],
                                "role": "CISA Coordinator",
                                "version": "2.0.3"
                            }
                        }
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2025-04-22T16:16:01.155Z"
                }
            }
        ]
    },
    "dataVersion": "5.2"
}