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)
124 lines
4.6 KiB
Text
124 lines
4.6 KiB
Text
-----BEGIN PGP SIGNED MESSAGE-----
|
|
|
|
=============================================================================
|
|
FreeBSD-SA-01:65 Security Advisory
|
|
FreeBSD, Inc.
|
|
|
|
Topic: Buffer overflow in libgtop_server
|
|
|
|
Category: ports
|
|
Module: libgtop
|
|
Announced: 2001-12-11
|
|
Credits: Flavio Veloso <flaviovs@magnux.com>
|
|
Affects: Ports collection prior to the correction date
|
|
Corrected: 2001-11-29 15:06:19 UTC
|
|
FreeBSD only: NO
|
|
|
|
I. Background
|
|
|
|
libgtop is a library for gtop, the GNOME version of the top command.
|
|
The top command is a tool to display and update information about the
|
|
top cpu processes.
|
|
|
|
II. Problem Description
|
|
|
|
The libgtop port versions prior to libgtop-1.0.12_1 contain a stack
|
|
buffer overflow in libgtop_server, allowing an arbitrary amount of
|
|
data from the client application (assumed to be gtop) to be read
|
|
into a fixed-sized buffer. A local attacker can exploit this bug to
|
|
cause libgtop_server to execute arbitrary code. libgtop_server runs
|
|
with increased privileges as a member of group kmem, which allows
|
|
it to read kernel memory (but not write it). A process with the
|
|
ability to read from kernel memory can monitor privileged data such as
|
|
network traffic, disk buffers and terminal activity, and may be able
|
|
to leverage this to obtain further privileges on the local system or
|
|
on other systems, including root privileges.
|
|
|
|
The libgtop 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 6000 third-party applications in a ready-to-install
|
|
format. The ports collection shipped with FreeBSD 4.4 contains this
|
|
problem since it was discovered after the 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
|
|
|
|
A successful exploit of this stack buffer overflow would allow an
|
|
attacker arbitrary access to kernel memory, possibly acquiring
|
|
information allowing further increases in privileges.
|
|
|
|
No exploit is known to exist at this time, and it is not known
|
|
whether this buffer overflow is exploitable even in theory. In any
|
|
case, local access to the machine on which libgtop_server is running
|
|
is required to attempt an attack.
|
|
|
|
IV. Workaround
|
|
|
|
1) Deinstall the libgtop port/package if you have it installed.
|
|
|
|
OR
|
|
|
|
2) Remove the setgid bit from the libgtop_server executable by
|
|
executing the following command as root:
|
|
|
|
# chmod g-s `which libgtop_server`
|
|
|
|
V. Solution
|
|
|
|
1) Upgrade your entire ports collection and rebuild the 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/devel/libgtop-1.0.12_1.tar.gz
|
|
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/devel/libgtop-1.0.12_1.tar.gz
|
|
|
|
[alpha]
|
|
Packages are not automatically generated for the alpha architecture at
|
|
this time due to lack of build resources.
|
|
|
|
NOTE: It may be several days before updated packages are available. Be
|
|
sure to check the file creation date on the package, because the
|
|
version number of the software has not changed.
|
|
|
|
3) Download a new port skeleton for the libgtop 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
|
|
|
|
VI. Correction details
|
|
|
|
The following list contains the revision numbers of each file that was
|
|
corrected in the FreeBSD ports collection.
|
|
|
|
Path Revision
|
|
- -------------------------------------------------------------------------
|
|
ports/devel/libgtop/Makefile 1.45
|
|
ports/devel/libgtop/files/patch-src::daemon::gnuserv.c 1.1
|
|
- -------------------------------------------------------------------------
|
|
|
|
VII. References
|
|
|
|
<URL:http://www.securityfocus.com/archive/1/242922>
|
|
|
|
-----BEGIN PGP SIGNATURE-----
|
|
Comment: http://www.nectar.cc/pgp
|
|
|
|
iQCVAwUBPBY6xlUuHi5z0oilAQHwmQQAh3KtiIcKjmw5e9B2ABmdRYlwWFVEgN9F
|
|
QlUj8NqiDUaekQoLb5p923Y8VC0/9e/alRrnvd4kcmVmU8PUpXNaMp4cHz1mHnLQ
|
|
7w4QQ+qzmEOGJFOiUjE21FY8gPR3HH2rKiIOJyeHezRkUqhWMqlERJ08hnmtqjib
|
|
2TukQesxbzw=
|
|
=gyPX
|
|
-----END PGP SIGNATURE-----
|