ASA-201611-28 log original external raw
[ASA-201611-28] ntp: multiple issues |
---|
Arch Linux Security Advisory ASA-201611-28
==========================================
Severity: High
Date : 2016-11-26
CVE-ID : CVE-2016-7426 CVE-2016-7427 CVE-2016-7428 CVE-2016-7429
CVE-2016-7431 CVE-2016-7433 CVE-2016-7434 CVE-2016-9310
CVE-2016-9311
Package : ntp
Type : multiple issues
Remote : Yes
Link : https://security.archlinux.org/AVG-79
Summary
=======
The package ntp before version 4.2.8.p9-1 is vulnerable to multiple
issues including denial of service, insufficient validation and
incorrect calculation.
Resolution
==========
Upgrade to 4.2.8.p9-1.
# pacman -Syu "ntp>=4.2.8.p9-1"
The problems have been fixed upstream in version 4.2.8.p9.
Workaround
==========
A partial fix to some of the issues is to implement BCP-38, use
"restrict default noquery ..." in your ntp.conf file and only allow
mode 6 queries from trusted networks and hosts.
Description
===========
- CVE-2016-7426 (denial of service)
When ntpd is configured with rate limiting for all associations
(restrict default limited in ntp.conf), the limits are applied also to
responses received from its configured sources. An attacker who knows
the sources (e.g., from an IPv4 refid in server response) and knows the
system is (mis)configured in this way can periodically send packets
with spoofed source address to keep the rate limiting activated and
prevent ntpd from accepting valid responses from its sources.
- CVE-2016-7427 (denial of service)
The broadcast mode of NTP is expected to only be used in a trusted
network. If the broadcast network is accessible to an attacker, a
potentially exploitable denial of service vulnerability in ntpd's
broadcast mode replay prevention functionality can be abused. An
attacker with access to the NTP broadcast domain can periodically
inject specially crafted broadcast mode NTP packets into the broadcast
domain which, while being logged by ntpd, can cause ntpd to reject
broadcast mode packets from legitimate NTP broadcast servers.
- CVE-2016-7428 (denial of service)
The broadcast mode of NTP is expected to only be used in a trusted
network. If the broadcast network is accessible to an attacker, a
potentially exploitable denial of service vulnerability in ntpd's
broadcast mode poll interval enforcement functionality can be abused.
To limit abuse, ntpd restricts the rate at which each broadcast
association will process incoming packets. ntpd will reject broadcast
mode packets that arrive before the poll interval specified in the
preceding broadcast packet expires. An attacker with access to the NTP
broadcast domain can send specially crafted broadcast mode NTP packets
to the broadcast domain which, while being logged by ntpd, will cause
ntpd to reject broadcast mode packets from legitimate NTP broadcast
servers.
- CVE-2016-7429 (denial of service)
When ntpd receives a server response on a socket that corresponds to a
different interface than was used for the request, the peer structure
is updated to use the interface for new requests. If ntpd is running on
a host with multiple interfaces in separate networks and the operating
system doesn't check source address in received packets (e.g. rp_filter
on Linux is set to 0), an attacker that knows the address of the source
can send a packet with spoofed source address which will cause ntpd to
select wrong interface for the source and prevent it from sending new
requests until the list of interfaces is refreshed, which happens on
routing changes or every 5 minutes by default. If the attack is
repeated often enough (once per second), ntpd will not be able to
synchronize with the source.
- CVE-2016-7431 (insufficient validation)
Zero Origin timestamp problems were fixed by Bug 2945 in ntp-4.2.8p6.
However, subsequent timestamp validation checks introduced a regression
in the handling of some Zero origin timestamp checks.
- CVE-2016-7433 (incorrect calculation)
ntpd Bug 2085 described a condition where the root delay was included
twice, causing the jitter value to be higher than expected. Due to a
misinterpretation of a small-print variable in The Book, the fix for
this problem was incorrect, resulting in a root distance that did not
include the peer dispersion. The calculations and formula have been
reviewed and reconciled, and the code has been updated accordingly.
- CVE-2016-7434 (denial of service)
If ntpd is configured to allow mrulist query requests from a server
that sends a crafted malicious packet, ntpd will crash on receipt of
that crafted malicious mrulist query packet.
- CVE-2016-9310 (denial of service)
An exploitable configuration modification vulnerability exists in the
control mode (mode 6) functionality of ntpd. If, against long-standing
BCP recommendations, "restrict default noquery ..." is not specified, a
specially crafted control mode packet can set ntpd traps, providing
information disclosure and DDoS amplification, and unset ntpd traps,
disabling legitimate monitoring. A remote, unauthenticated, network
attacker can trigger this vulnerability.
- CVE-2016-9311 (denial of service)
ntpd does not enable trap service by default. If trap service has been
explicitly enabled, an attacker can send a specially crafted packet to
cause a null pointer dereference that will crash ntpd, resulting in a
denial of service.
Impact
======
A remote unauthenticated attacker may be able to perform a denial of
service attack on ntpd via multiple vectors.
References
==========
http://www.kb.cert.org/vuls/id/633847
http://support.ntp.org/bin/view/Main/SecurityNotice#November_2016_ntp_4_2_8p9_NTP_Se
http://support.ntp.org/bin/view/Main/NtpBug3071
http://support.ntp.org/bin/view/Main/NtpBug3114
http://support.ntp.org/bin/view/Main/NtpBug3113
http://support.ntp.org/bin/view/Main/NtpBug3072
http://support.ntp.org/bin/view/Main/NtpBug3102
http://support.ntp.org/bin/view/Main/NtpBug3067
http://bugs.ntp.org/show_bug.cgi?id=2085
http://support.ntp.org/bin/view/Main/NtpBug3082
http://support.ntp.org/bin/view/Main/NtpBug3118
http://support.ntp.org/bin/view/Main/NtpBug3119
https://security.archlinux.org/CVE-2016-7426
https://security.archlinux.org/CVE-2016-7427
https://security.archlinux.org/CVE-2016-7428
https://security.archlinux.org/CVE-2016-7429
https://security.archlinux.org/CVE-2016-7431
https://security.archlinux.org/CVE-2016-7433
https://security.archlinux.org/CVE-2016-7434
https://security.archlinux.org/CVE-2016-9310
https://security.archlinux.org/CVE-2016-9311
|