copyright | disclaimer | privacy | contact  
Australia's Leading Computer Emergency Response Team
 
Search this site

 
On this site

 > HOME
 > About AusCERT
 > Membership
 > Contact Us
 > PKI Services
 > Training
 > Publications
 > Sec. Bulletins
 > Conferences
 > News & Media
 > Services
 > Web Log
 > Site Map
 > Site Help
 > Member login





 

ESB-2010.0113.2 - UPDATE [NetBSD] NetBSD: Denial of service - Existing account

Date: 09 February 2010
Related Files: ESB-2010.0113  

Click here for printable version
Click here for PGP verifiable version
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

===========================================================================
             AUSCERT External Security Bulletin Redistribution

                              ESB-2010.0113.2
              azalia(4)/hdaudio(4) negative mixer index panic
                              9 February 2010

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

        AusCERT Security Bulletin Summary
        ---------------------------------

Product:           azalia(4)
                   hdaudio(4)
Publisher:         NetBSD
Operating System:  NetBSD
Impact/Access:     Denial of Service -- Existing Account
Resolution:        Patch/Upgrade
CVE Names:         CVE-2010-0561  

Original Bulletin: 
   http://ftp.NetBSD.org/pub/NetBSD/security/advisories/NetBSD-SA2010-003.txt.asc

Revision History:  February 9 2010: Added CVE reference
                   February 4 2010: Initial Release

- --------------------------BEGIN INCLUDED TEXT--------------------

- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


		 NetBSD Security Advisory 2010-003
		 =================================

Topic:		azalia(4)/hdaudio(4) negative mixer index panic


Version:	NetBSD-current:		affected prior to 2010-01-21
		NetBSD 5.0.*:		affected
		NetBSD 5.0:		affected
		NetBSD 4.0.*:		affected
		NetBSD 4.0:		affected


Severity:	Local system crash


Fixed:		NetBSD-current:		Jan 21, 2010
		NetBSD-5-0 branch:	Jan 22, 2010
		NetBSD-5 branch:	Jan 22, 2010
		NetBSD-4-0 branch:	Jan 22, 2010
		NetBSD-4 branch:	Jan 22, 2010

Please note that NetBSD releases prior to 4.0 are no longer supported.
It is recommended that all users upgrade to a supported release.



Abstract
========

A signedness issue in the azalia(4) and hdaudio(4) drivers allows a
local attacker to cause a kernel panic.


Technical Details
=================

The azalia_query_devinfo() function in azalia(4) and the
hdaudio_afg_set_port() function in hdaudio(4) incorrectly assume
the mixer index to be an unsigned integer, thus not checking for
negative values. Since the mixer index number is user specified,
any user with access to the mixer can cause an access to a negative
array index by specifying a negative mixer number, leading to a
kernel panic.

In order to exploit the vulnerability, the azalia(4) or hdaudio(4)
driver must be loaded and at least one azalia(4) or hdaudio(4)
device must be present in the machine and configured by the kernel


Solutions and Workarounds
=========================

As a possible workaround, the azalia(4) and hdaudio(4) drivers can
be disabled. This can be achieved either by specifying the
configuration parameter at boot and disabling the device:

	boot> boot -c
	config> disable azalia
	config> disable hdaudio
	config> boot

or by commenting out the relevant sections of your kernel configuration
file:

	#azalia*        at pci? dev ? function ?        # High Definition Audio
	#hdaudio*       at pci? dev ? function ?        # High Definition Audio

The following instructions describe how to upgrade your kernel
binaries by updating your source tree and rebuilding and
installing a new version of the kernel.

Only kernels compiled with either of the following options are
vulnerable to this issue:

	azalia*        at pci? dev ? function ?
	hdaudio*       at pci? dev ? function ?

As a temporary workaround recompile the kernel with the above option 
commented out.  The default NetBSD GENERIC kernels have the azalia
option enabled, while hdaudio is disabled.

For all NetBSD versions, you need to obtain fixed kernel sources,
build, install the new kernel, and reboot the system.
                                      
The fixed source may be obtained from the NetBSD CVS repository.        
The following instructions briefly summarise how to upgrade your        
kernel.  In these instructions, replace:

  ARCH     with your architecture (from uname -m), and                  
  KERNCONF with the name of your kernel configuration file.    

To update from CVS, build, and install the kernel:

	# cd src
	# cvs update -d -P sys/dev/pci/azalia.c
	# cvs update -d -P sys/dev/pci/hdaudio/hdaudio_afg.c	# Except on NetBSD 4.x
	# ./build.sh kernel=KERNCONF
	# mv /netbsd /netbsd.old
	# cp sys/arch/ARCH/compile/obj/KERNCONF/netbsd /netbsd 
	# shutdown -r now

For more information on how to do this, see:    

   http://www.NetBSD.org/guide/en/chap-kernel.html


Thanks To
=========

Pierre Pronchery for finding and reporting the vulnerability as well as
providing a patch.


Revision History
================

	2010-02-02	Initial release


More Information
================

Advisories may be updated as new information becomes available.
The most recent version of this advisory (PGP signed) can be found at 
  http://ftp.NetBSD.org/pub/NetBSD/security/advisories/NetBSD-SA2010-003.txt.asc

Information about NetBSD and NetBSD security can be found at
http://www.NetBSD.org/ and http://www.NetBSD.org/Security/ .

Copyright 2010, The NetBSD Foundation, Inc.  All Rights Reserved.
Redistribution permitted only in full, unmodified form.

$NetBSD: NetBSD-SA2010-003.txt,v 1.1 2010/02/02 19:18:36 tonnerre Exp $

- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (NetBSD)

iQIcBAEBAgAGBQJLaHsAAAoJEAZJc6xMSnBuC+UQAJ5krxXjvCO/nx9uZiSg3Mj1
6aFvOn7ssEdp4ToqxsGHPBEBeOSUl/oUwrcS7LugcwVcXnCRHCl/9CnTso6PdFR4
TFG/dZXoDhyU1Q9yhE+eYFHU2xqD/qOngySyrHZtRfrcyEr53WN00FVzfkKK4H2Z
A/UWGoAAp+BnWeIMMGiozzud5rnvchMN/Zsjwa0lCxy45lmS8lHK7vQm0jMaEKsV
GrwejFc9gCRD6JkOz3A1sfg2Bo91/pxXcU6PZgSGrYXzQQcnyJw9zjAAqbk1A3Y3
Nh6X39aluGnuZKit2+vMYchgIv3vq1lS5y0hKHzt3jGqmL3ny5YOpwStKAxVIbWB
6GYfBZ6o6E6y/CrkIeINCQtizvfU4UXb522Si9P0Vb0sXlz34hCvkWyo8ReStAKM
2MsJha2w5dSk1ru2qmPfaIfiAru8cRLSpvnjEOOQF1Bfxfoj48Ue7jf4bljdc/IQ
tg2v/OqA7mAG/sl0w3TAq6kzeGq6Y7Qm9eoOTFuPM4QVZOIr5a/rB0XYttkRw1RP
/3QKpahvnB/AbpavonxmF/YosR4BM5+Ufp+Y0FmmVyWgAWR/TM77Wri3EpJbjbhy
VWtVwNdjCMRlVvg2HUBHk4+k/6c3OmaxT8LYnph8r+EcdI8HotgQU5PZUJKPhmq0
pCwHOw0bwvrHhZQrzDVq
=QM1W
- -----END PGP SIGNATURE-----

- --------------------------END INCLUDED TEXT--------------------

You have received this e-mail bulletin as a result of your organisation's
registration with AusCERT. The mailing list you are subscribed to is
maintained within your organisation, so if you do not wish to continue
receiving these bulletins you should contact your local IT manager. If
you do not know who that is, please send an email to auscert@auscert.org.au
and we will forward your request to the appropriate person.

NOTE: Third Party Rights
This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content. The decision to follow or act on information or advice
contained in this security bulletin is the responsibility of each user or
organisation, and should be considered in accordance with your organisation's
site policies and procedures. AusCERT takes no responsibility for consequences
which may arise from following or acting on information or advice contained in
this security bulletin.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the author's website to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:

        http://www.auscert.org.au/render.html?cid=1980

If you believe that your computer system has been compromised or attacked in 
any way, we encourage you to let us know by completing the secure National IT 
Incident Reporting Form at:

        http://www.auscert.org.au/render.html?it=3192

===========================================================================
Australian Computer Emergency Response Team
The University of Queensland
Brisbane
Qld 4072

Internet Email: auscert@auscert.org.au
Facsimile:      (07) 3365 7031
Telephone:      (07) 3365 4417 (International: +61 7 3365 4417)
                AusCERT personnel answer during Queensland business hours
                which are GMT+10:00 (AEST).
                On call after hours for member emergencies only.
===========================================================================
-----BEGIN PGP SIGNATURE-----
Comment: http://www.auscert.org.au/render.html?it=1967

iD8DBQFLcOLM/iFOrG6YcBERAjlKAKDNCC5AH1PGal57GePfLa9jFiIsWwCfVS3C
tNA3NfcyLuAcNXYlTky2KSc=
=UdAx
-----END PGP SIGNATURE-----