GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2023-53520 (GCVE-0-2023-53520)

Vulnerability from cvelistv5 – Published: 2025-10-01 11:46 – Updated: 2026-08-05 09:14
VLAI
Title
Bluetooth: Fix hci_suspend_sync crash
Summary
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: Fix hci_suspend_sync crash If hci_unregister_dev() frees the hci_dev object but hci_suspend_notifier may still be accessing it, it can cause the program to crash. Here's the call trace: <4>[102152.653246] Call Trace: <4>[102152.653254] hci_suspend_sync+0x109/0x301 [bluetooth] <4>[102152.653259] hci_suspend_dev+0x78/0xcd [bluetooth] <4>[102152.653263] hci_suspend_notifier+0x42/0x7a [bluetooth] <4>[102152.653268] notifier_call_chain+0x43/0x6b <4>[102152.653271] __blocking_notifier_call_chain+0x48/0x69 <4>[102152.653273] __pm_notifier_call_chain+0x22/0x39 <4>[102152.653276] pm_suspend+0x287/0x57c <4>[102152.653278] state_store+0xae/0xe5 <4>[102152.653281] kernfs_fop_write+0x109/0x173 <4>[102152.653284] __vfs_write+0x16f/0x1a2 <4>[102152.653287] ? selinux_file_permission+0xca/0x16f <4>[102152.653289] ? security_file_permission+0x36/0x109 <4>[102152.653291] vfs_write+0x114/0x21d <4>[102152.653293] __x64_sys_write+0x7b/0xdb <4>[102152.653296] do_syscall_64+0x59/0x194 <4>[102152.653299] entry_SYSCALL_64_after_hwframe+0x5c/0xc1 This patch holds the reference count of the hci_dev object while processing it in hci_suspend_notifier to avoid potential crash caused by the race condition.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 9952d90ea2885d7cbf80cd233f694f09a9c0eaec , < e1fa25a91091bbed691ba2996a6cee809e3309a2 (git)
Affected: 9952d90ea2885d7cbf80cd233f694f09a9c0eaec , < 06e2b5ad72b60f90bfe565c201346532e271f484 (git)
Affected: 9952d90ea2885d7cbf80cd233f694f09a9c0eaec , < f9c8ce5d665653e3cf71a76349d41d7a7f7947e6 (git)
Affected: 9952d90ea2885d7cbf80cd233f694f09a9c0eaec , < 573ebae162111063eedc6c838a659ba628f66a0f (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.7
Unaffected: 0 , < 5.7 (semver)
Unaffected: 5.15.199 , ≤ 5.15.* (semver)
Unaffected: 6.1.55 , ≤ 6.1.* (semver)
Unaffected: 6.5.5 , ≤ 6.5.* (semver)
Unaffected: 6.6 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/bluetooth/hci_core.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "e1fa25a91091bbed691ba2996a6cee809e3309a2",
              "status": "affected",
              "version": "9952d90ea2885d7cbf80cd233f694f09a9c0eaec",
              "versionType": "git"
            },
            {
              "lessThan": "06e2b5ad72b60f90bfe565c201346532e271f484",
              "status": "affected",
              "version": "9952d90ea2885d7cbf80cd233f694f09a9c0eaec",
              "versionType": "git"
            },
            {
              "lessThan": "f9c8ce5d665653e3cf71a76349d41d7a7f7947e6",
              "status": "affected",
              "version": "9952d90ea2885d7cbf80cd233f694f09a9c0eaec",
              "versionType": "git"
            },
            {
              "lessThan": "573ebae162111063eedc6c838a659ba628f66a0f",
              "status": "affected",
              "version": "9952d90ea2885d7cbf80cd233f694f09a9c0eaec",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/bluetooth/hci_core.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.7"
            },
            {
              "lessThan": "5.7",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.199",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.55",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.5.*",
              "status": "unaffected",
              "version": "6.5.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.6",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.199",
                  "versionStartIncluding": "5.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.55",
                  "versionStartIncluding": "5.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.5.5",
                  "versionStartIncluding": "5.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6",
                  "versionStartIncluding": "5.7",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: Fix hci_suspend_sync crash\n\nIf hci_unregister_dev() frees the hci_dev object but hci_suspend_notifier\nmay still be accessing it, it can cause the program to crash.\nHere\u0027s the call trace:\n  \u003c4\u003e[102152.653246] Call Trace:\n  \u003c4\u003e[102152.653254]  hci_suspend_sync+0x109/0x301 [bluetooth]\n  \u003c4\u003e[102152.653259]  hci_suspend_dev+0x78/0xcd [bluetooth]\n  \u003c4\u003e[102152.653263]  hci_suspend_notifier+0x42/0x7a [bluetooth]\n  \u003c4\u003e[102152.653268]  notifier_call_chain+0x43/0x6b\n  \u003c4\u003e[102152.653271]  __blocking_notifier_call_chain+0x48/0x69\n  \u003c4\u003e[102152.653273]  __pm_notifier_call_chain+0x22/0x39\n  \u003c4\u003e[102152.653276]  pm_suspend+0x287/0x57c\n  \u003c4\u003e[102152.653278]  state_store+0xae/0xe5\n  \u003c4\u003e[102152.653281]  kernfs_fop_write+0x109/0x173\n  \u003c4\u003e[102152.653284]  __vfs_write+0x16f/0x1a2\n  \u003c4\u003e[102152.653287]  ? selinux_file_permission+0xca/0x16f\n  \u003c4\u003e[102152.653289]  ? security_file_permission+0x36/0x109\n  \u003c4\u003e[102152.653291]  vfs_write+0x114/0x21d\n  \u003c4\u003e[102152.653293]  __x64_sys_write+0x7b/0xdb\n  \u003c4\u003e[102152.653296]  do_syscall_64+0x59/0x194\n  \u003c4\u003e[102152.653299]  entry_SYSCALL_64_after_hwframe+0x5c/0xc1\n\nThis patch holds the reference count of the hci_dev object while\nprocessing it in hci_suspend_notifier to avoid potential crash\ncaused by the race condition."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable callback is only invoked from the kernel PM notifier chain (system suspend/resume initiated via /sys/power/state, logind, or lid/button events) racing with local HCI device unregistration; there is no over-the-air or network path that reaches hci_suspend_notifier, so the attack must be staged from local system access.\nAC:L - An attacker who can initiate suspend/resume and cause the Bluetooth adapter to unregister (e.g. adding/removing a USB Bluetooth dongle on a shared workstation or kiosk) drives both sides of the race and can retry the suspend/unplug cycle indefinitely until the window is hit.\nPR:L - On typical desktop, laptop and kiosk deployments an unprivileged user in an active local session can request suspend through logind/polkit, and adapter unregistration can be induced without root, so basic local user privileges suffice rather than real root.\nUI:N - The attacker performs both the suspend request and the adapter removal themselves; no action by a separate victim user is needed to reach the racing code paths.\nS:U - The freed hci_dev object and the corrupted memory both live in the kernel\u0027s own security authority; exploitation yields kernel-level compromise without crossing a VM, IOMMU or sandbox boundary.\nC:H - Use-after-free of the kzalloc\u0027d hci_dev structure lets an attacker reclaim the slab object and have hci_suspend_sync()/hci_resume_sync() read attacker-influenced or stale kernel data, providing a path to arbitrary kernel memory disclosure.\nI:H - The stale hdev is written to (hdev-\u003esuspended, suspend_state, scanning_paused) and its function pointers (hdev-\u003esend, hdev-\u003ewakeup) and workqueue/mutex members are dereferenced after free, giving heap-spray-based arbitrary write and control-flow hijack potential.\nA:H - The reported failure mode is an outright kernel crash during suspend (hci_suspend_sync oops), and any UAF of this kind reliably panics or hangs the system, denying service across a suspend/resume cycle."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T09:14:36.124Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/e1fa25a91091bbed691ba2996a6cee809e3309a2"
        },
        {
          "url": "https://git.kernel.org/stable/c/06e2b5ad72b60f90bfe565c201346532e271f484"
        },
        {
          "url": "https://git.kernel.org/stable/c/f9c8ce5d665653e3cf71a76349d41d7a7f7947e6"
        },
        {
          "url": "https://git.kernel.org/stable/c/573ebae162111063eedc6c838a659ba628f66a0f"
        }
      ],
      "title": "Bluetooth: Fix hci_suspend_sync crash",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-53520",
    "datePublished": "2025-10-01T11:46:07.355Z",
    "dateReserved": "2025-10-01T11:39:39.407Z",
    "dateUpdated": "2026-08-05T09:14:36.124Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2023-53520",
      "date": "2026-09-15",
      "epss": "0.00115",
      "percentile": "0.01762"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2023-53520\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-10-01T12:15:56.323\",\"lastModified\":\"2026-08-04T10:19:10.503\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nBluetooth: Fix hci_suspend_sync crash\\n\\nIf hci_unregister_dev() frees the hci_dev object but hci_suspend_notifier\\nmay still be accessing it, it can cause the program to crash.\\nHere\u0027s the call trace:\\n  \u003c4\u003e[102152.653246] Call Trace:\\n  \u003c4\u003e[102152.653254]  hci_suspend_sync+0x109/0x301 [bluetooth]\\n  \u003c4\u003e[102152.653259]  hci_suspend_dev+0x78/0xcd [bluetooth]\\n  \u003c4\u003e[102152.653263]  hci_suspend_notifier+0x42/0x7a [bluetooth]\\n  \u003c4\u003e[102152.653268]  notifier_call_chain+0x43/0x6b\\n  \u003c4\u003e[102152.653271]  __blocking_notifier_call_chain+0x48/0x69\\n  \u003c4\u003e[102152.653273]  __pm_notifier_call_chain+0x22/0x39\\n  \u003c4\u003e[102152.653276]  pm_suspend+0x287/0x57c\\n  \u003c4\u003e[102152.653278]  state_store+0xae/0xe5\\n  \u003c4\u003e[102152.653281]  kernfs_fop_write+0x109/0x173\\n  \u003c4\u003e[102152.653284]  __vfs_write+0x16f/0x1a2\\n  \u003c4\u003e[102152.653287]  ? selinux_file_permission+0xca/0x16f\\n  \u003c4\u003e[102152.653289]  ? security_file_permission+0x36/0x109\\n  \u003c4\u003e[102152.653291]  vfs_write+0x114/0x21d\\n  \u003c4\u003e[102152.653293]  __x64_sys_write+0x7b/0xdb\\n  \u003c4\u003e[102152.653296]  do_syscall_64+0x59/0x194\\n  \u003c4\u003e[102152.653299]  entry_SYSCALL_64_after_hwframe+0x5c/0xc1\\n\\nThis patch holds the reference count of the hci_dev object while\\nprocessing it in hci_suspend_notifier to avoid potential crash\\ncaused by the race condition.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"net/bluetooth/hci_core.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"9952d90ea2885d7cbf80cd233f694f09a9c0eaec\",\"lessThan\":\"e1fa25a91091bbed691ba2996a6cee809e3309a2\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9952d90ea2885d7cbf80cd233f694f09a9c0eaec\",\"lessThan\":\"06e2b5ad72b60f90bfe565c201346532e271f484\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9952d90ea2885d7cbf80cd233f694f09a9c0eaec\",\"lessThan\":\"f9c8ce5d665653e3cf71a76349d41d7a7f7947e6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9952d90ea2885d7cbf80cd233f694f09a9c0eaec\",\"lessThan\":\"573ebae162111063eedc6c838a659ba628f66a0f\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"net/bluetooth/hci_core.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.7\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.7\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.199\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.55\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.5.5\",\"lessThanOrEqual\":\"6.5.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"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\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":4.7,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.0,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-362\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.7\",\"versionEndExcluding\":\"6.1.55\",\"matchCriteriaId\":\"88F0DAEB-0946-4C4E-B552-34F18C55FDDF\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.2\",\"versionEndExcluding\":\"6.5.5\",\"matchCriteriaId\":\"8CF71E85-DA24-4925-95C5-E5C15DA71AE6\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/06e2b5ad72b60f90bfe565c201346532e271f484\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/573ebae162111063eedc6c838a659ba628f66a0f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/e1fa25a91091bbed691ba2996a6cee809e3309a2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f9c8ce5d665653e3cf71a76349d41d7a7f7947e6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T19:17:01+00:00",
      "cve": "CVE-2023-53520",
      "id": "CVE-2023-53520",
      "initial_release_date": "2023-01-01T00:00:00+00:00",
      "product_status:known_affected": "198",
      "product_status:known_not_affected": "76",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: Bluetooth: Fix hci_suspend_sync crash",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2023/cve-2023-53520.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-09-13T23:46:16Z",
      "cve": "CVE-2023-53520",
      "id": "CVE-2023-53520",
      "initial_release_date": "2025-10-01T23:29:40Z",
      "product_status:known_affected": "394",
      "product_status:known_not_affected": "393",
      "product_status:recommended": "310",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2023-53520",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2023-53520.json",
      "version": "49"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…