Open
file: backport upstream fix to NUL terminate CDF directory name #89
file: backport upstream fix to NUL terminate CDF directory name #89
Open
liu-haodong142Add on 10 days ago
liu-haodong142
liu-haodong142
10 days ago

当前PR是否有AI参与:

[] 否
[x] 是
__1. Agent平台信息: opencode 1.19.0
__2. 模型信息: zai-org/GLM-5.2-FP8
__3. Prompt摘要: 让 AI 在上游版本区间内查找 openEuler master 尚未回移的安全修复,生成规范 backport 补丁并做 ASan 复现与构建验证

参考:openEuler社区《生成式AI工具使用与开源贡献政策》

PR功能描述 / 为什么需要这个合入:

回移上游 commit 029e5bae(PR/812):cdf_check_summary_info() 将 32 字符的 CDF 目录项名称拷贝到 32 字节栈缓冲区 name[] 后未写 NUL 终止符,随即将它传给 cdf_app_to_mime(),后者用 strcasestr() 做子串匹配,造成栈越界读。补丁将缓冲区扩大 1 字节并显式写入 NUL 终止符。

该PR关联的issue

fixes #29

希望检视人员了解:

本修复为上游对应修复的同步,仅用 AI 辅助快速编写与验证;已人工逐行核对补丁与上游提交一致,使用 ASan 构建复现修复前栈越界、修复后无报错,并对常规文件类型识别做了回归对比;上游链接见 issue #29。

改动类型

测试信息

  • file 5.48 + 现有 Patch1 + 本补丁:完整构建通过。
  • 基线:32 字符无 NUL 目录名的 PoC CDF 触发 ASan stack-buffer-overflow(READ,strcasestr 调用链进入 cdf_app_to_mime 与 cdf_check_summary_info)。
  • 修复后:同一 PoC 无 ASan 报错,输出 application/vnd.ms-office;/bin/ls、/etc/passwd、tar.gz、magic.mgc 等常规文件识别结果与修复前一致。

检查清单

likedislike
Merge blocked
liu-haodong142liu-haodong142
10 days ago Created pull request, commit 875727d8
liu-haodong142liu-haodong142
10 days ago Associated issue: file: CDF 目录名未 NUL 终止导致栈越界读(待 backport 上游 029e5bae)
openeuler-ci-botopeneuler-ci-botCollaborators
10 days ago Set VICTORY2017,mszjaas,swf504,liuzhiqiang26,louhongxiang,kouwq,dragon1147e3 as approver
openeuler-ci-botopeneuler-ci-botCollaborators
10 days ago Added label: sig/Storage
openeuler-ci-bot
openeuler-ci-botCollaborators
10 days ago Comments:

Welcome To openEuler Community

Hey @liu-haodong142 , thanks for your contribution to the community.

Bot Usage Manual

I'm the Bot here serving you. You can find the instructions on how to interact with me at Here . That means you can comment below every pull request or issue to trigger Bot Commands. You can self-configure the PR merge rules for this repository. For more details, please refer to Here.

Contact Guide

If you have any questions, please contact the SIG: Storage ,
and any of the maintainers: @VICTORY2017, @dragon1147e3, @kouwq, @liuzhiqiang26, @louhongxiang, @mszjaas, @swf504 ,

likedislike
117 messages are collapsed here。 See more
openeuler-bot
openeuler-botCollaborators
10 days ago Comments:

x86_64架构构建及构建后检查:multiarch/src-openeuler/x86-64/file/44

likedislike
openeuler-bot
openeuler-botCollaborators
10 days ago Comments:

aarch64架构构建及构建后检查:multiarch/src-openeuler/aarch64/file/44

likedislike
openeuler-bot
openeuler-botCollaborators
10 days ago Comments:
Check Name Build Result 详情 Build Details
check_binary_file ✅SUCCESS #44
check_lfsconfig ☑EXCLUDE
check_package_yaml_file ✅SUCCESS
check_repo_in_maintain ✅SUCCESS
check_consistency ✅SUCCESS
check_spec_file ✅SUCCESS
x86_64 check_build ✅SUCCESS #44
check_install ✅SUCCESS
check_license ✅SUCCESS
aarch64 check_build ✅SUCCESS #44
check_install ✅SUCCESS
check_license ✅SUCCESS
likedislike
openeuler-bot
openeuler-botCollaborators
10 days ago Comments:

如下为接口变更检查结果,目标分支为master,请PR提交者check差异信息

Arch Name Check Items Rpm Name Check Result Build Details
compare_package(x86_64) add_rpms ✅SUCCESS #44
delete_rpms ✅SUCCESS
rpm_abi ✅SUCCESS
rpm_cmd ✅SUCCESS
rpm_files ✅SUCCESS
rpm_header ✅SUCCESS
rpm_lib ✅SUCCESS
rpm_provides ✅SUCCESS
rpm_requires ✅SUCCESS
rpm_symbol ✅SUCCESS
compare_package(aarch64) add_rpms ✅SUCCESS #44
delete_rpms ✅SUCCESS
rpm_abi ✅SUCCESS
rpm_cmd ✅SUCCESS
rpm_files ✅SUCCESS
rpm_header ✅SUCCESS
rpm_lib ✅SUCCESS
rpm_provides ✅SUCCESS
rpm_requires ✅SUCCESS
rpm_symbol ✅SUCCESS
likedislike
openeuler-bot
openeuler-botCollaborators
10 days ago Comments:
likedislike