Linux系统面临严重Rsync漏洞,需立即修补

文章详细介绍了Rsync工具在Linux和Unix系统中发现的六个严重安全漏洞,包括堆缓冲区溢出、信息泄露和路径遍历等高风险问题,攻击者可利用这些漏洞执行任意代码、窃取数据或接管系统,并提供了各Linux发行版的修补指南。

Linux系统面临严重Rsync漏洞,需立即修补

Rsync是Linux、macOS、*BSD和类Unix系统中常用的开源命令行工具,用于同步文件和目录。它是发送或接收文件、创建备份或设置镜像的热门工具。通过仅传输文件的变更部分,它最大限度地减少了数据复制,比sftp或ftp-ssl等传统复制方法更快速、带宽效率更高。Rsync 3.3.0及以下版本被发现存在六个严重漏洞。攻击者可利用这些漏洞泄露数据、损坏文件甚至接管系统。其中一个堆缓冲区溢出漏洞的CVSS评分为9.8,需要在rsync包的客户端和服务器端同时解决。此外,通过未初始化堆栈内容的信息泄露可绕过ASLR保护,且rsync服务器可利用符号链接使客户端在目标目录外写入文件。

Rsync安全漏洞:急需更新以保护系统

Rsync是许多流行开源备份应用程序(包括Rclone、Rsnapshot、DeltaCopy等)使用的便捷命令行工具。它可在守护进程和客户端模式下运行。请修补服务器和客户端上安装的rsync软件,以确保系统安全和稳定。根据CERT协调中心的报告,存在以下漏洞:

  • CVE-2024-12084 – 堆缓冲区溢出漏洞,允许攻击者利用此缺陷在运行rsync的目标服务器上执行任意代码。
  • CVE-2024-12085 – 在rsync守护进程比较文件校验和时触发的缺陷,允许攻击者操纵校验和长度(s2length),导致校验和与未初始化内存比较,并每次泄露一个字节的未初始化堆栈数据。通过未初始化堆栈内容的信息泄露可绕过ASLR。
  • CVE-2024-12747 – Rsync存在符号链接竞争条件漏洞,可能导致权限提升。此漏洞允许用户在受影响服务器上访问特权文件。
  • CVE-2024-12086 – 此漏洞允许服务器枚举客户端机器上任意文件的内容,即服务器泄露任意客户端文件。
  • CVE-2024-12087 – 这是Rsync守护进程中的路径遍历漏洞。换句话说,服务器可利用符号链接使客户端在目标目录外写入文件。
  • CVE-2024-12088 – Rsync未能正确验证符号链接目标是否包含另一个符号链接,导致路径遍历漏洞,可能使文件在所需目录外被任意写入。

Rsync漏洞对Linux和Unix系统的影响

如您所知,rsync是在Linux/Unix系统间移动文件的一种方式。不幸的是,这六个安全弱点可单独或协同作用,让攻击者通过缓冲区溢出攻击接管安装Rsync的计算机,以运行任何命令或任意代码。信息泄露攻击允许攻击者查看存储在内存中的信息,包括可能的秘密信息。敏感数据(如SSH密钥)可能被提取。恶意代码可能通过覆盖或更新用户主目录中的文件(如~/.bashrc或~/.popt)来执行。

如何保护系统

您必须应用rsync仓库中可用的最新补丁。大多数Linux发行版提供命令行界面来更新rsync。建议在桌面和服务器端升级rsync包。

Debian/Ubuntu Linux

Debian或Ubuntu Linux使用apt命令/apt-get命令修补和更新rsync命令:

1
2
3
4
$ sudo apt update
$ apt list --upgradable
rsync/focal-updates,focal-security 3.1.3-8ubuntu0.8 amd64 [upgradable from: 3.1.3-8ubuntu0.7]
$ sudo apt upgrade

Ubuntu Linux版本24.04/22.04/20.04/18.04 ESM/16.04 ESM/14.04 ESM受影响。Debian Linux版本信息见此。无需重启服务器,但必须重启rsync守护进程服务。

RHEL/Oracle Linux/Rocky/Alma和CentOS

RHEL 8.x/9.x及克隆版本均受影响,运行yum命令/dnf命令应用补丁:

1
$ sudo dnf update

SUSE Linux Enterprise和OpenSUSE Linux

根据此页面,SUSE Linux多个版本均受影响。运行zypper命令。例如:

1
$ sudo zypper patch

OpenSUSE用户见此页面。

Alpine Linux

尝试运行apk命令:

1
2
# apk update
# apk upgrade

Arch Linux

运行pacman命令如下(更多信息见此页面):

1
$ sudo pacman -Syu "rsync>=3.4.0-1"

FreeBSD

使用pkg命令:

1
2
$ sudo pkg update
$ sudo pkg upgrade

macOS (OS X)

打开终端。键入brew命令并按Enter键。例如:

1
$ brew update

总结

Linux、*BSD和类Unix系统中的rsync包存在多个安全问题,包括任意代码执行、任意文件上传、信息泄露和权限提升。因此,必须尽快修补系统。请查看以下链接获取更多信息:

  • Rsync包含六个漏洞 – 漏洞说明 VU#952657
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计