3571e53040
patches for easier mirroring, to eliminate a special copy, to make www.freebsd.org/security a full copy of security.freebsd.org and be eventually be the same. For now files are just sitting there. The symlinks are missing. Discussed on: www (repository location) Discussed with: simon (so)
111 lines
4.2 KiB
Text
111 lines
4.2 KiB
Text
-----BEGIN PGP SIGNED MESSAGE-----
|
|
|
|
=============================================================================
|
|
FreeBSD-SA-01:45 Security Advisory
|
|
FreeBSD, Inc.
|
|
|
|
Topic: samba
|
|
|
|
Category: ports
|
|
Module: samba
|
|
Announced: 2001-07-10
|
|
Credits: Michal Zalewski <lcamtuf@bos.bindview.com>
|
|
Affects: Ports collection prior to the correction date.
|
|
Corrected: 2001-06-23
|
|
Vendor status: Updated version released
|
|
FreeBSD only: NO
|
|
|
|
I. Background
|
|
|
|
Samba is an implementation of the Server Message Block (SMB)
|
|
protocol.
|
|
|
|
II. Problem Description
|
|
|
|
The samba ports, versions prior to samba-2.0.10,
|
|
samba-devel-2.2.0a, and ja-samba-2.0.9.j1.0_1, fail to properly
|
|
validate NetBIOS names. By sending a specially crafted NetBIOS name
|
|
containing unix path characters, a remote user may be able to cause
|
|
the samba server to write the log files to arbitrary locations on
|
|
the local filesystems.
|
|
|
|
If samba is configured to use the '%m' macro in the 'log file'
|
|
directive, the NetBIOS name will be substituted without sanity
|
|
checking. This will allow the remote user to insert arbitrary paths
|
|
given the 15 character NetBIOS name limit. However, if a local user
|
|
can create symlinks accessible via this problem, a remote user may be
|
|
able to append to any arbitrary file or filesystem.
|
|
|
|
The samba port is not installed by default, nor is it "part of
|
|
FreeBSD" as such: it is part of the FreeBSD ports collection, which
|
|
contains over 5400 third-party applications in a ready-to-install
|
|
format. The ports collection shipped with FreeBSD 4.3 is vulnerable
|
|
to this problem since it was discovered after its release.
|
|
|
|
FreeBSD makes no claim about the security of these third-party
|
|
applications, although an effort is underway to provide a security
|
|
audit of the most security-critical ports.
|
|
|
|
III. Impact
|
|
|
|
Remote users using specially crafted NetBIOS names may be able to
|
|
insert arbitrary paths in log file names, causing log files to be
|
|
written in unintended and inappropriate locations.
|
|
|
|
If a local user can create symlinks accessible via this problem, a
|
|
remote user may be able to append to any arbitrary file or
|
|
filesystem.
|
|
|
|
If you have not chosen to install the samba port/package, then
|
|
your system is not vulnerable to this problem.
|
|
|
|
IV. Workaround
|
|
|
|
Remove all occurrences of the %m macro from smb.conf. Replacing the %m
|
|
macro with the %I macro (replaced with the IP address of the client machine)
|
|
is the recommended workaround for most sites.
|
|
|
|
V. Solution
|
|
|
|
One of the following:
|
|
|
|
1) Upgrade your entire ports collection and rebuild the samba port.
|
|
|
|
2) Deinstall the old package and install a new package dated after the
|
|
correction date, obtained from the following directories:
|
|
|
|
[i386]
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/net/samba-2.0.10.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/net/samba-2.0.10.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/net/samba-2.2.0a.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/net/samba-2.2.0a.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/japanese/ja-samba-2.0.9.j1.0_1.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/japanese/ja-samba-2.0.9.j1.0_1.tgz
|
|
|
|
[alpha]
|
|
Packages are not automatically generated for the alpha architecture at
|
|
this time due to lack of build resources.
|
|
|
|
3) download a new port skeleton for the samba port from:
|
|
|
|
http://www.freebsd.org/ports/
|
|
|
|
and use it to rebuild the port.
|
|
|
|
4) Use the portcheckout utility to automate option (3) above. The
|
|
portcheckout port is available in /usr/ports/devel/portcheckout or the
|
|
package can be obtained from:
|
|
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/devel/portcheckout-2.0.tgz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/devel/portcheckout-2.0.tgz
|
|
|
|
-----BEGIN PGP SIGNATURE-----
|
|
Version: GnuPG v1.0.6 (FreeBSD)
|
|
Comment: FreeBSD: The Power To Serve
|
|
|
|
iQCVAwUBO0sNulUuHi5z0oilAQGpUwP9FbgICIWlBI0KeUpp6YHwXUfQejJuls63
|
|
lP9lnN25B+aSgXNvXQKaSVgQrWXY7AjdX2hhp/zShIUoDTYt4rVQyByUH4Zdl704
|
|
HMzyX7+CiQ4tzG2lXwdHL1Bb1kVHtqX84GTpt+NlnUGSYYzTr/+wKHv04z1nIQ11
|
|
Z0Nrmj64Coo=
|
|
=VgXS
|
|
-----END PGP SIGNATURE-----
|