In the Linux kernel, the following vulnerability has been resolved:
RDMA/srp: Set scmnd->result only when scmnd is not NULL
This change fixes the following kernel NULL pointer dereference which is reproduced by blktests srp/007 occasionally.
BUG: kernel NULL pointer dereference, address: 0000000000000170 PGD 0 P4D 0 Oops: 0002 [#1] PREEMPT SMP NOPTI CPU: 0 PID: 9 Comm: kworker/0:1H Kdump: loaded Not tainted 6.0.0-rc1+ #37 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.15.0-29-g6a62e0cb0dfe-prebuilt.qemu.org 04/01/2014 Workqueue: 0x0 (kblockd) RIP: 0010:srprecvdone+0x176/0x500 [ibsrp] Code: 00 4d 85 ff 0f 84 52 02 00 00 48 c7 82 80 02 00 00 00 00 00 00 4c 89 df 4c 89 14 24 e8 53 d3 4a f6 4c 8b 14 24 41 0f b6 42 13 <41> 89 87 70 01 00 00 41 0f b6 52 12 f6 c2 02 74 44 41 8b 42 1c b9 RSP: 0018:ffffaef7c0003e28 EFLAGS: 00000282 RAX: 0000000000000000 RBX: ffff9bc9486dea60 RCX: 0000000000000000 RDX: 0000000000000102 RSI: ffffffffb76bbd0e RDI: 00000000ffffffff RBP: ffff9bc980099a00 R08: 0000000000000001 R09: 0000000000000001 R10: ffff9bca53ef0000 R11: ffff9bc980099a10 R12: ffff9bc956e14000 R13: ffff9bc9836b9cb0 R14: ffff9bc9557b4480 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff9bc97ec00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000170 CR3: 0000000007e04000 CR4: 00000000000006f0 Call Trace: <IRQ> _ibprocesscq+0xb7/0x280 [ibcore] ibpollhandler+0x2b/0x130 [ibcore] irqpollsoftirq+0x93/0x150 _dosoftirq+0xee/0x4b8 irqexitrcu+0xf7/0x130 sysvecapictimer_interrupt+0x8e/0xc0 </IRQ>
[
{
"signature_type": "Function",
"id": "CVE-2022-48692-13d6055d",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f022576aa03c2385ea7f2b27ee5b331e43abf624",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "srp_process_rsp",
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"function_hash": "191306471774200159976326629651867564138",
"length": 1725.0
}
},
{
"signature_type": "Line",
"id": "CVE-2022-48692-193a1cbd",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f022576aa03c2385ea7f2b27ee5b331e43abf624",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"line_hashes": [
"176806606749995853815201559954508489428",
"82577325683631547121327704081246526939",
"276815550306726679961660956871192130850",
"89129374942809069481756805392805062250"
],
"threshold": 0.9
}
},
{
"signature_type": "Line",
"id": "CVE-2022-48692-1fe61943",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@12f35199a2c0551187edbf8eb01379f0598659fa",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"line_hashes": [
"176806606749995853815201559954508489428",
"82577325683631547121327704081246526939",
"276815550306726679961660956871192130850",
"89129374942809069481756805392805062250"
],
"threshold": 0.9
}
},
{
"signature_type": "Line",
"id": "CVE-2022-48692-4e1a8f80",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f2c70f56f762e5dc3b0d7dc438fbb137cb116413",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"line_hashes": [
"176806606749995853815201559954508489428",
"82577325683631547121327704081246526939",
"276815550306726679961660956871192130850",
"89129374942809069481756805392805062250"
],
"threshold": 0.9
}
},
{
"signature_type": "Function",
"id": "CVE-2022-48692-52371e08",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f2c70f56f762e5dc3b0d7dc438fbb137cb116413",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "srp_process_rsp",
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"function_hash": "290935863180955191939892359227301274686",
"length": 1960.0
}
},
{
"signature_type": "Function",
"id": "CVE-2022-48692-860af0de",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a8edd49c94b4b08019ed7d6dd794fca8078a4deb",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "srp_process_rsp",
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"function_hash": "130985280365267051250047933746040349433",
"length": 1968.0
}
},
{
"signature_type": "Line",
"id": "CVE-2022-48692-e162a9ea",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a8edd49c94b4b08019ed7d6dd794fca8078a4deb",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"line_hashes": [
"176806606749995853815201559954508489428",
"82577325683631547121327704081246526939",
"276815550306726679961660956871192130850",
"89129374942809069481756805392805062250"
],
"threshold": 0.9
}
},
{
"signature_type": "Function",
"id": "CVE-2022-48692-ef06cba4",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@12f35199a2c0551187edbf8eb01379f0598659fa",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "srp_process_rsp",
"file": "drivers/infiniband/ulp/srp/ib_srp.c"
},
"digest": {
"function_hash": "290935863180955191939892359227301274686",
"length": 1960.0
}
}
]