Home / mailings FreeBSD Security Advisory FreeBSD-SA-14:02.ntpd
Posted on 14 January 2014
FreeBSD security notificat-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
=============================================================================
FreeBSD-SA-14:02.ntpd Security Advisory
The FreeBSD Project
Topic: ntpd distributed reflection Denial of Service vulnerability
Category: contrib
Module: ntpd
Announced: 2014-01-14
Affects: All supported versions of FreeBSD.
Corrected: 2014-01-14 19:04:33 UTC (stable/10, 10.0-PRERELEASE)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RELEASE)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RC5-p1)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RC4-p1)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RC3-p1)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RC2-p1)
2014-01-14 19:12:40 UTC (releng/10.0, 10.0-RC1-p1)
2014-01-14 19:20:41 UTC (stable/9, 9.2-STABLE)
2014-01-14 19:42:28 UTC (releng/9.2, 9.2-RELEASE-p3)
2014-01-14 19:42:28 UTC (releng/9.1, 9.1-RELEASE-p10)
2014-01-14 19:20:41 UTC (stable/8, 8.4-STABLE)
2014-01-14 19:42:28 UTC (releng/8.4, 8.4-RELEASE-p7)
2014-01-14 19:42:28 UTC (releng/8.3, 8.3-RELEASE-p14)
CVE Name: CVE-2013-5211
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 ntpd(8) daemon is an implementation of the Network Time Protocol (NTP)
used to synchronize the time of a computer system to a reference time
source.
II. Problem Description
The ntpd(8) daemon supports a query 'monlist' which provides a history of
recent NTP clients without any authentication.
III. Impact
An attacker can send 'monlist' queries and use that as an amplification of
a reflection attack.
IV. Workaround
The administrator can implement one of the following possible workarounds
to mitigate the attack:
1) Restrict access to ntpd(8). This can be done by adding the following
lines to /etc/ntp.conf:
restrict -4 default nomodify nopeer noquery notrap
restrict -6 default nomodify nopeer noquery notrap
restrict 127.0.0.1
restrict -6 ::1
restrict 127.127.1.0
And restart the ntpd(8) daemon. Time service is not affected and the
administrator can still perform queries from local host.
2) Use IP based restrictions in ntpd(8) itself or in IP firewalls to
restrict which systems can access ntpd(8).
3) Replace the base system ntpd(8) with net/ntp-devel (version 4.2.7p76 or
newer)
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 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.
# fetch http://security.FreeBSD.org/patches/SA-14:02/ntpd.patch
# fetch http://security.FreeBSD.org/patches/SA-14:02/ntpd.patch.asc
# gpg --verify ntpd.patch.asc
b) Execute the following commands as root:
# cd /usr/src
# patch < /path/to/patch
Recompile the operating system using buildworld and installworld as
described in <URL:http://www.FreeBSD.org/handbook/makeworld.html>.
Restart the ntpd(8) daemon, or reboot the system.
3) 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
Note that the patch would disable monitoring features of ntpd(8) daemon
by default. If the feature is desirable, the administrator can choose
to enable it and firewall access to ntpd(8) service.
VI. Correction details
The following list contains the correction revision numbers for each
affected branch.
Branch/path Revision
- -------------------------------------------------------------------------
stable/8/ r260641
releng/8.3/ r260647
releng/8.4/ r260647
stable/9/ r260641
releng/9.1/ r260647
releng/9.2/ r260647
stable/10/ r260639
releng/10.0/ r260641
- -------------------------------------------------------------------------
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://www.symantec.com/connect/blogs/hackers-spend-christmas-break-launching-large-scale-ntp-reflection-attacks>
<URL:https://cert.litnet.lt/en/docs/ntp-distributed-reflection-dos-attacks>
<URL:http://bugs.ntp.org/show_bug.cgi?id=1532>
<URL:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-5211>
The latest revision of this advisory is available at
<URL:http://security.FreeBSD.org/advisories/FreeBSD-SA-14:02.ntpd.asc>