FreeBSD Security Advisory - Linux compatibility layer input validation error (FreeBSD-SA-12:08.linux)
FreeBSD-SA-12:08.linux                                      Security Advisory
                                                          The FreeBSD Project

Topic:          Linux compatibility layer input validation error

Category:       core
Module:         kernel
Announced:      2012-11-22
Credits:        Mateusz Guzik
Affects:        All supported versions of FreeBSD.
Corrected:      2012-11-22 23:15:38 UTC (RELENG_7, 7.4-STABLE)
                2012-11-22 22:52:15 UTC (RELENG_7_4, 7.4-RELEASE-p11)
                2012-11-22 22:52:15 UTC (RELENG_8, 8.3-STABLE)
                2012-11-22 22:52:15 UTC (RELENG_8_3, 8.3-RELEASE-p5)
                2012-11-22 22:52:15 UTC (RELENG_9, 9.1-PRERELEASE)
                2012-11-22 22:52:15 UTC (RELENG_9_0, 9.0-RELEASE-p5)
                2012-11-22 22:52:15 UTC (RELENG_9_1, 9.1-RC1-p1)
                2012-11-22 22:52:15 UTC (RELENG_9_1, 9.1-RC2-p1)
                2012-11-22 22:52:15 UTC (RELENG_9_1, 9.1-RC3-p1)
CVE Name:       CVE-2012-4576

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

FreeBSD is binary-compatible with the Linux operating system through a
loadable kernel module/optional kernel component.

II.  Problem Description

A programming error in the handling of some Linux system calls may
result in memory locations being accessed without proper validation.

III. Impact

It is possible for a local attacker to overwrite portions of kernel
memory, which may result in a privilege escalation or cause a system

IV.  Workaround

No workaround is available, but systems not using the Linux binary
compatibility layer are not vulnerable.

The following command can be used to test if the Linux binary
compatibility layer is loaded:

        # kldstat -m linuxelf

V.   Solution

Perform one of the following:

1) Upgrade your vulnerable system to 7-STABLE, 8-STABLE, or 9-STABLE,
or to the RELENG_7_4, RELENG_8_3, RELENG_9_0, or RELENG_9_1 security
branch dated after the correction date.

2) To update your vulnerable system via a source code patch:

The following patches have been verified to apply to FreeBSD 7.4,
8.3, 9.0, and 9.1 systems.

a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.

# fetch http://security.FreeBSD.org/patches/SA-12:08/linux.patch
# fetch http://security.FreeBSD.org/patches/SA-12:08/linux.patch.asc

b) Apply the patch.

# 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

3) To update your vulnerable system via a binary patch:

Systems running 7.4-RELEASE, 8.3-RELEASE, 9.0-RELEASE, 9.1-RC1,
9.1-RC2, or 9.1-RC3 on the i386 or amd64 platforms can be updated via
the freebsd-update(8) utility:

# freebsd-update fetch
# freebsd-update install

VI.  Correction details

The following list contains the revision numbers of each file that was
corrected in FreeBSD.


Branch/path                                                      Revision
- -------------------------------------------------------------------------
stable/7/                                                         r243418
releng/7.4/                                                       r243417
stable/8/                                                         r243417
releng/8.3/                                                       r243417
stable/9/                                                         r243417
releng/9.0/                                                       r243417
releng/9.1/                                                       r243417
- -------------------------------------------------------------------------

VII. References


The latest revision of this advisory is available at


Pen-testing drone searches for unsecured devices

You're sitting in an office, and you send a print job to the main office printer. You see or hear a drone flying outside your window. Next thing you know, the printer buzzes to life and, after spitting out your print job, it continues to work and presents you with more filled pages than you expected.

Weekly newsletter

Reading our newsletter every Monday will keep you up-to-date with security news.

Daily digest

Receive a daily digest of the latest security news.

Fri, Oct 9th