053a04a3380ef0f6aaf2f068bc375ab343ca98e7
[rsync-web.git] / index.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
2 <HTML>
3 <HEAD>
4 <TITLE>rsync</TITLE>
5 </HEAD>
6 <!--#include virtual="header.html" -->
7
8 <H2 align="center">Welcome to the rsync web pages</H2>
9
10 rsync is an <A HREF="http://www.opensource.org/">open source</A>
11 utility that provides fast incremental file transfer. rsync is freely
12 available under the <A HREF="GPL.html">GNU General Public
13 License version 2</A>
14
15 <p><b>**
16 For all versions of rsync prior to 2.6.3, see the
17 <a href="#security_aug04">August 2004 security advisory</a>!
18 **
19 If you're using a version prior to 2.6.1, see the
20 <a href="#security_apr04">April 2004 security advisory</a>!
21 **
22 If you're using a version prior to 2.5.7, see the
23 <a href="#security_dec03">December 2003 security advisory</a>!
24 **</b>
25
26 <h3>Rsync 2.6.3 released</h3>
27
28 <p><i style="color:#777777">September 30th, 2004</i>
29
30 <p>Rsync version 2.6.3 has been released.  It contains several new features
31 and quite a few bug fixes.
32
33 <p>See the <a href="/ftp/rsync/rsync-2.6.3-NEWS">release NEWS</a> for the
34 details of what changed since 2.6.2.
35
36 <p>See the <a href="download.html">download page</a> for all the ways
37 to grab the new version, or snag one of these:
38 <b><a href="/ftp/rsync/rsync-2.6.3.tar.gz">rsync-2.6.3.tar.gz</a>
39 (<a href="/ftp/rsync/rsync-2.6.3.tar.gz.asc">signature</a>),
40 <a href="/ftp/rsync/rsync-2.6.2-2.6.3.diffs.gz">rsync-2.6.2-2.6.3.diffs.gz</a>
41 (<a href="/ftp/rsync/rsync-2.6.2-2.6.3.diffs.gz.asc">signature</a>)</b>.
42
43 <a name="security_aug04"></a>
44 <h3 style="color:red">August 2004 Security Advisory</h3>
45
46 <p><i style="color:#777777">August 12th, 2004</i>
47
48 <h4>Background</h4>
49
50 <p>There is a path-sanitizing bug that affects daemon mode in all modern
51 rsync versions through version 2.6.2, but only if chroot is disabled.  It
52 does NOT affect the normal send/receive filenames that specify what
53 files should be transferred (this is because these names happen to get
54 sanitized twice, and thus the second call removes any lingering leading
55 slash(es) that the first call left behind).  It does affect certain
56 option paths that cause auxilliary files to be read or written.
57
58 <h4>The Fix</h4>
59
60 <p>The best fix is to apply this one-word patch to the sanitize_path()
61 function in util.c:
62
63 <pre>
64 --- orig/util.c 2004-04-27 12:59:37 -0700
65 +++ util.c      2004-08-11 23:37:27 -0700
66 @@ -743,7 +743,7 @@
67                                 allowdotdot = 1;
68                         } else {
69                                 p += 2;
70 -                               if (*p == '/')
71 +                               while (*p == '/')
72                                         p++;
73                                 if (sanp != start) {
74                                         /* back up sanp one level */
75 </pre>
76
77 <p>This bug-fix was released in version 2.6.3 of rsync.
78
79 <p>One potential fix that doesn't require recompiling rsync is to set
80 "use chroot = true" for all the modules in the rsyncd.conf file.
81
82
83 <h3>Rsync 2.6.2 released</h3>
84
85 <p><i style="color:#777777">April 30th, 2004</i>
86
87 <p>Rsync version 2.6.2 has been released.  It is a bugfix release that mainly
88 fixes <b>a bug with the --relative option (-R) in 2.6.1</b>
89 that could cause files to be transferred incorrectly.  This only affected a
90 source right at the root of the filesystem, such as "/" or "/*" (using "."
91 as the source after a chdir to "/" was not affected, however).
92
93 <p>See the <a href="/ftp/rsync/old-versions/rsync-2.6.2-NEWS">release NEWS</a> for the
94 details of what else was fixed.
95
96 <h3>Rsync 2.6.1 released</h3>
97
98 <p><i style="color:#777777">April 26th, 2004</i>
99
100 <p>Rsync version 2.6.1 has been released.  It is primarily a performance
101 release that requires less memory to run, makes fewer write calls to the socket
102 (lowering the system CPU time), does less string copying (lowering the user CPU
103 time), and also reduces the amount of data that is transmitted over the wire.
104 There have also been quite a few bug fixes.  See the
105 <a href="/ftp/rsync/old-versions/rsync-2.6.1-NEWS">release NEWS</a> for the full
106 details.
107
108 <a name="security_apr04"></a>
109 <h3 style="color:red">April 2004 Security Advisory</h3>
110
111 <p><i style="color:#777777">April 26th, 2004</i>
112
113 <p>There is a security problem in all versions prior to 2.6.1 that affects only
114 people running a read/write daemon WITHOUT using chroot.  If the user privs
115 that such an rsync daemon is using is anything above "nobody", you are at risk
116 of someone crafting an attack that could write a file outside of the module's
117 "path" setting (where all its files should be stored).  Please either enable
118 chroot or upgrade to 2.6.1.  People not running a daemon, running a read-only
119 daemon, or running a chrooted daemon are totally unaffected.
120
121 <h3>One Cygwin hang-problem resolved</h3>
122
123 <p>The problem with rsync hanging at the end of the transfer on
124 <a href="http://www.cygwin.com/">Cygwin</a> had been previously traced to a
125 signal-handling bug in their compatibility DLL.  This bug appears to now be
126 fixed in DLL version 1.5.7-1, and Cygwin users are reporting that upgrading the
127 DLL removes the hang-at-end-of-transfer problem for their existing rsync executable.
128 (Note that this doesn't solve a hang that some folks see in the middle of a
129 transfer -- using daemon mode instead of ssh can work around that one.)
130
131 <a name="two_six"></a>
132 <h3>Rsync 2.6.0 released</h3>
133
134 <p><i style="color:#777777">January 1st, 2004</i>
135
136 <P> Two important things to note in the new release:
137
138 <ol>
139
140 <li>The default remote shell is now "ssh" unless you tell configure you want to
141 make something else the default.
142
143 <li>Some bug fixes in the include/exclude code, while making things work
144 properly, have resulted in some user-visible changes for certain wildcard
145 strings.  Read the BUG FIXES below to see if any of these changes apply to you.
146 (Most people should be unaffected.)
147
148 </ol>
149
150 <p>One other item of note is that the oft-requested option "--files-from" is now
151 available.  This option lets you specify a list of files to transfer, and can
152 be much more efficient than a recursive descent using include/exclude
153 statements (if you know in advance what files you want to transfer).  The list
154 of files can come from either side of the connection, so it is possible for a
155 server to provide the file-list that lets someone grab a server-specified set of
156 files, for example.  See the <a href="/ftp/rsync/rsync.html">rsync man page</a>
157 for more details.
158
159 <p>For a full list of changes in version 2.6.0, see the
160 <a href="/ftp/rsync/old-versions/rsync-2.6.0-NEWS">release NEWS</a>.
161
162 <a name="security_dec03"></a>
163 <h3 style="color:red">December 2003 Security Advisory</h3>
164
165 <p><i style="color:#777777">December 4th, 2003</i>
166
167 <h4>Background</h4>
168
169 <p>The rsync team has received evidence that a vulnerability in rsync was
170 recently used in combination with a Linux kernel vulnerability to
171 compromise the security of a public rsync server. While the forensic
172 evidence we have is incomplete, we have pieced together the most
173 likely way that this attack was conducted and we are releasing this
174 advisory as a result of our investigations to date.
175
176 <p>
177 Our conclusions are that:
178
179 <ul>
180
181 <li>rsync version 2.5.6 and earlier contains a heap overflow vulnerability that can
182    be used to remotely run arbitrary code.
183
184 <li>While this heap overflow vulnerability could not be used by itself
185    to obtain root access on a rsync server, it could be used in
186    combination with the recently announced brk vulnerability in the
187    Linux kernel to produce a full remote compromise.
188
189 <li>The server that was compromised was using a non-default rsyncd.conf
190    option <tt>"use chroot = no"</tt>. The use of this option made the attack on
191    the compromised server considerably easier. A successful attack is
192    almost certainly still possible without this option, but it would
193    be much more difficult.
194 </ul>
195
196 <p>
197 Please note that this vulnerability only affects the use of rsync as a
198 "rsync server". To see if you are running a rsync server you should
199 use the netstat command to see if you are listening on TCP port
200 873. If you are not listening on TCP port 873 then you are not running
201 a rsync server.
202
203 <h4>New rsync release</h4>
204
205 <p>
206 In response we have released a new version of rsync, version
207 2.5.7. This is based on the current stable 2.5.6 release with only the
208 changes necessary to prevent this heap overflow vulnerability. There
209 are no new features in this release.
210 <p>
211 We recommend that anyone running a rsync server take the following
212 steps:
213 <ol>
214 <li>
215  Update to (at least) rsync version 2.5.7 immediately.
216 <li>
217  If you are running a Linux kernel prior to version 2.4.23 then
218       you should upgrade your kernel immediately. Note that some
219       distribution vendors may have patched versions of the 2.4.x
220       series kernel that fix the brk vulnerability in versions before
221       2.4.23. Check with your vendor security site to ensure that you
222       are not vulnerable to the <tt>brk</tt> problem.
223 <li>
224  Review your <tt>/etc/rsyncd.conf</tt> configuration file. If you are
225       using the option <tt>"use chroot = no"</tt> then remove that line or
226       change it to <tt>"use chroot = yes"</tt>.  If you find that you need that
227       option for your rsync service then you should disable your rsync
228       service until you have discussed a workaround with the rsync
229       maintainers on the rsync mailing list.  The disabling of the
230       chroot option should not be needed for any normal rsync server.
231 </ol>
232
233 <p>The patches and full source for rsync version 2.5.7 are available from
234 <a href="http://rsync.samba.org/">http://rsync.samba.org/</a> and mirror sites. We expect that vendors will
235 produce updated packages for their distributions shortly.
236
237 <h4>Credits</h4>
238
239 <p>
240 The rsync team would like to thank the following individuals for their
241 assistance in investigating this vulnerability and producing this
242 response:
243 <ul>
244
245 <li>Timo Sirainen &lt;tss.iki.fi&gt;
246 <li>Mike Warfield &lt;mhw.wittsend.com&gt;
247 <li>Paul Russell &lt;rusty.samba.org&gt;
248 <li>Andrea Barisani &lt;lcars.gentoo.org&gt;
249 </ul>
250
251 <p>        
252 The Common Vulnerabilities and Exposures project (cve.mitre.org) has
253 assigned the name 
254 <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0962">CAN-2003-0962</a> 
255 to this issue.
256
257 <p>
258 Regards,
259 <p>
260 The rsync team
261
262 <!--#include virtual="footer.html" -->