{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2023-52872",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-05-21T15:19:24.264Z",
        "datePublished": "2024-05-21T15:32:06.610Z",
        "dateUpdated": "2026-08-05T09:11:46.257Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T09:11:46.257Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntty: n_gsm: fix race condition in status line change on dead connections\n\ngsm_cleanup_mux() cleans up the gsm by closing all DLCIs, stopping all\ntimers, removing the virtual tty devices and clearing the data queues.\nThis procedure, however, may cause subsequent changes of the virtual modem\nstatus lines of a DLCI. More data is being added the outgoing data queue\nand the deleted kick timer is restarted to handle this. At this point many\nresources have already been removed by the cleanup procedure. Thus, a\nkernel panic occurs.\n\nFix this by proving in gsm_modem_update() that the cleanup procedure has\nnot been started and the mux is still alive.\n\nNote that writing to a virtual tty is already protected by checks against\nthe DLCI specific connection state."
                }
            ],
            "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 reached through local tty/pty operations: attach N_GSM0710 via TIOCSETD, configure with GSMIOC_SETCONF, and tear down the mux via close or reconfiguration—not via network packets.\nAC:L - The attacker fully controls setup (including adaption=2 or basic encoding so gsm_modem_update queues data) and teardown; cleanup itself synchronously triggers the modem-status update that restarts the already-deleted kick_timer, so no external timing luck is required.\nPR:L - Across the affected range (from the kick_timer introduction through the fix), attaching N_GSM0710 did not require CAP_NET_ADMIN until 67c37756898a; an unprivileged local user with a pty could open the ldisc, configure the mux, and trigger cleanup.\nUI:N - Exploitation needs no victim action beyond the attacker’s own syscalls on tty/pty and gsmtty devices.\nS:U - Impact stays within the host kernel authority; this is not a VM escape, IOMMU bypass, or other cross-boundary break.\nC:H - Cleanup restarts kick_timer and can free gsm_mux (gsm_free_mux does not cancel that timer), yielding a timer use-after-free on gsm_mux that can be reclaimed and read for arbitrary kernel disclosure.\nI:H - The same timer UAF on the freed gsm_mux object enables heap reuse and corruption of kernel control data (locks, DLCI pointers, TX state) for integrity compromise and potential code execution.\nA:H - The dangling kick_timer and use of torn-down queues/DLCIs cause kernel oops/panic, as described in the fix, so availability impact is complete host denial of service."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/tty/n_gsm.c"
                    ],
                    "versions": [
                        {
                            "version": "dd37f657387853623f20c1b2482afbb9cd8ece33",
                            "lessThan": "81a4dd5e6c78f5d8952fa8c9d36565db1fe01444",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "c568f7086c6e771c77aad13d727c70ef70e07243",
                            "lessThan": "df6cfab66ff2a44bd23ad5dd5309cb3421bb6593",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "c568f7086c6e771c77aad13d727c70ef70e07243",
                            "lessThan": "19d34b73234af542cc8a218cf398dee73cdb1890",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "c568f7086c6e771c77aad13d727c70ef70e07243",
                            "lessThan": "ce4df90333c4fe65acb8b5089fdfe9b955ce976a",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "c568f7086c6e771c77aad13d727c70ef70e07243",
                            "lessThan": "3a75b205de43365f80a33b98ec9289785da56243",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "d834aba5f30d9a6f98f4ca1eb07e501f1989331c",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "692e847a8e6607909c4a3f98ab16ccee7849bd11",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "5.15.61",
                            "lessThan": "5.15.138",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.18.18",
                            "lessThan": "5.19",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.19.2",
                            "lessThan": "5.20",
                            "status": "affected",
                            "versionType": "semver"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/tty/n_gsm.c"
                    ],
                    "versions": [
                        {
                            "version": "6.0",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "6.0",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.138",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.1.62",
                            "lessThanOrEqual": "6.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.5.11",
                            "lessThanOrEqual": "6.5.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.1",
                            "lessThanOrEqual": "6.6.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.7",
                            "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.15.61",
                                    "versionEndExcluding": "5.15.138"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.0",
                                    "versionEndExcluding": "6.1.62"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.0",
                                    "versionEndExcluding": "6.5.11"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.0",
                                    "versionEndExcluding": "6.6.1"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.0",
                                    "versionEndExcluding": "6.7"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.18.18"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.19.2"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/81a4dd5e6c78f5d8952fa8c9d36565db1fe01444"
                },
                {
                    "url": "https://git.kernel.org/stable/c/df6cfab66ff2a44bd23ad5dd5309cb3421bb6593"
                },
                {
                    "url": "https://git.kernel.org/stable/c/19d34b73234af542cc8a218cf398dee73cdb1890"
                },
                {
                    "url": "https://git.kernel.org/stable/c/ce4df90333c4fe65acb8b5089fdfe9b955ce976a"
                },
                {
                    "url": "https://git.kernel.org/stable/c/3a75b205de43365f80a33b98ec9289785da56243"
                }
            ],
            "title": "tty: n_gsm: fix race condition in status line change on dead connections",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "problemTypes": [
                    {
                        "descriptions": [
                            {
                                "type": "CWE",
                                "cweId": "CWE-362",
                                "lang": "en",
                                "description": "CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')"
                            }
                        ]
                    }
                ],
                "metrics": [
                    {
                        "cvssV3_1": {
                            "scope": "UNCHANGED",
                            "version": "3.1",
                            "baseScore": 5.5,
                            "attackVector": "LOCAL",
                            "baseSeverity": "MEDIUM",
                            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                            "integrityImpact": "NONE",
                            "userInteraction": "NONE",
                            "attackComplexity": "LOW",
                            "availabilityImpact": "HIGH",
                            "privilegesRequired": "LOW",
                            "confidentialityImpact": "NONE"
                        }
                    },
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "timestamp": "2024-05-29T18:43:05.660039Z",
                                "id": "CVE-2023-52872",
                                "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-11-06T15:02:28.263Z"
                }
            },
            {
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2024-08-02T23:11:36.237Z"
                },
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "https://git.kernel.org/stable/c/81a4dd5e6c78f5d8952fa8c9d36565db1fe01444",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/df6cfab66ff2a44bd23ad5dd5309cb3421bb6593",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/19d34b73234af542cc8a218cf398dee73cdb1890",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/ce4df90333c4fe65acb8b5089fdfe9b955ce976a",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/3a75b205de43365f80a33b98ec9289785da56243",
                        "tags": [
                            "x_transferred"
                        ]
                    }
                ]
            }
        ]
    }
}