In the Linux kernel, the following vulnerability has been resolved:
crypto: ccp - Fix null pointer dereference in _sevplatformshutdownlocked
The SEV platform device can be shutdown with a null pspmaster, e.g., using DEBUGTESTDRIVERREMOVE. Found using KASAN:
[ 137.148210] ccp 0000:23:00.1: enabling device (0000 -> 0002) [ 137.162647] ccp 0000:23:00.1: no command queues available [ 137.170598] ccp 0000:23:00.1: sev enabled [ 137.174645] ccp 0000:23:00.1: psp enabled [ 137.178890] general protection fault, probably for non-canonical address 0xdffffc000000001e: 0000 [#1] PREEMPT SMP DEBUGPAGEALLOC KASAN NOPTI [ 137.182693] KASAN: null-ptr-deref in range [0x00000000000000f0-0x00000000000000f7] [ 137.182693] CPU: 93 PID: 1 Comm: swapper/0 Not tainted 6.8.0-rc1+ #311 [ 137.182693] RIP: 0010:sevplatformshutdownlocked+0x51/0x180 [ 137.182693] Code: 08 80 3c 08 00 0f 85 0e 01 00 00 48 8b 1d 67 b6 01 08 48 b8 00 00 00 00 00 fc ff df 48 8d bb f0 00 00 00 48 89 f9 48 c1 e9 03 <80> 3c 01 00 0f 85 fe 00 00 00 48 8b 9b f0 00 00 00 48 85 db 74 2c [ 137.182693] RSP: 0018:ffffc900000cf9b0 EFLAGS: 00010216 [ 137.182693] RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 000000000000001e [ 137.182693] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 00000000000000f0 [ 137.182693] RBP: ffffc900000cf9c8 R08: 0000000000000000 R09: fffffbfff58f5a66 [ 137.182693] R10: ffffc900000cf9c8 R11: ffffffffac7ad32f R12: ffff8881e5052c28 [ 137.182693] R13: ffff8881e5052c28 R14: ffff8881758e43e8 R15: ffffffffac64abf8 [ 137.182693] FS: 0000000000000000(0000) GS:ffff889de7000000(0000) knlGS:0000000000000000 [ 137.182693] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 137.182693] CR2: 0000000000000000 CR3: 0000001cf7c7e000 CR4: 0000000000350ef0 [ 137.182693] Call Trace: [ 137.182693] <TASK> [ 137.182693] ? showregs+0x6c/0x80 [ 137.182693] ? _diebody+0x24/0x70 [ 137.182693] ? dieaddr+0x4b/0x80 [ 137.182693] ? excgeneralprotection+0x126/0x230 [ 137.182693] ? asmexcgeneralprotection+0x2b/0x30 [ 137.182693] ? _sevplatformshutdownlocked+0x51/0x180 [ 137.182693] sevfirmwareshutdown.isra.0+0x1e/0x80 [ 137.182693] sevdevdestroy+0x49/0x100 [ 137.182693] pspdevdestroy+0x47/0xb0 [ 137.182693] spdestroy+0xbb/0x240 [ 137.182693] sppciremove+0x45/0x60 [ 137.182693] pcideviceremove+0xaa/0x1d0 [ 137.182693] deviceremove+0xc7/0x170 [ 137.182693] reallyprobe+0x374/0xbe0 [ 137.182693] ? srsoreturnthunk+0x5/0x5f [ 137.182693] _driverprobedevice+0x199/0x460 [ 137.182693] driverprobedevice+0x4e/0xd0 [ 137.182693] _driverattach+0x191/0x3d0 [ 137.182693] ? _pfxdriverattach+0x10/0x10 [ 137.182693] busforeachdev+0x100/0x190 [ 137.182693] ? _pfxbusforeachdev+0x10/0x10 [ 137.182693] ? _kasancheckread+0x15/0x20 [ 137.182693] ? srsoreturnthunk+0x5/0x5f [ 137.182693] ? _rawspinunlock+0x27/0x50 [ 137.182693] driverattach+0x41/0x60 [ 137.182693] busadddriver+0x2a8/0x580 [ 137.182693] driverregister+0x141/0x480 [ 137.182693] _pciregisterdriver+0x1d6/0x2a0 [ 137.182693] ? srsoreturnthunk+0x5/0x5f [ 137.182693] ? esrtsysfsinit+0x1cd/0x5d0 [ 137.182693] ? _pfxspmodinit+0x10/0x10 [ 137.182693] sppciinit+0x22/0x30 [ 137.182693] spmodinit+0x14/0x30 [ 137.182693] ? _pfxspmodinit+0x10/0x10 [ 137.182693] dooneinitcall+0xd1/0x470 [ 137.182693] ? _pfxdooneinitcall+0x10/0x10 [ 137.182693] ? parameq+0x80/0xf0 [ 137.182693] ? srsoreturnthunk+0x5/0x5f [ 137.182693] ? _kmalloc+0x3b0/0x4e0 [ 137.182693] ? kernelinitfreeable+0x92d/0x1050 [ 137.182693] ? kasanpopulatevmallocpte+0x171/0x190 [ 137.182693] ? srsoreturnthunk+0x5/0x5f [ 137.182693] kernelinitfreeable+0xa64/0x1050 [ 137.182693] ? _pfxkernelinit+0x10/0x10 [ 137.182693] kernelinit+0x24/0x160 [ 137.182693] ? _switchtoasm+0x3e/0x70 [ 137.182693] retfromfork+0x40/0x80 [ 137.182693] ? _pfxkernelinit+0x1 ---truncated---
{ "vanir_signatures": [ { "id": "CVE-2024-26695-2e2ac94b", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8731fe001a60581794ed9cf65da8cd304846a6fb", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-34f99a5a", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@58054faf3bd29cd0b949b77efcb6157f66f401ed", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-3abdaf86", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ccb88e9549e7cfd8bcd511c538f437e20026e983", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-6b7af166", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@88aa493f393d2ee38ac140e1f6ac1881346e85d4", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-7f314dff", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b5909f197f3b26aebedca7d8ac7b688fd993a266", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-7fdf7991", "target": { "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "line_hashes": [ "289119369222211010703528932159403833244", "60305382581345233121705720208237472360", "169829427703097445208059089087039434856", "270579538550383652453280375061238946421", "146636680183271529213118429877489271346", "137543535521351478746070865059683546950" ], "threshold": 0.9 }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7535ec350a5f09b5756a7607f5582913f21200f4", "deprecated": false, "signature_type": "Line", "signature_version": "v1" }, { "id": "CVE-2024-26695-98b05ac0", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b5909f197f3b26aebedca7d8ac7b688fd993a266", "deprecated": false, "signature_type": "Function", "signature_version": "v1" }, { "id": "CVE-2024-26695-a41ee49f", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@88aa493f393d2ee38ac140e1f6ac1881346e85d4", "deprecated": false, "signature_type": "Function", "signature_version": "v1" }, { "id": "CVE-2024-26695-ae0ea8f9", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ccb88e9549e7cfd8bcd511c538f437e20026e983", "deprecated": false, "signature_type": "Function", "signature_version": "v1" }, { "id": "CVE-2024-26695-e4b5def4", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@58054faf3bd29cd0b949b77efcb6157f66f401ed", "deprecated": false, "signature_type": "Function", "signature_version": "v1" }, { "id": "CVE-2024-26695-f3467613", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8731fe001a60581794ed9cf65da8cd304846a6fb", "deprecated": false, "signature_type": "Function", "signature_version": "v1" }, { "id": "CVE-2024-26695-f6902240", "target": { "function": "__sev_platform_shutdown_locked", "file": "drivers/crypto/ccp/sev-dev.c" }, "digest": { "length": 332.0, "function_hash": "309759103155731969162033840136933000955" }, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7535ec350a5f09b5756a7607f5582913f21200f4", "deprecated": false, "signature_type": "Function", "signature_version": "v1" } ] }