NEWS revision 1.1.1.16.4.1 1 1.1.1.15 christos ---
2 1.1.1.16.4.1 perseant NTP 4.2.8p18 (Harlan Stenn <stenn (a] ntp.org>, 2024 May 24)
3 1.1.1.16.4.1 perseant
4 1.1.1.16.4.1 perseant Focus: Bug fixes
5 1.1.1.16.4.1 perseant
6 1.1.1.16.4.1 perseant Severity: Recommended
7 1.1.1.16.4.1 perseant
8 1.1.1.16.4.1 perseant This release:
9 1.1.1.16.4.1 perseant
10 1.1.1.16.4.1 perseant - changes crypto (OpenSSL or compatible) detection and default build behavior.
11 1.1.1.16.4.1 perseant Previously, crypto was supported if available unless the --without-crypto
12 1.1.1.16.4.1 perseant option was given to configure. With this release, the prior behavior of
13 1.1.1.16.4.1 perseant falling back to a crypto-free build if usable libcrypto was not found has
14 1.1.1.16.4.1 perseant changed to instead cause configure to fail with an error.
15 1.1.1.16.4.1 perseant The --without-crypto option must be explicitly provided if you want a build
16 1.1.1.16.4.1 perseant that does not use libcrypto functionality.
17 1.1.1.16.4.1 perseant - Fixes 40 bugs
18 1.1.1.16.4.1 perseant - Includes 40 other improvements
19 1.1.1.16.4.1 perseant
20 1.1.1.16.4.1 perseant Details below:
21 1.1.1.16.4.1 perseant
22 1.1.1.16.4.1 perseant * [Bug 3918] Tweak openssl header/library handling. <stenn (a] ntp.org>
23 1.1.1.16.4.1 perseant * [Bug 3914] Spurious "Unexpected origin timestamp" logged after time
24 1.1.1.16.4.1 perseant stepped. <hart (a] ntp.org>
25 1.1.1.16.4.1 perseant * [Bug 3913] Avoid duplicate IPv6 link-local manycast associations.
26 1.1.1.16.4.1 perseant <hart (a] ntp.org>
27 1.1.1.16.4.1 perseant * [Bug 3912] Avoid rare math errors in ntptrace. <brian.utterback (a] oracle.com>
28 1.1.1.16.4.1 perseant * [Bug 3910] Memory leak using openssl-3 <hart (a] ntp.org>
29 1.1.1.16.4.1 perseant * [Bug 3909] Do not select multicast local address for unicast peer.
30 1.1.1.16.4.1 perseant <hart (a] ntp.org>
31 1.1.1.16.4.1 perseant * [Bug 3903] lib/isc/win32/strerror.c NTstrerror() is not thread-safe.
32 1.1.1.16.4.1 perseant <hart (a] ntp.org>
33 1.1.1.16.4.1 perseant * [Bug 3901] LIB_GETBUF isn't thread-safe. <hart (a] ntp.org>
34 1.1.1.16.4.1 perseant * [Bug 3900] fast_xmit() selects wrong local addr responding to mcast on
35 1.1.1.16.4.1 perseant Windows. <hart (a] ntp.org>
36 1.1.1.16.4.1 perseant * [Bug 3888] ntpd with multiple same-subnet IPs using manycastclient creates
37 1.1.1.16.4.1 perseant duplicate associations. <hart (a] ntp.org>
38 1.1.1.16.4.1 perseant * [Bug 3872] Ignore restrict mask for hostname. <hart (a] ntp.org>
39 1.1.1.16.4.1 perseant * [Bug 3871] 4.2.8p17 build without hopf6021 refclock enabled fails.
40 1.1.1.16.4.1 perseant Reported by Hans Mayer. Moved NONEMPTY_TRANSLATION_UNIT
41 1.1.1.16.4.1 perseant declaration from ntp_types.h to config.h. <hart (a] ntp.org>
42 1.1.1.16.4.1 perseant * [Bug 3870] Server drops client packets with ppoll < 4. <stenn (a] ntp.org>
43 1.1.1.16.4.1 perseant * [Bug 3869] Remove long-gone "calldelay" & "crypto sign" from docs.
44 1.1.1.16.4.1 perseant Reported by PoolMUC (a] web.de. <hart (a] ntp.org>
45 1.1.1.16.4.1 perseant * [Bug 3868] Cannot restrict a pool peer. <hart (a] ntp.org> Thanks to
46 1.1.1.16.4.1 perseant Edward McGuire for tracking down the deficiency.
47 1.1.1.16.4.1 perseant * [Bug 3864] ntpd IPv6 refid different for big-endian and little-endian.
48 1.1.1.16.4.1 perseant <hart (a] ntp.org>
49 1.1.1.16.4.1 perseant * [Bug 3859] Use NotifyIpInterfaceChange on Windows ntpd. <hart (a] ntp.org>
50 1.1.1.16.4.1 perseant * [Bug 3856] Enable Edit & Continue debugging with Visual Studio.
51 1.1.1.16.4.1 perseant <hart (a] ntp.org>
52 1.1.1.16.4.1 perseant * [Bug 3855] ntpq lacks an equivalent to ntpdc's delrestrict. <hart (a] ntp.org>
53 1.1.1.16.4.1 perseant * [Bug 3854] ntpd 4.2.8p17 corrupts rawstats file with space in refid.
54 1.1.1.16.4.1 perseant <hart (a] ntp.org>
55 1.1.1.16.4.1 perseant * [Bug 3853] Clean up warnings with modern compilers. <hart (a] ntp.org>
56 1.1.1.16.4.1 perseant * [Bug 3852] check-libntp.mf and friends are not triggering rebuilds as
57 1.1.1.16.4.1 perseant intended. <hart (a] ntp.org>
58 1.1.1.16.4.1 perseant * [Bug 3851] Drop pool server when no local address can reach it.
59 1.1.1.16.4.1 perseant <hart (a] ntp.org>
60 1.1.1.16.4.1 perseant * [Bug 3850] ntpq -c apeers breaks column formatting s2 w/refclock refid.
61 1.1.1.16.4.1 perseant <hart (a] ntp.org>
62 1.1.1.16.4.1 perseant * [Bug 3849] ntpd --wait-sync times out. <hart (a] ntp.org>
63 1.1.1.16.4.1 perseant * [Bug 3847] SSL detection in configure should run-test if runpath is needed.
64 1.1.1.16.4.1 perseant <hart (a] ntp.org>
65 1.1.1.16.4.1 perseant * [Bug 3846] Use -Wno-format-truncation by default. <hart (a] ntp.org>
66 1.1.1.16.4.1 perseant * [Bug 3845] accelerate pool clock_sync when IPv6 has only link-local access.
67 1.1.1.16.4.1 perseant <hart (a] ntp.org>
68 1.1.1.16.4.1 perseant * [Bug 3842] Windows ntpd PPSAPI DLL load failure crashes. <hart (a] ntp.org>
69 1.1.1.16.4.1 perseant * [Bug 3841] 4.2.8p17 build break w/ gcc 12 -Wformat-security without -Wformat
70 1.1.1.16.4.1 perseant Need to remove --Wformat-security when removing -Wformat to
71 1.1.1.16.4.1 perseant silence numerous libopts warnings. <hart (a] ntp.org>
72 1.1.1.16.4.1 perseant * [Bug 3837] NULL pointer deref crash when ntpd deletes last interface.
73 1.1.1.16.4.1 perseant Reported by renmingshuai. Correct UNLINK_EXPR_SLIST() when the
74 1.1.1.16.4.1 perseant list is empty. <hart (a] ntp.org>
75 1.1.1.16.4.1 perseant * [Bug 3835] NTP_HARD_*FLAGS not used by libevent tearoff. <hart (a] ntp.org>
76 1.1.1.16.4.1 perseant * [Bug 3831] pollskewlist zeroed on runtime configuration. <hart (a] ntp.org>
77 1.1.1.16.4.1 perseant * [Bug 3830] configure libevent check intersperses output with answer. <stenn@>
78 1.1.1.16.4.1 perseant * [Bug 3828] BK should ignore a git repo in the same directory.
79 1.1.1.16.4.1 perseant <burnicki (a] ntp.org>
80 1.1.1.16.4.1 perseant * [Bug 3827] Fix build in case CLOCK_HOPF6021 or CLOCK_WHARTON_400A
81 1.1.1.16.4.1 perseant is disabled. <burnicki (a] ntp.org>
82 1.1.1.16.4.1 perseant * [Bug 3825] Don't touch HTML files unless building inside a BK repo.
83 1.1.1.16.4.1 perseant Fix the script checkHtmlFileDates. <burnicki (a] ntp.org>
84 1.1.1.16.4.1 perseant * [Bug 3756] Improve OpenSSL library/header detection.
85 1.1.1.16.4.1 perseant * [Bug 3753] ntpd fails to start with FIPS-enabled OpenSSL 3. <hart (a] ntp.org>
86 1.1.1.16.4.1 perseant * [Bug 2734] TEST3 prevents initial interleave sync. Fix from <PoolMUC (a] web.de>
87 1.1.1.16.4.1 perseant * Log failures to allocate receive buffers. <hart (a] ntp.org>
88 1.1.1.16.4.1 perseant * Remove extraneous */ from libparse/ieee754io.c
89 1.1.1.16.4.1 perseant * Fix .datecheck target line in Makefile.am. <stenn (a] ntp.org>
90 1.1.1.16.4.1 perseant * Update the copyright year. <stenn (a] ntp.org>
91 1.1.1.16.4.1 perseant * Update ntp.conf documentation to add "delrestrict" and correct information
92 1.1.1.16.4.1 perseant about KoD rate limiting. <hart (a] ntp.org>
93 1.1.1.16.4.1 perseant * html/clockopt.html cleanup. <stenn (a] ntp.org>
94 1.1.1.16.4.1 perseant * util/lsf-times - added. <stenn (a] ntp.org>
95 1.1.1.16.4.1 perseant * Add DSA, DSA-SHA, and SHA to tests/libntp/digests.c. <hart (a] ntp.org>
96 1.1.1.16.4.1 perseant * Provide ntpd thread names to debugger on Windows. <hart (a] ntp.org>
97 1.1.1.16.4.1 perseant * Remove dead code libntp/numtohost.c and its unit tests. <hart (a] ntp.org>
98 1.1.1.16.4.1 perseant * Remove class A, B, C IPv4 distinctions in netof(). <hart (a] ntp.org>
99 1.1.1.16.4.1 perseant * Use @configure_input@ in various *.in files to include a comment that
100 1.1.1.16.4.1 perseant the file is generated from another pointing to the *.in. <hart (a] ntp.org>
101 1.1.1.16.4.1 perseant * Correct underquoting, indents in ntp_facilitynames.m4. <hart (a] ntp.org>
102 1.1.1.16.4.1 perseant * Clean up a few warnings seen building with older gcc. <hart (a] ntp.org>
103 1.1.1.16.4.1 perseant * Fix build on older FreeBSD lacking sys/procctl.h. <hart (a] ntp.org>
104 1.1.1.16.4.1 perseant * Disable [Bug 3627] workaround on newer FreeBSD which has the kernel fix
105 1.1.1.16.4.1 perseant that makes it unnecessary, re-enabling ASLR stack gap. <hart (a] ntp.org>
106 1.1.1.16.4.1 perseant * Use NONEMPTY_COMPILATION_UNIT in more conditionally-compiled files.
107 1.1.1.16.4.1 perseant * Remove useless pointer to Windows Help from system error messages.
108 1.1.1.16.4.1 perseant * Avoid newlines within Windows error messages. <hart (a] ntp.org>
109 1.1.1.16.4.1 perseant * Ensure unique association IDs if wrapped. <hart (a] ntp.org>
110 1.1.1.16.4.1 perseant * Simplify calc_addr_distance(). <hart (a] ntp.org>
111 1.1.1.16.4.1 perseant * Clamp min/maxpoll in edge cases in newpeer(). <hart (a] ntp.org>
112 1.1.1.16.4.1 perseant * Quiet local addr change logging when unpeering. <hart (a] ntp.org>
113 1.1.1.16.4.1 perseant * Correct missing arg for %s printf specifier in
114 1.1.1.16.4.1 perseant send_blocking_resp_internal(). <hart (a] ntp.org>
115 1.1.1.16.4.1 perseant * Suppress OpenSSL 3 deprecation warning clutter. <hart (a] ntp.org>
116 1.1.1.16.4.1 perseant * Correct OpenSSL usage in Autokey code to avoid warnings about
117 1.1.1.16.4.1 perseant discarding const qualifiers with OpenSSL 3. <hart (a] ntp.org>
118 1.1.1.16.4.1 perseant * Display KoD refid as text in recently added message. <hart (a] ntp.org>
119 1.1.1.16.4.1 perseant * Avoid running checkHtmlFileDates script repeatedly when no html/*.html
120 1.1.1.16.4.1 perseant files have changed. <hart (a] ntp.org>
121 1.1.1.16.4.1 perseant * Abort configure if --enable-crypto-rand given & unavailable. <hart (a] ntp.org>
122 1.1.1.16.4.1 perseant * Add configure --enable-verbose-ssl to trace SSL detection. <hart (a] ntp.org>
123 1.1.1.16.4.1 perseant * Add build test coverage for --disable-saveconfig to flock-build script.
124 1.1.1.16.4.1 perseant <hart (a] ntp.org>
125 1.1.1.16.4.1 perseant * Remove deprecated configure --with-arlib option. <hart (a] ntp.org>
126 1.1.1.16.4.1 perseant * Remove configure support for ISC UNIX ca. 1998. <hart (a] ntp.org>
127 1.1.1.16.4.1 perseant * Move NTP_OPENSSL and NTP_CRYPTO_RAND invocations from configure.ac files
128 1.1.1.16.4.1 perseant to NTP_LIBNTP. <hart (a] ntp.org>
129 1.1.1.16.4.1 perseant * Remove dead code: HAVE_U_INT32_ONLY_WITH_DNS. <hart (a] ntp.org>
130 1.1.1.16.4.1 perseant * Eliminate [v]snprintf redefinition warnings on macOS. <hart (a] ntp.org>
131 1.1.1.16.4.1 perseant * Fix clang 14 cast increases alignment warning on Linux. <hart (a] ntp.org>
132 1.1.1.16.4.1 perseant * Move ENABLE_CMAC to ntp_openssl.m4, reviving sntp/tests CMAC unit tests.
133 1.1.1.16.4.1 perseant <hart (a] ntp.org>
134 1.1.1.16.4.1 perseant * Use NTP_HARD_CPPFLAGS in libopts tearoff. <hart (a] ntp.org>
135 1.1.1.16.4.1 perseant * wire in --enable-build-framework-help
136 1.1.1.16.4.1 perseant
137 1.1.1.16.4.1 perseant ---
138 1.1.1.16.4.1 perseant NTP 4.2.8p17 (Harlan Stenn <stenn (a] ntp.org>, 2023 Jun 06)
139 1.1.1.16.4.1 perseant
140 1.1.1.16.4.1 perseant Focus: Bug fixes
141 1.1.1.16.4.1 perseant
142 1.1.1.16.4.1 perseant Severity: HIGH (for people running 4.2.8p16)
143 1.1.1.16.4.1 perseant
144 1.1.1.16.4.1 perseant This release:
145 1.1.1.16.4.1 perseant
146 1.1.1.16.4.1 perseant - fixes 3 bugs, including a regression
147 1.1.1.16.4.1 perseant - adds new unit tests
148 1.1.1.16.4.1 perseant
149 1.1.1.16.4.1 perseant Details below:
150 1.1.1.16.4.1 perseant
151 1.1.1.16.4.1 perseant * [Bug 3824] Spurious "ntpd: daemon failed to notify parent!" logged at
152 1.1.1.16.4.1 perseant event_sync. Reported by Edward McGuire. <hart (a] ntp.org>
153 1.1.1.16.4.1 perseant * [Bug 3822] ntpd significantly delays first poll of servers specified by name.
154 1.1.1.16.4.1 perseant <hart (a] ntp.org> Miroslav Lichvar identified regression in 4.2.8p16.
155 1.1.1.16.4.1 perseant * [Bug 3821] 4.2.8p16 misreads hex authentication keys, won't interop with
156 1.1.1.16.4.1 perseant 4.2.8p15 or earlier. Reported by Matt Nordhoff, thanks to
157 1.1.1.16.4.1 perseant Miroslav Lichvar and Matt for rapid testing and identifying the
158 1.1.1.16.4.1 perseant problem. <hart (a] ntp.org>
159 1.1.1.16.4.1 perseant * Add tests/libntp/digests.c to catch regressions reading keys file or with
160 1.1.1.16.4.1 perseant symmetric authentication digest output.
161 1.1.1.16.4.1 perseant
162 1.1.1.16.4.1 perseant ---
163 1.1.1.16.4.1 perseant NTP 4.2.8p16 (Harlan Stenn <stenn (a] ntp.org>, 2023 May 30)
164 1.1.1.16.4.1 perseant
165 1.1.1.16.4.1 perseant Focus: Security, Bug fixes
166 1.1.1.16.4.1 perseant
167 1.1.1.16.4.1 perseant Severity: LOW
168 1.1.1.16.4.1 perseant
169 1.1.1.16.4.1 perseant This release:
170 1.1.1.16.4.1 perseant
171 1.1.1.16.4.1 perseant - fixes 4 vulnerabilities (3 LOW and 1 None severity),
172 1.1.1.16.4.1 perseant - fixes 46 bugs
173 1.1.1.16.4.1 perseant - includes 15 general improvements
174 1.1.1.16.4.1 perseant - adds support for OpenSSL-3.0
175 1.1.1.16.4.1 perseant
176 1.1.1.16.4.1 perseant Details below:
177 1.1.1.16.4.1 perseant
178 1.1.1.16.4.1 perseant * [Sec 3808] Assertion failure in ntpq on malformed RT-11 date <perlinger (a] ntp.org>
179 1.1.1.16.4.1 perseant * [Sec 3807] praecis_parse() in the Palisade refclock driver has a
180 1.1.1.16.4.1 perseant hypothetical input buffer overflow. Reported by ... stenn@
181 1.1.1.16.4.1 perseant * [Sec 3806] libntp/mstolfp.c needs bounds checking <perlinger (a] ntp.org>
182 1.1.1.16.4.1 perseant - solved numerically instead of using string manipulation
183 1.1.1.16.4.1 perseant * [Sec 3767] An OOB KoD RATE value triggers an assertion when debug is enabled.
184 1.1.1.16.4.1 perseant <stenn (a] ntp.org>
185 1.1.1.16.4.1 perseant * [Bug 3819] Updated libopts/Makefile.am was missing NTP_HARD_* values. <stenn@>
186 1.1.1.16.4.1 perseant * [Bug 3817] Bounds-check "tos floor" configuration. <hart (a] ntp.org>
187 1.1.1.16.4.1 perseant * [Bug 3814] First poll delay of new or cleared associations miscalculated.
188 1.1.1.16.4.1 perseant <hart (a] ntp.org>
189 1.1.1.16.4.1 perseant * [Bug 3802] ntp-keygen -I default identity modulus bits too small for
190 1.1.1.16.4.1 perseant OpenSSL 3. Reported by rmsh1216 (a] 163.com <hart (a] ntp.org>
191 1.1.1.16.4.1 perseant * [Bug 3801] gpsdjson refclock gps_open() device name mishandled. <hart (a] ntp.org>
192 1.1.1.16.4.1 perseant * [Bug 3800] libopts-42.1.17 does not compile with Microsoft C. <hart (a] ntp.org>
193 1.1.1.16.4.1 perseant * [Bug 3799] Enable libopts noreturn compiler advice for MSC. <hart (a] ntp.org>
194 1.1.1.16.4.1 perseant * [Bug 3797] Windows getaddrinfo w/AI_ADDRCONFIG fails for localhost when
195 1.1.1.16.4.1 perseant disconnected, breaking ntpq and ntpdc. <hart (a] ntp.org>
196 1.1.1.16.4.1 perseant * [Bug 3795] pollskewlist documentation uses | when it shouldn't.
197 1.1.1.16.4.1 perseant - ntp.conf manual page and miscopt.html corrections. <hart (a] ntp.org>
198 1.1.1.16.4.1 perseant * [Bug 3793] Wrong variable type passed to record_raw_stats(). <hart (a] ntp.org>
199 1.1.1.16.4.1 perseant - Report and patch by Yuezhen LUAN <wei6410 (a] sina.com>.
200 1.1.1.16.4.1 perseant * [Bug 3786] Timer starvation on high-load Windows ntpd. <hart (a] ntp.org>
201 1.1.1.16.4.1 perseant * [Bug 3784] high-load ntpd on Windows deaf after enough ICMP TTL exceeded.
202 1.1.1.16.4.1 perseant <hart (a] ntp.org>
203 1.1.1.16.4.1 perseant * [Bug 3781] log "Unable to listen for broadcasts" for IPv4 <hart (a] ntp.org>
204 1.1.1.16.4.1 perseant * [Bug 3774] mode 6 packets corrupted in rawstats file <hart (a] ntp.org>
205 1.1.1.16.4.1 perseant - Reported by Edward McGuire, fix identified by <wei6410 (a] sina.com>.
206 1.1.1.16.4.1 perseant * [Bug 3758] Provide a 'device' config statement for refclocks <perlinger (a] ntp.org>
207 1.1.1.16.4.1 perseant * [Bug 3757] Improve handling of Linux-PPS in NTPD <perlinger (a] ntp.org>
208 1.1.1.16.4.1 perseant * [Bug 3741] 4.2.8p15 can't build with glibc 2.34 <perlinger (a] ntp.org>
209 1.1.1.16.4.1 perseant * [Bug 3725] Make copyright of clk_wharton.c compatible with Debian.
210 1.1.1.16.4.1 perseant Philippe De Muyter <phdm (a] macqel.be>
211 1.1.1.16.4.1 perseant * [Bug 3724] ntp-keygen with openSSL 1.1.1 fails on Windows <perlinger (a] ntp.org>
212 1.1.1.16.4.1 perseant - openssl applink needed again for openSSL-1.1.1
213 1.1.1.16.4.1 perseant * [Bug 3719] configure.ac checks for closefrom() and getdtablesize() missing.
214 1.1.1.16.4.1 perseant Reported by Brian Utterback, broken in 2010 by <hart (a] ntp.org>
215 1.1.1.16.4.1 perseant * [Bug 3699] Problems handling drift file and restoring previous drifts <perlinger (a] ntp.org>
216 1.1.1.16.4.1 perseant - command line options override config statements where applicable
217 1.1.1.16.4.1 perseant - make initial frequency settings idempotent and reversible
218 1.1.1.16.4.1 perseant - make sure kernel PLL gets a recovered drift componsation
219 1.1.1.16.4.1 perseant * [Bug 3695] Fix memory leak with ntpq on Windows Server 2019 <perlinger (a] ntp.org>
220 1.1.1.16.4.1 perseant * [Bug 3694] NMEA refclock seems to unnecessarily require location in messages
221 1.1.1.16.4.1 perseant - misleading title; essentially a request to ignore the receiver status.
222 1.1.1.16.4.1 perseant Added a mode bit for this. <perlinger (a] ntp.org>
223 1.1.1.16.4.1 perseant * [Bug 3693] Improvement of error handling key lengths <perlinger (a] ntp.org>
224 1.1.1.16.4.1 perseant - original patch by Richard Schmidt, with mods & unit test fixes
225 1.1.1.16.4.1 perseant * [Bug 3692] /dev/gpsN requirement prevents KPPS <perlinger (a] ntp.org>
226 1.1.1.16.4.1 perseant - implement/wrap 'realpath()' to resolve symlinks in device names
227 1.1.1.16.4.1 perseant * [Bug 3691] Buffer Overflow reading GPSD output
228 1.1.1.16.4.1 perseant - original patch by matt<ntpbr (a] mattcorallo.com>
229 1.1.1.16.4.1 perseant - increased max PDU size to 4k to avoid truncation
230 1.1.1.16.4.1 perseant * [Bug 3690] newline in ntp clock variable (parse) <perlinger (a] ntp.org>
231 1.1.1.16.4.1 perseant - patch by Frank Kardel
232 1.1.1.16.4.1 perseant * [Bug 3689] Extension for MD5, SHA-1 and other keys <perlinger (a] ntp.org>
233 1.1.1.16.4.1 perseant - ntp{q,dc} now use the same password processing as ntpd does in the key
234 1.1.1.16.4.1 perseant file, so having a binary secret >= 11 bytes is possible for all keys.
235 1.1.1.16.4.1 perseant (This is a different approach to the problem than suggested)
236 1.1.1.16.4.1 perseant * [Bug 3688] GCC 10 build errors in testsuite <perlinger (a] ntp.org>
237 1.1.1.16.4.1 perseant * [Bug 3687] ntp_crypto_rand RNG status not known <perlinger (a] ntp.org>
238 1.1.1.16.4.1 perseant - patch by Gerry Garvey
239 1.1.1.16.4.1 perseant * [Bug 3682] Fixes for warnings when compiled without OpenSSL <perlinger (a] ntp.org>
240 1.1.1.16.4.1 perseant - original patch by Gerry Garvey
241 1.1.1.16.4.1 perseant * [Bug 3677] additional peer events not decoded in associations listing <perlinger (a] ntp.org>
242 1.1.1.16.4.1 perseant - original patch by Gerry Garvey
243 1.1.1.16.4.1 perseant * [Bug 3676] compiler warnings (CMAC, interrupt_buf, typo, fallthrough)
244 1.1.1.16.4.1 perseant - applied patches by Gerry Garvey
245 1.1.1.16.4.1 perseant * [Bug 3675] ntpq ccmds[] stores pointer to non-persistent storage
246 1.1.1.16.4.1 perseant * [Bug 3674] ntpq command 'execute only' using '~' prefix <perlinger (a] ntp.org>
247 1.1.1.16.4.1 perseant - idea+patch by Gerry Garvey
248 1.1.1.16.4.1 perseant * [Bug 3672] fix biased selection in median cut <perlinger (a] ntp.org>
249 1.1.1.16.4.1 perseant * [Bug 3666] avoid unlimited receive buffer allocation <perlinger (a] ntp.org>
250 1.1.1.16.4.1 perseant - follow-up: fix inverted sense in check, reset shortfall counter
251 1.1.1.16.4.1 perseant * [Bug 3660] Revert 4.2.8p15 change to manycast. <hart (a] ntp.org>
252 1.1.1.16.4.1 perseant * [Bug 3640] document "discard monitor" and fix the code. <hart (a] ntp.org>
253 1.1.1.16.4.1 perseant - fixed bug identified by Edward McGuire <perlinger (a] ntp.org>
254 1.1.1.16.4.1 perseant * [Bug 3626] (SNTP) UTC offset calculation needs dst flag <perlinger (a] ntp.org>
255 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
256 1.1.1.16.4.1 perseant * [Bug 3432] refclocks that 'write()' should check the result <perlinger (a] ntp.org>
257 1.1.1.16.4.1 perseant - backport from -dev, plus some more work on warnings for unchecked results
258 1.1.1.16.4.1 perseant * [Bug 3428] ntpd spinning consuming CPU on Linux router with full table.
259 1.1.1.16.4.1 perseant Reported by Israel G. Lugo. <hart (a] ntp.org>
260 1.1.1.16.4.1 perseant * [Bug 3103] libopts zsave_warn format string too few arguments <bkorb (a] gnu.org>
261 1.1.1.16.4.1 perseant * [Bug 2990] multicastclient incorrectly causes bind to broadcast address.
262 1.1.1.16.4.1 perseant Integrated patch from Brian Utterback. <hart (a] ntp.org>
263 1.1.1.16.4.1 perseant * [Bug 2525] Turn on automake subdir-objects across the project. <hart (a] ntp.org>
264 1.1.1.16.4.1 perseant * [Bug 2410] syslog an error message on panic exceeded. <brian.utterback (a] oracle.com>
265 1.1.1.16.4.1 perseant * Use correct rounding in mstolfp(). perlinger/hart
266 1.1.1.16.4.1 perseant * M_ADDF should use u_int32. <hart (a] ntp.org>
267 1.1.1.16.4.1 perseant * Only define tv_fmt_libbuf() if we will use it. <stenn (a] ntp.org>
268 1.1.1.16.4.1 perseant * Use recv_buffer instead of the longer recv_space.X_recv_buffer. hart/stenn
269 1.1.1.16.4.1 perseant * Make sure the value returned by refid_str() prints cleanly. <stenn (a] ntp.org>
270 1.1.1.16.4.1 perseant * If DEBUG is enabled, the startup banner now says that debug assertions
271 1.1.1.16.4.1 perseant are in force and that ntpd will abort if any are violated. <stenn (a] ntp.org>
272 1.1.1.16.4.1 perseant * syslog valid incoming KoDs. <stenn (a] ntp.org>
273 1.1.1.16.4.1 perseant * Rename a poorly-named variable. <stenn (a] ntp.org>
274 1.1.1.16.4.1 perseant * Disable "embedded NUL in string" messages in libopts, when we can. <stenn@>
275 1.1.1.16.4.1 perseant * Use https in the AC_INIT URLs in configure.ac. <stenn (a] ntp.org>
276 1.1.1.16.4.1 perseant * Implement NTP_FUNC_REALPATH. <stenn (a] ntp.org>
277 1.1.1.16.4.1 perseant * Lose a gmake construct in ntpd/Makefile.am. <stenn (a] ntp.org>
278 1.1.1.16.4.1 perseant * upgrade to: autogen-5.18.16
279 1.1.1.16.4.1 perseant * upgrade to: libopts-42.1.17
280 1.1.1.16.4.1 perseant * upgrade to: autoconf-2.71
281 1.1.1.16.4.1 perseant * upgrade to: automake-1.16.15
282 1.1.1.16.4.1 perseant * Upgrade to libevent-2.1.12-stable <stenn (a] ntp.org>
283 1.1.1.16.4.1 perseant * Support OpenSSL-3.0
284 1.1.1.16.4.1 perseant
285 1.1.1.16.4.1 perseant ---
286 1.1.1.16.4.1 perseant NTP 4.2.8p15 (Harlan Stenn <stenn (a] ntp.org>, 2020 Jun 23)
287 1.1.1.16.4.1 perseant
288 1.1.1.16.4.1 perseant Focus: Security, Bug fixes
289 1.1.1.16.4.1 perseant
290 1.1.1.16.4.1 perseant Severity: MEDIUM
291 1.1.1.16.4.1 perseant
292 1.1.1.16.4.1 perseant This release fixes one vulnerability: Associations that use CMAC
293 1.1.1.16.4.1 perseant authentication between ntpd from versions 4.2.8p11/4.3.97 and
294 1.1.1.16.4.1 perseant 4.2.8p14/4.3.100 will leak a small amount of memory for each packet.
295 1.1.1.16.4.1 perseant Eventually, ntpd will run out of memory and abort.
296 1.1.1.16.4.1 perseant
297 1.1.1.16.4.1 perseant It also fixes 13 other bugs.
298 1.1.1.16.4.1 perseant
299 1.1.1.16.4.1 perseant * [Sec 3661] memory leak with AES128CMAC keys <perlinger (a] ntp.org>
300 1.1.1.16.4.1 perseant * [Bug 3670] Regression from bad merger between 3592 and 3596 <perlinger@>
301 1.1.1.16.4.1 perseant - Thanks to Sylar Tao
302 1.1.1.16.4.1 perseant * [Bug 3667] decodenetnum fails with numeric port <perlinger (a] ntp.org>
303 1.1.1.16.4.1 perseant - rewrite 'decodenetnum()' in terms of inet_pton
304 1.1.1.16.4.1 perseant * [Bug 3666] avoid unlimited receive buffer allocation <perlinger (a] ntp.org>
305 1.1.1.16.4.1 perseant - limit number of receive buffers, with an iron reserve for refclocks
306 1.1.1.16.4.1 perseant * [Bug 3664] Enable openSSL CMAC support on Windows <burnicki (a] ntp.org>
307 1.1.1.16.4.1 perseant * [Bug 3662] Fix build errors on Windows with VS2008 <burnicki (a] ntp.org>
308 1.1.1.16.4.1 perseant * [Bug 3660] Manycast orphan mode startup discovery problem. <stenn (a] ntp.org>
309 1.1.1.16.4.1 perseant - integrated patch from Charles Claggett
310 1.1.1.16.4.1 perseant * [Bug 3659] Move definition of psl[] from ntp_config.h to
311 1.1.1.16.4.1 perseant ntp_config.h <perlinger (a] ntp.org>
312 1.1.1.16.4.1 perseant * [Bug 3657] Wrong "Autokey group mismatch" debug message <perlinger (a] ntp.org>
313 1.1.1.16.4.1 perseant * [Bug 3655] ntpdc memstats hash counts <perlinger (a] ntp.org>
314 1.1.1.16.4.1 perseant - fix by Gerry garvey
315 1.1.1.16.4.1 perseant * [Bug 3653] Refclock jitter RMS calculation <perlinger (a] ntp.org>
316 1.1.1.16.4.1 perseant - thanks to Gerry Garvey
317 1.1.1.16.4.1 perseant * [Bug 3646] Avoid sync with unsync orphan <perlinger (a] ntp.org>
318 1.1.1.16.4.1 perseant - patch by Gerry Garvey
319 1.1.1.16.4.1 perseant * [Bug 3644] Unsynchronized server [...] selected as candidate <perlinger (a] ntp.org>
320 1.1.1.16.4.1 perseant * [Bug 3639] refclock_jjy: TS-JJY0x can skip time sync depending on the STUS reply. <abe (a] ntp.org>
321 1.1.1.16.4.1 perseant - applied patch by Takao Abe
322 1.1.1.16.4.1 perseant
323 1.1.1.16.4.1 perseant ---
324 1.1.1.16.4.1 perseant NTP 4.2.8p14 (Harlan Stenn <stenn (a] ntp.org>, 2020 Mar 03)
325 1.1.1.16.4.1 perseant
326 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
327 1.1.1.16.4.1 perseant
328 1.1.1.16.4.1 perseant Severity: MEDIUM
329 1.1.1.16.4.1 perseant
330 1.1.1.16.4.1 perseant This release fixes three vulnerabilities: a bug that causes causes an ntpd
331 1.1.1.16.4.1 perseant instance that is explicitly configured to override the default and allow
332 1.1.1.16.4.1 perseant ntpdc (mode 7) connections to be made to a server to read some uninitialized
333 1.1.1.16.4.1 perseant memory; fixes the case where an unmonitored ntpd using an unauthenticated
334 1.1.1.16.4.1 perseant association to its servers may be susceptible to a forged packet DoS attack;
335 1.1.1.16.4.1 perseant and fixes an attack against a client instance that uses a single
336 1.1.1.16.4.1 perseant unauthenticated time source. It also fixes 46 other bugs and addresses
337 1.1.1.16.4.1 perseant 4 other issues.
338 1.1.1.16.4.1 perseant
339 1.1.1.16.4.1 perseant * [Sec 3610] process_control() should bail earlier on short packets. stenn@
340 1.1.1.16.4.1 perseant - Reported by Philippe Antoine
341 1.1.1.16.4.1 perseant * [Sec 3596] Highly predictable timestamp attack. <stenn (a] ntp.org>
342 1.1.1.16.4.1 perseant - Reported by Miroslav Lichvar
343 1.1.1.16.4.1 perseant * [Sec 3592] DoS attack on client ntpd <perlinger (a] ntp.org>
344 1.1.1.16.4.1 perseant - Reported by Miroslav Lichvar
345 1.1.1.16.4.1 perseant * [Bug 3637] Emit the version of ntpd in saveconfig. stenn@
346 1.1.1.16.4.1 perseant * [Bug 3636] NMEA: combine time/date from multiple sentences <perlinger (a] ntp.org>
347 1.1.1.16.4.1 perseant * [Bug 3635] Make leapsecond file hash check optional <perlinger (a] ntp.org>
348 1.1.1.16.4.1 perseant * [Bug 3634] Typo in discipline.html, reported by Jason Harrison. stenn@
349 1.1.1.16.4.1 perseant * [Bug 3628] raw DCF decoding - improve robustness with Zeller's congruence
350 1.1.1.16.4.1 perseant - implement Zeller's congruence in libparse and libntp <perlinger (a] ntp.org>
351 1.1.1.16.4.1 perseant * [Bug 3627] SIGSEGV on FreeBSD-12 with stack limit and stack gap <perlinger (a] ntp.org>
352 1.1.1.16.4.1 perseant - integrated patch by Cy Schubert
353 1.1.1.16.4.1 perseant * [Bug 3620] memory leak in ntpq sysinfo <perlinger (a] ntp.org>
354 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
355 1.1.1.16.4.1 perseant * [Bug 3619] Honour drefid setting in cooked mode and sysinfo <perlinger (a] ntp.org>
356 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
357 1.1.1.16.4.1 perseant * [Bug 3617] Add support for ACE III and Copernicus II receivers <perlinger (a] ntp.org>
358 1.1.1.16.4.1 perseant - integrated patch by Richard Steedman
359 1.1.1.16.4.1 perseant * [Bug 3615] accelerate refclock startup <perlinger (a] ntp.org>
360 1.1.1.16.4.1 perseant * [Bug 3613] Propagate noselect to mobilized pool servers <stenn (a] ntp.org>
361 1.1.1.16.4.1 perseant - Reported by Martin Burnicki
362 1.1.1.16.4.1 perseant * [Bug 3612] Use-of-uninitialized-value in receive function <perlinger (a] ntp.org>
363 1.1.1.16.4.1 perseant - Reported by Philippe Antoine
364 1.1.1.16.4.1 perseant * [Bug 3611] NMEA time interpreted incorrectly <perlinger (a] ntp.org>
365 1.1.1.16.4.1 perseant - officially document new "trust date" mode bit for NMEA driver
366 1.1.1.16.4.1 perseant - restore the (previously undocumented) "trust date" feature lost with [bug 3577]
367 1.1.1.16.4.1 perseant * [Bug 3609] Fixing wrong falseticker in case of non-statistic jitter <perlinger (a] ntp.org>
368 1.1.1.16.4.1 perseant - mostly based on a patch by Michael Haardt, implementing 'fudge minjitter'
369 1.1.1.16.4.1 perseant * [Bug 3608] libparse fails to compile on S11.4SRU13 and later <perlinger (a] ntp.org>
370 1.1.1.16.4.1 perseant - removed ffs() and fls() prototypes as per Brian Utterback
371 1.1.1.16.4.1 perseant * [Bug 3604] Wrong param byte order passing into record_raw_stats() in
372 1.1.1.16.4.1 perseant ntp_io.c <perlinger (a] ntp.org>
373 1.1.1.16.4.1 perseant - fixed byte and paramter order as suggested by wei6410 (a] sina.com
374 1.1.1.16.4.1 perseant * [Bug 3601] Tests fail to link on platforms with ntp_cv_gc_sections_runs=no <perlinger (a] ntp.org>
375 1.1.1.16.4.1 perseant * [Bug 3599] Build fails on linux-m68k due to alignment issues <perlinger (a] ntp.org>
376 1.1.1.16.4.1 perseant - added padding as suggested by John Paul Adrian Glaubitz
377 1.1.1.16.4.1 perseant * [Bug 3594] ntpd discards messages coming through nmead <perlinger (a] ntp.org>
378 1.1.1.16.4.1 perseant * [Bug 3593] ntpd discards silently nmea messages after the 5th string <perlinger (a] ntp.org>
379 1.1.1.16.4.1 perseant * [Bug 3590] Update refclock_oncore.c to the new GPS date API <perlinger (a] ntp.org>
380 1.1.1.16.4.1 perseant * [Bug 3585] Unity tests mix buffered and unbuffered output <perlinger (a] ntp.org>
381 1.1.1.16.4.1 perseant - stdout+stderr are set to line buffered during test setup now
382 1.1.1.16.4.1 perseant * [Bug 3583] synchronization error <perlinger (a] ntp.org>
383 1.1.1.16.4.1 perseant - set clock to base date if system time is before that limit
384 1.1.1.16.4.1 perseant * [Bug 3582] gpsdjson refclock fudgetime1 adjustment is doubled <perlinger (a] ntp.org>
385 1.1.1.16.4.1 perseant * [Bug 3580] Possible bug ntpq-subs (NULL dereference in dogetassoc) <perlinger (a] ntp.org>
386 1.1.1.16.4.1 perseant - Reported by Paulo Neves
387 1.1.1.16.4.1 perseant * [Bug 3577] Update refclock_zyfer.c to the new GPS date API <perlinger (a] ntp.org>
388 1.1.1.16.4.1 perseant - also updates for refclock_nmea.c and refclock_jupiter.c
389 1.1.1.16.4.1 perseant * [Bug 3576] New GPS date function API <perlinger (a] ntp.org>
390 1.1.1.16.4.1 perseant * [Bug 3573] nptdate: missleading error message <perlinger (a] ntp.org>
391 1.1.1.16.4.1 perseant * [Bug 3570] NMEA driver docs: talker ID not mentioned, typo <perlinger (a] ntp.org>
392 1.1.1.16.4.1 perseant * [Bug 3569] cleanup MOD_NANO/STA_NANO handling for 'ntpadjtimex()' <perlinger (a] ntp.org>
393 1.1.1.16.4.1 perseant - sidekick: service port resolution in 'ntpdate'
394 1.1.1.16.4.1 perseant * [Bug 3550] Reproducible build: Respect SOURCE_DATE_EPOCH <perlinger (a] ntp.org>
395 1.1.1.16.4.1 perseant - applied patch by Douglas Royds
396 1.1.1.16.4.1 perseant * [Bug 3542] ntpdc monlist parameters cannot be set <perlinger (a] ntp.org>
397 1.1.1.16.4.1 perseant * [Bug 3533] ntpdc peer_info ipv6 issues <perlinger (a] ntp.org>
398 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
399 1.1.1.16.4.1 perseant * [Bug 3531] make check: test-decodenetnum fails <perlinger (a] ntp.org>
400 1.1.1.16.4.1 perseant - try to harden 'decodenetnum()' against 'getaddrinfo()' errors
401 1.1.1.16.4.1 perseant - fix wrong cond-compile tests in unit tests
402 1.1.1.16.4.1 perseant * [Bug 3517] Reducing build noise <perlinger (a] ntp.org>
403 1.1.1.16.4.1 perseant * [Bug 3516] Require tooling from this decade <perlinger (a] ntp.org>
404 1.1.1.16.4.1 perseant - patch by Philipp Prindeville
405 1.1.1.16.4.1 perseant * [Bug 3515] Refactor ntpdmain() dispatcher loop and group common code <perlinger (a] ntp.org>
406 1.1.1.16.4.1 perseant - patch by Philipp Prindeville
407 1.1.1.16.4.1 perseant * [Bug 3511] Get rid of AC_LANG_SOURCE() warnings <perlinger (a] ntp.org>
408 1.1.1.16.4.1 perseant - patch by Philipp Prindeville
409 1.1.1.16.4.1 perseant * [Bug 3510] Flatten out the #ifdef nesting in ntpdmain() <perlinger (a] ntp.org>
410 1.1.1.16.4.1 perseant - partial application of patch by Philipp Prindeville
411 1.1.1.16.4.1 perseant * [Bug 3491] Signed values of LFP datatypes should always display a sign
412 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey & fixed unit tests <perlinger (a] ntp.org>
413 1.1.1.16.4.1 perseant * [Bug 3490] Patch to support Trimble Resolution Receivers <perlinger (a] ntp.org>
414 1.1.1.16.4.1 perseant - applied (modified) patch by Richard Steedman
415 1.1.1.16.4.1 perseant * [Bug 3473] RefID of refclocks should always be text format <perlinger (a] ntp.org>
416 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey (with minor formatting changes)
417 1.1.1.16.4.1 perseant * [Bug 3132] Building 4.2.8p8 with disabled local libopts fails <perlinger (a] ntp.org>
418 1.1.1.16.4.1 perseant - applied patch by Miroslav Lichvar
419 1.1.1.16.4.1 perseant * [Bug 3094] ntpd trying to listen for broadcasts on a completely ipv6 network
420 1.1.1.16.4.1 perseant <perlinger (a] ntp.org>
421 1.1.1.16.4.1 perseant * [Bug 2420] ntpd doesn't run and exits with retval 0 when invalid user
422 1.1.1.16.4.1 perseant is specified with -u <perlinger (a] ntp.org>
423 1.1.1.16.4.1 perseant - monitor daemon child startup & propagate exit codes
424 1.1.1.16.4.1 perseant * [Bug 1433] runtime check whether the kernel really supports capabilities
425 1.1.1.16.4.1 perseant - (modified) patch by Kurt Roeckx <perlinger (a] ntp.org>
426 1.1.1.16.4.1 perseant * Clean up sntp/networking.c:sendpkt() error message. <stenn (a] ntp.org>
427 1.1.1.16.4.1 perseant * Provide more detail on unrecognized config file parser tokens. <stenn (a] ntp.org>
428 1.1.1.16.4.1 perseant * Startup log improvements. <stenn (a] ntp.org>
429 1.1.1.16.4.1 perseant * Update the copyright year.
430 1.1.1.16.4.1 perseant
431 1.1.1.16.4.1 perseant ---
432 1.1.1.16.4.1 perseant NTP 4.2.8p13 (Harlan Stenn <stenn (a] ntp.org>, 2019 Mar 07)
433 1.1.1.16.4.1 perseant
434 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
435 1.1.1.16.4.1 perseant
436 1.1.1.16.4.1 perseant Severity: MEDIUM
437 1.1.1.16.4.1 perseant
438 1.1.1.16.4.1 perseant This release fixes a bug that allows an attacker with access to an
439 1.1.1.16.4.1 perseant explicitly trusted source to send a crafted malicious mode 6 (ntpq)
440 1.1.1.16.4.1 perseant packet that can trigger a NULL pointer dereference, crashing ntpd.
441 1.1.1.16.4.1 perseant It also provides 17 other bugfixes and 1 other improvement:
442 1.1.1.16.4.1 perseant
443 1.1.1.16.4.1 perseant * [Sec 3565] Crafted null dereference attack in authenticated
444 1.1.1.16.4.1 perseant mode 6 packet <perlinger (a] ntp.org>
445 1.1.1.16.4.1 perseant - reported by Magnus Stubman
446 1.1.1.16.4.1 perseant * [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger (a] ntp.org>
447 1.1.1.16.4.1 perseant - applied patch by Ian Lepore
448 1.1.1.16.4.1 perseant * [Bug 3558] Crash and integer size bug <perlinger (a] ntp.org>
449 1.1.1.16.4.1 perseant - isolate and fix linux/windows specific code issue
450 1.1.1.16.4.1 perseant * [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger (a] ntp.org>
451 1.1.1.16.4.1 perseant - provide better function for incremental string formatting
452 1.1.1.16.4.1 perseant * [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger (a] ntp.org>
453 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
454 1.1.1.16.4.1 perseant * [Bug 3554] config revoke stores incorrect value <perlinger (a] ntp.org>
455 1.1.1.16.4.1 perseant - original finding by Gerry Garvey, additional cleanup needed
456 1.1.1.16.4.1 perseant * [Bug 3549] Spurious initgroups() error message <perlinger (a] ntp.org>
457 1.1.1.16.4.1 perseant - patch by Christous Zoulas
458 1.1.1.16.4.1 perseant * [Bug 3548] Signature not verified on windows system <perlinger (a] ntp.org>
459 1.1.1.16.4.1 perseant - finding by Chen Jiabin, plus another one by me
460 1.1.1.16.4.1 perseant * [Bug 3541] patch to fix STA_NANO struct timex units <perlinger (a] ntp.org>
461 1.1.1.16.4.1 perseant - applied patch by Maciej Szmigiero
462 1.1.1.16.4.1 perseant * [Bug 3540] Cannot set minsane to 0 anymore <perlinger (a] ntp.org>
463 1.1.1.16.4.1 perseant - applied patch by Andre Charbonneau
464 1.1.1.16.4.1 perseant * [Bug 3539] work_fork build fails when droproot is not supported <perlinger (a] ntp.org>
465 1.1.1.16.4.1 perseant - applied patch by Baruch Siach
466 1.1.1.16.4.1 perseant * [Bug 3538] Build fails for no-MMU targets <perlinger (a] ntp.org>
467 1.1.1.16.4.1 perseant - applied patch by Baruch Siach
468 1.1.1.16.4.1 perseant * [Bug 3535] libparse won't handle GPS week rollover <perlinger (a] ntp.org>
469 1.1.1.16.4.1 perseant - refactored handling of GPS era based on 'tos basedate' for
470 1.1.1.16.4.1 perseant parse (TSIP) and JUPITER clocks
471 1.1.1.16.4.1 perseant * [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger (a] ntp.org>
472 1.1.1.16.4.1 perseant - patch by Daniel J. Luke; this does not fix a potential linker
473 1.1.1.16.4.1 perseant regression issue on MacOS.
474 1.1.1.16.4.1 perseant * [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
475 1.1.1.16.4.1 perseant anomaly <perlinger (a] ntp.org>, reported by GGarvey.
476 1.1.1.16.4.1 perseant - --enable-bug3527-fix support by HStenn
477 1.1.1.16.4.1 perseant * [Bug 3526] Incorrect poll interval in packet <perlinger (a] ntp.org>
478 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
479 1.1.1.16.4.1 perseant * [Bug 3471] Check for openssl/[ch]mac.h. <perlinger (a] ntp.org>
480 1.1.1.16.4.1 perseant - added missing check, reported by Reinhard Max <perlinger (a] ntp.org>
481 1.1.1.16.4.1 perseant * [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
482 1.1.1.16.4.1 perseant - this is a variant of [bug 3558] and should be fixed with it
483 1.1.1.16.4.1 perseant * Implement 'configure --disable-signalled-io'
484 1.1.1.16.4.1 perseant
485 1.1.1.16.4.1 perseant --
486 1.1.1.16.4.1 perseant NTP 4.2.8p12 (Harlan Stenn <stenn (a] ntp.org>, 2018/14/09)
487 1.1.1.16.4.1 perseant
488 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
489 1.1.1.16.4.1 perseant
490 1.1.1.16.4.1 perseant Severity: MEDIUM
491 1.1.1.16.4.1 perseant
492 1.1.1.16.4.1 perseant This release fixes a "hole" in the noepeer capability introduced to ntpd
493 1.1.1.16.4.1 perseant in ntp-4.2.8p11, and a buffer overflow in the openhost() function used by
494 1.1.1.16.4.1 perseant ntpq and ntpdc. It also provides 26 other bugfixes, and 4 other improvements:
495 1.1.1.16.4.1 perseant
496 1.1.1.16.4.1 perseant * [Sec 3505] Buffer overflow in the openhost() call of ntpq and ntpdc.
497 1.1.1.16.4.1 perseant
498 1.1.1.16.4.1 perseant * [Sec 3012] Fix a hole in the new "noepeer" processing.
499 1.1.1.16.4.1 perseant
500 1.1.1.16.4.1 perseant * Bug Fixes:
501 1.1.1.16.4.1 perseant [Bug 3521] Fix a logic bug in the INVALIDNAK checks. <stenn (a] ntp.org>
502 1.1.1.16.4.1 perseant [Bug 3509] Add support for running as non-root on FreeBSD, Darwin,
503 1.1.1.16.4.1 perseant other TrustedBSD platforms
504 1.1.1.16.4.1 perseant - applied patch by Ian Lepore <perlinger (a] ntp.org>
505 1.1.1.16.4.1 perseant [Bug 3506] Service Control Manager interacts poorly with NTPD <perlinger (a] ntp.org>
506 1.1.1.16.4.1 perseant - changed interaction with SCM to signal pending startup
507 1.1.1.16.4.1 perseant [Bug 3486] Buffer overflow in ntpq/ntpq.c:tstflags() <perlinger (a] ntp.org>
508 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
509 1.1.1.16.4.1 perseant [Bug 3485] Undefined sockaddr used in error messages in ntp_config.c <perlinger (a] ntp.org>
510 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
511 1.1.1.16.4.1 perseant [Bug 3484] ntpq response from ntpd is incorrect when REFID is null <perlinger (a] ntp.org>
512 1.1.1.16.4.1 perseant - rework of ntpq 'nextvar()' key/value parsing
513 1.1.1.16.4.1 perseant [Bug 3482] Fixes for compilation warnings (ntp_io.c & ntpq-subs.c) <perlinger (a] ntp.org>
514 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey (with mods)
515 1.1.1.16.4.1 perseant [Bug 3480] Refclock sample filter not cleared on clock STEP <perlinger (a] ntp.org>
516 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
517 1.1.1.16.4.1 perseant [Bug 3479] ctl_putrefid() allows unsafe characters through to ntpq <perlinger (a] ntp.org>
518 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey (with mods)
519 1.1.1.16.4.1 perseant [Bug 3476]ctl_putstr() sends empty unquoted string [...] <perlinger (a] ntp.org>
520 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey (with mods); not sure if that's bug or feature, though
521 1.1.1.16.4.1 perseant [Bug 3475] modify prettydate() to suppress output of zero time <perlinger (a] ntp.org>
522 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
523 1.1.1.16.4.1 perseant [Bug 3474] Missing pmode in mode7 peer info response <perlinger (a] ntp.org>
524 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
525 1.1.1.16.4.1 perseant [Bug 3471] Check for openssl/[ch]mac.h. HStenn.
526 1.1.1.16.4.1 perseant - add #define ENABLE_CMAC support in configure. HStenn.
527 1.1.1.16.4.1 perseant [Bug 3470] ntpd4.2.8p11 fails to compile without OpenSSL <perlinger (a] ntp.org>
528 1.1.1.16.4.1 perseant [Bug 3469] Incomplete string compare [...] in is_refclk_addr <perlinger (a] ntp.org>
529 1.1.1.16.4.1 perseant - patch by Stephen Friedl
530 1.1.1.16.4.1 perseant [Bug 3467] Potential memory fault in ntpq [...] <perlinger (a] ntp.org>
531 1.1.1.16.4.1 perseant - fixed IO redirection and CTRL-C handling in ntq and ntpdc
532 1.1.1.16.4.1 perseant [Bug 3465] Default TTL values cannot be used <perlinger (a] ntp.org>
533 1.1.1.16.4.1 perseant [Bug 3461] refclock_shm.c: clear error status on clock recovery <perlinger (a] ntp.org>
534 1.1.1.16.4.1 perseant - initial patch by Hal Murray; also fixed refclock_report() trouble
535 1.1.1.16.4.1 perseant [Bug 3460] Fix typo in ntpq.texi, reported by Kenyon Ralph. <stenn (a] ntp.org>
536 1.1.1.16.4.1 perseant [Bug 3456] Use uintptr_t rather than size_t to store an integer in a pointer
537 1.1.1.16.4.1 perseant - According to Brooks Davis, there was only one location <perlinger (a] ntp.org>
538 1.1.1.16.4.1 perseant [Bug 3449] ntpq - display "loop" instead of refid [...] <perlinger (a] ntp.org>
539 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
540 1.1.1.16.4.1 perseant [Bug 3445] Symmetric peer won't sync on startup <perlinger (a] ntp.org>
541 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
542 1.1.1.16.4.1 perseant [Bug 3442] Fixes for ntpdate as suggested by Gerry Garvey,
543 1.1.1.16.4.1 perseant with modifications
544 1.1.1.16.4.1 perseant New macro REFID_ISTEXT() which is also used in ntpd/ntp_control.c.
545 1.1.1.16.4.1 perseant [Bug 3434] ntpd clears STA_UNSYNC on start <perlinger (a] ntp.org>
546 1.1.1.16.4.1 perseant - applied patch by Miroslav Lichvar
547 1.1.1.16.4.1 perseant [Bug 3426] ntpdate.html -t default is 2 seconds. Leonid Evdokimov.
548 1.1.1.16.4.1 perseant [Bug 3121] Drop root privileges for the forked DNS worker <perlinger (a] ntp.org>
549 1.1.1.16.4.1 perseant - integrated patch by Reinhard Max
550 1.1.1.16.4.1 perseant [Bug 2821] minor build issues <perlinger (a] ntp.org>
551 1.1.1.16.4.1 perseant - applied patches by Christos Zoulas, including real bug fixes
552 1.1.1.16.4.1 perseant html/authopt.html: cleanup, from <stenn (a] ntp.org>
553 1.1.1.16.4.1 perseant ntpd/ntpd.c: DROPROOT cleanup. <stenn (a] ntp.org>
554 1.1.1.16.4.1 perseant Symmetric key range is 1-65535. Update docs. <stenn (a] ntp.org>
555 1.1.1.16.4.1 perseant
556 1.1.1.16.4.1 perseant --
557 1.1.1.16.4.1 perseant NTP 4.2.8p11 (Harlan Stenn <stenn (a] ntp.org>, 2018/02/27)
558 1.1.1.16.4.1 perseant
559 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
560 1.1.1.16.4.1 perseant
561 1.1.1.16.4.1 perseant Severity: MEDIUM
562 1.1.1.16.4.1 perseant
563 1.1.1.16.4.1 perseant This release fixes 2 low-/medium-, 1 informational/medum-, and 2 low-severity
564 1.1.1.16.4.1 perseant vulnerabilities in ntpd, one medium-severity vulernability in ntpq, and
565 1.1.1.16.4.1 perseant provides 65 other non-security fixes and improvements:
566 1.1.1.16.4.1 perseant
567 1.1.1.16.4.1 perseant * NTP Bug 3454: Unauthenticated packet can reset authenticated interleaved
568 1.1.1.16.4.1 perseant association (LOW/MED)
569 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p11) 27 Feb 2018
570 1.1.1.16.4.1 perseant References: Sec 3454 / CVE-2018-7185 / VU#961909
571 1.1.1.16.4.1 perseant Affects: ntp-4.2.6, up to but not including ntp-4.2.8p11.
572 1.1.1.16.4.1 perseant CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:N/I:N/A:P) This could score between
573 1.1.1.16.4.1 perseant 2.9 and 6.8.
574 1.1.1.16.4.1 perseant CVSS3: LOW 3.1 CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L This could
575 1.1.1.16.4.1 perseant score between 2.6 and 3.1
576 1.1.1.16.4.1 perseant Summary:
577 1.1.1.16.4.1 perseant The NTP Protocol allows for both non-authenticated and
578 1.1.1.16.4.1 perseant authenticated associations, in client/server, symmetric (peer),
579 1.1.1.16.4.1 perseant and several broadcast modes. In addition to the basic NTP
580 1.1.1.16.4.1 perseant operational modes, symmetric mode and broadcast servers can
581 1.1.1.16.4.1 perseant support an interleaved mode of operation. In ntp-4.2.8p4 a bug
582 1.1.1.16.4.1 perseant was inadvertently introduced into the protocol engine that
583 1.1.1.16.4.1 perseant allows a non-authenticated zero-origin (reset) packet to reset
584 1.1.1.16.4.1 perseant an authenticated interleaved peer association. If an attacker
585 1.1.1.16.4.1 perseant can send a packet with a zero-origin timestamp and the source
586 1.1.1.16.4.1 perseant IP address of the "other side" of an interleaved association,
587 1.1.1.16.4.1 perseant the 'victim' ntpd will reset its association. The attacker must
588 1.1.1.16.4.1 perseant continue sending these packets in order to maintain the
589 1.1.1.16.4.1 perseant disruption of the association. In ntp-4.0.0 thru ntp-4.2.8p6,
590 1.1.1.16.4.1 perseant interleave mode could be entered dynamically. As of ntp-4.2.8p7,
591 1.1.1.16.4.1 perseant interleaved mode must be explicitly configured/enabled.
592 1.1.1.16.4.1 perseant Mitigation:
593 1.1.1.16.4.1 perseant Implement BCP-38.
594 1.1.1.16.4.1 perseant Upgrade to 4.2.8p11, or later, from the NTP Project Download Page
595 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
596 1.1.1.16.4.1 perseant If you are unable to upgrade to 4.2.8p11 or later and have
597 1.1.1.16.4.1 perseant 'peer HOST xleave' lines in your ntp.conf file, remove the
598 1.1.1.16.4.1 perseant 'xleave' option.
599 1.1.1.16.4.1 perseant Have enough sources of time.
600 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
601 1.1.1.16.4.1 perseant If ntpd stops running, auto-restart it without -g .
602 1.1.1.16.4.1 perseant Credit:
603 1.1.1.16.4.1 perseant This weakness was discovered by Miroslav Lichvar of Red Hat.
604 1.1.1.16.4.1 perseant
605 1.1.1.16.4.1 perseant * NTP Bug 3453: Interleaved symmetric mode cannot recover from bad
606 1.1.1.16.4.1 perseant state (LOW/MED)
607 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p11) 27 Feb 2018
608 1.1.1.16.4.1 perseant References: Sec 3453 / CVE-2018-7184 / VU#961909
609 1.1.1.16.4.1 perseant Affects: ntpd in ntp-4.2.8p4, up to but not including ntp-4.2.8p11.
610 1.1.1.16.4.1 perseant CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:P/I:N/A:N)
611 1.1.1.16.4.1 perseant Could score between 2.9 and 6.8.
612 1.1.1.16.4.1 perseant CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
613 1.1.1.16.4.1 perseant Could score between 2.6 and 6.0.
614 1.1.1.16.4.1 perseant Summary:
615 1.1.1.16.4.1 perseant The fix for NtpBug2952 was incomplete, and while it fixed one
616 1.1.1.16.4.1 perseant problem it created another. Specifically, it drops bad packets
617 1.1.1.16.4.1 perseant before updating the "received" timestamp. This means a
618 1.1.1.16.4.1 perseant third-party can inject a packet with a zero-origin timestamp,
619 1.1.1.16.4.1 perseant meaning the sender wants to reset the association, and the
620 1.1.1.16.4.1 perseant transmit timestamp in this bogus packet will be saved as the
621 1.1.1.16.4.1 perseant most recent "received" timestamp. The real remote peer does
622 1.1.1.16.4.1 perseant not know this value and this will disrupt the association until
623 1.1.1.16.4.1 perseant the association resets.
624 1.1.1.16.4.1 perseant Mitigation:
625 1.1.1.16.4.1 perseant Implement BCP-38.
626 1.1.1.16.4.1 perseant Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
627 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
628 1.1.1.16.4.1 perseant Use authentication with 'peer' mode.
629 1.1.1.16.4.1 perseant Have enough sources of time.
630 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
631 1.1.1.16.4.1 perseant If ntpd stops running, auto-restart it without -g .
632 1.1.1.16.4.1 perseant Credit:
633 1.1.1.16.4.1 perseant This weakness was discovered by Miroslav Lichvar of Red Hat.
634 1.1.1.16.4.1 perseant
635 1.1.1.16.4.1 perseant * NTP Bug 3415: Provide a way to prevent authenticated symmetric passive
636 1.1.1.16.4.1 perseant peering (LOW)
637 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p11) 27 Feb 2018
638 1.1.1.16.4.1 perseant References: Sec 3415 / CVE-2018-7170 / VU#961909
639 1.1.1.16.4.1 perseant Sec 3012 / CVE-2016-1549 / VU#718152
640 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
641 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
642 1.1.1.16.4.1 perseant CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
643 1.1.1.16.4.1 perseant CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N
644 1.1.1.16.4.1 perseant Summary:
645 1.1.1.16.4.1 perseant ntpd can be vulnerable to Sybil attacks. If a system is set up to
646 1.1.1.16.4.1 perseant use a trustedkey and if one is not using the feature introduced in
647 1.1.1.16.4.1 perseant ntp-4.2.8p6 allowing an optional 4th field in the ntp.keys file to
648 1.1.1.16.4.1 perseant specify which IPs can serve time, a malicious authenticated peer
649 1.1.1.16.4.1 perseant -- i.e. one where the attacker knows the private symmetric key --
650 1.1.1.16.4.1 perseant can create arbitrarily-many ephemeral associations in order to win
651 1.1.1.16.4.1 perseant the clock selection of ntpd and modify a victim's clock. Three
652 1.1.1.16.4.1 perseant additional protections are offered in ntp-4.2.8p11. One is the
653 1.1.1.16.4.1 perseant new 'noepeer' directive, which disables symmetric passive
654 1.1.1.16.4.1 perseant ephemeral peering. Another is the new 'ippeerlimit' directive,
655 1.1.1.16.4.1 perseant which limits the number of peers that can be created from an IP.
656 1.1.1.16.4.1 perseant The third extends the functionality of the 4th field in the
657 1.1.1.16.4.1 perseant ntp.keys file to include specifying a subnet range.
658 1.1.1.16.4.1 perseant Mitigation:
659 1.1.1.16.4.1 perseant Implement BCP-38.
660 1.1.1.16.4.1 perseant Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
661 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
662 1.1.1.16.4.1 perseant Use the 'noepeer' directive to prohibit symmetric passive
663 1.1.1.16.4.1 perseant ephemeral associations.
664 1.1.1.16.4.1 perseant Use the 'ippeerlimit' directive to limit the number of peers
665 1.1.1.16.4.1 perseant that can be created from an IP.
666 1.1.1.16.4.1 perseant Use the 4th argument in the ntp.keys file to limit the IPs and
667 1.1.1.16.4.1 perseant subnets that can be time servers.
668 1.1.1.16.4.1 perseant Have enough sources of time.
669 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
670 1.1.1.16.4.1 perseant If ntpd stops running, auto-restart it without -g .
671 1.1.1.16.4.1 perseant Credit:
672 1.1.1.16.4.1 perseant This weakness was reported as Bug 3012 by Matthew Van Gundy of
673 1.1.1.16.4.1 perseant Cisco ASIG, and separately by Stefan Moser as Bug 3415.
674 1.1.1.16.4.1 perseant
675 1.1.1.16.4.1 perseant * ntpq Bug 3414: decodearr() can write beyond its 'buf' limits (Medium)
676 1.1.1.16.4.1 perseant Date Resolved: 27 Feb 2018
677 1.1.1.16.4.1 perseant References: Sec 3414 / CVE-2018-7183 / VU#961909
678 1.1.1.16.4.1 perseant Affects: ntpq in ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
679 1.1.1.16.4.1 perseant CVSS2: MED 6.8 (AV:N/AC:M/Au:N/C:P/I:P/A:P)
680 1.1.1.16.4.1 perseant CVSS3: MED 5.0 CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L
681 1.1.1.16.4.1 perseant Summary:
682 1.1.1.16.4.1 perseant ntpq is a monitoring and control program for ntpd. decodearr()
683 1.1.1.16.4.1 perseant is an internal function of ntpq that is used to -- wait for it --
684 1.1.1.16.4.1 perseant decode an array in a response string when formatted data is being
685 1.1.1.16.4.1 perseant displayed. This is a problem in affected versions of ntpq if a
686 1.1.1.16.4.1 perseant maliciously-altered ntpd returns an array result that will trip this
687 1.1.1.16.4.1 perseant bug, or if a bad actor is able to read an ntpq request on its way to
688 1.1.1.16.4.1 perseant a remote ntpd server and forge and send a response before the remote
689 1.1.1.16.4.1 perseant ntpd sends its response. It's potentially possible that the
690 1.1.1.16.4.1 perseant malicious data could become injectable/executable code.
691 1.1.1.16.4.1 perseant Mitigation:
692 1.1.1.16.4.1 perseant Implement BCP-38.
693 1.1.1.16.4.1 perseant Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
694 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
695 1.1.1.16.4.1 perseant Credit:
696 1.1.1.16.4.1 perseant This weakness was discovered by Michael Macnair of Thales e-Security.
697 1.1.1.16.4.1 perseant
698 1.1.1.16.4.1 perseant * NTP Bug 3412: ctl_getitem(): buffer read overrun leads to undefined
699 1.1.1.16.4.1 perseant behavior and information leak (Info/Medium)
700 1.1.1.16.4.1 perseant Date Resolved: 27 Feb 2018
701 1.1.1.16.4.1 perseant References: Sec 3412 / CVE-2018-7182 / VU#961909
702 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
703 1.1.1.16.4.1 perseant CVSS2: INFO 0.0 - MED 5.0 (AV:N/AC:L/Au:N/C:P/I:N/A:N) 0.0 if C:N
704 1.1.1.16.4.1 perseant CVSS3: NONE 0.0 - MED 5.3 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
705 1.1.1.16.4.1 perseant 0.0 if C:N
706 1.1.1.16.4.1 perseant Summary:
707 1.1.1.16.4.1 perseant ctl_getitem() is used by ntpd to process incoming mode 6 packets.
708 1.1.1.16.4.1 perseant A malicious mode 6 packet can be sent to an ntpd instance, and
709 1.1.1.16.4.1 perseant if the ntpd instance is from 4.2.8p6 thru 4.2.8p10, that will
710 1.1.1.16.4.1 perseant cause ctl_getitem() to read past the end of its buffer.
711 1.1.1.16.4.1 perseant Mitigation:
712 1.1.1.16.4.1 perseant Implement BCP-38.
713 1.1.1.16.4.1 perseant Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
714 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
715 1.1.1.16.4.1 perseant Have enough sources of time.
716 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
717 1.1.1.16.4.1 perseant If ntpd stops running, auto-restart it without -g .
718 1.1.1.16.4.1 perseant Credit:
719 1.1.1.16.4.1 perseant This weakness was discovered by Yihan Lian of Qihoo 360.
720 1.1.1.16.4.1 perseant
721 1.1.1.16.4.1 perseant * NTP Bug 3012: Sybil vulnerability: ephemeral association attack
722 1.1.1.16.4.1 perseant Also see Bug 3415, above.
723 1.1.1.16.4.1 perseant Date Mitigated: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
724 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p11) 27 Feb 2018
725 1.1.1.16.4.1 perseant References: Sec 3012 / CVE-2016-1549 / VU#718152
726 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
727 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
728 1.1.1.16.4.1 perseant CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
729 1.1.1.16.4.1 perseant CVSS3: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
730 1.1.1.16.4.1 perseant Summary:
731 1.1.1.16.4.1 perseant ntpd can be vulnerable to Sybil attacks. If a system is set up
732 1.1.1.16.4.1 perseant to use a trustedkey and if one is not using the feature
733 1.1.1.16.4.1 perseant introduced in ntp-4.2.8p6 allowing an optional 4th field in the
734 1.1.1.16.4.1 perseant ntp.keys file to specify which IPs can serve time, a malicious
735 1.1.1.16.4.1 perseant authenticated peer -- i.e. one where the attacker knows the
736 1.1.1.16.4.1 perseant private symmetric key -- can create arbitrarily-many ephemeral
737 1.1.1.16.4.1 perseant associations in order to win the clock selection of ntpd and
738 1.1.1.16.4.1 perseant modify a victim's clock. Two additional protections are
739 1.1.1.16.4.1 perseant offered in ntp-4.2.8p11. One is the 'noepeer' directive, which
740 1.1.1.16.4.1 perseant disables symmetric passive ephemeral peering. The other extends
741 1.1.1.16.4.1 perseant the functionality of the 4th field in the ntp.keys file to
742 1.1.1.16.4.1 perseant include specifying a subnet range.
743 1.1.1.16.4.1 perseant Mitigation:
744 1.1.1.16.4.1 perseant Implement BCP-38.
745 1.1.1.16.4.1 perseant Upgrade to 4.2.8p11, or later, from the NTP Project Download Page or
746 1.1.1.16.4.1 perseant the NTP Public Services Project Download Page.
747 1.1.1.16.4.1 perseant Use the 'noepeer' directive to prohibit symmetric passive
748 1.1.1.16.4.1 perseant ephemeral associations.
749 1.1.1.16.4.1 perseant Use the 'ippeerlimit' directive to limit the number of peer
750 1.1.1.16.4.1 perseant associations from an IP.
751 1.1.1.16.4.1 perseant Use the 4th argument in the ntp.keys file to limit the IPs
752 1.1.1.16.4.1 perseant and subnets that can be time servers.
753 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
754 1.1.1.16.4.1 perseant Credit:
755 1.1.1.16.4.1 perseant This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
756 1.1.1.16.4.1 perseant
757 1.1.1.16.4.1 perseant * Bug fixes:
758 1.1.1.16.4.1 perseant [Bug 3457] OpenSSL FIPS mode regression <perlinger (a] ntp.org>
759 1.1.1.16.4.1 perseant [Bug 3455] ntpd doesn't use scope id when binding multicast <perlinger (a] ntp.org>
760 1.1.1.16.4.1 perseant - applied patch by Sean Haugh
761 1.1.1.16.4.1 perseant [Bug 3452] PARSE driver prints uninitialized memory. <perlinger (a] ntp.org>
762 1.1.1.16.4.1 perseant [Bug 3450] Dubious error messages from plausibility checks in get_systime()
763 1.1.1.16.4.1 perseant - removed error log caused by rounding/slew, ensured postcondition <perlinger (a] ntp.org>
764 1.1.1.16.4.1 perseant [Bug 3447] AES-128-CMAC (fixes) <perlinger (a] ntp.org>
765 1.1.1.16.4.1 perseant - refactoring the MAC code, too
766 1.1.1.16.4.1 perseant [Bug 3441] Validate the assumption that AF_UNSPEC is 0. stenn (a] ntp.org
767 1.1.1.16.4.1 perseant [Bug 3439] When running multiple commands / hosts in ntpq... <perlinger (a] ntp.org>
768 1.1.1.16.4.1 perseant - applied patch by ggarvey
769 1.1.1.16.4.1 perseant [Bug 3438] Negative values and values > 999 days in... <perlinger (a] ntp.org>
770 1.1.1.16.4.1 perseant - applied patch by ggarvey (with minor mods)
771 1.1.1.16.4.1 perseant [Bug 3437] ntpd tries to open socket with AF_UNSPEC domain
772 1.1.1.16.4.1 perseant - applied patch (with mods) by Miroslav Lichvar <perlinger (a] ntp.org>
773 1.1.1.16.4.1 perseant [Bug 3435] anchor NTP era alignment <perlinger (a] ntp.org>
774 1.1.1.16.4.1 perseant [Bug 3433] sntp crashes when run with -a. <stenn (a] ntp.org>
775 1.1.1.16.4.1 perseant [Bug 3430] ntpq dumps core (SIGSEGV) for "keytype md2"
776 1.1.1.16.4.1 perseant - fixed several issues with hash algos in ntpd, sntp, ntpq,
777 1.1.1.16.4.1 perseant ntpdc and the test suites <perlinger (a] ntp.org>
778 1.1.1.16.4.1 perseant [Bug 3424] Trimble Thunderbolt 1024 week millenium bug <perlinger (a] ntp.org>
779 1.1.1.16.4.1 perseant - initial patch by Daniel Pouzzner
780 1.1.1.16.4.1 perseant [Bug 3423] QNX adjtime() implementation error checking is
781 1.1.1.16.4.1 perseant wrong <perlinger (a] ntp.org>
782 1.1.1.16.4.1 perseant [Bug 3417] ntpq ifstats packet counters can be negative
783 1.1.1.16.4.1 perseant made IFSTATS counter quantities unsigned <perlinger (a] ntp.org>
784 1.1.1.16.4.1 perseant [Bug 3411] problem about SIGN(6) packet handling for ntp-4.2.8p10
785 1.1.1.16.4.1 perseant - raised receive buffer size to 1200 <perlinger (a] ntp.org>
786 1.1.1.16.4.1 perseant [Bug 3408] refclock_jjy.c: Avoid a wrong report of the coverity static
787 1.1.1.16.4.1 perseant analysis tool. <abe (a] ntp.org>
788 1.1.1.16.4.1 perseant [Bug 3405] update-leap.in: general cleanup, HTTPS support. Paul McMath.
789 1.1.1.16.4.1 perseant [Bug 3404] Fix openSSL DLL usage under Windows <perlinger (a] ntp.org>
790 1.1.1.16.4.1 perseant - fix/drop assumptions on OpenSSL libs directory layout
791 1.1.1.16.4.1 perseant [Bug 3399] NTP: linker error in 4.2.8p10 during Linux cross-compilation
792 1.1.1.16.4.1 perseant - initial patch by timeflies (a] mail2tor.com <perlinger (a] ntp.org>
793 1.1.1.16.4.1 perseant [Bug 3398] tests fail with core dump <perlinger (a] ntp.org>
794 1.1.1.16.4.1 perseant - patch contributed by Alexander Bluhm
795 1.1.1.16.4.1 perseant [Bug 3397] ctl_putstr() asserts that data fits in its buffer
796 1.1.1.16.4.1 perseant rework of formatting & data transfer stuff in 'ntp_control.c'
797 1.1.1.16.4.1 perseant avoids unecessary buffers and size limitations. <perlinger (a] ntp.org>
798 1.1.1.16.4.1 perseant [Bug 3394] Leap second deletion does not work on ntpd clients
799 1.1.1.16.4.1 perseant - fixed handling of dynamic deletion w/o leap file <perlinger (a] ntp.org>
800 1.1.1.16.4.1 perseant [Bug 3391] ntpd segfaults on startup due to small warmup thread stack size
801 1.1.1.16.4.1 perseant - increased mimimum stack size to 32kB <perlinger (a] ntp.org>
802 1.1.1.16.4.1 perseant [Bug 3367] Faulty LinuxPPS NMEA clock support in 4.2.8 <perlinger (a] ntp.org>
803 1.1.1.16.4.1 perseant - reverted handling of PPS kernel consumer to 4.2.6 behavior
804 1.1.1.16.4.1 perseant [Bug 3365] Updates driver40(-ja).html and miscopt.html <abe (a] ntp.org>
805 1.1.1.16.4.1 perseant [Bug 3358] Spurious KoD log messages in .INIT. phase. HStenn.
806 1.1.1.16.4.1 perseant [Bug 3016] wrong error position reported for bad ":config pool"
807 1.1.1.16.4.1 perseant - fixed location counter & ntpq output <perlinger (a] ntp.org>
808 1.1.1.16.4.1 perseant [Bug 2900] libntp build order problem. HStenn.
809 1.1.1.16.4.1 perseant [Bug 2878] Tests are cluttering up syslog <perlinger (a] ntp.org>
810 1.1.1.16.4.1 perseant [Bug 2737] Wrong phone number listed for USNO. ntp-bugs (a] bodosom.net,
811 1.1.1.16.4.1 perseant perlinger (a] ntp.org
812 1.1.1.16.4.1 perseant [Bug 2557] Fix Thunderbolt init. ntp-bugs (a] bodosom.net, perlinger@ntp.
813 1.1.1.16.4.1 perseant [Bug 948] Trustedkey config directive leaks memory. <perlinger (a] ntp.org>
814 1.1.1.16.4.1 perseant Use strlcpy() to copy strings, not memcpy(). HStenn.
815 1.1.1.16.4.1 perseant Typos. HStenn.
816 1.1.1.16.4.1 perseant test_ntp_scanner_LDADD needs ntpd/ntp_io.o. HStenn.
817 1.1.1.16.4.1 perseant refclock_jjy.c: Add missing "%s" to an msyslog() call. HStenn.
818 1.1.1.16.4.1 perseant Build ntpq and libntpq.a with NTP_HARD_*FLAGS. perlinger (a] ntp.org
819 1.1.1.16.4.1 perseant Fix trivial warnings from 'make check'. perlinger (a] ntp.org
820 1.1.1.16.4.1 perseant Fix bug in the override portion of the compiler hardening macro. HStenn.
821 1.1.1.16.4.1 perseant record_raw_stats(): Log entire packet. Log writes. HStenn.
822 1.1.1.16.4.1 perseant AES-128-CMAC support. BInglis, HStenn, JPerlinger.
823 1.1.1.16.4.1 perseant sntp: tweak key file logging. HStenn.
824 1.1.1.16.4.1 perseant sntp: pkt_output(): Improve debug output. HStenn.
825 1.1.1.16.4.1 perseant update-leap: updates from Paul McMath.
826 1.1.1.16.4.1 perseant When using pkg-config, report --modversion. HStenn.
827 1.1.1.16.4.1 perseant Clean up libevent configure checks. HStenn.
828 1.1.1.16.4.1 perseant sntp: show the IP of who sent us a crypto-NAK. HStenn.
829 1.1.1.16.4.1 perseant Allow .../N to specify subnet bits for IPs in ntp.keys. HStenn, JPerlinger.
830 1.1.1.16.4.1 perseant authistrustedip() - use it in more places. HStenn, JPerlinger.
831 1.1.1.16.4.1 perseant New sysstats: sys_lamport, sys_tsrounding. HStenn.
832 1.1.1.16.4.1 perseant Update ntp.keys .../N documentation. HStenn.
833 1.1.1.16.4.1 perseant Distribute testconf.yml. HStenn.
834 1.1.1.16.4.1 perseant Add DPRINTF(2,...) lines to receive() for packet drops. HStenn.
835 1.1.1.16.4.1 perseant Rename the configuration flag fifo variables. HStenn.
836 1.1.1.16.4.1 perseant Improve saveconfig output. HStenn.
837 1.1.1.16.4.1 perseant Decode restrict flags on receive() debug output. HStenn.
838 1.1.1.16.4.1 perseant Decode interface flags on receive() debug output. HStenn.
839 1.1.1.16.4.1 perseant Warn the user if deprecated "driftfile name WanderThreshold" is used. HStenn.
840 1.1.1.16.4.1 perseant Update the documentation in ntp.conf.def . HStenn.
841 1.1.1.16.4.1 perseant restrictions() must return restrict flags and ippeerlimit. HStenn.
842 1.1.1.16.4.1 perseant Update ntpq peer documentation to describe the 'p' type. HStenn.
843 1.1.1.16.4.1 perseant Rename restrict 'flags' to 'rflags. Use an enum for the values. HStenn.
844 1.1.1.16.4.1 perseant Provide dump_restricts() for debugging. HStenn.
845 1.1.1.16.4.1 perseant Use consistent 4th arg type for [gs]etsockopt. JPerlinger.
846 1.1.1.16.4.1 perseant
847 1.1.1.16.4.1 perseant * Other items:
848 1.1.1.16.4.1 perseant
849 1.1.1.16.4.1 perseant * update-leap needs the following perl modules:
850 1.1.1.16.4.1 perseant Net::SSLeay
851 1.1.1.16.4.1 perseant IO::Socket::SSL
852 1.1.1.16.4.1 perseant
853 1.1.1.16.4.1 perseant * New sysstats variables: sys_lamport, sys_tsrounding
854 1.1.1.16.4.1 perseant See them with: ntpq -c "rv 0 ss_lamport,ss_tsrounding"
855 1.1.1.16.4.1 perseant sys_lamport counts the number of observed Lamport violations, while
856 1.1.1.16.4.1 perseant sys_tsrounding counts observed timestamp rounding events.
857 1.1.1.16.4.1 perseant
858 1.1.1.16.4.1 perseant * New ntp.conf items:
859 1.1.1.16.4.1 perseant
860 1.1.1.16.4.1 perseant - restrict ... noepeer
861 1.1.1.16.4.1 perseant - restrict ... ippeerlimit N
862 1.1.1.16.4.1 perseant
863 1.1.1.16.4.1 perseant The 'noepeer' directive will disallow all ephemeral/passive peer
864 1.1.1.16.4.1 perseant requests.
865 1.1.1.16.4.1 perseant
866 1.1.1.16.4.1 perseant The 'ippeerlimit' directive limits the number of time associations
867 1.1.1.16.4.1 perseant for each IP in the designated set of addresses. This limit does not
868 1.1.1.16.4.1 perseant apply to explicitly-configured associations. A value of -1, the current
869 1.1.1.16.4.1 perseant default, means an unlimited number of associations may connect from a
870 1.1.1.16.4.1 perseant single IP. 0 means "none", etc. Ordinarily the only way multiple
871 1.1.1.16.4.1 perseant associations would come from the same IP would be if the remote side
872 1.1.1.16.4.1 perseant was using a proxy. But a trusted machine might become compromised,
873 1.1.1.16.4.1 perseant in which case an attacker might spin up multiple authenticated sessions
874 1.1.1.16.4.1 perseant from different ports. This directive should be helpful in this case.
875 1.1.1.16.4.1 perseant
876 1.1.1.16.4.1 perseant * New ntp.keys feature: Each IP in the optional list of IPs in the 4th
877 1.1.1.16.4.1 perseant field may contain a /subnetbits specification, which identifies the
878 1.1.1.16.4.1 perseant scope of IPs that may use this key. This IP/subnet restriction can be
879 1.1.1.16.4.1 perseant used to limit the IPs that may use the key in most all situations where
880 1.1.1.16.4.1 perseant a key is used.
881 1.1.1.16.4.1 perseant --
882 1.1.1.16.4.1 perseant NTP 4.2.8p10 (Harlan Stenn <stenn (a] ntp.org>, 2017/03/21)
883 1.1.1.16.4.1 perseant
884 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
885 1.1.1.16.4.1 perseant
886 1.1.1.16.4.1 perseant Severity: MEDIUM
887 1.1.1.16.4.1 perseant
888 1.1.1.16.4.1 perseant This release fixes 5 medium-, 6 low-, and 4 informational-severity
889 1.1.1.16.4.1 perseant vulnerabilities, and provides 15 other non-security fixes and improvements:
890 1.1.1.16.4.1 perseant
891 1.1.1.16.4.1 perseant * NTP-01-016 NTP: Denial of Service via Malformed Config (Medium)
892 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
893 1.1.1.16.4.1 perseant References: Sec 3389 / CVE-2017-6464 / VU#325339
894 1.1.1.16.4.1 perseant Affects: All versions of NTP-4, up to but not including ntp-4.2.8p10, and
895 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
896 1.1.1.16.4.1 perseant CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
897 1.1.1.16.4.1 perseant CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
898 1.1.1.16.4.1 perseant Summary:
899 1.1.1.16.4.1 perseant A vulnerability found in the NTP server makes it possible for an
900 1.1.1.16.4.1 perseant authenticated remote user to crash ntpd via a malformed mode
901 1.1.1.16.4.1 perseant configuration directive.
902 1.1.1.16.4.1 perseant Mitigation:
903 1.1.1.16.4.1 perseant Implement BCP-38.
904 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
905 1.1.1.16.4.1 perseant the NTP Public Services Project Download Page
906 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
907 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
908 1.1.1.16.4.1 perseant Credit:
909 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
910 1.1.1.16.4.1 perseant
911 1.1.1.16.4.1 perseant * NTP-01-014 NTP: Buffer Overflow in DPTS Clock (Low)
912 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
913 1.1.1.16.4.1 perseant References: Sec 3388 / CVE-2017-6462 / VU#325339
914 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not including ntp-4.3.94.
915 1.1.1.16.4.1 perseant CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
916 1.1.1.16.4.1 perseant CVSS3: Low 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
917 1.1.1.16.4.1 perseant Summary:
918 1.1.1.16.4.1 perseant There is a potential for a buffer overflow in the legacy Datum
919 1.1.1.16.4.1 perseant Programmable Time Server refclock driver. Here the packets are
920 1.1.1.16.4.1 perseant processed from the /dev/datum device and handled in
921 1.1.1.16.4.1 perseant datum_pts_receive(). Since an attacker would be required to
922 1.1.1.16.4.1 perseant somehow control a malicious /dev/datum device, this does not
923 1.1.1.16.4.1 perseant appear to be a practical attack and renders this issue "Low" in
924 1.1.1.16.4.1 perseant terms of severity.
925 1.1.1.16.4.1 perseant Mitigation:
926 1.1.1.16.4.1 perseant If you have a Datum reference clock installed and think somebody
927 1.1.1.16.4.1 perseant may maliciously change the device, upgrade to 4.2.8p10, or
928 1.1.1.16.4.1 perseant later, from the NTP Project Download Page or the NTP Public
929 1.1.1.16.4.1 perseant Services Project Download Page
930 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
931 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
932 1.1.1.16.4.1 perseant Credit:
933 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
934 1.1.1.16.4.1 perseant
935 1.1.1.16.4.1 perseant * NTP-01-012 NTP: Authenticated DoS via Malicious Config Option (Medium)
936 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
937 1.1.1.16.4.1 perseant References: Sec 3387 / CVE-2017-6463 / VU#325339
938 1.1.1.16.4.1 perseant Affects: All versions of ntp, up to but not including ntp-4.2.8p10, and
939 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
940 1.1.1.16.4.1 perseant CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
941 1.1.1.16.4.1 perseant CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
942 1.1.1.16.4.1 perseant Summary:
943 1.1.1.16.4.1 perseant A vulnerability found in the NTP server allows an authenticated
944 1.1.1.16.4.1 perseant remote attacker to crash the daemon by sending an invalid setting
945 1.1.1.16.4.1 perseant via the :config directive. The unpeer option expects a number or
946 1.1.1.16.4.1 perseant an address as an argument. In case the value is "0", a
947 1.1.1.16.4.1 perseant segmentation fault occurs.
948 1.1.1.16.4.1 perseant Mitigation:
949 1.1.1.16.4.1 perseant Implement BCP-38.
950 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
951 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
952 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
953 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
954 1.1.1.16.4.1 perseant Credit:
955 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
956 1.1.1.16.4.1 perseant
957 1.1.1.16.4.1 perseant * NTP-01-011 NTP: ntpq_stripquotes() returns incorrect value (Informational)
958 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
959 1.1.1.16.4.1 perseant References: Sec 3386
960 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
961 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
962 1.1.1.16.4.1 perseant CVSS2: None 0.0 (AV:N/AC:H/Au:N/C:N/I:N/A:N)
963 1.1.1.16.4.1 perseant CVSS3: None 0.0 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:N
964 1.1.1.16.4.1 perseant Summary:
965 1.1.1.16.4.1 perseant The NTP Mode 6 monitoring and control client, ntpq, uses the
966 1.1.1.16.4.1 perseant function ntpq_stripquotes() to remove quotes and escape characters
967 1.1.1.16.4.1 perseant from a given string. According to the documentation, the function
968 1.1.1.16.4.1 perseant is supposed to return the number of copied bytes but due to
969 1.1.1.16.4.1 perseant incorrect pointer usage this value is always zero. Although the
970 1.1.1.16.4.1 perseant return value of this function is never used in the code, this
971 1.1.1.16.4.1 perseant flaw could lead to a vulnerability in the future. Since relying
972 1.1.1.16.4.1 perseant on wrong return values when performing memory operations is a
973 1.1.1.16.4.1 perseant dangerous practice, it is recommended to return the correct value
974 1.1.1.16.4.1 perseant in accordance with the documentation pertinent to the code.
975 1.1.1.16.4.1 perseant Mitigation:
976 1.1.1.16.4.1 perseant Implement BCP-38.
977 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
978 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
979 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
980 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
981 1.1.1.16.4.1 perseant Credit:
982 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
983 1.1.1.16.4.1 perseant
984 1.1.1.16.4.1 perseant * NTP-01-010 NTP: ereallocarray()/eallocarray() underused (Info)
985 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
986 1.1.1.16.4.1 perseant References: Sec 3385
987 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
988 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
989 1.1.1.16.4.1 perseant Summary:
990 1.1.1.16.4.1 perseant NTP makes use of several wrappers around the standard heap memory
991 1.1.1.16.4.1 perseant allocation functions that are provided by libc. This is mainly
992 1.1.1.16.4.1 perseant done to introduce additional safety checks concentrated on
993 1.1.1.16.4.1 perseant several goals. First, they seek to ensure that memory is not
994 1.1.1.16.4.1 perseant accidentally freed, secondly they verify that a correct amount
995 1.1.1.16.4.1 perseant is always allocated and, thirdly, that allocation failures are
996 1.1.1.16.4.1 perseant correctly handled. There is an additional implementation for
997 1.1.1.16.4.1 perseant scenarios where memory for a specific amount of items of the
998 1.1.1.16.4.1 perseant same size needs to be allocated. The handling can be found in
999 1.1.1.16.4.1 perseant the oreallocarray() function for which a further number-of-elements
1000 1.1.1.16.4.1 perseant parameter needs to be provided. Although no considerable threat
1001 1.1.1.16.4.1 perseant was identified as tied to a lack of use of this function, it is
1002 1.1.1.16.4.1 perseant recommended to correctly apply oreallocarray() as a preferred
1003 1.1.1.16.4.1 perseant option across all of the locations where it is possible.
1004 1.1.1.16.4.1 perseant Mitigation:
1005 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1006 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1007 1.1.1.16.4.1 perseant Credit:
1008 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1009 1.1.1.16.4.1 perseant
1010 1.1.1.16.4.1 perseant * NTP-01-009 NTP: Privileged execution of User Library code (WINDOWS
1011 1.1.1.16.4.1 perseant PPSAPI ONLY) (Low)
1012 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1013 1.1.1.16.4.1 perseant References: Sec 3384 / CVE-2017-6455 / VU#325339
1014 1.1.1.16.4.1 perseant Affects: All Windows versions of ntp-4 that use the PPSAPI, up to but
1015 1.1.1.16.4.1 perseant not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not
1016 1.1.1.16.4.1 perseant including ntp-4.3.94.
1017 1.1.1.16.4.1 perseant CVSS2: MED 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
1018 1.1.1.16.4.1 perseant CVSS3: MED 4.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1019 1.1.1.16.4.1 perseant Summary:
1020 1.1.1.16.4.1 perseant The Windows NT port has the added capability to preload DLLs
1021 1.1.1.16.4.1 perseant defined in the inherited global local environment variable
1022 1.1.1.16.4.1 perseant PPSAPI_DLLS. The code contained within those libraries is then
1023 1.1.1.16.4.1 perseant called from the NTPD service, usually running with elevated
1024 1.1.1.16.4.1 perseant privileges. Depending on how securely the machine is setup and
1025 1.1.1.16.4.1 perseant configured, if ntpd is configured to use the PPSAPI under Windows
1026 1.1.1.16.4.1 perseant this can easily lead to a code injection.
1027 1.1.1.16.4.1 perseant Mitigation:
1028 1.1.1.16.4.1 perseant Implement BCP-38.
1029 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1030 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1031 1.1.1.16.4.1 perseant Credit:
1032 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1033 1.1.1.16.4.1 perseant
1034 1.1.1.16.4.1 perseant * NTP-01-008 NTP: Stack Buffer Overflow from Command Line (WINDOWS
1035 1.1.1.16.4.1 perseant installer ONLY) (Low)
1036 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1037 1.1.1.16.4.1 perseant References: Sec 3383 / CVE-2017-6452 / VU#325339
1038 1.1.1.16.4.1 perseant Affects: WINDOWS installer ONLY: All versions of the ntp-4 Windows
1039 1.1.1.16.4.1 perseant installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up
1040 1.1.1.16.4.1 perseant to, but not including ntp-4.3.94.
1041 1.1.1.16.4.1 perseant CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
1042 1.1.1.16.4.1 perseant CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
1043 1.1.1.16.4.1 perseant Summary:
1044 1.1.1.16.4.1 perseant The Windows installer for NTP calls strcat(), blindly appending
1045 1.1.1.16.4.1 perseant the string passed to the stack buffer in the addSourceToRegistry()
1046 1.1.1.16.4.1 perseant function. The stack buffer is 70 bytes smaller than the buffer
1047 1.1.1.16.4.1 perseant in the calling main() function. Together with the initially
1048 1.1.1.16.4.1 perseant copied Registry path, the combination causes a stack buffer
1049 1.1.1.16.4.1 perseant overflow and effectively overwrites the stack frame. The
1050 1.1.1.16.4.1 perseant passed application path is actually limited to 256 bytes by the
1051 1.1.1.16.4.1 perseant operating system, but this is not sufficient to assure that the
1052 1.1.1.16.4.1 perseant affected stack buffer is consistently protected against
1053 1.1.1.16.4.1 perseant overflowing at all times.
1054 1.1.1.16.4.1 perseant Mitigation:
1055 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1056 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1057 1.1.1.16.4.1 perseant Credit:
1058 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1059 1.1.1.16.4.1 perseant
1060 1.1.1.16.4.1 perseant * NTP-01-007 NTP: Data Structure terminated insufficiently (WINDOWS
1061 1.1.1.16.4.1 perseant installer ONLY) (Low)
1062 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1063 1.1.1.16.4.1 perseant References: Sec 3382 / CVE-2017-6459 / VU#325339
1064 1.1.1.16.4.1 perseant Affects: WINDOWS installer ONLY: All ntp-4 versions of the Windows
1065 1.1.1.16.4.1 perseant installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0
1066 1.1.1.16.4.1 perseant up to, but not including ntp-4.3.94.
1067 1.1.1.16.4.1 perseant CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
1068 1.1.1.16.4.1 perseant CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
1069 1.1.1.16.4.1 perseant Summary:
1070 1.1.1.16.4.1 perseant The Windows installer for NTP calls strcpy() with an argument
1071 1.1.1.16.4.1 perseant that specifically contains multiple null bytes. strcpy() only
1072 1.1.1.16.4.1 perseant copies a single terminating null character into the target
1073 1.1.1.16.4.1 perseant buffer instead of copying the required double null bytes in the
1074 1.1.1.16.4.1 perseant addKeysToRegistry() function. As a consequence, a garbage
1075 1.1.1.16.4.1 perseant registry entry can be created. The additional arsize parameter
1076 1.1.1.16.4.1 perseant is erroneously set to contain two null bytes and the following
1077 1.1.1.16.4.1 perseant call to RegSetValueEx() claims to be passing in a multi-string
1078 1.1.1.16.4.1 perseant value, though this may not be true.
1079 1.1.1.16.4.1 perseant Mitigation:
1080 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1081 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1082 1.1.1.16.4.1 perseant Credit:
1083 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1084 1.1.1.16.4.1 perseant
1085 1.1.1.16.4.1 perseant * NTP-01-006 NTP: Copious amounts of Unused Code (Informational)
1086 1.1.1.16.4.1 perseant References: Sec 3381
1087 1.1.1.16.4.1 perseant Summary:
1088 1.1.1.16.4.1 perseant The report says: Statically included external projects
1089 1.1.1.16.4.1 perseant potentially introduce several problems and the issue of having
1090 1.1.1.16.4.1 perseant extensive amounts of code that is "dead" in the resulting binary
1091 1.1.1.16.4.1 perseant must clearly be pointed out. The unnecessary unused code may or
1092 1.1.1.16.4.1 perseant may not contain bugs and, quite possibly, might be leveraged for
1093 1.1.1.16.4.1 perseant code-gadget-based branch-flow redirection exploits. Analogically,
1094 1.1.1.16.4.1 perseant having source trees statically included as well means a failure
1095 1.1.1.16.4.1 perseant in taking advantage of the free feature for periodical updates.
1096 1.1.1.16.4.1 perseant This solution is offered by the system's Package Manager. The
1097 1.1.1.16.4.1 perseant three libraries identified are libisc, libevent, and libopts.
1098 1.1.1.16.4.1 perseant Resolution:
1099 1.1.1.16.4.1 perseant For libisc, we already only use a portion of the original library.
1100 1.1.1.16.4.1 perseant We've found and fixed bugs in the original implementation (and
1101 1.1.1.16.4.1 perseant offered the patches to ISC), and plan to see what has changed
1102 1.1.1.16.4.1 perseant since we last upgraded the code. libisc is generally not
1103 1.1.1.16.4.1 perseant installed, and when it it we usually only see the static libisc.a
1104 1.1.1.16.4.1 perseant file installed. Until we know for sure that the bugs we've found
1105 1.1.1.16.4.1 perseant and fixed are fixed upstream, we're better off with the copy we
1106 1.1.1.16.4.1 perseant are using.
1107 1.1.1.16.4.1 perseant
1108 1.1.1.16.4.1 perseant Version 1 of libevent was the only production version available
1109 1.1.1.16.4.1 perseant until recently, and we've been requiring version 2 for a long time.
1110 1.1.1.16.4.1 perseant But if the build system has at least version 2 of libevent
1111 1.1.1.16.4.1 perseant installed, we'll use the version that is installed on the system.
1112 1.1.1.16.4.1 perseant Otherwise, we provide a copy of libevent that we know works.
1113 1.1.1.16.4.1 perseant
1114 1.1.1.16.4.1 perseant libopts is provided by GNU AutoGen, and that library and package
1115 1.1.1.16.4.1 perseant undergoes frequent API version updates. The version of autogen
1116 1.1.1.16.4.1 perseant used to generate the tables for the code must match the API
1117 1.1.1.16.4.1 perseant version in libopts. AutoGen can be ... difficult to build and
1118 1.1.1.16.4.1 perseant install, and very few developers really need it. So we have it
1119 1.1.1.16.4.1 perseant on our build and development machines, and we provide the
1120 1.1.1.16.4.1 perseant specific version of the libopts code in the distribution to make
1121 1.1.1.16.4.1 perseant sure that the proper API version of libopts is available.
1122 1.1.1.16.4.1 perseant
1123 1.1.1.16.4.1 perseant As for the point about there being code in these libraries that
1124 1.1.1.16.4.1 perseant NTP doesn't use, OK. But other packages used these libraries as
1125 1.1.1.16.4.1 perseant well, and it is reasonable to assume that other people are paying
1126 1.1.1.16.4.1 perseant attention to security and code quality issues for the overall
1127 1.1.1.16.4.1 perseant libraries. It takes significant resources to analyze and
1128 1.1.1.16.4.1 perseant customize these libraries to only include what we need, and to
1129 1.1.1.16.4.1 perseant date we believe the cost of this effort does not justify the benefit.
1130 1.1.1.16.4.1 perseant Credit:
1131 1.1.1.16.4.1 perseant This issue was discovered by Cure53.
1132 1.1.1.16.4.1 perseant
1133 1.1.1.16.4.1 perseant * NTP-01-005 NTP: Off-by-one in Oncore GPS Receiver (Low)
1134 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1135 1.1.1.16.4.1 perseant References: Sec 3380
1136 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
1137 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1138 1.1.1.16.4.1 perseant CVSS2: None 0.0 (AV:L/AC:H/Au:N/C:N/I:N/A:N)
1139 1.1.1.16.4.1 perseant CVSS3: None 0.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:N
1140 1.1.1.16.4.1 perseant Summary:
1141 1.1.1.16.4.1 perseant There is a fencepost error in a "recovery branch" of the code for
1142 1.1.1.16.4.1 perseant the Oncore GPS receiver if the communication link to the ONCORE
1143 1.1.1.16.4.1 perseant is weak / distorted and the decoding doesn't work.
1144 1.1.1.16.4.1 perseant Mitigation:
1145 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
1146 1.1.1.16.4.1 perseant the NTP Public Services Project Download Page
1147 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
1148 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
1149 1.1.1.16.4.1 perseant Credit:
1150 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1151 1.1.1.16.4.1 perseant
1152 1.1.1.16.4.1 perseant * NTP-01-004 NTP: Potential Overflows in ctl_put() functions (Medium)
1153 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1154 1.1.1.16.4.1 perseant References: Sec 3379 / CVE-2017-6458 / VU#325339
1155 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
1156 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1157 1.1.1.16.4.1 perseant CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
1158 1.1.1.16.4.1 perseant CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1159 1.1.1.16.4.1 perseant Summary:
1160 1.1.1.16.4.1 perseant ntpd makes use of different wrappers around ctl_putdata() to
1161 1.1.1.16.4.1 perseant create name/value ntpq (mode 6) response strings. For example,
1162 1.1.1.16.4.1 perseant ctl_putstr() is usually used to send string data (variable names
1163 1.1.1.16.4.1 perseant or string data). The formatting code was missing a length check
1164 1.1.1.16.4.1 perseant for variable names. If somebody explicitly created any unusually
1165 1.1.1.16.4.1 perseant long variable names in ntpd (longer than 200-512 bytes, depending
1166 1.1.1.16.4.1 perseant on the type of variable), then if any of these variables are
1167 1.1.1.16.4.1 perseant added to the response list it would overflow a buffer.
1168 1.1.1.16.4.1 perseant Mitigation:
1169 1.1.1.16.4.1 perseant Implement BCP-38.
1170 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1171 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1172 1.1.1.16.4.1 perseant If you don't want to upgrade, then don't setvar variable names
1173 1.1.1.16.4.1 perseant longer than 200-512 bytes in your ntp.conf file.
1174 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
1175 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
1176 1.1.1.16.4.1 perseant Credit:
1177 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1178 1.1.1.16.4.1 perseant
1179 1.1.1.16.4.1 perseant * NTP-01-003 NTP: Improper use of snprintf() in mx4200_send() (Low)
1180 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1181 1.1.1.16.4.1 perseant References: Sec 3378 / CVE-2017-6451 / VU#325339
1182 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
1183 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1184 1.1.1.16.4.1 perseant CVSS2: LOW 0.8 (AV:L/AC:H/Au:M/C:N/I:N/A:P)
1185 1.1.1.16.4.1 perseant CVSS3: LOW 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N
1186 1.1.1.16.4.1 perseant Summary:
1187 1.1.1.16.4.1 perseant The legacy MX4200 refclock is only built if is specifically
1188 1.1.1.16.4.1 perseant enabled, and furthermore additional code changes are required to
1189 1.1.1.16.4.1 perseant compile and use it. But it uses the libc functions snprintf()
1190 1.1.1.16.4.1 perseant and vsnprintf() incorrectly, which can lead to an out-of-bounds
1191 1.1.1.16.4.1 perseant memory write due to an improper handling of the return value of
1192 1.1.1.16.4.1 perseant snprintf()/vsnprintf(). Since the return value is used as an
1193 1.1.1.16.4.1 perseant iterator and it can be larger than the buffer's size, it is
1194 1.1.1.16.4.1 perseant possible for the iterator to point somewhere outside of the
1195 1.1.1.16.4.1 perseant allocated buffer space. This results in an out-of-bound memory
1196 1.1.1.16.4.1 perseant write. This behavior can be leveraged to overwrite a saved
1197 1.1.1.16.4.1 perseant instruction pointer on the stack and gain control over the
1198 1.1.1.16.4.1 perseant execution flow. During testing it was not possible to identify
1199 1.1.1.16.4.1 perseant any malicious usage for this vulnerability. Specifically, no
1200 1.1.1.16.4.1 perseant way for an attacker to exploit this vulnerability was ultimately
1201 1.1.1.16.4.1 perseant unveiled. However, it has the potential to be exploited, so the
1202 1.1.1.16.4.1 perseant code should be fixed.
1203 1.1.1.16.4.1 perseant Mitigation, if you have a Magnavox MX4200 refclock:
1204 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1205 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
1206 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
1207 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
1208 1.1.1.16.4.1 perseant Credit:
1209 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1210 1.1.1.16.4.1 perseant
1211 1.1.1.16.4.1 perseant * NTP-01-002 NTP: Buffer Overflow in ntpq when fetching reslist from a
1212 1.1.1.16.4.1 perseant malicious ntpd (Medium)
1213 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1214 1.1.1.16.4.1 perseant References: Sec 3377 / CVE-2017-6460 / VU#325339
1215 1.1.1.16.4.1 perseant Affects: All versions of ntpq, up to but not including ntp-4.2.8p10, and
1216 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1217 1.1.1.16.4.1 perseant CVSS2: MED 4.9 (AV:N/AC:H/Au:S/C:N/I:N/A:C)
1218 1.1.1.16.4.1 perseant CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1219 1.1.1.16.4.1 perseant Summary:
1220 1.1.1.16.4.1 perseant A stack buffer overflow in ntpq can be triggered by a malicious
1221 1.1.1.16.4.1 perseant ntpd server when ntpq requests the restriction list from the server.
1222 1.1.1.16.4.1 perseant This is due to a missing length check in the reslist() function.
1223 1.1.1.16.4.1 perseant It occurs whenever the function parses the server's response and
1224 1.1.1.16.4.1 perseant encounters a flagstr variable of an excessive length. The string
1225 1.1.1.16.4.1 perseant will be copied into a fixed-size buffer, leading to an overflow on
1226 1.1.1.16.4.1 perseant the function's stack-frame. Note well that this problem requires
1227 1.1.1.16.4.1 perseant a malicious server, and affects ntpq, not ntpd.
1228 1.1.1.16.4.1 perseant Mitigation:
1229 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1230 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1231 1.1.1.16.4.1 perseant If you can't upgrade your version of ntpq then if you want to know
1232 1.1.1.16.4.1 perseant the reslist of an instance of ntpd that you do not control,
1233 1.1.1.16.4.1 perseant know that if the target ntpd is malicious that it can send back
1234 1.1.1.16.4.1 perseant a response that intends to crash your ntpq process.
1235 1.1.1.16.4.1 perseant Credit:
1236 1.1.1.16.4.1 perseant This weakness was discovered by Cure53.
1237 1.1.1.16.4.1 perseant
1238 1.1.1.16.4.1 perseant * NTP-01-001 NTP: Makefile does not enforce Security Flags (Informational)
1239 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1240 1.1.1.16.4.1 perseant References: Sec 3376
1241 1.1.1.16.4.1 perseant Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
1242 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1243 1.1.1.16.4.1 perseant CVSS2: N/A
1244 1.1.1.16.4.1 perseant CVSS3: N/A
1245 1.1.1.16.4.1 perseant Summary:
1246 1.1.1.16.4.1 perseant The build process for NTP has not, by default, provided compile
1247 1.1.1.16.4.1 perseant or link flags to offer "hardened" security options. Package
1248 1.1.1.16.4.1 perseant maintainers have always been able to provide hardening security
1249 1.1.1.16.4.1 perseant flags for their builds. As of ntp-4.2.8p10, the NTP build
1250 1.1.1.16.4.1 perseant system has a way to provide OS-specific hardening flags. Please
1251 1.1.1.16.4.1 perseant note that this is still not a really great solution because it
1252 1.1.1.16.4.1 perseant is specific to NTP builds. It's inefficient to have every
1253 1.1.1.16.4.1 perseant package supply, track and maintain this information for every
1254 1.1.1.16.4.1 perseant target build. It would be much better if there was a common way
1255 1.1.1.16.4.1 perseant for OSes to provide this information in a way that arbitrary
1256 1.1.1.16.4.1 perseant packages could benefit from it.
1257 1.1.1.16.4.1 perseant Mitigation:
1258 1.1.1.16.4.1 perseant Implement BCP-38.
1259 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1260 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1261 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
1262 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
1263 1.1.1.16.4.1 perseant Credit:
1264 1.1.1.16.4.1 perseant This weakness was reported by Cure53.
1265 1.1.1.16.4.1 perseant
1266 1.1.1.16.4.1 perseant * 0rigin DoS (Medium)
1267 1.1.1.16.4.1 perseant Date Resolved: 21 Mar 2017
1268 1.1.1.16.4.1 perseant References: Sec 3361 / CVE-2016-9042 / VU#325339
1269 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p9 (21 Nov 2016), up to but not including ntp-4.2.8p10
1270 1.1.1.16.4.1 perseant CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C) (worst case)
1271 1.1.1.16.4.1 perseant CVSS3: MED 4.4 CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H (worst case)
1272 1.1.1.16.4.1 perseant Summary:
1273 1.1.1.16.4.1 perseant An exploitable denial of service vulnerability exists in the
1274 1.1.1.16.4.1 perseant origin timestamp check functionality of ntpd 4.2.8p9. A specially
1275 1.1.1.16.4.1 perseant crafted unauthenticated network packet can be used to reset the
1276 1.1.1.16.4.1 perseant expected origin timestamp for target peers. Legitimate replies
1277 1.1.1.16.4.1 perseant from targeted peers will fail the origin timestamp check (TEST2)
1278 1.1.1.16.4.1 perseant causing the reply to be dropped and creating a denial of service
1279 1.1.1.16.4.1 perseant condition. This vulnerability can only be exploited if the
1280 1.1.1.16.4.1 perseant attacker can spoof all of the servers.
1281 1.1.1.16.4.1 perseant Mitigation:
1282 1.1.1.16.4.1 perseant Implement BCP-38.
1283 1.1.1.16.4.1 perseant Configure enough servers/peers that an attacker cannot target
1284 1.1.1.16.4.1 perseant all of your time sources.
1285 1.1.1.16.4.1 perseant Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
1286 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1287 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart
1288 1.1.1.16.4.1 perseant ntpd (without -g) if it stops running.
1289 1.1.1.16.4.1 perseant Credit:
1290 1.1.1.16.4.1 perseant This weakness was discovered by Matthew Van Gundy of Cisco.
1291 1.1.1.16.4.1 perseant
1292 1.1.1.16.4.1 perseant Other fixes:
1293 1.1.1.16.4.1 perseant
1294 1.1.1.16.4.1 perseant * [Bug 3393] clang scan-build findings <perlinger (a] ntp.org>
1295 1.1.1.16.4.1 perseant * [Bug 3363] Support for openssl-1.1.0 without compatibility modes
1296 1.1.1.16.4.1 perseant - rework of patch set from <ntp.org (a] eroen.eu>. <perlinger (a] ntp.org>
1297 1.1.1.16.4.1 perseant * [Bug 3356] Bugfix 3072 breaks multicastclient <perlinger (a] ntp.org>
1298 1.1.1.16.4.1 perseant * [Bug 3216] libntp audio ioctl() args incorrectly cast to int
1299 1.1.1.16.4.1 perseant on 4.4BSD-Lite derived platforms <perlinger (a] ntp.org>
1300 1.1.1.16.4.1 perseant - original patch by Majdi S. Abbas
1301 1.1.1.16.4.1 perseant * [Bug 3215] 'make distcheck' fails with new BK repo format <perlinger (a] ntp.org>
1302 1.1.1.16.4.1 perseant * [Bug 3173] forking async worker: interrupted pipe I/O <perlinger (a] ntp.org>
1303 1.1.1.16.4.1 perseant - initial patch by Christos Zoulas
1304 1.1.1.16.4.1 perseant * [Bug 3139] (...) time_pps_create: Exec format error <perlinger (a] ntp.org>
1305 1.1.1.16.4.1 perseant - move loader API from 'inline' to proper source
1306 1.1.1.16.4.1 perseant - augment pathless dlls with absolute path to NTPD
1307 1.1.1.16.4.1 perseant - use 'msyslog()' instead of 'printf() 'for reporting trouble
1308 1.1.1.16.4.1 perseant * [Bug 3107] Incorrect Logic for Peer Event Limiting <perlinger (a] ntp.org>
1309 1.1.1.16.4.1 perseant - applied patch by Matthew Van Gundy
1310 1.1.1.16.4.1 perseant * [Bug 3065] Quiet warnings on NetBSD <perlinger (a] ntp.org>
1311 1.1.1.16.4.1 perseant - applied some of the patches provided by Havard. Not all of them
1312 1.1.1.16.4.1 perseant still match the current code base, and I did not touch libopt.
1313 1.1.1.16.4.1 perseant * [Bug 3062] Change the process name of forked DNS worker <perlinger (a] ntp.org>
1314 1.1.1.16.4.1 perseant - applied patch by Reinhard Max. See bugzilla for limitations.
1315 1.1.1.16.4.1 perseant * [Bug 2923] Trap Configuration Fail <perlinger (a] ntp.org>
1316 1.1.1.16.4.1 perseant - fixed dependency inversion from [Bug 2837]
1317 1.1.1.16.4.1 perseant * [Bug 2896] Nothing happens if minsane < maxclock < minclock
1318 1.1.1.16.4.1 perseant - produce ERROR log message about dysfunctional daemon. <perlinger (a] ntp.org>
1319 1.1.1.16.4.1 perseant * [Bug 2851] allow -4/-6 on restrict line with mask <perlinger (a] ntp.org>
1320 1.1.1.16.4.1 perseant - applied patch by Miroslav Lichvar for ntp4.2.6 compat
1321 1.1.1.16.4.1 perseant * [Bug 2645] out-of-bound pointers in ctl_putsys and decode_bitflags
1322 1.1.1.16.4.1 perseant - Fixed these and some more locations of this pattern.
1323 1.1.1.16.4.1 perseant Probably din't get them all, though. <perlinger (a] ntp.org>
1324 1.1.1.16.4.1 perseant * Update copyright year.
1325 1.1.1.16.4.1 perseant
1326 1.1.1.16.4.1 perseant --
1327 1.1.1.16.4.1 perseant (4.2.8p9-win) 2017/02/01 Released by Harlan Stenn <stenn (a] ntp.org>
1328 1.1.1.16.4.1 perseant
1329 1.1.1.16.4.1 perseant * [Bug 3144] NTP does not build without openSSL. <perlinger (a] ntp.org>
1330 1.1.1.16.4.1 perseant - added missed changeset for automatic openssl lib detection
1331 1.1.1.16.4.1 perseant - fixed some minor warning issues
1332 1.1.1.16.4.1 perseant * [Bug 3095] More compatibility with openssl 1.1. <perlinger (a] ntp.org>
1333 1.1.1.16.4.1 perseant * configure.ac cleanup. stenn (a] ntp.org
1334 1.1.1.16.4.1 perseant * openssl configure cleanup. stenn (a] ntp.org
1335 1.1.1.16.4.1 perseant
1336 1.1.1.16.4.1 perseant --
1337 1.1.1.16.4.1 perseant NTP 4.2.8p9 (Harlan Stenn <stenn (a] ntp.org>, 2016/11/21)
1338 1.1.1.16.4.1 perseant
1339 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
1340 1.1.1.16.4.1 perseant
1341 1.1.1.16.4.1 perseant Severity: HIGH
1342 1.1.1.16.4.1 perseant
1343 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
1344 1.1.1.16.4.1 perseant following 1 high- (Windows only), 2 medium-, 2 medium-/low, and
1345 1.1.1.16.4.1 perseant 5 low-severity vulnerabilities, and provides 28 other non-security
1346 1.1.1.16.4.1 perseant fixes and improvements:
1347 1.1.1.16.4.1 perseant
1348 1.1.1.16.4.1 perseant * Trap crash
1349 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1350 1.1.1.16.4.1 perseant References: Sec 3119 / CVE-2016-9311 / VU#633847
1351 1.1.1.16.4.1 perseant Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
1352 1.1.1.16.4.1 perseant including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
1353 1.1.1.16.4.1 perseant CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C)
1354 1.1.1.16.4.1 perseant CVSS3: MED 4.4 CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H
1355 1.1.1.16.4.1 perseant Summary:
1356 1.1.1.16.4.1 perseant ntpd does not enable trap service by default. If trap service
1357 1.1.1.16.4.1 perseant has been explicitly enabled, an attacker can send a specially
1358 1.1.1.16.4.1 perseant crafted packet to cause a null pointer dereference that will
1359 1.1.1.16.4.1 perseant crash ntpd, resulting in a denial of service.
1360 1.1.1.16.4.1 perseant Mitigation:
1361 1.1.1.16.4.1 perseant Implement BCP-38.
1362 1.1.1.16.4.1 perseant Use "restrict default noquery ..." in your ntp.conf file. Only
1363 1.1.1.16.4.1 perseant allow mode 6 queries from trusted networks and hosts.
1364 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1365 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1366 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1367 1.1.1.16.4.1 perseant (without -g) if it stops running.
1368 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
1369 1.1.1.16.4.1 perseant
1370 1.1.1.16.4.1 perseant * Mode 6 information disclosure and DDoS vector
1371 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1372 1.1.1.16.4.1 perseant References: Sec 3118 / CVE-2016-9310 / VU#633847
1373 1.1.1.16.4.1 perseant Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
1374 1.1.1.16.4.1 perseant including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
1375 1.1.1.16.4.1 perseant CVSS2: MED 6.4 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
1376 1.1.1.16.4.1 perseant CVSS3: MED 6.5 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1377 1.1.1.16.4.1 perseant Summary:
1378 1.1.1.16.4.1 perseant An exploitable configuration modification vulnerability exists
1379 1.1.1.16.4.1 perseant in the control mode (mode 6) functionality of ntpd. If, against
1380 1.1.1.16.4.1 perseant long-standing BCP recommendations, "restrict default noquery ..."
1381 1.1.1.16.4.1 perseant is not specified, a specially crafted control mode packet can set
1382 1.1.1.16.4.1 perseant ntpd traps, providing information disclosure and DDoS
1383 1.1.1.16.4.1 perseant amplification, and unset ntpd traps, disabling legitimate
1384 1.1.1.16.4.1 perseant monitoring. A remote, unauthenticated, network attacker can
1385 1.1.1.16.4.1 perseant trigger this vulnerability.
1386 1.1.1.16.4.1 perseant Mitigation:
1387 1.1.1.16.4.1 perseant Implement BCP-38.
1388 1.1.1.16.4.1 perseant Use "restrict default noquery ..." in your ntp.conf file.
1389 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1390 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1391 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1392 1.1.1.16.4.1 perseant (without -g) if it stops running.
1393 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
1394 1.1.1.16.4.1 perseant
1395 1.1.1.16.4.1 perseant * Broadcast Mode Replay Prevention DoS
1396 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1397 1.1.1.16.4.1 perseant References: Sec 3114 / CVE-2016-7427 / VU#633847
1398 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
1399 1.1.1.16.4.1 perseant ntp-4.3.90 up to, but not including ntp-4.3.94.
1400 1.1.1.16.4.1 perseant CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
1401 1.1.1.16.4.1 perseant CVSS3: MED 4.3 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1402 1.1.1.16.4.1 perseant Summary:
1403 1.1.1.16.4.1 perseant The broadcast mode of NTP is expected to only be used in a
1404 1.1.1.16.4.1 perseant trusted network. If the broadcast network is accessible to an
1405 1.1.1.16.4.1 perseant attacker, a potentially exploitable denial of service
1406 1.1.1.16.4.1 perseant vulnerability in ntpd's broadcast mode replay prevention
1407 1.1.1.16.4.1 perseant functionality can be abused. An attacker with access to the NTP
1408 1.1.1.16.4.1 perseant broadcast domain can periodically inject specially crafted
1409 1.1.1.16.4.1 perseant broadcast mode NTP packets into the broadcast domain which,
1410 1.1.1.16.4.1 perseant while being logged by ntpd, can cause ntpd to reject broadcast
1411 1.1.1.16.4.1 perseant mode packets from legitimate NTP broadcast servers.
1412 1.1.1.16.4.1 perseant Mitigation:
1413 1.1.1.16.4.1 perseant Implement BCP-38.
1414 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1415 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1416 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1417 1.1.1.16.4.1 perseant (without -g) if it stops running.
1418 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
1419 1.1.1.16.4.1 perseant
1420 1.1.1.16.4.1 perseant * Broadcast Mode Poll Interval Enforcement DoS
1421 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1422 1.1.1.16.4.1 perseant References: Sec 3113 / CVE-2016-7428 / VU#633847
1423 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
1424 1.1.1.16.4.1 perseant ntp-4.3.90 up to, but not including ntp-4.3.94
1425 1.1.1.16.4.1 perseant CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
1426 1.1.1.16.4.1 perseant CVSS3: MED 4.3 CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1427 1.1.1.16.4.1 perseant Summary:
1428 1.1.1.16.4.1 perseant The broadcast mode of NTP is expected to only be used in a
1429 1.1.1.16.4.1 perseant trusted network. If the broadcast network is accessible to an
1430 1.1.1.16.4.1 perseant attacker, a potentially exploitable denial of service
1431 1.1.1.16.4.1 perseant vulnerability in ntpd's broadcast mode poll interval enforcement
1432 1.1.1.16.4.1 perseant functionality can be abused. To limit abuse, ntpd restricts the
1433 1.1.1.16.4.1 perseant rate at which each broadcast association will process incoming
1434 1.1.1.16.4.1 perseant packets. ntpd will reject broadcast mode packets that arrive
1435 1.1.1.16.4.1 perseant before the poll interval specified in the preceding broadcast
1436 1.1.1.16.4.1 perseant packet expires. An attacker with access to the NTP broadcast
1437 1.1.1.16.4.1 perseant domain can send specially crafted broadcast mode NTP packets to
1438 1.1.1.16.4.1 perseant the broadcast domain which, while being logged by ntpd, will
1439 1.1.1.16.4.1 perseant cause ntpd to reject broadcast mode packets from legitimate NTP
1440 1.1.1.16.4.1 perseant broadcast servers.
1441 1.1.1.16.4.1 perseant Mitigation:
1442 1.1.1.16.4.1 perseant Implement BCP-38.
1443 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1444 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1445 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1446 1.1.1.16.4.1 perseant (without -g) if it stops running.
1447 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
1448 1.1.1.16.4.1 perseant
1449 1.1.1.16.4.1 perseant * Windows: ntpd DoS by oversized UDP packet
1450 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1451 1.1.1.16.4.1 perseant References: Sec 3110 / CVE-2016-9312 / VU#633847
1452 1.1.1.16.4.1 perseant Affects Windows only: ntp-4.?.?, up to but not including ntp-4.2.8p9,
1453 1.1.1.16.4.1 perseant and ntp-4.3.0 up to, but not including ntp-4.3.94.
1454 1.1.1.16.4.1 perseant CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
1455 1.1.1.16.4.1 perseant CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1456 1.1.1.16.4.1 perseant Summary:
1457 1.1.1.16.4.1 perseant If a vulnerable instance of ntpd on Windows receives a crafted
1458 1.1.1.16.4.1 perseant malicious packet that is "too big", ntpd will stop working.
1459 1.1.1.16.4.1 perseant Mitigation:
1460 1.1.1.16.4.1 perseant Implement BCP-38.
1461 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1462 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1463 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1464 1.1.1.16.4.1 perseant (without -g) if it stops running.
1465 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Robert Pajak of ABB.
1466 1.1.1.16.4.1 perseant
1467 1.1.1.16.4.1 perseant * 0rigin (zero origin) issues
1468 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1469 1.1.1.16.4.1 perseant References: Sec 3102 / CVE-2016-7431 / VU#633847
1470 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p8, and ntp-4.3.93.
1471 1.1.1.16.4.1 perseant CVSS2: MED 5.0 (AV:N/AC:L/Au:N/C:N/I:P/A:N)
1472 1.1.1.16.4.1 perseant CVSS3: MED 5.3 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
1473 1.1.1.16.4.1 perseant Summary:
1474 1.1.1.16.4.1 perseant Zero Origin timestamp problems were fixed by Bug 2945 in
1475 1.1.1.16.4.1 perseant ntp-4.2.8p6. However, subsequent timestamp validation checks
1476 1.1.1.16.4.1 perseant introduced a regression in the handling of some Zero origin
1477 1.1.1.16.4.1 perseant timestamp checks.
1478 1.1.1.16.4.1 perseant Mitigation:
1479 1.1.1.16.4.1 perseant Implement BCP-38.
1480 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1481 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1482 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1483 1.1.1.16.4.1 perseant (without -g) if it stops running.
1484 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Sharon Goldberg and Aanchal
1485 1.1.1.16.4.1 perseant Malhotra of Boston University.
1486 1.1.1.16.4.1 perseant
1487 1.1.1.16.4.1 perseant * read_mru_list() does inadequate incoming packet checks
1488 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1489 1.1.1.16.4.1 perseant References: Sec 3082 / CVE-2016-7434 / VU#633847
1490 1.1.1.16.4.1 perseant Affects: ntp-4.2.7p22, up to but not including ntp-4.2.8p9, and
1491 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94.
1492 1.1.1.16.4.1 perseant CVSS2: LOW 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
1493 1.1.1.16.4.1 perseant CVSS3: LOW 3.8 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1494 1.1.1.16.4.1 perseant Summary:
1495 1.1.1.16.4.1 perseant If ntpd is configured to allow mrulist query requests from a
1496 1.1.1.16.4.1 perseant server that sends a crafted malicious packet, ntpd will crash
1497 1.1.1.16.4.1 perseant on receipt of that crafted malicious mrulist query packet.
1498 1.1.1.16.4.1 perseant Mitigation:
1499 1.1.1.16.4.1 perseant Only allow mrulist query packets from trusted hosts.
1500 1.1.1.16.4.1 perseant Implement BCP-38.
1501 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1502 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1503 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1504 1.1.1.16.4.1 perseant (without -g) if it stops running.
1505 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Magnus Stubman.
1506 1.1.1.16.4.1 perseant
1507 1.1.1.16.4.1 perseant * Attack on interface selection
1508 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1509 1.1.1.16.4.1 perseant References: Sec 3072 / CVE-2016-7429 / VU#633847
1510 1.1.1.16.4.1 perseant Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
1511 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94
1512 1.1.1.16.4.1 perseant CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
1513 1.1.1.16.4.1 perseant CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
1514 1.1.1.16.4.1 perseant Summary:
1515 1.1.1.16.4.1 perseant When ntpd receives a server response on a socket that corresponds
1516 1.1.1.16.4.1 perseant to a different interface than was used for the request, the peer
1517 1.1.1.16.4.1 perseant structure is updated to use the interface for new requests. If
1518 1.1.1.16.4.1 perseant ntpd is running on a host with multiple interfaces in separate
1519 1.1.1.16.4.1 perseant networks and the operating system doesn't check source address in
1520 1.1.1.16.4.1 perseant received packets (e.g. rp_filter on Linux is set to 0), an
1521 1.1.1.16.4.1 perseant attacker that knows the address of the source can send a packet
1522 1.1.1.16.4.1 perseant with spoofed source address which will cause ntpd to select wrong
1523 1.1.1.16.4.1 perseant interface for the source and prevent it from sending new requests
1524 1.1.1.16.4.1 perseant until the list of interfaces is refreshed, which happens on
1525 1.1.1.16.4.1 perseant routing changes or every 5 minutes by default. If the attack is
1526 1.1.1.16.4.1 perseant repeated often enough (once per second), ntpd will not be able to
1527 1.1.1.16.4.1 perseant synchronize with the source.
1528 1.1.1.16.4.1 perseant Mitigation:
1529 1.1.1.16.4.1 perseant Implement BCP-38.
1530 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1531 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1532 1.1.1.16.4.1 perseant If you are going to configure your OS to disable source address
1533 1.1.1.16.4.1 perseant checks, also configure your firewall configuration to control
1534 1.1.1.16.4.1 perseant what interfaces can receive packets from what networks.
1535 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1536 1.1.1.16.4.1 perseant (without -g) if it stops running.
1537 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1538 1.1.1.16.4.1 perseant
1539 1.1.1.16.4.1 perseant * Client rate limiting and server responses
1540 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1541 1.1.1.16.4.1 perseant References: Sec 3071 / CVE-2016-7426 / VU#633847
1542 1.1.1.16.4.1 perseant Affects: ntp-4.2.5p203, up to but not including ntp-4.2.8p9, and
1543 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94
1544 1.1.1.16.4.1 perseant CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
1545 1.1.1.16.4.1 perseant CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
1546 1.1.1.16.4.1 perseant Summary:
1547 1.1.1.16.4.1 perseant When ntpd is configured with rate limiting for all associations
1548 1.1.1.16.4.1 perseant (restrict default limited in ntp.conf), the limits are applied
1549 1.1.1.16.4.1 perseant also to responses received from its configured sources. An
1550 1.1.1.16.4.1 perseant attacker who knows the sources (e.g., from an IPv4 refid in
1551 1.1.1.16.4.1 perseant server response) and knows the system is (mis)configured in this
1552 1.1.1.16.4.1 perseant way can periodically send packets with spoofed source address to
1553 1.1.1.16.4.1 perseant keep the rate limiting activated and prevent ntpd from accepting
1554 1.1.1.16.4.1 perseant valid responses from its sources.
1555 1.1.1.16.4.1 perseant
1556 1.1.1.16.4.1 perseant While this blanket rate limiting can be useful to prevent
1557 1.1.1.16.4.1 perseant brute-force attacks on the origin timestamp, it allows this DoS
1558 1.1.1.16.4.1 perseant attack. Similarly, it allows the attacker to prevent mobilization
1559 1.1.1.16.4.1 perseant of ephemeral associations.
1560 1.1.1.16.4.1 perseant Mitigation:
1561 1.1.1.16.4.1 perseant Implement BCP-38.
1562 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1563 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1564 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1565 1.1.1.16.4.1 perseant (without -g) if it stops running.
1566 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1567 1.1.1.16.4.1 perseant
1568 1.1.1.16.4.1 perseant * Fix for bug 2085 broke initial sync calculations
1569 1.1.1.16.4.1 perseant Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1570 1.1.1.16.4.1 perseant References: Sec 3067 / CVE-2016-7433 / VU#633847
1571 1.1.1.16.4.1 perseant Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
1572 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.94. But the
1573 1.1.1.16.4.1 perseant root-distance calculation in general is incorrect in all versions
1574 1.1.1.16.4.1 perseant of ntp-4 until this release.
1575 1.1.1.16.4.1 perseant CVSS2: LOW 1.2 (AV:L/AC:H/Au:N/C:N/I:N/A:P)
1576 1.1.1.16.4.1 perseant CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:L
1577 1.1.1.16.4.1 perseant Summary:
1578 1.1.1.16.4.1 perseant Bug 2085 described a condition where the root delay was included
1579 1.1.1.16.4.1 perseant twice, causing the jitter value to be higher than expected. Due
1580 1.1.1.16.4.1 perseant to a misinterpretation of a small-print variable in The Book, the
1581 1.1.1.16.4.1 perseant fix for this problem was incorrect, resulting in a root distance
1582 1.1.1.16.4.1 perseant that did not include the peer dispersion. The calculations and
1583 1.1.1.16.4.1 perseant formulae have been reviewed and reconciled, and the code has been
1584 1.1.1.16.4.1 perseant updated accordingly.
1585 1.1.1.16.4.1 perseant Mitigation:
1586 1.1.1.16.4.1 perseant Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1587 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1588 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1589 1.1.1.16.4.1 perseant (without -g) if it stops running.
1590 1.1.1.16.4.1 perseant Credit: This weakness was discovered independently by Brian Utterback of
1591 1.1.1.16.4.1 perseant Oracle, and Sharon Goldberg and Aanchal Malhotra of Boston University.
1592 1.1.1.16.4.1 perseant
1593 1.1.1.16.4.1 perseant Other fixes:
1594 1.1.1.16.4.1 perseant
1595 1.1.1.16.4.1 perseant * [Bug 3142] bug in netmask prefix length detection <perlinger (a] ntp.org>
1596 1.1.1.16.4.1 perseant * [Bug 3138] gpsdjson refclock should honor fudgetime1. stenn (a] ntp.org
1597 1.1.1.16.4.1 perseant * [Bug 3129] Unknown hosts can put resolver thread into a hard loop
1598 1.1.1.16.4.1 perseant - moved retry decision where it belongs. <perlinger (a] ntp.org>
1599 1.1.1.16.4.1 perseant * [Bug 3125] NTPD doesn't fully start when ntp.conf entries are out of order
1600 1.1.1.16.4.1 perseant using the loopback-ppsapi-provider.dll <perlinger (a] ntp.org>
1601 1.1.1.16.4.1 perseant * [Bug 3116] unit tests for NTP time stamp expansion. <perlinger (a] ntp.org>
1602 1.1.1.16.4.1 perseant * [Bug 3100] ntpq can't retrieve daemon_version <perlinger (a] ntp.org>
1603 1.1.1.16.4.1 perseant - fixed extended sysvar lookup (bug introduced with bug 3008 fix)
1604 1.1.1.16.4.1 perseant * [Bug 3095] Compatibility with openssl 1.1 <perlinger (a] ntp.org>
1605 1.1.1.16.4.1 perseant - applied patches by Kurt Roeckx <kurt (a] roeckx.be> to source
1606 1.1.1.16.4.1 perseant - added shim layer for SSL API calls with issues (both directions)
1607 1.1.1.16.4.1 perseant * [Bug 3089] Serial Parser does not work anymore for hopfser like device
1608 1.1.1.16.4.1 perseant - simplified / refactored hex-decoding in driver. <perlinger (a] ntp.org>
1609 1.1.1.16.4.1 perseant * [Bug 3084] update-leap mis-parses the leapfile name. HStenn.
1610 1.1.1.16.4.1 perseant * [Bug 3068] Linker warnings when building on Solaris. perlinger (a] ntp.org
1611 1.1.1.16.4.1 perseant - applied patch thanks to Andrew Stormont <andyjstormont (a] gmail.com>
1612 1.1.1.16.4.1 perseant * [Bug 3067] Root distance calculation needs improvement. HStenn
1613 1.1.1.16.4.1 perseant * [Bug 3066] NMEA clock ignores pps. perlinger (a] ntp.org
1614 1.1.1.16.4.1 perseant - PPS-HACK works again.
1615 1.1.1.16.4.1 perseant * [Bug 3059] Potential buffer overrun from oversized hash <perlinger (a] ntp.org>
1616 1.1.1.16.4.1 perseant - applied patch by Brian Utterback <brian.utterback (a] oracle.com>
1617 1.1.1.16.4.1 perseant * [Bug 3053] ntp_loopfilter.c frequency calc precedence error. Sarah White.
1618 1.1.1.16.4.1 perseant * [Bug 3050] Fix for bug #2960 causes [...] spurious error message.
1619 1.1.1.16.4.1 perseant <perlinger (a] ntp.org>
1620 1.1.1.16.4.1 perseant - patches by Reinhard Max <max (a] suse.com> and Havard Eidnes <he (a] uninett.no>
1621 1.1.1.16.4.1 perseant * [Bug 3047] Fix refclock_jjy C-DEX JST2000. abe (a] ntp.org
1622 1.1.1.16.4.1 perseant - Patch provided by Kuramatsu.
1623 1.1.1.16.4.1 perseant * [Bug 3021] unity_fixture.c needs pragma weak <perlinger (a] ntp.org>
1624 1.1.1.16.4.1 perseant - removed unnecessary & harmful decls of 'setUp()' & 'tearDown()'
1625 1.1.1.16.4.1 perseant * [Bug 3019] Windows: ERROR_HOST_UNREACHABLE block packet processing. DMayer
1626 1.1.1.16.4.1 perseant * [Bug 2998] sntp/tests/packetProcessing.c broken without openssl. JPerlinger
1627 1.1.1.16.4.1 perseant * [Bug 2961] sntp/tests/packetProcessing.c assumes AUTOKEY. HStenn.
1628 1.1.1.16.4.1 perseant * [Bug 2959] refclock_jupiter: gps week correction <perlinger (a] ntp.org>
1629 1.1.1.16.4.1 perseant - fixed GPS week expansion to work based on build date. Special thanks
1630 1.1.1.16.4.1 perseant to Craig Leres for initial patch and testing.
1631 1.1.1.16.4.1 perseant * [Bug 2951] ntpd tests fail: multiple definition of `send_via_ntp_signd'
1632 1.1.1.16.4.1 perseant - fixed Makefile.am <perlinger (a] ntp.org>
1633 1.1.1.16.4.1 perseant * [Bug 2689] ATOM driver processes last PPS pulse at startup,
1634 1.1.1.16.4.1 perseant even if it is very old <perlinger (a] ntp.org>
1635 1.1.1.16.4.1 perseant - make sure PPS source is alive before processing samples
1636 1.1.1.16.4.1 perseant - improve stability close to the 500ms phase jump (phase gate)
1637 1.1.1.16.4.1 perseant * Fix typos in include/ntp.h.
1638 1.1.1.16.4.1 perseant * Shim X509_get_signature_nid() if needed
1639 1.1.1.16.4.1 perseant * git author attribution cleanup
1640 1.1.1.16.4.1 perseant * bk ignore file cleanup
1641 1.1.1.16.4.1 perseant * remove locks in Windows IO, use rpc-like thread synchronisation instead
1642 1.1.1.16.4.1 perseant
1643 1.1.1.16.4.1 perseant ---
1644 1.1.1.16.4.1 perseant NTP 4.2.8p8 (Harlan Stenn <stenn (a] ntp.org>, 2016/06/02)
1645 1.1.1.16.4.1 perseant
1646 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
1647 1.1.1.16.4.1 perseant
1648 1.1.1.16.4.1 perseant Severity: HIGH
1649 1.1.1.16.4.1 perseant
1650 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
1651 1.1.1.16.4.1 perseant following 1 high- and 4 low-severity vulnerabilities:
1652 1.1.1.16.4.1 perseant
1653 1.1.1.16.4.1 perseant * CRYPTO_NAK crash
1654 1.1.1.16.4.1 perseant Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1655 1.1.1.16.4.1 perseant References: Sec 3046 / CVE-2016-4957 / VU#321640
1656 1.1.1.16.4.1 perseant Affects: ntp-4.2.8p7, and ntp-4.3.92.
1657 1.1.1.16.4.1 perseant CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
1658 1.1.1.16.4.1 perseant CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1659 1.1.1.16.4.1 perseant Summary: The fix for Sec 3007 in ntp-4.2.8p7 contained a bug that
1660 1.1.1.16.4.1 perseant could cause ntpd to crash.
1661 1.1.1.16.4.1 perseant Mitigation:
1662 1.1.1.16.4.1 perseant Implement BCP-38.
1663 1.1.1.16.4.1 perseant Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1664 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1665 1.1.1.16.4.1 perseant If you cannot upgrade from 4.2.8p7, the only other alternatives
1666 1.1.1.16.4.1 perseant are to patch your code or filter CRYPTO_NAK packets.
1667 1.1.1.16.4.1 perseant Properly monitor your ntpd instances, and auto-restart ntpd
1668 1.1.1.16.4.1 perseant (without -g) if it stops running.
1669 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Nicolas Edet of Cisco.
1670 1.1.1.16.4.1 perseant
1671 1.1.1.16.4.1 perseant * Bad authentication demobilizes ephemeral associations
1672 1.1.1.16.4.1 perseant Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1673 1.1.1.16.4.1 perseant References: Sec 3045 / CVE-2016-4953 / VU#321640
1674 1.1.1.16.4.1 perseant Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1675 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.93.
1676 1.1.1.16.4.1 perseant CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1677 1.1.1.16.4.1 perseant CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1678 1.1.1.16.4.1 perseant Summary: An attacker who knows the origin timestamp and can send a
1679 1.1.1.16.4.1 perseant spoofed packet containing a CRYPTO-NAK to an ephemeral peer
1680 1.1.1.16.4.1 perseant target before any other response is sent can demobilize that
1681 1.1.1.16.4.1 perseant association.
1682 1.1.1.16.4.1 perseant Mitigation:
1683 1.1.1.16.4.1 perseant Implement BCP-38.
1684 1.1.1.16.4.1 perseant Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1685 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1686 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1687 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1688 1.1.1.16.4.1 perseant
1689 1.1.1.16.4.1 perseant * Processing spoofed server packets
1690 1.1.1.16.4.1 perseant Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1691 1.1.1.16.4.1 perseant References: Sec 3044 / CVE-2016-4954 / VU#321640
1692 1.1.1.16.4.1 perseant Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1693 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.93.
1694 1.1.1.16.4.1 perseant CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1695 1.1.1.16.4.1 perseant CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1696 1.1.1.16.4.1 perseant Summary: An attacker who is able to spoof packets with correct origin
1697 1.1.1.16.4.1 perseant timestamps from enough servers before the expected response
1698 1.1.1.16.4.1 perseant packets arrive at the target machine can affect some peer
1699 1.1.1.16.4.1 perseant variables and, for example, cause a false leap indication to be set.
1700 1.1.1.16.4.1 perseant Mitigation:
1701 1.1.1.16.4.1 perseant Implement BCP-38.
1702 1.1.1.16.4.1 perseant Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1703 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1704 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1705 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Jakub Prokes of Red Hat.
1706 1.1.1.16.4.1 perseant
1707 1.1.1.16.4.1 perseant * Autokey association reset
1708 1.1.1.16.4.1 perseant Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1709 1.1.1.16.4.1 perseant References: Sec 3043 / CVE-2016-4955 / VU#321640
1710 1.1.1.16.4.1 perseant Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1711 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.93.
1712 1.1.1.16.4.1 perseant CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1713 1.1.1.16.4.1 perseant CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1714 1.1.1.16.4.1 perseant Summary: An attacker who is able to spoof a packet with a correct
1715 1.1.1.16.4.1 perseant origin timestamp before the expected response packet arrives at
1716 1.1.1.16.4.1 perseant the target machine can send a CRYPTO_NAK or a bad MAC and cause
1717 1.1.1.16.4.1 perseant the association's peer variables to be cleared. If this can be
1718 1.1.1.16.4.1 perseant done often enough, it will prevent that association from working.
1719 1.1.1.16.4.1 perseant Mitigation:
1720 1.1.1.16.4.1 perseant Implement BCP-38.
1721 1.1.1.16.4.1 perseant Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1722 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1723 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1724 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1725 1.1.1.16.4.1 perseant
1726 1.1.1.16.4.1 perseant * Broadcast interleave
1727 1.1.1.16.4.1 perseant Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1728 1.1.1.16.4.1 perseant References: Sec 3042 / CVE-2016-4956 / VU#321640
1729 1.1.1.16.4.1 perseant Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1730 1.1.1.16.4.1 perseant ntp-4.3.0 up to, but not including ntp-4.3.93.
1731 1.1.1.16.4.1 perseant CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1732 1.1.1.16.4.1 perseant CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1733 1.1.1.16.4.1 perseant Summary: The fix for NtpBug2978 does not cover broadcast associations,
1734 1.1.1.16.4.1 perseant so broadcast clients can be triggered to flip into interleave mode.
1735 1.1.1.16.4.1 perseant Mitigation:
1736 1.1.1.16.4.1 perseant Implement BCP-38.
1737 1.1.1.16.4.1 perseant Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1738 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1739 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1740 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1741 1.1.1.16.4.1 perseant
1742 1.1.1.16.4.1 perseant Other fixes:
1743 1.1.1.16.4.1 perseant * [Bug 3038] NTP fails to build in VS2015. perlinger (a] ntp.org
1744 1.1.1.16.4.1 perseant - provide build environment
1745 1.1.1.16.4.1 perseant - 'wint_t' and 'struct timespec' defined by VS2015
1746 1.1.1.16.4.1 perseant - fixed print()/scanf() format issues
1747 1.1.1.16.4.1 perseant * [Bug 3052] Add a .gitignore file. Edmund Wong.
1748 1.1.1.16.4.1 perseant * [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
1749 1.1.1.16.4.1 perseant * [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback,
1750 1.1.1.16.4.1 perseant JPerlinger, HStenn.
1751 1.1.1.16.4.1 perseant * Fix typo in ntp-wait and plot_summary. HStenn.
1752 1.1.1.16.4.1 perseant * Make sure we have an "author" file for git imports. HStenn.
1753 1.1.1.16.4.1 perseant * Update the sntp problem tests for MacOS. HStenn.
1754 1.1.1.16.4.1 perseant
1755 1.1.1.16.4.1 perseant ---
1756 1.1.1.16.4.1 perseant NTP 4.2.8p7 (Harlan Stenn <stenn (a] ntp.org>, 2016/04/26)
1757 1.1.1.16.4.1 perseant
1758 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
1759 1.1.1.16.4.1 perseant
1760 1.1.1.16.4.1 perseant Severity: MEDIUM
1761 1.1.1.16.4.1 perseant
1762 1.1.1.16.4.1 perseant When building NTP from source, there is a new configure option
1763 1.1.1.16.4.1 perseant available, --enable-dynamic-interleave. More information on this below.
1764 1.1.1.16.4.1 perseant
1765 1.1.1.16.4.1 perseant Also note that ntp-4.2.8p7 logs more "unexpected events" than previous
1766 1.1.1.16.4.1 perseant versions of ntp. These events have almost certainly happened in the
1767 1.1.1.16.4.1 perseant past, it's just that they were silently counted and not logged. With
1768 1.1.1.16.4.1 perseant the increasing awareness around security, we feel it's better to clearly
1769 1.1.1.16.4.1 perseant log these events to help detect abusive behavior. This increased
1770 1.1.1.16.4.1 perseant logging can also help detect other problems, too.
1771 1.1.1.16.4.1 perseant
1772 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
1773 1.1.1.16.4.1 perseant following 9 low- and medium-severity vulnerabilities:
1774 1.1.1.16.4.1 perseant
1775 1.1.1.16.4.1 perseant * Improve NTP security against buffer comparison timing attacks,
1776 1.1.1.16.4.1 perseant AKA: authdecrypt-timing
1777 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1778 1.1.1.16.4.1 perseant References: Sec 2879 / CVE-2016-1550
1779 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1780 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1781 1.1.1.16.4.1 perseant CVSSv2: LOW 2.6 - (AV:L/AC:H/Au:N/C:P/I:P/A:N)
1782 1.1.1.16.4.1 perseant CVSSv3: MED 4.0 - CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
1783 1.1.1.16.4.1 perseant Summary: Packet authentication tests have been performed using
1784 1.1.1.16.4.1 perseant memcmp() or possibly bcmp(), and it is potentially possible
1785 1.1.1.16.4.1 perseant for a local or perhaps LAN-based attacker to send a packet with
1786 1.1.1.16.4.1 perseant an authentication payload and indirectly observe how much of
1787 1.1.1.16.4.1 perseant the digest has matched.
1788 1.1.1.16.4.1 perseant Mitigation:
1789 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1790 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
1791 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1792 1.1.1.16.4.1 perseant Credit: This weakness was discovered independently by Loganaden
1793 1.1.1.16.4.1 perseant Velvindron, and Matthew Van Gundy and Stephen Gray of Cisco ASIG.
1794 1.1.1.16.4.1 perseant
1795 1.1.1.16.4.1 perseant * Zero origin timestamp bypass: Additional KoD checks.
1796 1.1.1.16.4.1 perseant References: Sec 2945 / Sec 2901 / CVE-2015-8138
1797 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1798 1.1.1.16.4.1 perseant Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.92.
1799 1.1.1.16.4.1 perseant
1800 1.1.1.16.4.1 perseant * peer associations were broken by the fix for NtpBug2899
1801 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1802 1.1.1.16.4.1 perseant References: Sec 2952 / CVE-2015-7704
1803 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1804 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1805 1.1.1.16.4.1 perseant CVSSv2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
1806 1.1.1.16.4.1 perseant Summary: The fix for NtpBug2952 in ntp-4.2.8p5 to address broken peer
1807 1.1.1.16.4.1 perseant associations did not address all of the issues.
1808 1.1.1.16.4.1 perseant Mitigation:
1809 1.1.1.16.4.1 perseant Implement BCP-38.
1810 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1811 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1812 1.1.1.16.4.1 perseant If you can't upgrade, use "server" associations instead of
1813 1.1.1.16.4.1 perseant "peer" associations.
1814 1.1.1.16.4.1 perseant Monitor your ntpd instances.
1815 1.1.1.16.4.1 perseant Credit: This problem was discovered by Michael Tatarinov.
1816 1.1.1.16.4.1 perseant
1817 1.1.1.16.4.1 perseant * Validate crypto-NAKs, AKA: CRYPTO-NAK DoS
1818 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1819 1.1.1.16.4.1 perseant References: Sec 3007 / CVE-2016-1547 / VU#718152
1820 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1821 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1822 1.1.1.16.4.1 perseant CVSS2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
1823 1.1.1.16.4.1 perseant CVSS3: MED 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1824 1.1.1.16.4.1 perseant Summary: For ntp-4 versions up to but not including ntp-4.2.8p7, an
1825 1.1.1.16.4.1 perseant off-path attacker can cause a preemptable client association to
1826 1.1.1.16.4.1 perseant be demobilized by sending a crypto NAK packet to a victim client
1827 1.1.1.16.4.1 perseant with a spoofed source address of an existing associated peer.
1828 1.1.1.16.4.1 perseant This is true even if authentication is enabled.
1829 1.1.1.16.4.1 perseant
1830 1.1.1.16.4.1 perseant Furthermore, if the attacker keeps sending crypto NAK packets,
1831 1.1.1.16.4.1 perseant for example one every second, the victim never has a chance to
1832 1.1.1.16.4.1 perseant reestablish the association and synchronize time with that
1833 1.1.1.16.4.1 perseant legitimate server.
1834 1.1.1.16.4.1 perseant
1835 1.1.1.16.4.1 perseant For ntp-4.2.8 thru ntp-4.2.8p6 there is less risk because more
1836 1.1.1.16.4.1 perseant stringent checks are performed on incoming packets, but there
1837 1.1.1.16.4.1 perseant are still ways to exploit this vulnerability in versions before
1838 1.1.1.16.4.1 perseant ntp-4.2.8p7.
1839 1.1.1.16.4.1 perseant Mitigation:
1840 1.1.1.16.4.1 perseant Implement BCP-38.
1841 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1842 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1843 1.1.1.16.4.1 perseant Properly monitor your ntpd instances
1844 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Stephen Gray and
1845 1.1.1.16.4.1 perseant Matthew Van Gundy of Cisco ASIG.
1846 1.1.1.16.4.1 perseant
1847 1.1.1.16.4.1 perseant * ctl_getitem() return value not always checked
1848 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1849 1.1.1.16.4.1 perseant References: Sec 3008 / CVE-2016-2519
1850 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1851 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1852 1.1.1.16.4.1 perseant CVSSv2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
1853 1.1.1.16.4.1 perseant CVSSv3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1854 1.1.1.16.4.1 perseant Summary: ntpq and ntpdc can be used to store and retrieve information
1855 1.1.1.16.4.1 perseant in ntpd. It is possible to store a data value that is larger
1856 1.1.1.16.4.1 perseant than the size of the buffer that the ctl_getitem() function of
1857 1.1.1.16.4.1 perseant ntpd uses to report the return value. If the length of the
1858 1.1.1.16.4.1 perseant requested data value returned by ctl_getitem() is too large,
1859 1.1.1.16.4.1 perseant the value NULL is returned instead. There are 2 cases where the
1860 1.1.1.16.4.1 perseant return value from ctl_getitem() was not directly checked to make
1861 1.1.1.16.4.1 perseant sure it's not NULL, but there are subsequent INSIST() checks
1862 1.1.1.16.4.1 perseant that make sure the return value is not NULL. There are no data
1863 1.1.1.16.4.1 perseant values ordinarily stored in ntpd that would exceed this buffer
1864 1.1.1.16.4.1 perseant length. But if one has permission to store values and one stores
1865 1.1.1.16.4.1 perseant a value that is "too large", then ntpd will abort if an attempt
1866 1.1.1.16.4.1 perseant is made to read that oversized value.
1867 1.1.1.16.4.1 perseant Mitigation:
1868 1.1.1.16.4.1 perseant Implement BCP-38.
1869 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1870 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1871 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1872 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yihan Lian of the Cloud
1873 1.1.1.16.4.1 perseant Security Team, Qihoo 360.
1874 1.1.1.16.4.1 perseant
1875 1.1.1.16.4.1 perseant * Crafted addpeer with hmode > 7 causes array wraparound with MATCH_ASSOC
1876 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1877 1.1.1.16.4.1 perseant References: Sec 3009 / CVE-2016-2518 / VU#718152
1878 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1879 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1880 1.1.1.16.4.1 perseant CVSS2: LOW 2.1 - (AV:N/AC:H/Au:S/C:N/I:N/A:P)
1881 1.1.1.16.4.1 perseant CVSS3: LOW 2.0 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
1882 1.1.1.16.4.1 perseant Summary: Using a crafted packet to create a peer association with
1883 1.1.1.16.4.1 perseant hmode > 7 causes the MATCH_ASSOC() lookup to make an
1884 1.1.1.16.4.1 perseant out-of-bounds reference.
1885 1.1.1.16.4.1 perseant Mitigation:
1886 1.1.1.16.4.1 perseant Implement BCP-38.
1887 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1888 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1889 1.1.1.16.4.1 perseant Properly monitor your ntpd instances
1890 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yihan Lian of the Cloud
1891 1.1.1.16.4.1 perseant Security Team, Qihoo 360.
1892 1.1.1.16.4.1 perseant
1893 1.1.1.16.4.1 perseant * remote configuration trustedkey/requestkey/controlkey values are not
1894 1.1.1.16.4.1 perseant properly validated
1895 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1896 1.1.1.16.4.1 perseant References: Sec 3010 / CVE-2016-2517 / VU#718152
1897 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1898 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1899 1.1.1.16.4.1 perseant CVSS2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
1900 1.1.1.16.4.1 perseant CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1901 1.1.1.16.4.1 perseant Summary: If ntpd was expressly configured to allow for remote
1902 1.1.1.16.4.1 perseant configuration, a malicious user who knows the controlkey for
1903 1.1.1.16.4.1 perseant ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
1904 1.1.1.16.4.1 perseant can create a session with ntpd and then send a crafted packet to
1905 1.1.1.16.4.1 perseant ntpd that will change the value of the trustedkey, controlkey,
1906 1.1.1.16.4.1 perseant or requestkey to a value that will prevent any subsequent
1907 1.1.1.16.4.1 perseant authentication with ntpd until ntpd is restarted.
1908 1.1.1.16.4.1 perseant Mitigation:
1909 1.1.1.16.4.1 perseant Implement BCP-38.
1910 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1911 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1912 1.1.1.16.4.1 perseant Properly monitor your ntpd instances
1913 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yihan Lian of the Cloud
1914 1.1.1.16.4.1 perseant Security Team, Qihoo 360.
1915 1.1.1.16.4.1 perseant
1916 1.1.1.16.4.1 perseant * Duplicate IPs on unconfig directives will cause an assertion botch in ntpd
1917 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1918 1.1.1.16.4.1 perseant References: Sec 3011 / CVE-2016-2516 / VU#718152
1919 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1920 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
1921 1.1.1.16.4.1 perseant CVSS2: MED 6.3 - (AV:N/AC:M/Au:S/C:N/I:N/A:C)
1922 1.1.1.16.4.1 perseant CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
1923 1.1.1.16.4.1 perseant Summary: If ntpd was expressly configured to allow for remote
1924 1.1.1.16.4.1 perseant configuration, a malicious user who knows the controlkey for
1925 1.1.1.16.4.1 perseant ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
1926 1.1.1.16.4.1 perseant can create a session with ntpd and if an existing association is
1927 1.1.1.16.4.1 perseant unconfigured using the same IP twice on the unconfig directive
1928 1.1.1.16.4.1 perseant line, ntpd will abort.
1929 1.1.1.16.4.1 perseant Mitigation:
1930 1.1.1.16.4.1 perseant Implement BCP-38.
1931 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1932 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1933 1.1.1.16.4.1 perseant Properly monitor your ntpd instances
1934 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yihan Lian of the Cloud
1935 1.1.1.16.4.1 perseant Security Team, Qihoo 360.
1936 1.1.1.16.4.1 perseant
1937 1.1.1.16.4.1 perseant * Refclock impersonation vulnerability
1938 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1939 1.1.1.16.4.1 perseant References: Sec 3020 / CVE-2016-1551
1940 1.1.1.16.4.1 perseant Affects: On a very limited number of OSes, all NTP releases up to but
1941 1.1.1.16.4.1 perseant not including 4.2.8p7, and 4.3.0 up to but not including 4.3.92.
1942 1.1.1.16.4.1 perseant By "very limited number of OSes" we mean no general-purpose OSes
1943 1.1.1.16.4.1 perseant have yet been identified that have this vulnerability.
1944 1.1.1.16.4.1 perseant CVSSv2: LOW 2.6 - (AV:N/AC:H/Au:N/C:N/I:P/A:N)
1945 1.1.1.16.4.1 perseant CVSSv3: LOW 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
1946 1.1.1.16.4.1 perseant Summary: While most OSes implement martian packet filtering in their
1947 1.1.1.16.4.1 perseant network stack, at least regarding 127.0.0.0/8, some will allow
1948 1.1.1.16.4.1 perseant packets claiming to be from 127.0.0.0/8 that arrive over a
1949 1.1.1.16.4.1 perseant physical network. On these OSes, if ntpd is configured to use a
1950 1.1.1.16.4.1 perseant reference clock an attacker can inject packets over the network
1951 1.1.1.16.4.1 perseant that look like they are coming from that reference clock.
1952 1.1.1.16.4.1 perseant Mitigation:
1953 1.1.1.16.4.1 perseant Implement martian packet filtering and BCP-38.
1954 1.1.1.16.4.1 perseant Configure ntpd to use an adequate number of time sources.
1955 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1956 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
1957 1.1.1.16.4.1 perseant If you are unable to upgrade and if you are running an OS that
1958 1.1.1.16.4.1 perseant has this vulnerability, implement martian packet filters and
1959 1.1.1.16.4.1 perseant lobby your OS vendor to fix this problem, or run your
1960 1.1.1.16.4.1 perseant refclocks on computers that use OSes that are not vulnerable
1961 1.1.1.16.4.1 perseant to these attacks and have your vulnerable machines get their
1962 1.1.1.16.4.1 perseant time from protected resources.
1963 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
1964 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matt Street and others of
1965 1.1.1.16.4.1 perseant Cisco ASIG.
1966 1.1.1.16.4.1 perseant
1967 1.1.1.16.4.1 perseant The following issues were fixed in earlier releases and contain
1968 1.1.1.16.4.1 perseant improvements in 4.2.8p7:
1969 1.1.1.16.4.1 perseant
1970 1.1.1.16.4.1 perseant * Clients that receive a KoD should validate the origin timestamp field.
1971 1.1.1.16.4.1 perseant References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
1972 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1973 1.1.1.16.4.1 perseant Summary: Improvements to the fixes incorporated into 4.2.8p4 and 4.3.77.
1974 1.1.1.16.4.1 perseant
1975 1.1.1.16.4.1 perseant * Skeleton key: passive server with trusted key can serve time.
1976 1.1.1.16.4.1 perseant References: Sec 2936 / CVE-2015-7974
1977 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1978 1.1.1.16.4.1 perseant Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.90.
1979 1.1.1.16.4.1 perseant
1980 1.1.1.16.4.1 perseant Two other vulnerabilities have been reported, and the mitigations
1981 1.1.1.16.4.1 perseant for these are as follows:
1982 1.1.1.16.4.1 perseant
1983 1.1.1.16.4.1 perseant * Interleave-pivot
1984 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1985 1.1.1.16.4.1 perseant References: Sec 2978 / CVE-2016-1548
1986 1.1.1.16.4.1 perseant Affects: All ntp-4 releases.
1987 1.1.1.16.4.1 perseant CVSSv2: MED 6.4 - (AV:N/AC:L/Au:N/C:N/I:P/A:P)
1988 1.1.1.16.4.1 perseant CVSSv3: MED 7.2 - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L
1989 1.1.1.16.4.1 perseant Summary: It is possible to change the time of an ntpd client or deny
1990 1.1.1.16.4.1 perseant service to an ntpd client by forcing it to change from basic
1991 1.1.1.16.4.1 perseant client/server mode to interleaved symmetric mode. An attacker
1992 1.1.1.16.4.1 perseant can spoof a packet from a legitimate ntpd server with an origin
1993 1.1.1.16.4.1 perseant timestamp that matches the peer->dst timestamp recorded for that
1994 1.1.1.16.4.1 perseant server. After making this switch, the client will reject all
1995 1.1.1.16.4.1 perseant future legitimate server responses. It is possible to force the
1996 1.1.1.16.4.1 perseant victim client to move time after the mode has been changed.
1997 1.1.1.16.4.1 perseant ntpq gives no indication that the mode has been switched.
1998 1.1.1.16.4.1 perseant Mitigation:
1999 1.1.1.16.4.1 perseant Implement BCP-38.
2000 1.1.1.16.4.1 perseant Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
2001 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page. These
2002 1.1.1.16.4.1 perseant versions will not dynamically "flip" into interleave mode
2003 1.1.1.16.4.1 perseant unless configured to do so.
2004 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
2005 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of RedHat
2006 1.1.1.16.4.1 perseant and separately by Jonathan Gardner of Cisco ASIG.
2007 1.1.1.16.4.1 perseant
2008 1.1.1.16.4.1 perseant * Sybil vulnerability: ephemeral association attack
2009 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
2010 1.1.1.16.4.1 perseant References: Sec 3012 / CVE-2016-1549
2011 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
2012 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.92
2013 1.1.1.16.4.1 perseant CVSSv2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
2014 1.1.1.16.4.1 perseant CVSS3v: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
2015 1.1.1.16.4.1 perseant Summary: ntpd can be vulnerable to Sybil attacks. If one is not using
2016 1.1.1.16.4.1 perseant the feature introduced in ntp-4.2.8p6 allowing an optional 4th
2017 1.1.1.16.4.1 perseant field in the ntp.keys file to specify which IPs can serve time,
2018 1.1.1.16.4.1 perseant a malicious authenticated peer can create arbitrarily-many
2019 1.1.1.16.4.1 perseant ephemeral associations in order to win the clock selection of
2020 1.1.1.16.4.1 perseant ntpd and modify a victim's clock.
2021 1.1.1.16.4.1 perseant Mitigation:
2022 1.1.1.16.4.1 perseant Implement BCP-38.
2023 1.1.1.16.4.1 perseant Use the 4th field in the ntp.keys file to specify which IPs
2024 1.1.1.16.4.1 perseant can be time servers.
2025 1.1.1.16.4.1 perseant Properly monitor your ntpd instances.
2026 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
2027 1.1.1.16.4.1 perseant
2028 1.1.1.16.4.1 perseant Other fixes:
2029 1.1.1.16.4.1 perseant
2030 1.1.1.16.4.1 perseant * [Bug 2831] Segmentation Fault in DNS lookup during startup. perlinger (a] ntp.org
2031 1.1.1.16.4.1 perseant - fixed yet another race condition in the threaded resolver code.
2032 1.1.1.16.4.1 perseant * [Bug 2858] bool support. Use stdbool.h when available. HStenn.
2033 1.1.1.16.4.1 perseant * [Bug 2879] Improve NTP security against timing attacks. perlinger (a] ntp.org
2034 1.1.1.16.4.1 perseant - integrated patches by Loganaden Velvidron <logan (a] ntp.org>
2035 1.1.1.16.4.1 perseant with some modifications & unit tests
2036 1.1.1.16.4.1 perseant * [Bug 2960] async name resolution fixes for chroot() environments.
2037 1.1.1.16.4.1 perseant Reinhard Max.
2038 1.1.1.16.4.1 perseant * [Bug 2994] Systems with HAVE_SIGNALED_IO fail to compile. perlinger (a] ntp.org
2039 1.1.1.16.4.1 perseant * [Bug 2995] Fixes to compile on Windows
2040 1.1.1.16.4.1 perseant * [Bug 2999] out-of-bounds access in 'is_safe_filename()'. perlinger (a] ntp.org
2041 1.1.1.16.4.1 perseant * [Bug 3013] Fix for ssl_init.c SHA1 test. perlinger (a] ntp.org
2042 1.1.1.16.4.1 perseant - Patch provided by Ch. Weisgerber
2043 1.1.1.16.4.1 perseant * [Bug 3015] ntpq: config-from-file: "request contains an unprintable character"
2044 1.1.1.16.4.1 perseant - A change related to [Bug 2853] forbids trailing white space in
2045 1.1.1.16.4.1 perseant remote config commands. perlinger (a] ntp.org
2046 1.1.1.16.4.1 perseant * [Bug 3019] NTPD stops processing packets after ERROR_HOST_UNREACHABLE
2047 1.1.1.16.4.1 perseant - report and patch from Aleksandr Kostikov.
2048 1.1.1.16.4.1 perseant - Overhaul of Windows IO completion port handling. perlinger (a] ntp.org
2049 1.1.1.16.4.1 perseant * [Bug 3022] authkeys.c should be refactored. perlinger (a] ntp.org
2050 1.1.1.16.4.1 perseant - fixed memory leak in access list (auth[read]keys.c)
2051 1.1.1.16.4.1 perseant - refactored handling of key access lists (auth[read]keys.c)
2052 1.1.1.16.4.1 perseant - reduced number of error branches (authreadkeys.c)
2053 1.1.1.16.4.1 perseant * [Bug 3023] ntpdate cannot correct dates in the future. perlinger (a] ntp.org
2054 1.1.1.16.4.1 perseant * [Bug 3030] ntpq needs a general way to specify refid output format. HStenn.
2055 1.1.1.16.4.1 perseant * [Bug 3031] ntp broadcastclient unable to synchronize to an server
2056 1.1.1.16.4.1 perseant when the time of server changed. perlinger (a] ntp.org
2057 1.1.1.16.4.1 perseant - Check the initial delay calculation and reject/unpeer the broadcast
2058 1.1.1.16.4.1 perseant server if the delay exceeds 50ms. Retry again after the next
2059 1.1.1.16.4.1 perseant broadcast packet.
2060 1.1.1.16.4.1 perseant * [Bug 3036] autokey trips an INSIST in authistrustedip(). Harlan Stenn.
2061 1.1.1.16.4.1 perseant * Document ntp.key's optional IP list in authenetic.html. Harlan Stenn.
2062 1.1.1.16.4.1 perseant * Update html/xleave.html documentation. Harlan Stenn.
2063 1.1.1.16.4.1 perseant * Update ntp.conf documentation. Harlan Stenn.
2064 1.1.1.16.4.1 perseant * Fix some Credit: attributions in the NEWS file. Harlan Stenn.
2065 1.1.1.16.4.1 perseant * Fix typo in html/monopt.html. Harlan Stenn.
2066 1.1.1.16.4.1 perseant * Add README.pullrequests. Harlan Stenn.
2067 1.1.1.16.4.1 perseant * Cleanup to include/ntp.h. Harlan Stenn.
2068 1.1.1.16.4.1 perseant
2069 1.1.1.16.4.1 perseant New option to 'configure':
2070 1.1.1.16.4.1 perseant
2071 1.1.1.16.4.1 perseant While looking in to the issues around Bug 2978, the "interleave pivot"
2072 1.1.1.16.4.1 perseant issue, it became clear that there are some intricate and unresolved
2073 1.1.1.16.4.1 perseant issues with interleave operations. We also realized that the interleave
2074 1.1.1.16.4.1 perseant protocol was never added to the NTPv4 Standard, and it should have been.
2075 1.1.1.16.4.1 perseant
2076 1.1.1.16.4.1 perseant Interleave mode was first released in July of 2008, and can be engaged
2077 1.1.1.16.4.1 perseant in two ways. Any 'peer' and 'broadcast' lines in the ntp.conf file may
2078 1.1.1.16.4.1 perseant contain the 'xleave' option, which will expressly enable interlave mode
2079 1.1.1.16.4.1 perseant for that association. Additionally, if a time packet arrives and is
2080 1.1.1.16.4.1 perseant found inconsistent with normal protocol behavior but has certain
2081 1.1.1.16.4.1 perseant characteristics that are compatible with interleave mode, NTP will
2082 1.1.1.16.4.1 perseant dynamically switch to interleave mode. With sufficient knowledge, an
2083 1.1.1.16.4.1 perseant attacker can send a crafted forged packet to an NTP instance that
2084 1.1.1.16.4.1 perseant triggers only one side to enter interleaved mode.
2085 1.1.1.16.4.1 perseant
2086 1.1.1.16.4.1 perseant To prevent this attack until we can thoroughly document, describe,
2087 1.1.1.16.4.1 perseant fix, and test the dynamic interleave mode, we've added a new
2088 1.1.1.16.4.1 perseant 'configure' option to the build process:
2089 1.1.1.16.4.1 perseant
2090 1.1.1.16.4.1 perseant --enable-dynamic-interleave
2091 1.1.1.16.4.1 perseant
2092 1.1.1.16.4.1 perseant This option controls whether or not NTP will, if conditions are right,
2093 1.1.1.16.4.1 perseant engage dynamic interleave mode. Dynamic interleave mode is disabled by
2094 1.1.1.16.4.1 perseant default in ntp-4.2.8p7.
2095 1.1.1.16.4.1 perseant
2096 1.1.1.16.4.1 perseant ---
2097 1.1.1.16.4.1 perseant NTP 4.2.8p6 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/20)
2098 1.1.1.16.4.1 perseant
2099 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
2100 1.1.1.16.4.1 perseant
2101 1.1.1.16.4.1 perseant Severity: MEDIUM
2102 1.1.1.16.4.1 perseant
2103 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
2104 1.1.1.16.4.1 perseant following 1 low- and 8 medium-severity vulnerabilities:
2105 1.1.1.16.4.1 perseant
2106 1.1.1.16.4.1 perseant * Potential Infinite Loop in 'ntpq'
2107 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2108 1.1.1.16.4.1 perseant References: Sec 2548 / CVE-2015-8158
2109 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2110 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2111 1.1.1.16.4.1 perseant CVSS2: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
2112 1.1.1.16.4.1 perseant CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM
2113 1.1.1.16.4.1 perseant Summary: 'ntpq' processes incoming packets in a loop in 'getresponse()'.
2114 1.1.1.16.4.1 perseant The loop's only stopping conditions are receiving a complete and
2115 1.1.1.16.4.1 perseant correct response or hitting a small number of error conditions.
2116 1.1.1.16.4.1 perseant If the packet contains incorrect values that don't trigger one of
2117 1.1.1.16.4.1 perseant the error conditions, the loop continues to receive new packets.
2118 1.1.1.16.4.1 perseant Note well, this is an attack against an instance of 'ntpq', not
2119 1.1.1.16.4.1 perseant 'ntpd', and this attack requires the attacker to do one of the
2120 1.1.1.16.4.1 perseant following:
2121 1.1.1.16.4.1 perseant * Own a malicious NTP server that the client trusts
2122 1.1.1.16.4.1 perseant * Prevent a legitimate NTP server from sending packets to
2123 1.1.1.16.4.1 perseant the 'ntpq' client
2124 1.1.1.16.4.1 perseant * MITM the 'ntpq' communications between the 'ntpq' client
2125 1.1.1.16.4.1 perseant and the NTP server
2126 1.1.1.16.4.1 perseant Mitigation:
2127 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2128 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
2129 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
2130 1.1.1.16.4.1 perseant
2131 1.1.1.16.4.1 perseant * 0rigin: Zero Origin Timestamp Bypass
2132 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2133 1.1.1.16.4.1 perseant References: Sec 2945 / CVE-2015-8138
2134 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2135 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2136 1.1.1.16.4.1 perseant CVSS2: (AV:N/AC:L/Au:N/C:N/I:P/A:N) Base Score: 5.0 - MEDIUM
2137 1.1.1.16.4.1 perseant CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM
2138 1.1.1.16.4.1 perseant (3.7 - LOW if you score AC:L)
2139 1.1.1.16.4.1 perseant Summary: To distinguish legitimate peer responses from forgeries, a
2140 1.1.1.16.4.1 perseant client attempts to verify a response packet by ensuring that the
2141 1.1.1.16.4.1 perseant origin timestamp in the packet matches the origin timestamp it
2142 1.1.1.16.4.1 perseant transmitted in its last request. A logic error exists that
2143 1.1.1.16.4.1 perseant allows packets with an origin timestamp of zero to bypass this
2144 1.1.1.16.4.1 perseant check whenever there is not an outstanding request to the server.
2145 1.1.1.16.4.1 perseant Mitigation:
2146 1.1.1.16.4.1 perseant Configure 'ntpd' to get time from multiple sources.
2147 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2148 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
2149 1.1.1.16.4.1 perseant Monitor your 'ntpd' instances.
2150 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthey Van Gundy and
2151 1.1.1.16.4.1 perseant Jonathan Gardner of Cisco ASIG.
2152 1.1.1.16.4.1 perseant
2153 1.1.1.16.4.1 perseant * Stack exhaustion in recursive traversal of restriction list
2154 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016
2155 1.1.1.16.4.1 perseant References: Sec 2940 / CVE-2015-7978
2156 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2157 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2158 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
2159 1.1.1.16.4.1 perseant Summary: An unauthenticated 'ntpdc reslist' command can cause a
2160 1.1.1.16.4.1 perseant segmentation fault in ntpd by exhausting the call stack.
2161 1.1.1.16.4.1 perseant Mitigation:
2162 1.1.1.16.4.1 perseant Implement BCP-38.
2163 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2164 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
2165 1.1.1.16.4.1 perseant If you are unable to upgrade:
2166 1.1.1.16.4.1 perseant In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
2167 1.1.1.16.4.1 perseant If you must enable mode 7:
2168 1.1.1.16.4.1 perseant configure the use of a 'requestkey' to control who can
2169 1.1.1.16.4.1 perseant issue mode 7 requests.
2170 1.1.1.16.4.1 perseant configure 'restrict noquery' to further limit mode 7
2171 1.1.1.16.4.1 perseant requests to trusted sources.
2172 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2173 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Stephen Gray at Cisco ASIG.
2174 1.1.1.16.4.1 perseant
2175 1.1.1.16.4.1 perseant * Off-path Denial of Service (!DoS) attack on authenticated broadcast mode
2176 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2177 1.1.1.16.4.1 perseant References: Sec 2942 / CVE-2015-7979
2178 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2179 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2180 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:M/Au:N/C:N/I:P/A:P) Base Score: 5.8
2181 1.1.1.16.4.1 perseant Summary: An off-path attacker can send broadcast packets with bad
2182 1.1.1.16.4.1 perseant authentication (wrong key, mismatched key, incorrect MAC, etc)
2183 1.1.1.16.4.1 perseant to broadcast clients. It is observed that the broadcast client
2184 1.1.1.16.4.1 perseant tears down the association with the broadcast server upon
2185 1.1.1.16.4.1 perseant receiving just one bad packet.
2186 1.1.1.16.4.1 perseant Mitigation:
2187 1.1.1.16.4.1 perseant Implement BCP-38.
2188 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2189 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
2190 1.1.1.16.4.1 perseant Monitor your 'ntpd' instances.
2191 1.1.1.16.4.1 perseant If this sort of attack is an active problem for you, you have
2192 1.1.1.16.4.1 perseant deeper problems to investigate. In this case also consider
2193 1.1.1.16.4.1 perseant having smaller NTP broadcast domains.
2194 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Aanchal Malhotra of Boston
2195 1.1.1.16.4.1 perseant University.
2196 1.1.1.16.4.1 perseant
2197 1.1.1.16.4.1 perseant * reslist NULL pointer dereference
2198 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2199 1.1.1.16.4.1 perseant References: Sec 2939 / CVE-2015-7977
2200 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2201 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2202 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
2203 1.1.1.16.4.1 perseant Summary: An unauthenticated 'ntpdc reslist' command can cause a
2204 1.1.1.16.4.1 perseant segmentation fault in ntpd by causing a NULL pointer dereference.
2205 1.1.1.16.4.1 perseant Mitigation:
2206 1.1.1.16.4.1 perseant Implement BCP-38.
2207 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from NTP Project Download Page or
2208 1.1.1.16.4.1 perseant the NTP Public Services Project Download Page.
2209 1.1.1.16.4.1 perseant If you are unable to upgrade:
2210 1.1.1.16.4.1 perseant mode 7 is disabled by default. Don't enable it.
2211 1.1.1.16.4.1 perseant If you must enable mode 7:
2212 1.1.1.16.4.1 perseant configure the use of a 'requestkey' to control who can
2213 1.1.1.16.4.1 perseant issue mode 7 requests.
2214 1.1.1.16.4.1 perseant configure 'restrict noquery' to further limit mode 7
2215 1.1.1.16.4.1 perseant requests to trusted sources.
2216 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2217 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Stephen Gray of Cisco ASIG.
2218 1.1.1.16.4.1 perseant
2219 1.1.1.16.4.1 perseant * 'ntpq saveconfig' command allows dangerous characters in filenames.
2220 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2221 1.1.1.16.4.1 perseant References: Sec 2938 / CVE-2015-7976
2222 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2223 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2224 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:S/C:N/I:P/A:N) Base Score: 4.0 - MEDIUM
2225 1.1.1.16.4.1 perseant Summary: The ntpq saveconfig command does not do adequate filtering
2226 1.1.1.16.4.1 perseant of special characters from the supplied filename.
2227 1.1.1.16.4.1 perseant Note well: The ability to use the saveconfig command is controlled
2228 1.1.1.16.4.1 perseant by the 'restrict nomodify' directive, and the recommended default
2229 1.1.1.16.4.1 perseant configuration is to disable this capability. If the ability to
2230 1.1.1.16.4.1 perseant execute a 'saveconfig' is required, it can easily (and should) be
2231 1.1.1.16.4.1 perseant limited and restricted to a known small number of IP addresses.
2232 1.1.1.16.4.1 perseant Mitigation:
2233 1.1.1.16.4.1 perseant Implement BCP-38.
2234 1.1.1.16.4.1 perseant use 'restrict default nomodify' in your 'ntp.conf' file.
2235 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page.
2236 1.1.1.16.4.1 perseant If you are unable to upgrade:
2237 1.1.1.16.4.1 perseant build NTP with 'configure --disable-saveconfig' if you will
2238 1.1.1.16.4.1 perseant never need this capability, or
2239 1.1.1.16.4.1 perseant use 'restrict default nomodify' in your 'ntp.conf' file. Be
2240 1.1.1.16.4.1 perseant careful about what IPs have the ability to send 'modify'
2241 1.1.1.16.4.1 perseant requests to 'ntpd'.
2242 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2243 1.1.1.16.4.1 perseant 'saveconfig' requests are logged to syslog - monitor your syslog files.
2244 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
2245 1.1.1.16.4.1 perseant
2246 1.1.1.16.4.1 perseant * nextvar() missing length check in ntpq
2247 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2248 1.1.1.16.4.1 perseant References: Sec 2937 / CVE-2015-7975
2249 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2250 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2251 1.1.1.16.4.1 perseant CVSS: (AV:L/AC:H/Au:N/C:N/I:N/A:P) Base Score: 1.2 - LOW
2252 1.1.1.16.4.1 perseant If you score A:C, this becomes 4.0.
2253 1.1.1.16.4.1 perseant CVSSv3: (CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L) Base Score 2.9, LOW
2254 1.1.1.16.4.1 perseant Summary: ntpq may call nextvar() which executes a memcpy() into the
2255 1.1.1.16.4.1 perseant name buffer without a proper length check against its maximum
2256 1.1.1.16.4.1 perseant length of 256 bytes. Note well that we're taking about ntpq here.
2257 1.1.1.16.4.1 perseant The usual worst-case effect of this vulnerability is that the
2258 1.1.1.16.4.1 perseant specific instance of ntpq will crash and the person or process
2259 1.1.1.16.4.1 perseant that did this will have stopped themselves.
2260 1.1.1.16.4.1 perseant Mitigation:
2261 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2262 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
2263 1.1.1.16.4.1 perseant If you are unable to upgrade:
2264 1.1.1.16.4.1 perseant If you have scripts that feed input to ntpq make sure there are
2265 1.1.1.16.4.1 perseant some sanity checks on the input received from the "outside".
2266 1.1.1.16.4.1 perseant This is potentially more dangerous if ntpq is run as root.
2267 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Jonathan Gardner at Cisco ASIG.
2268 1.1.1.16.4.1 perseant
2269 1.1.1.16.4.1 perseant * Skeleton Key: Any trusted key system can serve time
2270 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2271 1.1.1.16.4.1 perseant References: Sec 2936 / CVE-2015-7974
2272 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2273 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2274 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:S/C:N/I:C/A:N) Base Score: 4.9
2275 1.1.1.16.4.1 perseant Summary: Symmetric key encryption uses a shared trusted key. The
2276 1.1.1.16.4.1 perseant reported title for this issue was "Missing key check allows
2277 1.1.1.16.4.1 perseant impersonation between authenticated peers" and the report claimed
2278 1.1.1.16.4.1 perseant "A key specified only for one server should only work to
2279 1.1.1.16.4.1 perseant authenticate that server, other trusted keys should be refused."
2280 1.1.1.16.4.1 perseant Except there has never been any correlation between this trusted
2281 1.1.1.16.4.1 perseant key and server v. clients machines and there has never been any
2282 1.1.1.16.4.1 perseant way to specify a key only for one server. We have treated this as
2283 1.1.1.16.4.1 perseant an enhancement request, and ntp-4.2.8p6 includes other checks and
2284 1.1.1.16.4.1 perseant tests to strengthen clients against attacks coming from broadcast
2285 1.1.1.16.4.1 perseant servers.
2286 1.1.1.16.4.1 perseant Mitigation:
2287 1.1.1.16.4.1 perseant Implement BCP-38.
2288 1.1.1.16.4.1 perseant If this scenario represents a real or a potential issue for you,
2289 1.1.1.16.4.1 perseant upgrade to 4.2.8p6, or later, from the NTP Project Download
2290 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page, and
2291 1.1.1.16.4.1 perseant use the new field in the ntp.keys file that specifies the list
2292 1.1.1.16.4.1 perseant of IPs that are allowed to serve time. Note that this alone
2293 1.1.1.16.4.1 perseant will not protect against time packets with forged source IP
2294 1.1.1.16.4.1 perseant addresses, however other changes in ntp-4.2.8p6 provide
2295 1.1.1.16.4.1 perseant significant mitigation against broadcast attacks. MITM attacks
2296 1.1.1.16.4.1 perseant are a different story.
2297 1.1.1.16.4.1 perseant If you are unable to upgrade:
2298 1.1.1.16.4.1 perseant Don't use broadcast mode if you cannot monitor your client
2299 1.1.1.16.4.1 perseant servers.
2300 1.1.1.16.4.1 perseant If you choose to use symmetric keys to authenticate time
2301 1.1.1.16.4.1 perseant packets in a hostile environment where ephemeral time
2302 1.1.1.16.4.1 perseant servers can be created, or if it is expected that malicious
2303 1.1.1.16.4.1 perseant time servers will participate in an NTP broadcast domain,
2304 1.1.1.16.4.1 perseant limit the number of participating systems that participate
2305 1.1.1.16.4.1 perseant in the shared-key group.
2306 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2307 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matt Street of Cisco ASIG.
2308 1.1.1.16.4.1 perseant
2309 1.1.1.16.4.1 perseant * Deja Vu: Replay attack on authenticated broadcast mode
2310 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
2311 1.1.1.16.4.1 perseant References: Sec 2935 / CVE-2015-7973
2312 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
2313 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.90
2314 1.1.1.16.4.1 perseant CVSS: (AV:A/AC:M/Au:N/C:N/I:P/A:P) Base Score: 4.3 - MEDIUM
2315 1.1.1.16.4.1 perseant Summary: If an NTP network is configured for broadcast operations then
2316 1.1.1.16.4.1 perseant either a man-in-the-middle attacker or a malicious participant
2317 1.1.1.16.4.1 perseant that has the same trusted keys as the victim can replay time packets.
2318 1.1.1.16.4.1 perseant Mitigation:
2319 1.1.1.16.4.1 perseant Implement BCP-38.
2320 1.1.1.16.4.1 perseant Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
2321 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
2322 1.1.1.16.4.1 perseant If you are unable to upgrade:
2323 1.1.1.16.4.1 perseant Don't use broadcast mode if you cannot monitor your client servers.
2324 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2325 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Aanchal Malhotra of Boston
2326 1.1.1.16.4.1 perseant University.
2327 1.1.1.16.4.1 perseant
2328 1.1.1.16.4.1 perseant Other fixes:
2329 1.1.1.16.4.1 perseant
2330 1.1.1.16.4.1 perseant * [Bug 2772] adj_systime overflows tv_usec. perlinger (a] ntp.org
2331 1.1.1.16.4.1 perseant * [Bug 2814] msyslog deadlock when signaled. perlinger (a] ntp.org
2332 1.1.1.16.4.1 perseant - applied patch by shenpeng11 (a] huawei.com with minor adjustments
2333 1.1.1.16.4.1 perseant * [Bug 2882] Look at ntp_request.c:list_peers_sum(). perlinger (a] ntp.org
2334 1.1.1.16.4.1 perseant * [Bug 2891] Deadlock in deferred DNS lookup framework. perlinger (a] ntp.org
2335 1.1.1.16.4.1 perseant * [Bug 2892] Several test cases assume IPv6 capabilities even when
2336 1.1.1.16.4.1 perseant IPv6 is disabled in the build. perlinger (a] ntp.org
2337 1.1.1.16.4.1 perseant - Found this already fixed, but validation led to cleanup actions.
2338 1.1.1.16.4.1 perseant * [Bug 2905] DNS lookups broken. perlinger (a] ntp.org
2339 1.1.1.16.4.1 perseant - added limits to stack consumption, fixed some return code handling
2340 1.1.1.16.4.1 perseant * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
2341 1.1.1.16.4.1 perseant - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
2342 1.1.1.16.4.1 perseant - make CTRL-C work for retrieval and printing od MRU list. perlinger (a] ntp.org
2343 1.1.1.16.4.1 perseant * [Bug 2980] reduce number of warnings. perlinger (a] ntp.org
2344 1.1.1.16.4.1 perseant - integrated several patches from Havard Eidnes (he (a] uninett.no)
2345 1.1.1.16.4.1 perseant * [Bug 2985] bogus calculation in authkeys.c perlinger (a] ntp.org
2346 1.1.1.16.4.1 perseant - implement 'auth_log2()' using integer bithack instead of float calculation
2347 1.1.1.16.4.1 perseant * Make leapsec_query debug messages less verbose. Harlan Stenn.
2348 1.1.1.16.4.1 perseant
2349 1.1.1.16.4.1 perseant ---
2350 1.1.1.16.4.1 perseant NTP 4.2.8p5 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/07)
2351 1.1.1.16.4.1 perseant
2352 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
2353 1.1.1.16.4.1 perseant
2354 1.1.1.16.4.1 perseant Severity: MEDIUM
2355 1.1.1.16.4.1 perseant
2356 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
2357 1.1.1.16.4.1 perseant following medium-severity vulnerability:
2358 1.1.1.16.4.1 perseant
2359 1.1.1.16.4.1 perseant * Small-step/big-step. Close the panic gate earlier.
2360 1.1.1.16.4.1 perseant References: Sec 2956, CVE-2015-5300
2361 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p5, and
2362 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.78
2363 1.1.1.16.4.1 perseant CVSS3: (AV:N/AC:H/PR:H/UI:R/S:C/C:L/I:N/A:L) Base Score: 4.0, MEDIUM
2364 1.1.1.16.4.1 perseant Summary: If ntpd is always started with the -g option, which is
2365 1.1.1.16.4.1 perseant common and against long-standing recommendation, and if at the
2366 1.1.1.16.4.1 perseant moment ntpd is restarted an attacker can immediately respond to
2367 1.1.1.16.4.1 perseant enough requests from enough sources trusted by the target, which
2368 1.1.1.16.4.1 perseant is difficult and not common, there is a window of opportunity
2369 1.1.1.16.4.1 perseant where the attacker can cause ntpd to set the time to an
2370 1.1.1.16.4.1 perseant arbitrary value. Similarly, if an attacker is able to respond
2371 1.1.1.16.4.1 perseant to enough requests from enough sources trusted by the target,
2372 1.1.1.16.4.1 perseant the attacker can cause ntpd to abort and restart, at which
2373 1.1.1.16.4.1 perseant point it can tell the target to set the time to an arbitrary
2374 1.1.1.16.4.1 perseant value if and only if ntpd was re-started against long-standing
2375 1.1.1.16.4.1 perseant recommendation with the -g flag, or if ntpd was not given the
2376 1.1.1.16.4.1 perseant -g flag, the attacker can move the target system's time by at
2377 1.1.1.16.4.1 perseant most 900 seconds' time per attack.
2378 1.1.1.16.4.1 perseant Mitigation:
2379 1.1.1.16.4.1 perseant Configure ntpd to get time from multiple sources.
2380 1.1.1.16.4.1 perseant Upgrade to 4.2.8p5, or later, from the NTP Project Download
2381 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page
2382 1.1.1.16.4.1 perseant As we've long documented, only use the -g option to ntpd in
2383 1.1.1.16.4.1 perseant cold-start situations.
2384 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2385 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Aanchal Malhotra,
2386 1.1.1.16.4.1 perseant Isaac E. Cohen, and Sharon Goldberg at Boston University.
2387 1.1.1.16.4.1 perseant
2388 1.1.1.16.4.1 perseant NOTE WELL: The -g flag disables the limit check on the panic_gate
2389 1.1.1.16.4.1 perseant in ntpd, which is 900 seconds by default. The bug identified by
2390 1.1.1.16.4.1 perseant the researchers at Boston University is that the panic_gate
2391 1.1.1.16.4.1 perseant check was only re-enabled after the first change to the system
2392 1.1.1.16.4.1 perseant clock that was greater than 128 milliseconds, by default. The
2393 1.1.1.16.4.1 perseant correct behavior is that the panic_gate check should be
2394 1.1.1.16.4.1 perseant re-enabled after any initial time correction.
2395 1.1.1.16.4.1 perseant
2396 1.1.1.16.4.1 perseant If an attacker is able to inject consistent but erroneous time
2397 1.1.1.16.4.1 perseant responses to your systems via the network or "over the air",
2398 1.1.1.16.4.1 perseant perhaps by spoofing radio, cellphone, or navigation satellite
2399 1.1.1.16.4.1 perseant transmissions, they are in a great position to affect your
2400 1.1.1.16.4.1 perseant system's clock. There comes a point where your very best
2401 1.1.1.16.4.1 perseant defenses include:
2402 1.1.1.16.4.1 perseant
2403 1.1.1.16.4.1 perseant Configure ntpd to get time from multiple sources.
2404 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2405 1.1.1.16.4.1 perseant
2406 1.1.1.16.4.1 perseant Other fixes:
2407 1.1.1.16.4.1 perseant
2408 1.1.1.16.4.1 perseant * Coverity submission process updated from Coverity 5 to Coverity 7.
2409 1.1.1.16.4.1 perseant The NTP codebase has been undergoing regular Coverity scans on an
2410 1.1.1.16.4.1 perseant ongoing basis since 2006. As part of our recent upgrade from
2411 1.1.1.16.4.1 perseant Coverity 5 to Coverity 7, Coverity identified 16 nits in some of
2412 1.1.1.16.4.1 perseant the newly-written Unity test programs. These were fixed.
2413 1.1.1.16.4.1 perseant * [Bug 2829] Clean up pipe_fds in ntpd.c perlinger (a] ntp.org
2414 1.1.1.16.4.1 perseant * [Bug 2887] stratum -1 config results as showing value 99
2415 1.1.1.16.4.1 perseant - fudge stratum should only accept values [0..16]. perlinger (a] ntp.org
2416 1.1.1.16.4.1 perseant * [Bug 2932] Update leapsecond file info in miscopt.html. CWoodbury, HStenn.
2417 1.1.1.16.4.1 perseant * [Bug 2934] tests/ntpd/t-ntp_scanner.c has a magic constant wired in. HMurray
2418 1.1.1.16.4.1 perseant * [Bug 2944] errno is not preserved properly in ntpdate after sendto call.
2419 1.1.1.16.4.1 perseant - applied patch by Christos Zoulas. perlinger (a] ntp.org
2420 1.1.1.16.4.1 perseant * [Bug 2952] Peer associations broken by fix for Bug 2901/CVE-2015-7704.
2421 1.1.1.16.4.1 perseant * [Bug 2954] Version 4.2.8p4 crashes on startup on some OSes.
2422 1.1.1.16.4.1 perseant - fixed data race conditions in threaded DNS worker. perlinger (a] ntp.org
2423 1.1.1.16.4.1 perseant - limit threading warm-up to linux; FreeBSD bombs on it. perlinger (a] ntp.org
2424 1.1.1.16.4.1 perseant * [Bug 2957] 'unsigned int' vs 'size_t' format clash. perlinger (a] ntp.org
2425 1.1.1.16.4.1 perseant - accept key file only if there are no parsing errors
2426 1.1.1.16.4.1 perseant - fixed size_t/u_int format clash
2427 1.1.1.16.4.1 perseant - fixed wrong use of 'strlcpy'
2428 1.1.1.16.4.1 perseant * [Bug 2958] ntpq: fatal error messages need a final newline. Craig Leres.
2429 1.1.1.16.4.1 perseant * [Bug 2962] truncation of size_t/ptrdiff_t on 64bit targets. perlinger (a] ntp.org
2430 1.1.1.16.4.1 perseant - fixed several other warnings (cast-alignment, missing const, missing prototypes)
2431 1.1.1.16.4.1 perseant - promote use of 'size_t' for values that express a size
2432 1.1.1.16.4.1 perseant - use ptr-to-const for read-only arguments
2433 1.1.1.16.4.1 perseant - make sure SOCKET values are not truncated (win32-specific)
2434 1.1.1.16.4.1 perseant - format string fixes
2435 1.1.1.16.4.1 perseant * [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki.
2436 1.1.1.16.4.1 perseant * [Bug 2967] ntpdate command suffers an assertion failure
2437 1.1.1.16.4.1 perseant - fixed ntp_rfc2553.c to return proper address length. perlinger (a] ntp.org
2438 1.1.1.16.4.1 perseant * [Bug 2969] Seg fault from ntpq/mrulist when looking at server with
2439 1.1.1.16.4.1 perseant lots of clients. perlinger (a] ntp.org
2440 1.1.1.16.4.1 perseant * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
2441 1.1.1.16.4.1 perseant - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
2442 1.1.1.16.4.1 perseant * Unity cleanup for FreeBSD-6.4. Harlan Stenn.
2443 1.1.1.16.4.1 perseant * Unity test cleanup. Harlan Stenn.
2444 1.1.1.16.4.1 perseant * Libevent autoconf pthread fixes for FreeBSD-10. Harlan Stenn.
2445 1.1.1.16.4.1 perseant * Header cleanup in tests/sandbox/uglydate.c. Harlan Stenn.
2446 1.1.1.16.4.1 perseant * Header cleanup in tests/libntp/sfptostr.c. Harlan Stenn.
2447 1.1.1.16.4.1 perseant * Quiet a warning from clang. Harlan Stenn.
2448 1.1.1.16.4.1 perseant
2449 1.1.1.16.4.1 perseant ---
2450 1.1.1.16.4.1 perseant NTP 4.2.8p4 (Harlan Stenn <stenn (a] ntp.org>, 2015/10/21)
2451 1.1.1.16.4.1 perseant
2452 1.1.1.16.4.1 perseant Focus: Security, Bug fixes, enhancements.
2453 1.1.1.16.4.1 perseant
2454 1.1.1.16.4.1 perseant Severity: MEDIUM
2455 1.1.1.16.4.1 perseant
2456 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
2457 1.1.1.16.4.1 perseant following 13 low- and medium-severity vulnerabilities:
2458 1.1.1.16.4.1 perseant
2459 1.1.1.16.4.1 perseant * Incomplete vallen (value length) checks in ntp_crypto.c, leading
2460 1.1.1.16.4.1 perseant to potential crashes or potential code injection/information leakage.
2461 1.1.1.16.4.1 perseant
2462 1.1.1.16.4.1 perseant References: Sec 2899, Sec 2671, CVE-2015-7691, CVE-2015-7692, CVE-2015-7702
2463 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2464 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2465 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
2466 1.1.1.16.4.1 perseant Summary: The fix for CVE-2014-9750 was incomplete in that there were
2467 1.1.1.16.4.1 perseant certain code paths where a packet with particular autokey operations
2468 1.1.1.16.4.1 perseant that contained malicious data was not always being completely
2469 1.1.1.16.4.1 perseant validated. Receipt of these packets can cause ntpd to crash.
2470 1.1.1.16.4.1 perseant Mitigation:
2471 1.1.1.16.4.1 perseant Don't use autokey.
2472 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2473 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page
2474 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2475 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Tenable Network Security.
2476 1.1.1.16.4.1 perseant
2477 1.1.1.16.4.1 perseant * Clients that receive a KoD should validate the origin timestamp field.
2478 1.1.1.16.4.1 perseant
2479 1.1.1.16.4.1 perseant References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
2480 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2481 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2482 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3-5.0 at worst
2483 1.1.1.16.4.1 perseant Summary: An ntpd client that honors Kiss-of-Death responses will honor
2484 1.1.1.16.4.1 perseant KoD messages that have been forged by an attacker, causing it to
2485 1.1.1.16.4.1 perseant delay or stop querying its servers for time updates. Also, an
2486 1.1.1.16.4.1 perseant attacker can forge packets that claim to be from the target and
2487 1.1.1.16.4.1 perseant send them to servers often enough that a server that implements
2488 1.1.1.16.4.1 perseant KoD rate limiting will send the target machine a KoD response to
2489 1.1.1.16.4.1 perseant attempt to reduce the rate of incoming packets, or it may also
2490 1.1.1.16.4.1 perseant trigger a firewall block at the server for packets from the target
2491 1.1.1.16.4.1 perseant machine. For either of these attacks to succeed, the attacker must
2492 1.1.1.16.4.1 perseant know what servers the target is communicating with. An attacker
2493 1.1.1.16.4.1 perseant can be anywhere on the Internet and can frequently learn the
2494 1.1.1.16.4.1 perseant identity of the target's time source by sending the target a
2495 1.1.1.16.4.1 perseant time query.
2496 1.1.1.16.4.1 perseant Mitigation:
2497 1.1.1.16.4.1 perseant Implement BCP-38.
2498 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download Page
2499 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
2500 1.1.1.16.4.1 perseant If you can't upgrade, restrict who can query ntpd to learn who
2501 1.1.1.16.4.1 perseant its servers are, and what IPs are allowed to ask your system
2502 1.1.1.16.4.1 perseant for the time. This mitigation is heavy-handed.
2503 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2504 1.1.1.16.4.1 perseant Note:
2505 1.1.1.16.4.1 perseant 4.2.8p4 protects against the first attack. For the second attack,
2506 1.1.1.16.4.1 perseant all we can do is warn when it is happening, which we do in 4.2.8p4.
2507 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Aanchal Malhotra,
2508 1.1.1.16.4.1 perseant Issac E. Cohen, and Sharon Goldberg of Boston University.
2509 1.1.1.16.4.1 perseant
2510 1.1.1.16.4.1 perseant * configuration directives to change "pidfile" and "driftfile" should
2511 1.1.1.16.4.1 perseant only be allowed locally.
2512 1.1.1.16.4.1 perseant
2513 1.1.1.16.4.1 perseant References: Sec 2902 / CVE-2015-5196
2514 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2515 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2516 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.2 worst case
2517 1.1.1.16.4.1 perseant Summary: If ntpd is configured to allow for remote configuration,
2518 1.1.1.16.4.1 perseant and if the (possibly spoofed) source IP address is allowed to
2519 1.1.1.16.4.1 perseant send remote configuration requests, and if the attacker knows
2520 1.1.1.16.4.1 perseant the remote configuration password, it's possible for an attacker
2521 1.1.1.16.4.1 perseant to use the "pidfile" or "driftfile" directives to potentially
2522 1.1.1.16.4.1 perseant overwrite other files.
2523 1.1.1.16.4.1 perseant Mitigation:
2524 1.1.1.16.4.1 perseant Implement BCP-38.
2525 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2526 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page
2527 1.1.1.16.4.1 perseant If you cannot upgrade, don't enable remote configuration.
2528 1.1.1.16.4.1 perseant If you must enable remote configuration and cannot upgrade,
2529 1.1.1.16.4.1 perseant remote configuration of NTF's ntpd requires:
2530 1.1.1.16.4.1 perseant - an explicitly configured trustedkey, and you should also
2531 1.1.1.16.4.1 perseant configure a controlkey.
2532 1.1.1.16.4.1 perseant - access from a permitted IP. You choose the IPs.
2533 1.1.1.16.4.1 perseant - authentication. Don't disable it. Practice secure key safety.
2534 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2535 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
2536 1.1.1.16.4.1 perseant
2537 1.1.1.16.4.1 perseant * Slow memory leak in CRYPTO_ASSOC
2538 1.1.1.16.4.1 perseant
2539 1.1.1.16.4.1 perseant References: Sec 2909 / CVE-2015-7701
2540 1.1.1.16.4.1 perseant Affects: All ntp-4 releases that use autokey up to, but not
2541 1.1.1.16.4.1 perseant including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2542 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 0.0 best/usual case,
2543 1.1.1.16.4.1 perseant 4.6 otherwise
2544 1.1.1.16.4.1 perseant Summary: If ntpd is configured to use autokey, then an attacker can
2545 1.1.1.16.4.1 perseant send packets to ntpd that will, after several days of ongoing
2546 1.1.1.16.4.1 perseant attack, cause it to run out of memory.
2547 1.1.1.16.4.1 perseant Mitigation:
2548 1.1.1.16.4.1 perseant Don't use autokey.
2549 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2550 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page
2551 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2552 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Tenable Network Security.
2553 1.1.1.16.4.1 perseant
2554 1.1.1.16.4.1 perseant * mode 7 loop counter underrun
2555 1.1.1.16.4.1 perseant
2556 1.1.1.16.4.1 perseant References: Sec 2913 / CVE-2015-7848 / TALOS-CAN-0052
2557 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2558 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2559 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
2560 1.1.1.16.4.1 perseant Summary: If ntpd is configured to enable mode 7 packets, and if the
2561 1.1.1.16.4.1 perseant use of mode 7 packets is not properly protected thru the use of
2562 1.1.1.16.4.1 perseant the available mode 7 authentication and restriction mechanisms,
2563 1.1.1.16.4.1 perseant and if the (possibly spoofed) source IP address is allowed to
2564 1.1.1.16.4.1 perseant send mode 7 queries, then an attacker can send a crafted packet
2565 1.1.1.16.4.1 perseant to ntpd that will cause it to crash.
2566 1.1.1.16.4.1 perseant Mitigation:
2567 1.1.1.16.4.1 perseant Implement BCP-38.
2568 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2569 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2570 1.1.1.16.4.1 perseant If you are unable to upgrade:
2571 1.1.1.16.4.1 perseant In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
2572 1.1.1.16.4.1 perseant If you must enable mode 7:
2573 1.1.1.16.4.1 perseant configure the use of a requestkey to control who can issue
2574 1.1.1.16.4.1 perseant mode 7 requests.
2575 1.1.1.16.4.1 perseant configure restrict noquery to further limit mode 7 requests
2576 1.1.1.16.4.1 perseant to trusted sources.
2577 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2578 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Aleksandar Nikolic of Cisco Talos.
2579 1.1.1.16.4.1 perseant
2580 1.1.1.16.4.1 perseant * memory corruption in password store
2581 1.1.1.16.4.1 perseant
2582 1.1.1.16.4.1 perseant References: Sec 2916 / CVE-2015-7849 / TALOS-CAN-0054
2583 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2584 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.8, worst case
2585 1.1.1.16.4.1 perseant Summary: If ntpd is configured to allow remote configuration, and if
2586 1.1.1.16.4.1 perseant the (possibly spoofed) source IP address is allowed to send
2587 1.1.1.16.4.1 perseant remote configuration requests, and if the attacker knows the
2588 1.1.1.16.4.1 perseant remote configuration password or if ntpd was configured to
2589 1.1.1.16.4.1 perseant disable authentication, then an attacker can send a set of
2590 1.1.1.16.4.1 perseant packets to ntpd that may cause a crash or theoretically
2591 1.1.1.16.4.1 perseant perform a code injection attack.
2592 1.1.1.16.4.1 perseant Mitigation:
2593 1.1.1.16.4.1 perseant Implement BCP-38.
2594 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2595 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2596 1.1.1.16.4.1 perseant If you are unable to upgrade, remote configuration of NTF's
2597 1.1.1.16.4.1 perseant ntpd requires:
2598 1.1.1.16.4.1 perseant an explicitly configured "trusted" key. Only configure
2599 1.1.1.16.4.1 perseant this if you need it.
2600 1.1.1.16.4.1 perseant access from a permitted IP address. You choose the IPs.
2601 1.1.1.16.4.1 perseant authentication. Don't disable it. Practice secure key safety.
2602 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2603 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2604 1.1.1.16.4.1 perseant
2605 1.1.1.16.4.1 perseant * Infinite loop if extended logging enabled and the logfile and
2606 1.1.1.16.4.1 perseant keyfile are the same.
2607 1.1.1.16.4.1 perseant
2608 1.1.1.16.4.1 perseant References: Sec 2917 / CVE-2015-7850 / TALOS-CAN-0055
2609 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2610 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2611 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
2612 1.1.1.16.4.1 perseant Summary: If ntpd is configured to allow remote configuration, and if
2613 1.1.1.16.4.1 perseant the (possibly spoofed) source IP address is allowed to send
2614 1.1.1.16.4.1 perseant remote configuration requests, and if the attacker knows the
2615 1.1.1.16.4.1 perseant remote configuration password or if ntpd was configured to
2616 1.1.1.16.4.1 perseant disable authentication, then an attacker can send a set of
2617 1.1.1.16.4.1 perseant packets to ntpd that will cause it to crash and/or create a
2618 1.1.1.16.4.1 perseant potentially huge log file. Specifically, the attacker could
2619 1.1.1.16.4.1 perseant enable extended logging, point the key file at the log file,
2620 1.1.1.16.4.1 perseant and cause what amounts to an infinite loop.
2621 1.1.1.16.4.1 perseant Mitigation:
2622 1.1.1.16.4.1 perseant Implement BCP-38.
2623 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2624 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2625 1.1.1.16.4.1 perseant If you are unable to upgrade, remote configuration of NTF's ntpd
2626 1.1.1.16.4.1 perseant requires:
2627 1.1.1.16.4.1 perseant an explicitly configured "trusted" key. Only configure this
2628 1.1.1.16.4.1 perseant if you need it.
2629 1.1.1.16.4.1 perseant access from a permitted IP address. You choose the IPs.
2630 1.1.1.16.4.1 perseant authentication. Don't disable it. Practice secure key safety.
2631 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2632 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2633 1.1.1.16.4.1 perseant
2634 1.1.1.16.4.1 perseant * Potential path traversal vulnerability in the config file saving of
2635 1.1.1.16.4.1 perseant ntpd on VMS.
2636 1.1.1.16.4.1 perseant
2637 1.1.1.16.4.1 perseant References: Sec 2918 / CVE-2015-7851 / TALOS-CAN-0062
2638 1.1.1.16.4.1 perseant Affects: All ntp-4 releases running under VMS up to, but not
2639 1.1.1.16.4.1 perseant including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2640 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:P/A:C) Base Score: 5.2, worst case
2641 1.1.1.16.4.1 perseant Summary: If ntpd is configured to allow remote configuration, and if
2642 1.1.1.16.4.1 perseant the (possibly spoofed) IP address is allowed to send remote
2643 1.1.1.16.4.1 perseant configuration requests, and if the attacker knows the remote
2644 1.1.1.16.4.1 perseant configuration password or if ntpd was configured to disable
2645 1.1.1.16.4.1 perseant authentication, then an attacker can send a set of packets to
2646 1.1.1.16.4.1 perseant ntpd that may cause ntpd to overwrite files.
2647 1.1.1.16.4.1 perseant Mitigation:
2648 1.1.1.16.4.1 perseant Implement BCP-38.
2649 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2650 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2651 1.1.1.16.4.1 perseant If you are unable to upgrade, remote configuration of NTF's ntpd
2652 1.1.1.16.4.1 perseant requires:
2653 1.1.1.16.4.1 perseant an explicitly configured "trusted" key. Only configure
2654 1.1.1.16.4.1 perseant this if you need it.
2655 1.1.1.16.4.1 perseant access from permitted IP addresses. You choose the IPs.
2656 1.1.1.16.4.1 perseant authentication. Don't disable it. Practice key security safety.
2657 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2658 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2659 1.1.1.16.4.1 perseant
2660 1.1.1.16.4.1 perseant * ntpq atoascii() potential memory corruption
2661 1.1.1.16.4.1 perseant
2662 1.1.1.16.4.1 perseant References: Sec 2919 / CVE-2015-7852 / TALOS-CAN-0063
2663 1.1.1.16.4.1 perseant Affects: All ntp-4 releases running up to, but not including 4.2.8p4,
2664 1.1.1.16.4.1 perseant and 4.3.0 up to, but not including 4.3.77
2665 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:N/C:N/I:P/A:P) Base Score: 4.0, worst case
2666 1.1.1.16.4.1 perseant Summary: If an attacker can figure out the precise moment that ntpq
2667 1.1.1.16.4.1 perseant is listening for data and the port number it is listening on or
2668 1.1.1.16.4.1 perseant if the attacker can provide a malicious instance ntpd that
2669 1.1.1.16.4.1 perseant victims will connect to then an attacker can send a set of
2670 1.1.1.16.4.1 perseant crafted mode 6 response packets that, if received by ntpq,
2671 1.1.1.16.4.1 perseant can cause ntpq to crash.
2672 1.1.1.16.4.1 perseant Mitigation:
2673 1.1.1.16.4.1 perseant Implement BCP-38.
2674 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2675 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2676 1.1.1.16.4.1 perseant If you are unable to upgrade and you run ntpq against a server
2677 1.1.1.16.4.1 perseant and ntpq crashes, try again using raw mode. Build or get a
2678 1.1.1.16.4.1 perseant patched ntpq and see if that fixes the problem. Report new
2679 1.1.1.16.4.1 perseant bugs in ntpq or abusive servers appropriately.
2680 1.1.1.16.4.1 perseant If you use ntpq in scripts, make sure ntpq does what you expect
2681 1.1.1.16.4.1 perseant in your scripts.
2682 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan and
2683 1.1.1.16.4.1 perseant Aleksander Nikolich of Cisco Talos.
2684 1.1.1.16.4.1 perseant
2685 1.1.1.16.4.1 perseant * Invalid length data provided by a custom refclock driver could cause
2686 1.1.1.16.4.1 perseant a buffer overflow.
2687 1.1.1.16.4.1 perseant
2688 1.1.1.16.4.1 perseant References: Sec 2920 / CVE-2015-7853 / TALOS-CAN-0064
2689 1.1.1.16.4.1 perseant Affects: Potentially all ntp-4 releases running up to, but not
2690 1.1.1.16.4.1 perseant including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2691 1.1.1.16.4.1 perseant that have custom refclocks
2692 1.1.1.16.4.1 perseant CVSS: (AV:L/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 usual case,
2693 1.1.1.16.4.1 perseant 5.9 unusual worst case
2694 1.1.1.16.4.1 perseant Summary: A negative value for the datalen parameter will overflow a
2695 1.1.1.16.4.1 perseant data buffer. NTF's ntpd driver implementations always set this
2696 1.1.1.16.4.1 perseant value to 0 and are therefore not vulnerable to this weakness.
2697 1.1.1.16.4.1 perseant If you are running a custom refclock driver in ntpd and that
2698 1.1.1.16.4.1 perseant driver supplies a negative value for datalen (no custom driver
2699 1.1.1.16.4.1 perseant of even minimal competence would do this) then ntpd would
2700 1.1.1.16.4.1 perseant overflow a data buffer. It is even hypothetically possible
2701 1.1.1.16.4.1 perseant in this case that instead of simply crashing ntpd the attacker
2702 1.1.1.16.4.1 perseant could effect a code injection attack.
2703 1.1.1.16.4.1 perseant Mitigation:
2704 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2705 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2706 1.1.1.16.4.1 perseant If you are unable to upgrade:
2707 1.1.1.16.4.1 perseant If you are running custom refclock drivers, make sure
2708 1.1.1.16.4.1 perseant the signed datalen value is either zero or positive.
2709 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2710 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2711 1.1.1.16.4.1 perseant
2712 1.1.1.16.4.1 perseant * Password Length Memory Corruption Vulnerability
2713 1.1.1.16.4.1 perseant
2714 1.1.1.16.4.1 perseant References: Sec 2921 / CVE-2015-7854 / TALOS-CAN-0065
2715 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
2716 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.77
2717 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 best case,
2718 1.1.1.16.4.1 perseant 1.7 usual case, 6.8, worst case
2719 1.1.1.16.4.1 perseant Summary: If ntpd is configured to allow remote configuration, and if
2720 1.1.1.16.4.1 perseant the (possibly spoofed) source IP address is allowed to send
2721 1.1.1.16.4.1 perseant remote configuration requests, and if the attacker knows the
2722 1.1.1.16.4.1 perseant remote configuration password or if ntpd was (foolishly)
2723 1.1.1.16.4.1 perseant configured to disable authentication, then an attacker can
2724 1.1.1.16.4.1 perseant send a set of packets to ntpd that may cause it to crash,
2725 1.1.1.16.4.1 perseant with the hypothetical possibility of a small code injection.
2726 1.1.1.16.4.1 perseant Mitigation:
2727 1.1.1.16.4.1 perseant Implement BCP-38.
2728 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2729 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2730 1.1.1.16.4.1 perseant If you are unable to upgrade, remote configuration of NTF's
2731 1.1.1.16.4.1 perseant ntpd requires:
2732 1.1.1.16.4.1 perseant an explicitly configured "trusted" key. Only configure
2733 1.1.1.16.4.1 perseant this if you need it.
2734 1.1.1.16.4.1 perseant access from a permitted IP address. You choose the IPs.
2735 1.1.1.16.4.1 perseant authentication. Don't disable it. Practice secure key safety.
2736 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2737 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Yves Younan and
2738 1.1.1.16.4.1 perseant Aleksander Nikolich of Cisco Talos.
2739 1.1.1.16.4.1 perseant
2740 1.1.1.16.4.1 perseant * decodenetnum() will ASSERT botch instead of returning FAIL on some
2741 1.1.1.16.4.1 perseant bogus values.
2742 1.1.1.16.4.1 perseant
2743 1.1.1.16.4.1 perseant References: Sec 2922 / CVE-2015-7855
2744 1.1.1.16.4.1 perseant Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
2745 1.1.1.16.4.1 perseant 4.3.0 up to, but not including 4.3.77
2746 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
2747 1.1.1.16.4.1 perseant Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing
2748 1.1.1.16.4.1 perseant an unusually long data value where a network address is expected,
2749 1.1.1.16.4.1 perseant the decodenetnum() function will abort with an assertion failure
2750 1.1.1.16.4.1 perseant instead of simply returning a failure condition.
2751 1.1.1.16.4.1 perseant Mitigation:
2752 1.1.1.16.4.1 perseant Implement BCP-38.
2753 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2754 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2755 1.1.1.16.4.1 perseant If you are unable to upgrade:
2756 1.1.1.16.4.1 perseant mode 7 is disabled by default. Don't enable it.
2757 1.1.1.16.4.1 perseant Use restrict noquery to limit who can send mode 6
2758 1.1.1.16.4.1 perseant and mode 7 requests.
2759 1.1.1.16.4.1 perseant Configure and use the controlkey and requestkey
2760 1.1.1.16.4.1 perseant authentication directives to limit who can
2761 1.1.1.16.4.1 perseant send mode 6 and mode 7 requests.
2762 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2763 1.1.1.16.4.1 perseant Credit: This weakness was discovered by John D "Doug" Birdwell of IDA.org.
2764 1.1.1.16.4.1 perseant
2765 1.1.1.16.4.1 perseant * NAK to the Future: Symmetric association authentication bypass via
2766 1.1.1.16.4.1 perseant crypto-NAK.
2767 1.1.1.16.4.1 perseant
2768 1.1.1.16.4.1 perseant References: Sec 2941 / CVE-2015-7871
2769 1.1.1.16.4.1 perseant Affects: All ntp-4 releases between 4.2.5p186 up to but not including
2770 1.1.1.16.4.1 perseant 4.2.8p4, and 4.3.0 up to but not including 4.3.77
2771 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:N/I:P/A:P) Base Score: 6.4
2772 1.1.1.16.4.1 perseant Summary: Crypto-NAK packets can be used to cause ntpd to accept time
2773 1.1.1.16.4.1 perseant from unauthenticated ephemeral symmetric peers by bypassing the
2774 1.1.1.16.4.1 perseant authentication required to mobilize peer associations. This
2775 1.1.1.16.4.1 perseant vulnerability appears to have been introduced in ntp-4.2.5p186
2776 1.1.1.16.4.1 perseant when the code handling mobilization of new passive symmetric
2777 1.1.1.16.4.1 perseant associations (lines 1103-1165) was refactored.
2778 1.1.1.16.4.1 perseant Mitigation:
2779 1.1.1.16.4.1 perseant Implement BCP-38.
2780 1.1.1.16.4.1 perseant Upgrade to 4.2.8p4, or later, from the NTP Project Download
2781 1.1.1.16.4.1 perseant Page or the NTP Public Services Project Download Page.
2782 1.1.1.16.4.1 perseant If you are unable to upgrade:
2783 1.1.1.16.4.1 perseant Apply the patch to the bottom of the "authentic" check
2784 1.1.1.16.4.1 perseant block around line 1136 of ntp_proto.c.
2785 1.1.1.16.4.1 perseant Monitor your ntpd instances.
2786 1.1.1.16.4.1 perseant Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
2787 1.1.1.16.4.1 perseant
2788 1.1.1.16.4.1 perseant Backward-Incompatible changes:
2789 1.1.1.16.4.1 perseant * [Bug 2817] Default on Linux is now "rlimit memlock -1".
2790 1.1.1.16.4.1 perseant While the general default of 32M is still the case, under Linux
2791 1.1.1.16.4.1 perseant the default value has been changed to -1 (do not lock ntpd into
2792 1.1.1.16.4.1 perseant memory). A value of 0 means "lock ntpd into memory with whatever
2793 1.1.1.16.4.1 perseant memory it needs." If your ntp.conf file has an explicit "rlimit memlock"
2794 1.1.1.16.4.1 perseant value in it, that value will continue to be used.
2795 1.1.1.16.4.1 perseant
2796 1.1.1.16.4.1 perseant * [Bug 2886] Misspelling: "outlyer" should be "outlier".
2797 1.1.1.16.4.1 perseant If you've written a script that looks for this case in, say, the
2798 1.1.1.16.4.1 perseant output of ntpq, you probably want to change your regex matches
2799 1.1.1.16.4.1 perseant from 'outlyer' to 'outl[iy]er'.
2800 1.1.1.16.4.1 perseant
2801 1.1.1.16.4.1 perseant New features in this release:
2802 1.1.1.16.4.1 perseant * 'rlimit memlock' now has finer-grained control. A value of -1 means
2803 1.1.1.16.4.1 perseant "don't lock ntpd into memore". This is the default for Linux boxes.
2804 1.1.1.16.4.1 perseant A value of 0 means "lock ntpd into memory" with no limits. Otherwise
2805 1.1.1.16.4.1 perseant the value is the number of megabytes of memory to lock. The default
2806 1.1.1.16.4.1 perseant is 32 megabytes.
2807 1.1.1.16.4.1 perseant
2808 1.1.1.16.4.1 perseant * The old Google Test framework has been replaced with a new framework,
2809 1.1.1.16.4.1 perseant based on http://www.throwtheswitch.org/unity/ .
2810 1.1.1.16.4.1 perseant
2811 1.1.1.16.4.1 perseant Bug Fixes and Improvements:
2812 1.1.1.16.4.1 perseant * [Bug 2332] (reopened) Exercise thread cancellation once before dropping
2813 1.1.1.16.4.1 perseant privileges and limiting resources in NTPD removes the need to link
2814 1.1.1.16.4.1 perseant forcefully against 'libgcc_s' which does not always work. J.Perlinger
2815 1.1.1.16.4.1 perseant * [Bug 2595] ntpdate man page quirks. Hal Murray, Harlan Stenn.
2816 1.1.1.16.4.1 perseant * [Bug 2625] Deprecate flag1 in local refclock. Hal Murray, Harlan Stenn.
2817 1.1.1.16.4.1 perseant * [Bug 2817] Stop locking ntpd into memory by default under Linux. H.Stenn.
2818 1.1.1.16.4.1 perseant * [Bug 2821] minor build issues: fixed refclock_gpsdjson.c. perlinger (a] ntp.org
2819 1.1.1.16.4.1 perseant * [Bug 2823] ntpsweep with recursive peers option doesn't work. H.Stenn.
2820 1.1.1.16.4.1 perseant * [Bug 2849] Systems with more than one default route may never
2821 1.1.1.16.4.1 perseant synchronize. Brian Utterback. Note that this patch might need to
2822 1.1.1.16.4.1 perseant be reverted once Bug 2043 has been fixed.
2823 1.1.1.16.4.1 perseant * [Bug 2864] 4.2.8p3 fails to compile on Windows. Juergen Perlinger
2824 1.1.1.16.4.1 perseant * [Bug 2866] segmentation fault at initgroups(). Harlan Stenn.
2825 1.1.1.16.4.1 perseant * [Bug 2867] ntpd with autokey active crashed by 'ntpq -crv'. J.Perlinger
2826 1.1.1.16.4.1 perseant * [Bug 2873] libevent should not include .deps/ in the tarball. H.Stenn
2827 1.1.1.16.4.1 perseant * [Bug 2874] Don't distribute generated sntp/tests/fileHandlingTest.h. H.Stenn
2828 1.1.1.16.4.1 perseant * [Bug 2875] sntp/Makefile.am: Get rid of DIST_SUBDIRS. libevent must
2829 1.1.1.16.4.1 perseant be configured for the distribution targets. Harlan Stenn.
2830 1.1.1.16.4.1 perseant * [Bug 2883] ntpd crashes on exit with empty driftfile. Miroslav Lichvar.
2831 1.1.1.16.4.1 perseant * [Bug 2886] Mis-spelling: "outlyer" should be "outlier". dave (a] horsfall.org
2832 1.1.1.16.4.1 perseant * [Bug 2888] streamline calendar functions. perlinger (a] ntp.org
2833 1.1.1.16.4.1 perseant * [Bug 2889] ntp-dev-4.3.67 does not build on Windows. perlinger (a] ntp.org
2834 1.1.1.16.4.1 perseant * [Bug 2890] Ignore ENOBUFS on routing netlink socket. Konstantin Khlebnikov.
2835 1.1.1.16.4.1 perseant * [Bug 2906] make check needs better support for pthreads. Harlan Stenn.
2836 1.1.1.16.4.1 perseant * [Bug 2907] dist* build targets require our libevent/ to be enabled. HStenn.
2837 1.1.1.16.4.1 perseant * [Bug 2912] no munlockall() under Windows. David Taylor, Harlan Stenn.
2838 1.1.1.16.4.1 perseant * libntp/emalloc.c: Remove explicit include of stdint.h. Harlan Stenn.
2839 1.1.1.16.4.1 perseant * Put Unity CPPFLAGS items in unity_config.h. Harlan Stenn.
2840 1.1.1.16.4.1 perseant * tests/ntpd/g_leapsec.cpp typo fix. Harlan Stenn.
2841 1.1.1.16.4.1 perseant * Phase 1 deprecation of google test in sntp/tests/. Harlan Stenn.
2842 1.1.1.16.4.1 perseant * On some versions of HP-UX, inttypes.h does not include stdint.h. H.Stenn.
2843 1.1.1.16.4.1 perseant * top_srcdir can change based on ntp v. sntp. Harlan Stenn.
2844 1.1.1.16.4.1 perseant * sntp/tests/ function parameter list cleanup. Damir Tomi.
2845 1.1.1.16.4.1 perseant * tests/libntp/ function parameter list cleanup. Damir Tomi.
2846 1.1.1.16.4.1 perseant * tests/ntpd/ function parameter list cleanup. Damir Tomi.
2847 1.1.1.16.4.1 perseant * sntp/unity/unity_config.h: handle stdint.h. Harlan Stenn.
2848 1.1.1.16.4.1 perseant * sntp/unity/unity_internals.h: handle *INTPTR_MAX on old Solaris. H.Stenn.
2849 1.1.1.16.4.1 perseant * tests/libntp/timevalops.c and timespecops.c fixed error printing. D.Tomi.
2850 1.1.1.16.4.1 perseant * tests/libntp/ improvements in code and fixed error printing. Damir Tomi.
2851 1.1.1.16.4.1 perseant * tests/libntp: a_md5encrypt.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
2852 1.1.1.16.4.1 perseant caltontp.c, clocktime.c, humandate.c, hextolfp.c, decodenetnum.c - fixed
2853 1.1.1.16.4.1 perseant formatting; first declaration, then code (C90); deleted unnecessary comments;
2854 1.1.1.16.4.1 perseant changed from sprintf to snprintf; fixed order of includes. Tomasz Flendrich
2855 1.1.1.16.4.1 perseant * tests/libntp/lfpfunc.c remove unnecessary include, remove old comments,
2856 1.1.1.16.4.1 perseant fix formatting, cleanup. Tomasz Flendrich
2857 1.1.1.16.4.1 perseant * tests/libntp/lfptostr.c remove unnecessary include, add consts, fix formatting.
2858 1.1.1.16.4.1 perseant Tomasz Flendrich
2859 1.1.1.16.4.1 perseant * tests/libntp/statestr.c remove empty functions, remove unnecessary include,
2860 1.1.1.16.4.1 perseant fix formatting. Tomasz Flendrich
2861 1.1.1.16.4.1 perseant * tests/libntp/modetoa.c fixed formatting. Tomasz Flendrich
2862 1.1.1.16.4.1 perseant * tests/libntp/msyslog.c fixed formatting. Tomasz Flendrich
2863 1.1.1.16.4.1 perseant * tests/libntp/numtoa.c deleted unnecessary empty functions, fixed formatting.
2864 1.1.1.16.4.1 perseant Tomasz Flendrich
2865 1.1.1.16.4.1 perseant * tests/libntp/numtohost.c added const, fixed formatting. Tomasz Flendrich
2866 1.1.1.16.4.1 perseant * tests/libntp/refnumtoa.c fixed formatting. Tomasz Flendrich
2867 1.1.1.16.4.1 perseant * tests/libntp/ssl_init.c fixed formatting. Tomasz Flendrich
2868 1.1.1.16.4.1 perseant * tests/libntp/tvtots.c fixed a bug, fixed formatting. Tomasz Flendrich
2869 1.1.1.16.4.1 perseant * tests/libntp/uglydate.c removed an unnecessary include. Tomasz Flendrich
2870 1.1.1.16.4.1 perseant * tests/libntp/vi64ops.c removed an unnecessary comment, fixed formatting.
2871 1.1.1.16.4.1 perseant * tests/libntp/ymd3yd.c removed an empty function and an unnecessary include,
2872 1.1.1.16.4.1 perseant fixed formatting. Tomasz Flendrich
2873 1.1.1.16.4.1 perseant * tests/libntp/timespecops.c fixed formatting, fixed the order of includes,
2874 1.1.1.16.4.1 perseant removed unnecessary comments, cleanup. Tomasz Flendrich
2875 1.1.1.16.4.1 perseant * tests/libntp/timevalops.c fixed the order of includes, deleted unnecessary
2876 1.1.1.16.4.1 perseant comments, cleanup. Tomasz Flendrich
2877 1.1.1.16.4.1 perseant * tests/libntp/sockaddrtest.h making it agree to NTP's conventions of formatting.
2878 1.1.1.16.4.1 perseant Tomasz Flendrich
2879 1.1.1.16.4.1 perseant * tests/libntp/lfptest.h cleanup. Tomasz Flendrich
2880 1.1.1.16.4.1 perseant * tests/libntp/test-libntp.c fix formatting. Tomasz Flendrich
2881 1.1.1.16.4.1 perseant * sntp/tests/crypto.c is now using proper Unity's assertions, fixed formatting.
2882 1.1.1.16.4.1 perseant Tomasz Flendrich
2883 1.1.1.16.4.1 perseant * sntp/tests/kodDatabase.c added consts, deleted empty function,
2884 1.1.1.16.4.1 perseant fixed formatting. Tomasz Flendrich
2885 1.1.1.16.4.1 perseant * sntp/tests/kodFile.c cleanup, fixed formatting. Tomasz Flendrich
2886 1.1.1.16.4.1 perseant * sntp/tests/packetHandling.c is now using proper Unity's assertions,
2887 1.1.1.16.4.1 perseant fixed formatting, deleted unused variable. Tomasz Flendrich
2888 1.1.1.16.4.1 perseant * sntp/tests/keyFile.c is now using proper Unity's assertions, fixed formatting.
2889 1.1.1.16.4.1 perseant Tomasz Flendrich
2890 1.1.1.16.4.1 perseant * sntp/tests/packetProcessing.c changed from sprintf to snprintf,
2891 1.1.1.16.4.1 perseant fixed formatting. Tomasz Flendrich
2892 1.1.1.16.4.1 perseant * sntp/tests/utilities.c is now using proper Unity's assertions, changed
2893 1.1.1.16.4.1 perseant the order of includes, fixed formatting, removed unnecessary comments.
2894 1.1.1.16.4.1 perseant Tomasz Flendrich
2895 1.1.1.16.4.1 perseant * sntp/tests/sntptest.h fixed formatting. Tomasz Flendrich
2896 1.1.1.16.4.1 perseant * sntp/tests/fileHandlingTest.h.in fixed a possible buffer overflow problem,
2897 1.1.1.16.4.1 perseant made one function do its job, deleted unnecessary prints, fixed formatting.
2898 1.1.1.16.4.1 perseant Tomasz Flendrich
2899 1.1.1.16.4.1 perseant * sntp/unity/Makefile.am added a missing header. Tomasz Flendrich
2900 1.1.1.16.4.1 perseant * sntp/unity/unity_config.h: Distribute it. Harlan Stenn.
2901 1.1.1.16.4.1 perseant * sntp/libevent/evconfig-private.h: remove generated filefrom SCM. H.Stenn.
2902 1.1.1.16.4.1 perseant * sntp/unity/Makefile.am: fix some broken paths. Harlan Stenn.
2903 1.1.1.16.4.1 perseant * sntp/unity/unity.c: Clean up a printf(). Harlan Stenn.
2904 1.1.1.16.4.1 perseant * Phase 1 deprecation of google test in tests/libntp/. Harlan Stenn.
2905 1.1.1.16.4.1 perseant * Don't build sntp/libevent/sample/. Harlan Stenn.
2906 1.1.1.16.4.1 perseant * tests/libntp/test_caltontp needs -lpthread. Harlan Stenn.
2907 1.1.1.16.4.1 perseant * br-flock: --enable-local-libevent. Harlan Stenn.
2908 1.1.1.16.4.1 perseant * Wrote tests for ntpd/ntp_prio_q.c. Tomasz Flendrich
2909 1.1.1.16.4.1 perseant * scripts/lib/NTP/Util.pm: stratum output is version-dependent. Harlan Stenn.
2910 1.1.1.16.4.1 perseant * Get rid of the NTP_ prefix on our assertion macros. Harlan Stenn.
2911 1.1.1.16.4.1 perseant * Code cleanup. Harlan Stenn.
2912 1.1.1.16.4.1 perseant * libntp/icom.c: Typo fix. Harlan Stenn.
2913 1.1.1.16.4.1 perseant * util/ntptime.c: initialization nit. Harlan Stenn.
2914 1.1.1.16.4.1 perseant * ntpd/ntp_peer.c:newpeer(): added a DEBUG_REQUIRE(srcadr). Harlan Stenn.
2915 1.1.1.16.4.1 perseant * Add std_unity_tests to various Makefile.am files. Harlan Stenn.
2916 1.1.1.16.4.1 perseant * ntpd/ntp_restrict.c: added a few assertions, created tests for this file.
2917 1.1.1.16.4.1 perseant Tomasz Flendrich
2918 1.1.1.16.4.1 perseant * Changed progname to be const in many files - now it's consistent. Tomasz
2919 1.1.1.16.4.1 perseant Flendrich
2920 1.1.1.16.4.1 perseant * Typo fix for GCC warning suppression. Harlan Stenn.
2921 1.1.1.16.4.1 perseant * Added tests/ntpd/ntp_scanner.c test. Damir Tomi.
2922 1.1.1.16.4.1 perseant * Added declarations to all Unity tests, and did minor fixes to them.
2923 1.1.1.16.4.1 perseant Reduced the number of warnings by half. Damir Tomi.
2924 1.1.1.16.4.1 perseant * Updated generate_test_runner.rb and updated the sntp/unity/auto directory
2925 1.1.1.16.4.1 perseant with the latest Unity updates from Mark. Damir Tomi.
2926 1.1.1.16.4.1 perseant * Retire google test - phase I. Harlan Stenn.
2927 1.1.1.16.4.1 perseant * Unity test cleanup: move declaration of 'initializing'. Harlan Stenn.
2928 1.1.1.16.4.1 perseant * Update the NEWS file. Harlan Stenn.
2929 1.1.1.16.4.1 perseant * Autoconf cleanup. Harlan Stenn.
2930 1.1.1.16.4.1 perseant * Unit test dist cleanup. Harlan Stenn.
2931 1.1.1.16.4.1 perseant * Cleanup various test Makefile.am files. Harlan Stenn.
2932 1.1.1.16.4.1 perseant * Pthread autoconf macro cleanup. Harlan Stenn.
2933 1.1.1.16.4.1 perseant * Fix progname definition in unity runner scripts. Harlan Stenn.
2934 1.1.1.16.4.1 perseant * Clean trailing whitespace in tests/ntpd/Makefile.am. Harlan Stenn.
2935 1.1.1.16.4.1 perseant * Update the patch for bug 2817. Harlan Stenn.
2936 1.1.1.16.4.1 perseant * More updates for bug 2817. Harlan Stenn.
2937 1.1.1.16.4.1 perseant * Fix bugs in tests/ntpd/ntp_prio_q.c. Harlan Stenn.
2938 1.1.1.16.4.1 perseant * gcc on older HPUX may need +allowdups. Harlan Stenn.
2939 1.1.1.16.4.1 perseant * Adding missing MCAST protection. Harlan Stenn.
2940 1.1.1.16.4.1 perseant * Disable certain test programs on certain platforms. Harlan Stenn.
2941 1.1.1.16.4.1 perseant * Implement --enable-problem-tests (on by default). Harlan Stenn.
2942 1.1.1.16.4.1 perseant * build system tweaks. Harlan Stenn.
2943 1.1.1.16.4.1 perseant
2944 1.1.1.16.4.1 perseant ---
2945 1.1.1.16.4.1 perseant NTP 4.2.8p3 (Harlan Stenn <stenn (a] ntp.org>, 2015/06/29)
2946 1.1.1.16.4.1 perseant
2947 1.1.1.16.4.1 perseant Focus: 1 Security fix. Bug fixes and enhancements. Leap-second improvements.
2948 1.1.1.16.4.1 perseant
2949 1.1.1.16.4.1 perseant Severity: MEDIUM
2950 1.1.1.16.4.1 perseant
2951 1.1.1.16.4.1 perseant Security Fix:
2952 1.1.1.16.4.1 perseant
2953 1.1.1.16.4.1 perseant * [Sec 2853] Crafted remote config packet can crash some versions of
2954 1.1.1.16.4.1 perseant ntpd. Aleksis Kauppinen, Juergen Perlinger, Harlan Stenn.
2955 1.1.1.16.4.1 perseant
2956 1.1.1.16.4.1 perseant Under specific circumstances an attacker can send a crafted packet to
2957 1.1.1.16.4.1 perseant cause a vulnerable ntpd instance to crash. This requires each of the
2958 1.1.1.16.4.1 perseant following to be true:
2959 1.1.1.16.4.1 perseant
2960 1.1.1.16.4.1 perseant 1) ntpd set up to allow remote configuration (not allowed by default), and
2961 1.1.1.16.4.1 perseant 2) knowledge of the configuration password, and
2962 1.1.1.16.4.1 perseant 3) access to a computer entrusted to perform remote configuration.
2963 1.1.1.16.4.1 perseant
2964 1.1.1.16.4.1 perseant This vulnerability is considered low-risk.
2965 1.1.1.16.4.1 perseant
2966 1.1.1.16.4.1 perseant New features in this release:
2967 1.1.1.16.4.1 perseant
2968 1.1.1.16.4.1 perseant Optional (disabled by default) support to have ntpd provide smeared
2969 1.1.1.16.4.1 perseant leap second time. A specially built and configured ntpd will only
2970 1.1.1.16.4.1 perseant offer smeared time in response to client packets. These response
2971 1.1.1.16.4.1 perseant packets will also contain a "refid" of 254.a.b.c, where the 24 bits
2972 1.1.1.16.4.1 perseant of a, b, and c encode the amount of smear in a 2:22 integer:fraction
2973 1.1.1.16.4.1 perseant format. See README.leapsmear and http://bugs.ntp.org/2855 for more
2974 1.1.1.16.4.1 perseant information.
2975 1.1.1.16.4.1 perseant
2976 1.1.1.16.4.1 perseant *IF YOU CHOOSE TO CONFIGURE NTPD TO PROVIDE LEAP SMEAR TIME*
2977 1.1.1.16.4.1 perseant *BE SURE YOU DO NOT OFFER THAT TIME ON PUBLIC TIMESERVERS.*
2978 1.1.1.16.4.1 perseant
2979 1.1.1.16.4.1 perseant We've imported the Unity test framework, and have begun converting
2980 1.1.1.16.4.1 perseant the existing google-test items to this new framework. If you want
2981 1.1.1.16.4.1 perseant to write new tests or change old ones, you'll need to have ruby
2982 1.1.1.16.4.1 perseant installed. You don't need ruby to run the test suite.
2983 1.1.1.16.4.1 perseant
2984 1.1.1.16.4.1 perseant Bug Fixes and Improvements:
2985 1.1.1.16.4.1 perseant
2986 1.1.1.16.4.1 perseant * CID 739725: Fix a rare resource leak in libevent/listener.c.
2987 1.1.1.16.4.1 perseant * CID 1295478: Quiet a pedantic potential error from the fix for Bug 2776.
2988 1.1.1.16.4.1 perseant * CID 1296235: Fix refclock_jjy.c and correcting type of the driver40-ja.html
2989 1.1.1.16.4.1 perseant * CID 1269537: Clean up a line of dead code in getShmTime().
2990 1.1.1.16.4.1 perseant * [Bug 1060] Buffer overruns in libparse/clk_rawdcf.c. Helge Oldach.
2991 1.1.1.16.4.1 perseant * [Bug 2590] autogen-5.18.5.
2992 1.1.1.16.4.1 perseant * [Bug 2612] restrict: Warn when 'monitor' can't be disabled because
2993 1.1.1.16.4.1 perseant of 'limited'.
2994 1.1.1.16.4.1 perseant * [Bug 2650] fix includefile processing.
2995 1.1.1.16.4.1 perseant * [Bug 2745] ntpd -x steps clock on leap second
2996 1.1.1.16.4.1 perseant Fixed an initial-value problem that caused misbehaviour in absence of
2997 1.1.1.16.4.1 perseant any leapsecond information.
2998 1.1.1.16.4.1 perseant Do leap second stepping only of the step adjustment is beyond the
2999 1.1.1.16.4.1 perseant proper jump distance limit and step correction is allowed at all.
3000 1.1.1.16.4.1 perseant * [Bug 2750] build for Win64
3001 1.1.1.16.4.1 perseant Building for 32bit of loopback ppsapi needs def file
3002 1.1.1.16.4.1 perseant * [Bug 2776] Improve ntpq's 'help keytype'.
3003 1.1.1.16.4.1 perseant * [Bug 2778] Implement "apeers" ntpq command to include associd.
3004 1.1.1.16.4.1 perseant * [Bug 2782] Refactor refclock_shm.c, add memory barrier protection.
3005 1.1.1.16.4.1 perseant * [Bug 2792] If the IFF_RUNNING interface flag is supported then an
3006 1.1.1.16.4.1 perseant interface is ignored as long as this flag is not set since the
3007 1.1.1.16.4.1 perseant interface is not usable (e.g., no link).
3008 1.1.1.16.4.1 perseant * [Bug 2794] Clean up kernel clock status reports.
3009 1.1.1.16.4.1 perseant * [Bug 2800] refclock_true.c true_debug() can't open debug log because
3010 1.1.1.16.4.1 perseant of incompatible open/fdopen parameters.
3011 1.1.1.16.4.1 perseant * [Bug 2804] install-local-data assumes GNU 'find' semantics.
3012 1.1.1.16.4.1 perseant * [Bug 2805] ntpd fails to join multicast group.
3013 1.1.1.16.4.1 perseant * [Bug 2806] refclock_jjy.c supports the Telephone JJY.
3014 1.1.1.16.4.1 perseant * [Bug 2808] GPSD_JSON driver enhancements, step 1.
3015 1.1.1.16.4.1 perseant Fix crash during cleanup if GPS device not present and char device.
3016 1.1.1.16.4.1 perseant Increase internal token buffer to parse all JSON data, even SKY.
3017 1.1.1.16.4.1 perseant Defer logging of errors during driver init until the first unit is
3018 1.1.1.16.4.1 perseant started, so the syslog is not cluttered when the driver is not used.
3019 1.1.1.16.4.1 perseant Various improvements, see http://bugs.ntp.org/2808 for details.
3020 1.1.1.16.4.1 perseant Changed libjsmn to a more recent version.
3021 1.1.1.16.4.1 perseant * [Bug 2810] refclock_shm.c memory barrier code needs tweaks for QNX.
3022 1.1.1.16.4.1 perseant * [Bug 2813] HP-UX needs -D__STDC_VERSION__=199901L and limits.h.
3023 1.1.1.16.4.1 perseant * [Bug 2815] net-snmp before v5.4 has circular library dependencies.
3024 1.1.1.16.4.1 perseant * [Bug 2821] Add a missing NTP_PRINTF and a missing const.
3025 1.1.1.16.4.1 perseant * [Bug 2822] New leap column in sntp broke NTP::Util.pm.
3026 1.1.1.16.4.1 perseant * [Bug 2824] Convert update-leap to perl. (also see 2769)
3027 1.1.1.16.4.1 perseant * [Bug 2825] Quiet file installation in html/ .
3028 1.1.1.16.4.1 perseant * [Bug 2830] ntpd doesn't always transfer the correct TAI offset via autokey
3029 1.1.1.16.4.1 perseant NTPD transfers the current TAI (instead of an announcement) now.
3030 1.1.1.16.4.1 perseant This might still needed improvement.
3031 1.1.1.16.4.1 perseant Update autokey data ASAP when 'sys_tai' changes.
3032 1.1.1.16.4.1 perseant Fix unit test that was broken by changes for autokey update.
3033 1.1.1.16.4.1 perseant Avoid potential signature length issue and use DPRINTF where possible
3034 1.1.1.16.4.1 perseant in ntp_crypto.c.
3035 1.1.1.16.4.1 perseant * [Bug 2832] refclock_jjy.c supports the TDC-300.
3036 1.1.1.16.4.1 perseant * [Bug 2834] Correct a broken html tag in html/refclock.html
3037 1.1.1.16.4.1 perseant * [Bug 2836] DFC77 patches from Frank Kardel to make decoding more
3038 1.1.1.16.4.1 perseant robust, and require 2 consecutive timestamps to be consistent.
3039 1.1.1.16.4.1 perseant * [Bug 2837] Allow a configurable DSCP value.
3040 1.1.1.16.4.1 perseant * [Bug 2837] add test for DSCP to ntpd/complete.conf.in
3041 1.1.1.16.4.1 perseant * [Bug 2842] Glitch in ntp.conf.def documentation stanza.
3042 1.1.1.16.4.1 perseant * [Bug 2842] Bug in mdoc2man.
3043 1.1.1.16.4.1 perseant * [Bug 2843] make check fails on 4.3.36
3044 1.1.1.16.4.1 perseant Fixed compiler warnings about numeric range overflow
3045 1.1.1.16.4.1 perseant (The original topic was fixed in a byplay to bug#2830)
3046 1.1.1.16.4.1 perseant * [Bug 2845] Harden memory allocation in ntpd.
3047 1.1.1.16.4.1 perseant * [Bug 2852] 'make check' can't find unity.h. Hal Murray.
3048 1.1.1.16.4.1 perseant * [Bug 2854] Missing brace in libntp/strdup.c. Masanari Iida.
3049 1.1.1.16.4.1 perseant * [Bug 2855] Parser fix for conditional leap smear code. Harlan Stenn.
3050 1.1.1.16.4.1 perseant * [Bug 2855] Report leap smear in the REFID. Harlan Stenn.
3051 1.1.1.16.4.1 perseant * [Bug 2855] Implement conditional leap smear code. Martin Burnicki.
3052 1.1.1.16.4.1 perseant * [Bug 2856] ntpd should wait() on terminated child processes. Paul Green.
3053 1.1.1.16.4.1 perseant * [Bug 2857] Stratus VOS does not support SIGIO. Paul Green.
3054 1.1.1.16.4.1 perseant * [Bug 2859] Improve raw DCF77 robustness deconding. Frank Kardel.
3055 1.1.1.16.4.1 perseant * [Bug 2860] ntpq ifstats sanity check is too stringent. Frank Kardel.
3056 1.1.1.16.4.1 perseant * html/drivers/driver22.html: typo fix. Harlan Stenn.
3057 1.1.1.16.4.1 perseant * refidsmear test cleanup. Tomasz Flendrich.
3058 1.1.1.16.4.1 perseant * refidsmear function support and tests. Harlan Stenn.
3059 1.1.1.16.4.1 perseant * sntp/tests/Makefile.am: remove g_nameresolution.cpp as it tested
3060 1.1.1.16.4.1 perseant something that was only in the 4.2.6 sntp. Harlan Stenn.
3061 1.1.1.16.4.1 perseant * Modified tests/bug-2803/Makefile.am so it builds Unity framework tests.
3062 1.1.1.16.4.1 perseant Damir Tomi
3063 1.1.1.16.4.1 perseant * Modified tests/libtnp/Makefile.am so it builds Unity framework tests.
3064 1.1.1.16.4.1 perseant Damir Tomi
3065 1.1.1.16.4.1 perseant * Modified sntp/tests/Makefile.am so it builds Unity framework tests.
3066 1.1.1.16.4.1 perseant Damir Tomi
3067 1.1.1.16.4.1 perseant * tests/sandbox/smeartest.c: Harlan Stenn, Damir Tomic, Juergen Perlinger.
3068 1.1.1.16.4.1 perseant * Converted from gtest to Unity: tests/bug-2803/. Damir Tomi
3069 1.1.1.16.4.1 perseant * Converted from gtest to Unity: tests/libntp/ a_md5encrypt, atoint.c,
3070 1.1.1.16.4.1 perseant atouint.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
3071 1.1.1.16.4.1 perseant calyearstart.c, clocktime.c, hextoint.c, lfpfunc.c, modetoa.c,
3072 1.1.1.16.4.1 perseant numtoa.c, numtohost.c, refnumtoa.c, ssl_init.c, statestr.c,
3073 1.1.1.16.4.1 perseant timespecops.c, timevalops.c, uglydate.c, vi64ops.c, ymd2yd.c.
3074 1.1.1.16.4.1 perseant Damir Tomi
3075 1.1.1.16.4.1 perseant * Converted from gtest to Unity: sntp/tests/ kodDatabase.c, kodFile.c,
3076 1.1.1.16.4.1 perseant networking.c, keyFile.c, utilities.cpp, sntptest.h,
3077 1.1.1.16.4.1 perseant fileHandlingTest.h. Damir Tomi
3078 1.1.1.16.4.1 perseant * Initial support for experimental leap smear code. Harlan Stenn.
3079 1.1.1.16.4.1 perseant * Fixes to sntp/tests/fileHandlingTest.h.in. Harlan Stenn.
3080 1.1.1.16.4.1 perseant * Report select() debug messages at debug level 3 now.
3081 1.1.1.16.4.1 perseant * sntp/scripts/genLocInfo: treat raspbian as debian.
3082 1.1.1.16.4.1 perseant * Unity test framework fixes.
3083 1.1.1.16.4.1 perseant ** Requires ruby for changes to tests.
3084 1.1.1.16.4.1 perseant * Initial support for PACKAGE_VERSION tests.
3085 1.1.1.16.4.1 perseant * sntp/libpkgver belongs in EXTRA_DIST, not DIST_SUBDIRS.
3086 1.1.1.16.4.1 perseant * tests/bug-2803/Makefile.am must distribute bug-2803.h.
3087 1.1.1.16.4.1 perseant * Add an assert to the ntpq ifstats code.
3088 1.1.1.16.4.1 perseant * Clean up the RLIMIT_STACK code.
3089 1.1.1.16.4.1 perseant * Improve the ntpq documentation around the controlkey keyid.
3090 1.1.1.16.4.1 perseant * ntpq.c cleanup.
3091 1.1.1.16.4.1 perseant * Windows port build cleanup.
3092 1.1.1.16.4.1 perseant
3093 1.1.1.16.4.1 perseant ---
3094 1.1.1.16.4.1 perseant NTP 4.2.8p2 (Harlan Stenn <stenn (a] ntp.org>, 2015/04/07)
3095 1.1.1.16.4.1 perseant
3096 1.1.1.16.4.1 perseant Focus: Security and Bug fixes, enhancements.
3097 1.1.1.16.4.1 perseant
3098 1.1.1.16.4.1 perseant Severity: MEDIUM
3099 1.1.1.16.4.1 perseant
3100 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
3101 1.1.1.16.4.1 perseant following medium-severity vulnerabilities involving private key
3102 1.1.1.16.4.1 perseant authentication:
3103 1.1.1.16.4.1 perseant
3104 1.1.1.16.4.1 perseant * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
3105 1.1.1.16.4.1 perseant
3106 1.1.1.16.4.1 perseant References: Sec 2779 / CVE-2015-1798 / VU#374268
3107 1.1.1.16.4.1 perseant Affects: All NTP4 releases starting with ntp-4.2.5p99 up to but not
3108 1.1.1.16.4.1 perseant including ntp-4.2.8p2 where the installation uses symmetric keys
3109 1.1.1.16.4.1 perseant to authenticate remote associations.
3110 1.1.1.16.4.1 perseant CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
3111 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p2) 07 Apr 2015
3112 1.1.1.16.4.1 perseant Summary: When ntpd is configured to use a symmetric key to authenticate
3113 1.1.1.16.4.1 perseant a remote NTP server/peer, it checks if the NTP message
3114 1.1.1.16.4.1 perseant authentication code (MAC) in received packets is valid, but not if
3115 1.1.1.16.4.1 perseant there actually is any MAC included. Packets without a MAC are
3116 1.1.1.16.4.1 perseant accepted as if they had a valid MAC. This allows a MITM attacker to
3117 1.1.1.16.4.1 perseant send false packets that are accepted by the client/peer without
3118 1.1.1.16.4.1 perseant having to know the symmetric key. The attacker needs to know the
3119 1.1.1.16.4.1 perseant transmit timestamp of the client to match it in the forged reply
3120 1.1.1.16.4.1 perseant and the false reply needs to reach the client before the genuine
3121 1.1.1.16.4.1 perseant reply from the server. The attacker doesn't necessarily need to be
3122 1.1.1.16.4.1 perseant relaying the packets between the client and the server.
3123 1.1.1.16.4.1 perseant
3124 1.1.1.16.4.1 perseant Authentication using autokey doesn't have this problem as there is
3125 1.1.1.16.4.1 perseant a check that requires the key ID to be larger than NTP_MAXKEY,
3126 1.1.1.16.4.1 perseant which fails for packets without a MAC.
3127 1.1.1.16.4.1 perseant Mitigation:
3128 1.1.1.16.4.1 perseant Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
3129 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
3130 1.1.1.16.4.1 perseant Configure ntpd with enough time sources and monitor it properly.
3131 1.1.1.16.4.1 perseant Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
3132 1.1.1.16.4.1 perseant
3133 1.1.1.16.4.1 perseant * [Sec 2781] Authentication doesn't protect symmetric associations against
3134 1.1.1.16.4.1 perseant DoS attacks.
3135 1.1.1.16.4.1 perseant
3136 1.1.1.16.4.1 perseant References: Sec 2781 / CVE-2015-1799 / VU#374268
3137 1.1.1.16.4.1 perseant Affects: All NTP releases starting with at least xntp3.3wy up to but
3138 1.1.1.16.4.1 perseant not including ntp-4.2.8p2 where the installation uses symmetric
3139 1.1.1.16.4.1 perseant key authentication.
3140 1.1.1.16.4.1 perseant CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
3141 1.1.1.16.4.1 perseant Note: the CVSS base Score for this issue could be 4.3 or lower, and
3142 1.1.1.16.4.1 perseant it could be higher than 5.4.
3143 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p2) 07 Apr 2015
3144 1.1.1.16.4.1 perseant Summary: An attacker knowing that NTP hosts A and B are peering with
3145 1.1.1.16.4.1 perseant each other (symmetric association) can send a packet to host A
3146 1.1.1.16.4.1 perseant with source address of B which will set the NTP state variables
3147 1.1.1.16.4.1 perseant on A to the values sent by the attacker. Host A will then send
3148 1.1.1.16.4.1 perseant on its next poll to B a packet with originate timestamp that
3149 1.1.1.16.4.1 perseant doesn't match the transmit timestamp of B and the packet will
3150 1.1.1.16.4.1 perseant be dropped. If the attacker does this periodically for both
3151 1.1.1.16.4.1 perseant hosts, they won't be able to synchronize to each other. This is
3152 1.1.1.16.4.1 perseant a known denial-of-service attack, described at
3153 1.1.1.16.4.1 perseant https://www.eecis.udel.edu/~mills/onwire.html .
3154 1.1.1.16.4.1 perseant
3155 1.1.1.16.4.1 perseant According to the document the NTP authentication is supposed to
3156 1.1.1.16.4.1 perseant protect symmetric associations against this attack, but that
3157 1.1.1.16.4.1 perseant doesn't seem to be the case. The state variables are updated even
3158 1.1.1.16.4.1 perseant when authentication fails and the peers are sending packets with
3159 1.1.1.16.4.1 perseant originate timestamps that don't match the transmit timestamps on
3160 1.1.1.16.4.1 perseant the receiving side.
3161 1.1.1.16.4.1 perseant
3162 1.1.1.16.4.1 perseant This seems to be a very old problem, dating back to at least
3163 1.1.1.16.4.1 perseant xntp3.3wy. It's also in the NTPv3 (RFC 1305) and NTPv4 (RFC 5905)
3164 1.1.1.16.4.1 perseant specifications, so other NTP implementations with support for
3165 1.1.1.16.4.1 perseant symmetric associations and authentication may be vulnerable too.
3166 1.1.1.16.4.1 perseant An update to the NTP RFC to correct this error is in-process.
3167 1.1.1.16.4.1 perseant Mitigation:
3168 1.1.1.16.4.1 perseant Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
3169 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
3170 1.1.1.16.4.1 perseant Note that for users of autokey, this specific style of MITM attack
3171 1.1.1.16.4.1 perseant is simply a long-known potential problem.
3172 1.1.1.16.4.1 perseant Configure ntpd with appropriate time sources and monitor ntpd.
3173 1.1.1.16.4.1 perseant Alert your staff if problems are detected.
3174 1.1.1.16.4.1 perseant Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
3175 1.1.1.16.4.1 perseant
3176 1.1.1.16.4.1 perseant * New script: update-leap
3177 1.1.1.16.4.1 perseant The update-leap script will verify and if necessary, update the
3178 1.1.1.16.4.1 perseant leap-second definition file.
3179 1.1.1.16.4.1 perseant It requires the following commands in order to work:
3180 1.1.1.16.4.1 perseant
3181 1.1.1.16.4.1 perseant wget logger tr sed shasum
3182 1.1.1.16.4.1 perseant
3183 1.1.1.16.4.1 perseant Some may choose to run this from cron. It needs more portability testing.
3184 1.1.1.16.4.1 perseant
3185 1.1.1.16.4.1 perseant Bug Fixes and Improvements:
3186 1.1.1.16.4.1 perseant
3187 1.1.1.16.4.1 perseant * [Bug 1787] DCF77's formerly "antenna" bit is "call bit" since 2003.
3188 1.1.1.16.4.1 perseant * [Bug 1960] setsockopt IPV6_MULTICAST_IF: Invalid argument.
3189 1.1.1.16.4.1 perseant * [Bug 2346] "graceful termination" signals do not do peer cleanup.
3190 1.1.1.16.4.1 perseant * [Bug 2728] See if C99-style structure initialization works.
3191 1.1.1.16.4.1 perseant * [Bug 2747] Upgrade libevent to 2.1.5-beta.
3192 1.1.1.16.4.1 perseant * [Bug 2749] ntp/lib/NTP/Util.pm needs update for ntpq -w, IPv6, .POOL. .
3193 1.1.1.16.4.1 perseant * [Bug 2751] jitter.h has stale copies of l_fp macros.
3194 1.1.1.16.4.1 perseant * [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM.
3195 1.1.1.16.4.1 perseant * [Bug 2757] Quiet compiler warnings.
3196 1.1.1.16.4.1 perseant * [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq.
3197 1.1.1.16.4.1 perseant * [Bug 2763] Allow different thresholds for forward and backward steps.
3198 1.1.1.16.4.1 perseant * [Bug 2766] ntp-keygen output files should not be world-readable.
3199 1.1.1.16.4.1 perseant * [Bug 2767] ntp-keygen -M should symlink to ntp.keys.
3200 1.1.1.16.4.1 perseant * [Bug 2771] nonvolatile value is documented in wrong units.
3201 1.1.1.16.4.1 perseant * [Bug 2773] Early leap announcement from Palisade/Thunderbolt
3202 1.1.1.16.4.1 perseant * [Bug 2774] Unreasonably verbose printout - leap pending/warning
3203 1.1.1.16.4.1 perseant * [Bug 2775] ntp-keygen.c fails to compile under Windows.
3204 1.1.1.16.4.1 perseant * [Bug 2777] Fixed loops and decoding of Meinberg GPS satellite info.
3205 1.1.1.16.4.1 perseant Removed non-ASCII characters from some copyright comments.
3206 1.1.1.16.4.1 perseant Removed trailing whitespace.
3207 1.1.1.16.4.1 perseant Updated definitions for Meinberg clocks from current Meinberg header files.
3208 1.1.1.16.4.1 perseant Now use C99 fixed-width types and avoid non-ASCII characters in comments.
3209 1.1.1.16.4.1 perseant Account for updated definitions pulled from Meinberg header files.
3210 1.1.1.16.4.1 perseant Updated comments on Meinberg GPS receivers which are not only called GPS16x.
3211 1.1.1.16.4.1 perseant Replaced some constant numbers by defines from ntp_calendar.h
3212 1.1.1.16.4.1 perseant Modified creation of parse-specific variables for Meinberg devices
3213 1.1.1.16.4.1 perseant in gps16x_message().
3214 1.1.1.16.4.1 perseant Reworked mk_utcinfo() to avoid printing of ambiguous leap second dates.
3215 1.1.1.16.4.1 perseant Modified mbg_tm_str() which now expexts an additional parameter controlling
3216 1.1.1.16.4.1 perseant if the time status shall be printed.
3217 1.1.1.16.4.1 perseant * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
3218 1.1.1.16.4.1 perseant * [Sec 2781] Authentication doesn't protect symmetric associations against
3219 1.1.1.16.4.1 perseant DoS attacks.
3220 1.1.1.16.4.1 perseant * [Bug 2783] Quiet autoconf warnings about missing AC_LANG_SOURCE.
3221 1.1.1.16.4.1 perseant * [Bug 2789] Quiet compiler warnings from libevent.
3222 1.1.1.16.4.1 perseant * [Bug 2790] If ntpd sets the Windows MM timer highest resolution
3223 1.1.1.16.4.1 perseant pause briefly before measuring system clock precision to yield
3224 1.1.1.16.4.1 perseant correct results.
3225 1.1.1.16.4.1 perseant * Comment from Juergen Perlinger in ntp_calendar.c to make the code clearer.
3226 1.1.1.16.4.1 perseant * Use predefined function types for parse driver functions
3227 1.1.1.16.4.1 perseant used to set up function pointers.
3228 1.1.1.16.4.1 perseant Account for changed prototype of parse_inp_fnc_t functions.
3229 1.1.1.16.4.1 perseant Cast parse conversion results to appropriate types to avoid
3230 1.1.1.16.4.1 perseant compiler warnings.
3231 1.1.1.16.4.1 perseant Let ioctl() for Windows accept a (void *) to avoid compiler warnings
3232 1.1.1.16.4.1 perseant when called with pointers to different types.
3233 1.1.1.16.4.1 perseant
3234 1.1.1.16.4.1 perseant ---
3235 1.1.1.16.4.1 perseant NTP 4.2.8p1 (Harlan Stenn <stenn (a] ntp.org>, 2015/02/04)
3236 1.1.1.16.4.1 perseant
3237 1.1.1.16.4.1 perseant Focus: Security and Bug fixes, enhancements.
3238 1.1.1.16.4.1 perseant
3239 1.1.1.16.4.1 perseant Severity: HIGH
3240 1.1.1.16.4.1 perseant
3241 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
3242 1.1.1.16.4.1 perseant following high-severity vulnerabilities:
3243 1.1.1.16.4.1 perseant
3244 1.1.1.16.4.1 perseant * vallen is not validated in several places in ntp_crypto.c, leading
3245 1.1.1.16.4.1 perseant to a potential information leak or possibly a crash
3246 1.1.1.16.4.1 perseant
3247 1.1.1.16.4.1 perseant References: Sec 2671 / CVE-2014-9297 / VU#852879
3248 1.1.1.16.4.1 perseant Affects: All NTP4 releases before 4.2.8p1 that are running autokey.
3249 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
3250 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p1) 04 Feb 2015
3251 1.1.1.16.4.1 perseant Summary: The vallen packet value is not validated in several code
3252 1.1.1.16.4.1 perseant paths in ntp_crypto.c which can lead to information leakage
3253 1.1.1.16.4.1 perseant or perhaps a crash of the ntpd process.
3254 1.1.1.16.4.1 perseant Mitigation - any of:
3255 1.1.1.16.4.1 perseant Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
3256 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page.
3257 1.1.1.16.4.1 perseant Disable Autokey Authentication by removing, or commenting out,
3258 1.1.1.16.4.1 perseant all configuration directives beginning with the "crypto"
3259 1.1.1.16.4.1 perseant keyword in your ntp.conf file.
3260 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of the
3261 1.1.1.16.4.1 perseant Google Security Team, with additional cases found by Sebastian
3262 1.1.1.16.4.1 perseant Krahmer of the SUSE Security Team and Harlan Stenn of Network
3263 1.1.1.16.4.1 perseant Time Foundation.
3264 1.1.1.16.4.1 perseant
3265 1.1.1.16.4.1 perseant * ::1 can be spoofed on some OSes, so ACLs based on IPv6 ::1 addresses
3266 1.1.1.16.4.1 perseant can be bypassed.
3267 1.1.1.16.4.1 perseant
3268 1.1.1.16.4.1 perseant References: Sec 2672 / CVE-2014-9298 / VU#852879
3269 1.1.1.16.4.1 perseant Affects: All NTP4 releases before 4.2.8p1, under at least some
3270 1.1.1.16.4.1 perseant versions of MacOS and Linux. *BSD has not been seen to be vulnerable.
3271 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:C) Base Score: 9
3272 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8p1) 04 Feb 2014
3273 1.1.1.16.4.1 perseant Summary: While available kernels will prevent 127.0.0.1 addresses
3274 1.1.1.16.4.1 perseant from "appearing" on non-localhost IPv4 interfaces, some kernels
3275 1.1.1.16.4.1 perseant do not offer the same protection for ::1 source addresses on
3276 1.1.1.16.4.1 perseant IPv6 interfaces. Since NTP's access control is based on source
3277 1.1.1.16.4.1 perseant address and localhost addresses generally have no restrictions,
3278 1.1.1.16.4.1 perseant an attacker can send malicious control and configuration packets
3279 1.1.1.16.4.1 perseant by spoofing ::1 addresses from the outside. Note Well: This is
3280 1.1.1.16.4.1 perseant not really a bug in NTP, it's a problem with some OSes. If you
3281 1.1.1.16.4.1 perseant have one of these OSes where ::1 can be spoofed, ALL ::1 -based
3282 1.1.1.16.4.1 perseant ACL restrictions on any application can be bypassed!
3283 1.1.1.16.4.1 perseant Mitigation:
3284 1.1.1.16.4.1 perseant Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
3285 1.1.1.16.4.1 perseant or the NTP Public Services Project Download Page
3286 1.1.1.16.4.1 perseant Install firewall rules to block packets claiming to come from
3287 1.1.1.16.4.1 perseant ::1 from inappropriate network interfaces.
3288 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of
3289 1.1.1.16.4.1 perseant the Google Security Team.
3290 1.1.1.16.4.1 perseant
3291 1.1.1.16.4.1 perseant Additionally, over 30 bugfixes and improvements were made to the codebase.
3292 1.1.1.16.4.1 perseant See the ChangeLog for more information.
3293 1.1.1.16.4.1 perseant
3294 1.1.1.16.4.1 perseant ---
3295 1.1.1.16.4.1 perseant NTP 4.2.8 (Harlan Stenn <stenn (a] ntp.org>, 2014/12/18)
3296 1.1.1.16.4.1 perseant
3297 1.1.1.16.4.1 perseant Focus: Security and Bug fixes, enhancements.
3298 1.1.1.16.4.1 perseant
3299 1.1.1.16.4.1 perseant Severity: HIGH
3300 1.1.1.16.4.1 perseant
3301 1.1.1.16.4.1 perseant In addition to bug fixes and enhancements, this release fixes the
3302 1.1.1.16.4.1 perseant following high-severity vulnerabilities:
3303 1.1.1.16.4.1 perseant
3304 1.1.1.16.4.1 perseant ************************** vv NOTE WELL vv *****************************
3305 1.1.1.16.4.1 perseant
3306 1.1.1.16.4.1 perseant The vulnerabilities listed below can be significantly mitigated by
3307 1.1.1.16.4.1 perseant following the BCP of putting
3308 1.1.1.16.4.1 perseant
3309 1.1.1.16.4.1 perseant restrict default ... noquery
3310 1.1.1.16.4.1 perseant
3311 1.1.1.16.4.1 perseant in the ntp.conf file. With the exception of:
3312 1.1.1.16.4.1 perseant
3313 1.1.1.16.4.1 perseant receive(): missing return on error
3314 1.1.1.16.4.1 perseant References: Sec 2670 / CVE-2014-9296 / VU#852879
3315 1.1.1.16.4.1 perseant
3316 1.1.1.16.4.1 perseant below (which is a limited-risk vulnerability), none of the recent
3317 1.1.1.16.4.1 perseant vulnerabilities listed below can be exploited if the source IP is
3318 1.1.1.16.4.1 perseant restricted from sending a 'query'-class packet by your ntp.conf file.
3319 1.1.1.16.4.1 perseant
3320 1.1.1.16.4.1 perseant ************************** ^^ NOTE WELL ^^ *****************************
3321 1.1.1.16.4.1 perseant
3322 1.1.1.16.4.1 perseant * Weak default key in config_auth().
3323 1.1.1.16.4.1 perseant
3324 1.1.1.16.4.1 perseant References: [Sec 2665] / CVE-2014-9293 / VU#852879
3325 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
3326 1.1.1.16.4.1 perseant Vulnerable Versions: all releases prior to 4.2.7p11
3327 1.1.1.16.4.1 perseant Date Resolved: 28 Jan 2010
3328 1.1.1.16.4.1 perseant
3329 1.1.1.16.4.1 perseant Summary: If no 'auth' key is set in the configuration file, ntpd
3330 1.1.1.16.4.1 perseant would generate a random key on the fly. There were two
3331 1.1.1.16.4.1 perseant problems with this: 1) the generated key was 31 bits in size,
3332 1.1.1.16.4.1 perseant and 2) it used the (now weak) ntp_random() function, which was
3333 1.1.1.16.4.1 perseant seeded with a 32-bit value and could only provide 32 bits of
3334 1.1.1.16.4.1 perseant entropy. This was sufficient back in the late 1990s when the
3335 1.1.1.16.4.1 perseant code was written. Not today.
3336 1.1.1.16.4.1 perseant
3337 1.1.1.16.4.1 perseant Mitigation - any of:
3338 1.1.1.16.4.1 perseant - Upgrade to 4.2.7p11 or later.
3339 1.1.1.16.4.1 perseant - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
3340 1.1.1.16.4.1 perseant
3341 1.1.1.16.4.1 perseant Credit: This vulnerability was noticed in ntp-4.2.6 by Neel Mehta
3342 1.1.1.16.4.1 perseant of the Google Security Team.
3343 1.1.1.16.4.1 perseant
3344 1.1.1.16.4.1 perseant * Non-cryptographic random number generator with weak seed used by
3345 1.1.1.16.4.1 perseant ntp-keygen to generate symmetric keys.
3346 1.1.1.16.4.1 perseant
3347 1.1.1.16.4.1 perseant References: [Sec 2666] / CVE-2014-9294 / VU#852879
3348 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
3349 1.1.1.16.4.1 perseant Vulnerable Versions: All NTP4 releases before 4.2.7p230
3350 1.1.1.16.4.1 perseant Date Resolved: Dev (4.2.7p230) 01 Nov 2011
3351 1.1.1.16.4.1 perseant
3352 1.1.1.16.4.1 perseant Summary: Prior to ntp-4.2.7p230 ntp-keygen used a weak seed to
3353 1.1.1.16.4.1 perseant prepare a random number generator that was of good quality back
3354 1.1.1.16.4.1 perseant in the late 1990s. The random numbers produced was then used to
3355 1.1.1.16.4.1 perseant generate symmetric keys. In ntp-4.2.8 we use a current-technology
3356 1.1.1.16.4.1 perseant cryptographic random number generator, either RAND_bytes from
3357 1.1.1.16.4.1 perseant OpenSSL, or arc4random().
3358 1.1.1.16.4.1 perseant
3359 1.1.1.16.4.1 perseant Mitigation - any of:
3360 1.1.1.16.4.1 perseant - Upgrade to 4.2.7p230 or later.
3361 1.1.1.16.4.1 perseant - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
3362 1.1.1.16.4.1 perseant
3363 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered in ntp-4.2.6 by
3364 1.1.1.16.4.1 perseant Stephen Roettger of the Google Security Team.
3365 1.1.1.16.4.1 perseant
3366 1.1.1.16.4.1 perseant * Buffer overflow in crypto_recv()
3367 1.1.1.16.4.1 perseant
3368 1.1.1.16.4.1 perseant References: Sec 2667 / CVE-2014-9295 / VU#852879
3369 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
3370 1.1.1.16.4.1 perseant Versions: All releases before 4.2.8
3371 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8) 18 Dec 2014
3372 1.1.1.16.4.1 perseant
3373 1.1.1.16.4.1 perseant Summary: When Autokey Authentication is enabled (i.e. the ntp.conf
3374 1.1.1.16.4.1 perseant file contains a 'crypto pw ...' directive) a remote attacker
3375 1.1.1.16.4.1 perseant can send a carefully crafted packet that can overflow a stack
3376 1.1.1.16.4.1 perseant buffer and potentially allow malicious code to be executed
3377 1.1.1.16.4.1 perseant with the privilege level of the ntpd process.
3378 1.1.1.16.4.1 perseant
3379 1.1.1.16.4.1 perseant Mitigation - any of:
3380 1.1.1.16.4.1 perseant - Upgrade to 4.2.8, or later, or
3381 1.1.1.16.4.1 perseant - Disable Autokey Authentication by removing, or commenting out,
3382 1.1.1.16.4.1 perseant all configuration directives beginning with the crypto keyword
3383 1.1.1.16.4.1 perseant in your ntp.conf file.
3384 1.1.1.16.4.1 perseant
3385 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of the
3386 1.1.1.16.4.1 perseant Google Security Team.
3387 1.1.1.16.4.1 perseant
3388 1.1.1.16.4.1 perseant * Buffer overflow in ctl_putdata()
3389 1.1.1.16.4.1 perseant
3390 1.1.1.16.4.1 perseant References: Sec 2668 / CVE-2014-9295 / VU#852879
3391 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
3392 1.1.1.16.4.1 perseant Versions: All NTP4 releases before 4.2.8
3393 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8) 18 Dec 2014
3394 1.1.1.16.4.1 perseant
3395 1.1.1.16.4.1 perseant Summary: A remote attacker can send a carefully crafted packet that
3396 1.1.1.16.4.1 perseant can overflow a stack buffer and potentially allow malicious
3397 1.1.1.16.4.1 perseant code to be executed with the privilege level of the ntpd process.
3398 1.1.1.16.4.1 perseant
3399 1.1.1.16.4.1 perseant Mitigation - any of:
3400 1.1.1.16.4.1 perseant - Upgrade to 4.2.8, or later.
3401 1.1.1.16.4.1 perseant - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
3402 1.1.1.16.4.1 perseant
3403 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of the
3404 1.1.1.16.4.1 perseant Google Security Team.
3405 1.1.1.16.4.1 perseant
3406 1.1.1.16.4.1 perseant * Buffer overflow in configure()
3407 1.1.1.16.4.1 perseant
3408 1.1.1.16.4.1 perseant References: Sec 2669 / CVE-2014-9295 / VU#852879
3409 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
3410 1.1.1.16.4.1 perseant Versions: All NTP4 releases before 4.2.8
3411 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8) 18 Dec 2014
3412 1.1.1.16.4.1 perseant
3413 1.1.1.16.4.1 perseant Summary: A remote attacker can send a carefully crafted packet that
3414 1.1.1.16.4.1 perseant can overflow a stack buffer and potentially allow malicious
3415 1.1.1.16.4.1 perseant code to be executed with the privilege level of the ntpd process.
3416 1.1.1.16.4.1 perseant
3417 1.1.1.16.4.1 perseant Mitigation - any of:
3418 1.1.1.16.4.1 perseant - Upgrade to 4.2.8, or later.
3419 1.1.1.16.4.1 perseant - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
3420 1.1.1.16.4.1 perseant
3421 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of the
3422 1.1.1.16.4.1 perseant Google Security Team.
3423 1.1.1.16.4.1 perseant
3424 1.1.1.16.4.1 perseant * receive(): missing return on error
3425 1.1.1.16.4.1 perseant
3426 1.1.1.16.4.1 perseant References: Sec 2670 / CVE-2014-9296 / VU#852879
3427 1.1.1.16.4.1 perseant CVSS: (AV:N/AC:L/Au:N/C:N/I:N/A:P) Base Score: 5.0
3428 1.1.1.16.4.1 perseant Versions: All NTP4 releases before 4.2.8
3429 1.1.1.16.4.1 perseant Date Resolved: Stable (4.2.8) 18 Dec 2014
3430 1.1.1.16.4.1 perseant
3431 1.1.1.16.4.1 perseant Summary: Code in ntp_proto.c:receive() was missing a 'return;' in
3432 1.1.1.16.4.1 perseant the code path where an error was detected, which meant
3433 1.1.1.16.4.1 perseant processing did not stop when a specific rare error occurred.
3434 1.1.1.16.4.1 perseant We haven't found a way for this bug to affect system integrity.
3435 1.1.1.16.4.1 perseant If there is no way to affect system integrity the base CVSS
3436 1.1.1.16.4.1 perseant score for this bug is 0. If there is one avenue through which
3437 1.1.1.16.4.1 perseant system integrity can be partially affected, the base score
3438 1.1.1.16.4.1 perseant becomes a 5. If system integrity can be partially affected
3439 1.1.1.16.4.1 perseant via all three integrity metrics, the CVSS base score become 7.5.
3440 1.1.1.16.4.1 perseant
3441 1.1.1.16.4.1 perseant Mitigation - any of:
3442 1.1.1.16.4.1 perseant - Upgrade to 4.2.8, or later,
3443 1.1.1.16.4.1 perseant - Remove or comment out all configuration directives
3444 1.1.1.16.4.1 perseant beginning with the crypto keyword in your ntp.conf file.
3445 1.1.1.16.4.1 perseant
3446 1.1.1.16.4.1 perseant Credit: This vulnerability was discovered by Stephen Roettger of the
3447 1.1.1.16.4.1 perseant Google Security Team.
3448 1.1.1.16.4.1 perseant
3449 1.1.1.16.4.1 perseant See http://support.ntp.org/security for more information.
3450 1.1.1.16.4.1 perseant
3451 1.1.1.16.4.1 perseant New features / changes in this release:
3452 1.1.1.16.4.1 perseant
3453 1.1.1.16.4.1 perseant Important Changes
3454 1.1.1.16.4.1 perseant
3455 1.1.1.16.4.1 perseant * Internal NTP Era counters
3456 1.1.1.16.4.1 perseant
3457 1.1.1.16.4.1 perseant The internal counters that track the "era" (range of years) we are in
3458 1.1.1.16.4.1 perseant rolls over every 136 years'. The current "era" started at the stroke of
3459 1.1.1.16.4.1 perseant midnight on 1 Jan 1900, and ends just before the stroke of midnight on
3460 1.1.1.16.4.1 perseant 1 Jan 2036.
3461 1.1.1.16.4.1 perseant In the past, we have used the "midpoint" of the range to decide which
3462 1.1.1.16.4.1 perseant era we were in. Given the longevity of some products, it became clear
3463 1.1.1.16.4.1 perseant that it would be more functional to "look back" less, and "look forward"
3464 1.1.1.16.4.1 perseant more. We now compile a timestamp into the ntpd executable and when we
3465 1.1.1.16.4.1 perseant get a timestamp we us the "built-on" to tell us what era we are in.
3466 1.1.1.16.4.1 perseant This check "looks back" 10 years, and "looks forward" 126 years.
3467 1.1.1.16.4.1 perseant
3468 1.1.1.16.4.1 perseant * ntpdc responses disabled by default
3469 1.1.1.16.4.1 perseant
3470 1.1.1.16.4.1 perseant Dave Hart writes:
3471 1.1.1.16.4.1 perseant
3472 1.1.1.16.4.1 perseant For a long time, ntpq and its mostly text-based mode 6 (control)
3473 1.1.1.16.4.1 perseant protocol have been preferred over ntpdc and its mode 7 (private
3474 1.1.1.16.4.1 perseant request) protocol for runtime queries and configuration. There has
3475 1.1.1.16.4.1 perseant been a goal of deprecating ntpdc, previously held back by numerous
3476 1.1.1.16.4.1 perseant capabilities exposed by ntpdc with no ntpq equivalent. I have been
3477 1.1.1.16.4.1 perseant adding commands to ntpq to cover these cases, and I believe I've
3478 1.1.1.16.4.1 perseant covered them all, though I've not compared command-by-command
3479 1.1.1.16.4.1 perseant recently.
3480 1.1.1.16.4.1 perseant
3481 1.1.1.16.4.1 perseant As I've said previously, the binary mode 7 protocol involves a lot of
3482 1.1.1.16.4.1 perseant hand-rolled structure layout and byte-swapping code in both ntpd and
3483 1.1.1.16.4.1 perseant ntpdc which is hard to get right. As ntpd grows and changes, the
3484 1.1.1.16.4.1 perseant changes are difficult to expose via ntpdc while maintaining forward
3485 1.1.1.16.4.1 perseant and backward compatibility between ntpdc and ntpd. In contrast,
3486 1.1.1.16.4.1 perseant ntpq's text-based, label=value approach involves more code reuse and
3487 1.1.1.16.4.1 perseant allows compatible changes without extra work in most cases.
3488 1.1.1.16.4.1 perseant
3489 1.1.1.16.4.1 perseant Mode 7 has always been defined as vendor/implementation-specific while
3490 1.1.1.16.4.1 perseant mode 6 is described in RFC 1305 and intended to be open to interoperate
3491 1.1.1.16.4.1 perseant with other implementations. There is an early draft of an updated
3492 1.1.1.16.4.1 perseant mode 6 description that likely will join the other NTPv4 RFCs
3493 1.1.1.16.4.1 perseant eventually. (http://tools.ietf.org/html/draft-odonoghue-ntpv4-control-01)
3494 1.1.1.16.4.1 perseant
3495 1.1.1.16.4.1 perseant For these reasons, ntpd 4.2.7p230 by default disables processing of
3496 1.1.1.16.4.1 perseant ntpdc queries, reducing ntpd's attack surface and functionally
3497 1.1.1.16.4.1 perseant deprecating ntpdc. If you are in the habit of using ntpdc for certain
3498 1.1.1.16.4.1 perseant operations, please try the ntpq equivalent. If there's no equivalent,
3499 1.1.1.16.4.1 perseant please open a bug report at http://bugs.ntp.org./
3500 1.1.1.16.4.1 perseant
3501 1.1.1.16.4.1 perseant In addition to the above, over 1100 issues have been resolved between
3502 1.1.1.16.4.1 perseant the 4.2.6 branch and 4.2.8. The ChangeLog file in the distribution
3503 1.1.1.16.4.1 perseant lists these.
3504 1.1.1.16.4.1 perseant
3505 1.1.1.16.4.1 perseant ---
3506 1.1.1.16.4.1 perseant NTP 4.2.6p5 (Harlan Stenn <stenn (a] ntp.org>, 2011/12/24)
3507 1.1.1.16.4.1 perseant
3508 1.1.1.16.4.1 perseant Focus: Bug fixes
3509 1.1.1.16.4.1 perseant
3510 1.1.1.16.4.1 perseant Severity: Medium
3511 1.1.1.16.4.1 perseant
3512 1.1.1.16.4.1 perseant This is a recommended upgrade.
3513 1.1.1.16.4.1 perseant
3514 1.1.1.16.4.1 perseant This release updates sys_rootdisp and sys_jitter calculations to match the
3515 1.1.1.16.4.1 perseant RFC specification, fixes a potential IPv6 address matching error for the
3516 1.1.1.16.4.1 perseant "nic" and "interface" configuration directives, suppresses the creation of
3517 1.1.1.16.4.1 perseant extraneous ephemeral associations for certain broadcastclient and
3518 1.1.1.16.4.1 perseant multicastclient configurations, cleans up some ntpq display issues, and
3519 1.1.1.16.4.1 perseant includes improvements to orphan mode, minor bugs fixes and code clean-ups.
3520 1.1.1.16.4.1 perseant
3521 1.1.1.16.4.1 perseant New features / changes in this release:
3522 1.1.1.16.4.1 perseant
3523 1.1.1.16.4.1 perseant ntpd
3524 1.1.1.16.4.1 perseant
3525 1.1.1.16.4.1 perseant * Updated "nic" and "interface" IPv6 address handling to prevent
3526 1.1.1.16.4.1 perseant mismatches with localhost [::1] and wildcard [::] which resulted from
3527 1.1.1.16.4.1 perseant using the address/prefix format (e.g. fe80::/64)
3528 1.1.1.16.4.1 perseant * Fix orphan mode stratum incorrectly counting to infinity
3529 1.1.1.16.4.1 perseant * Orphan parent selection metric updated to includes missing ntohl()
3530 1.1.1.16.4.1 perseant * Non-printable stratum 16 refid no longer sent to ntp
3531 1.1.1.16.4.1 perseant * Duplicate ephemeral associations suppressed for broadcastclient and
3532 1.1.1.16.4.1 perseant multicastclient without broadcastdelay
3533 1.1.1.16.4.1 perseant * Exclude undetermined sys_refid from use in loopback TEST12
3534 1.1.1.16.4.1 perseant * Exclude MODE_SERVER responses from KoD rate limiting
3535 1.1.1.16.4.1 perseant * Include root delay in clock_update() sys_rootdisp calculations
3536 1.1.1.16.4.1 perseant * get_systime() updated to exclude sys_residual offset (which only
3537 1.1.1.16.4.1 perseant affected bits "below" sys_tick, the precision threshold)
3538 1.1.1.16.4.1 perseant * sys.peer jitter weighting corrected in sys_jitter calculation
3539 1.1.1.16.4.1 perseant
3540 1.1.1.16.4.1 perseant ntpq
3541 1.1.1.16.4.1 perseant
3542 1.1.1.16.4.1 perseant * -n option extended to include the billboard "server" column
3543 1.1.1.16.4.1 perseant * IPv6 addresses in the local column truncated to prevent overruns
3544 1.1.1.16.4.1 perseant
3545 1.1.1.16.4.1 perseant ---
3546 1.1.1.16.4.1 perseant NTP 4.2.6p4 (Harlan Stenn <stenn (a] ntp.org>, 2011/09/22)
3547 1.1.1.16.4.1 perseant
3548 1.1.1.16.4.1 perseant Focus: Bug fixes and portability improvements
3549 1.1.1.16.4.1 perseant
3550 1.1.1.16.4.1 perseant Severity: Medium
3551 1.1.1.16.4.1 perseant
3552 1.1.1.16.4.1 perseant This is a recommended upgrade.
3553 1.1.1.16.4.1 perseant
3554 1.1.1.16.4.1 perseant This release includes build infrastructure updates, code
3555 1.1.1.16.4.1 perseant clean-ups, minor bug fixes, fixes for a number of minor
3556 1.1.1.16.4.1 perseant ref-clock issues, and documentation revisions.
3557 1.1.1.16.4.1 perseant
3558 1.1.1.16.4.1 perseant Portability improvements affect AIX, HP-UX, Linux, OS X and 64-bit time_t.
3559 1.1.1.16.4.1 perseant
3560 1.1.1.16.4.1 perseant New features / changes in this release:
3561 1.1.1.16.4.1 perseant
3562 1.1.1.16.4.1 perseant Build system
3563 1.1.1.16.4.1 perseant
3564 1.1.1.16.4.1 perseant * Fix checking for struct rtattr
3565 1.1.1.16.4.1 perseant * Update config.guess and config.sub for AIX
3566 1.1.1.16.4.1 perseant * Upgrade required version of autogen and libopts for building
3567 1.1.1.16.4.1 perseant from our source code repository
3568 1.1.1.16.4.1 perseant
3569 1.1.1.16.4.1 perseant ntpd
3570 1.1.1.16.4.1 perseant
3571 1.1.1.16.4.1 perseant * Back-ported several fixes for Coverity warnings from ntp-dev
3572 1.1.1.16.4.1 perseant * Fix a rare boundary condition in UNLINK_EXPR_SLIST()
3573 1.1.1.16.4.1 perseant * Allow "logconfig =allall" configuration directive
3574 1.1.1.16.4.1 perseant * Bind tentative IPv6 addresses on Linux
3575 1.1.1.16.4.1 perseant * Correct WWVB/Spectracom driver to timestamp CR instead of LF
3576 1.1.1.16.4.1 perseant * Improved tally bit handling to prevent incorrect ntpq peer status reports
3577 1.1.1.16.4.1 perseant * Exclude the Undisciplined Local Clock and ACTS drivers from the initial
3578 1.1.1.16.4.1 perseant candidate list unless they are designated a "prefer peer"
3579 1.1.1.16.4.1 perseant * Prevent the consideration of Undisciplined Local Clock or ACTS drivers for
3580 1.1.1.16.4.1 perseant selection during the 'tos orphanwait' period
3581 1.1.1.16.4.1 perseant * Prefer an Orphan Mode Parent over the Undisciplined Local Clock or ACTS
3582 1.1.1.16.4.1 perseant drivers
3583 1.1.1.16.4.1 perseant * Improved support of the Parse Refclock trusttime flag in Meinberg mode
3584 1.1.1.16.4.1 perseant * Back-port utility routines from ntp-dev: mprintf(), emalloc_zero()
3585 1.1.1.16.4.1 perseant * Added the NTPD_TICKADJ_PPM environment variable for specifying baseline
3586 1.1.1.16.4.1 perseant clock slew on Microsoft Windows
3587 1.1.1.16.4.1 perseant * Code cleanup in libntpq
3588 1.1.1.16.4.1 perseant
3589 1.1.1.16.4.1 perseant ntpdc
3590 1.1.1.16.4.1 perseant
3591 1.1.1.16.4.1 perseant * Fix timerstats reporting
3592 1.1.1.16.4.1 perseant
3593 1.1.1.16.4.1 perseant ntpdate
3594 1.1.1.16.4.1 perseant
3595 1.1.1.16.4.1 perseant * Reduce time required to set clock
3596 1.1.1.16.4.1 perseant * Allow a timeout greater than 2 seconds
3597 1.1.1.16.4.1 perseant
3598 1.1.1.16.4.1 perseant sntp
3599 1.1.1.16.4.1 perseant
3600 1.1.1.16.4.1 perseant * Backward incompatible command-line option change:
3601 1.1.1.16.4.1 perseant -l/--filelog changed -l/--logfile (to be consistent with ntpd)
3602 1.1.1.16.4.1 perseant
3603 1.1.1.16.4.1 perseant Documentation
3604 1.1.1.16.4.1 perseant
3605 1.1.1.16.4.1 perseant * Update html2man. Fix some tags in the .html files
3606 1.1.1.16.4.1 perseant * Distribute ntp-wait.html
3607 1.1.1.16.4.1 perseant
3608 1.1.1.16.4.1 perseant ---
3609 1.1.1.16.4.1 perseant NTP 4.2.6p3 (Harlan Stenn <stenn (a] ntp.org>, 2011/01/03)
3610 1.1.1.16.4.1 perseant
3611 1.1.1.16.4.1 perseant Focus: Bug fixes and portability improvements
3612 1.1.1.16.4.1 perseant
3613 1.1.1.16.4.1 perseant Severity: Medium
3614 1.1.1.16.4.1 perseant
3615 1.1.1.16.4.1 perseant This is a recommended upgrade.
3616 1.1.1.16.4.1 perseant
3617 1.1.1.16.4.1 perseant This release includes build infrastructure updates, code
3618 1.1.1.16.4.1 perseant clean-ups, minor bug fixes, fixes for a number of minor
3619 1.1.1.16.4.1 perseant ref-clock issues, and documentation revisions.
3620 1.1.1.16.4.1 perseant
3621 1.1.1.16.4.1 perseant Portability improvements in this release affect AIX, Atari FreeMiNT,
3622 1.1.1.16.4.1 perseant FreeBSD4, Linux and Microsoft Windows.
3623 1.1.1.16.4.1 perseant
3624 1.1.1.16.4.1 perseant New features / changes in this release:
3625 1.1.1.16.4.1 perseant
3626 1.1.1.16.4.1 perseant Build system
3627 1.1.1.16.4.1 perseant * Use lsb_release to get information about Linux distributions.
3628 1.1.1.16.4.1 perseant * 'test' is in /usr/bin (instead of /bin) on some systems.
3629 1.1.1.16.4.1 perseant * Basic sanity checks for the ChangeLog file.
3630 1.1.1.16.4.1 perseant * Source certain build files with ./filename for systems without . in PATH.
3631 1.1.1.16.4.1 perseant * IRIX portability fix.
3632 1.1.1.16.4.1 perseant * Use a single copy of the "libopts" code.
3633 1.1.1.16.4.1 perseant * autogen/libopts upgrade.
3634 1.1.1.16.4.1 perseant * configure.ac m4 quoting cleanup.
3635 1.1.1.16.4.1 perseant
3636 1.1.1.16.4.1 perseant ntpd
3637 1.1.1.16.4.1 perseant * Do not bind to IN6_IFF_ANYCAST addresses.
3638 1.1.1.16.4.1 perseant * Log the reason for exiting under Windows.
3639 1.1.1.16.4.1 perseant * Multicast fixes for Windows.
3640 1.1.1.16.4.1 perseant * Interpolation fixes for Windows.
3641 1.1.1.16.4.1 perseant * IPv4 and IPv6 Multicast fixes.
3642 1.1.1.16.4.1 perseant * Manycast solicitation fixes and general repairs.
3643 1.1.1.16.4.1 perseant * JJY refclock cleanup.
3644 1.1.1.16.4.1 perseant * NMEA refclock improvements.
3645 1.1.1.16.4.1 perseant * Oncore debug message cleanup.
3646 1.1.1.16.4.1 perseant * Palisade refclock now builds under Linux.
3647 1.1.1.16.4.1 perseant * Give RAWDCF more baud rates.
3648 1.1.1.16.4.1 perseant * Support Truetime Satellite clocks under Windows.
3649 1.1.1.16.4.1 perseant * Support Arbiter 1093C Satellite clocks under Windows.
3650 1.1.1.16.4.1 perseant * Make sure that the "filegen" configuration command defaults to "enable".
3651 1.1.1.16.4.1 perseant * Range-check the status codes (plus other cleanup) in the RIPE-NCC driver.
3652 1.1.1.16.4.1 perseant * Prohibit 'includefile' directive in remote configuration command.
3653 1.1.1.16.4.1 perseant * Fix 'nic' interface bindings.
3654 1.1.1.16.4.1 perseant * Fix the way we link with openssl if openssl is installed in the base
3655 1.1.1.16.4.1 perseant system.
3656 1.1.1.16.4.1 perseant
3657 1.1.1.16.4.1 perseant ntp-keygen
3658 1.1.1.16.4.1 perseant * Fix -V coredump.
3659 1.1.1.16.4.1 perseant * OpenSSL version display cleanup.
3660 1.1.1.16.4.1 perseant
3661 1.1.1.16.4.1 perseant ntpdc
3662 1.1.1.16.4.1 perseant * Many counters should be treated as unsigned.
3663 1.1.1.16.4.1 perseant
3664 1.1.1.16.4.1 perseant ntpdate
3665 1.1.1.16.4.1 perseant * Do not ignore replies with equal receive and transmit timestamps.
3666 1.1.1.16.4.1 perseant
3667 1.1.1.16.4.1 perseant ntpq
3668 1.1.1.16.4.1 perseant * libntpq warning cleanup.
3669 1.1.1.16.4.1 perseant
3670 1.1.1.16.4.1 perseant ntpsnmpd
3671 1.1.1.16.4.1 perseant * Correct SNMP type for "precision" and "resolution".
3672 1.1.1.16.4.1 perseant * Update the MIB from the draft version to RFC-5907.
3673 1.1.1.16.4.1 perseant
3674 1.1.1.16.4.1 perseant sntp
3675 1.1.1.16.4.1 perseant * Display timezone offset when showing time for sntp in the local
3676 1.1.1.16.4.1 perseant timezone.
3677 1.1.1.16.4.1 perseant * Pay proper attention to RATE KoD packets.
3678 1.1.1.16.4.1 perseant * Fix a miscalculation of the offset.
3679 1.1.1.16.4.1 perseant * Properly parse empty lines in the key file.
3680 1.1.1.16.4.1 perseant * Logging cleanup.
3681 1.1.1.16.4.1 perseant * Use tv_usec correctly in set_time().
3682 1.1.1.16.4.1 perseant * Documentation cleanup.
3683 1.1.1.16.4.1 perseant
3684 1.1.1.16.4.1 perseant ---
3685 1.1.1.16.4.1 perseant NTP 4.2.6p2 (Harlan Stenn <stenn (a] ntp.org>, 2010/07/08)
3686 1.1.1.16.4.1 perseant
3687 1.1.1.16.4.1 perseant Focus: Bug fixes and portability improvements
3688 1.1.1.16.4.1 perseant
3689 1.1.1.16.4.1 perseant Severity: Medium
3690 1.1.1.16.4.1 perseant
3691 1.1.1.16.4.1 perseant This is a recommended upgrade.
3692 1.1.1.16.4.1 perseant
3693 1.1.1.16.4.1 perseant This release includes build infrastructure updates, code
3694 1.1.1.16.4.1 perseant clean-ups, minor bug fixes, fixes for a number of minor
3695 1.1.1.16.4.1 perseant ref-clock issues, improved KOD handling, OpenSSL related
3696 1.1.1.16.4.1 perseant updates and documentation revisions.
3697 1.1.1.16.4.1 perseant
3698 1.1.1.16.4.1 perseant Portability improvements in this release affect Irix, Linux,
3699 1.1.1.16.4.1 perseant Mac OS, Microsoft Windows, OpenBSD and QNX6
3700 1.1.1.16.4.1 perseant
3701 1.1.1.16.4.1 perseant New features / changes in this release:
3702 1.1.1.16.4.1 perseant
3703 1.1.1.16.4.1 perseant ntpd
3704 1.1.1.16.4.1 perseant * Range syntax for the trustedkey configuration directive
3705 1.1.1.16.4.1 perseant * Unified IPv4 and IPv6 restrict lists
3706 1.1.1.16.4.1 perseant
3707 1.1.1.16.4.1 perseant ntpdate
3708 1.1.1.16.4.1 perseant * Rate limiting and KOD handling
3709 1.1.1.16.4.1 perseant
3710 1.1.1.16.4.1 perseant ntpsnmpd
3711 1.1.1.16.4.1 perseant * default connection to net-snmpd via a unix-domain socket
3712 1.1.1.16.4.1 perseant * command-line 'socket name' option
3713 1.1.1.16.4.1 perseant
3714 1.1.1.16.4.1 perseant ntpq / ntpdc
3715 1.1.1.16.4.1 perseant * support for the "passwd ..." syntax
3716 1.1.1.16.4.1 perseant * key-type specific password prompts
3717 1.1.1.16.4.1 perseant
3718 1.1.1.16.4.1 perseant sntp
3719 1.1.1.16.4.1 perseant * MD5 authentication of an ntpd
3720 1.1.1.16.4.1 perseant * Broadcast and crypto
3721 1.1.1.16.4.1 perseant * OpenSSL support
3722 1.1.1.16.4.1 perseant
3723 1.1.1.16.4.1 perseant ---
3724 1.1.1.16.4.1 perseant NTP 4.2.6p1 (Harlan Stenn <stenn (a] ntp.org>, 2010/04/09)
3725 1.1.1.16.4.1 perseant
3726 1.1.1.16.4.1 perseant Focus: Bug fixes, portability fixes, and documentation improvements
3727 1.1.1.16.4.1 perseant
3728 1.1.1.16.4.1 perseant Severity: Medium
3729 1.1.1.16.4.1 perseant
3730 1.1.1.16.4.1 perseant This is a recommended upgrade.
3731 1.1.1.16.4.1 perseant
3732 1.1.1.16.4.1 perseant ---
3733 1.1.1.16.4.1 perseant NTP 4.2.6 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
3734 1.1.1.16.4.1 perseant
3735 1.1.1.16.4.1 perseant Focus: enhancements and bug fixes.
3736 1.1.1.16.4.1 perseant
3737 1.1.1.16.4.1 perseant ---
3738 1.1.1.16.4.1 perseant NTP 4.2.4p8 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
3739 1.1.1.16.4.1 perseant
3740 1.1.1.16.4.1 perseant Focus: Security Fixes
3741 1.1.1.16.4.1 perseant
3742 1.1.1.16.4.1 perseant Severity: HIGH
3743 1.1.1.16.4.1 perseant
3744 1.1.1.16.4.1 perseant This release fixes the following high-severity vulnerability:
3745 1.1.1.16.4.1 perseant
3746 1.1.1.16.4.1 perseant * [Sec 1331] DoS with mode 7 packets - CVE-2009-3563.
3747 1.1.1.16.4.1 perseant
3748 1.1.1.16.4.1 perseant See http://support.ntp.org/security for more information.
3749 1.1.1.16.4.1 perseant
3750 1.1.1.16.4.1 perseant NTP mode 7 (MODE_PRIVATE) is used by the ntpdc query and control utility.
3751 1.1.1.16.4.1 perseant In contrast, ntpq uses NTP mode 6 (MODE_CONTROL), while routine NTP time
3752 1.1.1.16.4.1 perseant transfers use modes 1 through 5. Upon receipt of an incorrect mode 7
3753 1.1.1.16.4.1 perseant request or a mode 7 error response from an address which is not listed
3754 1.1.1.16.4.1 perseant in a "restrict ... noquery" or "restrict ... ignore" statement, ntpd will
3755 1.1.1.16.4.1 perseant reply with a mode 7 error response (and log a message). In this case:
3756 1.1.1.16.4.1 perseant
3757 1.1.1.16.4.1 perseant * If an attacker spoofs the source address of ntpd host A in a
3758 1.1.1.16.4.1 perseant mode 7 response packet sent to ntpd host B, both A and B will
3759 1.1.1.16.4.1 perseant continuously send each other error responses, for as long as
3760 1.1.1.16.4.1 perseant those packets get through.
3761 1.1.1.16.4.1 perseant
3762 1.1.1.16.4.1 perseant * If an attacker spoofs an address of ntpd host A in a mode 7
3763 1.1.1.16.4.1 perseant response packet sent to ntpd host A, A will respond to itself
3764 1.1.1.16.4.1 perseant endlessly, consuming CPU and logging excessively.
3765 1.1.1.16.4.1 perseant
3766 1.1.1.16.4.1 perseant Credit for finding this vulnerability goes to Robin Park and Dmitri
3767 1.1.1.16.4.1 perseant Vinokurov of Alcatel-Lucent.
3768 1.1.1.16.4.1 perseant
3769 1.1.1.16.4.1 perseant THIS IS A STRONGLY RECOMMENDED UPGRADE.
3770 1.1.1.16.4.1 perseant
3771 1.1.1.16.4.1 perseant ---
3772 1.1.1.16.4.1 perseant ntpd now syncs to refclocks right away.
3773 1.1.1.16.4.1 perseant
3774 1.1.1.16.4.1 perseant Backward-Incompatible changes:
3775 1.1.1.16.4.1 perseant
3776 1.1.1.16.4.1 perseant ntpd no longer accepts '-v name' or '-V name' to define internal variables.
3777 1.1.1.16.4.1 perseant Use '--var name' or '--dvar name' instead. (Bug 817)
3778 1.1.1.16.4.1 perseant
3779 1.1.1.16.4.1 perseant ---
3780 1.1.1.16.4.1 perseant NTP 4.2.4p7 (Harlan Stenn <stenn (a] ntp.org>, 2009/05/04)
3781 1.1.1.16.4.1 perseant
3782 1.1.1.16.4.1 perseant Focus: Security and Bug Fixes
3783 1.1.1.16.4.1 perseant
3784 1.1.1.16.4.1 perseant Severity: HIGH
3785 1.1.1.16.4.1 perseant
3786 1.1.1.16.4.1 perseant This release fixes the following high-severity vulnerability:
3787 1.1.1.16.4.1 perseant
3788 1.1.1.16.4.1 perseant * [Sec 1151] Remote exploit if autokey is enabled. CVE-2009-1252
3789 1.1.1.16.4.1 perseant
3790 1.1.1.16.4.1 perseant See http://support.ntp.org/security for more information.
3791 1.1.1.16.4.1 perseant
3792 1.1.1.16.4.1 perseant If autokey is enabled (if ntp.conf contains a "crypto pw whatever"
3793 1.1.1.16.4.1 perseant line) then a carefully crafted packet sent to the machine will cause
3794 1.1.1.16.4.1 perseant a buffer overflow and possible execution of injected code, running
3795 1.1.1.16.4.1 perseant with the privileges of the ntpd process (often root).
3796 1.1.1.16.4.1 perseant
3797 1.1.1.16.4.1 perseant Credit for finding this vulnerability goes to Chris Ries of CMU.
3798 1.1.1.16.4.1 perseant
3799 1.1.1.16.4.1 perseant This release fixes the following low-severity vulnerabilities:
3800 1.1.1.16.4.1 perseant
3801 1.1.1.16.4.1 perseant * [Sec 1144] limited (two byte) buffer overflow in ntpq. CVE-2009-0159
3802 1.1.1.16.4.1 perseant Credit for finding this vulnerability goes to Geoff Keating of Apple.
3803 1.1.1.16.4.1 perseant
3804 1.1.1.16.4.1 perseant * [Sec 1149] use SO_EXCLUSIVEADDRUSE on Windows
3805 1.1.1.16.4.1 perseant Credit for finding this issue goes to Dave Hart.
3806 1.1.1.16.4.1 perseant
3807 1.1.1.16.4.1 perseant This release fixes a number of bugs and adds some improvements:
3808 1.1.1.16.4.1 perseant
3809 1.1.1.16.4.1 perseant * Improved logging
3810 1.1.1.16.4.1 perseant * Fix many compiler warnings
3811 1.1.1.16.4.1 perseant * Many fixes and improvements for Windows
3812 1.1.1.16.4.1 perseant * Adds support for AIX 6.1
3813 1.1.1.16.4.1 perseant * Resolves some issues under MacOS X and Solaris
3814 1.1.1.16.4.1 perseant
3815 1.1.1.16.4.1 perseant THIS IS A STRONGLY RECOMMENDED UPGRADE.
3816 1.1.1.16.4.1 perseant
3817 1.1.1.16.4.1 perseant ---
3818 1.1.1.16.4.1 perseant NTP 4.2.4p6 (Harlan Stenn <stenn (a] ntp.org>, 2009/01/07)
3819 1.1.1.16.4.1 perseant
3820 1.1.1.16.4.1 perseant Focus: Security Fix
3821 1.1.1.16.4.1 perseant
3822 1.1.1.16.4.1 perseant Severity: Low
3823 1.1.1.16.4.1 perseant
3824 1.1.1.16.4.1 perseant This release fixes oCERT.org's CVE-2009-0021, a vulnerability affecting
3825 1.1.1.16.4.1 perseant the OpenSSL library relating to the incorrect checking of the return
3826 1.1.1.16.4.1 perseant value of EVP_VerifyFinal function.
3827 1.1.1.16.4.1 perseant
3828 1.1.1.16.4.1 perseant Credit for finding this issue goes to the Google Security Team for
3829 1.1.1.16.4.1 perseant finding the original issue with OpenSSL, and to ocert.org for finding
3830 1.1.1.16.4.1 perseant the problem in NTP and telling us about it.
3831 1.1.1.16.4.1 perseant
3832 1.1.1.16.4.1 perseant This is a recommended upgrade.
3833 1.1.1.16.4.1 perseant ---
3834 1.1.1.16.4.1 perseant NTP 4.2.4p5 (Harlan Stenn <stenn (a] ntp.org>, 2008/08/17)
3835 1.1.1.16.4.1 perseant
3836 1.1.1.16.4.1 perseant Focus: Minor Bugfixes
3837 1.1.1.16.4.1 perseant
3838 1.1.1.16.4.1 perseant This release fixes a number of Windows-specific ntpd bugs and
3839 1.1.1.16.4.1 perseant platform-independent ntpdate bugs. A logging bugfix has been applied
3840 1.1.1.16.4.1 perseant to the ONCORE driver.
3841 1.1.1.16.4.1 perseant
3842 1.1.1.16.4.1 perseant The "dynamic" keyword and is now obsolete and deferred binding to local
3843 1.1.1.16.4.1 perseant interfaces is the new default. The minimum time restriction for the
3844 1.1.1.16.4.1 perseant interface update interval has been dropped.
3845 1.1.1.16.4.1 perseant
3846 1.1.1.16.4.1 perseant A number of minor build system and documentation fixes are included.
3847 1.1.1.16.4.1 perseant
3848 1.1.1.16.4.1 perseant This is a recommended upgrade for Windows.
3849 1.1.1.16.4.1 perseant
3850 1.1.1.16.4.1 perseant ---
3851 1.1.1.16.4.1 perseant NTP 4.2.4p4 (Harlan Stenn <stenn (a] ntp.org>, 2007/09/10)
3852 1.1.1.16.4.1 perseant
3853 1.1.1.16.4.1 perseant Focus: Minor Bugfixes
3854 1.1.1.16.4.1 perseant
3855 1.1.1.16.4.1 perseant This release updates certain copyright information, fixes several display
3856 1.1.1.16.4.1 perseant bugs in ntpdc, avoids SIGIO interrupting malloc(), cleans up file descriptor
3857 1.1.1.16.4.1 perseant shutdown in the parse refclock driver, removes some lint from the code,
3858 1.1.1.16.4.1 perseant stops accessing certain buffers immediately after they were freed, fixes
3859 1.1.1.16.4.1 perseant a problem with non-command-line specification of -6, and allows the loopback
3860 1.1.1.16.4.1 perseant interface to share addresses with other interfaces.
3861 1.1.1.16.4.1 perseant
3862 1.1.1.16.4.1 perseant ---
3863 1.1.1.16.4.1 perseant NTP 4.2.4p3 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/29)
3864 1.1.1.16.4.1 perseant
3865 1.1.1.16.4.1 perseant Focus: Minor Bugfixes
3866 1.1.1.16.4.1 perseant
3867 1.1.1.16.4.1 perseant This release fixes a bug in Windows that made it difficult to
3868 1.1.1.16.4.1 perseant terminate ntpd under windows.
3869 1.1.1.16.4.1 perseant This is a recommended upgrade for Windows.
3870 1.1.1.16.4.1 perseant
3871 1.1.1.16.4.1 perseant ---
3872 1.1.1.16.4.1 perseant NTP 4.2.4p2 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/19)
3873 1.1.1.16.4.1 perseant
3874 1.1.1.16.4.1 perseant Focus: Minor Bugfixes
3875 1.1.1.16.4.1 perseant
3876 1.1.1.16.4.1 perseant This release fixes a multicast mode authentication problem,
3877 1.1.1.16.4.1 perseant an error in NTP packet handling on Windows that could lead to
3878 1.1.1.16.4.1 perseant ntpd crashing, and several other minor bugs. Handling of
3879 1.1.1.16.4.1 perseant multicast interfaces and logging configuration were improved.
3880 1.1.1.16.4.1 perseant The required versions of autogen and libopts were incremented.
3881 1.1.1.16.4.1 perseant This is a recommended upgrade for Windows and multicast users.
3882 1.1.1.16.4.1 perseant
3883 1.1.1.16.4.1 perseant ---
3884 1.1.1.16.4.1 perseant NTP 4.2.4 (Harlan Stenn <stenn (a] ntp.org>, 2006/12/31)
3885 1.1.1.16.4.1 perseant
3886 1.1.1.16.4.1 perseant Focus: enhancements and bug fixes.
3887 1.1.1.16.4.1 perseant
3888 1.1.1.16.4.1 perseant Dynamic interface rescanning was added to simplify the use of ntpd in
3889 1.1.1.16.4.1 perseant conjunction with DHCP. GNU AutoGen is used for its command-line options
3890 1.1.1.16.4.1 perseant processing. Separate PPS devices are supported for PARSE refclocks, MD5
3891 1.1.1.16.4.1 perseant signatures are now provided for the release files. Drivers have been
3892 1.1.1.16.4.1 perseant added for some new ref-clocks and have been removed for some older
3893 1.1.1.16.4.1 perseant ref-clocks. This release also includes other improvements, documentation
3894 1.1.1.16.4.1 perseant and bug fixes.
3895 1.1.1.16.4.1 perseant
3896 1.1.1.16.4.1 perseant K&R C is no longer supported as of NTP-4.2.4. We are now aiming for ANSI
3897 1.1.1.16.4.1 perseant C support.
3898 1.1.1.16.4.1 perseant
3899 1.1.1.16.4.1 perseant ---
3900 1.1.1.16.4.1 perseant NTP 4.2.0 (Harlan Stenn <stenn (a] ntp.org>, 2003/10/15)
3901 1.1.1.16.4.1 perseant
3902 1.1.1.16.4.1 perseant Focus: enhancements and bug fixes.
3903 1.1.1.16.4.1 perseant ---
3904 1.1.1.16.4.1 perseant NTP 4.2.8p17 (Harlan Stenn <stenn (a] ntp.org>, 2023 Jun 06)
3905 1.1.1.16.4.1 perseant
3906 1.1.1.16.4.1 perseant Focus: Bug fixes
3907 1.1.1.16.4.1 perseant
3908 1.1.1.16.4.1 perseant Severity: HIGH (for people running 4.2.8p16)
3909 1.1.1.16.4.1 perseant
3910 1.1.1.16.4.1 perseant This release:
3911 1.1.1.16.4.1 perseant
3912 1.1.1.16.4.1 perseant - fixes 3 bugs, including a regression
3913 1.1.1.16.4.1 perseant - adds new unit tests
3914 1.1.1.16.4.1 perseant
3915 1.1.1.16.4.1 perseant Details below:
3916 1.1.1.16.4.1 perseant
3917 1.1.1.16.4.1 perseant * [Bug 3824] Spurious "ntpd: daemon failed to notify parent!" logged at
3918 1.1.1.16.4.1 perseant event_sync. Reported by Edward McGuire. <hart (a] ntp.org>
3919 1.1.1.16.4.1 perseant * [Bug 3822] ntpd significantly delays first poll of servers specified by name.
3920 1.1.1.16.4.1 perseant <hart (a] ntp.org> Miroslav Lichvar identified regression in 4.2.8p16.
3921 1.1.1.16.4.1 perseant * [Bug 3821] 4.2.8p16 misreads hex authentication keys, won't interop with
3922 1.1.1.16.4.1 perseant 4.2.8p15 or earlier. Reported by Matt Nordhoff, thanks to
3923 1.1.1.16.4.1 perseant Miroslav Lichvar and Matt for rapid testing and identifying the
3924 1.1.1.16.4.1 perseant problem. <hart (a] ntp.org>
3925 1.1.1.16.4.1 perseant * Add tests/libntp/digests.c to catch regressions reading keys file or with
3926 1.1.1.16.4.1 perseant symmetric authentication digest output.
3927 1.1.1.16.4.1 perseant
3928 1.1.1.16.4.1 perseant ---
3929 1.1.1.16.4.1 perseant NTP 4.2.8p16 (Harlan Stenn <stenn (a] ntp.org>, 2023 May 30)
3930 1.1.1.16.4.1 perseant
3931 1.1.1.16.4.1 perseant Focus: Security, Bug fixes
3932 1.1.1.16.4.1 perseant
3933 1.1.1.16.4.1 perseant Severity: LOW
3934 1.1.1.16.4.1 perseant
3935 1.1.1.16.4.1 perseant This release:
3936 1.1.1.16.4.1 perseant
3937 1.1.1.16.4.1 perseant - fixes 4 vulnerabilities (3 LOW and 1 None severity),
3938 1.1.1.16.4.1 perseant - fixes 46 bugs
3939 1.1.1.16.4.1 perseant - includes 15 general improvements
3940 1.1.1.16.4.1 perseant - adds support for OpenSSL-3.0
3941 1.1.1.16.4.1 perseant
3942 1.1.1.16.4.1 perseant Details below:
3943 1.1.1.16.4.1 perseant
3944 1.1.1.16.4.1 perseant * [Sec 3808] Assertion failure in ntpq on malformed RT-11 date <perlinger (a] ntp.org>
3945 1.1.1.16.4.1 perseant * [Sec 3807] praecis_parse() in the Palisade refclock driver has a
3946 1.1.1.16.4.1 perseant hypothetical input buffer overflow. Reported by ... stenn@
3947 1.1.1.16.4.1 perseant * [Sec 3806] libntp/mstolfp.c needs bounds checking <perlinger (a] ntp.org>
3948 1.1.1.16.4.1 perseant - solved numerically instead of using string manipulation
3949 1.1.1.16.4.1 perseant * [Sec 3767] An OOB KoD RATE value triggers an assertion when debug is enabled.
3950 1.1.1.16.4.1 perseant <stenn (a] ntp.org>
3951 1.1.1.16.4.1 perseant * [Bug 3819] Updated libopts/Makefile.am was missing NTP_HARD_* values. <stenn@>
3952 1.1.1.16.4.1 perseant * [Bug 3817] Bounds-check "tos floor" configuration. <hart (a] ntp.org>
3953 1.1.1.16.4.1 perseant * [Bug 3814] First poll delay of new or cleared associations miscalculated.
3954 1.1.1.16.4.1 perseant <hart (a] ntp.org>
3955 1.1.1.16.4.1 perseant * [Bug 3802] ntp-keygen -I default identity modulus bits too small for
3956 1.1.1.16.4.1 perseant OpenSSL 3. Reported by rmsh1216 (a] 163.com <hart (a] ntp.org>
3957 1.1.1.16.4.1 perseant * [Bug 3801] gpsdjson refclock gps_open() device name mishandled. <hart (a] ntp.org>
3958 1.1.1.16.4.1 perseant * [Bug 3800] libopts-42.1.17 does not compile with Microsoft C. <hart (a] ntp.org>
3959 1.1.1.16.4.1 perseant * [Bug 3799] Enable libopts noreturn compiler advice for MSC. <hart (a] ntp.org>
3960 1.1.1.16.4.1 perseant * [Bug 3797] Windows getaddrinfo w/AI_ADDRCONFIG fails for localhost when
3961 1.1.1.16.4.1 perseant disconnected, breaking ntpq and ntpdc. <hart (a] ntp.org>
3962 1.1.1.16.4.1 perseant * [Bug 3795] pollskewlist documentation uses | when it shouldn't.
3963 1.1.1.16.4.1 perseant - ntp.conf manual page and miscopt.html corrections. <hart (a] ntp.org>
3964 1.1.1.16.4.1 perseant * [Bug 3793] Wrong variable type passed to record_raw_stats(). <hart (a] ntp.org>
3965 1.1.1.16.4.1 perseant - Report and patch by Yuezhen LUAN <wei6410 (a] sina.com>.
3966 1.1.1.16.4.1 perseant * [Bug 3786] Timer starvation on high-load Windows ntpd. <hart (a] ntp.org>
3967 1.1.1.16.4.1 perseant * [Bug 3784] high-load ntpd on Windows deaf after enough ICMP TTL exceeded.
3968 1.1.1.16.4.1 perseant <hart (a] ntp.org>
3969 1.1.1.16.4.1 perseant * [Bug 3781] log "Unable to listen for broadcasts" for IPv4 <hart (a] ntp.org>
3970 1.1.1.16.4.1 perseant * [Bug 3774] mode 6 packets corrupted in rawstats file <hart (a] ntp.org>
3971 1.1.1.16.4.1 perseant - Reported by Edward McGuire, fix identified by <wei6410 (a] sina.com>.
3972 1.1.1.16.4.1 perseant * [Bug 3758] Provide a 'device' config statement for refclocks <perlinger (a] ntp.org>
3973 1.1.1.16.4.1 perseant * [Bug 3757] Improve handling of Linux-PPS in NTPD <perlinger (a] ntp.org>
3974 1.1.1.16.4.1 perseant * [Bug 3741] 4.2.8p15 can't build with glibc 2.34 <perlinger (a] ntp.org>
3975 1.1.1.16.4.1 perseant * [Bug 3725] Make copyright of clk_wharton.c compatible with Debian.
3976 1.1.1.16.4.1 perseant Philippe De Muyter <phdm (a] macqel.be>
3977 1.1.1.16.4.1 perseant * [Bug 3724] ntp-keygen with openSSL 1.1.1 fails on Windows <perlinger (a] ntp.org>
3978 1.1.1.16.4.1 perseant - openssl applink needed again for openSSL-1.1.1
3979 1.1.1.16.4.1 perseant * [Bug 3719] configure.ac checks for closefrom() and getdtablesize() missing.
3980 1.1.1.16.4.1 perseant Reported by Brian Utterback, broken in 2010 by <hart (a] ntp.org>
3981 1.1.1.16.4.1 perseant * [Bug 3699] Problems handling drift file and restoring previous drifts <perlinger (a] ntp.org>
3982 1.1.1.16.4.1 perseant - command line options override config statements where applicable
3983 1.1.1.16.4.1 perseant - make initial frequency settings idempotent and reversible
3984 1.1.1.16.4.1 perseant - make sure kernel PLL gets a recovered drift componsation
3985 1.1.1.16.4.1 perseant * [Bug 3695] Fix memory leak with ntpq on Windows Server 2019 <perlinger (a] ntp.org>
3986 1.1.1.16.4.1 perseant * [Bug 3694] NMEA refclock seems to unnecessarily require location in messages
3987 1.1.1.16.4.1 perseant - misleading title; essentially a request to ignore the receiver status.
3988 1.1.1.16.4.1 perseant Added a mode bit for this. <perlinger (a] ntp.org>
3989 1.1.1.16.4.1 perseant * [Bug 3693] Improvement of error handling key lengths <perlinger (a] ntp.org>
3990 1.1.1.16.4.1 perseant - original patch by Richard Schmidt, with mods & unit test fixes
3991 1.1.1.16.4.1 perseant * [Bug 3692] /dev/gpsN requirement prevents KPPS <perlinger (a] ntp.org>
3992 1.1.1.16.4.1 perseant - implement/wrap 'realpath()' to resolve symlinks in device names
3993 1.1.1.16.4.1 perseant * [Bug 3691] Buffer Overflow reading GPSD output
3994 1.1.1.16.4.1 perseant - original patch by matt<ntpbr (a] mattcorallo.com>
3995 1.1.1.16.4.1 perseant - increased max PDU size to 4k to avoid truncation
3996 1.1.1.16.4.1 perseant * [Bug 3690] newline in ntp clock variable (parse) <perlinger (a] ntp.org>
3997 1.1.1.16.4.1 perseant - patch by Frank Kardel
3998 1.1.1.16.4.1 perseant * [Bug 3689] Extension for MD5, SHA-1 and other keys <perlinger (a] ntp.org>
3999 1.1.1.16.4.1 perseant - ntp{q,dc} now use the same password processing as ntpd does in the key
4000 1.1.1.16.4.1 perseant file, so having a binary secret >= 11 bytes is possible for all keys.
4001 1.1.1.16.4.1 perseant (This is a different approach to the problem than suggested)
4002 1.1.1.16.4.1 perseant * [Bug 3688] GCC 10 build errors in testsuite <perlinger (a] ntp.org>
4003 1.1.1.16.4.1 perseant * [Bug 3687] ntp_crypto_rand RNG status not known <perlinger (a] ntp.org>
4004 1.1.1.16.4.1 perseant - patch by Gerry Garvey
4005 1.1.1.16.4.1 perseant * [Bug 3682] Fixes for warnings when compiled without OpenSSL <perlinger (a] ntp.org>
4006 1.1.1.16.4.1 perseant - original patch by Gerry Garvey
4007 1.1.1.16.4.1 perseant * [Bug 3677] additional peer events not decoded in associations listing <perlinger (a] ntp.org>
4008 1.1.1.16.4.1 perseant - original patch by Gerry Garvey
4009 1.1.1.16.4.1 perseant * [Bug 3676] compiler warnings (CMAC, interrupt_buf, typo, fallthrough)
4010 1.1.1.16.4.1 perseant - applied patches by Gerry Garvey
4011 1.1.1.16.4.1 perseant * [Bug 3675] ntpq ccmds[] stores pointer to non-persistent storage
4012 1.1.1.16.4.1 perseant * [Bug 3674] ntpq command 'execute only' using '~' prefix <perlinger (a] ntp.org>
4013 1.1.1.16.4.1 perseant - idea+patch by Gerry Garvey
4014 1.1.1.16.4.1 perseant * [Bug 3672] fix biased selection in median cut <perlinger (a] ntp.org>
4015 1.1.1.16.4.1 perseant * [Bug 3666] avoid unlimited receive buffer allocation <perlinger (a] ntp.org>
4016 1.1.1.16.4.1 perseant - follow-up: fix inverted sense in check, reset shortfall counter
4017 1.1.1.16.4.1 perseant * [Bug 3660] Revert 4.2.8p15 change to manycast. <hart (a] ntp.org>
4018 1.1.1.16.4.1 perseant * [Bug 3640] document "discard monitor" and fix the code. <hart (a] ntp.org>
4019 1.1.1.16.4.1 perseant - fixed bug identified by Edward McGuire <perlinger (a] ntp.org>
4020 1.1.1.16.4.1 perseant * [Bug 3626] (SNTP) UTC offset calculation needs dst flag <perlinger (a] ntp.org>
4021 1.1.1.16.4.1 perseant - applied patch by Gerry Garvey
4022 1.1.1.16.4.1 perseant * [Bug 3432] refclocks that 'write()' should check the result <perlinger (a] ntp.org>
4023 1.1.1.16.4.1 perseant - backport from -dev, plus some more work on warnings for unchecked results
4024 1.1.1.16.4.1 perseant * [Bug 3428] ntpd spinning consuming CPU on Linux router with full table.
4025 1.1.1.16.4.1 perseant Reported by Israel G. Lugo. <hart (a] ntp.org>
4026 1.1.1.16.4.1 perseant * [Bug 3103] libopts zsave_warn format string too few arguments <bkorb (a] gnu.org>
4027 1.1.1.16.4.1 perseant * [Bug 2990] multicastclient incorrectly causes bind to broadcast address.
4028 1.1.1.16.4.1 perseant Integrated patch from Brian Utterback. <hart (a] ntp.org>
4029 1.1.1.16.4.1 perseant * [Bug 2525] Turn on automake subdir-objects across the project. <hart (a] ntp.org>
4030 1.1.1.16.4.1 perseant * [Bug 2410] syslog an error message on panic exceeded. <brian.utterback (a] oracle.com>
4031 1.1.1.16.4.1 perseant * Use correct rounding in mstolfp(). perlinger/hart
4032 1.1.1.16.4.1 perseant * M_ADDF should use u_int32. <hart (a] ntp.org>
4033 1.1.1.16.4.1 perseant * Only define tv_fmt_libbuf() if we will use it. <stenn (a] ntp.org>
4034 1.1.1.16.4.1 perseant * Use recv_buffer instead of the longer recv_space.X_recv_buffer. hart/stenn
4035 1.1.1.16.4.1 perseant * Make sure the value returned by refid_str() prints cleanly. <stenn (a] ntp.org>
4036 1.1.1.16.4.1 perseant * If DEBUG is enabled, the startup banner now says that debug assertions
4037 1.1.1.16.4.1 perseant are in force and that ntpd will abort if any are violated. <stenn (a] ntp.org>
4038 1.1.1.16.4.1 perseant * syslog valid incoming KoDs. <stenn (a] ntp.org>
4039 1.1.1.16.4.1 perseant * Rename a poorly-named variable. <stenn (a] ntp.org>
4040 1.1.1.16.4.1 perseant * Disable "embedded NUL in string" messages in libopts, when we can. <stenn@>
4041 1.1.1.16.4.1 perseant * Use https in the AC_INIT URLs in configure.ac. <stenn (a] ntp.org>
4042 1.1.1.16.4.1 perseant * Implement NTP_FUNC_REALPATH. <stenn (a] ntp.org>
4043 1.1.1.16.4.1 perseant * Lose a gmake construct in ntpd/Makefile.am. <stenn (a] ntp.org>
4044 1.1.1.16.4.1 perseant * upgrade to: autogen-5.18.16
4045 1.1.1.16.4.1 perseant * upgrade to: libopts-42.1.17
4046 1.1.1.16.4.1 perseant * upgrade to: autoconf-2.71
4047 1.1.1.16.4.1 perseant * upgrade to: automake-1.16.15
4048 1.1.1.16.4.1 perseant * Upgrade to libevent-2.1.12-stable <stenn (a] ntp.org>
4049 1.1.1.16.4.1 perseant * Support OpenSSL-3.0
4050 1.1.1.16.4.1 perseant
4051 1.1.1.16.4.1 perseant ---
4052 1.1.1.16 christos NTP 4.2.8p15 (Harlan Stenn <stenn (a] ntp.org>, 2020 Jun 23)
4053 1.1.1.16 christos
4054 1.1.1.16 christos Focus: Security, Bug fixes
4055 1.1.1.16 christos
4056 1.1.1.16 christos Severity: MEDIUM
4057 1.1.1.16 christos
4058 1.1.1.16 christos This release fixes one vulnerability: Associations that use CMAC
4059 1.1.1.16 christos authentication between ntpd from versions 4.2.8p11/4.3.97 and
4060 1.1.1.16 christos 4.2.8p14/4.3.100 will leak a small amount of memory for each packet.
4061 1.1.1.16 christos Eventually, ntpd will run out of memory and abort.
4062 1.1.1.16 christos
4063 1.1.1.16 christos It also fixes 13 other bugs.
4064 1.1.1.16 christos
4065 1.1.1.16 christos * [Sec 3661] memory leak with AES128CMAC keys <perlinger (a] ntp.org>
4066 1.1.1.16 christos * [Bug 3670] Regression from bad merger between 3592 and 3596 <perlinger@>
4067 1.1.1.16 christos - Thanks to Sylar Tao
4068 1.1.1.16 christos * [Bug 3667] decodenetnum fails with numeric port <perlinger (a] ntp.org>
4069 1.1.1.16 christos - rewrite 'decodenetnum()' in terms of inet_pton
4070 1.1.1.16 christos * [Bug 3666] avoid unlimited receive buffer allocation <perlinger (a] ntp.org>
4071 1.1.1.16 christos - limit number of receive buffers, with an iron reserve for refclocks
4072 1.1.1.16 christos * [Bug 3664] Enable openSSL CMAC support on Windows <burnicki (a] ntp.org>
4073 1.1.1.16 christos * [Bug 3662] Fix build errors on Windows with VS2008 <burnicki (a] ntp.org>
4074 1.1.1.16 christos * [Bug 3660] Manycast orphan mode startup discovery problem. <stenn (a] ntp.org>
4075 1.1.1.16 christos - integrated patch from Charles Claggett
4076 1.1.1.16 christos * [Bug 3659] Move definition of psl[] from ntp_config.h to
4077 1.1.1.16 christos ntp_config.h <perlinger (a] ntp.org>
4078 1.1.1.16 christos * [Bug 3657] Wrong "Autokey group mismatch" debug message <perlinger (a] ntp.org>
4079 1.1.1.16 christos * [Bug 3655] ntpdc memstats hash counts <perlinger (a] ntp.org>
4080 1.1.1.16 christos - fix by Gerry garvey
4081 1.1.1.16 christos * [Bug 3653] Refclock jitter RMS calculation <perlinger (a] ntp.org>
4082 1.1.1.16 christos - thanks to Gerry Garvey
4083 1.1.1.16 christos * [Bug 3646] Avoid sync with unsync orphan <perlinger (a] ntp.org>
4084 1.1.1.16 christos - patch by Gerry Garvey
4085 1.1.1.16 christos * [Bug 3644] Unsynchronized server [...] selected as candidate <perlinger (a] ntp.org>
4086 1.1.1.16 christos * [Bug 3639] refclock_jjy: TS-JJY0x can skip time sync depending on the STUS reply. <abe (a] ntp.org>
4087 1.1.1.16 christos - applied patch by Takao Abe
4088 1.1.1.16 christos
4089 1.1.1.16 christos ---
4090 1.1.1.15 christos NTP 4.2.8p14 (Harlan Stenn <stenn (a] ntp.org>, 2020 Mar 03)
4091 1.1.1.15 christos
4092 1.1.1.15 christos Focus: Security, Bug fixes, enhancements.
4093 1.1.1.15 christos
4094 1.1.1.15 christos Severity: MEDIUM
4095 1.1.1.15 christos
4096 1.1.1.15 christos This release fixes three vulnerabilities: a bug that causes causes an ntpd
4097 1.1.1.15 christos instance that is explicitly configured to override the default and allow
4098 1.1.1.15 christos ntpdc (mode 7) connections to be made to a server to read some uninitialized
4099 1.1.1.15 christos memory; fixes the case where an unmonitored ntpd using an unauthenticated
4100 1.1.1.15 christos association to its servers may be susceptible to a forged packet DoS attack;
4101 1.1.1.15 christos and fixes an attack against a client instance that uses a single
4102 1.1.1.15 christos unauthenticated time source. It also fixes 46 other bugs and addresses
4103 1.1.1.15 christos 4 other issues.
4104 1.1.1.15 christos
4105 1.1.1.15 christos * [Sec 3610] process_control() should bail earlier on short packets. stenn@
4106 1.1.1.15 christos - Reported by Philippe Antoine
4107 1.1.1.15 christos * [Sec 3596] Highly predictable timestamp attack. <stenn (a] ntp.org>
4108 1.1.1.15 christos - Reported by Miroslav Lichvar
4109 1.1.1.15 christos * [Sec 3592] DoS attack on client ntpd <perlinger (a] ntp.org>
4110 1.1.1.15 christos - Reported by Miroslav Lichvar
4111 1.1.1.15 christos * [Bug 3637] Emit the version of ntpd in saveconfig. stenn@
4112 1.1.1.15 christos * [Bug 3636] NMEA: combine time/date from multiple sentences <perlinger (a] ntp.org>
4113 1.1.1.15 christos * [Bug 3635] Make leapsecond file hash check optional <perlinger (a] ntp.org>
4114 1.1.1.15 christos * [Bug 3634] Typo in discipline.html, reported by Jason Harrison. stenn@
4115 1.1.1.15 christos * [Bug 3628] raw DCF decoding - improve robustness with Zeller's congruence
4116 1.1.1.15 christos - implement Zeller's congruence in libparse and libntp <perlinger (a] ntp.org>
4117 1.1.1.15 christos * [Bug 3627] SIGSEGV on FreeBSD-12 with stack limit and stack gap <perlinger (a] ntp.org>
4118 1.1.1.15 christos - integrated patch by Cy Schubert
4119 1.1.1.15 christos * [Bug 3620] memory leak in ntpq sysinfo <perlinger (a] ntp.org>
4120 1.1.1.15 christos - applied patch by Gerry Garvey
4121 1.1.1.15 christos * [Bug 3619] Honour drefid setting in cooked mode and sysinfo <perlinger (a] ntp.org>
4122 1.1.1.15 christos - applied patch by Gerry Garvey
4123 1.1.1.15 christos * [Bug 3617] Add support for ACE III and Copernicus II receivers <perlinger (a] ntp.org>
4124 1.1.1.15 christos - integrated patch by Richard Steedman
4125 1.1.1.15 christos * [Bug 3615] accelerate refclock startup <perlinger (a] ntp.org>
4126 1.1.1.15 christos * [Bug 3613] Propagate noselect to mobilized pool servers <stenn (a] ntp.org>
4127 1.1.1.15 christos - Reported by Martin Burnicki
4128 1.1.1.15 christos * [Bug 3612] Use-of-uninitialized-value in receive function <perlinger (a] ntp.org>
4129 1.1.1.15 christos - Reported by Philippe Antoine
4130 1.1.1.15 christos * [Bug 3611] NMEA time interpreted incorrectly <perlinger (a] ntp.org>
4131 1.1.1.15 christos - officially document new "trust date" mode bit for NMEA driver
4132 1.1.1.15 christos - restore the (previously undocumented) "trust date" feature lost with [bug 3577]
4133 1.1.1.15 christos * [Bug 3609] Fixing wrong falseticker in case of non-statistic jitter <perlinger (a] ntp.org>
4134 1.1.1.15 christos - mostly based on a patch by Michael Haardt, implementing 'fudge minjitter'
4135 1.1.1.15 christos * [Bug 3608] libparse fails to compile on S11.4SRU13 and later <perlinger (a] ntp.org>
4136 1.1.1.15 christos - removed ffs() and fls() prototypes as per Brian Utterback
4137 1.1.1.15 christos * [Bug 3604] Wrong param byte order passing into record_raw_stats() in
4138 1.1.1.15 christos ntp_io.c <perlinger (a] ntp.org>
4139 1.1.1.15 christos - fixed byte and paramter order as suggested by wei6410 (a] sina.com
4140 1.1.1.15 christos * [Bug 3601] Tests fail to link on platforms with ntp_cv_gc_sections_runs=no <perlinger (a] ntp.org>
4141 1.1.1.15 christos * [Bug 3599] Build fails on linux-m68k due to alignment issues <perlinger (a] ntp.org>
4142 1.1.1.15 christos - added padding as suggested by John Paul Adrian Glaubitz
4143 1.1.1.15 christos * [Bug 3594] ntpd discards messages coming through nmead <perlinger (a] ntp.org>
4144 1.1.1.15 christos * [Bug 3593] ntpd discards silently nmea messages after the 5th string <perlinger (a] ntp.org>
4145 1.1.1.15 christos * [Bug 3590] Update refclock_oncore.c to the new GPS date API <perlinger (a] ntp.org>
4146 1.1.1.15 christos * [Bug 3585] Unity tests mix buffered and unbuffered output <perlinger (a] ntp.org>
4147 1.1.1.15 christos - stdout+stderr are set to line buffered during test setup now
4148 1.1.1.15 christos * [Bug 3583] synchronization error <perlinger (a] ntp.org>
4149 1.1.1.15 christos - set clock to base date if system time is before that limit
4150 1.1.1.15 christos * [Bug 3582] gpsdjson refclock fudgetime1 adjustment is doubled <perlinger (a] ntp.org>
4151 1.1.1.15 christos * [Bug 3580] Possible bug ntpq-subs (NULL dereference in dogetassoc) <perlinger (a] ntp.org>
4152 1.1.1.15 christos - Reported by Paulo Neves
4153 1.1.1.15 christos * [Bug 3577] Update refclock_zyfer.c to the new GPS date API <perlinger (a] ntp.org>
4154 1.1.1.15 christos - also updates for refclock_nmea.c and refclock_jupiter.c
4155 1.1.1.15 christos * [Bug 3576] New GPS date function API <perlinger (a] ntp.org>
4156 1.1.1.15 christos * [Bug 3573] nptdate: missleading error message <perlinger (a] ntp.org>
4157 1.1.1.15 christos * [Bug 3570] NMEA driver docs: talker ID not mentioned, typo <perlinger (a] ntp.org>
4158 1.1.1.15 christos * [Bug 3569] cleanup MOD_NANO/STA_NANO handling for 'ntpadjtimex()' <perlinger (a] ntp.org>
4159 1.1.1.15 christos - sidekick: service port resolution in 'ntpdate'
4160 1.1.1.15 christos * [Bug 3550] Reproducible build: Respect SOURCE_DATE_EPOCH <perlinger (a] ntp.org>
4161 1.1.1.15 christos - applied patch by Douglas Royds
4162 1.1.1.15 christos * [Bug 3542] ntpdc monlist parameters cannot be set <perlinger (a] ntp.org>
4163 1.1.1.15 christos * [Bug 3533] ntpdc peer_info ipv6 issues <perlinger (a] ntp.org>
4164 1.1.1.15 christos - applied patch by Gerry Garvey
4165 1.1.1.15 christos * [Bug 3531] make check: test-decodenetnum fails <perlinger (a] ntp.org>
4166 1.1.1.15 christos - try to harden 'decodenetnum()' against 'getaddrinfo()' errors
4167 1.1.1.15 christos - fix wrong cond-compile tests in unit tests
4168 1.1.1.15 christos * [Bug 3517] Reducing build noise <perlinger (a] ntp.org>
4169 1.1.1.15 christos * [Bug 3516] Require tooling from this decade <perlinger (a] ntp.org>
4170 1.1.1.15 christos - patch by Philipp Prindeville
4171 1.1.1.15 christos * [Bug 3515] Refactor ntpdmain() dispatcher loop and group common code <perlinger (a] ntp.org>
4172 1.1.1.15 christos - patch by Philipp Prindeville
4173 1.1.1.15 christos * [Bug 3511] Get rid of AC_LANG_SOURCE() warnings <perlinger (a] ntp.org>
4174 1.1.1.15 christos - patch by Philipp Prindeville
4175 1.1.1.15 christos * [Bug 3510] Flatten out the #ifdef nesting in ntpdmain() <perlinger (a] ntp.org>
4176 1.1.1.15 christos - partial application of patch by Philipp Prindeville
4177 1.1.1.15 christos * [Bug 3491] Signed values of LFP datatypes should always display a sign
4178 1.1.1.15 christos - applied patch by Gerry Garvey & fixed unit tests <perlinger (a] ntp.org>
4179 1.1.1.15 christos * [Bug 3490] Patch to support Trimble Resolution Receivers <perlinger (a] ntp.org>
4180 1.1.1.15 christos - applied (modified) patch by Richard Steedman
4181 1.1.1.15 christos * [Bug 3473] RefID of refclocks should always be text format <perlinger (a] ntp.org>
4182 1.1.1.15 christos - applied patch by Gerry Garvey (with minor formatting changes)
4183 1.1.1.15 christos * [Bug 3132] Building 4.2.8p8 with disabled local libopts fails <perlinger (a] ntp.org>
4184 1.1.1.15 christos - applied patch by Miroslav Lichvar
4185 1.1.1.15 christos * [Bug 3094] ntpd trying to listen for broadcasts on a completely ipv6 network
4186 1.1.1.15 christos <perlinger (a] ntp.org>
4187 1.1.1.15 christos * [Bug 2420] ntpd doesn't run and exits with retval 0 when invalid user
4188 1.1.1.15 christos is specified with -u <perlinger (a] ntp.org>
4189 1.1.1.15 christos - monitor daemon child startup & propagate exit codes
4190 1.1.1.15 christos * [Bug 1433] runtime check whether the kernel really supports capabilities
4191 1.1.1.15 christos - (modified) patch by Kurt Roeckx <perlinger (a] ntp.org>
4192 1.1.1.15 christos * Clean up sntp/networking.c:sendpkt() error message. <stenn (a] ntp.org>
4193 1.1.1.15 christos * Provide more detail on unrecognized config file parser tokens. <stenn (a] ntp.org>
4194 1.1.1.15 christos * Startup log improvements. <stenn (a] ntp.org>
4195 1.1.1.15 christos * Update the copyright year.
4196 1.1.1.15 christos
4197 1.1.1.15 christos ---
4198 1.1.1.15 christos NTP 4.2.8p13 (Harlan Stenn <stenn (a] ntp.org>, 2019 Mar 07)
4199 1.1.1.15 christos
4200 1.1.1.15 christos Focus: Security, Bug fixes, enhancements.
4201 1.1.1.15 christos
4202 1.1.1.15 christos Severity: MEDIUM
4203 1.1.1.15 christos
4204 1.1.1.15 christos This release fixes a bug that allows an attacker with access to an
4205 1.1.1.15 christos explicitly trusted source to send a crafted malicious mode 6 (ntpq)
4206 1.1.1.15 christos packet that can trigger a NULL pointer dereference, crashing ntpd.
4207 1.1.1.15 christos It also provides 17 other bugfixes and 1 other improvement:
4208 1.1.1.15 christos
4209 1.1.1.15 christos * [Sec 3565] Crafted null dereference attack in authenticated
4210 1.1.1.15 christos mode 6 packet <perlinger (a] ntp.org>
4211 1.1.1.15 christos - reported by Magnus Stubman
4212 1.1.1.15 christos * [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger (a] ntp.org>
4213 1.1.1.15 christos - applied patch by Ian Lepore
4214 1.1.1.15 christos * [Bug 3558] Crash and integer size bug <perlinger (a] ntp.org>
4215 1.1.1.15 christos - isolate and fix linux/windows specific code issue
4216 1.1.1.15 christos * [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger (a] ntp.org>
4217 1.1.1.15 christos - provide better function for incremental string formatting
4218 1.1.1.15 christos * [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger (a] ntp.org>
4219 1.1.1.15 christos - applied patch by Gerry Garvey
4220 1.1.1.15 christos * [Bug 3554] config revoke stores incorrect value <perlinger (a] ntp.org>
4221 1.1.1.15 christos - original finding by Gerry Garvey, additional cleanup needed
4222 1.1.1.15 christos * [Bug 3549] Spurious initgroups() error message <perlinger (a] ntp.org>
4223 1.1.1.15 christos - patch by Christous Zoulas
4224 1.1.1.15 christos * [Bug 3548] Signature not verified on windows system <perlinger (a] ntp.org>
4225 1.1.1.15 christos - finding by Chen Jiabin, plus another one by me
4226 1.1.1.15 christos * [Bug 3541] patch to fix STA_NANO struct timex units <perlinger (a] ntp.org>
4227 1.1.1.15 christos - applied patch by Maciej Szmigiero
4228 1.1.1.15 christos * [Bug 3540] Cannot set minsane to 0 anymore <perlinger (a] ntp.org>
4229 1.1.1.15 christos - applied patch by Andre Charbonneau
4230 1.1.1.15 christos * [Bug 3539] work_fork build fails when droproot is not supported <perlinger (a] ntp.org>
4231 1.1.1.15 christos - applied patch by Baruch Siach
4232 1.1.1.15 christos * [Bug 3538] Build fails for no-MMU targets <perlinger (a] ntp.org>
4233 1.1.1.15 christos - applied patch by Baruch Siach
4234 1.1.1.15 christos * [Bug 3535] libparse won't handle GPS week rollover <perlinger (a] ntp.org>
4235 1.1.1.15 christos - refactored handling of GPS era based on 'tos basedate' for
4236 1.1.1.15 christos parse (TSIP) and JUPITER clocks
4237 1.1.1.15 christos * [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger (a] ntp.org>
4238 1.1.1.15 christos - patch by Daniel J. Luke; this does not fix a potential linker
4239 1.1.1.15 christos regression issue on MacOS.
4240 1.1.1.15 christos * [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
4241 1.1.1.15 christos anomaly <perlinger (a] ntp.org>, reported by GGarvey.
4242 1.1.1.15 christos - --enable-bug3527-fix support by HStenn
4243 1.1.1.15 christos * [Bug 3526] Incorrect poll interval in packet <perlinger (a] ntp.org>
4244 1.1.1.15 christos - applied patch by Gerry Garvey
4245 1.1.1.15 christos * [Bug 3471] Check for openssl/[ch]mac.h. <perlinger (a] ntp.org>
4246 1.1.1.15 christos - added missing check, reported by Reinhard Max <perlinger (a] ntp.org>
4247 1.1.1.15 christos * [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
4248 1.1.1.15 christos - this is a variant of [bug 3558] and should be fixed with it
4249 1.1.1.15 christos * Implement 'configure --disable-signalled-io'
4250 1.1.1.15 christos
4251 1.1.1.12 christos --
4252 1.1.1.14 christos NTP 4.2.8p12 (Harlan Stenn <stenn (a] ntp.org>, 2018/14/09)
4253 1.1.1.13 christos
4254 1.1.1.13 christos Focus: Security, Bug fixes, enhancements.
4255 1.1.1.13 christos
4256 1.1.1.13 christos Severity: MEDIUM
4257 1.1.1.13 christos
4258 1.1.1.14 christos This release fixes a "hole" in the noepeer capability introduced to ntpd
4259 1.1.1.14 christos in ntp-4.2.8p11, and a buffer overflow in the openhost() function used by
4260 1.1.1.14 christos ntpq and ntpdc. It also provides 26 other bugfixes, and 4 other improvements:
4261 1.1.1.14 christos
4262 1.1.1.14 christos * [Sec 3505] Buffer overflow in the openhost() call of ntpq and ntpdc.
4263 1.1.1.14 christos
4264 1.1.1.14 christos * [Sec 3012] Fix a hole in the new "noepeer" processing.
4265 1.1.1.14 christos
4266 1.1.1.14 christos * Bug Fixes:
4267 1.1.1.14 christos [Bug 3521] Fix a logic bug in the INVALIDNAK checks. <stenn (a] ntp.org>
4268 1.1.1.14 christos [Bug 3509] Add support for running as non-root on FreeBSD, Darwin,
4269 1.1.1.14 christos other TrustedBSD platforms
4270 1.1.1.14 christos - applied patch by Ian Lepore <perlinger (a] ntp.org>
4271 1.1.1.14 christos [Bug 3506] Service Control Manager interacts poorly with NTPD <perlinger (a] ntp.org>
4272 1.1.1.14 christos - changed interaction with SCM to signal pending startup
4273 1.1.1.14 christos [Bug 3486] Buffer overflow in ntpq/ntpq.c:tstflags() <perlinger (a] ntp.org>
4274 1.1.1.14 christos - applied patch by Gerry Garvey
4275 1.1.1.14 christos [Bug 3485] Undefined sockaddr used in error messages in ntp_config.c <perlinger (a] ntp.org>
4276 1.1.1.14 christos - applied patch by Gerry Garvey
4277 1.1.1.14 christos [Bug 3484] ntpq response from ntpd is incorrect when REFID is null <perlinger (a] ntp.org>
4278 1.1.1.14 christos - rework of ntpq 'nextvar()' key/value parsing
4279 1.1.1.14 christos [Bug 3482] Fixes for compilation warnings (ntp_io.c & ntpq-subs.c) <perlinger (a] ntp.org>
4280 1.1.1.14 christos - applied patch by Gerry Garvey (with mods)
4281 1.1.1.14 christos [Bug 3480] Refclock sample filter not cleared on clock STEP <perlinger (a] ntp.org>
4282 1.1.1.14 christos - applied patch by Gerry Garvey
4283 1.1.1.14 christos [Bug 3479] ctl_putrefid() allows unsafe characters through to ntpq <perlinger (a] ntp.org>
4284 1.1.1.14 christos - applied patch by Gerry Garvey (with mods)
4285 1.1.1.14 christos [Bug 3476]ctl_putstr() sends empty unquoted string [...] <perlinger (a] ntp.org>
4286 1.1.1.14 christos - applied patch by Gerry Garvey (with mods); not sure if that's bug or feature, though
4287 1.1.1.14 christos [Bug 3475] modify prettydate() to suppress output of zero time <perlinger (a] ntp.org>
4288 1.1.1.14 christos - applied patch by Gerry Garvey
4289 1.1.1.14 christos [Bug 3474] Missing pmode in mode7 peer info response <perlinger (a] ntp.org>
4290 1.1.1.14 christos - applied patch by Gerry Garvey
4291 1.1.1.14 christos [Bug 3471] Check for openssl/[ch]mac.h. HStenn.
4292 1.1.1.14 christos - add #define ENABLE_CMAC support in configure. HStenn.
4293 1.1.1.14 christos [Bug 3470] ntpd4.2.8p11 fails to compile without OpenSSL <perlinger (a] ntp.org>
4294 1.1.1.14 christos [Bug 3469] Incomplete string compare [...] in is_refclk_addr <perlinger (a] ntp.org>
4295 1.1.1.14 christos - patch by Stephen Friedl
4296 1.1.1.14 christos [Bug 3467] Potential memory fault in ntpq [...] <perlinger (a] ntp.org>
4297 1.1.1.14 christos - fixed IO redirection and CTRL-C handling in ntq and ntpdc
4298 1.1.1.14 christos [Bug 3465] Default TTL values cannot be used <perlinger (a] ntp.org>
4299 1.1.1.14 christos [Bug 3461] refclock_shm.c: clear error status on clock recovery <perlinger (a] ntp.org>
4300 1.1.1.14 christos - initial patch by Hal Murray; also fixed refclock_report() trouble
4301 1.1.1.14 christos [Bug 3460] Fix typo in ntpq.texi, reported by Kenyon Ralph. <stenn (a] ntp.org>
4302 1.1.1.14 christos [Bug 3456] Use uintptr_t rather than size_t to store an integer in a pointer
4303 1.1.1.14 christos - According to Brooks Davis, there was only one location <perlinger (a] ntp.org>
4304 1.1.1.14 christos [Bug 3449] ntpq - display "loop" instead of refid [...] <perlinger (a] ntp.org>
4305 1.1.1.14 christos - applied patch by Gerry Garvey
4306 1.1.1.14 christos [Bug 3445] Symmetric peer won't sync on startup <perlinger (a] ntp.org>
4307 1.1.1.14 christos - applied patch by Gerry Garvey
4308 1.1.1.14 christos [Bug 3442] Fixes for ntpdate as suggested by Gerry Garvey,
4309 1.1.1.14 christos with modifications
4310 1.1.1.14 christos New macro REFID_ISTEXT() which is also used in ntpd/ntp_control.c.
4311 1.1.1.14 christos [Bug 3434] ntpd clears STA_UNSYNC on start <perlinger (a] ntp.org>
4312 1.1.1.14 christos - applied patch by Miroslav Lichvar
4313 1.1.1.14 christos [Bug 3426] ntpdate.html -t default is 2 seconds. Leonid Evdokimov.
4314 1.1.1.14 christos [Bug 3121] Drop root privileges for the forked DNS worker <perlinger (a] ntp.org>
4315 1.1.1.14 christos - integrated patch by Reinhard Max
4316 1.1.1.14 christos [Bug 2821] minor build issues <perlinger (a] ntp.org>
4317 1.1.1.14 christos - applied patches by Christos Zoulas, including real bug fixes
4318 1.1.1.14 christos html/authopt.html: cleanup, from <stenn (a] ntp.org>
4319 1.1.1.14 christos ntpd/ntpd.c: DROPROOT cleanup. <stenn (a] ntp.org>
4320 1.1.1.14 christos Symmetric key range is 1-65535. Update docs. <stenn (a] ntp.org>
4321 1.1.1.14 christos
4322 1.1.1.14 christos --
4323 1.1.1.14 christos NTP 4.2.8p11 (Harlan Stenn <stenn (a] ntp.org>, 2018/02/27)
4324 1.1.1.14 christos
4325 1.1.1.14 christos Focus: Security, Bug fixes, enhancements.
4326 1.1.1.14 christos
4327 1.1.1.14 christos Severity: MEDIUM
4328 1.1.1.14 christos
4329 1.1.1.13 christos This release fixes 2 low-/medium-, 1 informational/medum-, and 2 low-severity
4330 1.1.1.13 christos vulnerabilities in ntpd, one medium-severity vulernability in ntpq, and
4331 1.1.1.13 christos provides 65 other non-security fixes and improvements:
4332 1.1.1.13 christos
4333 1.1.1.13 christos * NTP Bug 3454: Unauthenticated packet can reset authenticated interleaved
4334 1.1.1.13 christos association (LOW/MED)
4335 1.1.1.13 christos Date Resolved: Stable (4.2.8p11) 27 Feb 2018
4336 1.1.1.13 christos References: Sec 3454 / CVE-2018-7185 / VU#961909
4337 1.1.1.13 christos Affects: ntp-4.2.6, up to but not including ntp-4.2.8p11.
4338 1.1.1.13 christos CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:N/I:N/A:P) This could score between
4339 1.1.1.13 christos 2.9 and 6.8.
4340 1.1.1.13 christos CVSS3: LOW 3.1 CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L This could
4341 1.1.1.13 christos score between 2.6 and 3.1
4342 1.1.1.13 christos Summary:
4343 1.1.1.13 christos The NTP Protocol allows for both non-authenticated and
4344 1.1.1.13 christos authenticated associations, in client/server, symmetric (peer),
4345 1.1.1.13 christos and several broadcast modes. In addition to the basic NTP
4346 1.1.1.13 christos operational modes, symmetric mode and broadcast servers can
4347 1.1.1.13 christos support an interleaved mode of operation. In ntp-4.2.8p4 a bug
4348 1.1.1.13 christos was inadvertently introduced into the protocol engine that
4349 1.1.1.13 christos allows a non-authenticated zero-origin (reset) packet to reset
4350 1.1.1.13 christos an authenticated interleaved peer association. If an attacker
4351 1.1.1.13 christos can send a packet with a zero-origin timestamp and the source
4352 1.1.1.13 christos IP address of the "other side" of an interleaved association,
4353 1.1.1.13 christos the 'victim' ntpd will reset its association. The attacker must
4354 1.1.1.13 christos continue sending these packets in order to maintain the
4355 1.1.1.13 christos disruption of the association. In ntp-4.0.0 thru ntp-4.2.8p6,
4356 1.1.1.13 christos interleave mode could be entered dynamically. As of ntp-4.2.8p7,
4357 1.1.1.13 christos interleaved mode must be explicitly configured/enabled.
4358 1.1.1.13 christos Mitigation:
4359 1.1.1.13 christos Implement BCP-38.
4360 1.1.1.13 christos Upgrade to 4.2.8p11, or later, from the NTP Project Download Page
4361 1.1.1.13 christos or the NTP Public Services Project Download Page.
4362 1.1.1.13 christos If you are unable to upgrade to 4.2.8p11 or later and have
4363 1.1.1.13 christos 'peer HOST xleave' lines in your ntp.conf file, remove the
4364 1.1.1.13 christos 'xleave' option.
4365 1.1.1.13 christos Have enough sources of time.
4366 1.1.1.13 christos Properly monitor your ntpd instances.
4367 1.1.1.13 christos If ntpd stops running, auto-restart it without -g .
4368 1.1.1.13 christos Credit:
4369 1.1.1.13 christos This weakness was discovered by Miroslav Lichvar of Red Hat.
4370 1.1.1.13 christos
4371 1.1.1.13 christos * NTP Bug 3453: Interleaved symmetric mode cannot recover from bad
4372 1.1.1.13 christos state (LOW/MED)
4373 1.1.1.13 christos Date Resolved: Stable (4.2.8p11) 27 Feb 2018
4374 1.1.1.13 christos References: Sec 3453 / CVE-2018-7184 / VU#961909
4375 1.1.1.13 christos Affects: ntpd in ntp-4.2.8p4, up to but not including ntp-4.2.8p11.
4376 1.1.1.13 christos CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:P/I:N/A:N)
4377 1.1.1.13 christos Could score between 2.9 and 6.8.
4378 1.1.1.13 christos CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
4379 1.1.1.13 christos Could score between 2.6 and 6.0.
4380 1.1.1.13 christos Summary:
4381 1.1.1.13 christos The fix for NtpBug2952 was incomplete, and while it fixed one
4382 1.1.1.13 christos problem it created another. Specifically, it drops bad packets
4383 1.1.1.13 christos before updating the "received" timestamp. This means a
4384 1.1.1.13 christos third-party can inject a packet with a zero-origin timestamp,
4385 1.1.1.13 christos meaning the sender wants to reset the association, and the
4386 1.1.1.13 christos transmit timestamp in this bogus packet will be saved as the
4387 1.1.1.13 christos most recent "received" timestamp. The real remote peer does
4388 1.1.1.13 christos not know this value and this will disrupt the association until
4389 1.1.1.13 christos the association resets.
4390 1.1.1.13 christos Mitigation:
4391 1.1.1.13 christos Implement BCP-38.
4392 1.1.1.13 christos Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
4393 1.1.1.13 christos or the NTP Public Services Project Download Page.
4394 1.1.1.13 christos Use authentication with 'peer' mode.
4395 1.1.1.13 christos Have enough sources of time.
4396 1.1.1.13 christos Properly monitor your ntpd instances.
4397 1.1.1.13 christos If ntpd stops running, auto-restart it without -g .
4398 1.1.1.13 christos Credit:
4399 1.1.1.13 christos This weakness was discovered by Miroslav Lichvar of Red Hat.
4400 1.1.1.13 christos
4401 1.1.1.13 christos * NTP Bug 3415: Provide a way to prevent authenticated symmetric passive
4402 1.1.1.13 christos peering (LOW)
4403 1.1.1.13 christos Date Resolved: Stable (4.2.8p11) 27 Feb 2018
4404 1.1.1.13 christos References: Sec 3415 / CVE-2018-7170 / VU#961909
4405 1.1.1.13 christos Sec 3012 / CVE-2016-1549 / VU#718152
4406 1.1.1.13 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
4407 1.1.1.13 christos 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
4408 1.1.1.13 christos CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
4409 1.1.1.13 christos CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N
4410 1.1.1.13 christos Summary:
4411 1.1.1.13 christos ntpd can be vulnerable to Sybil attacks. If a system is set up to
4412 1.1.1.13 christos use a trustedkey and if one is not using the feature introduced in
4413 1.1.1.13 christos ntp-4.2.8p6 allowing an optional 4th field in the ntp.keys file to
4414 1.1.1.13 christos specify which IPs can serve time, a malicious authenticated peer
4415 1.1.1.13 christos -- i.e. one where the attacker knows the private symmetric key --
4416 1.1.1.13 christos can create arbitrarily-many ephemeral associations in order to win
4417 1.1.1.13 christos the clock selection of ntpd and modify a victim's clock. Three
4418 1.1.1.13 christos additional protections are offered in ntp-4.2.8p11. One is the
4419 1.1.1.13 christos new 'noepeer' directive, which disables symmetric passive
4420 1.1.1.13 christos ephemeral peering. Another is the new 'ippeerlimit' directive,
4421 1.1.1.13 christos which limits the number of peers that can be created from an IP.
4422 1.1.1.13 christos The third extends the functionality of the 4th field in the
4423 1.1.1.13 christos ntp.keys file to include specifying a subnet range.
4424 1.1.1.13 christos Mitigation:
4425 1.1.1.13 christos Implement BCP-38.
4426 1.1.1.13 christos Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
4427 1.1.1.13 christos or the NTP Public Services Project Download Page.
4428 1.1.1.13 christos Use the 'noepeer' directive to prohibit symmetric passive
4429 1.1.1.13 christos ephemeral associations.
4430 1.1.1.13 christos Use the 'ippeerlimit' directive to limit the number of peers
4431 1.1.1.13 christos that can be created from an IP.
4432 1.1.1.13 christos Use the 4th argument in the ntp.keys file to limit the IPs and
4433 1.1.1.13 christos subnets that can be time servers.
4434 1.1.1.13 christos Have enough sources of time.
4435 1.1.1.13 christos Properly monitor your ntpd instances.
4436 1.1.1.13 christos If ntpd stops running, auto-restart it without -g .
4437 1.1.1.13 christos Credit:
4438 1.1.1.13 christos This weakness was reported as Bug 3012 by Matthew Van Gundy of
4439 1.1.1.13 christos Cisco ASIG, and separately by Stefan Moser as Bug 3415.
4440 1.1.1.13 christos
4441 1.1.1.13 christos * ntpq Bug 3414: decodearr() can write beyond its 'buf' limits (Medium)
4442 1.1.1.13 christos Date Resolved: 27 Feb 2018
4443 1.1.1.13 christos References: Sec 3414 / CVE-2018-7183 / VU#961909
4444 1.1.1.13 christos Affects: ntpq in ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
4445 1.1.1.13 christos CVSS2: MED 6.8 (AV:N/AC:M/Au:N/C:P/I:P/A:P)
4446 1.1.1.13 christos CVSS3: MED 5.0 CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L
4447 1.1.1.13 christos Summary:
4448 1.1.1.13 christos ntpq is a monitoring and control program for ntpd. decodearr()
4449 1.1.1.13 christos is an internal function of ntpq that is used to -- wait for it --
4450 1.1.1.13 christos decode an array in a response string when formatted data is being
4451 1.1.1.13 christos displayed. This is a problem in affected versions of ntpq if a
4452 1.1.1.13 christos maliciously-altered ntpd returns an array result that will trip this
4453 1.1.1.13 christos bug, or if a bad actor is able to read an ntpq request on its way to
4454 1.1.1.13 christos a remote ntpd server and forge and send a response before the remote
4455 1.1.1.13 christos ntpd sends its response. It's potentially possible that the
4456 1.1.1.13 christos malicious data could become injectable/executable code.
4457 1.1.1.13 christos Mitigation:
4458 1.1.1.13 christos Implement BCP-38.
4459 1.1.1.13 christos Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
4460 1.1.1.13 christos or the NTP Public Services Project Download Page.
4461 1.1.1.13 christos Credit:
4462 1.1.1.13 christos This weakness was discovered by Michael Macnair of Thales e-Security.
4463 1.1.1.13 christos
4464 1.1.1.13 christos * NTP Bug 3412: ctl_getitem(): buffer read overrun leads to undefined
4465 1.1.1.13 christos behavior and information leak (Info/Medium)
4466 1.1.1.13 christos Date Resolved: 27 Feb 2018
4467 1.1.1.13 christos References: Sec 3412 / CVE-2018-7182 / VU#961909
4468 1.1.1.13 christos Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
4469 1.1.1.13 christos CVSS2: INFO 0.0 - MED 5.0 (AV:N/AC:L/Au:N/C:P/I:N/A:N) 0.0 if C:N
4470 1.1.1.13 christos CVSS3: NONE 0.0 - MED 5.3 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4471 1.1.1.13 christos 0.0 if C:N
4472 1.1.1.13 christos Summary:
4473 1.1.1.13 christos ctl_getitem() is used by ntpd to process incoming mode 6 packets.
4474 1.1.1.13 christos A malicious mode 6 packet can be sent to an ntpd instance, and
4475 1.1.1.13 christos if the ntpd instance is from 4.2.8p6 thru 4.2.8p10, that will
4476 1.1.1.13 christos cause ctl_getitem() to read past the end of its buffer.
4477 1.1.1.13 christos Mitigation:
4478 1.1.1.13 christos Implement BCP-38.
4479 1.1.1.13 christos Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
4480 1.1.1.13 christos or the NTP Public Services Project Download Page.
4481 1.1.1.13 christos Have enough sources of time.
4482 1.1.1.13 christos Properly monitor your ntpd instances.
4483 1.1.1.13 christos If ntpd stops running, auto-restart it without -g .
4484 1.1.1.13 christos Credit:
4485 1.1.1.13 christos This weakness was discovered by Yihan Lian of Qihoo 360.
4486 1.1.1.13 christos
4487 1.1.1.13 christos * NTP Bug 3012: Sybil vulnerability: ephemeral association attack
4488 1.1.1.13 christos Also see Bug 3415, above.
4489 1.1.1.13 christos Date Mitigated: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
4490 1.1.1.13 christos Date Resolved: Stable (4.2.8p11) 27 Feb 2018
4491 1.1.1.13 christos References: Sec 3012 / CVE-2016-1549 / VU#718152
4492 1.1.1.13 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
4493 1.1.1.13 christos 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
4494 1.1.1.13 christos CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
4495 1.1.1.13 christos CVSS3: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
4496 1.1.1.13 christos Summary:
4497 1.1.1.13 christos ntpd can be vulnerable to Sybil attacks. If a system is set up
4498 1.1.1.13 christos to use a trustedkey and if one is not using the feature
4499 1.1.1.13 christos introduced in ntp-4.2.8p6 allowing an optional 4th field in the
4500 1.1.1.13 christos ntp.keys file to specify which IPs can serve time, a malicious
4501 1.1.1.13 christos authenticated peer -- i.e. one where the attacker knows the
4502 1.1.1.13 christos private symmetric key -- can create arbitrarily-many ephemeral
4503 1.1.1.13 christos associations in order to win the clock selection of ntpd and
4504 1.1.1.13 christos modify a victim's clock. Two additional protections are
4505 1.1.1.13 christos offered in ntp-4.2.8p11. One is the 'noepeer' directive, which
4506 1.1.1.13 christos disables symmetric passive ephemeral peering. The other extends
4507 1.1.1.13 christos the functionality of the 4th field in the ntp.keys file to
4508 1.1.1.13 christos include specifying a subnet range.
4509 1.1.1.13 christos Mitigation:
4510 1.1.1.13 christos Implement BCP-38.
4511 1.1.1.13 christos Upgrade to 4.2.8p11, or later, from the NTP Project Download Page or
4512 1.1.1.13 christos the NTP Public Services Project Download Page.
4513 1.1.1.13 christos Use the 'noepeer' directive to prohibit symmetric passive
4514 1.1.1.13 christos ephemeral associations.
4515 1.1.1.13 christos Use the 'ippeerlimit' directive to limit the number of peer
4516 1.1.1.13 christos associations from an IP.
4517 1.1.1.13 christos Use the 4th argument in the ntp.keys file to limit the IPs
4518 1.1.1.13 christos and subnets that can be time servers.
4519 1.1.1.13 christos Properly monitor your ntpd instances.
4520 1.1.1.13 christos Credit:
4521 1.1.1.13 christos This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
4522 1.1.1.13 christos
4523 1.1.1.13 christos * Bug fixes:
4524 1.1.1.13 christos [Bug 3457] OpenSSL FIPS mode regression <perlinger (a] ntp.org>
4525 1.1.1.13 christos [Bug 3455] ntpd doesn't use scope id when binding multicast <perlinger (a] ntp.org>
4526 1.1.1.13 christos - applied patch by Sean Haugh
4527 1.1.1.13 christos [Bug 3452] PARSE driver prints uninitialized memory. <perlinger (a] ntp.org>
4528 1.1.1.13 christos [Bug 3450] Dubious error messages from plausibility checks in get_systime()
4529 1.1.1.13 christos - removed error log caused by rounding/slew, ensured postcondition <perlinger (a] ntp.org>
4530 1.1.1.13 christos [Bug 3447] AES-128-CMAC (fixes) <perlinger (a] ntp.org>
4531 1.1.1.13 christos - refactoring the MAC code, too
4532 1.1.1.13 christos [Bug 3441] Validate the assumption that AF_UNSPEC is 0. stenn (a] ntp.org
4533 1.1.1.13 christos [Bug 3439] When running multiple commands / hosts in ntpq... <perlinger (a] ntp.org>
4534 1.1.1.13 christos - applied patch by ggarvey
4535 1.1.1.13 christos [Bug 3438] Negative values and values > 999 days in... <perlinger (a] ntp.org>
4536 1.1.1.13 christos - applied patch by ggarvey (with minor mods)
4537 1.1.1.13 christos [Bug 3437] ntpd tries to open socket with AF_UNSPEC domain
4538 1.1.1.13 christos - applied patch (with mods) by Miroslav Lichvar <perlinger (a] ntp.org>
4539 1.1.1.13 christos [Bug 3435] anchor NTP era alignment <perlinger (a] ntp.org>
4540 1.1.1.13 christos [Bug 3433] sntp crashes when run with -a. <stenn (a] ntp.org>
4541 1.1.1.13 christos [Bug 3430] ntpq dumps core (SIGSEGV) for "keytype md2"
4542 1.1.1.13 christos - fixed several issues with hash algos in ntpd, sntp, ntpq,
4543 1.1.1.13 christos ntpdc and the test suites <perlinger (a] ntp.org>
4544 1.1.1.13 christos [Bug 3424] Trimble Thunderbolt 1024 week millenium bug <perlinger (a] ntp.org>
4545 1.1.1.13 christos - initial patch by Daniel Pouzzner
4546 1.1.1.13 christos [Bug 3423] QNX adjtime() implementation error checking is
4547 1.1.1.13 christos wrong <perlinger (a] ntp.org>
4548 1.1.1.13 christos [Bug 3417] ntpq ifstats packet counters can be negative
4549 1.1.1.13 christos made IFSTATS counter quantities unsigned <perlinger (a] ntp.org>
4550 1.1.1.13 christos [Bug 3411] problem about SIGN(6) packet handling for ntp-4.2.8p10
4551 1.1.1.13 christos - raised receive buffer size to 1200 <perlinger (a] ntp.org>
4552 1.1.1.13 christos [Bug 3408] refclock_jjy.c: Avoid a wrong report of the coverity static
4553 1.1.1.13 christos analysis tool. <abe (a] ntp.org>
4554 1.1.1.13 christos [Bug 3405] update-leap.in: general cleanup, HTTPS support. Paul McMath.
4555 1.1.1.13 christos [Bug 3404] Fix openSSL DLL usage under Windows <perlinger (a] ntp.org>
4556 1.1.1.13 christos - fix/drop assumptions on OpenSSL libs directory layout
4557 1.1.1.13 christos [Bug 3399] NTP: linker error in 4.2.8p10 during Linux cross-compilation
4558 1.1.1.13 christos - initial patch by timeflies (a] mail2tor.com <perlinger (a] ntp.org>
4559 1.1.1.13 christos [Bug 3398] tests fail with core dump <perlinger (a] ntp.org>
4560 1.1.1.13 christos - patch contributed by Alexander Bluhm
4561 1.1.1.13 christos [Bug 3397] ctl_putstr() asserts that data fits in its buffer
4562 1.1.1.13 christos rework of formatting & data transfer stuff in 'ntp_control.c'
4563 1.1.1.13 christos avoids unecessary buffers and size limitations. <perlinger (a] ntp.org>
4564 1.1.1.13 christos [Bug 3394] Leap second deletion does not work on ntpd clients
4565 1.1.1.13 christos - fixed handling of dynamic deletion w/o leap file <perlinger (a] ntp.org>
4566 1.1.1.13 christos [Bug 3391] ntpd segfaults on startup due to small warmup thread stack size
4567 1.1.1.13 christos - increased mimimum stack size to 32kB <perlinger (a] ntp.org>
4568 1.1.1.13 christos [Bug 3367] Faulty LinuxPPS NMEA clock support in 4.2.8 <perlinger (a] ntp.org>
4569 1.1.1.13 christos - reverted handling of PPS kernel consumer to 4.2.6 behavior
4570 1.1.1.13 christos [Bug 3365] Updates driver40(-ja).html and miscopt.html <abe (a] ntp.org>
4571 1.1.1.13 christos [Bug 3358] Spurious KoD log messages in .INIT. phase. HStenn.
4572 1.1.1.13 christos [Bug 3016] wrong error position reported for bad ":config pool"
4573 1.1.1.13 christos - fixed location counter & ntpq output <perlinger (a] ntp.org>
4574 1.1.1.13 christos [Bug 2900] libntp build order problem. HStenn.
4575 1.1.1.13 christos [Bug 2878] Tests are cluttering up syslog <perlinger (a] ntp.org>
4576 1.1.1.13 christos [Bug 2737] Wrong phone number listed for USNO. ntp-bugs (a] bodosom.net,
4577 1.1.1.13 christos perlinger (a] ntp.org
4578 1.1.1.13 christos [Bug 2557] Fix Thunderbolt init. ntp-bugs (a] bodosom.net, perlinger@ntp.
4579 1.1.1.13 christos [Bug 948] Trustedkey config directive leaks memory. <perlinger (a] ntp.org>
4580 1.1.1.13 christos Use strlcpy() to copy strings, not memcpy(). HStenn.
4581 1.1.1.13 christos Typos. HStenn.
4582 1.1.1.13 christos test_ntp_scanner_LDADD needs ntpd/ntp_io.o. HStenn.
4583 1.1.1.13 christos refclock_jjy.c: Add missing "%s" to an msyslog() call. HStenn.
4584 1.1.1.13 christos Build ntpq and libntpq.a with NTP_HARD_*FLAGS. perlinger (a] ntp.org
4585 1.1.1.13 christos Fix trivial warnings from 'make check'. perlinger (a] ntp.org
4586 1.1.1.13 christos Fix bug in the override portion of the compiler hardening macro. HStenn.
4587 1.1.1.13 christos record_raw_stats(): Log entire packet. Log writes. HStenn.
4588 1.1.1.13 christos AES-128-CMAC support. BInglis, HStenn, JPerlinger.
4589 1.1.1.13 christos sntp: tweak key file logging. HStenn.
4590 1.1.1.13 christos sntp: pkt_output(): Improve debug output. HStenn.
4591 1.1.1.13 christos update-leap: updates from Paul McMath.
4592 1.1.1.13 christos When using pkg-config, report --modversion. HStenn.
4593 1.1.1.13 christos Clean up libevent configure checks. HStenn.
4594 1.1.1.13 christos sntp: show the IP of who sent us a crypto-NAK. HStenn.
4595 1.1.1.13 christos Allow .../N to specify subnet bits for IPs in ntp.keys. HStenn, JPerlinger.
4596 1.1.1.13 christos authistrustedip() - use it in more places. HStenn, JPerlinger.
4597 1.1.1.13 christos New sysstats: sys_lamport, sys_tsrounding. HStenn.
4598 1.1.1.13 christos Update ntp.keys .../N documentation. HStenn.
4599 1.1.1.13 christos Distribute testconf.yml. HStenn.
4600 1.1.1.13 christos Add DPRINTF(2,...) lines to receive() for packet drops. HStenn.
4601 1.1.1.13 christos Rename the configuration flag fifo variables. HStenn.
4602 1.1.1.13 christos Improve saveconfig output. HStenn.
4603 1.1.1.13 christos Decode restrict flags on receive() debug output. HStenn.
4604 1.1.1.13 christos Decode interface flags on receive() debug output. HStenn.
4605 1.1.1.13 christos Warn the user if deprecated "driftfile name WanderThreshold" is used. HStenn.
4606 1.1.1.13 christos Update the documentation in ntp.conf.def . HStenn.
4607 1.1.1.13 christos restrictions() must return restrict flags and ippeerlimit. HStenn.
4608 1.1.1.13 christos Update ntpq peer documentation to describe the 'p' type. HStenn.
4609 1.1.1.13 christos Rename restrict 'flags' to 'rflags. Use an enum for the values. HStenn.
4610 1.1.1.13 christos Provide dump_restricts() for debugging. HStenn.
4611 1.1.1.13 christos Use consistent 4th arg type for [gs]etsockopt. JPerlinger.
4612 1.1.1.13 christos
4613 1.1.1.13 christos * Other items:
4614 1.1.1.13 christos
4615 1.1.1.13 christos * update-leap needs the following perl modules:
4616 1.1.1.13 christos Net::SSLeay
4617 1.1.1.13 christos IO::Socket::SSL
4618 1.1.1.13 christos
4619 1.1.1.13 christos * New sysstats variables: sys_lamport, sys_tsrounding
4620 1.1.1.13 christos See them with: ntpq -c "rv 0 ss_lamport,ss_tsrounding"
4621 1.1.1.13 christos sys_lamport counts the number of observed Lamport violations, while
4622 1.1.1.13 christos sys_tsrounding counts observed timestamp rounding events.
4623 1.1.1.13 christos
4624 1.1.1.13 christos * New ntp.conf items:
4625 1.1.1.13 christos
4626 1.1.1.13 christos - restrict ... noepeer
4627 1.1.1.13 christos - restrict ... ippeerlimit N
4628 1.1.1.13 christos
4629 1.1.1.13 christos The 'noepeer' directive will disallow all ephemeral/passive peer
4630 1.1.1.13 christos requests.
4631 1.1.1.13 christos
4632 1.1.1.13 christos The 'ippeerlimit' directive limits the number of time associations
4633 1.1.1.13 christos for each IP in the designated set of addresses. This limit does not
4634 1.1.1.13 christos apply to explicitly-configured associations. A value of -1, the current
4635 1.1.1.13 christos default, means an unlimited number of associations may connect from a
4636 1.1.1.13 christos single IP. 0 means "none", etc. Ordinarily the only way multiple
4637 1.1.1.13 christos associations would come from the same IP would be if the remote side
4638 1.1.1.13 christos was using a proxy. But a trusted machine might become compromised,
4639 1.1.1.13 christos in which case an attacker might spin up multiple authenticated sessions
4640 1.1.1.13 christos from different ports. This directive should be helpful in this case.
4641 1.1.1.13 christos
4642 1.1.1.13 christos * New ntp.keys feature: Each IP in the optional list of IPs in the 4th
4643 1.1.1.13 christos field may contain a /subnetbits specification, which identifies the
4644 1.1.1.13 christos scope of IPs that may use this key. This IP/subnet restriction can be
4645 1.1.1.13 christos used to limit the IPs that may use the key in most all situations where
4646 1.1.1.13 christos a key is used.
4647 1.1.1.13 christos --
4648 1.1.1.12 christos NTP 4.2.8p10 (Harlan Stenn <stenn (a] ntp.org>, 2017/03/21)
4649 1.1.1.12 christos
4650 1.1.1.12 christos Focus: Security, Bug fixes, enhancements.
4651 1.1.1.12 christos
4652 1.1.1.12 christos Severity: MEDIUM
4653 1.1.1.12 christos
4654 1.1.1.12 christos This release fixes 5 medium-, 6 low-, and 4 informational-severity
4655 1.1.1.12 christos vulnerabilities, and provides 15 other non-security fixes and improvements:
4656 1.1.1.12 christos
4657 1.1.1.12 christos * NTP-01-016 NTP: Denial of Service via Malformed Config (Medium)
4658 1.1.1.12 christos Date Resolved: 21 Mar 2017
4659 1.1.1.12 christos References: Sec 3389 / CVE-2017-6464 / VU#325339
4660 1.1.1.12 christos Affects: All versions of NTP-4, up to but not including ntp-4.2.8p10, and
4661 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4662 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
4663 1.1.1.12 christos CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4664 1.1.1.12 christos Summary:
4665 1.1.1.12 christos A vulnerability found in the NTP server makes it possible for an
4666 1.1.1.12 christos authenticated remote user to crash ntpd via a malformed mode
4667 1.1.1.12 christos configuration directive.
4668 1.1.1.12 christos Mitigation:
4669 1.1.1.12 christos Implement BCP-38.
4670 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
4671 1.1.1.12 christos the NTP Public Services Project Download Page
4672 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4673 1.1.1.12 christos ntpd (without -g) if it stops running.
4674 1.1.1.12 christos Credit:
4675 1.1.1.12 christos This weakness was discovered by Cure53.
4676 1.1.1.12 christos
4677 1.1.1.12 christos * NTP-01-014 NTP: Buffer Overflow in DPTS Clock (Low)
4678 1.1.1.12 christos Date Resolved: 21 Mar 2017
4679 1.1.1.12 christos References: Sec 3388 / CVE-2017-6462 / VU#325339
4680 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not including ntp-4.3.94.
4681 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
4682 1.1.1.12 christos CVSS3: Low 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
4683 1.1.1.12 christos Summary:
4684 1.1.1.12 christos There is a potential for a buffer overflow in the legacy Datum
4685 1.1.1.12 christos Programmable Time Server refclock driver. Here the packets are
4686 1.1.1.12 christos processed from the /dev/datum device and handled in
4687 1.1.1.12 christos datum_pts_receive(). Since an attacker would be required to
4688 1.1.1.12 christos somehow control a malicious /dev/datum device, this does not
4689 1.1.1.12 christos appear to be a practical attack and renders this issue "Low" in
4690 1.1.1.12 christos terms of severity.
4691 1.1.1.12 christos Mitigation:
4692 1.1.1.12 christos If you have a Datum reference clock installed and think somebody
4693 1.1.1.12 christos may maliciously change the device, upgrade to 4.2.8p10, or
4694 1.1.1.12 christos later, from the NTP Project Download Page or the NTP Public
4695 1.1.1.12 christos Services Project Download Page
4696 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4697 1.1.1.12 christos ntpd (without -g) if it stops running.
4698 1.1.1.12 christos Credit:
4699 1.1.1.12 christos This weakness was discovered by Cure53.
4700 1.1.1.12 christos
4701 1.1.1.12 christos * NTP-01-012 NTP: Authenticated DoS via Malicious Config Option (Medium)
4702 1.1.1.12 christos Date Resolved: 21 Mar 2017
4703 1.1.1.12 christos References: Sec 3387 / CVE-2017-6463 / VU#325339
4704 1.1.1.12 christos Affects: All versions of ntp, up to but not including ntp-4.2.8p10, and
4705 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4706 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
4707 1.1.1.12 christos CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4708 1.1.1.12 christos Summary:
4709 1.1.1.12 christos A vulnerability found in the NTP server allows an authenticated
4710 1.1.1.12 christos remote attacker to crash the daemon by sending an invalid setting
4711 1.1.1.12 christos via the :config directive. The unpeer option expects a number or
4712 1.1.1.12 christos an address as an argument. In case the value is "0", a
4713 1.1.1.12 christos segmentation fault occurs.
4714 1.1.1.12 christos Mitigation:
4715 1.1.1.12 christos Implement BCP-38.
4716 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4717 1.1.1.12 christos or the NTP Public Services Project Download Page
4718 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4719 1.1.1.12 christos ntpd (without -g) if it stops running.
4720 1.1.1.12 christos Credit:
4721 1.1.1.12 christos This weakness was discovered by Cure53.
4722 1.1.1.12 christos
4723 1.1.1.12 christos * NTP-01-011 NTP: ntpq_stripquotes() returns incorrect value (Informational)
4724 1.1.1.12 christos Date Resolved: 21 Mar 2017
4725 1.1.1.12 christos References: Sec 3386
4726 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
4727 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4728 1.1.1.12 christos CVSS2: None 0.0 (AV:N/AC:H/Au:N/C:N/I:N/A:N)
4729 1.1.1.12 christos CVSS3: None 0.0 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:N
4730 1.1.1.12 christos Summary:
4731 1.1.1.12 christos The NTP Mode 6 monitoring and control client, ntpq, uses the
4732 1.1.1.12 christos function ntpq_stripquotes() to remove quotes and escape characters
4733 1.1.1.12 christos from a given string. According to the documentation, the function
4734 1.1.1.12 christos is supposed to return the number of copied bytes but due to
4735 1.1.1.12 christos incorrect pointer usage this value is always zero. Although the
4736 1.1.1.12 christos return value of this function is never used in the code, this
4737 1.1.1.12 christos flaw could lead to a vulnerability in the future. Since relying
4738 1.1.1.12 christos on wrong return values when performing memory operations is a
4739 1.1.1.12 christos dangerous practice, it is recommended to return the correct value
4740 1.1.1.12 christos in accordance with the documentation pertinent to the code.
4741 1.1.1.12 christos Mitigation:
4742 1.1.1.12 christos Implement BCP-38.
4743 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4744 1.1.1.12 christos or the NTP Public Services Project Download Page
4745 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4746 1.1.1.12 christos ntpd (without -g) if it stops running.
4747 1.1.1.12 christos Credit:
4748 1.1.1.12 christos This weakness was discovered by Cure53.
4749 1.1.1.12 christos
4750 1.1.1.12 christos * NTP-01-010 NTP: ereallocarray()/eallocarray() underused (Info)
4751 1.1.1.12 christos Date Resolved: 21 Mar 2017
4752 1.1.1.12 christos References: Sec 3385
4753 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
4754 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4755 1.1.1.12 christos Summary:
4756 1.1.1.12 christos NTP makes use of several wrappers around the standard heap memory
4757 1.1.1.12 christos allocation functions that are provided by libc. This is mainly
4758 1.1.1.12 christos done to introduce additional safety checks concentrated on
4759 1.1.1.12 christos several goals. First, they seek to ensure that memory is not
4760 1.1.1.12 christos accidentally freed, secondly they verify that a correct amount
4761 1.1.1.12 christos is always allocated and, thirdly, that allocation failures are
4762 1.1.1.12 christos correctly handled. There is an additional implementation for
4763 1.1.1.12 christos scenarios where memory for a specific amount of items of the
4764 1.1.1.12 christos same size needs to be allocated. The handling can be found in
4765 1.1.1.12 christos the oreallocarray() function for which a further number-of-elements
4766 1.1.1.12 christos parameter needs to be provided. Although no considerable threat
4767 1.1.1.12 christos was identified as tied to a lack of use of this function, it is
4768 1.1.1.12 christos recommended to correctly apply oreallocarray() as a preferred
4769 1.1.1.12 christos option across all of the locations where it is possible.
4770 1.1.1.12 christos Mitigation:
4771 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4772 1.1.1.12 christos or the NTP Public Services Project Download Page
4773 1.1.1.12 christos Credit:
4774 1.1.1.12 christos This weakness was discovered by Cure53.
4775 1.1.1.12 christos
4776 1.1.1.12 christos * NTP-01-009 NTP: Privileged execution of User Library code (WINDOWS
4777 1.1.1.12 christos PPSAPI ONLY) (Low)
4778 1.1.1.12 christos Date Resolved: 21 Mar 2017
4779 1.1.1.12 christos References: Sec 3384 / CVE-2017-6455 / VU#325339
4780 1.1.1.12 christos Affects: All Windows versions of ntp-4 that use the PPSAPI, up to but
4781 1.1.1.12 christos not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not
4782 1.1.1.12 christos including ntp-4.3.94.
4783 1.1.1.12 christos CVSS2: MED 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
4784 1.1.1.12 christos CVSS3: MED 4.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4785 1.1.1.12 christos Summary:
4786 1.1.1.12 christos The Windows NT port has the added capability to preload DLLs
4787 1.1.1.12 christos defined in the inherited global local environment variable
4788 1.1.1.12 christos PPSAPI_DLLS. The code contained within those libraries is then
4789 1.1.1.12 christos called from the NTPD service, usually running with elevated
4790 1.1.1.12 christos privileges. Depending on how securely the machine is setup and
4791 1.1.1.12 christos configured, if ntpd is configured to use the PPSAPI under Windows
4792 1.1.1.12 christos this can easily lead to a code injection.
4793 1.1.1.12 christos Mitigation:
4794 1.1.1.12 christos Implement BCP-38.
4795 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4796 1.1.1.12 christos or the NTP Public Services Project Download Page
4797 1.1.1.12 christos Credit:
4798 1.1.1.12 christos This weakness was discovered by Cure53.
4799 1.1.1.12 christos
4800 1.1.1.12 christos * NTP-01-008 NTP: Stack Buffer Overflow from Command Line (WINDOWS
4801 1.1.1.12 christos installer ONLY) (Low)
4802 1.1.1.12 christos Date Resolved: 21 Mar 2017
4803 1.1.1.12 christos References: Sec 3383 / CVE-2017-6452 / VU#325339
4804 1.1.1.12 christos Affects: WINDOWS installer ONLY: All versions of the ntp-4 Windows
4805 1.1.1.12 christos installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up
4806 1.1.1.12 christos to, but not including ntp-4.3.94.
4807 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
4808 1.1.1.12 christos CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
4809 1.1.1.12 christos Summary:
4810 1.1.1.12 christos The Windows installer for NTP calls strcat(), blindly appending
4811 1.1.1.12 christos the string passed to the stack buffer in the addSourceToRegistry()
4812 1.1.1.12 christos function. The stack buffer is 70 bytes smaller than the buffer
4813 1.1.1.12 christos in the calling main() function. Together with the initially
4814 1.1.1.12 christos copied Registry path, the combination causes a stack buffer
4815 1.1.1.12 christos overflow and effectively overwrites the stack frame. The
4816 1.1.1.12 christos passed application path is actually limited to 256 bytes by the
4817 1.1.1.12 christos operating system, but this is not sufficient to assure that the
4818 1.1.1.12 christos affected stack buffer is consistently protected against
4819 1.1.1.12 christos overflowing at all times.
4820 1.1.1.12 christos Mitigation:
4821 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4822 1.1.1.12 christos or the NTP Public Services Project Download Page
4823 1.1.1.12 christos Credit:
4824 1.1.1.12 christos This weakness was discovered by Cure53.
4825 1.1.1.12 christos
4826 1.1.1.12 christos * NTP-01-007 NTP: Data Structure terminated insufficiently (WINDOWS
4827 1.1.1.12 christos installer ONLY) (Low)
4828 1.1.1.12 christos Date Resolved: 21 Mar 2017
4829 1.1.1.12 christos References: Sec 3382 / CVE-2017-6459 / VU#325339
4830 1.1.1.12 christos Affects: WINDOWS installer ONLY: All ntp-4 versions of the Windows
4831 1.1.1.12 christos installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0
4832 1.1.1.12 christos up to, but not including ntp-4.3.94.
4833 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
4834 1.1.1.12 christos CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
4835 1.1.1.12 christos Summary:
4836 1.1.1.12 christos The Windows installer for NTP calls strcpy() with an argument
4837 1.1.1.12 christos that specifically contains multiple null bytes. strcpy() only
4838 1.1.1.12 christos copies a single terminating null character into the target
4839 1.1.1.12 christos buffer instead of copying the required double null bytes in the
4840 1.1.1.12 christos addKeysToRegistry() function. As a consequence, a garbage
4841 1.1.1.12 christos registry entry can be created. The additional arsize parameter
4842 1.1.1.12 christos is erroneously set to contain two null bytes and the following
4843 1.1.1.12 christos call to RegSetValueEx() claims to be passing in a multi-string
4844 1.1.1.12 christos value, though this may not be true.
4845 1.1.1.12 christos Mitigation:
4846 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4847 1.1.1.12 christos or the NTP Public Services Project Download Page
4848 1.1.1.12 christos Credit:
4849 1.1.1.12 christos This weakness was discovered by Cure53.
4850 1.1.1.12 christos
4851 1.1.1.12 christos * NTP-01-006 NTP: Copious amounts of Unused Code (Informational)
4852 1.1.1.12 christos References: Sec 3381
4853 1.1.1.12 christos Summary:
4854 1.1.1.12 christos The report says: Statically included external projects
4855 1.1.1.12 christos potentially introduce several problems and the issue of having
4856 1.1.1.12 christos extensive amounts of code that is "dead" in the resulting binary
4857 1.1.1.12 christos must clearly be pointed out. The unnecessary unused code may or
4858 1.1.1.12 christos may not contain bugs and, quite possibly, might be leveraged for
4859 1.1.1.12 christos code-gadget-based branch-flow redirection exploits. Analogically,
4860 1.1.1.12 christos having source trees statically included as well means a failure
4861 1.1.1.12 christos in taking advantage of the free feature for periodical updates.
4862 1.1.1.12 christos This solution is offered by the system's Package Manager. The
4863 1.1.1.12 christos three libraries identified are libisc, libevent, and libopts.
4864 1.1.1.12 christos Resolution:
4865 1.1.1.12 christos For libisc, we already only use a portion of the original library.
4866 1.1.1.12 christos We've found and fixed bugs in the original implementation (and
4867 1.1.1.12 christos offered the patches to ISC), and plan to see what has changed
4868 1.1.1.12 christos since we last upgraded the code. libisc is generally not
4869 1.1.1.12 christos installed, and when it it we usually only see the static libisc.a
4870 1.1.1.12 christos file installed. Until we know for sure that the bugs we've found
4871 1.1.1.12 christos and fixed are fixed upstream, we're better off with the copy we
4872 1.1.1.12 christos are using.
4873 1.1.1.12 christos
4874 1.1.1.12 christos Version 1 of libevent was the only production version available
4875 1.1.1.12 christos until recently, and we've been requiring version 2 for a long time.
4876 1.1.1.12 christos But if the build system has at least version 2 of libevent
4877 1.1.1.12 christos installed, we'll use the version that is installed on the system.
4878 1.1.1.12 christos Otherwise, we provide a copy of libevent that we know works.
4879 1.1.1.12 christos
4880 1.1.1.12 christos libopts is provided by GNU AutoGen, and that library and package
4881 1.1.1.12 christos undergoes frequent API version updates. The version of autogen
4882 1.1.1.12 christos used to generate the tables for the code must match the API
4883 1.1.1.12 christos version in libopts. AutoGen can be ... difficult to build and
4884 1.1.1.12 christos install, and very few developers really need it. So we have it
4885 1.1.1.12 christos on our build and development machines, and we provide the
4886 1.1.1.12 christos specific version of the libopts code in the distribution to make
4887 1.1.1.12 christos sure that the proper API version of libopts is available.
4888 1.1.1.12 christos
4889 1.1.1.12 christos As for the point about there being code in these libraries that
4890 1.1.1.12 christos NTP doesn't use, OK. But other packages used these libraries as
4891 1.1.1.12 christos well, and it is reasonable to assume that other people are paying
4892 1.1.1.12 christos attention to security and code quality issues for the overall
4893 1.1.1.12 christos libraries. It takes significant resources to analyze and
4894 1.1.1.12 christos customize these libraries to only include what we need, and to
4895 1.1.1.12 christos date we believe the cost of this effort does not justify the benefit.
4896 1.1.1.12 christos Credit:
4897 1.1.1.12 christos This issue was discovered by Cure53.
4898 1.1.1.12 christos
4899 1.1.1.12 christos * NTP-01-005 NTP: Off-by-one in Oncore GPS Receiver (Low)
4900 1.1.1.12 christos Date Resolved: 21 Mar 2017
4901 1.1.1.12 christos References: Sec 3380
4902 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
4903 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4904 1.1.1.12 christos CVSS2: None 0.0 (AV:L/AC:H/Au:N/C:N/I:N/A:N)
4905 1.1.1.12 christos CVSS3: None 0.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:N
4906 1.1.1.12 christos Summary:
4907 1.1.1.12 christos There is a fencepost error in a "recovery branch" of the code for
4908 1.1.1.12 christos the Oncore GPS receiver if the communication link to the ONCORE
4909 1.1.1.12 christos is weak / distorted and the decoding doesn't work.
4910 1.1.1.12 christos Mitigation:
4911 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
4912 1.1.1.12 christos the NTP Public Services Project Download Page
4913 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4914 1.1.1.12 christos ntpd (without -g) if it stops running.
4915 1.1.1.12 christos Credit:
4916 1.1.1.12 christos This weakness was discovered by Cure53.
4917 1.1.1.12 christos
4918 1.1.1.12 christos * NTP-01-004 NTP: Potential Overflows in ctl_put() functions (Medium)
4919 1.1.1.12 christos Date Resolved: 21 Mar 2017
4920 1.1.1.12 christos References: Sec 3379 / CVE-2017-6458 / VU#325339
4921 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
4922 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4923 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
4924 1.1.1.12 christos CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4925 1.1.1.12 christos Summary:
4926 1.1.1.12 christos ntpd makes use of different wrappers around ctl_putdata() to
4927 1.1.1.12 christos create name/value ntpq (mode 6) response strings. For example,
4928 1.1.1.12 christos ctl_putstr() is usually used to send string data (variable names
4929 1.1.1.12 christos or string data). The formatting code was missing a length check
4930 1.1.1.12 christos for variable names. If somebody explicitly created any unusually
4931 1.1.1.12 christos long variable names in ntpd (longer than 200-512 bytes, depending
4932 1.1.1.12 christos on the type of variable), then if any of these variables are
4933 1.1.1.12 christos added to the response list it would overflow a buffer.
4934 1.1.1.12 christos Mitigation:
4935 1.1.1.12 christos Implement BCP-38.
4936 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4937 1.1.1.12 christos or the NTP Public Services Project Download Page
4938 1.1.1.12 christos If you don't want to upgrade, then don't setvar variable names
4939 1.1.1.12 christos longer than 200-512 bytes in your ntp.conf file.
4940 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4941 1.1.1.12 christos ntpd (without -g) if it stops running.
4942 1.1.1.12 christos Credit:
4943 1.1.1.12 christos This weakness was discovered by Cure53.
4944 1.1.1.12 christos
4945 1.1.1.12 christos * NTP-01-003 NTP: Improper use of snprintf() in mx4200_send() (Low)
4946 1.1.1.12 christos Date Resolved: 21 Mar 2017
4947 1.1.1.12 christos References: Sec 3378 / CVE-2017-6451 / VU#325339
4948 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
4949 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4950 1.1.1.12 christos CVSS2: LOW 0.8 (AV:L/AC:H/Au:M/C:N/I:N/A:P)
4951 1.1.1.12 christos CVSS3: LOW 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N
4952 1.1.1.12 christos Summary:
4953 1.1.1.12 christos The legacy MX4200 refclock is only built if is specifically
4954 1.1.1.12 christos enabled, and furthermore additional code changes are required to
4955 1.1.1.12 christos compile and use it. But it uses the libc functions snprintf()
4956 1.1.1.12 christos and vsnprintf() incorrectly, which can lead to an out-of-bounds
4957 1.1.1.12 christos memory write due to an improper handling of the return value of
4958 1.1.1.12 christos snprintf()/vsnprintf(). Since the return value is used as an
4959 1.1.1.12 christos iterator and it can be larger than the buffer's size, it is
4960 1.1.1.12 christos possible for the iterator to point somewhere outside of the
4961 1.1.1.12 christos allocated buffer space. This results in an out-of-bound memory
4962 1.1.1.12 christos write. This behavior can be leveraged to overwrite a saved
4963 1.1.1.12 christos instruction pointer on the stack and gain control over the
4964 1.1.1.12 christos execution flow. During testing it was not possible to identify
4965 1.1.1.12 christos any malicious usage for this vulnerability. Specifically, no
4966 1.1.1.12 christos way for an attacker to exploit this vulnerability was ultimately
4967 1.1.1.12 christos unveiled. However, it has the potential to be exploited, so the
4968 1.1.1.12 christos code should be fixed.
4969 1.1.1.12 christos Mitigation, if you have a Magnavox MX4200 refclock:
4970 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4971 1.1.1.12 christos or the NTP Public Services Project Download Page.
4972 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
4973 1.1.1.12 christos ntpd (without -g) if it stops running.
4974 1.1.1.12 christos Credit:
4975 1.1.1.12 christos This weakness was discovered by Cure53.
4976 1.1.1.12 christos
4977 1.1.1.12 christos * NTP-01-002 NTP: Buffer Overflow in ntpq when fetching reslist from a
4978 1.1.1.12 christos malicious ntpd (Medium)
4979 1.1.1.12 christos Date Resolved: 21 Mar 2017
4980 1.1.1.12 christos References: Sec 3377 / CVE-2017-6460 / VU#325339
4981 1.1.1.12 christos Affects: All versions of ntpq, up to but not including ntp-4.2.8p10, and
4982 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
4983 1.1.1.12 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:S/C:N/I:N/A:C)
4984 1.1.1.12 christos CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4985 1.1.1.12 christos Summary:
4986 1.1.1.12 christos A stack buffer overflow in ntpq can be triggered by a malicious
4987 1.1.1.12 christos ntpd server when ntpq requests the restriction list from the server.
4988 1.1.1.12 christos This is due to a missing length check in the reslist() function.
4989 1.1.1.12 christos It occurs whenever the function parses the server's response and
4990 1.1.1.12 christos encounters a flagstr variable of an excessive length. The string
4991 1.1.1.12 christos will be copied into a fixed-size buffer, leading to an overflow on
4992 1.1.1.12 christos the function's stack-frame. Note well that this problem requires
4993 1.1.1.12 christos a malicious server, and affects ntpq, not ntpd.
4994 1.1.1.12 christos Mitigation:
4995 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
4996 1.1.1.12 christos or the NTP Public Services Project Download Page
4997 1.1.1.12 christos If you can't upgrade your version of ntpq then if you want to know
4998 1.1.1.12 christos the reslist of an instance of ntpd that you do not control,
4999 1.1.1.12 christos know that if the target ntpd is malicious that it can send back
5000 1.1.1.12 christos a response that intends to crash your ntpq process.
5001 1.1.1.12 christos Credit:
5002 1.1.1.12 christos This weakness was discovered by Cure53.
5003 1.1.1.12 christos
5004 1.1.1.12 christos * NTP-01-001 NTP: Makefile does not enforce Security Flags (Informational)
5005 1.1.1.12 christos Date Resolved: 21 Mar 2017
5006 1.1.1.12 christos References: Sec 3376
5007 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
5008 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
5009 1.1.1.12 christos CVSS2: N/A
5010 1.1.1.12 christos CVSS3: N/A
5011 1.1.1.12 christos Summary:
5012 1.1.1.12 christos The build process for NTP has not, by default, provided compile
5013 1.1.1.12 christos or link flags to offer "hardened" security options. Package
5014 1.1.1.12 christos maintainers have always been able to provide hardening security
5015 1.1.1.12 christos flags for their builds. As of ntp-4.2.8p10, the NTP build
5016 1.1.1.12 christos system has a way to provide OS-specific hardening flags. Please
5017 1.1.1.12 christos note that this is still not a really great solution because it
5018 1.1.1.12 christos is specific to NTP builds. It's inefficient to have every
5019 1.1.1.12 christos package supply, track and maintain this information for every
5020 1.1.1.12 christos target build. It would be much better if there was a common way
5021 1.1.1.12 christos for OSes to provide this information in a way that arbitrary
5022 1.1.1.12 christos packages could benefit from it.
5023 1.1.1.12 christos Mitigation:
5024 1.1.1.12 christos Implement BCP-38.
5025 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
5026 1.1.1.12 christos or the NTP Public Services Project Download Page
5027 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
5028 1.1.1.12 christos ntpd (without -g) if it stops running.
5029 1.1.1.12 christos Credit:
5030 1.1.1.12 christos This weakness was reported by Cure53.
5031 1.1.1.12 christos
5032 1.1.1.12 christos * 0rigin DoS (Medium)
5033 1.1.1.12 christos Date Resolved: 21 Mar 2017
5034 1.1.1.12 christos References: Sec 3361 / CVE-2016-9042 / VU#325339
5035 1.1.1.12 christos Affects: ntp-4.2.8p9 (21 Nov 2016), up to but not including ntp-4.2.8p10
5036 1.1.1.12 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C) (worst case)
5037 1.1.1.12 christos CVSS3: MED 4.4 CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H (worst case)
5038 1.1.1.12 christos Summary:
5039 1.1.1.12 christos An exploitable denial of service vulnerability exists in the
5040 1.1.1.12 christos origin timestamp check functionality of ntpd 4.2.8p9. A specially
5041 1.1.1.12 christos crafted unauthenticated network packet can be used to reset the
5042 1.1.1.12 christos expected origin timestamp for target peers. Legitimate replies
5043 1.1.1.12 christos from targeted peers will fail the origin timestamp check (TEST2)
5044 1.1.1.12 christos causing the reply to be dropped and creating a denial of service
5045 1.1.1.12 christos condition. This vulnerability can only be exploited if the
5046 1.1.1.12 christos attacker can spoof all of the servers.
5047 1.1.1.12 christos Mitigation:
5048 1.1.1.12 christos Implement BCP-38.
5049 1.1.1.12 christos Configure enough servers/peers that an attacker cannot target
5050 1.1.1.12 christos all of your time sources.
5051 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
5052 1.1.1.12 christos or the NTP Public Services Project Download Page
5053 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
5054 1.1.1.12 christos ntpd (without -g) if it stops running.
5055 1.1.1.12 christos Credit:
5056 1.1.1.12 christos This weakness was discovered by Matthew Van Gundy of Cisco.
5057 1.1.1.12 christos
5058 1.1.1.12 christos Other fixes:
5059 1.1.1.12 christos
5060 1.1.1.12 christos * [Bug 3393] clang scan-build findings <perlinger (a] ntp.org>
5061 1.1.1.12 christos * [Bug 3363] Support for openssl-1.1.0 without compatibility modes
5062 1.1.1.12 christos - rework of patch set from <ntp.org (a] eroen.eu>. <perlinger (a] ntp.org>
5063 1.1.1.12 christos * [Bug 3356] Bugfix 3072 breaks multicastclient <perlinger (a] ntp.org>
5064 1.1.1.12 christos * [Bug 3216] libntp audio ioctl() args incorrectly cast to int
5065 1.1.1.12 christos on 4.4BSD-Lite derived platforms <perlinger (a] ntp.org>
5066 1.1.1.12 christos - original patch by Majdi S. Abbas
5067 1.1.1.12 christos * [Bug 3215] 'make distcheck' fails with new BK repo format <perlinger (a] ntp.org>
5068 1.1.1.12 christos * [Bug 3173] forking async worker: interrupted pipe I/O <perlinger (a] ntp.org>
5069 1.1.1.12 christos - initial patch by Christos Zoulas
5070 1.1.1.12 christos * [Bug 3139] (...) time_pps_create: Exec format error <perlinger (a] ntp.org>
5071 1.1.1.12 christos - move loader API from 'inline' to proper source
5072 1.1.1.12 christos - augment pathless dlls with absolute path to NTPD
5073 1.1.1.12 christos - use 'msyslog()' instead of 'printf() 'for reporting trouble
5074 1.1.1.12 christos * [Bug 3107] Incorrect Logic for Peer Event Limiting <perlinger (a] ntp.org>
5075 1.1.1.12 christos - applied patch by Matthew Van Gundy
5076 1.1.1.12 christos * [Bug 3065] Quiet warnings on NetBSD <perlinger (a] ntp.org>
5077 1.1.1.12 christos - applied some of the patches provided by Havard. Not all of them
5078 1.1.1.12 christos still match the current code base, and I did not touch libopt.
5079 1.1.1.12 christos * [Bug 3062] Change the process name of forked DNS worker <perlinger (a] ntp.org>
5080 1.1.1.12 christos - applied patch by Reinhard Max. See bugzilla for limitations.
5081 1.1.1.12 christos * [Bug 2923] Trap Configuration Fail <perlinger (a] ntp.org>
5082 1.1.1.12 christos - fixed dependency inversion from [Bug 2837]
5083 1.1.1.12 christos * [Bug 2896] Nothing happens if minsane < maxclock < minclock
5084 1.1.1.12 christos - produce ERROR log message about dysfunctional daemon. <perlinger (a] ntp.org>
5085 1.1.1.12 christos * [Bug 2851] allow -4/-6 on restrict line with mask <perlinger (a] ntp.org>
5086 1.1.1.12 christos - applied patch by Miroslav Lichvar for ntp4.2.6 compat
5087 1.1.1.12 christos * [Bug 2645] out-of-bound pointers in ctl_putsys and decode_bitflags
5088 1.1.1.12 christos - Fixed these and some more locations of this pattern.
5089 1.1.1.12 christos Probably din't get them all, though. <perlinger (a] ntp.org>
5090 1.1.1.12 christos * Update copyright year.
5091 1.1.1.12 christos
5092 1.1.1.12 christos --
5093 1.1.1.12 christos (4.2.8p9-win) 2017/02/01 Released by Harlan Stenn <stenn (a] ntp.org>
5094 1.1.1.12 christos
5095 1.1.1.12 christos * [Bug 3144] NTP does not build without openSSL. <perlinger (a] ntp.org>
5096 1.1.1.12 christos - added missed changeset for automatic openssl lib detection
5097 1.1.1.12 christos - fixed some minor warning issues
5098 1.1.1.12 christos * [Bug 3095] More compatibility with openssl 1.1. <perlinger (a] ntp.org>
5099 1.1.1.12 christos * configure.ac cleanup. stenn (a] ntp.org
5100 1.1.1.12 christos * openssl configure cleanup. stenn (a] ntp.org
5101 1.1.1.12 christos
5102 1.1.1.12 christos --
5103 1.1.1.11 christos NTP 4.2.8p9 (Harlan Stenn <stenn (a] ntp.org>, 2016/11/21)
5104 1.1.1.11 christos
5105 1.1.1.11 christos Focus: Security, Bug fixes, enhancements.
5106 1.1.1.11 christos
5107 1.1.1.11 christos Severity: HIGH
5108 1.1.1.11 christos
5109 1.1.1.11 christos In addition to bug fixes and enhancements, this release fixes the
5110 1.1.1.11 christos following 1 high- (Windows only), 2 medium-, 2 medium-/low, and
5111 1.1.1.11 christos 5 low-severity vulnerabilities, and provides 28 other non-security
5112 1.1.1.11 christos fixes and improvements:
5113 1.1.1.11 christos
5114 1.1.1.11 christos * Trap crash
5115 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5116 1.1.1.11 christos References: Sec 3119 / CVE-2016-9311 / VU#633847
5117 1.1.1.11 christos Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
5118 1.1.1.11 christos including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
5119 1.1.1.11 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C)
5120 1.1.1.11 christos CVSS3: MED 4.4 CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H
5121 1.1.1.11 christos Summary:
5122 1.1.1.11 christos ntpd does not enable trap service by default. If trap service
5123 1.1.1.11 christos has been explicitly enabled, an attacker can send a specially
5124 1.1.1.11 christos crafted packet to cause a null pointer dereference that will
5125 1.1.1.11 christos crash ntpd, resulting in a denial of service.
5126 1.1.1.11 christos Mitigation:
5127 1.1.1.11 christos Implement BCP-38.
5128 1.1.1.11 christos Use "restrict default noquery ..." in your ntp.conf file. Only
5129 1.1.1.11 christos allow mode 6 queries from trusted networks and hosts.
5130 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5131 1.1.1.11 christos or the NTP Public Services Project Download Page
5132 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5133 1.1.1.11 christos (without -g) if it stops running.
5134 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
5135 1.1.1.11 christos
5136 1.1.1.11 christos * Mode 6 information disclosure and DDoS vector
5137 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5138 1.1.1.11 christos References: Sec 3118 / CVE-2016-9310 / VU#633847
5139 1.1.1.11 christos Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
5140 1.1.1.11 christos including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
5141 1.1.1.11 christos CVSS2: MED 6.4 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
5142 1.1.1.11 christos CVSS3: MED 6.5 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
5143 1.1.1.11 christos Summary:
5144 1.1.1.11 christos An exploitable configuration modification vulnerability exists
5145 1.1.1.11 christos in the control mode (mode 6) functionality of ntpd. If, against
5146 1.1.1.11 christos long-standing BCP recommendations, "restrict default noquery ..."
5147 1.1.1.11 christos is not specified, a specially crafted control mode packet can set
5148 1.1.1.11 christos ntpd traps, providing information disclosure and DDoS
5149 1.1.1.11 christos amplification, and unset ntpd traps, disabling legitimate
5150 1.1.1.11 christos monitoring. A remote, unauthenticated, network attacker can
5151 1.1.1.11 christos trigger this vulnerability.
5152 1.1.1.11 christos Mitigation:
5153 1.1.1.11 christos Implement BCP-38.
5154 1.1.1.11 christos Use "restrict default noquery ..." in your ntp.conf file.
5155 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5156 1.1.1.11 christos or the NTP Public Services Project Download Page
5157 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5158 1.1.1.11 christos (without -g) if it stops running.
5159 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
5160 1.1.1.11 christos
5161 1.1.1.11 christos * Broadcast Mode Replay Prevention DoS
5162 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5163 1.1.1.11 christos References: Sec 3114 / CVE-2016-7427 / VU#633847
5164 1.1.1.11 christos Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
5165 1.1.1.11 christos ntp-4.3.90 up to, but not including ntp-4.3.94.
5166 1.1.1.11 christos CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
5167 1.1.1.11 christos CVSS3: MED 4.3 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
5168 1.1.1.11 christos Summary:
5169 1.1.1.11 christos The broadcast mode of NTP is expected to only be used in a
5170 1.1.1.11 christos trusted network. If the broadcast network is accessible to an
5171 1.1.1.11 christos attacker, a potentially exploitable denial of service
5172 1.1.1.11 christos vulnerability in ntpd's broadcast mode replay prevention
5173 1.1.1.11 christos functionality can be abused. An attacker with access to the NTP
5174 1.1.1.11 christos broadcast domain can periodically inject specially crafted
5175 1.1.1.11 christos broadcast mode NTP packets into the broadcast domain which,
5176 1.1.1.11 christos while being logged by ntpd, can cause ntpd to reject broadcast
5177 1.1.1.11 christos mode packets from legitimate NTP broadcast servers.
5178 1.1.1.11 christos Mitigation:
5179 1.1.1.11 christos Implement BCP-38.
5180 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5181 1.1.1.11 christos or the NTP Public Services Project Download Page
5182 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5183 1.1.1.11 christos (without -g) if it stops running.
5184 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
5185 1.1.1.11 christos
5186 1.1.1.11 christos * Broadcast Mode Poll Interval Enforcement DoS
5187 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5188 1.1.1.11 christos References: Sec 3113 / CVE-2016-7428 / VU#633847
5189 1.1.1.11 christos Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
5190 1.1.1.11 christos ntp-4.3.90 up to, but not including ntp-4.3.94
5191 1.1.1.11 christos CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
5192 1.1.1.11 christos CVSS3: MED 4.3 CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
5193 1.1.1.11 christos Summary:
5194 1.1.1.11 christos The broadcast mode of NTP is expected to only be used in a
5195 1.1.1.11 christos trusted network. If the broadcast network is accessible to an
5196 1.1.1.11 christos attacker, a potentially exploitable denial of service
5197 1.1.1.11 christos vulnerability in ntpd's broadcast mode poll interval enforcement
5198 1.1.1.11 christos functionality can be abused. To limit abuse, ntpd restricts the
5199 1.1.1.11 christos rate at which each broadcast association will process incoming
5200 1.1.1.11 christos packets. ntpd will reject broadcast mode packets that arrive
5201 1.1.1.11 christos before the poll interval specified in the preceding broadcast
5202 1.1.1.11 christos packet expires. An attacker with access to the NTP broadcast
5203 1.1.1.11 christos domain can send specially crafted broadcast mode NTP packets to
5204 1.1.1.11 christos the broadcast domain which, while being logged by ntpd, will
5205 1.1.1.11 christos cause ntpd to reject broadcast mode packets from legitimate NTP
5206 1.1.1.11 christos broadcast servers.
5207 1.1.1.11 christos Mitigation:
5208 1.1.1.11 christos Implement BCP-38.
5209 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5210 1.1.1.11 christos or the NTP Public Services Project Download Page
5211 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5212 1.1.1.11 christos (without -g) if it stops running.
5213 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
5214 1.1.1.11 christos
5215 1.1.1.11 christos * Windows: ntpd DoS by oversized UDP packet
5216 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5217 1.1.1.11 christos References: Sec 3110 / CVE-2016-9312 / VU#633847
5218 1.1.1.11 christos Affects Windows only: ntp-4.?.?, up to but not including ntp-4.2.8p9,
5219 1.1.1.11 christos and ntp-4.3.0 up to, but not including ntp-4.3.94.
5220 1.1.1.11 christos CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
5221 1.1.1.11 christos CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
5222 1.1.1.11 christos Summary:
5223 1.1.1.11 christos If a vulnerable instance of ntpd on Windows receives a crafted
5224 1.1.1.11 christos malicious packet that is "too big", ntpd will stop working.
5225 1.1.1.11 christos Mitigation:
5226 1.1.1.11 christos Implement BCP-38.
5227 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5228 1.1.1.11 christos or the NTP Public Services Project Download Page
5229 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5230 1.1.1.11 christos (without -g) if it stops running.
5231 1.1.1.11 christos Credit: This weakness was discovered by Robert Pajak of ABB.
5232 1.1.1.11 christos
5233 1.1.1.11 christos * 0rigin (zero origin) issues
5234 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5235 1.1.1.11 christos References: Sec 3102 / CVE-2016-7431 / VU#633847
5236 1.1.1.11 christos Affects: ntp-4.2.8p8, and ntp-4.3.93.
5237 1.1.1.11 christos CVSS2: MED 5.0 (AV:N/AC:L/Au:N/C:N/I:P/A:N)
5238 1.1.1.11 christos CVSS3: MED 5.3 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
5239 1.1.1.11 christos Summary:
5240 1.1.1.11 christos Zero Origin timestamp problems were fixed by Bug 2945 in
5241 1.1.1.11 christos ntp-4.2.8p6. However, subsequent timestamp validation checks
5242 1.1.1.11 christos introduced a regression in the handling of some Zero origin
5243 1.1.1.11 christos timestamp checks.
5244 1.1.1.11 christos Mitigation:
5245 1.1.1.11 christos Implement BCP-38.
5246 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5247 1.1.1.11 christos or the NTP Public Services Project Download Page
5248 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5249 1.1.1.11 christos (without -g) if it stops running.
5250 1.1.1.11 christos Credit: This weakness was discovered by Sharon Goldberg and Aanchal
5251 1.1.1.11 christos Malhotra of Boston University.
5252 1.1.1.11 christos
5253 1.1.1.11 christos * read_mru_list() does inadequate incoming packet checks
5254 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5255 1.1.1.11 christos References: Sec 3082 / CVE-2016-7434 / VU#633847
5256 1.1.1.11 christos Affects: ntp-4.2.7p22, up to but not including ntp-4.2.8p9, and
5257 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
5258 1.1.1.11 christos CVSS2: LOW 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
5259 1.1.1.11 christos CVSS3: LOW 3.8 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
5260 1.1.1.11 christos Summary:
5261 1.1.1.11 christos If ntpd is configured to allow mrulist query requests from a
5262 1.1.1.11 christos server that sends a crafted malicious packet, ntpd will crash
5263 1.1.1.11 christos on receipt of that crafted malicious mrulist query packet.
5264 1.1.1.11 christos Mitigation:
5265 1.1.1.11 christos Only allow mrulist query packets from trusted hosts.
5266 1.1.1.11 christos Implement BCP-38.
5267 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5268 1.1.1.11 christos or the NTP Public Services Project Download Page
5269 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5270 1.1.1.11 christos (without -g) if it stops running.
5271 1.1.1.11 christos Credit: This weakness was discovered by Magnus Stubman.
5272 1.1.1.11 christos
5273 1.1.1.11 christos * Attack on interface selection
5274 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5275 1.1.1.11 christos References: Sec 3072 / CVE-2016-7429 / VU#633847
5276 1.1.1.11 christos Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
5277 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94
5278 1.1.1.11 christos CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
5279 1.1.1.11 christos CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
5280 1.1.1.11 christos Summary:
5281 1.1.1.11 christos When ntpd receives a server response on a socket that corresponds
5282 1.1.1.11 christos to a different interface than was used for the request, the peer
5283 1.1.1.11 christos structure is updated to use the interface for new requests. If
5284 1.1.1.11 christos ntpd is running on a host with multiple interfaces in separate
5285 1.1.1.11 christos networks and the operating system doesn't check source address in
5286 1.1.1.11 christos received packets (e.g. rp_filter on Linux is set to 0), an
5287 1.1.1.11 christos attacker that knows the address of the source can send a packet
5288 1.1.1.11 christos with spoofed source address which will cause ntpd to select wrong
5289 1.1.1.11 christos interface for the source and prevent it from sending new requests
5290 1.1.1.11 christos until the list of interfaces is refreshed, which happens on
5291 1.1.1.11 christos routing changes or every 5 minutes by default. If the attack is
5292 1.1.1.11 christos repeated often enough (once per second), ntpd will not be able to
5293 1.1.1.11 christos synchronize with the source.
5294 1.1.1.11 christos Mitigation:
5295 1.1.1.11 christos Implement BCP-38.
5296 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5297 1.1.1.11 christos or the NTP Public Services Project Download Page
5298 1.1.1.11 christos If you are going to configure your OS to disable source address
5299 1.1.1.11 christos checks, also configure your firewall configuration to control
5300 1.1.1.11 christos what interfaces can receive packets from what networks.
5301 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5302 1.1.1.11 christos (without -g) if it stops running.
5303 1.1.1.11 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
5304 1.1.1.11 christos
5305 1.1.1.11 christos * Client rate limiting and server responses
5306 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5307 1.1.1.11 christos References: Sec 3071 / CVE-2016-7426 / VU#633847
5308 1.1.1.11 christos Affects: ntp-4.2.5p203, up to but not including ntp-4.2.8p9, and
5309 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94
5310 1.1.1.11 christos CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
5311 1.1.1.11 christos CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
5312 1.1.1.11 christos Summary:
5313 1.1.1.11 christos When ntpd is configured with rate limiting for all associations
5314 1.1.1.11 christos (restrict default limited in ntp.conf), the limits are applied
5315 1.1.1.11 christos also to responses received from its configured sources. An
5316 1.1.1.11 christos attacker who knows the sources (e.g., from an IPv4 refid in
5317 1.1.1.11 christos server response) and knows the system is (mis)configured in this
5318 1.1.1.11 christos way can periodically send packets with spoofed source address to
5319 1.1.1.11 christos keep the rate limiting activated and prevent ntpd from accepting
5320 1.1.1.11 christos valid responses from its sources.
5321 1.1.1.11 christos
5322 1.1.1.11 christos While this blanket rate limiting can be useful to prevent
5323 1.1.1.11 christos brute-force attacks on the origin timestamp, it allows this DoS
5324 1.1.1.11 christos attack. Similarly, it allows the attacker to prevent mobilization
5325 1.1.1.11 christos of ephemeral associations.
5326 1.1.1.11 christos Mitigation:
5327 1.1.1.11 christos Implement BCP-38.
5328 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5329 1.1.1.11 christos or the NTP Public Services Project Download Page
5330 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5331 1.1.1.11 christos (without -g) if it stops running.
5332 1.1.1.11 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
5333 1.1.1.11 christos
5334 1.1.1.11 christos * Fix for bug 2085 broke initial sync calculations
5335 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
5336 1.1.1.11 christos References: Sec 3067 / CVE-2016-7433 / VU#633847
5337 1.1.1.11 christos Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
5338 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94. But the
5339 1.1.1.11 christos root-distance calculation in general is incorrect in all versions
5340 1.1.1.11 christos of ntp-4 until this release.
5341 1.1.1.11 christos CVSS2: LOW 1.2 (AV:L/AC:H/Au:N/C:N/I:N/A:P)
5342 1.1.1.11 christos CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:L
5343 1.1.1.11 christos Summary:
5344 1.1.1.11 christos Bug 2085 described a condition where the root delay was included
5345 1.1.1.11 christos twice, causing the jitter value to be higher than expected. Due
5346 1.1.1.11 christos to a misinterpretation of a small-print variable in The Book, the
5347 1.1.1.11 christos fix for this problem was incorrect, resulting in a root distance
5348 1.1.1.11 christos that did not include the peer dispersion. The calculations and
5349 1.1.1.11 christos formulae have been reviewed and reconciled, and the code has been
5350 1.1.1.11 christos updated accordingly.
5351 1.1.1.11 christos Mitigation:
5352 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
5353 1.1.1.11 christos or the NTP Public Services Project Download Page
5354 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
5355 1.1.1.11 christos (without -g) if it stops running.
5356 1.1.1.11 christos Credit: This weakness was discovered independently by Brian Utterback of
5357 1.1.1.11 christos Oracle, and Sharon Goldberg and Aanchal Malhotra of Boston University.
5358 1.1.1.11 christos
5359 1.1.1.11 christos Other fixes:
5360 1.1.1.11 christos
5361 1.1.1.11 christos * [Bug 3142] bug in netmask prefix length detection <perlinger (a] ntp.org>
5362 1.1.1.11 christos * [Bug 3138] gpsdjson refclock should honor fudgetime1. stenn (a] ntp.org
5363 1.1.1.11 christos * [Bug 3129] Unknown hosts can put resolver thread into a hard loop
5364 1.1.1.11 christos - moved retry decision where it belongs. <perlinger (a] ntp.org>
5365 1.1.1.11 christos * [Bug 3125] NTPD doesn't fully start when ntp.conf entries are out of order
5366 1.1.1.11 christos using the loopback-ppsapi-provider.dll <perlinger (a] ntp.org>
5367 1.1.1.11 christos * [Bug 3116] unit tests for NTP time stamp expansion. <perlinger (a] ntp.org>
5368 1.1.1.11 christos * [Bug 3100] ntpq can't retrieve daemon_version <perlinger (a] ntp.org>
5369 1.1.1.11 christos - fixed extended sysvar lookup (bug introduced with bug 3008 fix)
5370 1.1.1.11 christos * [Bug 3095] Compatibility with openssl 1.1 <perlinger (a] ntp.org>
5371 1.1.1.11 christos - applied patches by Kurt Roeckx <kurt (a] roeckx.be> to source
5372 1.1.1.11 christos - added shim layer for SSL API calls with issues (both directions)
5373 1.1.1.11 christos * [Bug 3089] Serial Parser does not work anymore for hopfser like device
5374 1.1.1.11 christos - simplified / refactored hex-decoding in driver. <perlinger (a] ntp.org>
5375 1.1.1.11 christos * [Bug 3084] update-leap mis-parses the leapfile name. HStenn.
5376 1.1.1.11 christos * [Bug 3068] Linker warnings when building on Solaris. perlinger (a] ntp.org
5377 1.1.1.11 christos - applied patch thanks to Andrew Stormont <andyjstormont (a] gmail.com>
5378 1.1.1.11 christos * [Bug 3067] Root distance calculation needs improvement. HStenn
5379 1.1.1.11 christos * [Bug 3066] NMEA clock ignores pps. perlinger (a] ntp.org
5380 1.1.1.11 christos - PPS-HACK works again.
5381 1.1.1.11 christos * [Bug 3059] Potential buffer overrun from oversized hash <perlinger (a] ntp.org>
5382 1.1.1.11 christos - applied patch by Brian Utterback <brian.utterback (a] oracle.com>
5383 1.1.1.11 christos * [Bug 3053] ntp_loopfilter.c frequency calc precedence error. Sarah White.
5384 1.1.1.11 christos * [Bug 3050] Fix for bug #2960 causes [...] spurious error message.
5385 1.1.1.11 christos <perlinger (a] ntp.org>
5386 1.1.1.11 christos - patches by Reinhard Max <max (a] suse.com> and Havard Eidnes <he (a] uninett.no>
5387 1.1.1.11 christos * [Bug 3047] Fix refclock_jjy C-DEX JST2000. abe (a] ntp.org
5388 1.1.1.11 christos - Patch provided by Kuramatsu.
5389 1.1.1.11 christos * [Bug 3021] unity_fixture.c needs pragma weak <perlinger (a] ntp.org>
5390 1.1.1.11 christos - removed unnecessary & harmful decls of 'setUp()' & 'tearDown()'
5391 1.1.1.11 christos * [Bug 3019] Windows: ERROR_HOST_UNREACHABLE block packet processing. DMayer
5392 1.1.1.11 christos * [Bug 2998] sntp/tests/packetProcessing.c broken without openssl. JPerlinger
5393 1.1.1.11 christos * [Bug 2961] sntp/tests/packetProcessing.c assumes AUTOKEY. HStenn.
5394 1.1.1.11 christos * [Bug 2959] refclock_jupiter: gps week correction <perlinger (a] ntp.org>
5395 1.1.1.11 christos - fixed GPS week expansion to work based on build date. Special thanks
5396 1.1.1.11 christos to Craig Leres for initial patch and testing.
5397 1.1.1.11 christos * [Bug 2951] ntpd tests fail: multiple definition of `send_via_ntp_signd'
5398 1.1.1.11 christos - fixed Makefile.am <perlinger (a] ntp.org>
5399 1.1.1.11 christos * [Bug 2689] ATOM driver processes last PPS pulse at startup,
5400 1.1.1.11 christos even if it is very old <perlinger (a] ntp.org>
5401 1.1.1.11 christos - make sure PPS source is alive before processing samples
5402 1.1.1.11 christos - improve stability close to the 500ms phase jump (phase gate)
5403 1.1.1.11 christos * Fix typos in include/ntp.h.
5404 1.1.1.11 christos * Shim X509_get_signature_nid() if needed
5405 1.1.1.11 christos * git author attribution cleanup
5406 1.1.1.11 christos * bk ignore file cleanup
5407 1.1.1.11 christos * remove locks in Windows IO, use rpc-like thread synchronisation instead
5408 1.1.1.11 christos
5409 1.1.1.11 christos ---
5410 1.1.1.10 christos NTP 4.2.8p8 (Harlan Stenn <stenn (a] ntp.org>, 2016/06/02)
5411 1.1.1.10 christos
5412 1.1.1.10 christos Focus: Security, Bug fixes, enhancements.
5413 1.1.1.10 christos
5414 1.1.1.10 christos Severity: HIGH
5415 1.1.1.10 christos
5416 1.1.1.10 christos In addition to bug fixes and enhancements, this release fixes the
5417 1.1.1.10 christos following 1 high- and 4 low-severity vulnerabilities:
5418 1.1.1.10 christos
5419 1.1.1.10 christos * CRYPTO_NAK crash
5420 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
5421 1.1.1.10 christos References: Sec 3046 / CVE-2016-4957 / VU#321640
5422 1.1.1.10 christos Affects: ntp-4.2.8p7, and ntp-4.3.92.
5423 1.1.1.10 christos CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
5424 1.1.1.10 christos CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
5425 1.1.1.10 christos Summary: The fix for Sec 3007 in ntp-4.2.8p7 contained a bug that
5426 1.1.1.10 christos could cause ntpd to crash.
5427 1.1.1.10 christos Mitigation:
5428 1.1.1.10 christos Implement BCP-38.
5429 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
5430 1.1.1.10 christos or the NTP Public Services Project Download Page
5431 1.1.1.10 christos If you cannot upgrade from 4.2.8p7, the only other alternatives
5432 1.1.1.10 christos are to patch your code or filter CRYPTO_NAK packets.
5433 1.1.1.10 christos Properly monitor your ntpd instances, and auto-restart ntpd
5434 1.1.1.10 christos (without -g) if it stops running.
5435 1.1.1.10 christos Credit: This weakness was discovered by Nicolas Edet of Cisco.
5436 1.1.1.10 christos
5437 1.1.1.10 christos * Bad authentication demobilizes ephemeral associations
5438 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
5439 1.1.1.10 christos References: Sec 3045 / CVE-2016-4953 / VU#321640
5440 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
5441 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
5442 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
5443 1.1.1.10 christos CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
5444 1.1.1.10 christos Summary: An attacker who knows the origin timestamp and can send a
5445 1.1.1.10 christos spoofed packet containing a CRYPTO-NAK to an ephemeral peer
5446 1.1.1.10 christos target before any other response is sent can demobilize that
5447 1.1.1.10 christos association.
5448 1.1.1.10 christos Mitigation:
5449 1.1.1.10 christos Implement BCP-38.
5450 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
5451 1.1.1.10 christos or the NTP Public Services Project Download Page
5452 1.1.1.10 christos Properly monitor your ntpd instances.
5453 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
5454 1.1.1.10 christos
5455 1.1.1.10 christos * Processing spoofed server packets
5456 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
5457 1.1.1.10 christos References: Sec 3044 / CVE-2016-4954 / VU#321640
5458 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
5459 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
5460 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
5461 1.1.1.10 christos CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
5462 1.1.1.10 christos Summary: An attacker who is able to spoof packets with correct origin
5463 1.1.1.10 christos timestamps from enough servers before the expected response
5464 1.1.1.10 christos packets arrive at the target machine can affect some peer
5465 1.1.1.10 christos variables and, for example, cause a false leap indication to be set.
5466 1.1.1.10 christos Mitigation:
5467 1.1.1.10 christos Implement BCP-38.
5468 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
5469 1.1.1.10 christos or the NTP Public Services Project Download Page
5470 1.1.1.10 christos Properly monitor your ntpd instances.
5471 1.1.1.10 christos Credit: This weakness was discovered by Jakub Prokes of Red Hat.
5472 1.1.1.10 christos
5473 1.1.1.10 christos * Autokey association reset
5474 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
5475 1.1.1.10 christos References: Sec 3043 / CVE-2016-4955 / VU#321640
5476 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
5477 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
5478 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
5479 1.1.1.10 christos CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
5480 1.1.1.10 christos Summary: An attacker who is able to spoof a packet with a correct
5481 1.1.1.10 christos origin timestamp before the expected response packet arrives at
5482 1.1.1.10 christos the target machine can send a CRYPTO_NAK or a bad MAC and cause
5483 1.1.1.10 christos the association's peer variables to be cleared. If this can be
5484 1.1.1.10 christos done often enough, it will prevent that association from working.
5485 1.1.1.10 christos Mitigation:
5486 1.1.1.10 christos Implement BCP-38.
5487 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
5488 1.1.1.10 christos or the NTP Public Services Project Download Page
5489 1.1.1.10 christos Properly monitor your ntpd instances.
5490 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
5491 1.1.1.10 christos
5492 1.1.1.10 christos * Broadcast interleave
5493 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
5494 1.1.1.10 christos References: Sec 3042 / CVE-2016-4956 / VU#321640
5495 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
5496 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
5497 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
5498 1.1.1.10 christos CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
5499 1.1.1.10 christos Summary: The fix for NtpBug2978 does not cover broadcast associations,
5500 1.1.1.10 christos so broadcast clients can be triggered to flip into interleave mode.
5501 1.1.1.10 christos Mitigation:
5502 1.1.1.10 christos Implement BCP-38.
5503 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
5504 1.1.1.10 christos or the NTP Public Services Project Download Page
5505 1.1.1.10 christos Properly monitor your ntpd instances.
5506 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
5507 1.1.1.10 christos
5508 1.1.1.10 christos Other fixes:
5509 1.1.1.10 christos * [Bug 3038] NTP fails to build in VS2015. perlinger (a] ntp.org
5510 1.1.1.10 christos - provide build environment
5511 1.1.1.10 christos - 'wint_t' and 'struct timespec' defined by VS2015
5512 1.1.1.10 christos - fixed print()/scanf() format issues
5513 1.1.1.10 christos * [Bug 3052] Add a .gitignore file. Edmund Wong.
5514 1.1.1.10 christos * [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
5515 1.1.1.10 christos * [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback,
5516 1.1.1.10 christos JPerlinger, HStenn.
5517 1.1.1.10 christos * Fix typo in ntp-wait and plot_summary. HStenn.
5518 1.1.1.10 christos * Make sure we have an "author" file for git imports. HStenn.
5519 1.1.1.10 christos * Update the sntp problem tests for MacOS. HStenn.
5520 1.1.1.10 christos
5521 1.1.1.10 christos ---
5522 1.1.1.9 christos NTP 4.2.8p7 (Harlan Stenn <stenn (a] ntp.org>, 2016/04/26)
5523 1.1.1.8 christos
5524 1.1.1.9 christos Focus: Security, Bug fixes, enhancements.
5525 1.1.1.9 christos
5526 1.1.1.9 christos Severity: MEDIUM
5527 1.1.1.9 christos
5528 1.1.1.9 christos When building NTP from source, there is a new configure option
5529 1.1.1.9 christos available, --enable-dynamic-interleave. More information on this below.
5530 1.1.1.9 christos
5531 1.1.1.9 christos Also note that ntp-4.2.8p7 logs more "unexpected events" than previous
5532 1.1.1.9 christos versions of ntp. These events have almost certainly happened in the
5533 1.1.1.9 christos past, it's just that they were silently counted and not logged. With
5534 1.1.1.9 christos the increasing awareness around security, we feel it's better to clearly
5535 1.1.1.9 christos log these events to help detect abusive behavior. This increased
5536 1.1.1.9 christos logging can also help detect other problems, too.
5537 1.1.1.9 christos
5538 1.1.1.9 christos In addition to bug fixes and enhancements, this release fixes the
5539 1.1.1.9 christos following 9 low- and medium-severity vulnerabilities:
5540 1.1.1.9 christos
5541 1.1.1.9 christos * Improve NTP security against buffer comparison timing attacks,
5542 1.1.1.9 christos AKA: authdecrypt-timing
5543 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5544 1.1.1.9 christos References: Sec 2879 / CVE-2016-1550
5545 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5546 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5547 1.1.1.9 christos CVSSv2: LOW 2.6 - (AV:L/AC:H/Au:N/C:P/I:P/A:N)
5548 1.1.1.9 christos CVSSv3: MED 4.0 - CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
5549 1.1.1.9 christos Summary: Packet authentication tests have been performed using
5550 1.1.1.9 christos memcmp() or possibly bcmp(), and it is potentially possible
5551 1.1.1.9 christos for a local or perhaps LAN-based attacker to send a packet with
5552 1.1.1.9 christos an authentication payload and indirectly observe how much of
5553 1.1.1.9 christos the digest has matched.
5554 1.1.1.9 christos Mitigation:
5555 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5556 1.1.1.9 christos or the NTP Public Services Project Download Page.
5557 1.1.1.9 christos Properly monitor your ntpd instances.
5558 1.1.1.9 christos Credit: This weakness was discovered independently by Loganaden
5559 1.1.1.9 christos Velvindron, and Matthew Van Gundy and Stephen Gray of Cisco ASIG.
5560 1.1.1.9 christos
5561 1.1.1.9 christos * Zero origin timestamp bypass: Additional KoD checks.
5562 1.1.1.9 christos References: Sec 2945 / Sec 2901 / CVE-2015-8138
5563 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
5564 1.1.1.9 christos Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.92.
5565 1.1.1.9 christos
5566 1.1.1.9 christos * peer associations were broken by the fix for NtpBug2899
5567 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5568 1.1.1.9 christos References: Sec 2952 / CVE-2015-7704
5569 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5570 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5571 1.1.1.9 christos CVSSv2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
5572 1.1.1.9 christos Summary: The fix for NtpBug2952 in ntp-4.2.8p5 to address broken peer
5573 1.1.1.9 christos associations did not address all of the issues.
5574 1.1.1.9 christos Mitigation:
5575 1.1.1.9 christos Implement BCP-38.
5576 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5577 1.1.1.9 christos or the NTP Public Services Project Download Page
5578 1.1.1.9 christos If you can't upgrade, use "server" associations instead of
5579 1.1.1.9 christos "peer" associations.
5580 1.1.1.9 christos Monitor your ntpd instances.
5581 1.1.1.9 christos Credit: This problem was discovered by Michael Tatarinov.
5582 1.1.1.9 christos
5583 1.1.1.9 christos * Validate crypto-NAKs, AKA: CRYPTO-NAK DoS
5584 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5585 1.1.1.9 christos References: Sec 3007 / CVE-2016-1547 / VU#718152
5586 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5587 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5588 1.1.1.9 christos CVSS2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
5589 1.1.1.9 christos CVSS3: MED 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
5590 1.1.1.9 christos Summary: For ntp-4 versions up to but not including ntp-4.2.8p7, an
5591 1.1.1.9 christos off-path attacker can cause a preemptable client association to
5592 1.1.1.9 christos be demobilized by sending a crypto NAK packet to a victim client
5593 1.1.1.9 christos with a spoofed source address of an existing associated peer.
5594 1.1.1.9 christos This is true even if authentication is enabled.
5595 1.1.1.9 christos
5596 1.1.1.9 christos Furthermore, if the attacker keeps sending crypto NAK packets,
5597 1.1.1.9 christos for example one every second, the victim never has a chance to
5598 1.1.1.9 christos reestablish the association and synchronize time with that
5599 1.1.1.9 christos legitimate server.
5600 1.1.1.9 christos
5601 1.1.1.9 christos For ntp-4.2.8 thru ntp-4.2.8p6 there is less risk because more
5602 1.1.1.9 christos stringent checks are performed on incoming packets, but there
5603 1.1.1.9 christos are still ways to exploit this vulnerability in versions before
5604 1.1.1.9 christos ntp-4.2.8p7.
5605 1.1.1.9 christos Mitigation:
5606 1.1.1.9 christos Implement BCP-38.
5607 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5608 1.1.1.9 christos or the NTP Public Services Project Download Page
5609 1.1.1.13 christos Properly monitor your ntpd instances
5610 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray and
5611 1.1.1.9 christos Matthew Van Gundy of Cisco ASIG.
5612 1.1.1.9 christos
5613 1.1.1.9 christos * ctl_getitem() return value not always checked
5614 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5615 1.1.1.9 christos References: Sec 3008 / CVE-2016-2519
5616 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5617 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5618 1.1.1.9 christos CVSSv2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
5619 1.1.1.9 christos CVSSv3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
5620 1.1.1.9 christos Summary: ntpq and ntpdc can be used to store and retrieve information
5621 1.1.1.9 christos in ntpd. It is possible to store a data value that is larger
5622 1.1.1.9 christos than the size of the buffer that the ctl_getitem() function of
5623 1.1.1.9 christos ntpd uses to report the return value. If the length of the
5624 1.1.1.9 christos requested data value returned by ctl_getitem() is too large,
5625 1.1.1.9 christos the value NULL is returned instead. There are 2 cases where the
5626 1.1.1.9 christos return value from ctl_getitem() was not directly checked to make
5627 1.1.1.9 christos sure it's not NULL, but there are subsequent INSIST() checks
5628 1.1.1.9 christos that make sure the return value is not NULL. There are no data
5629 1.1.1.9 christos values ordinarily stored in ntpd that would exceed this buffer
5630 1.1.1.9 christos length. But if one has permission to store values and one stores
5631 1.1.1.9 christos a value that is "too large", then ntpd will abort if an attempt
5632 1.1.1.9 christos is made to read that oversized value.
5633 1.1.1.9 christos Mitigation:
5634 1.1.1.9 christos Implement BCP-38.
5635 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5636 1.1.1.9 christos or the NTP Public Services Project Download Page
5637 1.1.1.9 christos Properly monitor your ntpd instances.
5638 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
5639 1.1.1.9 christos Security Team, Qihoo 360.
5640 1.1.1.9 christos
5641 1.1.1.9 christos * Crafted addpeer with hmode > 7 causes array wraparound with MATCH_ASSOC
5642 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5643 1.1.1.9 christos References: Sec 3009 / CVE-2016-2518 / VU#718152
5644 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5645 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5646 1.1.1.9 christos CVSS2: LOW 2.1 - (AV:N/AC:H/Au:S/C:N/I:N/A:P)
5647 1.1.1.9 christos CVSS3: LOW 2.0 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
5648 1.1.1.9 christos Summary: Using a crafted packet to create a peer association with
5649 1.1.1.9 christos hmode > 7 causes the MATCH_ASSOC() lookup to make an
5650 1.1.1.9 christos out-of-bounds reference.
5651 1.1.1.9 christos Mitigation:
5652 1.1.1.9 christos Implement BCP-38.
5653 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5654 1.1.1.9 christos or the NTP Public Services Project Download Page
5655 1.1.1.9 christos Properly monitor your ntpd instances
5656 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
5657 1.1.1.9 christos Security Team, Qihoo 360.
5658 1.1.1.9 christos
5659 1.1.1.9 christos * remote configuration trustedkey/requestkey/controlkey values are not
5660 1.1.1.9 christos properly validated
5661 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5662 1.1.1.9 christos References: Sec 3010 / CVE-2016-2517 / VU#718152
5663 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5664 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5665 1.1.1.9 christos CVSS2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
5666 1.1.1.9 christos CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
5667 1.1.1.9 christos Summary: If ntpd was expressly configured to allow for remote
5668 1.1.1.9 christos configuration, a malicious user who knows the controlkey for
5669 1.1.1.9 christos ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
5670 1.1.1.9 christos can create a session with ntpd and then send a crafted packet to
5671 1.1.1.9 christos ntpd that will change the value of the trustedkey, controlkey,
5672 1.1.1.9 christos or requestkey to a value that will prevent any subsequent
5673 1.1.1.9 christos authentication with ntpd until ntpd is restarted.
5674 1.1.1.9 christos Mitigation:
5675 1.1.1.9 christos Implement BCP-38.
5676 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5677 1.1.1.9 christos or the NTP Public Services Project Download Page
5678 1.1.1.13 christos Properly monitor your ntpd instances
5679 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
5680 1.1.1.9 christos Security Team, Qihoo 360.
5681 1.1.1.9 christos
5682 1.1.1.9 christos * Duplicate IPs on unconfig directives will cause an assertion botch in ntpd
5683 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5684 1.1.1.9 christos References: Sec 3011 / CVE-2016-2516 / VU#718152
5685 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5686 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5687 1.1.1.9 christos CVSS2: MED 6.3 - (AV:N/AC:M/Au:S/C:N/I:N/A:C)
5688 1.1.1.9 christos CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
5689 1.1.1.9 christos Summary: If ntpd was expressly configured to allow for remote
5690 1.1.1.9 christos configuration, a malicious user who knows the controlkey for
5691 1.1.1.9 christos ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
5692 1.1.1.9 christos can create a session with ntpd and if an existing association is
5693 1.1.1.9 christos unconfigured using the same IP twice on the unconfig directive
5694 1.1.1.9 christos line, ntpd will abort.
5695 1.1.1.9 christos Mitigation:
5696 1.1.1.9 christos Implement BCP-38.
5697 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5698 1.1.1.9 christos or the NTP Public Services Project Download Page
5699 1.1.1.9 christos Properly monitor your ntpd instances
5700 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
5701 1.1.1.9 christos Security Team, Qihoo 360.
5702 1.1.1.9 christos
5703 1.1.1.9 christos * Refclock impersonation vulnerability
5704 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5705 1.1.1.9 christos References: Sec 3020 / CVE-2016-1551
5706 1.1.1.9 christos Affects: On a very limited number of OSes, all NTP releases up to but
5707 1.1.1.9 christos not including 4.2.8p7, and 4.3.0 up to but not including 4.3.92.
5708 1.1.1.9 christos By "very limited number of OSes" we mean no general-purpose OSes
5709 1.1.1.9 christos have yet been identified that have this vulnerability.
5710 1.1.1.9 christos CVSSv2: LOW 2.6 - (AV:N/AC:H/Au:N/C:N/I:P/A:N)
5711 1.1.1.9 christos CVSSv3: LOW 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
5712 1.1.1.9 christos Summary: While most OSes implement martian packet filtering in their
5713 1.1.1.9 christos network stack, at least regarding 127.0.0.0/8, some will allow
5714 1.1.1.9 christos packets claiming to be from 127.0.0.0/8 that arrive over a
5715 1.1.1.9 christos physical network. On these OSes, if ntpd is configured to use a
5716 1.1.1.9 christos reference clock an attacker can inject packets over the network
5717 1.1.1.9 christos that look like they are coming from that reference clock.
5718 1.1.1.9 christos Mitigation:
5719 1.1.1.9 christos Implement martian packet filtering and BCP-38.
5720 1.1.1.9 christos Configure ntpd to use an adequate number of time sources.
5721 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5722 1.1.1.9 christos or the NTP Public Services Project Download Page
5723 1.1.1.9 christos If you are unable to upgrade and if you are running an OS that
5724 1.1.1.9 christos has this vulnerability, implement martian packet filters and
5725 1.1.1.9 christos lobby your OS vendor to fix this problem, or run your
5726 1.1.1.9 christos refclocks on computers that use OSes that are not vulnerable
5727 1.1.1.9 christos to these attacks and have your vulnerable machines get their
5728 1.1.1.9 christos time from protected resources.
5729 1.1.1.9 christos Properly monitor your ntpd instances.
5730 1.1.1.9 christos Credit: This weakness was discovered by Matt Street and others of
5731 1.1.1.9 christos Cisco ASIG.
5732 1.1.1.9 christos
5733 1.1.1.9 christos The following issues were fixed in earlier releases and contain
5734 1.1.1.9 christos improvements in 4.2.8p7:
5735 1.1.1.9 christos
5736 1.1.1.9 christos * Clients that receive a KoD should validate the origin timestamp field.
5737 1.1.1.9 christos References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
5738 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
5739 1.1.1.9 christos Summary: Improvements to the fixes incorporated into 4.2.8p4 and 4.3.77.
5740 1.1.1.9 christos
5741 1.1.1.9 christos * Skeleton key: passive server with trusted key can serve time.
5742 1.1.1.9 christos References: Sec 2936 / CVE-2015-7974
5743 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
5744 1.1.1.9 christos Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.90.
5745 1.1.1.9 christos
5746 1.1.1.9 christos Two other vulnerabilities have been reported, and the mitigations
5747 1.1.1.9 christos for these are as follows:
5748 1.1.1.9 christos
5749 1.1.1.9 christos * Interleave-pivot
5750 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5751 1.1.1.9 christos References: Sec 2978 / CVE-2016-1548
5752 1.1.1.9 christos Affects: All ntp-4 releases.
5753 1.1.1.9 christos CVSSv2: MED 6.4 - (AV:N/AC:L/Au:N/C:N/I:P/A:P)
5754 1.1.1.9 christos CVSSv3: MED 7.2 - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L
5755 1.1.1.9 christos Summary: It is possible to change the time of an ntpd client or deny
5756 1.1.1.9 christos service to an ntpd client by forcing it to change from basic
5757 1.1.1.9 christos client/server mode to interleaved symmetric mode. An attacker
5758 1.1.1.9 christos can spoof a packet from a legitimate ntpd server with an origin
5759 1.1.1.9 christos timestamp that matches the peer->dst timestamp recorded for that
5760 1.1.1.9 christos server. After making this switch, the client will reject all
5761 1.1.1.9 christos future legitimate server responses. It is possible to force the
5762 1.1.1.9 christos victim client to move time after the mode has been changed.
5763 1.1.1.9 christos ntpq gives no indication that the mode has been switched.
5764 1.1.1.9 christos Mitigation:
5765 1.1.1.9 christos Implement BCP-38.
5766 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
5767 1.1.1.9 christos or the NTP Public Services Project Download Page. These
5768 1.1.1.9 christos versions will not dynamically "flip" into interleave mode
5769 1.1.1.9 christos unless configured to do so.
5770 1.1.1.9 christos Properly monitor your ntpd instances.
5771 1.1.1.9 christos Credit: This weakness was discovered by Miroslav Lichvar of RedHat
5772 1.1.1.9 christos and separately by Jonathan Gardner of Cisco ASIG.
5773 1.1.1.9 christos
5774 1.1.1.9 christos * Sybil vulnerability: ephemeral association attack
5775 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
5776 1.1.1.9 christos References: Sec 3012 / CVE-2016-1549
5777 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
5778 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
5779 1.1.1.9 christos CVSSv2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
5780 1.1.1.9 christos CVSS3v: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
5781 1.1.1.9 christos Summary: ntpd can be vulnerable to Sybil attacks. If one is not using
5782 1.1.1.9 christos the feature introduced in ntp-4.2.8p6 allowing an optional 4th
5783 1.1.1.9 christos field in the ntp.keys file to specify which IPs can serve time,
5784 1.1.1.9 christos a malicious authenticated peer can create arbitrarily-many
5785 1.1.1.9 christos ephemeral associations in order to win the clock selection of
5786 1.1.1.9 christos ntpd and modify a victim's clock.
5787 1.1.1.9 christos Mitigation:
5788 1.1.1.9 christos Implement BCP-38.
5789 1.1.1.9 christos Use the 4th field in the ntp.keys file to specify which IPs
5790 1.1.1.9 christos can be time servers.
5791 1.1.1.9 christos Properly monitor your ntpd instances.
5792 1.1.1.9 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
5793 1.1.1.9 christos
5794 1.1.1.9 christos Other fixes:
5795 1.1.1.9 christos
5796 1.1.1.9 christos * [Bug 2831] Segmentation Fault in DNS lookup during startup. perlinger (a] ntp.org
5797 1.1.1.9 christos - fixed yet another race condition in the threaded resolver code.
5798 1.1.1.9 christos * [Bug 2858] bool support. Use stdbool.h when available. HStenn.
5799 1.1.1.9 christos * [Bug 2879] Improve NTP security against timing attacks. perlinger (a] ntp.org
5800 1.1.1.9 christos - integrated patches by Loganaden Velvidron <logan (a] ntp.org>
5801 1.1.1.9 christos with some modifications & unit tests
5802 1.1.1.9 christos * [Bug 2960] async name resolution fixes for chroot() environments.
5803 1.1.1.9 christos Reinhard Max.
5804 1.1.1.9 christos * [Bug 2994] Systems with HAVE_SIGNALED_IO fail to compile. perlinger (a] ntp.org
5805 1.1.1.9 christos * [Bug 2995] Fixes to compile on Windows
5806 1.1.1.9 christos * [Bug 2999] out-of-bounds access in 'is_safe_filename()'. perlinger (a] ntp.org
5807 1.1.1.9 christos * [Bug 3013] Fix for ssl_init.c SHA1 test. perlinger (a] ntp.org
5808 1.1.1.9 christos - Patch provided by Ch. Weisgerber
5809 1.1.1.9 christos * [Bug 3015] ntpq: config-from-file: "request contains an unprintable character"
5810 1.1.1.9 christos - A change related to [Bug 2853] forbids trailing white space in
5811 1.1.1.9 christos remote config commands. perlinger (a] ntp.org
5812 1.1.1.9 christos * [Bug 3019] NTPD stops processing packets after ERROR_HOST_UNREACHABLE
5813 1.1.1.9 christos - report and patch from Aleksandr Kostikov.
5814 1.1.1.9 christos - Overhaul of Windows IO completion port handling. perlinger (a] ntp.org
5815 1.1.1.9 christos * [Bug 3022] authkeys.c should be refactored. perlinger (a] ntp.org
5816 1.1.1.9 christos - fixed memory leak in access list (auth[read]keys.c)
5817 1.1.1.9 christos - refactored handling of key access lists (auth[read]keys.c)
5818 1.1.1.9 christos - reduced number of error branches (authreadkeys.c)
5819 1.1.1.9 christos * [Bug 3023] ntpdate cannot correct dates in the future. perlinger (a] ntp.org
5820 1.1.1.9 christos * [Bug 3030] ntpq needs a general way to specify refid output format. HStenn.
5821 1.1.1.9 christos * [Bug 3031] ntp broadcastclient unable to synchronize to an server
5822 1.1.1.9 christos when the time of server changed. perlinger (a] ntp.org
5823 1.1.1.9 christos - Check the initial delay calculation and reject/unpeer the broadcast
5824 1.1.1.9 christos server if the delay exceeds 50ms. Retry again after the next
5825 1.1.1.9 christos broadcast packet.
5826 1.1.1.9 christos * [Bug 3036] autokey trips an INSIST in authistrustedip(). Harlan Stenn.
5827 1.1.1.9 christos * Document ntp.key's optional IP list in authenetic.html. Harlan Stenn.
5828 1.1.1.9 christos * Update html/xleave.html documentation. Harlan Stenn.
5829 1.1.1.9 christos * Update ntp.conf documentation. Harlan Stenn.
5830 1.1.1.9 christos * Fix some Credit: attributions in the NEWS file. Harlan Stenn.
5831 1.1.1.9 christos * Fix typo in html/monopt.html. Harlan Stenn.
5832 1.1.1.9 christos * Add README.pullrequests. Harlan Stenn.
5833 1.1.1.9 christos * Cleanup to include/ntp.h. Harlan Stenn.
5834 1.1.1.9 christos
5835 1.1.1.9 christos New option to 'configure':
5836 1.1.1.9 christos
5837 1.1.1.9 christos While looking in to the issues around Bug 2978, the "interleave pivot"
5838 1.1.1.9 christos issue, it became clear that there are some intricate and unresolved
5839 1.1.1.9 christos issues with interleave operations. We also realized that the interleave
5840 1.1.1.9 christos protocol was never added to the NTPv4 Standard, and it should have been.
5841 1.1.1.9 christos
5842 1.1.1.9 christos Interleave mode was first released in July of 2008, and can be engaged
5843 1.1.1.9 christos in two ways. Any 'peer' and 'broadcast' lines in the ntp.conf file may
5844 1.1.1.9 christos contain the 'xleave' option, which will expressly enable interlave mode
5845 1.1.1.9 christos for that association. Additionally, if a time packet arrives and is
5846 1.1.1.9 christos found inconsistent with normal protocol behavior but has certain
5847 1.1.1.9 christos characteristics that are compatible with interleave mode, NTP will
5848 1.1.1.9 christos dynamically switch to interleave mode. With sufficient knowledge, an
5849 1.1.1.9 christos attacker can send a crafted forged packet to an NTP instance that
5850 1.1.1.9 christos triggers only one side to enter interleaved mode.
5851 1.1.1.9 christos
5852 1.1.1.9 christos To prevent this attack until we can thoroughly document, describe,
5853 1.1.1.9 christos fix, and test the dynamic interleave mode, we've added a new
5854 1.1.1.9 christos 'configure' option to the build process:
5855 1.1.1.9 christos
5856 1.1.1.9 christos --enable-dynamic-interleave
5857 1.1.1.9 christos
5858 1.1.1.9 christos This option controls whether or not NTP will, if conditions are right,
5859 1.1.1.9 christos engage dynamic interleave mode. Dynamic interleave mode is disabled by
5860 1.1.1.9 christos default in ntp-4.2.8p7.
5861 1.1.1.9 christos
5862 1.1.1.9 christos ---
5863 1.1.1.9 christos NTP 4.2.8p6 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/20)
5864 1.1.1.9 christos
5865 1.1.1.9 christos Focus: Security, Bug fixes, enhancements.
5866 1.1.1.9 christos
5867 1.1.1.9 christos Severity: MEDIUM
5868 1.1.1.9 christos
5869 1.1.1.9 christos In addition to bug fixes and enhancements, this release fixes the
5870 1.1.1.9 christos following 1 low- and 8 medium-severity vulnerabilities:
5871 1.1.1.9 christos
5872 1.1.1.9 christos * Potential Infinite Loop in 'ntpq'
5873 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
5874 1.1.1.9 christos References: Sec 2548 / CVE-2015-8158
5875 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5876 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5877 1.1.1.9 christos CVSS2: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
5878 1.1.1.9 christos CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM
5879 1.1.1.9 christos Summary: 'ntpq' processes incoming packets in a loop in 'getresponse()'.
5880 1.1.1.9 christos The loop's only stopping conditions are receiving a complete and
5881 1.1.1.9 christos correct response or hitting a small number of error conditions.
5882 1.1.1.9 christos If the packet contains incorrect values that don't trigger one of
5883 1.1.1.9 christos the error conditions, the loop continues to receive new packets.
5884 1.1.1.9 christos Note well, this is an attack against an instance of 'ntpq', not
5885 1.1.1.9 christos 'ntpd', and this attack requires the attacker to do one of the
5886 1.1.1.9 christos following:
5887 1.1.1.9 christos * Own a malicious NTP server that the client trusts
5888 1.1.1.9 christos * Prevent a legitimate NTP server from sending packets to
5889 1.1.1.9 christos the 'ntpq' client
5890 1.1.1.9 christos * MITM the 'ntpq' communications between the 'ntpq' client
5891 1.1.1.9 christos and the NTP server
5892 1.1.1.9 christos Mitigation:
5893 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
5894 1.1.1.9 christos or the NTP Public Services Project Download Page
5895 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
5896 1.1.1.9 christos
5897 1.1.1.9 christos * 0rigin: Zero Origin Timestamp Bypass
5898 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
5899 1.1.1.9 christos References: Sec 2945 / CVE-2015-8138
5900 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5901 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5902 1.1.1.9 christos CVSS2: (AV:N/AC:L/Au:N/C:N/I:P/A:N) Base Score: 5.0 - MEDIUM
5903 1.1.1.9 christos CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM
5904 1.1.1.9 christos (3.7 - LOW if you score AC:L)
5905 1.1.1.9 christos Summary: To distinguish legitimate peer responses from forgeries, a
5906 1.1.1.9 christos client attempts to verify a response packet by ensuring that the
5907 1.1.1.9 christos origin timestamp in the packet matches the origin timestamp it
5908 1.1.1.9 christos transmitted in its last request. A logic error exists that
5909 1.1.1.9 christos allows packets with an origin timestamp of zero to bypass this
5910 1.1.1.9 christos check whenever there is not an outstanding request to the server.
5911 1.1.1.9 christos Mitigation:
5912 1.1.1.9 christos Configure 'ntpd' to get time from multiple sources.
5913 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
5914 1.1.1.9 christos or the NTP Public Services Project Download Page.
5915 1.1.1.13 christos Monitor your 'ntpd' instances.
5916 1.1.1.9 christos Credit: This weakness was discovered by Matthey Van Gundy and
5917 1.1.1.9 christos Jonathan Gardner of Cisco ASIG.
5918 1.1.1.9 christos
5919 1.1.1.9 christos * Stack exhaustion in recursive traversal of restriction list
5920 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016
5921 1.1.1.9 christos References: Sec 2940 / CVE-2015-7978
5922 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5923 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5924 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
5925 1.1.1.9 christos Summary: An unauthenticated 'ntpdc reslist' command can cause a
5926 1.1.1.9 christos segmentation fault in ntpd by exhausting the call stack.
5927 1.1.1.9 christos Mitigation:
5928 1.1.1.9 christos Implement BCP-38.
5929 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
5930 1.1.1.9 christos or the NTP Public Services Project Download Page.
5931 1.1.1.9 christos If you are unable to upgrade:
5932 1.1.1.9 christos In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
5933 1.1.1.9 christos If you must enable mode 7:
5934 1.1.1.9 christos configure the use of a 'requestkey' to control who can
5935 1.1.1.9 christos issue mode 7 requests.
5936 1.1.1.9 christos configure 'restrict noquery' to further limit mode 7
5937 1.1.1.9 christos requests to trusted sources.
5938 1.1.1.9 christos Monitor your ntpd instances.
5939 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray at Cisco ASIG.
5940 1.1.1.9 christos
5941 1.1.1.9 christos * Off-path Denial of Service (!DoS) attack on authenticated broadcast mode
5942 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
5943 1.1.1.9 christos References: Sec 2942 / CVE-2015-7979
5944 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5945 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5946 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:P/A:P) Base Score: 5.8
5947 1.1.1.9 christos Summary: An off-path attacker can send broadcast packets with bad
5948 1.1.1.9 christos authentication (wrong key, mismatched key, incorrect MAC, etc)
5949 1.1.1.9 christos to broadcast clients. It is observed that the broadcast client
5950 1.1.1.9 christos tears down the association with the broadcast server upon
5951 1.1.1.9 christos receiving just one bad packet.
5952 1.1.1.9 christos Mitigation:
5953 1.1.1.9 christos Implement BCP-38.
5954 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
5955 1.1.1.9 christos or the NTP Public Services Project Download Page.
5956 1.1.1.9 christos Monitor your 'ntpd' instances.
5957 1.1.1.9 christos If this sort of attack is an active problem for you, you have
5958 1.1.1.9 christos deeper problems to investigate. In this case also consider
5959 1.1.1.9 christos having smaller NTP broadcast domains.
5960 1.1.1.9 christos Credit: This weakness was discovered by Aanchal Malhotra of Boston
5961 1.1.1.9 christos University.
5962 1.1.1.9 christos
5963 1.1.1.9 christos * reslist NULL pointer dereference
5964 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
5965 1.1.1.9 christos References: Sec 2939 / CVE-2015-7977
5966 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5967 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5968 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
5969 1.1.1.9 christos Summary: An unauthenticated 'ntpdc reslist' command can cause a
5970 1.1.1.9 christos segmentation fault in ntpd by causing a NULL pointer dereference.
5971 1.1.1.9 christos Mitigation:
5972 1.1.1.9 christos Implement BCP-38.
5973 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from NTP Project Download Page or
5974 1.1.1.9 christos the NTP Public Services Project Download Page.
5975 1.1.1.9 christos If you are unable to upgrade:
5976 1.1.1.9 christos mode 7 is disabled by default. Don't enable it.
5977 1.1.1.9 christos If you must enable mode 7:
5978 1.1.1.9 christos configure the use of a 'requestkey' to control who can
5979 1.1.1.9 christos issue mode 7 requests.
5980 1.1.1.9 christos configure 'restrict noquery' to further limit mode 7
5981 1.1.1.9 christos requests to trusted sources.
5982 1.1.1.9 christos Monitor your ntpd instances.
5983 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray of Cisco ASIG.
5984 1.1.1.9 christos
5985 1.1.1.9 christos * 'ntpq saveconfig' command allows dangerous characters in filenames.
5986 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
5987 1.1.1.9 christos References: Sec 2938 / CVE-2015-7976
5988 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
5989 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
5990 1.1.1.9 christos CVSS: (AV:N/AC:L/Au:S/C:N/I:P/A:N) Base Score: 4.0 - MEDIUM
5991 1.1.1.9 christos Summary: The ntpq saveconfig command does not do adequate filtering
5992 1.1.1.9 christos of special characters from the supplied filename.
5993 1.1.1.9 christos Note well: The ability to use the saveconfig command is controlled
5994 1.1.1.9 christos by the 'restrict nomodify' directive, and the recommended default
5995 1.1.1.9 christos configuration is to disable this capability. If the ability to
5996 1.1.1.9 christos execute a 'saveconfig' is required, it can easily (and should) be
5997 1.1.1.9 christos limited and restricted to a known small number of IP addresses.
5998 1.1.1.9 christos Mitigation:
5999 1.1.1.9 christos Implement BCP-38.
6000 1.1.1.9 christos use 'restrict default nomodify' in your 'ntp.conf' file.
6001 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page.
6002 1.1.1.9 christos If you are unable to upgrade:
6003 1.1.1.9 christos build NTP with 'configure --disable-saveconfig' if you will
6004 1.1.1.9 christos never need this capability, or
6005 1.1.1.9 christos use 'restrict default nomodify' in your 'ntp.conf' file. Be
6006 1.1.1.9 christos careful about what IPs have the ability to send 'modify'
6007 1.1.1.9 christos requests to 'ntpd'.
6008 1.1.1.9 christos Monitor your ntpd instances.
6009 1.1.1.9 christos 'saveconfig' requests are logged to syslog - monitor your syslog files.
6010 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
6011 1.1.1.9 christos
6012 1.1.1.9 christos * nextvar() missing length check in ntpq
6013 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
6014 1.1.1.9 christos References: Sec 2937 / CVE-2015-7975
6015 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
6016 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
6017 1.1.1.9 christos CVSS: (AV:L/AC:H/Au:N/C:N/I:N/A:P) Base Score: 1.2 - LOW
6018 1.1.1.9 christos If you score A:C, this becomes 4.0.
6019 1.1.1.9 christos CVSSv3: (CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L) Base Score 2.9, LOW
6020 1.1.1.9 christos Summary: ntpq may call nextvar() which executes a memcpy() into the
6021 1.1.1.9 christos name buffer without a proper length check against its maximum
6022 1.1.1.9 christos length of 256 bytes. Note well that we're taking about ntpq here.
6023 1.1.1.9 christos The usual worst-case effect of this vulnerability is that the
6024 1.1.1.9 christos specific instance of ntpq will crash and the person or process
6025 1.1.1.9 christos that did this will have stopped themselves.
6026 1.1.1.9 christos Mitigation:
6027 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
6028 1.1.1.9 christos or the NTP Public Services Project Download Page.
6029 1.1.1.9 christos If you are unable to upgrade:
6030 1.1.1.9 christos If you have scripts that feed input to ntpq make sure there are
6031 1.1.1.9 christos some sanity checks on the input received from the "outside".
6032 1.1.1.9 christos This is potentially more dangerous if ntpq is run as root.
6033 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner at Cisco ASIG.
6034 1.1.1.9 christos
6035 1.1.1.9 christos * Skeleton Key: Any trusted key system can serve time
6036 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
6037 1.1.1.9 christos References: Sec 2936 / CVE-2015-7974
6038 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
6039 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
6040 1.1.1.9 christos CVSS: (AV:N/AC:H/Au:S/C:N/I:C/A:N) Base Score: 4.9
6041 1.1.1.9 christos Summary: Symmetric key encryption uses a shared trusted key. The
6042 1.1.1.9 christos reported title for this issue was "Missing key check allows
6043 1.1.1.9 christos impersonation between authenticated peers" and the report claimed
6044 1.1.1.9 christos "A key specified only for one server should only work to
6045 1.1.1.9 christos authenticate that server, other trusted keys should be refused."
6046 1.1.1.9 christos Except there has never been any correlation between this trusted
6047 1.1.1.9 christos key and server v. clients machines and there has never been any
6048 1.1.1.9 christos way to specify a key only for one server. We have treated this as
6049 1.1.1.9 christos an enhancement request, and ntp-4.2.8p6 includes other checks and
6050 1.1.1.9 christos tests to strengthen clients against attacks coming from broadcast
6051 1.1.1.9 christos servers.
6052 1.1.1.9 christos Mitigation:
6053 1.1.1.9 christos Implement BCP-38.
6054 1.1.1.9 christos If this scenario represents a real or a potential issue for you,
6055 1.1.1.9 christos upgrade to 4.2.8p6, or later, from the NTP Project Download
6056 1.1.1.9 christos Page or the NTP Public Services Project Download Page, and
6057 1.1.1.9 christos use the new field in the ntp.keys file that specifies the list
6058 1.1.1.9 christos of IPs that are allowed to serve time. Note that this alone
6059 1.1.1.9 christos will not protect against time packets with forged source IP
6060 1.1.1.9 christos addresses, however other changes in ntp-4.2.8p6 provide
6061 1.1.1.9 christos significant mitigation against broadcast attacks. MITM attacks
6062 1.1.1.9 christos are a different story.
6063 1.1.1.9 christos If you are unable to upgrade:
6064 1.1.1.9 christos Don't use broadcast mode if you cannot monitor your client
6065 1.1.1.9 christos servers.
6066 1.1.1.9 christos If you choose to use symmetric keys to authenticate time
6067 1.1.1.9 christos packets in a hostile environment where ephemeral time
6068 1.1.1.9 christos servers can be created, or if it is expected that malicious
6069 1.1.1.9 christos time servers will participate in an NTP broadcast domain,
6070 1.1.1.9 christos limit the number of participating systems that participate
6071 1.1.1.9 christos in the shared-key group.
6072 1.1.1.9 christos Monitor your ntpd instances.
6073 1.1.1.9 christos Credit: This weakness was discovered by Matt Street of Cisco ASIG.
6074 1.1.1.9 christos
6075 1.1.1.9 christos * Deja Vu: Replay attack on authenticated broadcast mode
6076 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
6077 1.1.1.9 christos References: Sec 2935 / CVE-2015-7973
6078 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
6079 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
6080 1.1.1.9 christos CVSS: (AV:A/AC:M/Au:N/C:N/I:P/A:P) Base Score: 4.3 - MEDIUM
6081 1.1.1.9 christos Summary: If an NTP network is configured for broadcast operations then
6082 1.1.1.9 christos either a man-in-the-middle attacker or a malicious participant
6083 1.1.1.9 christos that has the same trusted keys as the victim can replay time packets.
6084 1.1.1.9 christos Mitigation:
6085 1.1.1.9 christos Implement BCP-38.
6086 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
6087 1.1.1.9 christos or the NTP Public Services Project Download Page.
6088 1.1.1.9 christos If you are unable to upgrade:
6089 1.1.1.9 christos Don't use broadcast mode if you cannot monitor your client servers.
6090 1.1.1.9 christos Monitor your ntpd instances.
6091 1.1.1.9 christos Credit: This weakness was discovered by Aanchal Malhotra of Boston
6092 1.1.1.9 christos University.
6093 1.1.1.9 christos
6094 1.1.1.9 christos Other fixes:
6095 1.1.1.9 christos
6096 1.1.1.9 christos * [Bug 2772] adj_systime overflows tv_usec. perlinger (a] ntp.org
6097 1.1.1.9 christos * [Bug 2814] msyslog deadlock when signaled. perlinger (a] ntp.org
6098 1.1.1.9 christos - applied patch by shenpeng11 (a] huawei.com with minor adjustments
6099 1.1.1.9 christos * [Bug 2882] Look at ntp_request.c:list_peers_sum(). perlinger (a] ntp.org
6100 1.1.1.9 christos * [Bug 2891] Deadlock in deferred DNS lookup framework. perlinger (a] ntp.org
6101 1.1.1.9 christos * [Bug 2892] Several test cases assume IPv6 capabilities even when
6102 1.1.1.9 christos IPv6 is disabled in the build. perlinger (a] ntp.org
6103 1.1.1.9 christos - Found this already fixed, but validation led to cleanup actions.
6104 1.1.1.9 christos * [Bug 2905] DNS lookups broken. perlinger (a] ntp.org
6105 1.1.1.9 christos - added limits to stack consumption, fixed some return code handling
6106 1.1.1.9 christos * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
6107 1.1.1.9 christos - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
6108 1.1.1.9 christos - make CTRL-C work for retrieval and printing od MRU list. perlinger (a] ntp.org
6109 1.1.1.9 christos * [Bug 2980] reduce number of warnings. perlinger (a] ntp.org
6110 1.1.1.9 christos - integrated several patches from Havard Eidnes (he (a] uninett.no)
6111 1.1.1.9 christos * [Bug 2985] bogus calculation in authkeys.c perlinger (a] ntp.org
6112 1.1.1.9 christos - implement 'auth_log2()' using integer bithack instead of float calculation
6113 1.1.1.9 christos * Make leapsec_query debug messages less verbose. Harlan Stenn.
6114 1.1.1.9 christos
6115 1.1.1.9 christos ---
6116 1.1.1.9 christos NTP 4.2.8p5 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/07)
6117 1.1.1.8 christos
6118 1.1.1.8 christos Focus: Security, Bug fixes, enhancements.
6119 1.1.1.8 christos
6120 1.1.1.8 christos Severity: MEDIUM
6121 1.1.1.8 christos
6122 1.1.1.8 christos In addition to bug fixes and enhancements, this release fixes the
6123 1.1.1.8 christos following medium-severity vulnerability:
6124 1.1.1.8 christos
6125 1.1.1.8 christos * Small-step/big-step. Close the panic gate earlier.
6126 1.1.1.8 christos References: Sec 2956, CVE-2015-5300
6127 1.1.1.8 christos Affects: All ntp-4 releases up to, but not including 4.2.8p5, and
6128 1.1.1.8 christos 4.3.0 up to, but not including 4.3.78
6129 1.1.1.8 christos CVSS3: (AV:N/AC:H/PR:H/UI:R/S:C/C:L/I:N/A:L) Base Score: 4.0, MEDIUM
6130 1.1.1.8 christos Summary: If ntpd is always started with the -g option, which is
6131 1.1.1.8 christos common and against long-standing recommendation, and if at the
6132 1.1.1.8 christos moment ntpd is restarted an attacker can immediately respond to
6133 1.1.1.8 christos enough requests from enough sources trusted by the target, which
6134 1.1.1.8 christos is difficult and not common, there is a window of opportunity
6135 1.1.1.8 christos where the attacker can cause ntpd to set the time to an
6136 1.1.1.8 christos arbitrary value. Similarly, if an attacker is able to respond
6137 1.1.1.8 christos to enough requests from enough sources trusted by the target,
6138 1.1.1.8 christos the attacker can cause ntpd to abort and restart, at which
6139 1.1.1.8 christos point it can tell the target to set the time to an arbitrary
6140 1.1.1.8 christos value if and only if ntpd was re-started against long-standing
6141 1.1.1.8 christos recommendation with the -g flag, or if ntpd was not given the
6142 1.1.1.8 christos -g flag, the attacker can move the target system's time by at
6143 1.1.1.8 christos most 900 seconds' time per attack.
6144 1.1.1.8 christos Mitigation:
6145 1.1.1.8 christos Configure ntpd to get time from multiple sources.
6146 1.1.1.8 christos Upgrade to 4.2.8p5, or later, from the NTP Project Download
6147 1.1.1.8 christos Page or the NTP Public Services Project Download Page
6148 1.1.1.8 christos As we've long documented, only use the -g option to ntpd in
6149 1.1.1.8 christos cold-start situations.
6150 1.1.1.8 christos Monitor your ntpd instances.
6151 1.1.1.8 christos Credit: This weakness was discovered by Aanchal Malhotra,
6152 1.1.1.8 christos Isaac E. Cohen, and Sharon Goldberg at Boston University.
6153 1.1.1.8 christos
6154 1.1.1.8 christos NOTE WELL: The -g flag disables the limit check on the panic_gate
6155 1.1.1.8 christos in ntpd, which is 900 seconds by default. The bug identified by
6156 1.1.1.8 christos the researchers at Boston University is that the panic_gate
6157 1.1.1.8 christos check was only re-enabled after the first change to the system
6158 1.1.1.8 christos clock that was greater than 128 milliseconds, by default. The
6159 1.1.1.8 christos correct behavior is that the panic_gate check should be
6160 1.1.1.8 christos re-enabled after any initial time correction.
6161 1.1.1.8 christos
6162 1.1.1.8 christos If an attacker is able to inject consistent but erroneous time
6163 1.1.1.8 christos responses to your systems via the network or "over the air",
6164 1.1.1.8 christos perhaps by spoofing radio, cellphone, or navigation satellite
6165 1.1.1.8 christos transmissions, they are in a great position to affect your
6166 1.1.1.8 christos system's clock. There comes a point where your very best
6167 1.1.1.8 christos defenses include:
6168 1.1.1.8 christos
6169 1.1.1.8 christos Configure ntpd to get time from multiple sources.
6170 1.1.1.8 christos Monitor your ntpd instances.
6171 1.1.1.8 christos
6172 1.1.1.8 christos Other fixes:
6173 1.1.1.8 christos
6174 1.1.1.8 christos * Coverity submission process updated from Coverity 5 to Coverity 7.
6175 1.1.1.8 christos The NTP codebase has been undergoing regular Coverity scans on an
6176 1.1.1.8 christos ongoing basis since 2006. As part of our recent upgrade from
6177 1.1.1.8 christos Coverity 5 to Coverity 7, Coverity identified 16 nits in some of
6178 1.1.1.8 christos the newly-written Unity test programs. These were fixed.
6179 1.1.1.9 christos * [Bug 2829] Clean up pipe_fds in ntpd.c perlinger (a] ntp.org
6180 1.1.1.8 christos * [Bug 2887] stratum -1 config results as showing value 99
6181 1.1.1.8 christos - fudge stratum should only accept values [0..16]. perlinger (a] ntp.org
6182 1.1.1.8 christos * [Bug 2932] Update leapsecond file info in miscopt.html. CWoodbury, HStenn.
6183 1.1.1.8 christos * [Bug 2934] tests/ntpd/t-ntp_scanner.c has a magic constant wired in. HMurray
6184 1.1.1.8 christos * [Bug 2944] errno is not preserved properly in ntpdate after sendto call.
6185 1.1.1.8 christos - applied patch by Christos Zoulas. perlinger (a] ntp.org
6186 1.1.1.8 christos * [Bug 2952] Peer associations broken by fix for Bug 2901/CVE-2015-7704.
6187 1.1.1.9 christos * [Bug 2954] Version 4.2.8p4 crashes on startup on some OSes.
6188 1.1.1.8 christos - fixed data race conditions in threaded DNS worker. perlinger (a] ntp.org
6189 1.1.1.8 christos - limit threading warm-up to linux; FreeBSD bombs on it. perlinger (a] ntp.org
6190 1.1.1.8 christos * [Bug 2957] 'unsigned int' vs 'size_t' format clash. perlinger (a] ntp.org
6191 1.1.1.8 christos - accept key file only if there are no parsing errors
6192 1.1.1.8 christos - fixed size_t/u_int format clash
6193 1.1.1.8 christos - fixed wrong use of 'strlcpy'
6194 1.1.1.8 christos * [Bug 2958] ntpq: fatal error messages need a final newline. Craig Leres.
6195 1.1.1.8 christos * [Bug 2962] truncation of size_t/ptrdiff_t on 64bit targets. perlinger (a] ntp.org
6196 1.1.1.8 christos - fixed several other warnings (cast-alignment, missing const, missing prototypes)
6197 1.1.1.8 christos - promote use of 'size_t' for values that express a size
6198 1.1.1.8 christos - use ptr-to-const for read-only arguments
6199 1.1.1.8 christos - make sure SOCKET values are not truncated (win32-specific)
6200 1.1.1.8 christos - format string fixes
6201 1.1.1.8 christos * [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki.
6202 1.1.1.8 christos * [Bug 2967] ntpdate command suffers an assertion failure
6203 1.1.1.8 christos - fixed ntp_rfc2553.c to return proper address length. perlinger (a] ntp.org
6204 1.1.1.8 christos * [Bug 2969] Seg fault from ntpq/mrulist when looking at server with
6205 1.1.1.8 christos lots of clients. perlinger (a] ntp.org
6206 1.1.1.8 christos * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
6207 1.1.1.8 christos - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
6208 1.1.1.8 christos * Unity cleanup for FreeBSD-6.4. Harlan Stenn.
6209 1.1.1.8 christos * Unity test cleanup. Harlan Stenn.
6210 1.1.1.8 christos * Libevent autoconf pthread fixes for FreeBSD-10. Harlan Stenn.
6211 1.1.1.8 christos * Header cleanup in tests/sandbox/uglydate.c. Harlan Stenn.
6212 1.1.1.8 christos * Header cleanup in tests/libntp/sfptostr.c. Harlan Stenn.
6213 1.1.1.8 christos * Quiet a warning from clang. Harlan Stenn.
6214 1.1.1.8 christos
6215 1.1.1.8 christos ---
6216 1.1.1.9 christos NTP 4.2.8p4 (Harlan Stenn <stenn (a] ntp.org>, 2015/10/21)
6217 1.1.1.7 christos
6218 1.1.1.8 christos Focus: Security, Bug fixes, enhancements.
6219 1.1.1.7 christos
6220 1.1.1.7 christos Severity: MEDIUM
6221 1.1.1.7 christos
6222 1.1.1.7 christos In addition to bug fixes and enhancements, this release fixes the
6223 1.1.1.7 christos following 13 low- and medium-severity vulnerabilities:
6224 1.1.1.7 christos
6225 1.1.1.7 christos * Incomplete vallen (value length) checks in ntp_crypto.c, leading
6226 1.1.1.7 christos to potential crashes or potential code injection/information leakage.
6227 1.1.1.7 christos
6228 1.1.1.7 christos References: Sec 2899, Sec 2671, CVE-2015-7691, CVE-2015-7692, CVE-2015-7702
6229 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
6230 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6231 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
6232 1.1.1.7 christos Summary: The fix for CVE-2014-9750 was incomplete in that there were
6233 1.1.1.7 christos certain code paths where a packet with particular autokey operations
6234 1.1.1.7 christos that contained malicious data was not always being completely
6235 1.1.1.7 christos validated. Receipt of these packets can cause ntpd to crash.
6236 1.1.1.7 christos Mitigation:
6237 1.1.1.7 christos Don't use autokey.
6238 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6239 1.1.1.7 christos Page or the NTP Public Services Project Download Page
6240 1.1.1.7 christos Monitor your ntpd instances.
6241 1.1.1.7 christos Credit: This weakness was discovered by Tenable Network Security.
6242 1.1.1.7 christos
6243 1.1.1.7 christos * Clients that receive a KoD should validate the origin timestamp field.
6244 1.1.1.7 christos
6245 1.1.1.7 christos References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
6246 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
6247 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6248 1.1.1.7 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3-5.0 at worst
6249 1.1.1.7 christos Summary: An ntpd client that honors Kiss-of-Death responses will honor
6250 1.1.1.7 christos KoD messages that have been forged by an attacker, causing it to
6251 1.1.1.7 christos delay or stop querying its servers for time updates. Also, an
6252 1.1.1.7 christos attacker can forge packets that claim to be from the target and
6253 1.1.1.7 christos send them to servers often enough that a server that implements
6254 1.1.1.7 christos KoD rate limiting will send the target machine a KoD response to
6255 1.1.1.7 christos attempt to reduce the rate of incoming packets, or it may also
6256 1.1.1.7 christos trigger a firewall block at the server for packets from the target
6257 1.1.1.7 christos machine. For either of these attacks to succeed, the attacker must
6258 1.1.1.7 christos know what servers the target is communicating with. An attacker
6259 1.1.1.7 christos can be anywhere on the Internet and can frequently learn the
6260 1.1.1.7 christos identity of the target's time source by sending the target a
6261 1.1.1.7 christos time query.
6262 1.1.1.7 christos Mitigation:
6263 1.1.1.7 christos Implement BCP-38.
6264 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download Page
6265 1.1.1.7 christos or the NTP Public Services Project Download Page
6266 1.1.1.7 christos If you can't upgrade, restrict who can query ntpd to learn who
6267 1.1.1.7 christos its servers are, and what IPs are allowed to ask your system
6268 1.1.1.7 christos for the time. This mitigation is heavy-handed.
6269 1.1.1.7 christos Monitor your ntpd instances.
6270 1.1.1.7 christos Note:
6271 1.1.1.7 christos 4.2.8p4 protects against the first attack. For the second attack,
6272 1.1.1.7 christos all we can do is warn when it is happening, which we do in 4.2.8p4.
6273 1.1.1.7 christos Credit: This weakness was discovered by Aanchal Malhotra,
6274 1.1.1.7 christos Issac E. Cohen, and Sharon Goldberg of Boston University.
6275 1.1.1.7 christos
6276 1.1.1.7 christos * configuration directives to change "pidfile" and "driftfile" should
6277 1.1.1.7 christos only be allowed locally.
6278 1.1.1.7 christos
6279 1.1.1.7 christos References: Sec 2902 / CVE-2015-5196
6280 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
6281 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6282 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.2 worst case
6283 1.1.1.7 christos Summary: If ntpd is configured to allow for remote configuration,
6284 1.1.1.7 christos and if the (possibly spoofed) source IP address is allowed to
6285 1.1.1.7 christos send remote configuration requests, and if the attacker knows
6286 1.1.1.7 christos the remote configuration password, it's possible for an attacker
6287 1.1.1.7 christos to use the "pidfile" or "driftfile" directives to potentially
6288 1.1.1.7 christos overwrite other files.
6289 1.1.1.7 christos Mitigation:
6290 1.1.1.7 christos Implement BCP-38.
6291 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6292 1.1.1.7 christos Page or the NTP Public Services Project Download Page
6293 1.1.1.7 christos If you cannot upgrade, don't enable remote configuration.
6294 1.1.1.7 christos If you must enable remote configuration and cannot upgrade,
6295 1.1.1.7 christos remote configuration of NTF's ntpd requires:
6296 1.1.1.7 christos - an explicitly configured trustedkey, and you should also
6297 1.1.1.7 christos configure a controlkey.
6298 1.1.1.7 christos - access from a permitted IP. You choose the IPs.
6299 1.1.1.7 christos - authentication. Don't disable it. Practice secure key safety.
6300 1.1.1.7 christos Monitor your ntpd instances.
6301 1.1.1.7 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
6302 1.1.1.7 christos
6303 1.1.1.7 christos * Slow memory leak in CRYPTO_ASSOC
6304 1.1.1.7 christos
6305 1.1.1.7 christos References: Sec 2909 / CVE-2015-7701
6306 1.1.1.7 christos Affects: All ntp-4 releases that use autokey up to, but not
6307 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
6308 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 0.0 best/usual case,
6309 1.1.1.7 christos 4.6 otherwise
6310 1.1.1.7 christos Summary: If ntpd is configured to use autokey, then an attacker can
6311 1.1.1.7 christos send packets to ntpd that will, after several days of ongoing
6312 1.1.1.7 christos attack, cause it to run out of memory.
6313 1.1.1.7 christos Mitigation:
6314 1.1.1.7 christos Don't use autokey.
6315 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6316 1.1.1.7 christos Page or the NTP Public Services Project Download Page
6317 1.1.1.7 christos Monitor your ntpd instances.
6318 1.1.1.7 christos Credit: This weakness was discovered by Tenable Network Security.
6319 1.1.1.7 christos
6320 1.1.1.7 christos * mode 7 loop counter underrun
6321 1.1.1.7 christos
6322 1.1.1.7 christos References: Sec 2913 / CVE-2015-7848 / TALOS-CAN-0052
6323 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
6324 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6325 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
6326 1.1.1.7 christos Summary: If ntpd is configured to enable mode 7 packets, and if the
6327 1.1.1.7 christos use of mode 7 packets is not properly protected thru the use of
6328 1.1.1.7 christos the available mode 7 authentication and restriction mechanisms,
6329 1.1.1.7 christos and if the (possibly spoofed) source IP address is allowed to
6330 1.1.1.7 christos send mode 7 queries, then an attacker can send a crafted packet
6331 1.1.1.7 christos to ntpd that will cause it to crash.
6332 1.1.1.7 christos Mitigation:
6333 1.1.1.7 christos Implement BCP-38.
6334 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6335 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6336 1.1.1.7 christos If you are unable to upgrade:
6337 1.1.1.7 christos In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
6338 1.1.1.7 christos If you must enable mode 7:
6339 1.1.1.7 christos configure the use of a requestkey to control who can issue
6340 1.1.1.7 christos mode 7 requests.
6341 1.1.1.7 christos configure restrict noquery to further limit mode 7 requests
6342 1.1.1.7 christos to trusted sources.
6343 1.1.1.7 christos Monitor your ntpd instances.
6344 1.1.1.7 christos Credit: This weakness was discovered by Aleksandar Nikolic of Cisco Talos.
6345 1.1.1.7 christos
6346 1.1.1.7 christos * memory corruption in password store
6347 1.1.1.7 christos
6348 1.1.1.7 christos References: Sec 2916 / CVE-2015-7849 / TALOS-CAN-0054
6349 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
6350 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.8, worst case
6351 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
6352 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
6353 1.1.1.7 christos remote configuration requests, and if the attacker knows the
6354 1.1.1.7 christos remote configuration password or if ntpd was configured to
6355 1.1.1.7 christos disable authentication, then an attacker can send a set of
6356 1.1.1.7 christos packets to ntpd that may cause a crash or theoretically
6357 1.1.1.7 christos perform a code injection attack.
6358 1.1.1.7 christos Mitigation:
6359 1.1.1.7 christos Implement BCP-38.
6360 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6361 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6362 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's
6363 1.1.1.7 christos ntpd requires:
6364 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
6365 1.1.1.7 christos this if you need it.
6366 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
6367 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
6368 1.1.1.7 christos Monitor your ntpd instances.
6369 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
6370 1.1.1.7 christos
6371 1.1.1.7 christos * Infinite loop if extended logging enabled and the logfile and
6372 1.1.1.7 christos keyfile are the same.
6373 1.1.1.7 christos
6374 1.1.1.7 christos References: Sec 2917 / CVE-2015-7850 / TALOS-CAN-0055
6375 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
6376 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6377 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
6378 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
6379 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
6380 1.1.1.7 christos remote configuration requests, and if the attacker knows the
6381 1.1.1.7 christos remote configuration password or if ntpd was configured to
6382 1.1.1.7 christos disable authentication, then an attacker can send a set of
6383 1.1.1.7 christos packets to ntpd that will cause it to crash and/or create a
6384 1.1.1.7 christos potentially huge log file. Specifically, the attacker could
6385 1.1.1.7 christos enable extended logging, point the key file at the log file,
6386 1.1.1.7 christos and cause what amounts to an infinite loop.
6387 1.1.1.7 christos Mitigation:
6388 1.1.1.7 christos Implement BCP-38.
6389 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6390 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6391 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's ntpd
6392 1.1.1.7 christos requires:
6393 1.1.1.7 christos an explicitly configured "trusted" key. Only configure this
6394 1.1.1.7 christos if you need it.
6395 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
6396 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
6397 1.1.1.7 christos Monitor your ntpd instances.
6398 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
6399 1.1.1.7 christos
6400 1.1.1.7 christos * Potential path traversal vulnerability in the config file saving of
6401 1.1.1.7 christos ntpd on VMS.
6402 1.1.1.7 christos
6403 1.1.1.7 christos References: Sec 2918 / CVE-2015-7851 / TALOS-CAN-0062
6404 1.1.1.7 christos Affects: All ntp-4 releases running under VMS up to, but not
6405 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
6406 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:P/A:C) Base Score: 5.2, worst case
6407 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
6408 1.1.1.7 christos the (possibly spoofed) IP address is allowed to send remote
6409 1.1.1.7 christos configuration requests, and if the attacker knows the remote
6410 1.1.1.7 christos configuration password or if ntpd was configured to disable
6411 1.1.1.7 christos authentication, then an attacker can send a set of packets to
6412 1.1.1.7 christos ntpd that may cause ntpd to overwrite files.
6413 1.1.1.7 christos Mitigation:
6414 1.1.1.7 christos Implement BCP-38.
6415 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6416 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6417 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's ntpd
6418 1.1.1.7 christos requires:
6419 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
6420 1.1.1.7 christos this if you need it.
6421 1.1.1.7 christos access from permitted IP addresses. You choose the IPs.
6422 1.1.1.7 christos authentication. Don't disable it. Practice key security safety.
6423 1.1.1.7 christos Monitor your ntpd instances.
6424 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
6425 1.1.1.7 christos
6426 1.1.1.7 christos * ntpq atoascii() potential memory corruption
6427 1.1.1.7 christos
6428 1.1.1.7 christos References: Sec 2919 / CVE-2015-7852 / TALOS-CAN-0063
6429 1.1.1.7 christos Affects: All ntp-4 releases running up to, but not including 4.2.8p4,
6430 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
6431 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:N/C:N/I:P/A:P) Base Score: 4.0, worst case
6432 1.1.1.7 christos Summary: If an attacker can figure out the precise moment that ntpq
6433 1.1.1.7 christos is listening for data and the port number it is listening on or
6434 1.1.1.7 christos if the attacker can provide a malicious instance ntpd that
6435 1.1.1.7 christos victims will connect to then an attacker can send a set of
6436 1.1.1.7 christos crafted mode 6 response packets that, if received by ntpq,
6437 1.1.1.7 christos can cause ntpq to crash.
6438 1.1.1.7 christos Mitigation:
6439 1.1.1.7 christos Implement BCP-38.
6440 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6441 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6442 1.1.1.7 christos If you are unable to upgrade and you run ntpq against a server
6443 1.1.1.7 christos and ntpq crashes, try again using raw mode. Build or get a
6444 1.1.1.7 christos patched ntpq and see if that fixes the problem. Report new
6445 1.1.1.7 christos bugs in ntpq or abusive servers appropriately.
6446 1.1.1.7 christos If you use ntpq in scripts, make sure ntpq does what you expect
6447 1.1.1.7 christos in your scripts.
6448 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan and
6449 1.1.1.7 christos Aleksander Nikolich of Cisco Talos.
6450 1.1.1.7 christos
6451 1.1.1.7 christos * Invalid length data provided by a custom refclock driver could cause
6452 1.1.1.7 christos a buffer overflow.
6453 1.1.1.7 christos
6454 1.1.1.7 christos References: Sec 2920 / CVE-2015-7853 / TALOS-CAN-0064
6455 1.1.1.7 christos Affects: Potentially all ntp-4 releases running up to, but not
6456 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
6457 1.1.1.7 christos that have custom refclocks
6458 1.1.1.7 christos CVSS: (AV:L/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 usual case,
6459 1.1.1.7 christos 5.9 unusual worst case
6460 1.1.1.7 christos Summary: A negative value for the datalen parameter will overflow a
6461 1.1.1.7 christos data buffer. NTF's ntpd driver implementations always set this
6462 1.1.1.7 christos value to 0 and are therefore not vulnerable to this weakness.
6463 1.1.1.7 christos If you are running a custom refclock driver in ntpd and that
6464 1.1.1.7 christos driver supplies a negative value for datalen (no custom driver
6465 1.1.1.7 christos of even minimal competence would do this) then ntpd would
6466 1.1.1.7 christos overflow a data buffer. It is even hypothetically possible
6467 1.1.1.7 christos in this case that instead of simply crashing ntpd the attacker
6468 1.1.1.7 christos could effect a code injection attack.
6469 1.1.1.7 christos Mitigation:
6470 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6471 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6472 1.1.1.7 christos If you are unable to upgrade:
6473 1.1.1.7 christos If you are running custom refclock drivers, make sure
6474 1.1.1.7 christos the signed datalen value is either zero or positive.
6475 1.1.1.7 christos Monitor your ntpd instances.
6476 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
6477 1.1.1.7 christos
6478 1.1.1.7 christos * Password Length Memory Corruption Vulnerability
6479 1.1.1.7 christos
6480 1.1.1.7 christos References: Sec 2921 / CVE-2015-7854 / TALOS-CAN-0065
6481 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
6482 1.1.1.7 christos 4.3.0 up to, but not including 4.3.77
6483 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 best case,
6484 1.1.1.7 christos 1.7 usual case, 6.8, worst case
6485 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
6486 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
6487 1.1.1.7 christos remote configuration requests, and if the attacker knows the
6488 1.1.1.7 christos remote configuration password or if ntpd was (foolishly)
6489 1.1.1.7 christos configured to disable authentication, then an attacker can
6490 1.1.1.7 christos send a set of packets to ntpd that may cause it to crash,
6491 1.1.1.7 christos with the hypothetical possibility of a small code injection.
6492 1.1.1.7 christos Mitigation:
6493 1.1.1.7 christos Implement BCP-38.
6494 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6495 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6496 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's
6497 1.1.1.7 christos ntpd requires:
6498 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
6499 1.1.1.7 christos this if you need it.
6500 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
6501 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
6502 1.1.1.7 christos Monitor your ntpd instances.
6503 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan and
6504 1.1.1.7 christos Aleksander Nikolich of Cisco Talos.
6505 1.1.1.7 christos
6506 1.1.1.7 christos * decodenetnum() will ASSERT botch instead of returning FAIL on some
6507 1.1.1.7 christos bogus values.
6508 1.1.1.7 christos
6509 1.1.1.7 christos References: Sec 2922 / CVE-2015-7855
6510 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
6511 1.1.1.7 christos 4.3.0 up to, but not including 4.3.77
6512 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
6513 1.1.1.7 christos Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing
6514 1.1.1.7 christos an unusually long data value where a network address is expected,
6515 1.1.1.7 christos the decodenetnum() function will abort with an assertion failure
6516 1.1.1.7 christos instead of simply returning a failure condition.
6517 1.1.1.7 christos Mitigation:
6518 1.1.1.7 christos Implement BCP-38.
6519 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6520 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6521 1.1.1.7 christos If you are unable to upgrade:
6522 1.1.1.7 christos mode 7 is disabled by default. Don't enable it.
6523 1.1.1.7 christos Use restrict noquery to limit who can send mode 6
6524 1.1.1.7 christos and mode 7 requests.
6525 1.1.1.7 christos Configure and use the controlkey and requestkey
6526 1.1.1.7 christos authentication directives to limit who can
6527 1.1.1.7 christos send mode 6 and mode 7 requests.
6528 1.1.1.7 christos Monitor your ntpd instances.
6529 1.1.1.7 christos Credit: This weakness was discovered by John D "Doug" Birdwell of IDA.org.
6530 1.1.1.7 christos
6531 1.1.1.7 christos * NAK to the Future: Symmetric association authentication bypass via
6532 1.1.1.7 christos crypto-NAK.
6533 1.1.1.7 christos
6534 1.1.1.7 christos References: Sec 2941 / CVE-2015-7871
6535 1.1.1.7 christos Affects: All ntp-4 releases between 4.2.5p186 up to but not including
6536 1.1.1.7 christos 4.2.8p4, and 4.3.0 up to but not including 4.3.77
6537 1.1.1.7 christos CVSS: (AV:N/AC:L/Au:N/C:N/I:P/A:P) Base Score: 6.4
6538 1.1.1.7 christos Summary: Crypto-NAK packets can be used to cause ntpd to accept time
6539 1.1.1.7 christos from unauthenticated ephemeral symmetric peers by bypassing the
6540 1.1.1.7 christos authentication required to mobilize peer associations. This
6541 1.1.1.7 christos vulnerability appears to have been introduced in ntp-4.2.5p186
6542 1.1.1.7 christos when the code handling mobilization of new passive symmetric
6543 1.1.1.7 christos associations (lines 1103-1165) was refactored.
6544 1.1.1.7 christos Mitigation:
6545 1.1.1.7 christos Implement BCP-38.
6546 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
6547 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
6548 1.1.1.7 christos If you are unable to upgrade:
6549 1.1.1.7 christos Apply the patch to the bottom of the "authentic" check
6550 1.1.1.7 christos block around line 1136 of ntp_proto.c.
6551 1.1.1.7 christos Monitor your ntpd instances.
6552 1.1.1.9 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
6553 1.1.1.7 christos
6554 1.1.1.7 christos Backward-Incompatible changes:
6555 1.1.1.7 christos * [Bug 2817] Default on Linux is now "rlimit memlock -1".
6556 1.1.1.8 christos While the general default of 32M is still the case, under Linux
6557 1.1.1.8 christos the default value has been changed to -1 (do not lock ntpd into
6558 1.1.1.7 christos memory). A value of 0 means "lock ntpd into memory with whatever
6559 1.1.1.7 christos memory it needs." If your ntp.conf file has an explicit "rlimit memlock"
6560 1.1.1.7 christos value in it, that value will continue to be used.
6561 1.1.1.7 christos
6562 1.1.1.7 christos * [Bug 2886] Misspelling: "outlyer" should be "outlier".
6563 1.1.1.7 christos If you've written a script that looks for this case in, say, the
6564 1.1.1.7 christos output of ntpq, you probably want to change your regex matches
6565 1.1.1.7 christos from 'outlyer' to 'outl[iy]er'.
6566 1.1.1.7 christos
6567 1.1.1.7 christos New features in this release:
6568 1.1.1.7 christos * 'rlimit memlock' now has finer-grained control. A value of -1 means
6569 1.1.1.7 christos "don't lock ntpd into memore". This is the default for Linux boxes.
6570 1.1.1.7 christos A value of 0 means "lock ntpd into memory" with no limits. Otherwise
6571 1.1.1.7 christos the value is the number of megabytes of memory to lock. The default
6572 1.1.1.7 christos is 32 megabytes.
6573 1.1.1.7 christos
6574 1.1.1.7 christos * The old Google Test framework has been replaced with a new framework,
6575 1.1.1.7 christos based on http://www.throwtheswitch.org/unity/ .
6576 1.1.1.7 christos
6577 1.1.1.7 christos Bug Fixes and Improvements:
6578 1.1.1.7 christos * [Bug 2332] (reopened) Exercise thread cancellation once before dropping
6579 1.1.1.7 christos privileges and limiting resources in NTPD removes the need to link
6580 1.1.1.7 christos forcefully against 'libgcc_s' which does not always work. J.Perlinger
6581 1.1.1.7 christos * [Bug 2595] ntpdate man page quirks. Hal Murray, Harlan Stenn.
6582 1.1.1.7 christos * [Bug 2625] Deprecate flag1 in local refclock. Hal Murray, Harlan Stenn.
6583 1.1.1.7 christos * [Bug 2817] Stop locking ntpd into memory by default under Linux. H.Stenn.
6584 1.1.1.7 christos * [Bug 2821] minor build issues: fixed refclock_gpsdjson.c. perlinger (a] ntp.org
6585 1.1.1.7 christos * [Bug 2823] ntpsweep with recursive peers option doesn't work. H.Stenn.
6586 1.1.1.7 christos * [Bug 2849] Systems with more than one default route may never
6587 1.1.1.7 christos synchronize. Brian Utterback. Note that this patch might need to
6588 1.1.1.7 christos be reverted once Bug 2043 has been fixed.
6589 1.1.1.7 christos * [Bug 2864] 4.2.8p3 fails to compile on Windows. Juergen Perlinger
6590 1.1.1.7 christos * [Bug 2866] segmentation fault at initgroups(). Harlan Stenn.
6591 1.1.1.7 christos * [Bug 2867] ntpd with autokey active crashed by 'ntpq -crv'. J.Perlinger
6592 1.1.1.7 christos * [Bug 2873] libevent should not include .deps/ in the tarball. H.Stenn
6593 1.1.1.7 christos * [Bug 2874] Don't distribute generated sntp/tests/fileHandlingTest.h. H.Stenn
6594 1.1.1.7 christos * [Bug 2875] sntp/Makefile.am: Get rid of DIST_SUBDIRS. libevent must
6595 1.1.1.7 christos be configured for the distribution targets. Harlan Stenn.
6596 1.1.1.7 christos * [Bug 2883] ntpd crashes on exit with empty driftfile. Miroslav Lichvar.
6597 1.1.1.7 christos * [Bug 2886] Mis-spelling: "outlyer" should be "outlier". dave (a] horsfall.org
6598 1.1.1.7 christos * [Bug 2888] streamline calendar functions. perlinger (a] ntp.org
6599 1.1.1.7 christos * [Bug 2889] ntp-dev-4.3.67 does not build on Windows. perlinger (a] ntp.org
6600 1.1.1.7 christos * [Bug 2890] Ignore ENOBUFS on routing netlink socket. Konstantin Khlebnikov.
6601 1.1.1.7 christos * [Bug 2906] make check needs better support for pthreads. Harlan Stenn.
6602 1.1.1.7 christos * [Bug 2907] dist* build targets require our libevent/ to be enabled. HStenn.
6603 1.1.1.7 christos * [Bug 2912] no munlockall() under Windows. David Taylor, Harlan Stenn.
6604 1.1.1.7 christos * libntp/emalloc.c: Remove explicit include of stdint.h. Harlan Stenn.
6605 1.1.1.7 christos * Put Unity CPPFLAGS items in unity_config.h. Harlan Stenn.
6606 1.1.1.7 christos * tests/ntpd/g_leapsec.cpp typo fix. Harlan Stenn.
6607 1.1.1.7 christos * Phase 1 deprecation of google test in sntp/tests/. Harlan Stenn.
6608 1.1.1.7 christos * On some versions of HP-UX, inttypes.h does not include stdint.h. H.Stenn.
6609 1.1.1.7 christos * top_srcdir can change based on ntp v. sntp. Harlan Stenn.
6610 1.1.1.7 christos * sntp/tests/ function parameter list cleanup. Damir Tomi.
6611 1.1.1.7 christos * tests/libntp/ function parameter list cleanup. Damir Tomi.
6612 1.1.1.7 christos * tests/ntpd/ function parameter list cleanup. Damir Tomi.
6613 1.1.1.7 christos * sntp/unity/unity_config.h: handle stdint.h. Harlan Stenn.
6614 1.1.1.7 christos * sntp/unity/unity_internals.h: handle *INTPTR_MAX on old Solaris. H.Stenn.
6615 1.1.1.7 christos * tests/libntp/timevalops.c and timespecops.c fixed error printing. D.Tomi.
6616 1.1.1.7 christos * tests/libntp/ improvements in code and fixed error printing. Damir Tomi.
6617 1.1.1.7 christos * tests/libntp: a_md5encrypt.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
6618 1.1.1.7 christos caltontp.c, clocktime.c, humandate.c, hextolfp.c, decodenetnum.c - fixed
6619 1.1.1.7 christos formatting; first declaration, then code (C90); deleted unnecessary comments;
6620 1.1.1.7 christos changed from sprintf to snprintf; fixed order of includes. Tomasz Flendrich
6621 1.1.1.7 christos * tests/libntp/lfpfunc.c remove unnecessary include, remove old comments,
6622 1.1.1.7 christos fix formatting, cleanup. Tomasz Flendrich
6623 1.1.1.7 christos * tests/libntp/lfptostr.c remove unnecessary include, add consts, fix formatting.
6624 1.1.1.7 christos Tomasz Flendrich
6625 1.1.1.7 christos * tests/libntp/statestr.c remove empty functions, remove unnecessary include,
6626 1.1.1.7 christos fix formatting. Tomasz Flendrich
6627 1.1.1.7 christos * tests/libntp/modetoa.c fixed formatting. Tomasz Flendrich
6628 1.1.1.7 christos * tests/libntp/msyslog.c fixed formatting. Tomasz Flendrich
6629 1.1.1.7 christos * tests/libntp/numtoa.c deleted unnecessary empty functions, fixed formatting.
6630 1.1.1.7 christos Tomasz Flendrich
6631 1.1.1.7 christos * tests/libntp/numtohost.c added const, fixed formatting. Tomasz Flendrich
6632 1.1.1.7 christos * tests/libntp/refnumtoa.c fixed formatting. Tomasz Flendrich
6633 1.1.1.7 christos * tests/libntp/ssl_init.c fixed formatting. Tomasz Flendrich
6634 1.1.1.7 christos * tests/libntp/tvtots.c fixed a bug, fixed formatting. Tomasz Flendrich
6635 1.1.1.7 christos * tests/libntp/uglydate.c removed an unnecessary include. Tomasz Flendrich
6636 1.1.1.7 christos * tests/libntp/vi64ops.c removed an unnecessary comment, fixed formatting.
6637 1.1.1.7 christos * tests/libntp/ymd3yd.c removed an empty function and an unnecessary include,
6638 1.1.1.7 christos fixed formatting. Tomasz Flendrich
6639 1.1.1.7 christos * tests/libntp/timespecops.c fixed formatting, fixed the order of includes,
6640 1.1.1.7 christos removed unnecessary comments, cleanup. Tomasz Flendrich
6641 1.1.1.7 christos * tests/libntp/timevalops.c fixed the order of includes, deleted unnecessary
6642 1.1.1.7 christos comments, cleanup. Tomasz Flendrich
6643 1.1.1.7 christos * tests/libntp/sockaddrtest.h making it agree to NTP's conventions of formatting.
6644 1.1.1.7 christos Tomasz Flendrich
6645 1.1.1.7 christos * tests/libntp/lfptest.h cleanup. Tomasz Flendrich
6646 1.1.1.7 christos * tests/libntp/test-libntp.c fix formatting. Tomasz Flendrich
6647 1.1.1.7 christos * sntp/tests/crypto.c is now using proper Unity's assertions, fixed formatting.
6648 1.1.1.7 christos Tomasz Flendrich
6649 1.1.1.7 christos * sntp/tests/kodDatabase.c added consts, deleted empty function,
6650 1.1.1.7 christos fixed formatting. Tomasz Flendrich
6651 1.1.1.7 christos * sntp/tests/kodFile.c cleanup, fixed formatting. Tomasz Flendrich
6652 1.1.1.7 christos * sntp/tests/packetHandling.c is now using proper Unity's assertions,
6653 1.1.1.7 christos fixed formatting, deleted unused variable. Tomasz Flendrich
6654 1.1.1.7 christos * sntp/tests/keyFile.c is now using proper Unity's assertions, fixed formatting.
6655 1.1.1.7 christos Tomasz Flendrich
6656 1.1.1.7 christos * sntp/tests/packetProcessing.c changed from sprintf to snprintf,
6657 1.1.1.7 christos fixed formatting. Tomasz Flendrich
6658 1.1.1.7 christos * sntp/tests/utilities.c is now using proper Unity's assertions, changed
6659 1.1.1.7 christos the order of includes, fixed formatting, removed unnecessary comments.
6660 1.1.1.7 christos Tomasz Flendrich
6661 1.1.1.7 christos * sntp/tests/sntptest.h fixed formatting. Tomasz Flendrich
6662 1.1.1.7 christos * sntp/tests/fileHandlingTest.h.in fixed a possible buffer overflow problem,
6663 1.1.1.7 christos made one function do its job, deleted unnecessary prints, fixed formatting.
6664 1.1.1.7 christos Tomasz Flendrich
6665 1.1.1.7 christos * sntp/unity/Makefile.am added a missing header. Tomasz Flendrich
6666 1.1.1.7 christos * sntp/unity/unity_config.h: Distribute it. Harlan Stenn.
6667 1.1.1.7 christos * sntp/libevent/evconfig-private.h: remove generated filefrom SCM. H.Stenn.
6668 1.1.1.7 christos * sntp/unity/Makefile.am: fix some broken paths. Harlan Stenn.
6669 1.1.1.7 christos * sntp/unity/unity.c: Clean up a printf(). Harlan Stenn.
6670 1.1.1.7 christos * Phase 1 deprecation of google test in tests/libntp/. Harlan Stenn.
6671 1.1.1.7 christos * Don't build sntp/libevent/sample/. Harlan Stenn.
6672 1.1.1.7 christos * tests/libntp/test_caltontp needs -lpthread. Harlan Stenn.
6673 1.1.1.7 christos * br-flock: --enable-local-libevent. Harlan Stenn.
6674 1.1.1.7 christos * Wrote tests for ntpd/ntp_prio_q.c. Tomasz Flendrich
6675 1.1.1.7 christos * scripts/lib/NTP/Util.pm: stratum output is version-dependent. Harlan Stenn.
6676 1.1.1.7 christos * Get rid of the NTP_ prefix on our assertion macros. Harlan Stenn.
6677 1.1.1.7 christos * Code cleanup. Harlan Stenn.
6678 1.1.1.7 christos * libntp/icom.c: Typo fix. Harlan Stenn.
6679 1.1.1.7 christos * util/ntptime.c: initialization nit. Harlan Stenn.
6680 1.1.1.7 christos * ntpd/ntp_peer.c:newpeer(): added a DEBUG_REQUIRE(srcadr). Harlan Stenn.
6681 1.1.1.7 christos * Add std_unity_tests to various Makefile.am files. Harlan Stenn.
6682 1.1.1.7 christos * ntpd/ntp_restrict.c: added a few assertions, created tests for this file.
6683 1.1.1.7 christos Tomasz Flendrich
6684 1.1.1.7 christos * Changed progname to be const in many files - now it's consistent. Tomasz
6685 1.1.1.7 christos Flendrich
6686 1.1.1.7 christos * Typo fix for GCC warning suppression. Harlan Stenn.
6687 1.1.1.7 christos * Added tests/ntpd/ntp_scanner.c test. Damir Tomi.
6688 1.1.1.7 christos * Added declarations to all Unity tests, and did minor fixes to them.
6689 1.1.1.7 christos Reduced the number of warnings by half. Damir Tomi.
6690 1.1.1.7 christos * Updated generate_test_runner.rb and updated the sntp/unity/auto directory
6691 1.1.1.7 christos with the latest Unity updates from Mark. Damir Tomi.
6692 1.1.1.7 christos * Retire google test - phase I. Harlan Stenn.
6693 1.1.1.7 christos * Unity test cleanup: move declaration of 'initializing'. Harlan Stenn.
6694 1.1.1.7 christos * Update the NEWS file. Harlan Stenn.
6695 1.1.1.7 christos * Autoconf cleanup. Harlan Stenn.
6696 1.1.1.7 christos * Unit test dist cleanup. Harlan Stenn.
6697 1.1.1.7 christos * Cleanup various test Makefile.am files. Harlan Stenn.
6698 1.1.1.7 christos * Pthread autoconf macro cleanup. Harlan Stenn.
6699 1.1.1.7 christos * Fix progname definition in unity runner scripts. Harlan Stenn.
6700 1.1.1.7 christos * Clean trailing whitespace in tests/ntpd/Makefile.am. Harlan Stenn.
6701 1.1.1.7 christos * Update the patch for bug 2817. Harlan Stenn.
6702 1.1.1.7 christos * More updates for bug 2817. Harlan Stenn.
6703 1.1.1.7 christos * Fix bugs in tests/ntpd/ntp_prio_q.c. Harlan Stenn.
6704 1.1.1.7 christos * gcc on older HPUX may need +allowdups. Harlan Stenn.
6705 1.1.1.7 christos * Adding missing MCAST protection. Harlan Stenn.
6706 1.1.1.7 christos * Disable certain test programs on certain platforms. Harlan Stenn.
6707 1.1.1.7 christos * Implement --enable-problem-tests (on by default). Harlan Stenn.
6708 1.1.1.7 christos * build system tweaks. Harlan Stenn.
6709 1.1.1.7 christos
6710 1.1.1.7 christos ---
6711 1.1.1.6 christos NTP 4.2.8p3 (Harlan Stenn <stenn (a] ntp.org>, 2015/06/29)
6712 1.1.1.6 christos
6713 1.1.1.6 christos Focus: 1 Security fix. Bug fixes and enhancements. Leap-second improvements.
6714 1.1.1.6 christos
6715 1.1.1.6 christos Severity: MEDIUM
6716 1.1.1.6 christos
6717 1.1.1.6 christos Security Fix:
6718 1.1.1.6 christos
6719 1.1.1.6 christos * [Sec 2853] Crafted remote config packet can crash some versions of
6720 1.1.1.6 christos ntpd. Aleksis Kauppinen, Juergen Perlinger, Harlan Stenn.
6721 1.1.1.6 christos
6722 1.1.1.6 christos Under specific circumstances an attacker can send a crafted packet to
6723 1.1.1.6 christos cause a vulnerable ntpd instance to crash. This requires each of the
6724 1.1.1.6 christos following to be true:
6725 1.1.1.6 christos
6726 1.1.1.6 christos 1) ntpd set up to allow remote configuration (not allowed by default), and
6727 1.1.1.6 christos 2) knowledge of the configuration password, and
6728 1.1.1.6 christos 3) access to a computer entrusted to perform remote configuration.
6729 1.1.1.6 christos
6730 1.1.1.6 christos This vulnerability is considered low-risk.
6731 1.1.1.6 christos
6732 1.1.1.6 christos New features in this release:
6733 1.1.1.6 christos
6734 1.1.1.6 christos Optional (disabled by default) support to have ntpd provide smeared
6735 1.1.1.6 christos leap second time. A specially built and configured ntpd will only
6736 1.1.1.6 christos offer smeared time in response to client packets. These response
6737 1.1.1.6 christos packets will also contain a "refid" of 254.a.b.c, where the 24 bits
6738 1.1.1.6 christos of a, b, and c encode the amount of smear in a 2:22 integer:fraction
6739 1.1.1.6 christos format. See README.leapsmear and http://bugs.ntp.org/2855 for more
6740 1.1.1.6 christos information.
6741 1.1.1.6 christos
6742 1.1.1.6 christos *IF YOU CHOOSE TO CONFIGURE NTPD TO PROVIDE LEAP SMEAR TIME*
6743 1.1.1.6 christos *BE SURE YOU DO NOT OFFER THAT TIME ON PUBLIC TIMESERVERS.*
6744 1.1.1.6 christos
6745 1.1.1.6 christos We've imported the Unity test framework, and have begun converting
6746 1.1.1.6 christos the existing google-test items to this new framework. If you want
6747 1.1.1.6 christos to write new tests or change old ones, you'll need to have ruby
6748 1.1.1.6 christos installed. You don't need ruby to run the test suite.
6749 1.1.1.6 christos
6750 1.1.1.6 christos Bug Fixes and Improvements:
6751 1.1.1.6 christos
6752 1.1.1.6 christos * CID 739725: Fix a rare resource leak in libevent/listener.c.
6753 1.1.1.6 christos * CID 1295478: Quiet a pedantic potential error from the fix for Bug 2776.
6754 1.1.1.6 christos * CID 1296235: Fix refclock_jjy.c and correcting type of the driver40-ja.html
6755 1.1.1.6 christos * CID 1269537: Clean up a line of dead code in getShmTime().
6756 1.1.1.6 christos * [Bug 1060] Buffer overruns in libparse/clk_rawdcf.c. Helge Oldach.
6757 1.1.1.6 christos * [Bug 2590] autogen-5.18.5.
6758 1.1.1.6 christos * [Bug 2612] restrict: Warn when 'monitor' can't be disabled because
6759 1.1.1.6 christos of 'limited'.
6760 1.1.1.6 christos * [Bug 2650] fix includefile processing.
6761 1.1.1.6 christos * [Bug 2745] ntpd -x steps clock on leap second
6762 1.1.1.6 christos Fixed an initial-value problem that caused misbehaviour in absence of
6763 1.1.1.6 christos any leapsecond information.
6764 1.1.1.6 christos Do leap second stepping only of the step adjustment is beyond the
6765 1.1.1.6 christos proper jump distance limit and step correction is allowed at all.
6766 1.1.1.6 christos * [Bug 2750] build for Win64
6767 1.1.1.6 christos Building for 32bit of loopback ppsapi needs def file
6768 1.1.1.6 christos * [Bug 2776] Improve ntpq's 'help keytype'.
6769 1.1.1.6 christos * [Bug 2778] Implement "apeers" ntpq command to include associd.
6770 1.1.1.6 christos * [Bug 2782] Refactor refclock_shm.c, add memory barrier protection.
6771 1.1.1.6 christos * [Bug 2792] If the IFF_RUNNING interface flag is supported then an
6772 1.1.1.6 christos interface is ignored as long as this flag is not set since the
6773 1.1.1.6 christos interface is not usable (e.g., no link).
6774 1.1.1.6 christos * [Bug 2794] Clean up kernel clock status reports.
6775 1.1.1.6 christos * [Bug 2800] refclock_true.c true_debug() can't open debug log because
6776 1.1.1.6 christos of incompatible open/fdopen parameters.
6777 1.1.1.6 christos * [Bug 2804] install-local-data assumes GNU 'find' semantics.
6778 1.1.1.6 christos * [Bug 2805] ntpd fails to join multicast group.
6779 1.1.1.6 christos * [Bug 2806] refclock_jjy.c supports the Telephone JJY.
6780 1.1.1.6 christos * [Bug 2808] GPSD_JSON driver enhancements, step 1.
6781 1.1.1.6 christos Fix crash during cleanup if GPS device not present and char device.
6782 1.1.1.6 christos Increase internal token buffer to parse all JSON data, even SKY.
6783 1.1.1.6 christos Defer logging of errors during driver init until the first unit is
6784 1.1.1.6 christos started, so the syslog is not cluttered when the driver is not used.
6785 1.1.1.6 christos Various improvements, see http://bugs.ntp.org/2808 for details.
6786 1.1.1.6 christos Changed libjsmn to a more recent version.
6787 1.1.1.6 christos * [Bug 2810] refclock_shm.c memory barrier code needs tweaks for QNX.
6788 1.1.1.6 christos * [Bug 2813] HP-UX needs -D__STDC_VERSION__=199901L and limits.h.
6789 1.1.1.6 christos * [Bug 2815] net-snmp before v5.4 has circular library dependencies.
6790 1.1.1.6 christos * [Bug 2821] Add a missing NTP_PRINTF and a missing const.
6791 1.1.1.6 christos * [Bug 2822] New leap column in sntp broke NTP::Util.pm.
6792 1.1.1.6 christos * [Bug 2824] Convert update-leap to perl. (also see 2769)
6793 1.1.1.6 christos * [Bug 2825] Quiet file installation in html/ .
6794 1.1.1.6 christos * [Bug 2830] ntpd doesn't always transfer the correct TAI offset via autokey
6795 1.1.1.6 christos NTPD transfers the current TAI (instead of an announcement) now.
6796 1.1.1.6 christos This might still needed improvement.
6797 1.1.1.6 christos Update autokey data ASAP when 'sys_tai' changes.
6798 1.1.1.6 christos Fix unit test that was broken by changes for autokey update.
6799 1.1.1.6 christos Avoid potential signature length issue and use DPRINTF where possible
6800 1.1.1.6 christos in ntp_crypto.c.
6801 1.1.1.6 christos * [Bug 2832] refclock_jjy.c supports the TDC-300.
6802 1.1.1.6 christos * [Bug 2834] Correct a broken html tag in html/refclock.html
6803 1.1.1.6 christos * [Bug 2836] DFC77 patches from Frank Kardel to make decoding more
6804 1.1.1.6 christos robust, and require 2 consecutive timestamps to be consistent.
6805 1.1.1.6 christos * [Bug 2837] Allow a configurable DSCP value.
6806 1.1.1.6 christos * [Bug 2837] add test for DSCP to ntpd/complete.conf.in
6807 1.1.1.6 christos * [Bug 2842] Glitch in ntp.conf.def documentation stanza.
6808 1.1.1.6 christos * [Bug 2842] Bug in mdoc2man.
6809 1.1.1.6 christos * [Bug 2843] make check fails on 4.3.36
6810 1.1.1.6 christos Fixed compiler warnings about numeric range overflow
6811 1.1.1.6 christos (The original topic was fixed in a byplay to bug#2830)
6812 1.1.1.6 christos * [Bug 2845] Harden memory allocation in ntpd.
6813 1.1.1.6 christos * [Bug 2852] 'make check' can't find unity.h. Hal Murray.
6814 1.1.1.6 christos * [Bug 2854] Missing brace in libntp/strdup.c. Masanari Iida.
6815 1.1.1.6 christos * [Bug 2855] Parser fix for conditional leap smear code. Harlan Stenn.
6816 1.1.1.6 christos * [Bug 2855] Report leap smear in the REFID. Harlan Stenn.
6817 1.1.1.6 christos * [Bug 2855] Implement conditional leap smear code. Martin Burnicki.
6818 1.1.1.6 christos * [Bug 2856] ntpd should wait() on terminated child processes. Paul Green.
6819 1.1.1.6 christos * [Bug 2857] Stratus VOS does not support SIGIO. Paul Green.
6820 1.1.1.6 christos * [Bug 2859] Improve raw DCF77 robustness deconding. Frank Kardel.
6821 1.1.1.6 christos * [Bug 2860] ntpq ifstats sanity check is too stringent. Frank Kardel.
6822 1.1.1.6 christos * html/drivers/driver22.html: typo fix. Harlan Stenn.
6823 1.1.1.6 christos * refidsmear test cleanup. Tomasz Flendrich.
6824 1.1.1.6 christos * refidsmear function support and tests. Harlan Stenn.
6825 1.1.1.6 christos * sntp/tests/Makefile.am: remove g_nameresolution.cpp as it tested
6826 1.1.1.6 christos something that was only in the 4.2.6 sntp. Harlan Stenn.
6827 1.1.1.6 christos * Modified tests/bug-2803/Makefile.am so it builds Unity framework tests.
6828 1.1.1.6 christos Damir Tomi
6829 1.1.1.6 christos * Modified tests/libtnp/Makefile.am so it builds Unity framework tests.
6830 1.1.1.6 christos Damir Tomi
6831 1.1.1.6 christos * Modified sntp/tests/Makefile.am so it builds Unity framework tests.
6832 1.1.1.6 christos Damir Tomi
6833 1.1.1.6 christos * tests/sandbox/smeartest.c: Harlan Stenn, Damir Tomic, Juergen Perlinger.
6834 1.1.1.6 christos * Converted from gtest to Unity: tests/bug-2803/. Damir Tomi
6835 1.1.1.6 christos * Converted from gtest to Unity: tests/libntp/ a_md5encrypt, atoint.c,
6836 1.1.1.6 christos atouint.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
6837 1.1.1.6 christos calyearstart.c, clocktime.c, hextoint.c, lfpfunc.c, modetoa.c,
6838 1.1.1.6 christos numtoa.c, numtohost.c, refnumtoa.c, ssl_init.c, statestr.c,
6839 1.1.1.6 christos timespecops.c, timevalops.c, uglydate.c, vi64ops.c, ymd2yd.c.
6840 1.1.1.6 christos Damir Tomi
6841 1.1.1.6 christos * Converted from gtest to Unity: sntp/tests/ kodDatabase.c, kodFile.c,
6842 1.1.1.6 christos networking.c, keyFile.c, utilities.cpp, sntptest.h,
6843 1.1.1.6 christos fileHandlingTest.h. Damir Tomi
6844 1.1.1.6 christos * Initial support for experimental leap smear code. Harlan Stenn.
6845 1.1.1.6 christos * Fixes to sntp/tests/fileHandlingTest.h.in. Harlan Stenn.
6846 1.1.1.6 christos * Report select() debug messages at debug level 3 now.
6847 1.1.1.6 christos * sntp/scripts/genLocInfo: treat raspbian as debian.
6848 1.1.1.6 christos * Unity test framework fixes.
6849 1.1.1.6 christos ** Requires ruby for changes to tests.
6850 1.1.1.6 christos * Initial support for PACKAGE_VERSION tests.
6851 1.1.1.6 christos * sntp/libpkgver belongs in EXTRA_DIST, not DIST_SUBDIRS.
6852 1.1.1.6 christos * tests/bug-2803/Makefile.am must distribute bug-2803.h.
6853 1.1.1.6 christos * Add an assert to the ntpq ifstats code.
6854 1.1.1.6 christos * Clean up the RLIMIT_STACK code.
6855 1.1.1.6 christos * Improve the ntpq documentation around the controlkey keyid.
6856 1.1.1.6 christos * ntpq.c cleanup.
6857 1.1.1.6 christos * Windows port build cleanup.
6858 1.1.1.6 christos
6859 1.1.1.6 christos ---
6860 1.1.1.6 christos NTP 4.2.8p2 (Harlan Stenn <stenn (a] ntp.org>, 2015/04/07)
6861 1.1.1.5 christos
6862 1.1.1.5 christos Focus: Security and Bug fixes, enhancements.
6863 1.1.1.5 christos
6864 1.1.1.5 christos Severity: MEDIUM
6865 1.1.1.5 christos
6866 1.1.1.5 christos In addition to bug fixes and enhancements, this release fixes the
6867 1.1.1.5 christos following medium-severity vulnerabilities involving private key
6868 1.1.1.5 christos authentication:
6869 1.1.1.5 christos
6870 1.1.1.5 christos * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
6871 1.1.1.5 christos
6872 1.1.1.5 christos References: Sec 2779 / CVE-2015-1798 / VU#374268
6873 1.1.1.5 christos Affects: All NTP4 releases starting with ntp-4.2.5p99 up to but not
6874 1.1.1.5 christos including ntp-4.2.8p2 where the installation uses symmetric keys
6875 1.1.1.5 christos to authenticate remote associations.
6876 1.1.1.5 christos CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
6877 1.1.1.5 christos Date Resolved: Stable (4.2.8p2) 07 Apr 2015
6878 1.1.1.5 christos Summary: When ntpd is configured to use a symmetric key to authenticate
6879 1.1.1.5 christos a remote NTP server/peer, it checks if the NTP message
6880 1.1.1.5 christos authentication code (MAC) in received packets is valid, but not if
6881 1.1.1.5 christos there actually is any MAC included. Packets without a MAC are
6882 1.1.1.5 christos accepted as if they had a valid MAC. This allows a MITM attacker to
6883 1.1.1.5 christos send false packets that are accepted by the client/peer without
6884 1.1.1.5 christos having to know the symmetric key. The attacker needs to know the
6885 1.1.1.5 christos transmit timestamp of the client to match it in the forged reply
6886 1.1.1.5 christos and the false reply needs to reach the client before the genuine
6887 1.1.1.5 christos reply from the server. The attacker doesn't necessarily need to be
6888 1.1.1.5 christos relaying the packets between the client and the server.
6889 1.1.1.5 christos
6890 1.1.1.5 christos Authentication using autokey doesn't have this problem as there is
6891 1.1.1.5 christos a check that requires the key ID to be larger than NTP_MAXKEY,
6892 1.1.1.5 christos which fails for packets without a MAC.
6893 1.1.1.5 christos Mitigation:
6894 1.1.1.5 christos Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
6895 1.1.1.5 christos or the NTP Public Services Project Download Page
6896 1.1.1.5 christos Configure ntpd with enough time sources and monitor it properly.
6897 1.1.1.5 christos Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
6898 1.1.1.5 christos
6899 1.1.1.5 christos * [Sec 2781] Authentication doesn't protect symmetric associations against
6900 1.1.1.5 christos DoS attacks.
6901 1.1.1.5 christos
6902 1.1.1.5 christos References: Sec 2781 / CVE-2015-1799 / VU#374268
6903 1.1.1.5 christos Affects: All NTP releases starting with at least xntp3.3wy up to but
6904 1.1.1.5 christos not including ntp-4.2.8p2 where the installation uses symmetric
6905 1.1.1.5 christos key authentication.
6906 1.1.1.5 christos CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
6907 1.1.1.5 christos Note: the CVSS base Score for this issue could be 4.3 or lower, and
6908 1.1.1.5 christos it could be higher than 5.4.
6909 1.1.1.5 christos Date Resolved: Stable (4.2.8p2) 07 Apr 2015
6910 1.1.1.5 christos Summary: An attacker knowing that NTP hosts A and B are peering with
6911 1.1.1.5 christos each other (symmetric association) can send a packet to host A
6912 1.1.1.5 christos with source address of B which will set the NTP state variables
6913 1.1.1.5 christos on A to the values sent by the attacker. Host A will then send
6914 1.1.1.5 christos on its next poll to B a packet with originate timestamp that
6915 1.1.1.5 christos doesn't match the transmit timestamp of B and the packet will
6916 1.1.1.5 christos be dropped. If the attacker does this periodically for both
6917 1.1.1.5 christos hosts, they won't be able to synchronize to each other. This is
6918 1.1.1.5 christos a known denial-of-service attack, described at
6919 1.1.1.5 christos https://www.eecis.udel.edu/~mills/onwire.html .
6920 1.1.1.5 christos
6921 1.1.1.5 christos According to the document the NTP authentication is supposed to
6922 1.1.1.5 christos protect symmetric associations against this attack, but that
6923 1.1.1.5 christos doesn't seem to be the case. The state variables are updated even
6924 1.1.1.5 christos when authentication fails and the peers are sending packets with
6925 1.1.1.5 christos originate timestamps that don't match the transmit timestamps on
6926 1.1.1.5 christos the receiving side.
6927 1.1.1.5 christos
6928 1.1.1.5 christos This seems to be a very old problem, dating back to at least
6929 1.1.1.5 christos xntp3.3wy. It's also in the NTPv3 (RFC 1305) and NTPv4 (RFC 5905)
6930 1.1.1.5 christos specifications, so other NTP implementations with support for
6931 1.1.1.5 christos symmetric associations and authentication may be vulnerable too.
6932 1.1.1.5 christos An update to the NTP RFC to correct this error is in-process.
6933 1.1.1.5 christos Mitigation:
6934 1.1.1.5 christos Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
6935 1.1.1.5 christos or the NTP Public Services Project Download Page
6936 1.1.1.5 christos Note that for users of autokey, this specific style of MITM attack
6937 1.1.1.5 christos is simply a long-known potential problem.
6938 1.1.1.5 christos Configure ntpd with appropriate time sources and monitor ntpd.
6939 1.1.1.5 christos Alert your staff if problems are detected.
6940 1.1.1.5 christos Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
6941 1.1.1.5 christos
6942 1.1.1.5 christos * New script: update-leap
6943 1.1.1.5 christos The update-leap script will verify and if necessary, update the
6944 1.1.1.5 christos leap-second definition file.
6945 1.1.1.5 christos It requires the following commands in order to work:
6946 1.1.1.5 christos
6947 1.1.1.5 christos wget logger tr sed shasum
6948 1.1.1.5 christos
6949 1.1.1.5 christos Some may choose to run this from cron. It needs more portability testing.
6950 1.1.1.5 christos
6951 1.1.1.5 christos Bug Fixes and Improvements:
6952 1.1.1.5 christos
6953 1.1.1.5 christos * [Bug 1787] DCF77's formerly "antenna" bit is "call bit" since 2003.
6954 1.1.1.5 christos * [Bug 1960] setsockopt IPV6_MULTICAST_IF: Invalid argument.
6955 1.1.1.5 christos * [Bug 2346] "graceful termination" signals do not do peer cleanup.
6956 1.1.1.5 christos * [Bug 2728] See if C99-style structure initialization works.
6957 1.1.1.5 christos * [Bug 2747] Upgrade libevent to 2.1.5-beta.
6958 1.1.1.5 christos * [Bug 2749] ntp/lib/NTP/Util.pm needs update for ntpq -w, IPv6, .POOL. .
6959 1.1.1.5 christos * [Bug 2751] jitter.h has stale copies of l_fp macros.
6960 1.1.1.5 christos * [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM.
6961 1.1.1.5 christos * [Bug 2757] Quiet compiler warnings.
6962 1.1.1.5 christos * [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq.
6963 1.1.1.5 christos * [Bug 2763] Allow different thresholds for forward and backward steps.
6964 1.1.1.5 christos * [Bug 2766] ntp-keygen output files should not be world-readable.
6965 1.1.1.5 christos * [Bug 2767] ntp-keygen -M should symlink to ntp.keys.
6966 1.1.1.5 christos * [Bug 2771] nonvolatile value is documented in wrong units.
6967 1.1.1.5 christos * [Bug 2773] Early leap announcement from Palisade/Thunderbolt
6968 1.1.1.5 christos * [Bug 2774] Unreasonably verbose printout - leap pending/warning
6969 1.1.1.5 christos * [Bug 2775] ntp-keygen.c fails to compile under Windows.
6970 1.1.1.5 christos * [Bug 2777] Fixed loops and decoding of Meinberg GPS satellite info.
6971 1.1.1.5 christos Removed non-ASCII characters from some copyright comments.
6972 1.1.1.5 christos Removed trailing whitespace.
6973 1.1.1.5 christos Updated definitions for Meinberg clocks from current Meinberg header files.
6974 1.1.1.5 christos Now use C99 fixed-width types and avoid non-ASCII characters in comments.
6975 1.1.1.5 christos Account for updated definitions pulled from Meinberg header files.
6976 1.1.1.5 christos Updated comments on Meinberg GPS receivers which are not only called GPS16x.
6977 1.1.1.5 christos Replaced some constant numbers by defines from ntp_calendar.h
6978 1.1.1.5 christos Modified creation of parse-specific variables for Meinberg devices
6979 1.1.1.5 christos in gps16x_message().
6980 1.1.1.5 christos Reworked mk_utcinfo() to avoid printing of ambiguous leap second dates.
6981 1.1.1.5 christos Modified mbg_tm_str() which now expexts an additional parameter controlling
6982 1.1.1.5 christos if the time status shall be printed.
6983 1.1.1.5 christos * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
6984 1.1.1.5 christos * [Sec 2781] Authentication doesn't protect symmetric associations against
6985 1.1.1.5 christos DoS attacks.
6986 1.1.1.5 christos * [Bug 2783] Quiet autoconf warnings about missing AC_LANG_SOURCE.
6987 1.1.1.5 christos * [Bug 2789] Quiet compiler warnings from libevent.
6988 1.1.1.5 christos * [Bug 2790] If ntpd sets the Windows MM timer highest resolution
6989 1.1.1.5 christos pause briefly before measuring system clock precision to yield
6990 1.1.1.5 christos correct results.
6991 1.1.1.5 christos * Comment from Juergen Perlinger in ntp_calendar.c to make the code clearer.
6992 1.1.1.5 christos * Use predefined function types for parse driver functions
6993 1.1.1.5 christos used to set up function pointers.
6994 1.1.1.5 christos Account for changed prototype of parse_inp_fnc_t functions.
6995 1.1.1.5 christos Cast parse conversion results to appropriate types to avoid
6996 1.1.1.5 christos compiler warnings.
6997 1.1.1.5 christos Let ioctl() for Windows accept a (void *) to avoid compiler warnings
6998 1.1.1.5 christos when called with pointers to different types.
6999 1.1.1.5 christos
7000 1.1.1.5 christos ---
7001 1.1.1.5 christos NTP 4.2.8p1 (Harlan Stenn <stenn (a] ntp.org>, 2015/02/04)
7002 1.1.1.5 christos
7003 1.1.1.5 christos Focus: Security and Bug fixes, enhancements.
7004 1.1.1.5 christos
7005 1.1.1.5 christos Severity: HIGH
7006 1.1.1.5 christos
7007 1.1.1.5 christos In addition to bug fixes and enhancements, this release fixes the
7008 1.1.1.5 christos following high-severity vulnerabilities:
7009 1.1.1.5 christos
7010 1.1.1.5 christos * vallen is not validated in several places in ntp_crypto.c, leading
7011 1.1.1.5 christos to a potential information leak or possibly a crash
7012 1.1.1.5 christos
7013 1.1.1.5 christos References: Sec 2671 / CVE-2014-9297 / VU#852879
7014 1.1.1.5 christos Affects: All NTP4 releases before 4.2.8p1 that are running autokey.
7015 1.1.1.5 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
7016 1.1.1.5 christos Date Resolved: Stable (4.2.8p1) 04 Feb 2015
7017 1.1.1.5 christos Summary: The vallen packet value is not validated in several code
7018 1.1.1.5 christos paths in ntp_crypto.c which can lead to information leakage
7019 1.1.1.5 christos or perhaps a crash of the ntpd process.
7020 1.1.1.5 christos Mitigation - any of:
7021 1.1.1.5 christos Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
7022 1.1.1.5 christos or the NTP Public Services Project Download Page.
7023 1.1.1.5 christos Disable Autokey Authentication by removing, or commenting out,
7024 1.1.1.5 christos all configuration directives beginning with the "crypto"
7025 1.1.1.5 christos keyword in your ntp.conf file.
7026 1.1.1.5 christos Credit: This vulnerability was discovered by Stephen Roettger of the
7027 1.1.1.5 christos Google Security Team, with additional cases found by Sebastian
7028 1.1.1.5 christos Krahmer of the SUSE Security Team and Harlan Stenn of Network
7029 1.1.1.5 christos Time Foundation.
7030 1.1.1.5 christos
7031 1.1.1.5 christos * ::1 can be spoofed on some OSes, so ACLs based on IPv6 ::1 addresses
7032 1.1.1.5 christos can be bypassed.
7033 1.1.1.5 christos
7034 1.1.1.5 christos References: Sec 2672 / CVE-2014-9298 / VU#852879
7035 1.1.1.5 christos Affects: All NTP4 releases before 4.2.8p1, under at least some
7036 1.1.1.5 christos versions of MacOS and Linux. *BSD has not been seen to be vulnerable.
7037 1.1.1.5 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:C) Base Score: 9
7038 1.1.1.5 christos Date Resolved: Stable (4.2.8p1) 04 Feb 2014
7039 1.1.1.5 christos Summary: While available kernels will prevent 127.0.0.1 addresses
7040 1.1.1.5 christos from "appearing" on non-localhost IPv4 interfaces, some kernels
7041 1.1.1.5 christos do not offer the same protection for ::1 source addresses on
7042 1.1.1.5 christos IPv6 interfaces. Since NTP's access control is based on source
7043 1.1.1.5 christos address and localhost addresses generally have no restrictions,
7044 1.1.1.5 christos an attacker can send malicious control and configuration packets
7045 1.1.1.5 christos by spoofing ::1 addresses from the outside. Note Well: This is
7046 1.1.1.5 christos not really a bug in NTP, it's a problem with some OSes. If you
7047 1.1.1.5 christos have one of these OSes where ::1 can be spoofed, ALL ::1 -based
7048 1.1.1.5 christos ACL restrictions on any application can be bypassed!
7049 1.1.1.5 christos Mitigation:
7050 1.1.1.5 christos Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
7051 1.1.1.5 christos or the NTP Public Services Project Download Page
7052 1.1.1.5 christos Install firewall rules to block packets claiming to come from
7053 1.1.1.5 christos ::1 from inappropriate network interfaces.
7054 1.1.1.5 christos Credit: This vulnerability was discovered by Stephen Roettger of
7055 1.1.1.5 christos the Google Security Team.
7056 1.1.1.5 christos
7057 1.1.1.5 christos Additionally, over 30 bugfixes and improvements were made to the codebase.
7058 1.1.1.5 christos See the ChangeLog for more information.
7059 1.1.1.5 christos
7060 1.1.1.5 christos ---
7061 1.1.1.4 christos NTP 4.2.8 (Harlan Stenn <stenn (a] ntp.org>, 2014/12/18)
7062 1.1.1.4 christos
7063 1.1.1.4 christos Focus: Security and Bug fixes, enhancements.
7064 1.1.1.4 christos
7065 1.1.1.4 christos Severity: HIGH
7066 1.1.1.4 christos
7067 1.1.1.4 christos In addition to bug fixes and enhancements, this release fixes the
7068 1.1.1.4 christos following high-severity vulnerabilities:
7069 1.1.1.4 christos
7070 1.1.1.5 christos ************************** vv NOTE WELL vv *****************************
7071 1.1.1.5 christos
7072 1.1.1.5 christos The vulnerabilities listed below can be significantly mitigated by
7073 1.1.1.5 christos following the BCP of putting
7074 1.1.1.5 christos
7075 1.1.1.5 christos restrict default ... noquery
7076 1.1.1.5 christos
7077 1.1.1.5 christos in the ntp.conf file. With the exception of:
7078 1.1.1.5 christos
7079 1.1.1.5 christos receive(): missing return on error
7080 1.1.1.5 christos References: Sec 2670 / CVE-2014-9296 / VU#852879
7081 1.1.1.5 christos
7082 1.1.1.5 christos below (which is a limited-risk vulnerability), none of the recent
7083 1.1.1.5 christos vulnerabilities listed below can be exploited if the source IP is
7084 1.1.1.5 christos restricted from sending a 'query'-class packet by your ntp.conf file.
7085 1.1.1.5 christos
7086 1.1.1.5 christos ************************** ^^ NOTE WELL ^^ *****************************
7087 1.1.1.5 christos
7088 1.1.1.4 christos * Weak default key in config_auth().
7089 1.1.1.4 christos
7090 1.1.1.4 christos References: [Sec 2665] / CVE-2014-9293 / VU#852879
7091 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
7092 1.1.1.4 christos Vulnerable Versions: all releases prior to 4.2.7p11
7093 1.1.1.4 christos Date Resolved: 28 Jan 2010
7094 1.1.1.4 christos
7095 1.1.1.4 christos Summary: If no 'auth' key is set in the configuration file, ntpd
7096 1.1.1.4 christos would generate a random key on the fly. There were two
7097 1.1.1.4 christos problems with this: 1) the generated key was 31 bits in size,
7098 1.1.1.4 christos and 2) it used the (now weak) ntp_random() function, which was
7099 1.1.1.4 christos seeded with a 32-bit value and could only provide 32 bits of
7100 1.1.1.4 christos entropy. This was sufficient back in the late 1990s when the
7101 1.1.1.4 christos code was written. Not today.
7102 1.1.1.4 christos
7103 1.1.1.5 christos Mitigation - any of:
7104 1.1.1.5 christos - Upgrade to 4.2.7p11 or later.
7105 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
7106 1.1.1.4 christos
7107 1.1.1.4 christos Credit: This vulnerability was noticed in ntp-4.2.6 by Neel Mehta
7108 1.1.1.4 christos of the Google Security Team.
7109 1.1.1.4 christos
7110 1.1.1.4 christos * Non-cryptographic random number generator with weak seed used by
7111 1.1.1.4 christos ntp-keygen to generate symmetric keys.
7112 1.1.1.4 christos
7113 1.1.1.4 christos References: [Sec 2666] / CVE-2014-9294 / VU#852879
7114 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
7115 1.1.1.4 christos Vulnerable Versions: All NTP4 releases before 4.2.7p230
7116 1.1.1.4 christos Date Resolved: Dev (4.2.7p230) 01 Nov 2011
7117 1.1.1.4 christos
7118 1.1.1.4 christos Summary: Prior to ntp-4.2.7p230 ntp-keygen used a weak seed to
7119 1.1.1.4 christos prepare a random number generator that was of good quality back
7120 1.1.1.4 christos in the late 1990s. The random numbers produced was then used to
7121 1.1.1.4 christos generate symmetric keys. In ntp-4.2.8 we use a current-technology
7122 1.1.1.4 christos cryptographic random number generator, either RAND_bytes from
7123 1.1.1.4 christos OpenSSL, or arc4random().
7124 1.1.1.4 christos
7125 1.1.1.5 christos Mitigation - any of:
7126 1.1.1.5 christos - Upgrade to 4.2.7p230 or later.
7127 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
7128 1.1.1.4 christos
7129 1.1.1.4 christos Credit: This vulnerability was discovered in ntp-4.2.6 by
7130 1.1.1.4 christos Stephen Roettger of the Google Security Team.
7131 1.1.1.4 christos
7132 1.1.1.4 christos * Buffer overflow in crypto_recv()
7133 1.1.1.4 christos
7134 1.1.1.4 christos References: Sec 2667 / CVE-2014-9295 / VU#852879
7135 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
7136 1.1.1.4 christos Versions: All releases before 4.2.8
7137 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
7138 1.1.1.4 christos
7139 1.1.1.4 christos Summary: When Autokey Authentication is enabled (i.e. the ntp.conf
7140 1.1.1.4 christos file contains a 'crypto pw ...' directive) a remote attacker
7141 1.1.1.4 christos can send a carefully crafted packet that can overflow a stack
7142 1.1.1.4 christos buffer and potentially allow malicious code to be executed
7143 1.1.1.4 christos with the privilege level of the ntpd process.
7144 1.1.1.4 christos
7145 1.1.1.5 christos Mitigation - any of:
7146 1.1.1.5 christos - Upgrade to 4.2.8, or later, or
7147 1.1.1.5 christos - Disable Autokey Authentication by removing, or commenting out,
7148 1.1.1.5 christos all configuration directives beginning with the crypto keyword
7149 1.1.1.5 christos in your ntp.conf file.
7150 1.1.1.4 christos
7151 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
7152 1.1.1.4 christos Google Security Team.
7153 1.1.1.4 christos
7154 1.1.1.4 christos * Buffer overflow in ctl_putdata()
7155 1.1.1.4 christos
7156 1.1.1.4 christos References: Sec 2668 / CVE-2014-9295 / VU#852879
7157 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
7158 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
7159 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
7160 1.1.1.4 christos
7161 1.1.1.4 christos Summary: A remote attacker can send a carefully crafted packet that
7162 1.1.1.4 christos can overflow a stack buffer and potentially allow malicious
7163 1.1.1.4 christos code to be executed with the privilege level of the ntpd process.
7164 1.1.1.4 christos
7165 1.1.1.5 christos Mitigation - any of:
7166 1.1.1.5 christos - Upgrade to 4.2.8, or later.
7167 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
7168 1.1.1.4 christos
7169 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
7170 1.1.1.4 christos Google Security Team.
7171 1.1.1.4 christos
7172 1.1.1.4 christos * Buffer overflow in configure()
7173 1.1.1.4 christos
7174 1.1.1.4 christos References: Sec 2669 / CVE-2014-9295 / VU#852879
7175 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
7176 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
7177 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
7178 1.1.1.4 christos
7179 1.1.1.4 christos Summary: A remote attacker can send a carefully crafted packet that
7180 1.1.1.4 christos can overflow a stack buffer and potentially allow malicious
7181 1.1.1.4 christos code to be executed with the privilege level of the ntpd process.
7182 1.1.1.4 christos
7183 1.1.1.5 christos Mitigation - any of:
7184 1.1.1.5 christos - Upgrade to 4.2.8, or later.
7185 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
7186 1.1.1.4 christos
7187 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
7188 1.1.1.4 christos Google Security Team.
7189 1.1.1.4 christos
7190 1.1.1.4 christos * receive(): missing return on error
7191 1.1.1.4 christos
7192 1.1.1.4 christos References: Sec 2670 / CVE-2014-9296 / VU#852879
7193 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:N/I:N/A:P) Base Score: 5.0
7194 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
7195 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
7196 1.1.1.4 christos
7197 1.1.1.4 christos Summary: Code in ntp_proto.c:receive() was missing a 'return;' in
7198 1.1.1.4 christos the code path where an error was detected, which meant
7199 1.1.1.4 christos processing did not stop when a specific rare error occurred.
7200 1.1.1.4 christos We haven't found a way for this bug to affect system integrity.
7201 1.1.1.4 christos If there is no way to affect system integrity the base CVSS
7202 1.1.1.4 christos score for this bug is 0. If there is one avenue through which
7203 1.1.1.4 christos system integrity can be partially affected, the base score
7204 1.1.1.4 christos becomes a 5. If system integrity can be partially affected
7205 1.1.1.4 christos via all three integrity metrics, the CVSS base score become 7.5.
7206 1.1.1.4 christos
7207 1.1.1.5 christos Mitigation - any of:
7208 1.1.1.5 christos - Upgrade to 4.2.8, or later,
7209 1.1.1.5 christos - Remove or comment out all configuration directives
7210 1.1.1.5 christos beginning with the crypto keyword in your ntp.conf file.
7211 1.1.1.4 christos
7212 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
7213 1.1.1.4 christos Google Security Team.
7214 1.1.1.4 christos
7215 1.1.1.4 christos See http://support.ntp.org/security for more information.
7216 1.1.1.4 christos
7217 1.1.1.4 christos New features / changes in this release:
7218 1.1.1.3 christos
7219 1.1.1.3 christos Important Changes
7220 1.1.1.3 christos
7221 1.1.1.3 christos * Internal NTP Era counters
7222 1.1.1.3 christos
7223 1.1.1.4 christos The internal counters that track the "era" (range of years) we are in
7224 1.1.1.3 christos rolls over every 136 years'. The current "era" started at the stroke of
7225 1.1.1.3 christos midnight on 1 Jan 1900, and ends just before the stroke of midnight on
7226 1.1.1.3 christos 1 Jan 2036.
7227 1.1.1.3 christos In the past, we have used the "midpoint" of the range to decide which
7228 1.1.1.3 christos era we were in. Given the longevity of some products, it became clear
7229 1.1.1.3 christos that it would be more functional to "look back" less, and "look forward"
7230 1.1.1.3 christos more. We now compile a timestamp into the ntpd executable and when we
7231 1.1.1.3 christos get a timestamp we us the "built-on" to tell us what era we are in.
7232 1.1.1.3 christos This check "looks back" 10 years, and "looks forward" 126 years.
7233 1.1.1.3 christos
7234 1.1.1.3 christos * ntpdc responses disabled by default
7235 1.1.1.3 christos
7236 1.1.1.3 christos Dave Hart writes:
7237 1.1.1.3 christos
7238 1.1.1.3 christos For a long time, ntpq and its mostly text-based mode 6 (control)
7239 1.1.1.3 christos protocol have been preferred over ntpdc and its mode 7 (private
7240 1.1.1.3 christos request) protocol for runtime queries and configuration. There has
7241 1.1.1.3 christos been a goal of deprecating ntpdc, previously held back by numerous
7242 1.1.1.3 christos capabilities exposed by ntpdc with no ntpq equivalent. I have been
7243 1.1.1.3 christos adding commands to ntpq to cover these cases, and I believe I've
7244 1.1.1.3 christos covered them all, though I've not compared command-by-command
7245 1.1.1.3 christos recently.
7246 1.1.1.3 christos
7247 1.1.1.3 christos As I've said previously, the binary mode 7 protocol involves a lot of
7248 1.1.1.3 christos hand-rolled structure layout and byte-swapping code in both ntpd and
7249 1.1.1.3 christos ntpdc which is hard to get right. As ntpd grows and changes, the
7250 1.1.1.3 christos changes are difficult to expose via ntpdc while maintaining forward
7251 1.1.1.3 christos and backward compatibility between ntpdc and ntpd. In contrast,
7252 1.1.1.3 christos ntpq's text-based, label=value approach involves more code reuse and
7253 1.1.1.3 christos allows compatible changes without extra work in most cases.
7254 1.1.1.3 christos
7255 1.1.1.3 christos Mode 7 has always been defined as vendor/implementation-specific while
7256 1.1.1.4 christos mode 6 is described in RFC 1305 and intended to be open to interoperate
7257 1.1.1.3 christos with other implementations. There is an early draft of an updated
7258 1.1.1.3 christos mode 6 description that likely will join the other NTPv4 RFCs
7259 1.1.1.3 christos eventually. (http://tools.ietf.org/html/draft-odonoghue-ntpv4-control-01)
7260 1.1.1.3 christos
7261 1.1.1.3 christos For these reasons, ntpd 4.2.7p230 by default disables processing of
7262 1.1.1.3 christos ntpdc queries, reducing ntpd's attack surface and functionally
7263 1.1.1.3 christos deprecating ntpdc. If you are in the habit of using ntpdc for certain
7264 1.1.1.3 christos operations, please try the ntpq equivalent. If there's no equivalent,
7265 1.1.1.3 christos please open a bug report at http://bugs.ntp.org./
7266 1.1.1.3 christos
7267 1.1.1.4 christos In addition to the above, over 1100 issues have been resolved between
7268 1.1.1.4 christos the 4.2.6 branch and 4.2.8. The ChangeLog file in the distribution
7269 1.1.1.4 christos lists these.
7270 1.1.1.4 christos
7271 1.1.1.2 kardel ---
7272 1.1.1.2 kardel NTP 4.2.6p5 (Harlan Stenn <stenn (a] ntp.org>, 2011/12/24)
7273 1.1.1.2 kardel
7274 1.1.1.2 kardel Focus: Bug fixes
7275 1.1.1.2 kardel
7276 1.1.1.2 kardel Severity: Medium
7277 1.1.1.2 kardel
7278 1.1.1.2 kardel This is a recommended upgrade.
7279 1.1.1.2 kardel
7280 1.1.1.2 kardel This release updates sys_rootdisp and sys_jitter calculations to match the
7281 1.1.1.2 kardel RFC specification, fixes a potential IPv6 address matching error for the
7282 1.1.1.2 kardel "nic" and "interface" configuration directives, suppresses the creation of
7283 1.1.1.2 kardel extraneous ephemeral associations for certain broadcastclient and
7284 1.1.1.2 kardel multicastclient configurations, cleans up some ntpq display issues, and
7285 1.1.1.2 kardel includes improvements to orphan mode, minor bugs fixes and code clean-ups.
7286 1.1.1.2 kardel
7287 1.1.1.2 kardel New features / changes in this release:
7288 1.1.1.2 kardel
7289 1.1.1.2 kardel ntpd
7290 1.1.1.2 kardel
7291 1.1.1.2 kardel * Updated "nic" and "interface" IPv6 address handling to prevent
7292 1.1.1.2 kardel mismatches with localhost [::1] and wildcard [::] which resulted from
7293 1.1.1.2 kardel using the address/prefix format (e.g. fe80::/64)
7294 1.1.1.2 kardel * Fix orphan mode stratum incorrectly counting to infinity
7295 1.1.1.2 kardel * Orphan parent selection metric updated to includes missing ntohl()
7296 1.1.1.2 kardel * Non-printable stratum 16 refid no longer sent to ntp
7297 1.1.1.2 kardel * Duplicate ephemeral associations suppressed for broadcastclient and
7298 1.1.1.2 kardel multicastclient without broadcastdelay
7299 1.1.1.2 kardel * Exclude undetermined sys_refid from use in loopback TEST12
7300 1.1.1.2 kardel * Exclude MODE_SERVER responses from KoD rate limiting
7301 1.1.1.2 kardel * Include root delay in clock_update() sys_rootdisp calculations
7302 1.1.1.2 kardel * get_systime() updated to exclude sys_residual offset (which only
7303 1.1.1.2 kardel affected bits "below" sys_tick, the precision threshold)
7304 1.1.1.2 kardel * sys.peer jitter weighting corrected in sys_jitter calculation
7305 1.1.1.2 kardel
7306 1.1.1.2 kardel ntpq
7307 1.1.1.2 kardel
7308 1.1.1.2 kardel * -n option extended to include the billboard "server" column
7309 1.1.1.2 kardel * IPv6 addresses in the local column truncated to prevent overruns
7310 1.1.1.2 kardel
7311 1.1.1.2 kardel ---
7312 1.1.1.2 kardel NTP 4.2.6p4 (Harlan Stenn <stenn (a] ntp.org>, 2011/09/22)
7313 1.1.1.2 kardel
7314 1.1.1.2 kardel Focus: Bug fixes and portability improvements
7315 1.1.1.2 kardel
7316 1.1.1.2 kardel Severity: Medium
7317 1.1.1.2 kardel
7318 1.1.1.2 kardel This is a recommended upgrade.
7319 1.1.1.2 kardel
7320 1.1.1.2 kardel This release includes build infrastructure updates, code
7321 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
7322 1.1.1.2 kardel ref-clock issues, and documentation revisions.
7323 1.1.1.2 kardel
7324 1.1.1.2 kardel Portability improvements affect AIX, HP-UX, Linux, OS X and 64-bit time_t.
7325 1.1.1.2 kardel
7326 1.1.1.2 kardel New features / changes in this release:
7327 1.1.1.2 kardel
7328 1.1.1.2 kardel Build system
7329 1.1.1.2 kardel
7330 1.1.1.2 kardel * Fix checking for struct rtattr
7331 1.1.1.2 kardel * Update config.guess and config.sub for AIX
7332 1.1.1.2 kardel * Upgrade required version of autogen and libopts for building
7333 1.1.1.2 kardel from our source code repository
7334 1.1.1.2 kardel
7335 1.1.1.2 kardel ntpd
7336 1.1.1.2 kardel
7337 1.1.1.2 kardel * Back-ported several fixes for Coverity warnings from ntp-dev
7338 1.1.1.2 kardel * Fix a rare boundary condition in UNLINK_EXPR_SLIST()
7339 1.1.1.2 kardel * Allow "logconfig =allall" configuration directive
7340 1.1.1.2 kardel * Bind tentative IPv6 addresses on Linux
7341 1.1.1.2 kardel * Correct WWVB/Spectracom driver to timestamp CR instead of LF
7342 1.1.1.2 kardel * Improved tally bit handling to prevent incorrect ntpq peer status reports
7343 1.1.1.2 kardel * Exclude the Undisciplined Local Clock and ACTS drivers from the initial
7344 1.1.1.2 kardel candidate list unless they are designated a "prefer peer"
7345 1.1.1.2 kardel * Prevent the consideration of Undisciplined Local Clock or ACTS drivers for
7346 1.1.1.2 kardel selection during the 'tos orphanwait' period
7347 1.1.1.2 kardel * Prefer an Orphan Mode Parent over the Undisciplined Local Clock or ACTS
7348 1.1.1.2 kardel drivers
7349 1.1.1.2 kardel * Improved support of the Parse Refclock trusttime flag in Meinberg mode
7350 1.1.1.2 kardel * Back-port utility routines from ntp-dev: mprintf(), emalloc_zero()
7351 1.1.1.2 kardel * Added the NTPD_TICKADJ_PPM environment variable for specifying baseline
7352 1.1.1.2 kardel clock slew on Microsoft Windows
7353 1.1.1.2 kardel * Code cleanup in libntpq
7354 1.1.1.2 kardel
7355 1.1.1.2 kardel ntpdc
7356 1.1.1.2 kardel
7357 1.1.1.2 kardel * Fix timerstats reporting
7358 1.1.1.2 kardel
7359 1.1.1.2 kardel ntpdate
7360 1.1.1.2 kardel
7361 1.1.1.2 kardel * Reduce time required to set clock
7362 1.1.1.2 kardel * Allow a timeout greater than 2 seconds
7363 1.1.1.2 kardel
7364 1.1.1.2 kardel sntp
7365 1.1.1.2 kardel
7366 1.1.1.2 kardel * Backward incompatible command-line option change:
7367 1.1.1.2 kardel -l/--filelog changed -l/--logfile (to be consistent with ntpd)
7368 1.1.1.2 kardel
7369 1.1.1.2 kardel Documentation
7370 1.1.1.2 kardel
7371 1.1.1.2 kardel * Update html2man. Fix some tags in the .html files
7372 1.1.1.2 kardel * Distribute ntp-wait.html
7373 1.1.1.2 kardel
7374 1.1.1.2 kardel ---
7375 1.1.1.2 kardel NTP 4.2.6p3 (Harlan Stenn <stenn (a] ntp.org>, 2011/01/03)
7376 1.1.1.2 kardel
7377 1.1.1.2 kardel Focus: Bug fixes and portability improvements
7378 1.1.1.2 kardel
7379 1.1.1.2 kardel Severity: Medium
7380 1.1.1.2 kardel
7381 1.1.1.2 kardel This is a recommended upgrade.
7382 1.1.1.2 kardel
7383 1.1.1.2 kardel This release includes build infrastructure updates, code
7384 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
7385 1.1.1.2 kardel ref-clock issues, and documentation revisions.
7386 1.1.1.2 kardel
7387 1.1.1.2 kardel Portability improvements in this release affect AIX, Atari FreeMiNT,
7388 1.1.1.2 kardel FreeBSD4, Linux and Microsoft Windows.
7389 1.1.1.2 kardel
7390 1.1.1.2 kardel New features / changes in this release:
7391 1.1.1.2 kardel
7392 1.1.1.2 kardel Build system
7393 1.1.1.2 kardel * Use lsb_release to get information about Linux distributions.
7394 1.1.1.2 kardel * 'test' is in /usr/bin (instead of /bin) on some systems.
7395 1.1.1.2 kardel * Basic sanity checks for the ChangeLog file.
7396 1.1.1.2 kardel * Source certain build files with ./filename for systems without . in PATH.
7397 1.1.1.2 kardel * IRIX portability fix.
7398 1.1.1.2 kardel * Use a single copy of the "libopts" code.
7399 1.1.1.2 kardel * autogen/libopts upgrade.
7400 1.1.1.2 kardel * configure.ac m4 quoting cleanup.
7401 1.1.1.2 kardel
7402 1.1.1.2 kardel ntpd
7403 1.1.1.2 kardel * Do not bind to IN6_IFF_ANYCAST addresses.
7404 1.1.1.2 kardel * Log the reason for exiting under Windows.
7405 1.1.1.2 kardel * Multicast fixes for Windows.
7406 1.1.1.2 kardel * Interpolation fixes for Windows.
7407 1.1.1.2 kardel * IPv4 and IPv6 Multicast fixes.
7408 1.1.1.2 kardel * Manycast solicitation fixes and general repairs.
7409 1.1.1.2 kardel * JJY refclock cleanup.
7410 1.1.1.2 kardel * NMEA refclock improvements.
7411 1.1.1.2 kardel * Oncore debug message cleanup.
7412 1.1.1.2 kardel * Palisade refclock now builds under Linux.
7413 1.1.1.2 kardel * Give RAWDCF more baud rates.
7414 1.1.1.2 kardel * Support Truetime Satellite clocks under Windows.
7415 1.1.1.2 kardel * Support Arbiter 1093C Satellite clocks under Windows.
7416 1.1.1.2 kardel * Make sure that the "filegen" configuration command defaults to "enable".
7417 1.1.1.2 kardel * Range-check the status codes (plus other cleanup) in the RIPE-NCC driver.
7418 1.1.1.2 kardel * Prohibit 'includefile' directive in remote configuration command.
7419 1.1.1.2 kardel * Fix 'nic' interface bindings.
7420 1.1.1.2 kardel * Fix the way we link with openssl if openssl is installed in the base
7421 1.1.1.2 kardel system.
7422 1.1.1.2 kardel
7423 1.1.1.2 kardel ntp-keygen
7424 1.1.1.2 kardel * Fix -V coredump.
7425 1.1.1.2 kardel * OpenSSL version display cleanup.
7426 1.1.1.2 kardel
7427 1.1.1.2 kardel ntpdc
7428 1.1.1.2 kardel * Many counters should be treated as unsigned.
7429 1.1.1.2 kardel
7430 1.1.1.2 kardel ntpdate
7431 1.1.1.2 kardel * Do not ignore replies with equal receive and transmit timestamps.
7432 1.1.1.2 kardel
7433 1.1.1.2 kardel ntpq
7434 1.1.1.2 kardel * libntpq warning cleanup.
7435 1.1.1.2 kardel
7436 1.1.1.2 kardel ntpsnmpd
7437 1.1.1.2 kardel * Correct SNMP type for "precision" and "resolution".
7438 1.1.1.2 kardel * Update the MIB from the draft version to RFC-5907.
7439 1.1.1.2 kardel
7440 1.1.1.2 kardel sntp
7441 1.1.1.2 kardel * Display timezone offset when showing time for sntp in the local
7442 1.1.1.2 kardel timezone.
7443 1.1.1.2 kardel * Pay proper attention to RATE KoD packets.
7444 1.1.1.2 kardel * Fix a miscalculation of the offset.
7445 1.1.1.2 kardel * Properly parse empty lines in the key file.
7446 1.1.1.2 kardel * Logging cleanup.
7447 1.1.1.2 kardel * Use tv_usec correctly in set_time().
7448 1.1.1.2 kardel * Documentation cleanup.
7449 1.1.1.2 kardel
7450 1.1.1.2 kardel ---
7451 1.1.1.2 kardel NTP 4.2.6p2 (Harlan Stenn <stenn (a] ntp.org>, 2010/07/08)
7452 1.1.1.2 kardel
7453 1.1.1.2 kardel Focus: Bug fixes and portability improvements
7454 1.1.1.2 kardel
7455 1.1.1.2 kardel Severity: Medium
7456 1.1.1.2 kardel
7457 1.1.1.2 kardel This is a recommended upgrade.
7458 1.1.1.2 kardel
7459 1.1.1.2 kardel This release includes build infrastructure updates, code
7460 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
7461 1.1.1.2 kardel ref-clock issues, improved KOD handling, OpenSSL related
7462 1.1.1.2 kardel updates and documentation revisions.
7463 1.1.1.2 kardel
7464 1.1.1.2 kardel Portability improvements in this release affect Irix, Linux,
7465 1.1.1.2 kardel Mac OS, Microsoft Windows, OpenBSD and QNX6
7466 1.1.1.2 kardel
7467 1.1.1.2 kardel New features / changes in this release:
7468 1.1.1.2 kardel
7469 1.1.1.2 kardel ntpd
7470 1.1.1.2 kardel * Range syntax for the trustedkey configuration directive
7471 1.1.1.2 kardel * Unified IPv4 and IPv6 restrict lists
7472 1.1.1.2 kardel
7473 1.1.1.2 kardel ntpdate
7474 1.1.1.2 kardel * Rate limiting and KOD handling
7475 1.1.1.2 kardel
7476 1.1.1.2 kardel ntpsnmpd
7477 1.1.1.2 kardel * default connection to net-snmpd via a unix-domain socket
7478 1.1.1.2 kardel * command-line 'socket name' option
7479 1.1.1.2 kardel
7480 1.1.1.2 kardel ntpq / ntpdc
7481 1.1.1.2 kardel * support for the "passwd ..." syntax
7482 1.1.1.2 kardel * key-type specific password prompts
7483 1.1.1.2 kardel
7484 1.1.1.2 kardel sntp
7485 1.1.1.2 kardel * MD5 authentication of an ntpd
7486 1.1.1.2 kardel * Broadcast and crypto
7487 1.1.1.2 kardel * OpenSSL support
7488 1.1.1.2 kardel
7489 1.1.1.2 kardel ---
7490 1.1.1.2 kardel NTP 4.2.6p1 (Harlan Stenn <stenn (a] ntp.org>, 2010/04/09)
7491 1.1.1.2 kardel
7492 1.1.1.2 kardel Focus: Bug fixes, portability fixes, and documentation improvements
7493 1.1.1.2 kardel
7494 1.1.1.2 kardel Severity: Medium
7495 1.1.1.2 kardel
7496 1.1.1.2 kardel This is a recommended upgrade.
7497 1.1.1.2 kardel
7498 1.1.1.2 kardel ---
7499 1.1.1.2 kardel NTP 4.2.6 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
7500 1.1.1.2 kardel
7501 1.1.1.2 kardel Focus: enhancements and bug fixes.
7502 1.1.1.2 kardel
7503 1.1.1.2 kardel ---
7504 1.1 kardel NTP 4.2.4p8 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
7505 1.1 kardel
7506 1.1 kardel Focus: Security Fixes
7507 1.1 kardel
7508 1.1 kardel Severity: HIGH
7509 1.1 kardel
7510 1.1 kardel This release fixes the following high-severity vulnerability:
7511 1.1 kardel
7512 1.1 kardel * [Sec 1331] DoS with mode 7 packets - CVE-2009-3563.
7513 1.1 kardel
7514 1.1 kardel See http://support.ntp.org/security for more information.
7515 1.1 kardel
7516 1.1 kardel NTP mode 7 (MODE_PRIVATE) is used by the ntpdc query and control utility.
7517 1.1 kardel In contrast, ntpq uses NTP mode 6 (MODE_CONTROL), while routine NTP time
7518 1.1 kardel transfers use modes 1 through 5. Upon receipt of an incorrect mode 7
7519 1.1 kardel request or a mode 7 error response from an address which is not listed
7520 1.1 kardel in a "restrict ... noquery" or "restrict ... ignore" statement, ntpd will
7521 1.1 kardel reply with a mode 7 error response (and log a message). In this case:
7522 1.1 kardel
7523 1.1 kardel * If an attacker spoofs the source address of ntpd host A in a
7524 1.1 kardel mode 7 response packet sent to ntpd host B, both A and B will
7525 1.1 kardel continuously send each other error responses, for as long as
7526 1.1 kardel those packets get through.
7527 1.1 kardel
7528 1.1 kardel * If an attacker spoofs an address of ntpd host A in a mode 7
7529 1.1 kardel response packet sent to ntpd host A, A will respond to itself
7530 1.1 kardel endlessly, consuming CPU and logging excessively.
7531 1.1 kardel
7532 1.1 kardel Credit for finding this vulnerability goes to Robin Park and Dmitri
7533 1.1 kardel Vinokurov of Alcatel-Lucent.
7534 1.1 kardel
7535 1.1 kardel THIS IS A STRONGLY RECOMMENDED UPGRADE.
7536 1.1 kardel
7537 1.1 kardel ---
7538 1.1 kardel ntpd now syncs to refclocks right away.
7539 1.1 kardel
7540 1.1.1.2 kardel Backward-Incompatible changes:
7541 1.1 kardel
7542 1.1 kardel ntpd no longer accepts '-v name' or '-V name' to define internal variables.
7543 1.1 kardel Use '--var name' or '--dvar name' instead. (Bug 817)
7544 1.1 kardel
7545 1.1 kardel ---
7546 1.1 kardel NTP 4.2.4p7 (Harlan Stenn <stenn (a] ntp.org>, 2009/05/04)
7547 1.1 kardel
7548 1.1 kardel Focus: Security and Bug Fixes
7549 1.1 kardel
7550 1.1 kardel Severity: HIGH
7551 1.1 kardel
7552 1.1 kardel This release fixes the following high-severity vulnerability:
7553 1.1 kardel
7554 1.1 kardel * [Sec 1151] Remote exploit if autokey is enabled. CVE-2009-1252
7555 1.1 kardel
7556 1.1 kardel See http://support.ntp.org/security for more information.
7557 1.1 kardel
7558 1.1 kardel If autokey is enabled (if ntp.conf contains a "crypto pw whatever"
7559 1.1 kardel line) then a carefully crafted packet sent to the machine will cause
7560 1.1 kardel a buffer overflow and possible execution of injected code, running
7561 1.1 kardel with the privileges of the ntpd process (often root).
7562 1.1 kardel
7563 1.1 kardel Credit for finding this vulnerability goes to Chris Ries of CMU.
7564 1.1 kardel
7565 1.1 kardel This release fixes the following low-severity vulnerabilities:
7566 1.1 kardel
7567 1.1 kardel * [Sec 1144] limited (two byte) buffer overflow in ntpq. CVE-2009-0159
7568 1.1 kardel Credit for finding this vulnerability goes to Geoff Keating of Apple.
7569 1.1 kardel
7570 1.1 kardel * [Sec 1149] use SO_EXCLUSIVEADDRUSE on Windows
7571 1.1 kardel Credit for finding this issue goes to Dave Hart.
7572 1.1 kardel
7573 1.1 kardel This release fixes a number of bugs and adds some improvements:
7574 1.1 kardel
7575 1.1 kardel * Improved logging
7576 1.1 kardel * Fix many compiler warnings
7577 1.1 kardel * Many fixes and improvements for Windows
7578 1.1 kardel * Adds support for AIX 6.1
7579 1.1 kardel * Resolves some issues under MacOS X and Solaris
7580 1.1 kardel
7581 1.1 kardel THIS IS A STRONGLY RECOMMENDED UPGRADE.
7582 1.1 kardel
7583 1.1 kardel ---
7584 1.1 kardel NTP 4.2.4p6 (Harlan Stenn <stenn (a] ntp.org>, 2009/01/07)
7585 1.1 kardel
7586 1.1 kardel Focus: Security Fix
7587 1.1 kardel
7588 1.1 kardel Severity: Low
7589 1.1 kardel
7590 1.1 kardel This release fixes oCERT.org's CVE-2009-0021, a vulnerability affecting
7591 1.1 kardel the OpenSSL library relating to the incorrect checking of the return
7592 1.1 kardel value of EVP_VerifyFinal function.
7593 1.1 kardel
7594 1.1 kardel Credit for finding this issue goes to the Google Security Team for
7595 1.1 kardel finding the original issue with OpenSSL, and to ocert.org for finding
7596 1.1 kardel the problem in NTP and telling us about it.
7597 1.1 kardel
7598 1.1 kardel This is a recommended upgrade.
7599 1.1 kardel ---
7600 1.1 kardel NTP 4.2.4p5 (Harlan Stenn <stenn (a] ntp.org>, 2008/08/17)
7601 1.1 kardel
7602 1.1 kardel Focus: Minor Bugfixes
7603 1.1 kardel
7604 1.1 kardel This release fixes a number of Windows-specific ntpd bugs and
7605 1.1 kardel platform-independent ntpdate bugs. A logging bugfix has been applied
7606 1.1 kardel to the ONCORE driver.
7607 1.1 kardel
7608 1.1 kardel The "dynamic" keyword and is now obsolete and deferred binding to local
7609 1.1 kardel interfaces is the new default. The minimum time restriction for the
7610 1.1 kardel interface update interval has been dropped.
7611 1.1 kardel
7612 1.1 kardel A number of minor build system and documentation fixes are included.
7613 1.1 kardel
7614 1.1 kardel This is a recommended upgrade for Windows.
7615 1.1 kardel
7616 1.1 kardel ---
7617 1.1 kardel NTP 4.2.4p4 (Harlan Stenn <stenn (a] ntp.org>, 2007/09/10)
7618 1.1 kardel
7619 1.1 kardel Focus: Minor Bugfixes
7620 1.1 kardel
7621 1.1 kardel This release updates certain copyright information, fixes several display
7622 1.1 kardel bugs in ntpdc, avoids SIGIO interrupting malloc(), cleans up file descriptor
7623 1.1 kardel shutdown in the parse refclock driver, removes some lint from the code,
7624 1.1 kardel stops accessing certain buffers immediately after they were freed, fixes
7625 1.1 kardel a problem with non-command-line specification of -6, and allows the loopback
7626 1.1 kardel interface to share addresses with other interfaces.
7627 1.1 kardel
7628 1.1 kardel ---
7629 1.1 kardel NTP 4.2.4p3 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/29)
7630 1.1 kardel
7631 1.1 kardel Focus: Minor Bugfixes
7632 1.1 kardel
7633 1.1 kardel This release fixes a bug in Windows that made it difficult to
7634 1.1 kardel terminate ntpd under windows.
7635 1.1 kardel This is a recommended upgrade for Windows.
7636 1.1 kardel
7637 1.1 kardel ---
7638 1.1 kardel NTP 4.2.4p2 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/19)
7639 1.1 kardel
7640 1.1 kardel Focus: Minor Bugfixes
7641 1.1 kardel
7642 1.1 kardel This release fixes a multicast mode authentication problem,
7643 1.1 kardel an error in NTP packet handling on Windows that could lead to
7644 1.1 kardel ntpd crashing, and several other minor bugs. Handling of
7645 1.1 kardel multicast interfaces and logging configuration were improved.
7646 1.1 kardel The required versions of autogen and libopts were incremented.
7647 1.1 kardel This is a recommended upgrade for Windows and multicast users.
7648 1.1 kardel
7649 1.1 kardel ---
7650 1.1 kardel NTP 4.2.4 (Harlan Stenn <stenn (a] ntp.org>, 2006/12/31)
7651 1.1 kardel
7652 1.1 kardel Focus: enhancements and bug fixes.
7653 1.1 kardel
7654 1.1 kardel Dynamic interface rescanning was added to simplify the use of ntpd in
7655 1.1 kardel conjunction with DHCP. GNU AutoGen is used for its command-line options
7656 1.1 kardel processing. Separate PPS devices are supported for PARSE refclocks, MD5
7657 1.1 kardel signatures are now provided for the release files. Drivers have been
7658 1.1 kardel added for some new ref-clocks and have been removed for some older
7659 1.1 kardel ref-clocks. This release also includes other improvements, documentation
7660 1.1 kardel and bug fixes.
7661 1.1 kardel
7662 1.1 kardel K&R C is no longer supported as of NTP-4.2.4. We are now aiming for ANSI
7663 1.1 kardel C support.
7664 1.1 kardel
7665 1.1 kardel ---
7666 1.1 kardel NTP 4.2.0 (Harlan Stenn <stenn (a] ntp.org>, 2003/10/15)
7667 1.1 kardel
7668 1.1 kardel Focus: enhancements and bug fixes.
7669