In the Linux kernel, the following vulnerability has been resolved:
net: can: j1939: enhanced error handling for tightly received RTS messages in xtprxrtssessionnew
This patch enhances error handling in scenarios with RTS (Request to Send) messages arriving closely. It replaces the less informative WARNONONCE backtraces with a new error handling method. This provides clearer error messages and allows for the early termination of problematic sessions. Previously, sessions were only released at the end of j1939xtprx_rts().
Potentially this could be reproduced with something like: testj1939 -r vcan0:0x80 & while true; do # send first RTS cansend vcan0 18EC8090#1014000303002301; # send second RTS cansend vcan0 18EC8090#1014000303002301; # send abort cansend vcan0 18EC8090#ff00000000002301; done
{ "vanir_signatures": [ { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d3e2904f71ea0fe7eaff1d68a2b0363c888ea0fb", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1669.0, "function_hash": "54752962186135189246364920656752129885" }, "id": "CVE-2023-52887-08037c2c" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed581989d7ea9df6f8646beba2341e32cd49a1f9", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1588.0, "function_hash": "18723426323380869456545742555199763894" }, "id": "CVE-2023-52887-32c68e22" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0bc0a7416ea73f79f915c9a05ac0858dff65cfed", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1669.0, "function_hash": "54752962186135189246364920656752129885" }, "id": "CVE-2023-52887-3ed86a19" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@177e33b655d35d72866b50aec84307119dc5f3d4", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1669.0, "function_hash": "54752962186135189246364920656752129885" }, "id": "CVE-2023-52887-5395818e" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed581989d7ea9df6f8646beba2341e32cd49a1f9", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "10814478038176760834993771551783829128", "9688523943102616335537949574160608246", "65240123435283721703522289272007415108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-588afcc2" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26b18dd30e63d4fd777be429148e8e4ed66f60b2", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1669.0, "function_hash": "54752962186135189246364920656752129885" }, "id": "CVE-2023-52887-6890e40d" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26b18dd30e63d4fd777be429148e8e4ed66f60b2", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "256285975326637727492206194455779131087", "50586985904382023172914622953638396543", "308525823258292530142906470177620053108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-96225ce4" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f6c839e717901dbd6b1c1ca807b6210222eb70f6", "signature_type": "Function", "target": { "function": "j1939_xtp_rx_rts_session_new", "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "length": 1588.0, "function_hash": "18723426323380869456545742555199763894" }, "id": "CVE-2023-52887-b8a58d34" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0bc0a7416ea73f79f915c9a05ac0858dff65cfed", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "256285975326637727492206194455779131087", "50586985904382023172914622953638396543", "308525823258292530142906470177620053108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-bab32c33" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@177e33b655d35d72866b50aec84307119dc5f3d4", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "256285975326637727492206194455779131087", "50586985904382023172914622953638396543", "308525823258292530142906470177620053108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-bdb9d904" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f6c839e717901dbd6b1c1ca807b6210222eb70f6", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "10814478038176760834993771551783829128", "9688523943102616335537949574160608246", "65240123435283721703522289272007415108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-dcaef5aa" }, { "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d3e2904f71ea0fe7eaff1d68a2b0363c888ea0fb", "signature_type": "Line", "target": { "file": "net/can/j1939/transport.c" }, "deprecated": false, "digest": { "line_hashes": [ "319522350541993488699420260624184059858", "30488264189053901848044388870541230321", "67685419988179096947379350080398704910", "335767230716170699060068093009686441950", "246052371248201802981055941637401732924", "219219854262879425960720821249212785623", "256285975326637727492206194455779131087", "50586985904382023172914622953638396543", "308525823258292530142906470177620053108", "112076323754036667802812764306471939464" ], "threshold": 0.9 }, "id": "CVE-2023-52887-ddf20457" } ] }