Get the LinuxSecurity news you want faster with RSS
Powered By
SuSE: mailman remote file disclosure
Posted by Benjamin D. Thomas
Due to incomplete input validation the "private" CGI script which
handles archive retrieval could be used to read any file on the
system, including the configuration database of the mailman lists
which include passwords in plain text. A remote attacker just needs
a valid account on one mailing list managed by this mailman instance.
______________________________________________________________________________
SUSE Security Announcement
Package: mailman
Announcement-ID: SUSE-SA:2005:007
Date: Monday, Feb 14th 2005 10:30 MET
Affected products: 8.2, 9.0, 9.1, 9.2
SUSE Linux Enterprise Server 8, 9
Vulnerability Type: remote file disclosure
Severity (1-10): 5
SUSE default package: yes
Cross References: CAN-2005-0202
CAN-2004-1143
CAN-2004-1177
Content of this advisory:
1) security vulnerability resolved:
- remote file disclosure by directory traversal
- cross site scripting
- requires additional package python-xml
2) solution/workaround
3) special instructions and notes
4) package location and checksums
5) pending vulnerabilities, solutions, workarounds:
6) standard appendix (further information)
______________________________________________________________________________
1) problem description, brief discussion
Mailman is a flexible mailing list management tool. It provides
mail controlled subscription front ends and also includes CGI scripts
to handle subscription, moderation and archive retrieval and other
options.
Due to incomplete input validation the "private" CGI script which
handles archive retrieval could be used to read any file on the
system, including the configuration database of the mailman lists
which include passwords in plain text. A remote attacker just needs
a valid account on one mailing list managed by this mailman instance.
This update fixes this problem and is tracked under the Mitre CVE
ID CAN-2005-0202.
Please see section (3), "special instructions and notes".
Our previous mailman update (only announced in the SUSE Summary Report)
additionally fixed the following two security problems:
- a cross site scripting problem (CAN-2004-1177)
- too weak auto generated passwords (CAN-2004-1143)
This previous security fix requires the additional "python-xml" RPM
which was not required before.
2) solution/workaround
Temporary workarounds:
- Disable execution of the CGI scripts of mailman by either moving
the scripts away, or disabling it in the web servers configuration.
- Edit the true_path function in the Mailman/Cgi/private.py script to
contain:
SLASH = '/'
def true_path(path):
"Ensure that the path is safe by removing .."
parts = [x for x in path.split(SLASH) if x not in ('.', '..')]
return SLASH.join(parts)[1:]
3) special instructions and notes
After installing the upgraded packages, please make sure that
your mailing list config databases have not been retrieved by
attackers.
You can do so by checking for patterns like ".....///" in your
web servers access logs.
If this is the case:
- Reset all user passwords.
The last security update includes a new "change_member_pw"
script which can do that easily.
- Change the mailing list admin password.
- Optionally: Look for members which should not be in the list
4) package location and checksums
Download the update package for your distribution and verify its
integrity by the methods listed in section 3) of this announcement.
Then, install the package using the command "rpm -Fhv file.rpm" to apply
the update.
Our maintenance customers are being notified individually. The packages
are being offered for installation from the maintenance web.
x86 Platform:
SUSE Linux 9.2:
ftp://ftp.suse.com/pub/suse/i386/update/9.2/rpm/i586/mailman-2.1.5-5.6.i586.rpm
714996a830908538e30e6109faf58d23
patch rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.2/rpm/i586/mailman-2.1.5-5.6.i586.patch.rpm
0f11a3a3c2631c94eef59ef1842e7db9
source rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.2/rpm/src/mailman-2.1.5-5.6.src.rpm
df7d92ece2ea37cfb628b258be127b44
SUSE Linux 9.1:
ftp://ftp.suse.com/pub/suse/i386/update/9.1/rpm/i586/mailman-2.1.4-83.13.i586.rpm
9ee909db5738e5a9d2cbe8642b36df2e
patch rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.1/rpm/i586/mailman-2.1.4-83.13.i586.patch.rpm
e549d97d81eea96155d2de124c8f2be7
source rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.1/rpm/src/mailman-2.1.4-83.13.src.rpm
33964c2c5fe71a65a04e62f12b295775
SUSE Linux 9.0:
ftp://ftp.suse.com/pub/suse/i386/update/9.0/rpm/i586/mailman-2.1.2-93.i586.rpm
41b55c17abb0021bd9da56c5684ec0ad
patch rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.0/rpm/i586/mailman-2.1.2-93.i586.patch.rpm
fc20d3fdfc0463c02809bce81ba46a8c
source rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/9.0/rpm/src/mailman-2.1.2-93.src.rpm
3c6b3c25093c3ccf8d385a7b1e86fdb6
SUSE Linux 8.2:
ftp://ftp.suse.com/pub/suse/i386/update/8.2/rpm/i586/mailman-2.1.1-110.i586.rpm
b5ee2af05bc7037e6d3e66988b9789b9
patch rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/8.2/rpm/i586/mailman-2.1.1-110.i586.patch.rpm
c198e0a9bfb3c7bc828b1f6173834407
source rpm(s):
ftp://ftp.suse.com/pub/suse/i386/update/8.2/rpm/src/mailman-2.1.1-110.src.rpm
e42568b562cccb8d572b5782a3fa2f09
x86-64 Platform:
SUSE Linux 9.2:
ftp://ftp.suse.com/pub/suse/x86_64/update/9.2/rpm/x86_64/mailman-2.1.5-5.6.x86_64.rpm
ab82f4faac15b4b0cf635937b1cc2ab5
patch rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.2/rpm/x86_64/mailman-2.1.5-5.6.x86_64.patch.rpm
074305e1baa53bfe6959293100dc8682
source rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.2/rpm/src/mailman-2.1.5-5.6.src.rpm
df7d92ece2ea37cfb628b258be127b44
SUSE Linux 9.1:
ftp://ftp.suse.com/pub/suse/x86_64/update/9.1/rpm/x86_64/mailman-2.1.4-83.13.x86_64.rpm
ab93f0276b9cc701224eb16c2404a7e9
patch rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.1/rpm/x86_64/mailman-2.1.4-83.13.x86_64.patch.rpm
8dd9e3317ef89e3e2e8a184c02aacfbc
source rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.1/rpm/src/mailman-2.1.4-83.13.src.rpm
62e6d965c15d9795ddcda560a6f2264f
SUSE Linux 9.0:
ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/x86_64/mailman-2.1.2-93.x86_64.rpm
594f24a7c84defef412b517a4994ee88
patch rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/x86_64/mailman-2.1.2-93.x86_64.patch.rpm
187da073862f34b011bda55894e9b74d
source rpm(s):
ftp://ftp.suse.com/pub/suse/x86_64/update/9.0/rpm/src/mailman-2.1.2-93.src.rpm
0672d542ab787352b9d10b71394ffcfe
______________________________________________________________________________
5) Pending vulnerabilities in SUSE Distributions and Workarounds:
See the SUSE Security Summary report.
______________________________________________________________________________
6) standard appendix: authenticity verification, additional information
- Package authenticity verification:
SUSE update packages are available on many mirror ftp servers all over
the world. While this service is being considered valuable and important
to the free and open source software community, many users wish to be
sure about the origin of the package and its content before installing
the package. There are two verification methods that can be used
independently from each other to prove the authenticity of a downloaded
file or rpm package:
1) md5sums as provided in the (cryptographically signed) announcement.
2) using the internal gpg signatures of the rpm package.
1) execute the command
md5sum
after you downloaded the file from a SUSE ftp server or its mirrors.
Then, compare the resulting md5sum with the one that is listed in the
announcement. Since the announcement containing the checksums is
cryptographically signed (usually using the key security@suse.de),
the checksums show proof of the authenticity of the package.
We recommend against subscribing to security lists that cause the
e-mail message containing the announcement to be modified
so that the signature does not match after transport through the mailing
list software.
Downsides: You must be able to verify the authenticity of the
announcement in the first place. If RPM packages are being rebuilt
and a new version of a package is published on the ftp server, all
md5 sums for the files are useless.
2) rpm package signatures provide an easy way to verify the authenticity
of an rpm package. Use the command
rpm -v --checksig
to verify the signature of the package, where is the
file name of the rpm package that you have downloaded. Of course,
package authenticity verification can only target an uninstalled rpm
package file.
Prerequisites:
a) gpg is installed
b) The package is signed using a certain key. The public part of this
key must be installed by the gpg program in the directory
~/.gnupg/ under the user's home directory who performs the
signature verification (usually root). You can import the key
that is used by SUSE in rpm packages for SUSE Linux by saving
this announcement to a file ("announcement.txt") and
running the command (do "su -" to be root):
gpg --batch; gpg < announcement.txt | gpg --import
SUSE Linux distributions version 7.1 and thereafter install the
key "build@suse.de" upon installation or upgrade, provided that
the package gpg is installed. The file containing the public key
is placed at the top-level directory of the first CD (pubring.gpg)
and at ftp://ftp.suse.com/pub/suse/pubring.gpg-build.suse.de .
- SUSE runs two security mailing lists to which any interested party may
subscribe:
suse-security@suse.com
- general/linux/SUSE security discussion.
All SUSE security announcements are sent to this list.
To subscribe, send an email to
.
suse-security-announce@suse.com
- SUSE's announce-only mailing list.
Only SUSE's security announcements are sent to this list.
To subscribe, send an email to
.
For general information or the frequently asked questions (FAQ)
send mail to:
or
respectively.
=====================================================================
SUSE's security contact is or .
The public key is listed below.
=====================================================================
______________________________________________________________________________
The information in this advisory may be distributed or reproduced,
provided that the advisory is not modified in any way. In particular,
it is desired that the clear-text signature shows proof of the
authenticity of the text.
SUSE Linux AG makes no warranties of any kind whatsoever with respect
to the information contained in this security advisory.