btrfs:修复分割 bios 的错误传播(CVE-2024-50225)

admin 2024-11-10 18:55:39 Ali_nvd 来源:ZONE.CI 全球网 0 阅读模式
btrfs:修复分割 bios 的错误传播(CVE-2024-50225)

CVE编号

CVE-2024-50225

利用情况

暂无

补丁情况

N/A

披露时间

2024-11-09
漏洞描述
该漏洞描述是关于Linux内核中的btrfs文件系统在处理分裂的bio(基本输入输出)时的错误传播问题。具体描述如下:在btrfs中,`btrfs_bbio_propagate_error()`函数的目的应该是将分裂的bio的错误传播到其原始的btrfs_bio,并告诉上层这个错误。但在某些情况下,这个功能不能正常工作。案例1:当立即(或快速)结束带有错误的bio时,问题会出现。当btrfs向镜像设备发送btrfs_bio时,在所有镜像bio完成后,它会调用`btrfs_bio_end_io()`。如果那个btrfs_bio被分裂,它的bio是通过`btrfs_clone_bioset`创建的,并且其结束io函数是`btrfs_orig_write_end_io`。对于这个案例,`btrfs_bbio_propagate_error()`尝试访问原始bbio的bio上下文以增加错误计数。在大多数情况下,这可以正常工作。但是,如果end_io被快速调用,原始bbio(剩余部分在分裂之后)的bio上下文可能还没有被正确设置。因为原始bbio(最后一个btrfs_bio)是在发送到设备时才设置bio上下文的,所以对于较早分裂的btrfs_bio的完成来说,这可能太晚了,从而导致空指针解引用错误。这个问题可以通过运行特定的测试案例(如btrfs/146)在分区设备上重现。当这个问题发生时,会产生一个内核错误报告,显示一个空指针解引用错误。总的来说,这个漏洞是关于Linux内核在处理分裂的bio的错误传播时的空指针解引用问题,可能导致系统崩溃或数据损坏。
解决建议
"将组件 Linux 升级至 6.3 及以上版本"
参考链接
https://git.kernel.org/stable/c/22833d89b780ba0f9f66e19c477e7decf638edce
https://git.kernel.org/stable/c/d48e1dea3931de64c26717adc2b89743c7ab6594
受影响软件情况
# 类型 厂商 产品 版本 影响面
1
运行在以下环境
系统 debian_11 linux * Up to (excluding) 5.10.226-1
运行在以下环境
系统 debian_12 linux * Up to (excluding) 6.1.115-1
CVSS3评分 N/A
  • 攻击路径 N/A
  • 攻击复杂度 N/A
  • 权限要求 N/A
  • 影响范围 N/A
  • 用户交互 N/A
  • 可用性 N/A
  • 保密性 N/A
  • 完整性 N/A
N/A
CWE-ID 漏洞类型
- avd.aliyun.com
weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0