TUCoPS :: BSD :: ciacg024.txt

FreeBSD Security Vulnerabilities


             __________________________________________________________

                       The U.S. Department of Energy
                    Computer Incident Advisory Capability
                           ___  __ __    _     ___
                          /       |     /_\   /
                          \___  __|__  /   \  \___
             __________________________________________________________

                             INFORMATION BULLETIN

                        FreeBSD Security Vulnerabilities

May 21, 1996 18:00 GMT                                             Number G-24
______________________________________________________________________________
PROBLEM:       Three vulnerabilities have been identified in the FreeBSD
               operating system: 1) vfsload Library, 2) Union File System 
               Code, and 3) Manual Page Reader. 
PLATFORM:      FreeBSD 2.0, 2.0.5, 2.1, 2.1-stable, and 2.2-current
DAMAGE:        The first vulnerability allows local users to gain unauthorized
               permissions. The second vulnerability allows local users to
               compromise system stability. The third vulnerability allows
               local users to gain access privileges of the "man" user.
SOLUTION:      Install the proper patches and/or use the workarounds provided
               below.
______________________________________________________________________________
VULNERABILITY  Knowledge of how to exploit these vulnerabilities are becoming
ASSESSMENT:    widely known.
______________________________________________________________________________

CIAC has obtained information from FreeBSD pertaining to three security 
vulnerabilities. The three vulnerabilities are identified in this bulletin
in the following matter: 1) vfsload Library, 2) Union File System Code, 
and 3) Manual Page Reader. The FreeBSD  urges you to act on this information 
as soon as possible. CIAC recommends that you install the proper patches 
and/or use the workarounds described below.

[ Start of FreeBSD Bulletins ]

1. vfsload Library Vulnerability

=============================================================================
FreeBSD-SA-96:09					    Security Advisory
						            FreeBSD, Inc.

Topic:		unauthorized access via mount_union / mount_msdos (vfsload)

Category:	core
Module:		libc
Announced:	1996-05-17
Affects:	FreeBSD 2.0, 2.0.5, 2.1, 2.1-stable, and 2.2-current
Corrected:	1996-05-17 2.1-stable and 2.2-current sources
Source:		FreeBSD native bug
FreeBSD only:	yes

Patches:	ftp://freebsd.org/pub/CERT/patches/SA-96:09/

=============================================================================

I.   Background    

     A bug was found in the vfsload(3) library call that affects all
     versions of FreeBSD from 2.0 through 2.2-CURRENT that caused a
     system vulnerability.  This problem is present in all source
     code and binary distributions of FreeBSD version 2.x released
     before 1996-05-18.

     The FreeBSD project is aware of active exploits of this
     vulnerability.

     All FreeBSD users are encouraged to use the workaround provided
     until they can update their operating system to a version with
     this vulnerability fixed.


II.  Problem Description

     The mount_union and mount_msdos programs invoke another system
     utility in an insecure fashion while setuid root.


III. Impact

     The problem could allow local users to gain unauthorized
     permissions.

     This vulnerability can only be exploited by users with a valid
     account on the local system.


IV. Solution(s)

     Update operating system sources and binaries to FreeBSD 2.1-stable
     or FreeBSD 2.2-current as distributed later than 1996-05-18 or
     if you are currently running 2.1 or later, you may apply the
     solution patches available at the URL listed at the top of this
     message.

     The OS updates fix the actual problem in the vfsload(3) library
     routine.  Once the vfsload() library routine is fixed, the
     workaround listed below is not necessary to solve this problem.
     However, an additional stability problem has come to light
     (ref. FreeBSD SA-96:10) so the FreeBSD project suggests
     using both the setuid workaround and the solution for best results.

V. Workaround

     This vulnerability can quickly and easily be limited by removing
     the setuid permission bit from the mount_union and mount_msdos
     program.  This workaround will work for all versions of FreeBSD
     affected by this problem.
     
     As root, execute the command:

	  % chmod u-s /sbin/mount_union /sbin/mount_msdos

     then verify that the setuid permissions of the files have been
     removed.  The permissions array should read "-r-xr-xr-x" as
     shown here:

	   % ls -l /sbin/mount_union /sbin/mount_msdos
	   -r-xr-xr-x  1 root  bin  151552 Apr 26 04:41 /sbin/mount_msdos
	   -r-xr-xr-x  1 root  bin   53248 Apr 26 04:40 /sbin/mount_union

     In addition to changing the permissions on the executable files,
     if you have the source code installed, we suggest patching the
     sources so that mount_union will not be installed with the
     setuid bit set:

*** /usr/src/sbin/mount_union/Makefile	Sun Nov 20 14:47:52 1994
- --- /usr/src/sbin/mount_union/Makefile	Fri May 17 10:36:09 1996
***************
*** 8,14 ****
  CFLAGS+= -I${.CURDIR}/../../sys -I${MOUNT}
  .PATH:	${MOUNT}
  
- - BINOWN= root
- - BINMODE=4555
- - 
  .include <bsd.prog.mk>
- --- 8,11 ----
*** /usr/src/sbin/i386/mount_msdos/Makefile	Sun Dec  4 00:01:24 1994
- --- /usr/src/sbin/i386/mount_msdos/Makefile	Fri May 17 11:31:57 1996
***************
*** 6,14 ****
  SRCS=	mount_msdos.c getmntopts.c
  MAN8=	mount_msdos.8
  
- - BINOWN=	root
- - BINMODE= 4555
- - 
  MOUNT=	${.CURDIR}/../../mount
  CFLAGS+= -I${MOUNT}
  .PATH:	${MOUNT}
- --- 6,11 ----

=============================================================================

2. Union File System Code Vulnerability

=============================================================================
FreeBSD-SA-96:10					    Security Advisory
						            FreeBSD, Inc.

Topic:		system stability compromise via mount_union program

Category:	core
Module:		unionfs
Announced:	1996-05-17
Affects:	FreeBSD 2.0, 2.0.5, 2.1, 2.1-stable, and 2.2-current
Corrected:	(workaround) 2.1-stable and 2.2-current as of 1996-05-17
Source:		4.4BSD (lite)
FreeBSD only:	no

Patches:	ftp://freebsd.org/pub/CERT/patches/SA-96:10/

=============================================================================

I.   Background    

     A bug was found in the union file system code which can allow
     an unprivileged local user to compromise system stability.
     This problem is present in all source code and binary
     distributions of FreeBSD version 2.x released before 1996-05-18.

     All FreeBSD users are encouraged to use the workaround provided
     until the FreeBSD Project distributes a full solution.


II.  Problem Description

     The union filesystem code had problems with certain mount ordering
     problems.  By executing a certain sequence of mount_union commands,
     an unprivileged local user may cause a system reload.

     NOTE: This is a different problem than the one discussed in
     FreeBSD SA-96:09.  The workaround for this vulnerability is
     similar to the one discussed in 96:09, but the proper solution
     for the unauthorized access problem in 96:09 does not address
     this vulnerability.


III. Impact

     The problem could allow local users to compromise system stability.

     This vulnerability can only be exploited by users with a valid
     account on the local system.


IV. Solution(s)

     The FreeBSD project is currently developing a solution to this
     problem,  however the proper solution will not be available until
     a future FreeBSD release.  We do not anticipate releasing patches
     for previous versions of FreeBSD due to the extensive nature of this
     fix.  This security advisory will be updated as new information is
     made available.

V. Workaround

     This vulnerability can quickly and easily be limited by removing
     the setuid permission bit from the mount_union program.  This
     workaround will work for all versions of FreeBSD affected by
     this problem.
     
     As root, execute the command:

	  % chmod u-s /sbin/mount_union

     then verify that the setuid permissions of the files have been
     removed.  The permissions array should read "-r-xr-xr-x" as
     shown here:

	   % ls -l /sbin/mount_union
	   -r-xr-xr-x  1 root  bin   53248 Apr 26 04:40 /sbin/mount_union

     In addition to changing the permissions on the executable files,
     if you have the source code installed, we suggest patching the
     sources so that mount_union will not be installed with the
     setuid bit set:

*** /usr/src/sbin/mount_union/Makefile	Sun Nov 20 14:47:52 1994
- --- /usr/src/sbin/mount_union/Makefile	Fri May 17 10:36:09 1996
***************
*** 8,14 ****
  CFLAGS+= -I${.CURDIR}/../../sys -I${MOUNT}
  .PATH:	${MOUNT}
  
- - BINOWN= root
- - BINMODE=4555
- - 
  .include <bsd.prog.mk>
- --- 8,11 ----

=============================================================================

3. Manual Page Reader Vulnerability

=============================================================================
FreeBSD-SA-96:11					    Security Advisory
Revised: Wed May 22 00:11:46 PDT 1996		        	FreeBSD, Inc.

Topic:		security compromise from man page utility

Category:	core
Module:		man
Announced:	1996-05-21
Affects:	FreeBSD 2.0, 2.0.5, 2.1, 2.1-stable, and 2.2-current
Corrected:	2.1-stable and 2.2-current as of 1996-05-21
FreeBSD only:	yes

Patches:	ftp://freebsd.org/pub/CERT/patches/SA-96:11/

=============================================================================

I.   Background    

     FreeBSD replaced the standard BSD manual page reader with
     code developed by a third party to support compressed manual
     pages.  A bug was found in the manual page reader which can
     allow an unprivileged local user to compromise system security
     in a limited fashion.  This problem is present in all source
     code and binary distributions of FreeBSD version 2.x released
     before 1996-05-21.


II.  Problem Description

     The man program is setuid to the "man" user.  By executing a
     particular sequence of commands, an unprivileged local user
     may gain the access privileges of the "man" user.  However,
     root access could be obtained with further work.


III. Impact

     The "man" user has no particular special privileges, it is
     the owner of the /usr/share/man/cat[0-9] directory hierarchy.
     Unformatted system manual pages are owned by the "bin" user.
     However, further exploits once "man" is obtained could
     possibly allow a local user to obtain unlimited access via
     a trojan horse.

     This vulnerability can only be exploited by users with a valid
     account on the local system.


IV. Workaround

     One may simply disable the setuid bit on the /usr/bin/man file.
     This will disable caching of formatted manual pages, no system
     functionality will be lost.  This workaround will suffice for
     all versions of FreeBSD affected by this problem.
     
     As root, execute the command:

	 # chmod u-s /usr/bin/man

     then verify that the setuid permissions of the files have been
     removed.  The permissions array should read "-r-xr-xr-x" as
     shown here:

	 # ls -l /usr/bin/man
	 -r-xr-xr-x  1 man  bin  28672 May 19 20:38 /usr/bin/man

     We also suggest applying the following patch to the source
     distribution so that the man program will not be installed
     setuid man should you rebuild from sources:

    *** /usr/src/gnu/usr.bin/man/man/Makefile	Sun Feb 25 13:39:52 1996
    --- /usr/src/gnu/usr.bin/man/man/Makefile	Wed May 22 00:13:05 1996
    ***************
    *** 1,7 ****
      PROG=	man
      SRCS=	man.c manpath.c glob.c
    - BINMODE=4555
    - BINOWN=	man
      
      .if exists(${.CURDIR}/../lib/obj)
      LDADD=  -L${.CURDIR}/../lib/obj -lman
    --- 1,5 ----

V. Solution

     The FreeBSD team is in the process of rewriting portions of
     the manual program to avoid this and similar vulnerabilities.
     This security advisory will be updated when a complete solution
     is available.


=============================================================================
FreeBSD, Inc.

Web Site:			http://www.freebsd.org/
Confidential contacts:		security-officer@freebsd.org
PGP Key:			ftp://freebsd.org/pub/CERT/public_key.asc
Security notifications:		security-notifications@freebsd.org
Security public discussion:	security@freebsd.org

Notice: Any patches in this document may not apply cleanly due to
        modifications caused by digital signature or mailer software.
        Please reference the URL listed at the top of this document
        for original copies of all patches if necessary.
=============================================================================

[ End of FreeBSD Bulletins ]
_______________________________________________________________________________

CIAC wishes to acknowledge the contributions of FreeBSD, Inc. for the
information contained in this bulletin.
_______________________________________________________________________________

CIAC, the Computer Incident Advisory Capability, is the computer
security incident response team for the U.S. Department of Energy
(DOE) and the emergency backup response team for the National
Institutes of Health (NIH). CIAC is located at the Lawrence Livermore
National Laboratory in Livermore, California. CIAC is also a founding
member of FIRST, the Forum of Incident Response and Security Teams, a
global organization established to foster cooperation and coordination
among computer security teams worldwide.

CIAC services are available to DOE, DOE contractors, and the NIH. CIAC
can be contacted at:
    Voice:    +1 510-422-8193
    FAX:      +1 510-423-8002
    STU-III:  +1 510-423-2604
    E-mail:   ciac@llnl.gov

For emergencies and off-hour assistance, DOE, DOE contractor sites,
and the NIH may contact CIAC 24-hours a day. During off hours (5PM -
8AM PST), call the CIAC voice number 510-422-8193 and leave a message,
or call 800-759-7243 (800-SKY-PAGE) to send a Sky Page. CIAC has two
Sky Page PIN numbers, the primary PIN number, 8550070, is for the CIAC
duty person, and the secondary PIN number, 8550074 is for the CIAC
Project Leader.

Previous CIAC notices, anti-virus software, and other information are
available from the CIAC Computer Security Archive.

   World Wide Web:      http://ciac.llnl.gov/
   Anonymous FTP:       ciac.llnl.gov (128.115.19.53)
   Modem access:        +1 (510) 423-4753 (28.8K baud)
                        +1 (510) 423-3331 (28.8K baud)

CIAC has several self-subscribing mailing lists for electronic
publications:
1. CIAC-BULLETIN for Advisories, highest priority - time critical
   information and Bulletins, important computer security information;
2. CIAC-NOTES for Notes, a collection of computer security articles;
3. SPI-ANNOUNCE for official news about Security Profile Inspector
   (SPI) software updates, new features, distribution and
   availability;
4. SPI-NOTES, for discussion of problems and solutions regarding the
   use of SPI products.

Our mailing lists are managed by a public domain software package
called ListProcessor, which ignores E-mail header subject lines. To
subscribe (add yourself) to one of our mailing lists, send the
following request as the E-mail message body, substituting
CIAC-BULLETIN, CIAC-NOTES, SPI-ANNOUNCE or SPI-NOTES for list-name and
valid information for LastName FirstName and PhoneNumber when sending

E-mail to       ciac-listproc@llnl.gov:
        subscribe list-name LastName, FirstName PhoneNumber
  e.g., subscribe ciac-notes OHara, Scarlett W. 404-555-1212 x36

You will receive an acknowledgment containing address, initial PIN,
and information on how to change either of them, cancel your
subscription, or get help.

PLEASE NOTE: Many users outside of the DOE, ESnet, and NIH computing
communities receive CIAC bulletins.  If you are not part of these
communities, please contact your agency's response team to report
incidents. Your agency's team will coordinate with CIAC. The Forum of
Incident Response and Security Teams (FIRST) is a world-wide
organization. A list of FIRST member organizations and their
constituencies can be obtained by sending email to
docserver@first.org with an empty subject line and a message body
containing the line: send first-contacts.

This document was prepared as an account of work sponsored by an
agency of the United States Government. Neither the United States
Government nor the University of California nor any of their
employees, makes any warranty, express or implied, or assumes any
legal liability or responsibility for the accuracy, completeness, or
usefulness of any information, apparatus, product, or process
disclosed, or represents that its use would not infringe privately
owned rights. Reference herein to any specific commercial products,
process, or service by trade name, trademark, manufacturer, or
otherwise, does not necessarily constitute or imply its endorsement,
recommendation or favoring by the United States Government or the
University of California. The views and opinions of authors expressed
herein do not necessarily state or reflect those of the United States
Government or the University of California, and shall not be used for
advertising or product endorsement purposes.

LAST 10 CIAC BULLETINS ISSUED (Previous bulletins available from CIAC)

G-14: Domain Name Service Vulnerabilites
G-15: Sunsoft Demo CD Vulnerability
G-16: SGI rpc.statd Program Security Vulnerabilities
G-17: Vulnerabilities in Sample HTTPD CGIs
G-18: Digital OSF/1 dxconsole Security Vulnerability
G-19: IBM AIX rmail Vulnerability
G-20: Vulnerability in NCSA and Apache httpd Servers
G-21: Vulnerabilities in PCNFSD Program
G-22: rpc.statd Vulnerability
G-23: Solaris NIS+ Configuration Vulnerability

RECENT CIAC NOTES ISSUED (Previous Notes available from CIAC)

Notes 07 - 3/29/95     A comprehensive review of SATAN

Notes 08 - 4/4/95      A Courtney update

Notes 09 - 4/24/95     More on the "Good Times" virus urban legend

Notes 10 - 6/16/95     PKZ300B Trojan, Logdaemon/FreeBSD, vulnerability
                       in S/Key, EBOLA Virus Hoax, and Caibua Virus

Notes 11 - 7/31/95     Virus Update, Hats Off to Administrators,
                       America On-Line Virus Scare, SPI 3.2.2 Released,
                       The Die_Hard Virus

Notes 12 - 9/12/95     Securely configuring Public Telnet Services, X
                       Windows, beta release of Merlin, Microsoft Word
                       Macro Viruses, Allegations of Inappropriate Data
                       Collection in Win95

Notes 96-01 - 3/18/96  Java and JavaScript Vulnerabilities, FIRST
                       Conference Announcement, Security and Web Search
                       Engines, Microsoft Word Macro Virus Update

TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2024 AOH