In the Linux kernel, the following vulnerability has been resolved:
hsr: Fix uninit-value access in fillframeinfo()
Syzbot reports the following uninit-value access problem.
===================================================== BUG: KMSAN: uninit-value in fillframeinfo net/hsr/hsrforward.c:601 [inline] BUG: KMSAN: uninit-value in hsrforwardskb+0x9bd/0x30f0 net/hsr/hsrforward.c:616 fillframeinfo net/hsr/hsrforward.c:601 [inline] hsrforwardskb+0x9bd/0x30f0 net/hsr/hsrforward.c:616 hsrdevxmit+0x192/0x330 net/hsr/hsrdevice.c:223 _netdevstartxmit include/linux/netdevice.h:4889 [inline] netdevstartxmit include/linux/netdevice.h:4903 [inline] xmitone net/core/dev.c:3544 [inline] devhardstartxmit+0x247/0xa10 net/core/dev.c:3560 _devqueuexmit+0x34d0/0x52a0 net/core/dev.c:4340 devqueuexmit include/linux/netdevice.h:3082 [inline] packetxmit+0x9c/0x6b0 net/packet/afpacket.c:276 packetsnd net/packet/afpacket.c:3087 [inline] packetsendmsg+0x8b1d/0x9f30 net/packet/afpacket.c:3119 socksendmsgnosec net/socket.c:730 [inline] socksendmsg net/socket.c:753 [inline] _syssendto+0x781/0xa30 net/socket.c:2176 _dosyssendto net/socket.c:2188 [inline] _sesyssendto net/socket.c:2184 [inline] _ia32syssendto+0x11f/0x1c0 net/socket.c:2184 dosyscall32irqson arch/x86/entry/common.c:112 [inline] _dofastsyscall32+0xa2/0x100 arch/x86/entry/common.c:178 dofastsyscall32+0x37/0x80 arch/x86/entry/common.c:203 doSYSENTER32+0x1f/0x30 arch/x86/entry/common.c:246 entrySYSENTERcompatafterhwframe+0x70/0x82
Uninit was created at: slabpostallochook+0x12f/0xb70 mm/slab.h:767 slaballocnode mm/slub.c:3478 [inline] kmemcacheallocnode+0x577/0xa80 mm/slub.c:3523 kmallocreserve+0x148/0x470 net/core/skbuff.c:559 _allocskb+0x318/0x740 net/core/skbuff.c:644 allocskb include/linux/skbuff.h:1286 [inline] allocskbwithfrags+0xc8/0xbd0 net/core/skbuff.c:6299 sockallocsendpskb+0xa80/0xbf0 net/core/sock.c:2794 packetallocskb net/packet/afpacket.c:2936 [inline] packetsnd net/packet/afpacket.c:3030 [inline] packetsendmsg+0x70e8/0x9f30 net/packet/afpacket.c:3119 socksendmsgnosec net/socket.c:730 [inline] socksendmsg net/socket.c:753 [inline] _syssendto+0x781/0xa30 net/socket.c:2176 _dosyssendto net/socket.c:2188 [inline] _sesyssendto net/socket.c:2184 [inline] _ia32syssendto+0x11f/0x1c0 net/socket.c:2184 dosyscall32irqson arch/x86/entry/common.c:112 [inline] _dofastsyscall32+0xa2/0x100 arch/x86/entry/common.c:178 dofastsyscall32+0x37/0x80 arch/x86/entry/common.c:203 doSYSENTER32+0x1f/0x30 arch/x86/entry/common.c:246 entrySYSENTERcompatafterhwframe+0x70/0x82
It is because VLAN not yet supported in hsr driver. Return error when protocol is ETHP8021Q in fillframeinfo() now to fix it.
[
{
"id": "CVE-2023-53462-08bb3a5b",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "145332206540727444845702698087355665263"
},
"target": {
"function": "fill_frame_info",
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1e90a93ac4845c31724ec5dc96fb51e608435a9d",
"signature_type": "Function"
},
{
"id": "CVE-2023-53462-11bd19fe",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "145332206540727444845702698087355665263"
},
"target": {
"function": "fill_frame_info",
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@61866f7d814e5792bf47410d7d3ff32e49bd292a",
"signature_type": "Function"
},
{
"id": "CVE-2023-53462-271347ac",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"201187649177545632687395126054059665740",
"131232642321565848488912818099466670573",
"142356642846868584905033828329978351387",
"274251714494507459959833611242519010876"
],
"threshold": 0.9
},
"target": {
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@484b4833c604c0adcf19eac1ca14b60b757355b5",
"signature_type": "Line"
},
{
"id": "CVE-2023-53462-27781ff4",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"201187649177545632687395126054059665740",
"131232642321565848488912818099466670573",
"142356642846868584905033828329978351387",
"274251714494507459959833611242519010876"
],
"threshold": 0.9
},
"target": {
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1e90a93ac4845c31724ec5dc96fb51e608435a9d",
"signature_type": "Line"
},
{
"id": "CVE-2023-53462-3ed10934",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "145332206540727444845702698087355665263"
},
"target": {
"function": "fill_frame_info",
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@484b4833c604c0adcf19eac1ca14b60b757355b5",
"signature_type": "Function"
},
{
"id": "CVE-2023-53462-5e7c29cc",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "145332206540727444845702698087355665263"
},
"target": {
"function": "fill_frame_info",
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed7a0ba7e840dc5d54cdbd8466be27e6aedce1e5",
"signature_type": "Function"
},
{
"id": "CVE-2023-53462-c437dd5e",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "145332206540727444845702698087355665263"
},
"target": {
"function": "fill_frame_info",
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6a4480c5e6ebaf9f797ac300e2a97a02d4e70cfd",
"signature_type": "Function"
},
{
"id": "CVE-2023-53462-c4b309e2",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"201187649177545632687395126054059665740",
"131232642321565848488912818099466670573",
"142356642846868584905033828329978351387",
"274251714494507459959833611242519010876"
],
"threshold": 0.9
},
"target": {
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed7a0ba7e840dc5d54cdbd8466be27e6aedce1e5",
"signature_type": "Line"
},
{
"id": "CVE-2023-53462-d144a139",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"201187649177545632687395126054059665740",
"131232642321565848488912818099466670573",
"142356642846868584905033828329978351387",
"274251714494507459959833611242519010876"
],
"threshold": 0.9
},
"target": {
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6a4480c5e6ebaf9f797ac300e2a97a02d4e70cfd",
"signature_type": "Line"
},
{
"id": "CVE-2023-53462-fc36931b",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"201187649177545632687395126054059665740",
"131232642321565848488912818099466670573",
"142356642846868584905033828329978351387",
"274251714494507459959833611242519010876"
],
"threshold": 0.9
},
"target": {
"file": "net/hsr/hsr_forward.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@61866f7d814e5792bf47410d7d3ff32e49bd292a",
"signature_type": "Line"
}
]