NetBSD Security Advisory 2001-014 - Dump (/sbin/dump), which is setgid tty, does not drop its privileges correctly and can be used to execute commands with setgid tty privileges by using the RCMD_CMD environment variable. This vulnerability affects the NetBSD-1.4, 1.5, 1.5.1 and current branch.
529f55f5564a602c83f290e0f3090627ee3a03395e7520f50edb110c86697cf7
-----BEGIN PGP SIGNED MESSAGE-----
NetBSD Security Advisory 2001-014
=================================
Topic: dump(8) exposes 'tty' group
Version: NetBSD-current: source prior to August 8, 2001
NetBSD 1.5.1: affected
NetBSD 1.5: affected
NetBSD 1.4.x: all affected
Severity: local users can gain tty group
Fixed: NetBSD-current: August 8, 2001
NetBSD-1.5 branch: August 8, 2001 (1.5.2 includes the fix)
NetBSD-1.4 branch: Pullups pending - apply the patch as
explained below.
Abstract
========
The dump(8) command (installed as /sbin/dump) and the dump_lfs(8)
command (installed as /sbin/dump_lfs) are setgid tty. dump(8) and
dump_lfs(8) did not drop those setgid tty rights while performing
functions other than those the rights were provided for, including
execution of a user supplied RCMD_CMD environment variable.
Technical Details
=================
dump(8) and dump_lfs(8) require tty rights in order to notify
members of the operator group to change backup media. Since a user
can supply an executable as a method to access a remote dump device
by setting the RCMD_CMD environment variable, a local user can gain
tty privilieges for themselves.
With the supplied patch, dump(8) and dump_lfs(8) properly reserve
tty rights and activate them only for the intended use.
Solutions and Workarounds
=========================
The following instructions describe how to upgrade your dump(8)
and dump_lfs(8) binaries by updating your source tree and rebuilding
and installing a new version of dump(8) and dump_lfs(8).
* NetBSD-current:
Systems running NetBSD-current dated from before 2001-08-08
should be upgraded to NetBSD-current dated 2001-08-09 or later.
The following directories need to be updated from the
netbsd-current CVS branch (aka HEAD):
basesrc/sbin/dump
To update from CVS, re-build, and re-install dump and dump_lfs:
# cd src
# cvs update -d -P sbin/dump
# cd sbin/dump
# make cleandir dependall
# make install
# cd ../dump_lfs
# make cleandir dependall
# make install
* NetBSD 1.5, 1.5.1:
Systems running NetBSD 1.5 or 1.5.1 sources dated from
before 2001-08-08 should be upgraded from NetBSD 1.5.x
sources dated 2001-08-09 or later.
NetBSD 1.5.2 is not vulnerable.
The following directories need to be updated from the
netbsd-1-5 CVS branch:
src/sbin/dump
To update from CVS, re-build, and re-install dump and dump_lfs:
# cd src
# cvs update -d -P sbin/dump
# cd sbin/dump
# make cleandir dependall
# make install
# cd ../dump_lfs
# make cleandir dependall
# make install
Alternatively, apply the following patch (with potential offset
differences):
ftp://ftp.netbsd.org/pub/NetBSD/security/patches/SA2001-014-dump-1.5.patch
To patch, re-build and re-install dump and dump_lfs:
# cd src/sbin/dump
# patch < /path/to/SA2001-014-dump-1.5.patch
# make cleandir dependall
# make install
# cd ../dump_lfs
# make cleandir dependall
# make install
* NetBSD 1.4, 1.4.1, 1.4.2, 1.4.3:
The patch supplied for the 1.5 releases, also applies to
1.4, 1.4.1, 1.4.2, and 1.4.3.
Follow the instructions for using the patch as detailed in
the NetBSD 1.5 section above.
Thanks To
=========
canis for raising the issue.
Matthew Green for a patch, and David Maxwell for revisions to the patch.
John Hawkinson for the patches for the NetBSD 1.5 branch.
Revision History
================
2001-08-23 Initial release
More Information
================
An up-to-date PGP signed copy of this release will be maintained at
ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2001-014.txt.asc
Information about NetBSD and NetBSD security can be found at
https://www.NetBSD.ORG/ and https://www.NetBSD.ORG/Security/.
Copyright 2001, The NetBSD Foundation, Inc. All Rights Reserved.
$NetBSD: NetBSD-SA2001-014.txt,v 1.8 2001/08/23 05:59:07 lukem Exp $
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (NetBSD)
Comment: For info see https://www.gnupg.org
iQCVAwUBO4ScEj5Ru2/4N2IFAQFVBQP9EvzvQ5P+yryu0kY/5+FiedgN+u+PZpzG
MY6HXbVXkkkklnl2a8dS2t+Xzi1S5qF1C3g0c9yNDJ8x7Sy6TzuW8fxIBLg0PhIa
MTWAKwQ+DvwwnBmdJ2nI1L96RS9XWfmsYf8xM1HtxpmQk7TBzH6Vzw32oRXZ9cC/
lsptsklUZrI=
=1A2M
-----END PGP SIGNATURE-----