Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: Fix type confusion in l2cap_ecred_reconf_rsp() l2cap_ecred_reconf_rsp() casts the incoming data to struct l2cap_ecred_conn_rsp (the ECRED *connection* response, 8 bytes with result at offset 6) instead of struct l2cap_ecred_reconf_rsp (2 bytes with result at offset 0). This causes two problems: - The sizeof(*rsp) length check requires 8 bytes instead of the correct 2, so valid L2CAP_ECRED_RECONF_RSP packets are rejected with -EPROTO. - rsp->result reads from offset 6 instead of offset 0, returning wrong data when the packet is large enough to pass the check. Fix by using the correct type. Also pass the already byte-swapped result variable to BT_DBG instead of the raw __le16 field.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 15f02b91056253e8cdc592888f431da0731337b8 before 21d3ba696918d6373233aac0b9d51fcabdedddc0; affected 15f02b91056253e8cdc592888f431da0731337b8 before 3b94e62caa1dc1198d0d55d97bd710da1dee15d7; affected 15f02b91056253e8cdc592888f431da0731337b8 before 111f74547eee8cfedfb854284e80f35c8a491186; affected 15f02b91056253e8cdc592888f431da0731337b8 before dd3b221e21079ade8263fbb7176f3d55ad75d3b6; affected 15f02b91056253e8cdc592888f431da0731337b8 before d90150c72d2e6a8a3079e88755dafcfbe91c746d; affected 15f02b91056253e8cdc592888f431da0731337b8 before 5a1ea296f8589ce8f1e3141b2b123b34ad010e19; affected 15f02b91056253e8cdc592888f431da0731337b8 before f110b8f58b254bf997cec1bd60701b7798e9bb82; affected 15f02b91056253e8cdc592888f431da0731337b8 before 15145675690cab2de1056e7ed68e59cbd0452529 |
| Linux / Linux | affected 5.7; unaffected 0 before 5.7; unaffected 5.10.253 through 5.10.*; unaffected 5.15.203 through 5.15.*; unaffected 6.1.167 through 6.1.*; unaffected 6.6.130 through 6.6.*; unaffected 6.12.78 through 6.12.*; unaffected 6.18.20 through 6.18.*; unaffected 6.19.10 through 6.19.*; unaffected 7.0 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/21d3ba696918d6373233aac0b9d51fcabdedddc0
- https://git.kernel.org/stable/c/3b94e62caa1dc1198d0d55d97bd710da1dee15d7
- https://git.kernel.org/stable/c/111f74547eee8cfedfb854284e80f35c8a491186
- https://git.kernel.org/stable/c/dd3b221e21079ade8263fbb7176f3d55ad75d3b6
- https://git.kernel.org/stable/c/d90150c72d2e6a8a3079e88755dafcfbe91c746d
- https://git.kernel.org/stable/c/5a1ea296f8589ce8f1e3141b2b123b34ad010e19
- https://git.kernel.org/stable/c/f110b8f58b254bf997cec1bd60701b7798e9bb82
- https://git.kernel.org/stable/c/15145675690cab2de1056e7ed68e59cbd0452529
ADP enrichment
No English description supplied.
No references supplied.