f2fs:修复了使用锁覆盖读取范围缓存访问的问题(CVE-2024-44941)
CVE编号
CVE-2024-44941利用情况
暂无补丁情况
N/A披露时间
2024-08-26漏洞描述
在Linux内核中,已经解决了一个关于f2fs文件系统的漏洞。这个漏洞出现在`sanity_check_extent_cache()`函数中,该函数用于检查extent缓存的有效性。具体来说,这个漏洞涉及到在没有锁定extent缓存的情况下访问extent缓存,可能导致在释放内存后仍然使用的问题。这种问题通常被称为竞态条件(race condition)。漏洞的详细描述如下:在f2fs文件系统的操作中,当进行读取操作(如通过`f2fs_iget`和`do_read_inode`函数)时,会涉及到extent树的初始化和可能的缩减操作(通过`f2fs_shrink_read_extent_tree`函数)。在这个过程中,extent树的条目可能会被添加或移除。同时,在`sanity_check_extent_cache`函数中,会检查extent缓存的一致性,包括访问`et->largest`。然而,如果没有正确地锁定extent缓存,那么在并发操作时可能会出现竞态条件。具体来说,当一个线程正在访问或修改extent缓存时,另一个线程可能同时访问或修改它,导致出现内存释放后仍然被访问的问题。这种情况可能会导致系统崩溃或数据损坏。为了解决这个问题,需要对`sanity_check_extent_cache()`函数进行重构,确保在访问extent缓存之前先对其进行锁定。此外,还需要确保在调用涉及extent缓存的函数(如`f2fs_init_read_extent_tree()`)之前先进行这种检查。这样可以避免在并发操作时出现竞态条件,从而修复这个漏洞。解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。- 攻击路径 N/A
- 攻击复杂度 N/A
- 权限要求 N/A
- 影响范围 N/A
- 用户交互 N/A
- 可用性 N/A
- 保密性 N/A
- 完整性 N/A
CWE-ID | 漏洞类型 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论