登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
登录
注册
就在本周六,成都站 Gitee Talk | 模力方舟 AI 应用开发沙龙抢占最后席位!聚焦 AI 开发全链路,结识技术同频人~
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
8
Star
0
Fork
39
src-openEuler
/
rsyslog
代码
Issues
0
Pull Requests
0
Wiki
统计
流水线
服务
JavaDoc
PHPDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
我知道了,不再自动展开
更新失败,请稍后重试!
移除标识
内容风险标识
本任务被
标识为内容中包含有代码安全 Bug 、隐私泄露等敏感信息,仓库外成员不可访问
例行回合上游社区补丁
已完成
#ICQS5U
缺陷
peulerosci
创建于
2025-08-04 10:26
<h3>优先级:</h3><p>次要</p><p></p><h3>原因分析:</h3><p></p><p>【是否新引入rpm包,是否进行了安全编译选项扫描】</p><p></p><p>不涉及</p><p></p><p>【定位分析】</p><p></p><p>回合社区补丁</p><table ><tr><td colSpan="1" rowSpan="1">软件包</td><td colSpan="1" rowSpan="1">CommitId</td><td colSpan="1" rowSpan="1">描述</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">3ccbc99a1bf6b2da543c9db9ac03aca2019fc50f</td><td colSpan="1" rowSpan="1">rainerscript: do not try to call a function if it does not exist</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">56deafaa49f039ede3f02428c5e8c56e4493cd55</td><td colSpan="1" rowSpan="1">gnutls bugfix: Add timeout to GnuTLS handshake<br/> <br/> When forwarding logs to a remote server, it appears that an rsyslogclient with gtls netstream driver will wait forever on TLS handshaketo complete if the server doesn't answer. Adding a timeout fixesthe error.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">d24fd00c935e167a095f4725262ad52546404552</td><td colSpan="1" rowSpan="1">gnutls bugfix: Avoid blocking sockets during TLS handshake<br/> <br/> When forwarding logs to a TLS server, using a blocking socketcan lead to indefinite waiting during the gnutls_handshake()call if the server does not respond as expected.This commit modifies the behavior to use non-blocking sockets,ensuring that the rsyslog client does not hang indefinitelywaiting for a response.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">3c00ecb73e72abaa436a06421980cb02de5d0515</td><td colSpan="1" rowSpan="1">core: fix potential NULL ptr access on HUP in very early startup phase<br/> <br/> found be clang static analyzer, no report from practice. This couldpotentially happend during early startup when the config was notyet full read while HUP was received.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">ff6f4ceeed8ba715ea0e26d36e2afac2f6c07931</td><td colSpan="1" rowSpan="1">gnutls TLS driver: fix small memory leak<br/> <br/> found by CoverityScansee also https://github.com/rsyslog/rsyslog/pull/5329</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">6c04651db771fc44f24d3bef499bdf6837633042</td><td colSpan="1" rowSpan="1">rsyslog startup bugfix: cosmetic memory leak<br/> <br/> This was detected by Coverity Scan, and we fix it to keep Coveritysilent. It is a < 100 byte mem leak that occurs once on startup.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">6b1b15842c7bb71948c37c362053bd1a1cec98d8</td><td colSpan="1" rowSpan="1">core: fix potential misadressing in sigmask<br/> <br/> This code is inside rsyslog for many years w/o any problems, butduring new testing we saw that the signal mask is potentially notproperly initialized.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">0ac9aafb72588ff6c5bc0923fee2dcc7076f4855</td><td colSpan="1" rowSpan="1">omfwd: fix segfault in UDP freeaddrinfo</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">09a3448a3e6ac5aa7065fd56d229a66eacece4db</td><td colSpan="1" rowSpan="1">covscan: remove defect type of RESOURCE_LEAK<br/> <br/> Fix memory leaks when evaluating variable in rainerscript</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">e06569ecea1b5c0cd1c35699f31ab3929d431d2a</td><td colSpan="1" rowSpan="1">Fix a buffer overflow when the argument to replace is empty<br/> <br/> We have these expressions in rsyslogd.conf.<br/> <br/> set $!rsyslog_FileFormat = exec_template(RSYSLOG_FileFormat)<br/> set $!localheader = re_extract($!rsyslog_FileFormat, [^ ]+.* +port[0-9], 0, 0, );<br/> set $!localpattern = re_extract($!rsyslog_FileFormat, [^ ]+ +[^ ]+ +port[0-9], 0, 0, );<br/> set $!localheader = replace($!localheader, $!localpattern, );<br/> <br/> We have a message like this arriving.<br/> <br/> <30>Feb 24 22:08:21 hostname port03 'label' RXDATA: \n<br/> <br/> It was observed that when 2 of these messages arrive in a row, rsyslogd<br/> crashes. This is clearly due to memory corruption, as the crash comes<br/> from within calloc.<br/> <br/> Unlike the crash, valgrind only complained about the first message. It<br/> reported that the 'find' variable was being accessed in the replace<br/> function, reading past allocated data.<br/> <br/> The localpattern variable ends up empty (null?), because the pattern<br/> fails to match. This ends up passed into the replace function as an<br/> es_str_t with a length and buffer length of 0. There is no string data,<br/> not even a null terminator.<br/> <br/> As a result, the 'find' pointer is invalid, and accessing it is an<br/> error. Protect against accessing the 'find' pointer when the buffer is<br/> empty by exiting the two loops when j == lfind and lfind == 0.<br/> <br/> This removes the report from valgrind, and stops rsyslogd from crashing.</td></tr></table><p></p><p></p><p></p><p>【对外部是否有影响】</p><p></p><p>不涉及</p><p></p><p></p><p></p><p></p><p></p> **二、缺陷分析结构反馈** 影响性分析说明: 缺陷严重等级:(Critical/High/Moderate/Low) 缺陷根因说明: 受影响版本排查(受影响/不受影响): openEuler-20.03-LTS-SP4 openEuler-22.03-LTS-SP3 openEuler-22.03-LTS-SP4 openEuler-24.03-LTS openEuler-24.03-LTS-SP1 openEuler-24.03-LTS-SP2 修复是否涉及abi变化(是/否): openEuler-20.03-LTS-SP4 openEuler-22.03-LTS-SP3 openEuler-22.03-LTS-SP4 openEuler-24.03-LTS openEuler-24.03-LTS-SP1 openEuler-24.03-LTS-SP2
<h3>优先级:</h3><p>次要</p><p></p><h3>原因分析:</h3><p></p><p>【是否新引入rpm包,是否进行了安全编译选项扫描】</p><p></p><p>不涉及</p><p></p><p>【定位分析】</p><p></p><p>回合社区补丁</p><table ><tr><td colSpan="1" rowSpan="1">软件包</td><td colSpan="1" rowSpan="1">CommitId</td><td colSpan="1" rowSpan="1">描述</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">3ccbc99a1bf6b2da543c9db9ac03aca2019fc50f</td><td colSpan="1" rowSpan="1">rainerscript: do not try to call a function if it does not exist</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">56deafaa49f039ede3f02428c5e8c56e4493cd55</td><td colSpan="1" rowSpan="1">gnutls bugfix: Add timeout to GnuTLS handshake<br/> <br/> When forwarding logs to a remote server, it appears that an rsyslogclient with gtls netstream driver will wait forever on TLS handshaketo complete if the server doesn't answer. Adding a timeout fixesthe error.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">d24fd00c935e167a095f4725262ad52546404552</td><td colSpan="1" rowSpan="1">gnutls bugfix: Avoid blocking sockets during TLS handshake<br/> <br/> When forwarding logs to a TLS server, using a blocking socketcan lead to indefinite waiting during the gnutls_handshake()call if the server does not respond as expected.This commit modifies the behavior to use non-blocking sockets,ensuring that the rsyslog client does not hang indefinitelywaiting for a response.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">3c00ecb73e72abaa436a06421980cb02de5d0515</td><td colSpan="1" rowSpan="1">core: fix potential NULL ptr access on HUP in very early startup phase<br/> <br/> found be clang static analyzer, no report from practice. This couldpotentially happend during early startup when the config was notyet full read while HUP was received.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">ff6f4ceeed8ba715ea0e26d36e2afac2f6c07931</td><td colSpan="1" rowSpan="1">gnutls TLS driver: fix small memory leak<br/> <br/> found by CoverityScansee also https://github.com/rsyslog/rsyslog/pull/5329</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">6c04651db771fc44f24d3bef499bdf6837633042</td><td colSpan="1" rowSpan="1">rsyslog startup bugfix: cosmetic memory leak<br/> <br/> This was detected by Coverity Scan, and we fix it to keep Coveritysilent. It is a < 100 byte mem leak that occurs once on startup.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">6b1b15842c7bb71948c37c362053bd1a1cec98d8</td><td colSpan="1" rowSpan="1">core: fix potential misadressing in sigmask<br/> <br/> This code is inside rsyslog for many years w/o any problems, butduring new testing we saw that the signal mask is potentially notproperly initialized.</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">0ac9aafb72588ff6c5bc0923fee2dcc7076f4855</td><td colSpan="1" rowSpan="1">omfwd: fix segfault in UDP freeaddrinfo</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">09a3448a3e6ac5aa7065fd56d229a66eacece4db</td><td colSpan="1" rowSpan="1">covscan: remove defect type of RESOURCE_LEAK<br/> <br/> Fix memory leaks when evaluating variable in rainerscript</td></tr><tr><td colSpan="1" rowSpan="1">openEuler:rsyslog</td><td colSpan="1" rowSpan="1">e06569ecea1b5c0cd1c35699f31ab3929d431d2a</td><td colSpan="1" rowSpan="1">Fix a buffer overflow when the argument to replace is empty<br/> <br/> We have these expressions in rsyslogd.conf.<br/> <br/> set $!rsyslog_FileFormat = exec_template(RSYSLOG_FileFormat)<br/> set $!localheader = re_extract($!rsyslog_FileFormat, [^ ]+.* +port[0-9], 0, 0, );<br/> set $!localpattern = re_extract($!rsyslog_FileFormat, [^ ]+ +[^ ]+ +port[0-9], 0, 0, );<br/> set $!localheader = replace($!localheader, $!localpattern, );<br/> <br/> We have a message like this arriving.<br/> <br/> <30>Feb 24 22:08:21 hostname port03 'label' RXDATA: \n<br/> <br/> It was observed that when 2 of these messages arrive in a row, rsyslogd<br/> crashes. This is clearly due to memory corruption, as the crash comes<br/> from within calloc.<br/> <br/> Unlike the crash, valgrind only complained about the first message. It<br/> reported that the 'find' variable was being accessed in the replace<br/> function, reading past allocated data.<br/> <br/> The localpattern variable ends up empty (null?), because the pattern<br/> fails to match. This ends up passed into the replace function as an<br/> es_str_t with a length and buffer length of 0. There is no string data,<br/> not even a null terminator.<br/> <br/> As a result, the 'find' pointer is invalid, and accessing it is an<br/> error. Protect against accessing the 'find' pointer when the buffer is<br/> empty by exiting the two loops when j == lfind and lfind == 0.<br/> <br/> This removes the report from valgrind, and stops rsyslogd from crashing.</td></tr></table><p></p><p></p><p></p><p>【对外部是否有影响】</p><p></p><p>不涉及</p><p></p><p></p><p></p><p></p><p></p> **二、缺陷分析结构反馈** 影响性分析说明: 缺陷严重等级:(Critical/High/Moderate/Low) 缺陷根因说明: 受影响版本排查(受影响/不受影响): openEuler-20.03-LTS-SP4 openEuler-22.03-LTS-SP3 openEuler-22.03-LTS-SP4 openEuler-24.03-LTS openEuler-24.03-LTS-SP1 openEuler-24.03-LTS-SP2 修复是否涉及abi变化(是/否): openEuler-20.03-LTS-SP4 openEuler-22.03-LTS-SP3 openEuler-22.03-LTS-SP4 openEuler-24.03-LTS openEuler-24.03-LTS-SP1 openEuler-24.03-LTS-SP2
评论 (
4
)
登录
后才可以发表评论
状态
已完成
待办的
已挂起
修复中
已确认
已完成
已验收
已取消
负责人
未设置
yanan-rock
yanan-rock
负责人
协作者
+负责人
+协作者
标签
sig/Base-service
未设置
项目
未立项任务
未立项任务
里程碑
未关联里程碑
未关联里程碑
Pull Requests
未关联
未关联
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
未关联
分支 (28)
标签 (25)
master
openEuler-24.03-LTS
openEuler-24.03-LTS-SP2
openEuler-24.03-LTS-SP1
openEuler-24.03-LTS-Next
openEuler-25.03
openEuler-25.09
openEuler-24.09
openEuler-22.03-LTS-SP1
openEuler-22.03-LTS-SP3
openEuler-22.03-LTS-SP4
openEuler-22.03-LTS-SP2
openEuler-22.03-LTS
openEuler-22.03-LTS-Next
openEuler-23.09
openEuler-23.03
openEuler-22.09
openEuler-20.03-LTS-SP1
openEuler-20.03-LTS-SP3
openEuler-20.03-LTS-SP4
openEuler-20.03-LTS-Next
openEuler-21.09
openEuler-20.03-LTS-SP2
openEuler-21.03
openEuler-20.03-LTS
openEuler-20.09
openEuler1.0
openEuler1.0-base
openEuler-24.03-LTS-SP2-release
openEuler-25.03-release
openEuler-24.03-LTS-SP1-update-20250110
openEuler-24.03-LTS-SP1-release
openEuler-24.03-LTS-update-20241227
openEuler-22.03-LTS-SP4-release
openEuler-24.09-release
openEuler-24.03-LTS-release
openEuler-22.03-LTS-SP3-release
openEuler-23.09-rc5
openEuler-22.03-LTS-SP1-release
openEuler-22.09-release
openEuler-22.09-rc5
openEuler-22.09-20220829
openEuler-22.03-LTS-20220331
openEuler-22.03-LTS-round5
openEuler-22.03-LTS-round3
openEuler-22.03-LTS-round2
openEuler-22.03-LTS-round1
openEuler-20.03-LTS-SP3-release
openEuler-20.03-LTS-SP2-20210624
openEuler-21.03-20210330
openEuler-20.09-20200929
openEuler-20.03-LTS-20200606
openEuler-20.03-LTS-tag
开始日期   -   截止日期
-
置顶选项
不置顶
置顶等级:高
置顶等级:中
置顶等级:低
优先级
不指定
严重
主要
次要
不重要
预计工期
(小时)
参与者(1)
1
https://gitee.com/src-openeuler/rsyslog.git
git@gitee.com:src-openeuler/rsyslog.git
src-openeuler
rsyslog
rsyslog
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册