Linux Kernel up to 6.1.7 dmaengine idxd_dmaengine_drv_remove use after free

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.7 | $0-$5k | 0.00 |
Summary
A vulnerability, which was classified as critical, has been found in Linux Kernel up to 6.1.7. This issue affects the function idxd_dmaengine_drv_remove of the component dmaengine. Performing a manipulation results in use after free.
This vulnerability is reported as CVE-2022-48867. No exploit exists.
It is advisable to upgrade the affected component.
Details
A vulnerability, which was classified as critical, was found in Linux Kernel up to 6.1.7. This affects the function idxd_dmaengine_drv_remove of the component dmaengine. The manipulation with an unknown input leads to a use after free vulnerability. CWE is classifying the issue as CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: dmaengine: idxd: Prevent use after free on completion memory On driver unload any pending descriptors are flushed at the time the interrupt is freed: idxd_dmaengine_drv_remove() -> drv_disable_wq() -> idxd_wq_free_irq() -> idxd_flush_pending_descs(). If there are any descriptors present that need to be flushed this flow triggers a "not present" page fault as below: BUG: unable to handle page fault for address: ff391c97c70c9040 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page The address that triggers the fault is the address of the descriptor that was freed moments earlier via: drv_disable_wq()->idxd_wq_free_resources() Fix the use after free by freeing the descriptors after any possible usage. This is done after idxd_wq_reset() to ensure that the memory remains accessible during possible completion writes by the device.
It is possible to read the advisory at git.kernel.org. This vulnerability is uniquely identified as CVE-2022-48867 since 07/16/2024. Technical details of the vulnerability are known, but there is no available exploit. The pricing for an exploit might be around USD $0-$5k at the moment (estimation calculated on 02/17/2026).
The vulnerability scanner Nessus provides a plugin with the ID 212625 (EulerOS 2.0 SP12 : kernel (EulerOS-SA-2024-2953)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 6.1.8 eliminates this vulnerability. Applying the patch b9e8e3fcfec6/1beeec45f9ac is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (212625) and CERT Bund (WID-SEC-2024-1888). Be aware that VulDB is the high quality source for vulnerability data.
Affected
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- IBM InfoSphere Guardium
- Oracle Linux
- Kyocera Printer
- IBM Security Guardium
- RESF Rocky Linux
- Broadcom Brocade SANnav
- Open Source Linux Kernel
- IBM QRadar SIEM
- IBM DB2
- Dell PowerProtect Data Domain
- Dell PowerProtect Data Domain Management Center
- Dell PowerProtect Data Domain OS
- Dell Secure Connect Gateway
Product
Type
Vendor
Name
Version
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.9VulDB Meta Temp Score: 7.7
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.8
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Use after freeCWE: CWE-416 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 212625
Nessus Name: EulerOS 2.0 SP12 : kernel (EulerOS-SA-2024-2953)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Kernel 6.1.8
Patch: b9e8e3fcfec6/1beeec45f9ac
Timeline
07/16/2024 🔍08/21/2024 🔍
08/21/2024 🔍
02/17/2026 🔍
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2022-48867 (🔍)
GCVE (CVE): GCVE-0-2022-48867
GCVE (VulDB): GCVE-100-275367
CERT Bund: WID-SEC-2024-1888 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 08/21/2024 08:41Updated: 02/17/2026 11:49
Changes: 08/21/2024 08:41 (58), 08/22/2024 09:29 (1), 09/07/2024 04:50 (11), 12/12/2024 14:28 (2), 02/17/2026 11:49 (7)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.