Samba is an Open Source/Free Software suite that provides seamless file
and print services to SMB/CIFS clients.
Remote exploitation of an input validation vulnerability in Samba allows
attackers to access files and directories outside of the specified share
Each file and directory name passed into Samba is converted and checked
with the functions unix_convert() and check_name(). The main purpose of
the unix_convert() routine is to convert names from the DOS namespace to
Unix namespace. It calls unix_clean_name(), which in turn removes double
slashes, leading './' characters and '..' directory-traversal
characters. check_name() does any final checks necessary to confirm the
validity of the converted filename and calls reduce_name(), which in
turn calls unix_clean_name() for a second time. The end result allows
for an attacker to specify the realpath of any file on the computer.
/./////etc is passed to unix_clean_name(). It becomes /.///etc. The
leading slash is then trimmed off to make .///etc. It is then passed to
unix_clean_name() again. The resulting string is /etc, which is an
absolute path on the system.
Successful exploitation allows remote attackers to bypass the specified
share restrictions to gain read, write and list access to files and
directories under the privileges of the user. In situations where a
public share is available, the attack can be performed by
An attacker does not need exploit code to exploit this vulnerability.
The smbclient program can be used to request/write/list files using the
"get", "put" and "dir" commands, respectively.
iDEFENSE has confirmed that Samba versions 3.0.2 and 2.2.9 are
vulnerable. It is suspected that all versions of Samba are vulnerable.
Only allow trusted users/hosts to connect to samba shares.
Samba 2.2.12 upgrade for Samba 2.2.x:
Samba 3.0.7 is not vulnerable.
The Common Vulnerabilities and Exposures (CVE) project has assigned the
names CAN-2004-0815 to these issues. This is a candidate for inclusion
in the CVE list (http://cve.mitre.org), which standardizes names for
09/22/2004 Initial vendor notification
09/22/2004 iDEFENSE clients notified
09/22/2004 Initial vendor response
09/30/2004 Coordinated public disclosure
Karol Wiesek is credited with this discovery.
Get paid for vulnerability research
Copyright © 2004 Verisign, Inc.
Permission is granted for the redistribution of this alert
electronically. It may not be edited in any way without the express
written consent of iDEFENSE. If you wish to reprint the whole or any
part of this alert in any other medium other than electronically, please
email firstname.lastname@example.org for permission.
Disclaimer: The information in the advisory is believed to be accurate
at the time of publishing based on currently available information. Use
of the information constitutes acceptance for use in an AS IS condition.
There are no warranties with regard to this information. Neither the
author nor the publisher accepts any liability for any direct, indirect,
or consequential loss or damage arising from use of, or reliance on,