tty: n_gsm: fix race condition in status line change on dead connections
Published May 21, 2024
7.8
HIGHCVSS 3.1
EPSS 0.18%
Description
gsm_cleanup_mux() cleans up the gsm by closing all DLCIs, stopping all timers, removing the virtual tty devices and clearing the data queues. This procedure, however, may cause subsequent changes of the virtual modem status lines of a DLCI. More data is being added the outgoing data queue and the deleted kick timer is restarted to handle this. At this point many resources have already been removed by the cleanup procedure. Thus, a kernel panic occurs.
Fix this by proving in gsm_modem_update() that the cleanup procedure has not been started and the mux is still alive.
Note that writing to a virtual tty is already protected by checks against the DLCI specific connection state.
Affected products
-
- Version 5.15.61StatusaffectedConstraints<5.15.138
- Version 5.18.18StatusaffectedConstraints<5.19
- Version 5.19.2StatusaffectedConstraints<5.20
- Version
-
- Version StatusaffectedConstraints-
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints-
- Version StatusaffectedConstraints
- Version
-
- Version 6.0StatusaffectedConstraints-
- Version 0StatusunaffectedConstraints<6.0
- Version 5.15.138StatusunaffectedConstraints<=5.15.*
- Version 6.1.62StatusunaffectedConstraints<=6.1.*
- Version 6.5.11StatusunaffectedConstraints<=6.5.*
- Version 6.6.1StatusunaffectedConstraints<=6.6.*
- Version 6.7StatusunaffectedConstraints<=*
- Version
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux | unaffected |
| ||||||||||||||||||||||||
| Linux | Linux | unaffected |
| ||||||||||||||||||||||||
| Linux | Linux | affected |
|
- ≥ 5.15.61 · < 5.15.138
- ≥ 5.18.18 · < 5.19
- ≥ 5.19.2 · < 6.1.62
- ≥ 6.2 · < 6.5.11
- ≥ 6.6 · < 6.6.1
No data.
Red Hat Enterprise Linux 6
kernel
Not affected
Red Hat Enterprise Linux 7
kernel
Out of support scope
Red Hat Enterprise Linux 7
kernel-rt
Out of support scope
Red Hat Enterprise Linux 8
kernel
Affected
Red Hat Enterprise Linux 8
kernel-rt
Affected
Red Hat Enterprise Linux 9
kernel
Affected
Red Hat Enterprise Linux 9
kernel-rt
Affected
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Enterprise Linux 6 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 7 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 7 | kernel-rt | Out of support scope | n/a |
| Red Hat Enterprise Linux 8 | kernel | Affected | n/a |
| Red Hat Enterprise Linux 8 | kernel-rt | Affected | n/a |
| Red Hat Enterprise Linux 9 | kernel | Affected | n/a |
| Red Hat Enterprise Linux 9 | kernel-rt | Affected | n/a |
No package ranges for this CVE.
Remediation
No remediation recorded yet.
References (10)
- https://access.redhat.com/security/cve/CVE-2023-52872 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2282733 Issue Tracking
- https://git.kernel.org/stable/c/19d34b73234af542cc8a218cf398dee73cdb1890 Patch
- https://git.kernel.org/stable/c/3a75b205de43365f80a33b98ec9289785da56243 Patch
- https://git.kernel.org/stable/c/81a4dd5e6c78f5d8952fa8c9d36565db1fe01444 Patch
- https://git.kernel.org/stable/c/ce4df90333c4fe65acb8b5089fdfe9b955ce976a Patch
- https://git.kernel.org/stable/c/df6cfab66ff2a44bd23ad5dd5309cb3421bb6593 Patch
- https://lore.kernel.org/linux-cve-announce/2024052120-CVE-2023-52872-48fd@gregkh/T
- https://nvd.nist.gov/vuln/detail/CVE-2023-52872
- https://www.cve.org/CVERecord?id=CVE-2023-52872
Change history (0)
No recorded changes yet.