In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: MGMT: Fix possible crash on mgmtindexremoved
If mgmtindexremoved is called while there are commands queued on cmd_sync it could lead to crashes like the bellow trace:
0x0000053D: _listdelentryvalidorreport+0x98/0xdc 0x0000053D: mgmtpendingremove+0x18/0x58 [bluetooth] 0x0000053E: mgmtremoveadvmonitorcomplete+0x80/0x108 [bluetooth] 0x0000053E: hcicmdsync_work+0xbc/0x164 [bluetooth]
So while handling mgmtindexremoved this attempts to dequeue commands passed as userdata to cmdsync.
[
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f53e1c9c726d83092167f2226f32bd3b73f26c21",
"signature_type": "Line",
"target": {
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-058c8b95",
"digest": {
"line_hashes": [
"304976742471085342138992560462606011643",
"145312612374932053963586573315012414502",
"191976020018039695932830124212503440161",
"148122976760282322517170463976988852260",
"121601631931438311419214203699892167605",
"2871175012200340474122674727450510365",
"241315883291557366903670345547039036025",
"256391293728963179360508767846758492131",
"223182144219335743496882418607840366141",
"209323158427517410840063009481036582596",
"32618022916194404811258847833510222942",
"163758539403450840075532156806241174574",
"336603896891006012994806007534218794204",
"333729178379070607383720018917660041856",
"17768672087909651584869047894381502474",
"207786888789986264089357358409999721658",
"41315553726127569847591585232173840553",
"201777389112950988428079785828702822049",
"312184867917420024823024504867669341079",
"301894833350632987926374661729587554472",
"229519612218141279143503868649018804118",
"330922603955068080175007021919476619287",
"88934932761271278279174590384150868522"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0cc47233af35fb5f10b5e6a027cb4ccd480caf9a",
"signature_type": "Function",
"target": {
"function": "cmd_complete_rsp",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-15490816",
"digest": {
"length": 215.0,
"function_hash": "222785466572212201390470180130687720491"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4883296505aa7e4863c6869b689afb6005633b23",
"signature_type": "Function",
"target": {
"function": "cmd_complete_rsp",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-19ad588a",
"digest": {
"length": 215.0,
"function_hash": "222785466572212201390470180130687720491"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f53e1c9c726d83092167f2226f32bd3b73f26c21",
"signature_type": "Function",
"target": {
"function": "cmd_complete_rsp",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-242afb20",
"digest": {
"length": 215.0,
"function_hash": "222785466572212201390470180130687720491"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0cc47233af35fb5f10b5e6a027cb4ccd480caf9a",
"signature_type": "Function",
"target": {
"function": "__mgmt_power_off",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-4529e490",
"digest": {
"length": 618.0,
"function_hash": "72538920586979108340043134816342901368"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@19b40ca62607cef78369549d1af091f2fd558931",
"signature_type": "Function",
"target": {
"function": "cmd_complete_rsp",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-4a11e6ee",
"digest": {
"length": 215.0,
"function_hash": "222785466572212201390470180130687720491"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4883296505aa7e4863c6869b689afb6005633b23",
"signature_type": "Function",
"target": {
"function": "__mgmt_power_off",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-54bde50d",
"digest": {
"length": 618.0,
"function_hash": "72538920586979108340043134816342901368"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f53e1c9c726d83092167f2226f32bd3b73f26c21",
"signature_type": "Function",
"target": {
"function": "__mgmt_power_off",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-5ccc34dd",
"digest": {
"length": 618.0,
"function_hash": "72538920586979108340043134816342901368"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f53e1c9c726d83092167f2226f32bd3b73f26c21",
"signature_type": "Function",
"target": {
"function": "mgmt_index_removed",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-7555f109",
"digest": {
"length": 774.0,
"function_hash": "183939361025682661914340737431103434980"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8c3f7943a29145d8a2d8e24893762f7673323eae",
"signature_type": "Function",
"target": {
"function": "cmd_complete_rsp",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-785fbecc",
"digest": {
"length": 215.0,
"function_hash": "222785466572212201390470180130687720491"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8c3f7943a29145d8a2d8e24893762f7673323eae",
"signature_type": "Function",
"target": {
"function": "__mgmt_power_off",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-8bbf6c87",
"digest": {
"length": 618.0,
"function_hash": "72538920586979108340043134816342901368"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0cc47233af35fb5f10b5e6a027cb4ccd480caf9a",
"signature_type": "Function",
"target": {
"function": "mgmt_index_removed",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-b80f29fe",
"digest": {
"length": 774.0,
"function_hash": "183939361025682661914340737431103434980"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8c3f7943a29145d8a2d8e24893762f7673323eae",
"signature_type": "Line",
"target": {
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-b9c7cf0b",
"digest": {
"line_hashes": [
"304976742471085342138992560462606011643",
"145312612374932053963586573315012414502",
"191976020018039695932830124212503440161",
"148122976760282322517170463976988852260",
"121601631931438311419214203699892167605",
"2871175012200340474122674727450510365",
"241315883291557366903670345547039036025",
"256391293728963179360508767846758492131",
"223182144219335743496882418607840366141",
"209323158427517410840063009481036582596",
"32618022916194404811258847833510222942",
"163758539403450840075532156806241174574",
"336603896891006012994806007534218794204",
"333729178379070607383720018917660041856",
"17768672087909651584869047894381502474",
"207786888789986264089357358409999721658",
"41315553726127569847591585232173840553",
"201777389112950988428079785828702822049",
"312184867917420024823024504867669341079",
"301894833350632987926374661729587554472",
"229519612218141279143503868649018804118",
"330922603955068080175007021919476619287",
"88934932761271278279174590384150868522"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8c3f7943a29145d8a2d8e24893762f7673323eae",
"signature_type": "Function",
"target": {
"function": "mgmt_index_removed",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-c708e883",
"digest": {
"length": 774.0,
"function_hash": "183939361025682661914340737431103434980"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@19b40ca62607cef78369549d1af091f2fd558931",
"signature_type": "Function",
"target": {
"function": "mgmt_index_removed",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-d0f2209e",
"digest": {
"length": 896.0,
"function_hash": "65989225280183280922223776157946833884"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@19b40ca62607cef78369549d1af091f2fd558931",
"signature_type": "Line",
"target": {
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-d464b195",
"digest": {
"line_hashes": [
"304976742471085342138992560462606011643",
"145312612374932053963586573315012414502",
"191976020018039695932830124212503440161",
"148122976760282322517170463976988852260",
"121601631931438311419214203699892167605",
"2871175012200340474122674727450510365",
"241315883291557366903670345547039036025",
"256391293728963179360508767846758492131",
"223182144219335743496882418607840366141",
"204243102835647291404209822605149861246",
"180786018476990902560443601776826305197",
"221143000626099412612645812863303793722",
"244900371403216108175607006230581897230",
"166727638851493691048043658012161879136",
"336603896891006012994806007534218794204",
"333729178379070607383720018917660041856",
"17768672087909651584869047894381502474",
"207786888789986264089357358409999721658",
"41315553726127569847591585232173840553",
"201777389112950988428079785828702822049",
"312184867917420024823024504867669341079",
"301894833350632987926374661729587554472",
"229519612218141279143503868649018804118",
"330922603955068080175007021919476619287",
"88934932761271278279174590384150868522"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0cc47233af35fb5f10b5e6a027cb4ccd480caf9a",
"signature_type": "Line",
"target": {
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-e7696ecc",
"digest": {
"line_hashes": [
"304976742471085342138992560462606011643",
"145312612374932053963586573315012414502",
"191976020018039695932830124212503440161",
"148122976760282322517170463976988852260",
"121601631931438311419214203699892167605",
"2871175012200340474122674727450510365",
"241315883291557366903670345547039036025",
"256391293728963179360508767846758492131",
"223182144219335743496882418607840366141",
"209323158427517410840063009481036582596",
"32618022916194404811258847833510222942",
"163758539403450840075532156806241174574",
"336603896891006012994806007534218794204",
"333729178379070607383720018917660041856",
"17768672087909651584869047894381502474",
"207786888789986264089357358409999721658",
"41315553726127569847591585232173840553",
"201777389112950988428079785828702822049",
"312184867917420024823024504867669341079",
"301894833350632987926374661729587554472",
"229519612218141279143503868649018804118",
"330922603955068080175007021919476619287",
"88934932761271278279174590384150868522"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@19b40ca62607cef78369549d1af091f2fd558931",
"signature_type": "Function",
"target": {
"function": "__mgmt_power_off",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-f2adddb9",
"digest": {
"length": 618.0,
"function_hash": "72538920586979108340043134816342901368"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4883296505aa7e4863c6869b689afb6005633b23",
"signature_type": "Function",
"target": {
"function": "mgmt_index_removed",
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-f5b0df90",
"digest": {
"length": 774.0,
"function_hash": "183939361025682661914340737431103434980"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4883296505aa7e4863c6869b689afb6005633b23",
"signature_type": "Line",
"target": {
"file": "net/bluetooth/mgmt.c"
},
"id": "CVE-2024-49951-fe1b99cb",
"digest": {
"line_hashes": [
"304976742471085342138992560462606011643",
"145312612374932053963586573315012414502",
"191976020018039695932830124212503440161",
"148122976760282322517170463976988852260",
"121601631931438311419214203699892167605",
"2871175012200340474122674727450510365",
"241315883291557366903670345547039036025",
"256391293728963179360508767846758492131",
"223182144219335743496882418607840366141",
"209323158427517410840063009481036582596",
"32618022916194404811258847833510222942",
"163758539403450840075532156806241174574",
"336603896891006012994806007534218794204",
"333729178379070607383720018917660041856",
"17768672087909651584869047894381502474",
"207786888789986264089357358409999721658",
"41315553726127569847591585232173840553",
"201777389112950988428079785828702822049",
"312184867917420024823024504867669341079",
"301894833350632987926374661729587554472",
"229519612218141279143503868649018804118",
"330922603955068080175007021919476619287",
"88934932761271278279174590384150868522"
],
"threshold": 0.9
},
"deprecated": false
}
]