{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2024-50125","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2024-10-21T19:36:19.954Z","datePublished":"2024-11-05T17:10:53.090Z","dateUpdated":"2026-08-19T16:27:45.098Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-19T16:27:45.098Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: SCO: Fix UAF on sco_sock_timeout\n\nconn->sk maybe have been unlinked/freed while waiting for sco_conn_lock\nso this checks if the conn->sk is still valid by checking if it part of\nsco_sk_list."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:A - The vulnerable path lives in the Bluetooth SCO stack and only executes when `conn->hcon` is non-NULL, i.e. an actual SCO/eSCO link exists with an in-range Bluetooth peer; `sco_conn_del()` (the second patched call site) is driven directly by `sco_connect_cfm`/`sco_disconn_cfm` from the adjacent device. Bluetooth radio proximity is required, matching the Adjacent classification.\nAC:L - The attacker controls both sides of the race: `SO_SNDTIMEO` sets `sk->sk_sndtimeo`, which `sco_connect()` passes verbatim to `sco_sock_set_timer()`, so the timeout work can be scheduled to fire at an arbitrarily chosen moment and raced against `close()`, and `sco_sock_clear_timer()` uses non-sync `cancel_delayed_work()` so an in-flight work item is never waited for. syzbot produced a reproducer and confirmed the fix.\nPR:L - There is no `capable()` or `CAP_NET_*` check anywhere in `sco_sock_create/bind/listen/connect`, so any unprivileged local user can create SCO sockets and drive the connect/close sequence that frees the socket. Only basic local account access is needed, not root.\nUI:N - The whole sequence — socket creation, `SO_SNDTIMEO`, connect, close — is performed by the attacker's own process against a system Bluetooth adapter. No victim action is required.\nS:U - The use-after-free corrupts kernel heap memory within the same kernel security authority; there is no VM, IOMMU, or sandbox boundary crossed.\nC:H - A use-after-free on `struct sock` lets the attacker respray the freed slab object and read back its contents through subsequent socket operations, giving a path to arbitrary kernel memory disclosure.\nI:H - The stale pointer is written through — `sock_hold()` performs an atomic increment on freed memory and `sk->sk_err = ETIMEDOUT` writes into it — and `sk->sk_state_change(sk)` performs an indirect call through a function pointer read from the freed object, providing a control-flow hijack primitive.\nA:H - Even without successful exploitation the UAF produces a KASAN splat / kernel oops or panic in `sco_sock_timeout()`, and it can be triggered repeatedly by an unprivileged process."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/bluetooth/bluetooth.h","net/bluetooth/af_bluetooth.c","net/bluetooth/sco.c"],"versions":[{"version":"a1073aad497d0d071a71f61b721966a176d50c08","lessThan":"678386459ffc07d2fbfbfe33456013786975cfef","status":"affected","versionType":"git"},{"version":"ba316be1b6a00db7126ed9a39f9bee434a508043","lessThan":"74a466a15731a754bcd8b5a83c126b5122e15a45","status":"affected","versionType":"git"},{"version":"ba316be1b6a00db7126ed9a39f9bee434a508043","lessThan":"9ddda5d967e84796e7df1b54a55f36b4b9f21079","status":"affected","versionType":"git"},{"version":"ba316be1b6a00db7126ed9a39f9bee434a508043","lessThan":"d30803f6a972b5b9e26d1d43b583c7ec151de04b","status":"affected","versionType":"git"},{"version":"ba316be1b6a00db7126ed9a39f9bee434a508043","lessThan":"80b05fbfa998480fb3d5299d93eab946f51e9c36","status":"affected","versionType":"git"},{"version":"ba316be1b6a00db7126ed9a39f9bee434a508043","lessThan":"1bf4470a3939c678fb822073e9ea77a0560bc6bb","status":"affected","versionType":"git"},{"version":"fea63ccd928c01573306983346588b26cffb5572","status":"affected","versionType":"git"},{"version":"48669c81a65628ef234cbdd91b9395952c7c27fe","status":"affected","versionType":"git"},{"version":"37d7ae2b0578f2373674a755402ee722e96edc08","status":"affected","versionType":"git"},{"version":"ec1f74319bb35c1c90c25014ec0f6ea6c3ca2134","status":"affected","versionType":"git"},{"version":"b657bba82ff6a007d84fd076bd73b11131726a2b","status":"affected","versionType":"git"},{"version":"5.10.67","lessThan":"5.10.265","status":"affected","versionType":"semver"},{"version":"4.14.263","lessThan":"4.15","status":"affected","versionType":"semver"},{"version":"4.19.207","lessThan":"4.20","status":"affected","versionType":"semver"},{"version":"5.4.148","lessThan":"5.5","status":"affected","versionType":"semver"},{"version":"5.13.19","lessThan":"5.14","status":"affected","versionType":"semver"},{"version":"5.14.6","lessThan":"5.15","status":"affected","versionType":"semver"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["include/net/bluetooth/bluetooth.h","net/bluetooth/af_bluetooth.c","net/bluetooth/sco.c"],"versions":[{"version":"5.15","status":"affected"},{"version":"0","lessThan":"5.15","status":"unaffected","versionType":"semver"},{"version":"5.10.265","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.181","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.115","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.59","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.11.6","lessThanOrEqual":"6.11.*","status":"unaffected","versionType":"semver"},{"version":"6.12","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.67","versionEndExcluding":"5.10.265"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.15.181"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.1.115"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.6.59"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.11.6"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.12"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.14.263"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.19.207"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.148"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13.19"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.14.6"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/678386459ffc07d2fbfbfe33456013786975cfef"},{"url":"https://git.kernel.org/stable/c/74a466a15731a754bcd8b5a83c126b5122e15a45"},{"url":"https://git.kernel.org/stable/c/9ddda5d967e84796e7df1b54a55f36b4b9f21079"},{"url":"https://git.kernel.org/stable/c/d30803f6a972b5b9e26d1d43b583c7ec151de04b"},{"url":"https://git.kernel.org/stable/c/80b05fbfa998480fb3d5299d93eab946f51e9c36"},{"url":"https://git.kernel.org/stable/c/1bf4470a3939c678fb822073e9ea77a0560bc6bb"}],"title":"Bluetooth: SCO: Fix UAF on sco_sock_timeout","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":7.8,"attackVector":"LOCAL","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","integrityImpact":"HIGH","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"id":"CVE-2024-50125","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2024-12-11T14:25:55.353607Z"}}}],"problemTypes":[{"descriptions":[{"lang":"en","type":"CWE","cweId":"CWE-416","description":"CWE-416 Use After Free"}]}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2024-12-11T14:58:33.667Z"}},{"title":"CVE Program Container","references":[{"url":"https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html"}],"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2025-11-03T22:25:44.566Z"}}]}}