首页 网络安全 正文
  • 本文约1935字,阅读需10分钟
  • 262
  • 0

Rsync中存在CVE-2024-12084等缓冲区溢出漏洞

摘要

栋科技漏洞库关注到Rsync发布安全公告,确认其服务端进程Rsyncd存在缓冲区溢出漏洞,漏洞追踪为CVE-2024-12084,CVSS评分9.8。

Rsync 是linux系统数据镜像备份工具,使用快速增量备份工具Remote Sync可远程同步,支持本地复制,或与其他SSH、rsync主机同步。

Rsync支持高效的增量备份,通过比较源和目标文件的差异,只传输更改过的部分,从而节省带宽和时间,支持匿名传输,便于网站镜像。

Rsync支持本地和远程文件传输,常用于备份、同步和部署任务,Rsync独有的算法原理及Rsync对算法实现的机制比想象中要复杂一些。

一、基本情况

Rsync可以实现增量备份的工具,通过配合任务计划,Rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。

Rsync中存在CVE-2024-12084等缓冲区溢出漏洞

Rsync可以实现scp的远程拷贝(rsync不支持远程到远程的拷贝,但scp支持)、cp的本地拷贝、rm删除和"ls -l"显示文件列表等诸多功能。

栋科技漏洞库关注到Rsync发布安全公告,确认其服务端进程Rsyncd存在缓冲区溢出漏洞,漏洞追踪为CVE-2024-12084,CVSS评分9.8。

Rsync 还存在CVE-2024-12084、CVE-2024-12085、CVE-2024-12086、CVE-2024-12087、CVE-2024-12088、CVE-2024-12747漏洞。

二、漏洞分析

CVE-2024-12084

CVE-2024-12084是在Rsync守护程序发现的基于堆的缓冲区溢出缺陷,源于代码中攻击者控制的校验和长度(s2length)处理不当所致。

当MAX_DIGEST_LEN超过固定的SUM_LENGTH(16字节)时,攻击者可以在sum2缓冲区中写入越界数据,从而触发堆内存溢出问题。

除了CVE-2024-12084缓冲区溢出漏洞之外,Rsync 还存在如下漏洞:

CVE-2024-12085

CVE-2024-12085是Rsync守护进程中存在的信息泄露漏洞,该漏洞是CVSS评分为7.5分,当 Rsync 比较文件校验和时,就会触发该缺陷。

攻击者可以通过操纵校验和长度(s2length),以在校验和与未初始化的内存之间进行比较,并且一次泄漏一个字节的未初始化堆栈数据。

CVE-2024-12086

CVE-2024-12086是Rsync存在的文件泄露漏洞,该漏洞的CVSS评分为6.1分,攻击者可以构造校验和,逐字节枚举客户端任意文件内容。

具体而言,CVE-2024-12086漏洞可能允许服务器枚举客户端机器上任意文件的内容,将文件从客户端复制到服务器时就会复现这一漏洞。

在此过程中,Rsync服务器会将本地数据的校验和发送到客户端进行比较,以确定哪些数据需要发送到服务器。

通过发送为任意文件专门构造的校验和值,攻击者能够根据客户端的响应逐字节重建这些文件的数据。

CVE-2024-12087

CVE-2024-12087是Rsync存在的路径遍历漏洞,CVSS评分为6.5,恶意服务器可以利用符号链接绕过,将文件写入客户端的非目标目录。

这一漏洞源于“- inc-recursive”选项启用的行为,这是许多客户端选项的默认启用选项,即使客户端没有明确的启用,服务器也可以启用它。

使用“- inc-recursive”时若未正确符号链接验证,并对每个文件列表进行重复数据消除检查,服务器可能将文件写入客户端预期目标目录外。

恶意服务器可以将恶意文件写入客户端上以有效目录/路径命名的任意位置。

CVE-2024-12088

CVE-2024-12088是Rsync存在的路径遍历漏洞,CVSS评分6.5,使用`--safe-links`选项时未正确验证符号链接目标,导致路径遍历漏洞。

具体而言,当使用`- safe-links '选项时,Rsync无法正确验证一个符号链接目标中是否包含另一个符号链接,可能将文件写入非预期目录。

CVE-2024-12747

CVE-2024-12747是Rsync存在的一个符号链接竞态条件漏洞,该漏洞的CVSS评分为5.6分,漏洞源于rsync处理符号链接时的竞争情况。

Rsync在遇到符号链接时的默认行为是跳过它们,攻击者在适当的时候用符号链接替换常规文件,就有可能绕过默认行为并遍历符号链接。

根据rsync进程的权限,攻击者可利用时机绕过默认行为,泄露敏感信息并可能导致权限提升,因此可能泄漏敏感信息可能导致权限提升。

需要注意的是,缓冲区溢出漏洞(CVE-2024-12084)与信息泄露漏洞(CVE-2024-12085)可联合利用,攻击者可能实现远程代码执行。

三、影响范围

CVE-2024-12084(缓冲区溢出漏洞):3.2.7=

CVE-2024-12085(信息泄露漏洞):Rsync < 3.4.0

CVE-2024-12086(文件泄露漏洞):Rsync < 3.4.0

CVE-2024-12087(路径遍历漏洞):Rsync < 3.4.0

CVE-2024-12088(路径遍历漏洞):Rsync < 3.4.0

CVE-2024-12747(符号链接竞态条件漏洞):Rsync < 3.4.0

四、修复建议

1、目前该漏洞已经修复,请尽快下载并升级至最新版本

2、临时措施

CVE-2024-12084,禁用SHA*支持,使用以下编译选项:

CFLAGS=-DDISABLE_SHA512_DIGEST 和 CFLAGS=-DDISABLE_SHA256_DIGEST。

CVE-2024-12085,编译时使用 -ftrivial-auto-var-init=zero,将栈内容初始化为零,以防止信息泄露。

CVE-2024-12086,限制对客户端文件内容的访问,确保服务器仅能够访问授权的文件。

CVE-2024-12087,禁用--inc-recursive选项或强化符号链接验证,确保文件写入仅限于目标目录内。

CVE-2024-12088,加强对--safe-links选项下符号链接目标的验证,避免路径遍历漏洞的发生。

CVE-2024-12747,通过增强符号链接处理中的竞态条件保护,避免攻击者绕过默认行为并泄露敏感信息。

五、参考链接

文章回复-路羽博客.png此处内容已隐藏,评论后刷新即可查看!

评论
更换验证码
友情链接