-----BEGIN PGP SIGNED MESSAGE-----
=============================================================================
FreeBSD-SA-00:26 Security Advisory
FreeBSD, Inc.
Topic: popper port contains remote vulnerability [REVISED]
Category: ports
Module: popper
Announced: 2000-07-05
Revised: 2000-07-11
Credits: Prizm
Affects: Ports collection.
Corrected: 2000-05-25
Vendor status: Notified
FreeBSD only: NO
I. Background
QPopper is a popular POP3 mail server.
II. Problem Description
The qpopper port, version 2.53 and earlier, incorrectly parses string
formatting operators included in part of the email message header. A
remote attacker can send a malicious email message to a local user
which can cause arbitrary code to be executed on the server when a POP
client retrieves the message using the UIDL command. The code is
executed as the user who is retrieving mail: thus if root reads email
via POP3 this can lead to a root compromise. This vulnerability is
not present in qpopper-3.0.2, also available in FreeBSD ports.
The qpopper 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 3500 third-party applications in a ready-to-install
format. The ports collection shipped with FreeBSD 4.0 contains this
problem since it was discovered after the release, but it was fixed in
time for FreeBSD 3.5.
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 can cause arbitrary code to be executed as the retrieving
user when a POP client retrieves email.
If you have not chosen to install the qpopper-2.53 port/package, then
your system is not vulnerable to this problem.
IV. Workaround
Deinstall the qpopper-2.53 port/package, if you you have installed it.
V. Solution
One of the following:
1) Upgrade your entire ports collection and rebuild the qpopper port,
or upgrade to qpopper-3.0.2 available in /usr/ports/mail/popper3.
2) Deinstall the old package and install a new package dated after the
correction date, obtained from:
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/mail/qpopper-2.53.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/mail/qpopper-2.53.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/mail/qpopper-2.53.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/mail/qpopper-2.53.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/mail/qpopper-2.53.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/mail/qpopper3-3.0.2.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/mail/qpopper3-3.0.2.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/mail/qpopper3-3.0.2.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/mail/qpopper3-3.0.2.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/mail/qpopper3-3.0.2.tgz
3) download a new port skeleton for the qpopper 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/packages/devel/portcheckout-1.0.tgz
VI. Revision History
v1.0 2000-07-05 Initial release
v1.1 2000-07-11 Correct URL of qpopper-2.53 package and note availability of
qpopper3-3.0.2. Update size of ports collection.
-----BEGIN PGP SIGNATURE-----
Version: 2.6.2
iQCVAwUBOWuXjlUuHi5z0oilAQGviQP/TQqQXqwU0TBkJbvdtuLLXZdcjywbX39p
O5EgHOjsHxnLkfOCYXJ+wQ+2s88OZouFhsR4OcTJDC8UobgVlKicOOEShov6IkrN
rwJfkc7fgxuLVOW8Y3ef3gixqhCkCsgMI5NlvKt88YThr1y0Z8GnK5u9gxz1YUKA
M9iveHnUsSU=
=5bHQ
-----END PGP SIGNATURE-----