{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2022-50750",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2025-12-24T13:02:21.544Z",
        "datePublished": "2025-12-24T13:05:45.447Z",
        "dateUpdated": "2026-08-05T08:59:38.061Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T08:59:38.061Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure\n\nIn case mipi_dsi_attach() fails, call drm_panel_remove() to\navoid memory leak."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 7.8,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:L - The bug is in the ST7701 MIPI-DSI panel probe path (st7701_dsi_probe → drm_panel_add → mipi_dsi_attach) and is subsequently hit via local DRM panel lookup (of_drm_find_panel walking panel_list); it is not reachable from network or adjacent-link packet processing.\nAC:L - mipi_dsi_attach commonly returns -EPROBE_DEFER/-EBUSY/-EINVAL on componentized DSI hosts (dw-mipi-dsi, Rockchip, MediaTek, sun6i), and on that failure path the dangling panel remains on panel_list while DEV_M frees st7701; a later of_drm_find_panel walk then deterministically uses the freed object with no attacker-uncontrollable race.\nPR:L - On realistic ST7701 deployments (e.g. Rockchip handhelds/HMI such as Odroid Go with sitronix,st7701), deferred-probe attach failure can establish the dangling panel_list entry at boot without privileges, and an unprivileged seat/video user can then trigger DRM connector/panel lookup; real init-namespace root is not required.\nUI:N - No separate victim action is required; boot-time probe deferral/failure plus the attacker’s own DRM modeset/connector probe ioctls drive the vulnerable path.\nS:U - Impact is confined to host-kernel heap corruption within the same OS security authority; this is not a VM escape, IOMMU/DMA bypass, or other cross-boundary compromise.\nC:H - Leaving &st7701->panel on the global panel_list after DEV_M frees st7701 is a reclaimable heap use-after-free; of_drm_find_panel reads panel->dev through that freed object, enabling arbitrary kernel read primitives via heap reuse.\nI:H - The same UAF lets an attacker reclaim and reshape the freed st7701/drm_panel object so later panel_list consumers act on attacker-controlled function pointers/state, enabling arbitrary write and control-flow hijacking.\nA:H - Dereferencing the dangling panel_list entry (panel->dev / panel ops) causes kernel oops/panic even without full exploitation, which is Availability High under kernel CVSS guidance for UAFs/crashes."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/gpu/drm/panel/panel-sitronix-st7701.c"
                    ],
                    "versions": [
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "0b7c47b7f358f932159a9d5beec9616ef8a0c6b4",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "576828e59a0e03bbc763872912b04f3e3a1b3311",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "13fc167e1645c43c631d7752d98e377f0e4cbb15",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "23fddf78eac8d79c56f93ab69b6c47a0816967c9",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "465611e812587e72bf235034edce0e51be3d6809",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "849b2e3ff9698226ab91e034d52cbb1da92a5b4c",
                            "lessThan": "c62102165dd79284d42383d2f7ed17301bd8e629",
                            "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/gpu/drm/panel/panel-sitronix-st7701.c"
                    ],
                    "versions": [
                        {
                            "version": "5.1",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "5.1",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.4.229",
                            "lessThanOrEqual": "5.4.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.10.163",
                            "lessThanOrEqual": "5.10.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.86",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.0.16",
                            "lessThanOrEqual": "6.0.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.2",
                            "lessThanOrEqual": "6.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.2",
                            "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": "5.1",
                                    "versionEndExcluding": "5.4.229"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.1",
                                    "versionEndExcluding": "5.10.163"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.1",
                                    "versionEndExcluding": "5.15.86"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.1",
                                    "versionEndExcluding": "6.0.16"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.1",
                                    "versionEndExcluding": "6.1.2"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.1",
                                    "versionEndExcluding": "6.2"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/0b7c47b7f358f932159a9d5beec9616ef8a0c6b4"
                },
                {
                    "url": "https://git.kernel.org/stable/c/576828e59a0e03bbc763872912b04f3e3a1b3311"
                },
                {
                    "url": "https://git.kernel.org/stable/c/13fc167e1645c43c631d7752d98e377f0e4cbb15"
                },
                {
                    "url": "https://git.kernel.org/stable/c/23fddf78eac8d79c56f93ab69b6c47a0816967c9"
                },
                {
                    "url": "https://git.kernel.org/stable/c/465611e812587e72bf235034edce0e51be3d6809"
                },
                {
                    "url": "https://git.kernel.org/stable/c/c62102165dd79284d42383d2f7ed17301bd8e629"
                }
            ],
            "title": "drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        }
    }
}