漏洞信息
# cxl/region:修复解码器分配崩溃问题
## 概述
Linux 内核中的一个漏洞已经解决:`cxl/region: Fix decoder allocation crash`。当处于现有区域已耗尽中间端口的解码器时,尝试创建一个包含该端口的新区域会导致 `cxl_port_attach_region()` 无法找到端口解码器,并进入失败/清理路径。在清理区域引用时,会尝试解引用不存在的解码器,从而导致空指针解引用错误。
## 细节
当一个中间端口的解码器被现有区域耗尽时,尝试创建一个新的区域并将该端口包含在其分层路径中。`cxl_port_attach_region()` 会失败,因为找不到端口解码器,然后进入到失败/清理路径中。在清理区域引用时,一个完整性检查试图解引用不存在的解码器,导致空指针解引用错误。此问题通过将解码器的分配和释放重构为辅助例程,并在“free”例程中检查解码器的有效性前再执行任何操作来解决。
## 影响
该漏洞可能会导致内核崩溃或触发空指针解引用错误。修复此问题后,将避免在清理路径中解引用无效解码器。
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
cxl/region: Fix decoder allocation crash
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved:
cxl/region: Fix decoder allocation crash
When an intermediate port's decoders have been exhausted by existing
regions, and creating a new region with the port in question in it's
hierarchical path is attempted, cxl_port_attach_region() fails to find a
port decoder (as would be expected), and drops into the failure / cleanup
path.
However, during cleanup of the region reference, a sanity check attempts
to dereference the decoder, which in the above case didn't exist. This
causes a NULL pointer dereference BUG.
To fix this, refactor the decoder allocation and de-allocation into
helper routines, and in this 'free' routine, check that the decoder,
@cxld, is valid before attempting any operations on it.
CVSS信息
N/A
漏洞类别
N/A
漏洞标题
Linux kernel 安全漏洞
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于未验证解码器有效性,可能导致空指针解引用。
CVSS信息
N/A
漏洞类别
其他