Cade Cairns of Securityfocus discovered a vulnerability in the sendmail program, the widely spread MTA used in Unix- and Unix-like systems. A local user can write arbitrary data to the process memory, resulting in user-controlled code to be executed as user root. Please note that this is a _local_ vulnerability: Local shell access is needed for the attacker to be able to take advantage of this error. The /usr/sbin/sendmail program is installed set-uid root in most installations. This special privilege is needed for the sendmail program to operate properly. The attack pattern involves running sendmail to make use of the setuid-bit. Please note that this is the first sendmail security problem since 1997.
|
|
-----BEGIN PGP SIGNED MESSAGE-----
______________________________________________________________________________
SuSE Security Announcement
Package: sendmail
Announcement-ID: SuSE-SA:2001:028
Date: Thursday, Aug 23rd 2001 18:10 MEST
Affected SuSE versions: 7.0, 7.1, 7.2
Vulnerability Type: local root compromise
Severity (1-10): 5
SuSE default package: yes
Other affected systems: systems using the sendmail package
Content of this advisory:
1) security vulnerability resolved: sendmail
problem description, discussion, solution and upgrade information
2) pending vulnerabilities, solutions, workarounds
3) standard appendix (further information)
______________________________________________________________________________
1) problem description, brief discussion, solution, upgrade information
Cade Cairns of Securityfocus discovered a vulnerability in the sendmail
program, the widely spread MTA used in Unix- and Unix-like systems.
A local user can write arbitrary data to the process memory, resulting
in user-controlled code to be executed as user root.
Please note that this is a _local_ vulnerability: Local shell access
is needed for the attacker to be able to take advantage of this error.
The /usr/sbin/sendmail program is installed set-uid root in most
installations. This special privilege is needed for the sendmail program
to operate properly. The attack pattern involves running sendmail to
make use of the setuid-bit.
Please note that this is the first sendmail security problem since 1997.
In this case, the vulnerability can be classified as a commandline
processing bug while running with extended (root) privilege.
The error itself is a result of a comparison between a signed and an
unsigned integer when checking user-supplied data from the sendmail
command line: A high unsigned value is being considered a negative
signed value. A subsequent comparison is being evaluated the wrong way.
These errors are expected to make up a new class of vulnerabilities for
programs written in C in the near future.
The supported SuSE Linux distributions 6.3 and 6.4 use a sendmail of
version 8.9.3. According to Sendmail Inc., this version is not
affected by this signedness bug.
The SuSE Linux distributions 7.0, 7.1 and 7.2 use sendmail version
8.11.x. All 7.x distributions are affected by the problem.
SuSE provides update packages for the affected distributions. Please
download the update package for your distribution and use the command
'rpm -Uhv file.rpm' to apply the update.
It is recommended to stop the running sendmail process(es) before
applying the update. Use the command 'rcsendmail stop' to do this,
and 'rcsendmail start' to restart the service after the update has
been applied. Since the update packages only fix the security problem
from this announcement, no reconfiguration should be necessary.
SPECIAL INSTALL INSTRUCTIONS:
The sendmail package needs one out of two commands to be executed after
package installation. Use the commands
SuSEconfig
or, alternatively (if you have disabled SuSEconfig in /etc/rc.config),
chkstat -set /etc/permissions.d/sendmail
to set the permissions of the sendmail package files correctly. Without
these permission changes, the /usr/sbin/sendmail program will not operate
properly. (Side note: All of the commands above have to be run as root!)
i386 Intel Platform:
SuSE-7.2
ftp://ftp.suse.com/pub/suse/i386/update/7.2/n1/sendmail-8.11.3-68.i386.rpm
edffc3231b74858c218e540ffb37740a
SuSE-7.2
ftp://ftp.suse.com/pub/suse/i386/update/7.2/sec2/sendmail-tls-8.11.3-72.i386.rpm
6a99faaaf394ab7b6dd22d9d81fb221b
source rpm:
ftp://ftp.suse.com/pub/suse/i386/update/7.2/zq1/sendmail-8.11.3-68.src.rpm
e914fef1f5fb1c65bb7b52383f9832db
SuSE-7.1
ftp://ftp.suse.com/pub/suse/i386/update/7.1/n1/sendmail-8.11.2-34.i386.rpm
6cf817fe71a07fc58d4b201df01291b5
SuSE-7.1
ftp://ftp.suse.com/pub/suse/i386/update/7.1/sec2/sendmail-tls-8.11.2-29.i386.rpm
d96f3e373f7c628d5792a2567e02e4c3
source rpm:
ftp://ftp.suse.com/pub/suse/i386/update/7.1/zq1/sendmail-8.11.2-34.src.rpm
35c53244eafc645d4d9218d95c4f6d71
SuSE-7.0
ftp://ftp.suse.com/pub/suse/i386/update/7.0/n1/sendmail-8.11.0-5.i386.rpm
29250e9986dfd22c7bdf637ac5dcc646
source rpm:
ftp://ftp.suse.com/pub/suse/i386/update/7.0/zq1/sendmail-8.11.0-5.src.rpm
13153a10c4223450119d2bd57178b8d4
Sparc Platform:
SuSE-7.1
ftp://ftp.suse.com/pub/suse/sparc/update/7.1/n1/sendmail-8.11.2-17.sparc.rpm
08b83155a16e86bf0b41596b66115443
SuSE-7.1
ftp://ftp.suse.com/pub/suse/sparc/update/7.1/sec2/sendmail-tls-8.11.2-16.sparc.rpm
3d0b567682df307f13e552b4f85b798b
source rpm:
ftp://ftp.suse.com/pub/suse/sparc/update/7.1/zq1/sendmail-8.11.2-17.src.rpm
a67beda92d8cbae62e8d69b263970108
SuSE-7.0
ftp://ftp.suse.com/pub/suse/sparc/update/7.0/n1/sendmail-8.11.0-3.sparc.rpm
17c9c5ce0814ee9821d7646d7ea399de
source rpm:
ftp://ftp.suse.com/pub/suse/sparc/update/7.0/zq1/sendmail-8.11.0-3.src.rpm
d737219fb680f990d52faff49d53a48f
AXP Alpha Platform:
SuSE-7.1
ftp://ftp.suse.com/pub/suse/axp/update/7.1/n1/sendmail-8.11.2-19.alpha.rpm
6b7729f0c2b5dde8abb55102310bc039
SuSE-7.1
ftp://ftp.suse.com/pub/suse/axp/update/7.1/sec2/sendmail-tls-8.11.2-21.alpha.rpm
c49dd3298689e2247a5228dfb3022949
source rpm:
ftp://ftp.suse.com/pub/suse/axp/update/7.1/zq1/sendmail-8.11.2-19.src.rpm
bfa6c0c95baa236cebcf501e4efdb0e9
PPC Power PC Platform:
SuSE-7.1
ftp://ftp.suse.com/pub/suse/ppc/update/7.1/n1/sendmail-8.11.2-23.ppc.rpm
1ad2a5891a03cffd33baab76d0aed4f9
SuSE-7.1
ftp://ftp.suse.com/pub/suse/ppc/update/7.1/sec2/sendmail-tls-8.11.2-21.ppc.rpm
b1181efdc649f005bc4a2b3fce08d164
source rpm:
ftp://ftp.suse.com/pub/suse/ppc/update/7.1/zq1/sendmail-8.11.2-23.src.rpm
4caafc40ff5332dab46cc60e3f2a85fb
SuSE-7.0
ftp://ftp.suse.com/pub/suse/ppc/update/7.0/n1/sendmail-8.11.0-33.ppc.rpm
27d5ac4d6d809a1ae88cf6a3fefe1d64
source rpm:
ftp://ftp.suse.com/pub/suse/ppc/update/7.0/zq1/sendmail-8.11.0-33.src.rpm
f6600b2aac4d3f8356494a3d047c72f9
______________________________________________________________________________
2) Pending vulnerabilities in SuSE Distributions, Workarounds and misc:
- ftp server
Our ftp server http://ftp.suse.com has been reorganized. The changes in
particular are:
* The discontinued distributions (SuSE Linux before (and including) 6.2)
have moved to an own tree: /pub/suse/discontinued/<arch>.
The tree there is built exactly like the tree for the currently
supported distributions (6.3 and up).
This change has been made to keep users from automatically applying
updates against old problems that have been superceded by newer updates
which are not available for the discontinued distributions.
* The /pub/suse/<arch>/{KDE,KDE2,GNOME,X} directories have been moved
to an own tree: /pub/suse/<arch>/supplementary/. The KDE directory
has become famous in the KDE scene because it contains the latest
KDE packages compiled for a SuSE distribution.
This has been done to point out that the packages in this directory
have been built for the respective distribution, they are tested ok,
but since these packages have never been part of the distribution
they are built for, there is no support for them; the packages are
provided as-is.
* During the next days, all packages under the /pub/suse/<arch>/update/
tree will be gpg-signed with the build@suse.de DSA key (see section 3
of this announcement).
Currently, most of the formerly existing directories that have been moved
are now still visible through a symlink, pointing at a directory with
a README.
The directory paths to the update packages for the supported distributions
have _not_ changed.
We kindly request mirror admins to adopt the changes to their trees.
If you run a publically accessible mirror of http://ftp.suse.com, you are
invited to send a mail to ftpadmin@suse.com so that you are being
notified of such changes in advance.
- in.telnetd
A buffer overflow vulnerability has been found in the in.telnetd telned
daemon, a service that is enabled by default in all SuSE Linux
distributions. The vulnerability may allow a remote attacker to gain root
access to your system. Many unix- and unix-like operating systems are
affected by this or a similar problem.
There are update packages for the SuSE Linux distributions 7.1 and 7.2
on our ftp server. The packages for the 7.1 distribution are called
"nkitserv", for the 7.2 distributions, the name is telnet-server.
For completeness, we also provide the other packages that are made from
the same source rpm. Since these packages do not fix a security problem,
there is no reason to list them here.
We are working on a suitable solution for the 7.0 and 6.x distributions,
while it has turned out that a fix for these distributions is non-trivial
because a different code base has been used for these packages.
telnet is an unencrypted protocol that offers many attack possibilities.
If at all possible, please deactivate your telnetd by commenting it out
in /etc/inetd.conf (killall -HUP inetd afterwards to make inetd reload
its configuration file!). We recommend to use one of the two ssh
implementations on our distributions as a substitute of the telnet
protocol. Clients are available on the internet for most platforms and
operating systems.
An announcement will be released soon that addresses the problem in
in.telnetd.
- Yesterday (Wednesday, 20010822) Bob Vickers (Dept of Computer Science,
University of London) reported a locally exploitable security hole in
the script /etc/init.d/boot. The critical function of the script is
supposed to remove files from the defined temporary directories of the
system as specified in /etc/rc.config (TMP_DIRS_TO_CLEAR in
/etc/rc.config) if $CLEAR_TMP_DIRS_AT_BOOTUP (also from /etc/rc.config)
is set to "yes". Unfortunately, the script does not take into account
that directories can contain newlines and other non-standard characters.
By consequence, the script can be tricked to removing files elsewhere.
This bug is present in the SuSE Linux 7.2 version only, available for the
Intel i386 platform. The feature responsible for this bug is disabled
by default in a SuSE Linux 7.2 installation and must be manually
activated for the bug to impose any risk.
We have fixed the problem in an update package that is available at
ftp://ftp.suse.com/pub/suse/i386/update/7.2/a1/aaa_base-2001.8.23-0.i386.rpm
Please download and install the update package using the command
rpm -Uhv aaa_base-2001.8.23-0.i386.rpm
Disregard the messages on standard output if you have the gpg package
installed: The postinstall script adds the DSA key build@suse.de
to root's gpg public keyring if this hasn't been done already. This
key is also listed below.
A source rpm is also available at the usual location.
We will not issue a dedicated security announcement for this problem.
We thank Bob Vickers for reporting the problem to security@suse.de.
- openssl
A weakness was found in the PRNG (Pseudo Random Number Generator) of
the openssl package. As far as we could determine, the bug has no
effect on the packages that are compiled against a library from the
openssl package. We will however provide update packages that fix
the found problems. Since openssl packages are not (backwards-)
compatible to any other newer version, we have to fix the package for
each distribution seperately. This takes some time. A special announce-
ment will be issued as soon as all packages are available.
- more announcements are in our queue. Please keep watching activity on
the suse-security-announce@suse.com mailinglist (more information below).
______________________________________________________________________________
3) 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 <name-of-the-file.rpm>
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 disrecommend to subscribe to security lists which cause the
email 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 <file.rpm>
to verify the signature of the package, where <file.rpm> is the
filename 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 toplevel 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-subscribe@suse.com>.
suse-security-announce@suse.com
- SuSE's announce-only mailing list.
Only SuSE's security annoucements are sent to this list.
To subscribe, send an email to
<suse-security-announce-subscribe@suse.com>.
For general information or the frequently asked questions (faq)
send mail to:
<suse-security-info@suse.com> or
<suse-security-faq@suse.com> respectively.
===================================================
SuSE's security contact is <security@suse.com>.
The <security@suse.com> 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 cleartext signature shows proof of the
authenticity of the text.
SuSE GmbH makes no warranties of any kind whatsoever with respect
to the information contained in this security advisory.
Type Bits/KeyID Date User ID
pub 2048R/3D25D3D9 1999-03-06 SuSE Security Team <security@suse.de>
pub 1024D/9C800ACA 2000-10-19 SuSE Package Signing Key <build@suse.de>
- -----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
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
=rVRn
- -----END PGP PUBLIC KEY BLOCK-----
-----BEGIN PGP SIGNATURE-----
Version: 2.6.3i
Charset: noconv
iQEVAwUBO4UweHey5gA9JdPZAQFOCggAkb73lBI9/BOSbTjW+UBinTEEOGAtyATF
1aQVbrr2C4GnFX2KjDmUloXRDCVQM6n43Vg3M4l9DREh8L2rH2krMkcmDj7AFcIG
lGgZ2QN4+lp/SKX0tm9I686JBbapkNThRoygRlB8kOARvGBwCCvUuPLHV4IWAORH
Ik8or3bzS7ZgwZdjxz9srcvx4Ls3j5KbRVekTDrt390VLJNt4GBrui1u22DQROGs
7mF8C3KjmzwPsrTKGoe/dqh85MJnmjoif8jnAi08rfa6TsLD8PKgTBppRPXtrhQk
LWNOH7cE5iijl73zdyvkb3i/3mMUsZgNuot+5wTXUurlpM9qE3Gk4g==
=/4Er
-----END PGP SIGNATURE-----
--
To unsubscribe, e-mail: suse-security-announce-unsubscribe@suse.com
For additional commands, e-mail: suse-security-announce-help@suse.com |