Lucene search

K
cve416baaa9-dc9f-4396-8d5f-8c081fb06d67CVE-2023-52872
HistoryMay 21, 2024 - 4:15 p.m.

CVE-2023-52872

2024-05-2116:15:23
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
27
cve-2023-52872
linux kernel
n_gsm
race condition
vulnerability
resolved
tty
status lines
modem
dlci
kernel panic
gsm_modem_update
cleanup procedure
mux

6.7 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.7%

In the Linux kernel, the following vulnerability has been resolved:

tty: n_gsm: fix race condition in status line change on dead connections

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 configurations

Vulners
Node
linuxlinux_kernelRange6.05.15.138
OR
linuxlinux_kernelRange5.16.06.1.62
OR
linuxlinux_kernelRange6.2.06.5.11
OR
linuxlinux_kernelRange6.6.06.6.1
OR
linuxlinux_kernelRange6.7.0

CNA 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": "dd37f6573878",
        "lessThan": "81a4dd5e6c78",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c568f7086c6e",
        "lessThan": "df6cfab66ff2",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c568f7086c6e",
        "lessThan": "19d34b73234a",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c568f7086c6e",
        "lessThan": "ce4df90333c4",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c568f7086c6e",
        "lessThan": "3a75b205de43",
        "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/tty/n_gsm.c"
    ],
    "versions": [
      {
        "version": "6.0",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "6.0",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.15.138",
        "lessThanOrEqual": "5.15.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.1.62",
        "lessThanOrEqual": "6.1.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.5.11",
        "lessThanOrEqual": "6.5.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.6.1",
        "lessThanOrEqual": "6.6.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.7",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

6.7 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.7%