Date: Sat, 19 Feb 2000 22:49:17 -0800
From: Kris Kennaway kris@FREEBSD.ORG
To: BUGTRAQ@SECURITYFOCUS.COM
Subject: FreeBSD Security Advisory: FreeBSD-SA-00:03.asmon
FreeBSD-SA-00:03 Security Advisory
FreeBSD, Inc.
Topic: Asmon/Ascpu ports fail to drop privileges
Category: ports
Module: asmon/ascpu
Announced: 2000-02-19
Affects: Ports collection before the correction date.
Corrected: 2000-01-29
FreeBSD only: yes
I. Background
Two optional third-party ports distributed with FreeBSD can be
used to execute commands with elevated privileges, specifically
setgid kmem privileges. This may lead to a local root
compromise.
II. Problem Description
Asmon and ascpu allow users to execute arbitrary commands as
part of a user configuration file. Both applications are
Linux-centric as distributed by the vendor and require patching to
run under FreeBSD (specifically, using the kvm interface and setgid
kmem privileges to obtain system statistics); this patching was the
source of the present security problem. This is a similar flaw to
one found in the wmmon port, which was corrected on 1999/12/31.
Note that neither utility is installed by default, nor are they
“part of FreeBSD” as such: they are part of the FreeBSD ports
collection, which contains over 3100 third-party applications in a
ready-to-install format.
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
If you have not chosen to install the asmon or ascpu
ports/packages, then your system is not vulnerable. If you have,
then local users can obtain setgid kmem rights, which allows them
to manipulate kernel memory, and thereby compromise root.
IV. Workaround
Remove the asmon and ascpu ports/packages, if you have installed
them.
V. Solution
One of the following:
1) Upgrade your entire ports collection and rebuild the asmon
and/or ascpu ports.
2) Reinstall a new package obtained from:
ftp://ftp.freebsd.org/pub/FreeBSD/ports/packages/sysutils/asmon-0.60.tgz
ftp://ftp.freebsd.org/pub/FreeBSD/ports/packages/sysutils/ascpu-1.8.tgz
after the correction date. At the time of advisory release, the
asmon
package was not available – you may need to use one of the other
methods to update the software.
3) download a new port skeleton for the asmon and/or ascpu ports
from:
and use it to rebuild one or both ports.
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-2.0.tgz