漏洞信息
# cxl/ras:修复CPER处理程序设备混淆问题
## 概述
在Linux内核中,修复了一个关于CPER处理程序设备混淆的漏洞:`cxl/ras: Fix CPER handler device confusion`。该漏洞由多个脆弱假设导致,可能导致崩溃。
## 影响版本
未具体提及受影响的版本。
## 细节
`cxl_cper_handle_prot_err()` 函数存在以下脆弱假设:
1. **端点假设**:该函数假设记录中识别的端点是CXL类型-3设备,但实际上没有任何保证。
2. **驱动假设**:该函数假设设备绑定到了`cxl_pci`驱动程序,但实际上没有任何保证。
3. **锁假设**:在无需加锁的场景中(如纯数据记录生成),加锁会增加不必要的操作。
## 影响
修复此漏洞通过在假设设备格式之前检查 PCIe 端点是否包含 `cxl_memdev` 来验证假设,并将锁移动到实际需要的地方。这些修复使实现能够支持未绑定到 `cxl_pci` 的 CXL 加速器。
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
cxl/ras: Fix CPER handler device confusion
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved:
cxl/ras: Fix CPER handler device confusion
By inspection, cxl_cper_handle_prot_err() is making a series of fragile
assumptions that can lead to crashes:
1/ It assumes that endpoints identified in the record are a CXL-type-3
device, nothing guarantees that.
2/ It assumes that the device is bound to the cxl_pci driver, nothing
guarantees that.
3/ Minor, it holds the device lock over the switch-port tracing for no
reason as the trace is 100% generated from data in the record.
Correct those by checking that the PCIe endpoint parents a cxl_memdev
before assuming the format of the driver data, and move the lock to where
it is required. Consequently this also makes the implementation ready for
CXL accelerators that are not bound to cxl_pci.
CVSS信息
N/A
漏洞类别
N/A
漏洞标题
Linux kernel 安全漏洞
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于cxl ras CPER处理程序设备混淆。
CVSS信息
N/A
漏洞类别
其他