CVE-2017-1000250: Infoleak
All versions of the SDP server in BlueZ 5.46 and earlier are vulnerable to an information disclosure vulnerability which allows remote attackers to obtain sensitive information from the bluetoothd process memory. This vulnerability lies in the processing of SDP search attribute requests.
Other sources
Information disclosure vulnerability due to out-of-bounds heap read in servicesearchattrreq function when processing of incoming requests in the SDP server was found. Unauthenticated attacker can exploit this vulnerability to read potentially sensitive data from heap of the bluetoothd process.
Vulnerable code:
... } else { / continuation State exists -> get from cache / sdpbuft pCache = sdpgetcachedrsp(cstate); if (pCache) { uint16t sent = MIN(max, pCache->datasize - cstate->cStateValue.maxBytesSent); pResponse = pCache->data; memcpy(buf->data, pResponse + cstate->cStateValue.maxBytesSent, sent); buf->datasize += sent; cstate->cStateValue.maxBytesSent += sent; if (cstate->cStateValue.maxBytesSent == pCache->datasize) cstatesize = sdpsetcstatepdu(buf, NULL); else cstatesize = sdpsetcstatepdu(buf, cstate); } else { status = SDPINVALIDCSTATE; SDPDBG("Non-null continuation state, but null cache buffer"); } } ...
When a long response is returned to a specific search attribute request, a continuation state is returned to allow reception of additional fragments, via additional requests that contain the last continuation state sent. However, the incoming “cstate” that requests additional fragments isn’t validated properly, and thus an out-of-bounds read of the response buffer (pResponse) can be achieved, leading to information disclosure of the heap.
— Red Hat
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2017-1000250?
CVE-2017-1000250 is classified as a medium severity vulnerability due to its potential for information disclosure.
How do I fix CVE-2017-1000250?
To fix CVE-2017-1000250, upgrade to BlueZ version 5.47 or later, which includes the necessary security patches.
What kind of data can be exposed due to CVE-2017-1000250?
CVE-2017-1000250 allows remote attackers to access sensitive information from the process memory of Bluetooth services.
Who is affected by CVE-2017-1000250?
CVE-2017-1000250 affects users running BlueZ versions 5.46 and earlier.
Is there a workaround for CVE-2017-1000250?
There are no known workarounds for CVE-2017-1000250; the best mitigation is to upgrade to the latest version of BlueZ.