153 lines
5.8 KiB
Text
153 lines
5.8 KiB
Text
-----BEGIN PGP SIGNED MESSAGE-----
|
|
Hash: SHA1
|
|
|
|
=============================================================================
|
|
FreeBSD-SA-14:22.namei Security Advisory
|
|
The FreeBSD Project
|
|
|
|
Topic: memory leak in sandboxed namei lookup
|
|
|
|
Category: core
|
|
Module: kernel
|
|
Announced: 2014-10-21
|
|
Credits: Mateusz Guzik
|
|
Affects: FreeBSD 9.1 and later.
|
|
Corrected: 2014-10-21 20:20:07 UTC (stable/10, 10.1-PRERELEASE)
|
|
2014-10-21 20:20:36 UTC (releng/10.1, 10.1-RC2-p1)
|
|
2014-10-21 20:20:36 UTC (releng/10.1, 10.1-RC1-p1)
|
|
2014-10-21 20:20:36 UTC (releng/10.1, 10.1-BETA3-p1)
|
|
2014-10-21 20:21:10 UTC (releng/10.0, 10.0-RELEASE-p10)
|
|
2014-10-21 20:20:17 UTC (stable/9, 9.3-STABLE)
|
|
2014-10-21 20:21:10 UTC (releng/9.3, 9.3-RELEASE-p3)
|
|
2014-10-21 20:21:10 UTC (releng/9.2, 9.2-RELEASE-p13)
|
|
2014-10-21 20:21:10 UTC (releng/9.1, 9.1-RELEASE-p20)
|
|
CVE Name: CVE-2014-3711
|
|
|
|
For general information regarding FreeBSD Security Advisories,
|
|
including descriptions of the fields above, security branches, and the
|
|
following sections, please visit <URL:http://security.FreeBSD.org/>.
|
|
|
|
I. Background
|
|
|
|
The namei kernel facility is responsible for performing and caching
|
|
translations from path names to file system objects (vnodes).
|
|
|
|
Capsicum is a lightweight capability and sandbox framework using a
|
|
hybrid capability system model. It is often used to create sandboxes
|
|
for applications that process data from untrusted sources.
|
|
|
|
II. Problem Description
|
|
|
|
The namei facility will leak a small amount of kernel memory every
|
|
time a sandboxed process looks up a nonexistent path name.
|
|
|
|
III. Impact
|
|
|
|
A remote attacker that can cause a sandboxed process (for instance, a
|
|
web server) to look up a large number of nonexistent path names can
|
|
cause memory exhaustion.
|
|
|
|
IV. Workaround
|
|
|
|
Systems that do not have Capsicum enabled or do not run services that
|
|
use Capsicum are not vulnerable.
|
|
|
|
On systems that have Capsicum compiled into the kernel, it can be
|
|
disabled by executing the following command as root:
|
|
|
|
# sysctl kern.features.security_capabilities=0
|
|
|
|
Services that use Capsicum are usually able to run without it, albeit
|
|
with reduced security.
|
|
|
|
V. Solution
|
|
|
|
Perform one of the following:
|
|
|
|
1) Upgrade your vulnerable system to a supported FreeBSD stable or
|
|
release / security branch (releng) dated after the correction date.
|
|
|
|
2) To update your vulnerable system via a binary patch:
|
|
|
|
Systems running a RELEASE version of FreeBSD on the i386 or amd64
|
|
platforms can be updated via the freebsd-update(8) utility:
|
|
|
|
# freebsd-update fetch
|
|
# freebsd-update install
|
|
|
|
3) To update your vulnerable system via a source code patch:
|
|
|
|
The following patches have been verified to apply to the applicable
|
|
FreeBSD release branches.
|
|
|
|
a) Download the relevant patch from the location below, and verify the
|
|
detached PGP signature using your PGP utility.
|
|
|
|
[FreeBSD 9.x]
|
|
# fetch http://security.FreeBSD.org/patches/SA-14:22/namei-9.patch
|
|
# fetch http://security.FreeBSD.org/patches/SA-14:22/namei-9.patch.asc
|
|
# gpg --verify namei-9.patch.asc
|
|
|
|
[FreeBSD 10.x]
|
|
# fetch http://security.FreeBSD.org/patches/SA-14:22/namei-10.patch
|
|
# fetch http://security.FreeBSD.org/patches/SA-14:22/namei-10.patch.asc
|
|
# gpg --verify namei-10.patch.asc
|
|
|
|
b) Apply the patch. Execute the following commands as root:
|
|
|
|
# cd /usr/src
|
|
# patch < /path/to/patch
|
|
|
|
c) Recompile your kernel as described in
|
|
<URL:http://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
|
|
system.
|
|
|
|
VI. Correction details
|
|
|
|
The following list contains the correction revision numbers for each
|
|
affected branch.
|
|
|
|
Branch/path Revision
|
|
- -------------------------------------------------------------------------
|
|
stable/9/ r273412
|
|
releng/9.1/ r273415
|
|
releng/9.2/ r273415
|
|
releng/9.3/ r273415
|
|
stable/10/ r273411
|
|
releng/10.0/ r273415
|
|
releng/10.1/ r273414
|
|
- -------------------------------------------------------------------------
|
|
|
|
To see which files were modified by a particular revision, run the
|
|
following command, replacing NNNNNN with the revision number, on a
|
|
machine with Subversion installed:
|
|
|
|
# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
|
|
|
|
Or visit the following URL, replacing NNNNNN with the revision number:
|
|
|
|
<URL:http://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
|
|
|
|
VII. References
|
|
|
|
<URL:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-3711>
|
|
|
|
The latest revision of this advisory is available at
|
|
<URL:http://security.FreeBSD.org/advisories/FreeBSD-SA-14:22.namei.asc>
|
|
-----BEGIN PGP SIGNATURE-----
|
|
Version: GnuPG v1
|
|
|
|
iQIcBAEBAgAGBQJURsStAAoJEO1n7NZdz2rnoMoQAIuqKpDLi+sGXnWUQeYGPEZH
|
|
OqwkK9ZbvEiNDAeol03FvxfTg8LzI4OtzkceFDy7KWUTNUN3HnGq1MhFLo+s5r7x
|
|
KtJVIzKgitZVh/1ikr6+DObpuwVHQfdKws6NKqCssqOknDIcNhNG97B1wl/QwnDX
|
|
3/BmAWFYaf6+AG0+vQhxUBTuP9keu8DlpBJ4eEbhRqVCSuo6enJ4uTQXOet7lEOR
|
|
loGqhuMJB265qi2e/vkcnXnOrd6eGQ9vkVJTS0jKmKF3VG8HTcUmUvwLAGeqmTuV
|
|
LIJVpSaFgDX7BuG0tUhwmtmql4+ROU6tyHVWBAmVcSNTRgy9L/It/BdG0slNdVVq
|
|
2OG0ApKCQIukfK6xtz7adgxRYvClzVZZmyjEPzu0MGs/imdEpfgsUap9yrPhHyoe
|
|
KM98VaKtzz2e09KxoAxAezgioDCv5rLZnaX8IqBlFft3BvfPP7TPbKrPvvmETu4P
|
|
/4nthuEFE4jl9xyVINaHdKW9gVAOP44OAj+HlxvNxn4llkrA2v4Zbc3mjukK0ZEx
|
|
OKz++lf7SmfTPI1lD+oN6FJRWEkK0YnVytsw8taHYlqDYdxaL+OB60B+Ko2JoqpL
|
|
AROBT2tp9j/NsG46CgDFqA7oV5JWe/Kk67VrkOs8BL6nplKVD9M5m4XDyakn9wkk
|
|
PA3J/dN5bSd7VIxYExZD
|
|
=MO7y
|
|
-----END PGP SIGNATURE-----
|