7e0a002df7
Fixes CVE-2017-17433 and CVE-2017-17434: remote bypass of security restrictions. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
46 lines
1.3 KiB
Diff
46 lines
1.3 KiB
Diff
From 3e06d40029cfdce9d0f73d87cfd4edaf54be9c51 Mon Sep 17 00:00:00 2001
|
|
From: Jeriko One <jeriko.one@gmx.us>
|
|
Date: Thu, 2 Nov 2017 23:44:19 -0700
|
|
Subject: [PATCH] Check fname in recv_files sooner.
|
|
|
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
|
---
|
|
Patch status: upstream commit 3e06d40029c
|
|
|
|
receiver.c | 12 ++++++------
|
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/receiver.c b/receiver.c
|
|
index baae3a919cdd..9fdafa152cb3 100644
|
|
--- a/receiver.c
|
|
+++ b/receiver.c
|
|
@@ -574,6 +574,12 @@ int recv_files(int f_in, int f_out, char *local_name)
|
|
file = dir_flist->files[cur_flist->parent_ndx];
|
|
fname = local_name ? local_name : f_name(file, fbuf);
|
|
|
|
+ if (daemon_filter_list.head
|
|
+ && check_filter(&daemon_filter_list, FLOG, fname, 0) < 0) {
|
|
+ rprintf(FERROR, "attempt to hack rsync failed.\n");
|
|
+ exit_cleanup(RERR_PROTOCOL);
|
|
+ }
|
|
+
|
|
if (DEBUG_GTE(RECV, 1))
|
|
rprintf(FINFO, "recv_files(%s)\n", fname);
|
|
|
|
@@ -645,12 +651,6 @@ int recv_files(int f_in, int f_out, char *local_name)
|
|
|
|
cleanup_got_literal = 0;
|
|
|
|
- if (daemon_filter_list.head
|
|
- && check_filter(&daemon_filter_list, FLOG, fname, 0) < 0) {
|
|
- rprintf(FERROR, "attempt to hack rsync failed.\n");
|
|
- exit_cleanup(RERR_PROTOCOL);
|
|
- }
|
|
-
|
|
if (read_batch) {
|
|
int wanted = redoing
|
|
? we_want_redo(ndx)
|
|
--
|
|
2.15.0
|
|
|