Bluetooth: SMP: derive legacy responder STK authentication from MITM state
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 3.16, 5.10.253, 5.15.203, 6.1.168, 6.6.134, and 3 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: SMP: derive legacy responder STK authentication from MITM state The legacy responder path in smp_random() currently labels the stored STK as authenticated whenever pending_sec_level is BT_SECURITY_HIGH. That reflects what the local service requested, not what the pairing flow actually achieved. For Just Works/Confirm legacy pairing, SMP_FLAG_MITM_AUTH stays clear and the resulting STK should remain unauthenticated even if the local side requested HIGH security. Use the established MITM state when storing the responder STK so the key metadata matches the pairing result. This also keeps the legacy path aligned with the Secure Connections code, which already treats JUST_WORKS/JUST_CFM as unauthenticated.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 9a38659a3d06080715691bd3139f9c4b61f688e3; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 667f44f1392df6482483756458c48670e579e9ff; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 929db734d12db41ca5f95424db4612397f1bd4a7; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in b1c6a8e554a39b222c0879a288ea98e338fc4d77; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 0afc846bd80073ffcd2b8040f2b2fafaea3d9f72; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 061ee71ac6b03c9f8432fe49538c3682bfcf4cf3; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 9a6d0db176f082685e0b6149700c0baf3ce2aa8b; From fff3490f47810e2d34b91fb9e31103e923b11c2f · fixed in 20756fec2f0108cb88e815941f1ffff88dc286fe; From 3.15.5 · fixed in 3.16
- Linux Linux
3.16
- KernelLinux
From 3.16.0 · fixed in 5.10.253; From 5.11.0 · fixed in 5.15.203; From 5.16.0 · fixed in 6.1.168; From 6.2.0 · fixed in 6.6.134; From 6.7.0 · fixed in 6.12.81; From 6.13.0 · fixed in 6.18.22; From 6.19.0 · fixed in 6.19.12
References 8
git.kernel.org
- stable/c/9a38659a3d06080715691bd3139f9c4b61f688e3
- stable/c/667f44f1392df6482483756458c48670e579e9ff
- stable/c/929db734d12db41ca5f95424db4612397f1bd4a7
- stable/c/b1c6a8e554a39b222c0879a288ea98e338fc4d77
- stable/c/0afc846bd80073ffcd2b8040f2b2fafaea3d9f72
- stable/c/061ee71ac6b03c9f8432fe49538c3682bfcf4cf3
- stable/c/9a6d0db176f082685e0b6149700c0baf3ce2aa8b
- stable/c/20756fec2f0108cb88e815941f1ffff88dc286fe