In the Linux kernel, the following vulnerability has been resolved:
ksmbd: discard write access to the directory open
may_open() does not allow a directory to be opened with the write access. However, some writing flags set by client result in adding write access on server, making ksmbd incompatible with FUSE file system. Simply, let's discard the write access when opening a directory.
listadd corruption. next is NULL. ------------[ cut here ]------------ kernel BUG at lib/listdebug.c:26! pc : _listaddvalid+0x88/0xbc lr : _listaddvalid+0x88/0xbc Call trace: _listaddvalid+0x88/0xbc fusefinishopen+0x11c/0x170 fuseopencommon+0x284/0x5e8 fusediropen+0x14/0x24 dodentryopen+0x2a4/0x4e0 dentryopen+0x50/0x80 smb2open+0xbe4/0x15a4 handleksmbdwork+0x478/0x5ec processonework+0x1b4/0x448 workerthread+0x25c/0x430 kthread+0x104/0x1d4 retfromfork+0x10/0x20
{ "vanir_signatures": [ { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9e84b1ba5c98fb5c9f869c85db1d870354613baa", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_open" }, "id": "CVE-2024-41030-1a6c5a49", "digest": { "function_hash": "338183489864569665357169734715599930618", "length": 20236.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@66cf853e1c7a2407f15d9f7aaa3e47d61745e361", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_open" }, "id": "CVE-2024-41030-2c54a9f1", "digest": { "function_hash": "338340018729798991917955135592837374701", "length": 18326.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9e84b1ba5c98fb5c9f869c85db1d870354613baa", "signature_type": "Line", "target": { "file": "fs/smb/server/smb2pdu.c" }, "id": "CVE-2024-41030-2d86c461", "digest": { "threshold": 0.9, "line_hashes": [ "256697792194347961478375874630888854033", "218187935734814722565533574448336516212", "56902770549326722969568602542866775452", "180390581910044006921414060092324485522", "141948532231309071961101892850616842031", "216132636311164131980002306602939407216", "273107316280616458054713808295580737982", "216043520838731686728748682040596161688", "320248263551818273323463077549018886989", "158537958090241790624368867805943809021", "167268405700074903871359293877325280294", "261171612008919323430882366892126528701" ] }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@66cf853e1c7a2407f15d9f7aaa3e47d61745e361", "signature_type": "Line", "target": { "file": "fs/smb/server/smb2pdu.c" }, "id": "CVE-2024-41030-5f130dac", "digest": { "threshold": 0.9, "line_hashes": [ "256697792194347961478375874630888854033", "218187935734814722565533574448336516212", "56902770549326722969568602542866775452", "180390581910044006921414060092324485522", "141948532231309071961101892850616842031", "216132636311164131980002306602939407216", "273107316280616458054713808295580737982", "216043520838731686728748682040596161688", "320248263551818273323463077549018886989", "158537958090241790624368867805943809021", "167268405700074903871359293877325280294", "261171612008919323430882366892126528701" ] }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@66cf853e1c7a2407f15d9f7aaa3e47d61745e361", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_create_open_flags" }, "id": "CVE-2024-41030-7d57e56a", "digest": { "function_hash": "158212857185584942426578490888697940460", "length": 996.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@198498b2049c0f11f7670be6974570e02b0cc035", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_open" }, "id": "CVE-2024-41030-8268f6b9", "digest": { "function_hash": "338183489864569665357169734715599930618", "length": 20236.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e2e33caa5dc2eae7bddf88b22ce11ec3d760e5cd", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_open" }, "id": "CVE-2024-41030-9f02b9df", "digest": { "function_hash": "338183489864569665357169734715599930618", "length": 20236.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e2e33caa5dc2eae7bddf88b22ce11ec3d760e5cd", "signature_type": "Line", "target": { "file": "fs/smb/server/smb2pdu.c" }, "id": "CVE-2024-41030-af683639", "digest": { "threshold": 0.9, "line_hashes": [ "256697792194347961478375874630888854033", "218187935734814722565533574448336516212", "56902770549326722969568602542866775452", "180390581910044006921414060092324485522", "141948532231309071961101892850616842031", "216132636311164131980002306602939407216", "273107316280616458054713808295580737982", "216043520838731686728748682040596161688", "320248263551818273323463077549018886989", "158537958090241790624368867805943809021", "167268405700074903871359293877325280294", "261171612008919323430882366892126528701" ] }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e2e33caa5dc2eae7bddf88b22ce11ec3d760e5cd", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_create_open_flags" }, "id": "CVE-2024-41030-ba53d70d", "digest": { "function_hash": "158212857185584942426578490888697940460", "length": 996.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@198498b2049c0f11f7670be6974570e02b0cc035", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_create_open_flags" }, "id": "CVE-2024-41030-cbd2ecc1", "digest": { "function_hash": "158212857185584942426578490888697940460", "length": 996.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9e84b1ba5c98fb5c9f869c85db1d870354613baa", "signature_type": "Function", "target": { "file": "fs/smb/server/smb2pdu.c", "function": "smb2_create_open_flags" }, "id": "CVE-2024-41030-e13500d9", "digest": { "function_hash": "158212857185584942426578490888697940460", "length": 996.0 }, "deprecated": false, "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@198498b2049c0f11f7670be6974570e02b0cc035", "signature_type": "Line", "target": { "file": "fs/smb/server/smb2pdu.c" }, "id": "CVE-2024-41030-facf84bc", "digest": { "threshold": 0.9, "line_hashes": [ "256697792194347961478375874630888854033", "218187935734814722565533574448336516212", "56902770549326722969568602542866775452", "180390581910044006921414060092324485522", "141948532231309071961101892850616842031", "216132636311164131980002306602939407216", "273107316280616458054713808295580737982", "216043520838731686728748682040596161688", "320248263551818273323463077549018886989", "158537958090241790624368867805943809021", "167268405700074903871359293877325280294", "261171612008919323430882366892126528701" ] }, "deprecated": false, "signature_version": "v1" } ] }