CVE-2025-68304 (GCVE-0-2025-68304)

Vulnerability from cvelistv5 – Published: 2025-12-16 15:06 – Updated: 2026-10-15 22:02
VLAI
Title
Bluetooth: hci_core: lookup hci_conn on RX path on protocol side
Summary
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_core: lookup hci_conn on RX path on protocol side The hdev lock/lookup/unlock/use pattern in the packet RX path doesn't ensure hci_conn* is not concurrently modified/deleted. This locking appears to be leftover from before conn_hash started using RCU commit bf4c63252490b ("Bluetooth: convert conn hash to RCU") and not clear if it had purpose since then. Currently, there are code paths that delete hci_conn* from elsewhere than the ordered hdev->workqueue where the RX work runs in. E.g. commit 5af1f84ed13a ("Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync") introduced some of these, and there probably were a few others before it. It's better to do the locking so that even if these run concurrently no UAF is possible. Move the lookup of hci_conn and associated socket-specific conn to protocol recv handlers, and do them within a single critical section to cover hci_conn* usage and lookup. syzkaller has reported a crash that appears to be this issue: [Task hdev->workqueue] [Task 2] hci_disconnect_all_sync l2cap_recv_acldata(hcon) hci_conn_get(hcon) hci_abort_conn_sync(hcon) hci_dev_lock hci_dev_lock hci_conn_del(hcon) v-------------------------------- hci_dev_unlock hci_conn_put(hcon) conn = hcon->l2cap_data (UAF)
SSVC
Exploitation: none Automatable: no Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-15 22:00 UTC
Assigner
Linux CNA under the mitre root
CNA scorecard D 53/100 over 6820 records in the last 180 days details
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 5af1f84ed13a416297ab9ced7537f4d5ae7f329a , < ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93 (git)
Affected: 5af1f84ed13a416297ab9ced7537f4d5ae7f329a , < 79a2d4678ba90bdba577dc3af88cc900d6dcd5ee (git)
Affected: cd55c13bbb3d093ae601aa97e588ed4c1390ebb1 (git)
Affected: 4d3ca4a9aaf0aa798a6be372dc0fc3a29e37dd57 (git)
Affected: 80265dd1d944c3f33e52375b5dbe654980bd2688 (git)
Affected: 6.1.149 , < 6.2 (semver)
Affected: 6.4.16 , < 6.5 (semver)
Affected: 6.5.3 , < 6.6 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 6.6
Unaffected: 0 , < 6.6 (semver)
Unaffected: 6.17.11 , ≤ 6.17.* (semver)
Unaffected: 6.18 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2025-68304",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-15T22:00:49.566306Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-10-15T22:02:48.882Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "include/net/bluetooth/hci_core.h",
            "net/bluetooth/hci_core.c",
            "net/bluetooth/iso.c",
            "net/bluetooth/l2cap_core.c",
            "net/bluetooth/sco.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93",
              "status": "affected",
              "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
              "versionType": "git"
            },
            {
              "lessThan": "79a2d4678ba90bdba577dc3af88cc900d6dcd5ee",
              "status": "affected",
              "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "cd55c13bbb3d093ae601aa97e588ed4c1390ebb1",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "4d3ca4a9aaf0aa798a6be372dc0fc3a29e37dd57",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "80265dd1d944c3f33e52375b5dbe654980bd2688",
              "versionType": "git"
            },
            {
              "lessThan": "6.2",
              "status": "affected",
              "version": "6.1.149",
              "versionType": "semver"
            },
            {
              "lessThan": "6.5",
              "status": "affected",
              "version": "6.4.16",
              "versionType": "semver"
            },
            {
              "lessThan": "6.6",
              "status": "affected",
              "version": "6.5.3",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "include/net/bluetooth/hci_core.h",
            "net/bluetooth/hci_core.c",
            "net/bluetooth/iso.c",
            "net/bluetooth/l2cap_core.c",
            "net/bluetooth/sco.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.6"
            },
            {
              "lessThan": "6.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.17.*",
              "status": "unaffected",
              "version": "6.17.11",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.18",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.17.11",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.1.149",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.4.16",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.5.3",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: hci_core: lookup hci_conn on RX path on protocol side\n\nThe hdev lock/lookup/unlock/use pattern in the packet RX path doesn\u0027t\nensure hci_conn* is not concurrently modified/deleted. This locking\nappears to be leftover from before conn_hash started using RCU\ncommit bf4c63252490b (\"Bluetooth: convert conn hash to RCU\")\nand not clear if it had purpose since then.\n\nCurrently, there are code paths that delete hci_conn* from elsewhere\nthan the ordered hdev-\u003eworkqueue where the RX work runs in. E.g.\ncommit 5af1f84ed13a (\"Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync\")\nintroduced some of these, and there probably were a few others before\nit.  It\u0027s better to do the locking so that even if these run\nconcurrently no UAF is possible.\n\nMove the lookup of hci_conn and associated socket-specific conn to\nprotocol recv handlers, and do them within a single critical section\nto cover hci_conn* usage and lookup.\n\nsyzkaller has reported a crash that appears to be this issue:\n\n    [Task hdev-\u003eworkqueue]          [Task 2]\n                                    hci_disconnect_all_sync\n    l2cap_recv_acldata(hcon)\n                                      hci_conn_get(hcon)\n                                      hci_abort_conn_sync(hcon)\n                                        hci_dev_lock\n      hci_dev_lock\n                                        hci_conn_del(hcon)\n      v-------------------------------- hci_dev_unlock\n                                      hci_conn_put(hcon)\n      conn = hcon-\u003el2cap_data (UAF)"
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 8.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:A - The flaw is reached through Bluetooth ACL, SCO, or ISO packets, requiring an attacker within radio range of a connectable or advertising target.\nAC:L - An adjacent peer can repeatedly manipulate connection lifecycles while flooding receive traffic, influencing both sides of the race without an uncontrollable prerequisite.\nPR:N - The receive path performs no peer credential or kernel capability check and is reachable before application-level Bluetooth authentication.\nUI:N - No victim action is required once Bluetooth is operating in a connectable or advertising deployment; packet reception and teardown occur automatically.\nS:U - Exploitation compromises the host kernel within the same security authority and does not inherently cross a virtualization or hardware isolation boundary.\nC:H - The freed hci_conn and associated protocol objects contain numerous kernel pointers; reclaiming them can turn stale dereferences into powerful kernel-memory disclosure primitives.\nI:H - The UAF permits writes through reclaimed protocol state, including reference-count, workqueue, reassembly, and socket-related operations, making arbitrary corruption or control-flow hijacking plausible.\nA:H - The UAF has produced KASAN failures and kernel panics, and it can be triggered repeatedly to crash the system."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:10:46.641Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93"
        },
        {
          "url": "https://git.kernel.org/stable/c/79a2d4678ba90bdba577dc3af88cc900d6dcd5ee"
        }
      ],
      "title": "Bluetooth: hci_core: lookup hci_conn on RX path on protocol side",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-68304",
    "datePublished": "2025-12-16T15:06:21.887Z",
    "dateReserved": "2025-12-16T14:48:05.294Z",
    "dateUpdated": "2026-10-15T22:02:48.882Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-68304",
      "date": "2026-11-02",
      "epss": "0.00233",
      "percentile": "0.1419"
    },
    "microsoft_vex": {
      "current_release_date": "2026-11-01T14:57:57.000Z",
      "cve": "CVE-2025-68304",
      "id": "msrc_CVE-2025-68304",
      "initial_release_date": "2025-12-18T01:03:36.000Z",
      "product_status:known_affected": "18",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "Bluetooth: hci_core: lookup hci_conn on RX path on protocol side",
      "url": "https://msrc.microsoft.com/csaf/vex/2025/msrc_cve-2025-68304.json",
      "version": "21"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "include/net/bluetooth/hci_core.h",
                  "net/bluetooth/hci_core.c",
                  "net/bluetooth/iso.c",
                  "net/bluetooth/l2cap_core.c",
                  "net/bluetooth/sco.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93",
                    "status": "affected",
                    "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "79a2d4678ba90bdba577dc3af88cc900d6dcd5ee",
                    "status": "affected",
                    "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
                    "versionType": "git"
                  },
                  {
                    "status": "affected",
                    "version": "cd55c13bbb3d093ae601aa97e588ed4c1390ebb1",
                    "versionType": "git"
                  },
                  {
                    "status": "affected",
                    "version": "4d3ca4a9aaf0aa798a6be372dc0fc3a29e37dd57",
                    "versionType": "git"
                  },
                  {
                    "status": "affected",
                    "version": "80265dd1d944c3f33e52375b5dbe654980bd2688",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6.2",
                    "status": "affected",
                    "version": "6.1.149",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.5",
                    "status": "affected",
                    "version": "6.4.16",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.6",
                    "status": "affected",
                    "version": "6.5.3",
                    "versionType": "semver"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "include/net/bluetooth/hci_core.h",
                  "net/bluetooth/hci_core.c",
                  "net/bluetooth/iso.c",
                  "net/bluetooth/l2cap_core.c",
                  "net/bluetooth/sco.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.6"
                  },
                  {
                    "lessThan": "6.6",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.17.*",
                    "status": "unaffected",
                    "version": "6.17.11",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.18",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: hci_core: lookup hci_conn on RX path on protocol side\n\nThe hdev lock/lookup/unlock/use pattern in the packet RX path doesn\u0027t\nensure hci_conn* is not concurrently modified/deleted. This locking\nappears to be leftover from before conn_hash started using RCU\ncommit bf4c63252490b (\"Bluetooth: convert conn hash to RCU\")\nand not clear if it had purpose since then.\n\nCurrently, there are code paths that delete hci_conn* from elsewhere\nthan the ordered hdev-\u003eworkqueue where the RX work runs in. E.g.\ncommit 5af1f84ed13a (\"Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync\")\nintroduced some of these, and there probably were a few others before\nit.  It\u0027s better to do the locking so that even if these run\nconcurrently no UAF is possible.\n\nMove the lookup of hci_conn and associated socket-specific conn to\nprotocol recv handlers, and do them within a single critical section\nto cover hci_conn* usage and lookup.\n\nsyzkaller has reported a crash that appears to be this issue:\n\n    [Task hdev-\u003eworkqueue]          [Task 2]\n                                    hci_disconnect_all_sync\n    l2cap_recv_acldata(hcon)\n                                      hci_conn_get(hcon)\n                                      hci_abort_conn_sync(hcon)\n                                        hci_dev_lock\n      hci_dev_lock\n                                        hci_conn_del(hcon)\n      v-------------------------------- hci_dev_unlock\n                                      hci_conn_put(hcon)\n      conn = hcon-\u003el2cap_data (UAF)"
          },
          {
            "lang": "es",
            "value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nBluetooth: hci_core: b\u00fasqueda de hci_conn en la ruta RX en el lado del protocolo\n\nEl patr\u00f3n de bloqueo/b\u00fasqueda/desbloqueo/uso de hdev en la ruta RX de paquetes no asegura que hci_conn no sea modificado/eliminado concurrentemente. Este bloqueo parece ser un remanente de antes de que conn_hash comenzara a usar RCU commit bf4c63252490b (\u0027Bluetooth: convertir hash de conexi\u00f3n a RCU\u0027) y no est\u00e1 claro si tuvo alg\u00fan prop\u00f3sito desde entonces.\n\nActualmente, existen rutas de c\u00f3digo que eliminan hci_conn desde otro lugar que no sea la hdev -\u003e workqueue ordenada donde se ejecuta el trabajo RX. Por ejemplo, el commit 5af1f84ed13a (\u0027Bluetooth: hci_sync: Corregir UAF en hci_abort_conn_sync\u0027) introdujo algunos de estos, y probablemente hubo algunos otros antes. Es mejor realizar el bloqueo de modo que, incluso si estos se ejecutan concurrentemente, no sea posible ning\u00fan UAF.\n\nMover la b\u00fasqueda de hci_conn y la conexi\u00f3n asociada espec\u00edfica del socket a los manejadores de recepci\u00f3n del protocolo, y realizarlas dentro de una \u00fanica secci\u00f3n cr\u00edtica para cubrir el uso y la b\u00fasqueda de hci_conn.\n\nsyzkaller ha reportado un fallo que parece ser este problema:\n\n    [Task hdev -\u003e workqueue]          [Task 2]\n                                    hci_disconnect_all_sync\n    l2cap_recv_acldata(hcon)\n                                      hci_conn_get(hcon)\n                                      hci_abort_conn_sync(hcon)\n                                        hci_dev_lock\n      hci_dev_lock\n                                        hci_conn_del(hcon)\n      v-------------------------------- hci_dev_unlock\n                                      hci_conn_put(hcon)\n      conn = hcon -\u003e l2cap_data (UAF)"
          }
        ],
        "id": "CVE-2025-68304",
        "lastModified": "2026-10-15T22:19:11.733",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "ADJACENT_NETWORK",
                "availabilityImpact": "HIGH",
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "NONE",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 2.8,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ],
          "ssvcV203": [
            {
              "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "ssvcData": {
                "id": "CVE-2025-68304",
                "options": [
                  {
                    "exploitation": "none"
                  },
                  {
                    "automatable": "no"
                  },
                  {
                    "technicalImpact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-15T22:00:49.566306Z",
                "version": "2.0.3"
              }
            }
          ]
        },
        "published": "2025-12-16T16:16:09.930",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/79a2d4678ba90bdba577dc3af88cc900d6dcd5ee"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Deferred"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-07-30T08:34:19+00:00",
      "cve": "CVE-2025-68304",
      "id": "CVE-2025-68304",
      "initial_release_date": "2025-12-16T00: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: hci_core: lookup hci_conn on RX path on protocol side",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-68304.json",
      "version": "3"
    },
    "vulnrichment": {
      "containers": {
        "adp": [
          {
            "metrics": [
              {
                "other": {
                  "content": {
                    "id": "CVE-2025-68304",
                    "options": [
                      {
                        "Exploitation": "none"
                      },
                      {
                        "Automatable": "no"
                      },
                      {
                        "Technical Impact": "total"
                      }
                    ],
                    "role": "CISA Coordinator",
                    "timestamp": "2026-10-15T22:00:49.566306Z",
                    "version": "2.0.3"
                  },
                  "type": "ssvc"
                }
              }
            ],
            "providerMetadata": {
              "dateUpdated": "2026-10-15T22:00:50.085Z",
              "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "shortName": "CISA-ADP"
            },
            "title": "CISA ADP Vulnrichment"
          }
        ],
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/net/bluetooth/hci_core.h",
                "net/bluetooth/hci_core.c",
                "net/bluetooth/iso.c",
                "net/bluetooth/l2cap_core.c",
                "net/bluetooth/sco.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93",
                  "status": "affected",
                  "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
                  "versionType": "git"
                },
                {
                  "lessThan": "79a2d4678ba90bdba577dc3af88cc900d6dcd5ee",
                  "status": "affected",
                  "version": "5af1f84ed13a416297ab9ced7537f4d5ae7f329a",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "cd55c13bbb3d093ae601aa97e588ed4c1390ebb1",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "4d3ca4a9aaf0aa798a6be372dc0fc3a29e37dd57",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "80265dd1d944c3f33e52375b5dbe654980bd2688",
                  "versionType": "git"
                },
                {
                  "lessThan": "6.2",
                  "status": "affected",
                  "version": "6.1.149",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.5",
                  "status": "affected",
                  "version": "6.4.16",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.6",
                  "status": "affected",
                  "version": "6.5.3",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/net/bluetooth/hci_core.h",
                "net/bluetooth/hci_core.c",
                "net/bluetooth/iso.c",
                "net/bluetooth/l2cap_core.c",
                "net/bluetooth/sco.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.6"
                },
                {
                  "lessThan": "6.6",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.17.*",
                  "status": "unaffected",
                  "version": "6.17.11",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "6.18",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.17.11",
                      "versionStartIncluding": "6.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18",
                      "versionStartIncluding": "6.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "6.1.149",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "6.4.16",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "6.5.3",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: hci_core: lookup hci_conn on RX path on protocol side\n\nThe hdev lock/lookup/unlock/use pattern in the packet RX path doesn\u0027t\nensure hci_conn* is not concurrently modified/deleted. This locking\nappears to be leftover from before conn_hash started using RCU\ncommit bf4c63252490b (\"Bluetooth: convert conn hash to RCU\")\nand not clear if it had purpose since then.\n\nCurrently, there are code paths that delete hci_conn* from elsewhere\nthan the ordered hdev-\u003eworkqueue where the RX work runs in. E.g.\ncommit 5af1f84ed13a (\"Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync\")\nintroduced some of these, and there probably were a few others before\nit.  It\u0027s better to do the locking so that even if these run\nconcurrently no UAF is possible.\n\nMove the lookup of hci_conn and associated socket-specific conn to\nprotocol recv handlers, and do them within a single critical section\nto cover hci_conn* usage and lookup.\n\nsyzkaller has reported a crash that appears to be this issue:\n\n    [Task hdev-\u003eworkqueue]          [Task 2]\n                                    hci_disconnect_all_sync\n    l2cap_recv_acldata(hcon)\n                                      hci_conn_get(hcon)\n                                      hci_abort_conn_sync(hcon)\n                                        hci_dev_lock\n      hci_dev_lock\n                                        hci_conn_del(hcon)\n      v-------------------------------- hci_dev_unlock\n                                      hci_conn_put(hcon)\n      conn = hcon-\u003el2cap_data (UAF)"
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - The flaw is reached through Bluetooth ACL, SCO, or ISO packets, requiring an attacker within radio range of a connectable or advertising target.\nAC:L - An adjacent peer can repeatedly manipulate connection lifecycles while flooding receive traffic, influencing both sides of the race without an uncontrollable prerequisite.\nPR:N - The receive path performs no peer credential or kernel capability check and is reachable before application-level Bluetooth authentication.\nUI:N - No victim action is required once Bluetooth is operating in a connectable or advertising deployment; packet reception and teardown occur automatically.\nS:U - Exploitation compromises the host kernel within the same security authority and does not inherently cross a virtualization or hardware isolation boundary.\nC:H - The freed hci_conn and associated protocol objects contain numerous kernel pointers; reclaiming them can turn stale dereferences into powerful kernel-memory disclosure primitives.\nI:H - The UAF permits writes through reclaimed protocol state, including reference-count, workqueue, reassembly, and socket-related operations, making arbitrary corruption or control-flow hijacking plausible.\nA:H - The UAF has produced KASAN failures and kernel panics, and it can be triggered repeatedly to crash the system."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:10:46.641Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/ec74cdf77310c43b01b83ee898a9bd4b4b0b8e93"
            },
            {
              "url": "https://git.kernel.org/stable/c/79a2d4678ba90bdba577dc3af88cc900d6dcd5ee"
            }
          ],
          "title": "Bluetooth: hci_core: lookup hci_conn on RX path on protocol side",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2025-68304",
        "datePublished": "2025-12-16T15:06:21.887Z",
        "dateReserved": "2025-12-16T14:48:05.294Z",
        "dateUpdated": "2026-10-15T22:02:48.882Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

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.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
Events included in the timeline

Loading timeline…


    Loading…

    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.