Bug 1228000 (CVE-2022-48789)

Summary: VUL-0: CVE-2022-48789: kernel: nvme-tcp: fix possible use-after-free in transport error_recovery work
Product: [Novell Products] SUSE Security Incidents Reporter: SMASH SMASH <smash_bz>
Component: IncidentsAssignee: Kernel Bugs <kernel-bugs>
Status: NEW --- QA Contact: Security Team bot <security-team>
Severity: Normal    
Priority: P3 - Medium CC: andrea.mattiazzo
Version: unspecified   
Target Milestone: ---   
Hardware: Other   
OS: Other   
URL: https://smash.suse.de/issue/414227/
Whiteboard: CVSSv3.1:SUSE:CVE-2022-48789:6.4:(AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H)
Found By: Security Response Team Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description SMASH SMASH 2024-07-17 07:52:08 UTC
In the Linux kernel, the following vulnerability has been resolved:

nvme-tcp: fix possible use-after-free in transport error_recovery work

While nvme_tcp_submit_async_event_work is checking the ctrl and queue
state before preparing the AER command and scheduling io_work, in order
to fully prevent a race where this check is not reliable the error
recovery work must flush async_event_work before continuing to destroy
the admin queue after setting the ctrl state to RESETTING such that
there is no race .submit_async_event and the error recovery handler
itself changing the ctrl state.

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2022-48789
https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2022/CVE-2022-48789.mbox
https://git.kernel.org/stable/c/61a26ffd5ad3ece456d74c4c79f7b5e3f440a141
https://git.kernel.org/stable/c/e192184cf8bce8dd55d619f5611a2eaba996fa05
https://git.kernel.org/stable/c/5e42fca37ccc76f39f73732661bd47254cad5982
https://git.kernel.org/stable/c/bb0d8fb35c4ff00a503c2c4dca4cce8d102a21c4
https://git.kernel.org/stable/c/ff9fc7ebf5c06de1ef72a69f9b1ab40af8b07f9e
https://www.cve.org/CVERecord?id=CVE-2022-48789
https://bugzilla.redhat.com/show_bug.cgi?id=2298125