Bluetooth: L2CAP: refuse __l2cap_chan_add if chan already has conn
Severity and exploitation
KEV coverage does not rule out exploitation.
Assessment vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HSeverity
high7.8CVSS measures technical severity, not the likelihood of an attack.
Known exploitation
Not listed in the checked CISA KEV catalog
Absence from CISA KEV does not rule out attacks.
Public exploit
Not established by this record
Missing evidence does not mean no public exploit exists.
Remediation
Fix status not established
No structured fix or guidance is available here. Check the latest publisher advisory.
What this means
The Linux kernel has a vulnerability in the Bluetooth L2CAP protocol, where a TOCTOU race condition can cause an invariant to be violated, potentially leading to issues. The affected versions include various Linux kernel versions. Local access may be required to exploit this weakness.
Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.Attack conditions
No attack-condition excerpt has been identified here. Review the full source description and references for authentication, network access, and configuration requirements.
Review supporting sources →Affected versions
Check the exact model, release, and any platform requirements against your installation.
Linux · Linux
Linux
17 ranges
Linux · Linux
Linux
Compare with this publisher’s ranges. This does not inspect your installation.
affected
8f90405a4a6f1f1880dc07996b47bf57c712bd8a → before 85cc289eb08afa975375f838187369e68b429ee0
git versions
32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b → before 820579652b24ce277e0097cd65b42bd9b7b8bf07
git versions
8922c7940bae9ce4b1736dddb6362370793835c2 → before e618d928ec7f88cbeadfa3542adcac40f474e629
git versions
91047a4396a8b1857a6f712a90cf33ec0012b189 → before fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2
git versions
0b0e2bf39cf99e458d991b9df253727e036a7d7d → before 52fe88e4ef87311eee32b45c65603e7c69e75e7d
git versions
d3b739db5dc6f688a60d56da872fabaf65246032 → before 10c705dd706aa93164ba41f2566f15206d6c178e
git versions
b66774b48dd98f07254951f74ea6f513efe7ff8b → before 73820561d8cbfd3364a29b8fa77f1707f26029da
git versions
b66774b48dd98f07254951f74ea6f513efe7ff8b → before d3afd7803f9bc2a8c4270199497b60158b2fc647
git versions
b66774b48dd98f07254951f74ea6f513efe7ff8b → before 86b55991d3cd690e73c5ef8d20b75ae4905b357a
git versions
50c38d9f42a529691e4e67ea9cedf4f0bfc8d277
git versions
5.10.265 → before 5.10.273
semver versions
5.15.216 → before 5.15.224
semver versions
6.1.183 → before 6.1.191
semver versions
6.6.145 → before 6.6.161
semver versions
6.12.97 → before 6.12.115
semver versions
6.18.39 → before 6.18.60
semver versions
7.1.4 → before 7.2
semver versions
Other versions: unaffected
Linux · Linux
Linux
11 ranges
Linux · Linux
Linux
Compare with this publisher’s ranges. This does not inspect your installation.
affected
7.2
unaffected
0 → before 7.2
semver versions
5.10.273 → through 5.10.*
semver versions
5.15.224 → through 5.15.*
semver versions
6.1.191 → through 6.1.*
semver versions
6.6.161 → through 6.6.*
semver versions
6.12.115 → through 6.12.*
semver versions
6.18.60 → through 6.18.*
semver versions
7.2.14 → through 7.2.*
semver versions
7.3.1 → through 7.3.*
semver versions
7.4-rc1 → through *
original_commit_for_fix versions
Other versions: affected
What to do
Compare your installed product and version with the affected versions above. A matching product name alone does not confirm exposure.
No structured fix or remediation guidance is available here. Check the full source description and vendor’s latest advisory for a patch or workaround; do not assume another version is safe.
cve.new guidance unless attributed to a publisher. This page does not inspect your installation.
Public exploit evidence
No public exploit reference is identified in the imported evidence. This is not a claim that no exploit exists.
Original source description
Read the full publisher description
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: L2CAP: refuse __l2cap_chan_add if chan already has conn
l2cap_chan may be linked to l2cap_conn at most once. This is assumed in several places, eg l2cap_chan_del cleanup.
There is a TOCTOU race where the invariant is violated:
[Task 1] [Task 2]
l2cap_chan_connect l2cap_sock_bind
l2cap_chan_lock lock_sock
l2cap_state_change if (sk->sk_state != BT_OPEN)
chan->state = BT_CONNECT
l2cap_sock_state_change_cb chan->state = BT_BOUND
sk->sk_state = BT_BOUND
lock_sock <------------------ release_sock
sk->sk_state = BT_CONNECT
l2cap_sock_connect() does not check sk->sk_state, so since chan->state is now BT_BOUND, subsequent connect() ends up with second __l2cap_chan_add.
Explicitly document and check the invariant in __l2cap_chan_add with WARN_ON_ONCE. The only callsite where it could be hit is l2cap_chan_connect, so add pre-check there to avoid relying on chan->state. chan->state read/write is not properly guarded currently so there can be other TOCTOUC problems.
Add l2cap_lock_chan in l2cap_sock_bind() to guard chan->state write.
References
9 sourcesInside the record
Evidence available
Describes the evidence in this view, not whether the product is safe.
Original records
CVE-2026-99239View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.
cve.new JSON →Environment requirements
These conditions apply together as specified by the publisher. A matching product name alone does not establish exposure.
Linux · platform conditions
Any condition may hold
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 5.10.265
Before: 5.10.273
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 5.15.216
Before: 5.15.224
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 6.1.183
Before: 6.1.191
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 6.6.145
Before: 6.6.161
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 6.12.97
Before: 6.12.115
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 6.18.39
Before: 6.18.60
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 7.2
Before: 7.2.14
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 7.2
Before: 7.3.1
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 7.2
Before: 7.4-rc1
Vulnerable product
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*From (inclusive): 7.1.4
Original applicability statements
[
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.10.265",
"versionEndExcluding": "5.10.273"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.15.216",
"versionEndExcluding": "5.15.224"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.1.183",
"versionEndExcluding": "6.1.191"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.6.145",
"versionEndExcluding": "6.6.161"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.12.97",
"versionEndExcluding": "6.12.115"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.18.39",
"versionEndExcluding": "6.18.60"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "7.2",
"versionEndExcluding": "7.2.14"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "7.2",
"versionEndExcluding": "7.3.1"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "7.2",
"versionEndExcluding": "7.4-rc1"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "7.1.4"
}
]
}
]
}
]Contributing organizations · 1
Assigning organization
Timeline
All times UTCAdvisory published
Publication date supplied by the source.
Source updated
Latest modification date supplied by the source.
Last imported by cve.new
Latest catalog import, not the date we first saw this advisory.
What changed
Follow changes- CVE · CVE-2026-99239
Observed 2026-11-03T19:50:52.320Z · upstream updated 2026-11-03T19:13:06.554Z
Product or version evidence changed
before
[ { "vendor": "Linux", "name": "Linux", "platforms": [], "versions": [ { "version": "8f90405a4a6f1f1880dc07996b47bf57c712bd8a", "status": "affected", "lessThan": "85cc289eb08afa975375f838187369e68b429ee0", "versionType": "git" }, { "version": "32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b", "status": "affected", "lessThan": "820579652b24ce277e0097cd65b42bd9b7b8bf07", "versionType": "git" }, { "version": "8922c7940bae9ce4b1736dddb6362370793835c2", "status": "affected", "lessThan": "e618d928ec7f88cbeadfa3542adcac40f474e629", "versionType": "git" }, { "version": "91047a4396a8b1857a6f712a90cf33ec0012b189", "status": "affected", "lessThan": "fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2", "versionType": "git" }, { "version": "0b0e2bf39cf99e458d991b9df253727e036a7d7d", "status": "affected", "lessThan": "52fe88e4ef87311eee32b45c65603e7c69e75e7d", "versionType": "git" }, { "version": "d3b739db5dc6f688a60d56da872fabaf65246032", "status": "affected", "lessThan": "10c705dd706aa93164ba41f2566f15206d6c178e", "versionType": "git" }, { "version": "b66774b48dd98f07254951f74ea6f513efe7ff8b", "status": "affected", "lessThan": "73820561d8cbfd3364a29b8fa77f1707f26029da", "versionType": "git" }, { "version": "b66774b48dd98f07254951f74ea6f513efe7ff8b", "status": "affected", "lessThan": "d3afd7803f9bc2a8c4270199497b60158b2fc647", "versionType": "git" }, { "version": "50c38d9f42a529691e4e67ea9cedf4f0bfc8d277", "status": "affected", "versionType": "git" }, { "version": "5.10.265", "status": "affected", "lessThan": "5.10.273", "versionType": "semver" }, { "version": "5.15.216", "status": "affected", "lessThan": "5.15.224", "versionType": "semver" }, { "version": "6.1.183", "status": "affected", "lessThan": "6.1.191", "versionType": "semver" }, { "version": "6.6.145", "status": "affected", "lessThan": "6.6.161", "versionType": "semver" }, { "version": "6.12.97", "status": "affected", "lessThan": "6.12.115", "versionType": "semver" }, { "version": "6.18.39", "status": "affected", "lessThan": "6.18.60", "versionType": "semver" }, { "version": "7.1.4", "status": "affected", "lessThan": "7.2", "versionType": "semver" } ], "defaultStatus": "unaffected", "cpes": [], "source": "Linux", "url": "https://www.cve.org/CVERecord?id=CVE-2026-99239" }, { "vendor": "Linux", "name": "Linux", "platforms": [], "versions": [ { "version": "7.2", "status": "affected" }, { "version": "0", "status": "unaffected", "lessThan": "7.2", "versionType": "semver" }, { "version": "5.10.273", "status": "unaffected", "lessThanOrEqual": "5.10.*", "versionType": "semver" }, { "version": "5.15.224", "status": "unaffected", "lessThanOrEqual": "5.15.*", "versionType": "semver" }, { "version": "6.1.191", "status": "unaffected", "lessThanOrEqual": "6.1.*", "versionType": "semver" }, { "version": "6.6.161", "status": "unaffected", "lessThanOrEqual": "6.6.*", "versionType": "semver" }, { "version": "6.12.115", "status": "unaffected", "lessThanOrEqual": "6.12.*", "versionType": "semver" }, { "version": "6.18.60", "status": "unaffected", "lessThanOrEqual": "6.18.*", "versionType": "semver" }, { "version": "7.2.14", "status": "unaffected", "lessThanOrEqual": "7.2.*", "versionType": "semver" }, { "version": "7.3.1", "status": "unaffected", "lessThanOrEqual": "7.3.*", "versionType": "semver" } ], "defaultStatus": "affected", "cpes": [], "source": "Linux", "url": "https://www.cve.org/CVERecord?id=CVE-2026-99239" } ]after
[ { "vendor": "Linux", "name": "Linux", "platforms": [], "versions": [ { "version": "8f90405a4a6f1f1880dc07996b47bf57c712bd8a", "status": "affected", "lessThan": "85cc289eb08afa975375f838187369e68b429ee0", "versionType": "git" }, { "version": "32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b", "status": "affected", "lessThan": "820579652b24ce277e0097cd65b42bd9b7b8bf07", "versionType": "git" }, { "version": "8922c7940bae9ce4b1736dddb6362370793835c2", "status": "affected", "lessThan": "e618d928ec7f88cbeadfa3542adcac40f474e629", "versionType": "git" }, { "version": "91047a4396a8b1857a6f712a90cf33ec0012b189", "status": "affected", "lessThan": "fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2", "versionType": "git" }, { "version": "0b0e2bf39cf99e458d991b9df253727e036a7d7d", "status": "affected", "lessThan": "52fe88e4ef87311eee32b45c65603e7c69e75e7d", "versionType": "git" }, { "version": "d3b739db5dc6f688a60d56da872fabaf65246032", "status": "affected", "lessThan": "10c705dd706aa93164ba41f2566f15206d6c178e", "versionType": "git" }, { "version": "b66774b48dd98f07254951f74ea6f513efe7ff8b", "status": "affected", "lessThan": "73820561d8cbfd3364a29b8fa77f1707f26029da", "versionType": "git" }, { "version": "b66774b48dd98f07254951f74ea6f513efe7ff8b", "status": "affected", "lessThan": "d3afd7803f9bc2a8c4270199497b60158b2fc647", "versionType": "git" }, { "version": "b66774b48dd98f07254951f74ea6f513efe7ff8b", "status": "affected", "lessThan": "86b55991d3cd690e73c5ef8d20b75ae4905b357a", "versionType": "git" }, { "version": "50c38d9f42a529691e4e67ea9cedf4f0bfc8d277", "status": "affected", "versionType": "git" }, { "version": "5.10.265", "status": "affected", "lessThan": "5.10.273", "versionType": "semver" }, { "version": "5.15.216", "status": "affected", "lessThan": "5.15.224", "versionType": "semver" }, { "version": "6.1.183", "status": "affected", "lessThan": "6.1.191", "versionType": "semver" }, { "version": "6.6.145", "status": "affected", "lessThan": "6.6.161", "versionType": "semver" }, { "version": "6.12.97", "status": "affected", "lessThan": "6.12.115", "versionType": "semver" }, { "version": "6.18.39", "status": "affected", "lessThan": "6.18.60", "versionType": "semver" }, { "version": "7.1.4", "status": "affected", "lessThan": "7.2", "versionType": "semver" } ], "defaultStatus": "unaffected", "cpes": [], "source": "Linux", "url": "https://www.cve.org/CVERecord?id=CVE-2026-99239" }, { "vendor": "Linux", "name": "Linux", "platforms": [], "versions": [ { "version": "7.2", "status": "affected" }, { "version": "0", "status": "unaffected", "lessThan": "7.2", "versionType": "semver" }, { "version": "5.10.273", "status": "unaffected", "lessThanOrEqual": "5.10.*", "versionType": "semver" }, { "version": "5.15.224", "status": "unaffected", "lessThanOrEqual": "5.15.*", "versionType": "semver" }, { "version": "6.1.191", "status": "unaffected", "lessThanOrEqual": "6.1.*", "versionType": "semver" }, { "version": "6.6.161", "status": "unaffected", "lessThanOrEqual": "6.6.*", "versionType": "semver" }, { "version": "6.12.115", "status": "unaffected", "lessThanOrEqual": "6.12.*", "versionType": "semver" }, { "version": "6.18.60", "status": "unaffected", "lessThanOrEqual": "6.18.*", "versionType": "semver" }, { "version": "7.2.14", "status": "unaffected", "lessThanOrEqual": "7.2.*", "versionType": "semver" }, { "version": "7.3.1", "status": "unaffected", "lessThanOrEqual": "7.3.*", "versionType": "semver" }, { "version": "7.4-rc1", "status": "unaffected", "lessThanOrEqual": "*", "versionType": "original_commit_for_fix" } ], "defaultStatus": "affected", "cpes": [], "source": "Linux", "url": "https://www.cve.org/CVERecord?id=CVE-2026-99239" } ]References changed
before
[ "https://git.kernel.org/stable/c/85cc289eb08afa975375f838187369e68b429ee0", "https://git.kernel.org/stable/c/820579652b24ce277e0097cd65b42bd9b7b8bf07", "https://git.kernel.org/stable/c/e618d928ec7f88cbeadfa3542adcac40f474e629", "https://git.kernel.org/stable/c/fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2", "https://git.kernel.org/stable/c/52fe88e4ef87311eee32b45c65603e7c69e75e7d", "https://git.kernel.org/stable/c/10c705dd706aa93164ba41f2566f15206d6c178e", "https://git.kernel.org/stable/c/73820561d8cbfd3364a29b8fa77f1707f26029da", "https://git.kernel.org/stable/c/d3afd7803f9bc2a8c4270199497b60158b2fc647" ]
after
[ "https://git.kernel.org/stable/c/85cc289eb08afa975375f838187369e68b429ee0", "https://git.kernel.org/stable/c/820579652b24ce277e0097cd65b42bd9b7b8bf07", "https://git.kernel.org/stable/c/e618d928ec7f88cbeadfa3542adcac40f474e629", "https://git.kernel.org/stable/c/fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2", "https://git.kernel.org/stable/c/52fe88e4ef87311eee32b45c65603e7c69e75e7d", "https://git.kernel.org/stable/c/10c705dd706aa93164ba41f2566f15206d6c178e", "https://git.kernel.org/stable/c/73820561d8cbfd3364a29b8fa77f1707f26029da", "https://git.kernel.org/stable/c/d3afd7803f9bc2a8c4270199497b60158b2fc647", "https://git.kernel.org/stable/c/86b55991d3cd690e73c5ef8d20b75ae4905b357a" ]
Environment requirements changed
before
[ { "source": "Linux", "statements": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "5.10.265", "versionEndExcluding": "5.10.273" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "5.15.216", "versionEndExcluding": "5.15.224" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1.183", "versionEndExcluding": "6.1.191" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.6.145", "versionEndExcluding": "6.6.161" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.12.97", "versionEndExcluding": "6.12.115" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.18.39", "versionEndExcluding": "6.18.60" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.2", "versionEndExcluding": "7.2.14" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.2", "versionEndExcluding": "7.3.1" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.1.4" } ] } ] } ] } ]after
[ { "source": "Linux", "statements": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "5.10.265", "versionEndExcluding": "5.10.273" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "5.15.216", "versionEndExcluding": "5.15.224" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1.183", "versionEndExcluding": "6.1.191" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.6.145", "versionEndExcluding": "6.6.161" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.12.97", "versionEndExcluding": "6.12.115" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.18.39", "versionEndExcluding": "6.18.60" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.2", "versionEndExcluding": "7.2.14" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.2", "versionEndExcluding": "7.3.1" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.2", "versionEndExcluding": "7.4-rc1" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "7.1.4" } ] } ] } ] } ]
Large field values are marked as truncated previews. Original source snapshots remain retained.
Showing up to 50 most recent observed changes.