diff --git a/SOURCES/rsync-3.2.5-ssh-askpass.patch b/SOURCES/rsync-3.2.5-ssh-askpass.patch new file mode 100644 index 0000000..62c419c --- /dev/null +++ b/SOURCES/rsync-3.2.5-ssh-askpass.patch @@ -0,0 +1,15 @@ +diff --git a/main.c b/main.c +index 7222a83..630ca03 100644 +--- a/main.c ++++ b/main.c +@@ -1743,7 +1743,9 @@ int main(int argc,char *argv[]) + our_gid = MY_GID(); + am_root = our_uid == ROOT_UID; + +- unset_env_var("DISPLAY"); ++ // DISPLAY should only be cleared if SSH_ASKPASS is empty ++ if (!getenv("SSH_ASKPASS")) ++ unset_env_var("DISPLAY"); + + memset(&stats, 0, sizeof(stats)); + diff --git a/SOURCES/rsync-3.4.1-cve-2025-10158.patch b/SOURCES/rsync-3.4.1-cve-2025-10158.patch new file mode 100644 index 0000000..6527476 --- /dev/null +++ b/SOURCES/rsync-3.4.1-cve-2025-10158.patch @@ -0,0 +1,27 @@ +From 797e17fc4a6f15e3b1756538a9f812b63942686f Mon Sep 17 00:00:00 2001 +From: Andrew Tridgell +Date: Sat, 23 Aug 2025 17:26:53 +1000 +Subject: [PATCH] fixed an invalid access to files array + +this was found by Calum Hutton from Rapid7. It is a real bug, but +analysis shows it can't be leverged into an exploit. Worth fixing +though. + +Many thanks to Calum and Rapid7 for finding and reporting this +--- + sender.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sender.c b/sender.c +index a4d46c39e..b1588b701 100644 +--- a/sender.c ++++ b/sender.c +@@ -262,6 +262,8 @@ void send_files(int f_in, int f_out) + + if (ndx - cur_flist->ndx_start >= 0) + file = cur_flist->files[ndx - cur_flist->ndx_start]; ++ else if (cur_flist->parent_ndx < 0) ++ exit_cleanup(RERR_PROTOCOL); + else + file = dir_flist->files[cur_flist->parent_ndx]; + if (F_PATHNAME(file)) { diff --git a/SPECS/rsync.spec b/SPECS/rsync.spec index 492779f..feb7153 100644 --- a/SPECS/rsync.spec +++ b/SPECS/rsync.spec @@ -10,7 +10,7 @@ Summary: A program for synchronizing files over a network Name: rsync Version: 3.2.5 -Release: 3%{?dist} +Release: 3%{?dist}.2 URL: https://rsync.samba.org/ Source0: https://download.samba.org/pub/rsync/src/rsync-%{version}%{?prerelease}.tar.gz @@ -50,6 +50,8 @@ Patch7: rsync-3.2.5-cve-2024-12747.patch # From RHEL10 this will have to be documented as a different # behaviour for compression. Patch8: rsync-3.2.5-default-compression.patch +Patch9: rsync-3.2.5-ssh-askpass.patch +Patch10: rsync-3.4.1-cve-2025-10158.patch %description Rsync uses a reliable algorithm to bring remote and host files into @@ -97,6 +99,8 @@ may be used to setup a restricted rsync users via ssh logins. %patch6 -p1 -b .cve-2024-12088 %patch7 -p1 -b .cve-2024-12747 %patch8 -p1 -b .default-compression +%patch9 -p1 -b .ssh-askpass +%patch10 -p1 -b .cve-2025-10158 %build %configure --disable-xxhash --with-rrsync @@ -147,6 +151,12 @@ install -D -m644 %{SOURCE6} $RPM_BUILD_ROOT/%{_unitdir}/rsyncd@.service %systemd_postun_with_restart rsyncd.service %changelog +* Thu Mar 12 2026 Michal Ruprich - 3.2.5-3.2 +- Resolves: RHEL-152888 - CVE-2025-10158 Out of bounds array access via negative index + +* Thu Mar 12 2026 Michal Ruprich - 3.2.5-3.1 +- Resolves: RHEL-152879 - clearing DISPLAY breaks SSH_ASKPASS expectations + * Wed Feb 05 2025 Michal Ruprich - 3.2.5-3 - Resolves: RHEL-70265 - Rebase rsync to 3.2.5