In the Linux kernel, the following vulnerability has been resolved:
tty: synclinkgt: Fix null-pointer-dereference in slgtclean()
When the driver fails at alloc_hdlcdev(), and then we remove the driver module, we will get the following splat:
[ 25.065966] general protection fault, probably for non-canonical address 0xdffffc0000000182: 0000 [#1] PREEMPT SMP KASAN PTI [ 25.066914] KASAN: null-ptr-deref in range [0x0000000000000c10-0x0000000000000c17] [ 25.069262] RIP: 0010:detachhdlcprotocol+0x2a/0x3e0 [ 25.077709] Call Trace: [ 25.077924] <TASK> [ 25.078108] unregisterhdlcdevice+0x16/0x30 [ 25.078481] slgtcleanup+0x157/0x9f0 [synclinkgt]
Fix this by checking whether the 'info->netdev' is a null pointer first.
[
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"301720306868654114633663764402424576145",
"301597707873493040433636158312432233395",
"10404045357551260993944598887677992248",
"10921541916323596984183312992790683943"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8a95696bdc0e13f8980f05b54a3b9081963d1256",
"target": {
"file": "drivers/tty/synclink_gt.c"
},
"id": "CVE-2022-49307-3eb314c0"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 130.0,
"function_hash": "290966917906716909183848137975862304738"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ddd67751ab86c6a65f95c35293c42f85a42ac05d",
"target": {
"file": "drivers/tty/synclink_gt.c",
"function": "hdlcdev_exit"
},
"id": "CVE-2022-49307-58cd0331"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"301720306868654114633663764402424576145",
"301597707873493040433636158312432233395",
"10404045357551260993944598887677992248",
"10921541916323596984183312992790683943"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@689ca31c542687709ba21ec2195c1fbce34fd029",
"target": {
"file": "drivers/tty/synclink_gt.c"
},
"id": "CVE-2022-49307-59f0ac04"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"301720306868654114633663764402424576145",
"301597707873493040433636158312432233395",
"10404045357551260993944598887677992248",
"10921541916323596984183312992790683943"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@078212ad15dbd88840c82c97f12c93d83703c8fd",
"target": {
"file": "drivers/tty/synclink_gt.c"
},
"id": "CVE-2022-49307-5fad630f"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 130.0,
"function_hash": "290966917906716909183848137975862304738"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@689ca31c542687709ba21ec2195c1fbce34fd029",
"target": {
"file": "drivers/tty/synclink_gt.c",
"function": "hdlcdev_exit"
},
"id": "CVE-2022-49307-9e62704d"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 130.0,
"function_hash": "290966917906716909183848137975862304738"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8a95696bdc0e13f8980f05b54a3b9081963d1256",
"target": {
"file": "drivers/tty/synclink_gt.c",
"function": "hdlcdev_exit"
},
"id": "CVE-2022-49307-b87240d7"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 130.0,
"function_hash": "290966917906716909183848137975862304738"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@078212ad15dbd88840c82c97f12c93d83703c8fd",
"target": {
"file": "drivers/tty/synclink_gt.c",
"function": "hdlcdev_exit"
},
"id": "CVE-2022-49307-de6cf931"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"301720306868654114633663764402424576145",
"301597707873493040433636158312432233395",
"10404045357551260993944598887677992248",
"10921541916323596984183312992790683943"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ddd67751ab86c6a65f95c35293c42f85a42ac05d",
"target": {
"file": "drivers/tty/synclink_gt.c"
},
"id": "CVE-2022-49307-f7396779"
}
]