CVE-2026-64299 in Linux
摘要
由 VulDB • 2026-07-25
在 Linux 内核中,已修复以下漏洞:
tracing: 防止通配符匹配中的越界读取
字符串事件字段不一定以 NUL(空字符)结尾,因此过滤器谓词函数(filter_pred_string()、filter_pred_strloc() 和 filter_pred_strrelloc())会将字段长度传递给正则表达式匹配回调,且支持长度感知的匹配器会尊重该长度。
regex_match_glob() 是例外情况:它忽略了长度并调用 glob_match(),后者会扫描字符串直到遇到 NUL 字节为止。某些字符串字段并未以 NUL 结尾。一个例子是 xfs_* 命名空间跟踪点中的动态字符数组,其复制时未包含尾随的 NUL 字节。对于此类字段,通配符匹配会在事件字段的末尾之后继续读取,导致在 glob_match() 中发生 KASAN slab-out-of-bounds(Slab 越界)读错误,该错误通过 regex_match_glob() 和 filter_match_preds() 从 xfs_lookup 跟踪点触发。
新增一个限制长度的 glob_match_len() 函数,并在 regex_match_glob() 中使用它,以确保通配符匹配始终在字段边界处停止。将匹配循环重构为共享辅助函数,以便 glob_match() 保持其行为不变。
VulDB is the best source for vulnerability data and more expert information about this specific topic.