scsi: qla2xxx: Fix use after free on unload (Linux Linux)

CVE-2024-56623
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.22 % · percentile 13 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Fix use after free on unload System crash is observed with stack trace warning of use after free. There are 2 signals to tell dpc_thread to terminate (UNLOADING flag and kthread_stop). On setting the UNLOADING flag when dpc_thread happens to run at the time and sees the flag, this causes dpc_thread to exit and clean up itself. When kthread_stop is called for final cleanup, this causes use after free. Remove UNLOADING signal to terminate dpc_thread. Use the kthread_stop as the main signal to exit dpc_thread. [596663.812935] kernel BUG at mm/slub.c:294! [596663.812950] invalid opcode: 0000 [#1] SMP PTI [596663.812957] CPU: 13 PID: 1475935 Comm: rmmod Kdump: loaded Tainted: G IOE --------- - - 4.18.0-240.el8.x86_64 #1 [596663.812960] Hardware name: HP ProLiant DL380p Gen8, BIOS P70 08/20/2012 [596663.812974] RIP: 0010:__slab_free+0x17d/0x360 ... [596663.813008] Call Trace: [596663.813022] ? __dentry_kill+0x121/0x170 [596663.813030] ? _cond_resched+0x15/0x30 [596663.813034] ? _cond_resched+0x15/0x30 [596663.813039] ? wait_for_completion+0x35/0x190 [596663.813048] ? try_to_wake_up+0x63/0x540 [596663.813055] free_task+0x5a/0x60 [596663.813061] kthread_stop+0xf3/0x100 [596663.813103] qla2x00_remove_one+0x284/0x440 [qla2xxx]

Weaknesses (CWE)

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HCISA-ADP
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · 134c704f-9b21-4f2e-91b3-4a467353bcc0 (Secondary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < 12f04fc8580eafb0510f805749553eb6213f323e ; affected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < ca36d9d53745d5ec8946ef85006d4da605ea7c54 ; affected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < b3e6f25176f248762a24d25ab8cf8c5e90874f80 ; affected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < 15369e774f27ec790f207de87c0b541e3f90b22d ; affected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < 6abf16d3c915b2feb68c1c8b25fcb71b13f98478 ; affected a29b3dd7aa14facc902b40b8b5c4dccbfb2ad7d0 < 07c903db0a2ff84b68efa1a74a4de353ea591eb0
Linux · Linuxaffected 4.8 ; unaffected 0 < 4.8 ; unaffected 5.10.231 ≤ 5.10.* ; unaffected 5.15.174 ≤ 5.15.* ; unaffected 6.1.120 ≤ 6.1.* ; unaffected 6.6.66 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD