Under specific conditions, the rsync daemon is vulnerable to a directory traversal allowing to write files outside a sync module.
|Package||net-misc/rsync on all architectures|
|Affected versions||<= 2.6.0-r1|
|Unaffected versions||>= 2.6.0-r2|
rsync is a utility that provides fast incremental file transfers. It is used to efficiently synchronize files between hosts and is used by emerge to fetch Gentoo's Portage tree. rsyncd is the rsync daemon, which listens to connections from rsync clients.
When rsyncd is used without chroot ("use chroot = false" in the rsyncd.conf file), the paths sent by the client are not checked thoroughly enough. If rsyncd is used with read-write permissions ("read only = false"), this vulnerability can be used to write files anywhere with the rights of the rsyncd daemon. With default Gentoo installations, rsyncd runs in a chroot, without write permissions and with the rights of the "nobody" user.
On affected configurations and if the rsync daemon runs under a privileged user, a remote client can exploit this vulnerability to completely compromise the host.
You should never set the rsync daemon to run with "use chroot = false". If for some reason you have to run rsyncd without a chroot, then you should not set "read only = false".
All users should update to the latest version of the rsync package.
# emerge sync # emerge -pv ">=net-misc/rsync-2.6.0-r2" # emerge ">=net-misc/rsync-2.6.0-r2"
July 12, 2004
July 12, 2004: 01