{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2024-36973",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-05-30T15:25:07.082Z",
        "datePublished": "2024-06-17T17:51:52.112Z",
        "dateUpdated": "2026-08-05T11:32:24.325Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T11:32:24.325Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmisc: microchip: pci1xxxx: fix double free in the error handling of gp_aux_bus_probe()\n\nWhen auxiliary_device_add() returns error and then calls\nauxiliary_device_uninit(), callback function\ngp_auxiliary_device_release() calls ida_free() and\nkfree(aux_device_wrapper) to free memory. We should't\ncall them again in the error handling path.\n\nFix this by skipping the redundant cleanup functions."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 8.4,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:L - The flaw is in a PCI driver's probe path, reached through local device enumeration/hotplug or driver (re)bind on the machine itself, not through any network protocol. This matches the treatment of other driver probe-path double-free/UAF flaws in this subsystem class.\nAC:L - The error path is deterministic — an endpoint presenting the matching IDs with no MSI-X/MSI capability and no INTx pin makes pci_alloc_irq_vectors() return -ENOSPC every time, falling straight through into the double free with no race to win and no memory-layout precondition outside the attacker's control.\nPR:N - The vulnerable code runs autonomously during PCI probe at boot or on hotplug enumeration; the attacker needs no account, credentials, or capability on the system for the driver to auto-load and execute the faulty error path.\nUI:N - Probe is invoked automatically by the PCI core and udev-driven module autoload on device enumeration; no logged-in user has to open, mount, or interact with anything.\nS:U - The corruption is confined to the kernel's own heap and device model, within the same security authority as the vulnerable component; no IOMMU, hypervisor, or sandbox boundary is crossed.\nC:H - After the release callback frees the wrapper, the code reads aux_dev.id back out of freed memory and a still-registered struct device is left pointing at the freed allocation, so reclaimed heap contents can be read back through the auxiliary bus/sysfs — a use-after-free read primitive.\nI:H - The same kmalloc'd object is freed twice, corrupting the slab freelist and allowing the attacker to have one allocation handed out to two owners (type confusion), the classic route to an arbitrary kernel write and control-flow hijack; a live sysfs-registered device over freed memory compounds this.\nA:H - The double free plus use-after-free reliably corrupts slab state and trips freelist/KASAN checks, producing a kernel oops or panic; the dangling registered auxiliary device can crash the box on any later access."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c"
                    ],
                    "versions": [
                        {
                            "version": "393fc2f5948fd340d016a9557eea6e1ac2f6c60c",
                            "lessThan": "34ae447b138680b5ed3660f7d935ff3faf88ba1a",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "393fc2f5948fd340d016a9557eea6e1ac2f6c60c",
                            "lessThan": "86c9713602f786f441630c4ee02891987f8618b9",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "393fc2f5948fd340d016a9557eea6e1ac2f6c60c",
                            "lessThan": "1efe551982297924d05a367aa2b6ec3d275d5742",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "393fc2f5948fd340d016a9557eea6e1ac2f6c60c",
                            "lessThan": "086c6cbcc563c81d55257f9b27e14faf1d0963d3",
                            "status": "affected",
                            "versionType": "git"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c"
                    ],
                    "versions": [
                        {
                            "version": "6.1",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "6.1",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.95",
                            "lessThanOrEqual": "6.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.35",
                            "lessThanOrEqual": "6.6.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.9.6",
                            "lessThanOrEqual": "6.9.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.10",
                            "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": "6.1",
                                    "versionEndExcluding": "6.1.95"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.1",
                                    "versionEndExcluding": "6.6.35"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.1",
                                    "versionEndExcluding": "6.9.6"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.1",
                                    "versionEndExcluding": "6.10"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/34ae447b138680b5ed3660f7d935ff3faf88ba1a"
                },
                {
                    "url": "https://git.kernel.org/stable/c/86c9713602f786f441630c4ee02891987f8618b9"
                },
                {
                    "url": "https://git.kernel.org/stable/c/1efe551982297924d05a367aa2b6ec3d275d5742"
                },
                {
                    "url": "https://git.kernel.org/stable/c/086c6cbcc563c81d55257f9b27e14faf1d0963d3"
                }
            ],
            "title": "misc: microchip: pci1xxxx: fix double free in the error handling of gp_aux_bus_probe()",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "metrics": [
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "timestamp": "2024-06-17T20:17:26.989474Z",
                                "id": "CVE-2024-36973",
                                "options": [
                                    {
                                        "Exploitation": "none"
                                    },
                                    {
                                        "Automatable": "no"
                                    },
                                    {
                                        "Technical Impact": "partial"
                                    }
                                ],
                                "role": "CISA Coordinator",
                                "version": "2.0.3"
                            }
                        }
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2024-06-17T20:17:41.960Z"
                }
            },
            {
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "https://git.kernel.org/stable/c/34ae447b138680b5ed3660f7d935ff3faf88ba1a",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/86c9713602f786f441630c4ee02891987f8618b9",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/1efe551982297924d05a367aa2b6ec3d275d5742",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/086c6cbcc563c81d55257f9b27e14faf1d0963d3",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html"
                    }
                ],
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2025-11-03T21:55:29.203Z"
                }
            }
        ]
    }
}