Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Jan 2021 02:28:31 +0000 (UTC)
From:      FreeBSD Security Advisories <security-advisories@freebsd.org>
To:        FreeBSD Security Advisories <security-advisories@freebsd.org>
Subject:   FreeBSD Security Advisory FreeBSD-SA-21:02.xenoom
Message-ID:  <20210129022831.6EE1A1DBB4@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

=============================================================================
FreeBSD-SA-21:02.xenoom                                     Security Advisory
                                                          The FreeBSD Project

Topic:		Xen guests can triger backend Out Of Memory

Category:       contrib
Module:         Xen
Announced:      2021-01-29
Credits:	See Xen XSA-349 for details
Affects:        All supported versions of FreeBSD.
Corrected:      2021-01-18 16:26:36 UTC (stable/12, 12.2-STABLE)
                2021-01-29 01:21:04 UTC (releng/12.2, 12.2-RELEASE-p3)
                2021-01-29 01:06:16 UTC (releng/12.1, 12.1-RELEASE-p13)
                2021-01-21 09:14:50 UTC (stable/11, 11.4-STABLE)
                2021-01-29 00:20:16 UTC (releng/11.4, 11.4-RELEASE-p7)
CVE Name:       CVE-2020-29568

For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit <URL:https://security.FreeBSD.org/>.

I.   Background

Xen is a type-1 hypervisor which supports FreeBSD as a Dom0 (or host
domain).

II.  Problem Description

Some OSes (including Linux, FreeBSD, and NetBSD) are processing watch
events using a single thread.  If the events are received faster than
the thread is able to handle, they will get queued.

As the queue is unbound, a guest may be able to trigger a OOM in
the backend.

III. Impact

A malicious guest can trigger an OOM in backends.

IV.  Workaround

No workaround is available.  FreeBSD systems not using Xen are not
affected.

V.   Solution

Upgrade your vulnerable system to a supported FreeBSD stable or
release / security branch (releng) dated after the correction date,
and reboot.

Perform one of the following:

1) 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
# shutdown -r +10min "Rebooting for a security update"

2) 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 12.x]
# fetch https://security.FreeBSD.org/patches/SA-21:02/xenoom.12.patch
# fetch https://security.FreeBSD.org/patches/SA-21:02/xenoom.12.patch.asc
# gpg --verify xenoom.12.patch.asc

[FreeBSD 11.x]
# fetch https://security.FreeBSD.org/patches/SA-21:02/xenoom.11.patch
# fetch https://security.FreeBSD.org/patches/SA-21:02/xenoom.11.patch.asc
# gpg --verify xenoom.11.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:https://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/12/                                                        r369038
releng/12.2/                                                      r369177
releng/12.1/                                                      r369167
stable/11/                                                        r369072
releng/11.4/                                                      r369158
- -------------------------------------------------------------------------

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:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>;

VII. References

<URL:https://xenbits.xen.org/xsa/advisory-349.html>;

<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-29568>;

The latest revision of this advisory is available at
<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-21:02.xenoom.asc>;
-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAmATbjNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
5cJjmhAAloDel7j9rgyDK8Ozk5wPJQlUM/1Ddc4e5Q5vdzT29mNdWKfXjH5SEkGq
Jx7w4fUronf8vsXn+bNXwn1u5PWGVTVX/Y4ljQ4JVwJ+NdxhxTuhNsbg7j2AZmdO
PsfI+eFX1xq8wr3oDUl3GTHHcUI1Ol259tsOgJE7ISriazgbRk8/QVowMgS3jdHA
OYJS8ADFWSO6d4TC2B5pvgC6NAiZjhgTDtjxzTnaWoUb0157JyhRh3Z2FQTBxoxU
3OQcTj7x7KBtbsiAI/Iq8Qu7JXyxtscVQfbXsk4Jt1uOskgsr8n9F+UGiP+GRIKb
0IsgNUlsPavINlNJjAwQWHtB8VJqH7LpG9t3/EMizUXjZAuRLxEjAFiHV8ju1U++
O9Xf9nB9auVrBn1WMYgH23bZ5D15W1HosEywifBw64R7CLDliD/HpJ3QaDEe3lCn
pB0jgxuoE5RCbTppgUZM7tLUrtwgih+lOiZcLcA5xS9hQo8TWBLIJNBf5rRjJA6q
/3vh5lOv/w8AHyBgA5395QIkkgw9dxy2o+LbtuVhdD/NbLX4GnNVMkQDsTF79PMT
8rl0Zn6Ldo0ypHAwPAVHektl+izuMftNQuQXSbEjkw/Xr1VCjIjllJET3K2e9X6z
4nPmq6t/0kuHWYSSDQAKdq/8Dosn3HLw1uQdst4ka7wf1Eon7Ow=
=3L3L
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20210129022831.6EE1A1DBB4>