NEWS revision 1.1.1.12.4.1 1 1.1.1.12 christos --
2 1.1.1.12.4.1 msaitoh NTP 4.2.8p11 (Harlan Stenn <stenn (a] ntp.org>, 2018/02/27)
3 1.1.1.12.4.1 msaitoh
4 1.1.1.12.4.1 msaitoh NOTE: this NEWS file will be undergoing more revisions.
5 1.1.1.12.4.1 msaitoh
6 1.1.1.12.4.1 msaitoh Focus: Security, Bug fixes, enhancements.
7 1.1.1.12.4.1 msaitoh
8 1.1.1.12.4.1 msaitoh Severity: MEDIUM
9 1.1.1.12.4.1 msaitoh
10 1.1.1.12.4.1 msaitoh This release fixes 2 low-/medium-, 1 informational/medum-, and 2 low-severity
11 1.1.1.12.4.1 msaitoh vulnerabilities in ntpd, one medium-severity vulernability in ntpq, and
12 1.1.1.12.4.1 msaitoh provides 65 other non-security fixes and improvements:
13 1.1.1.12.4.1 msaitoh
14 1.1.1.12.4.1 msaitoh * NTP Bug 3454: Unauthenticated packet can reset authenticated interleaved
15 1.1.1.12.4.1 msaitoh association (LOW/MED)
16 1.1.1.12.4.1 msaitoh Date Resolved: Stable (4.2.8p11) 27 Feb 2018
17 1.1.1.12.4.1 msaitoh References: Sec 3454 / CVE-2018-7185 / VU#961909
18 1.1.1.12.4.1 msaitoh Affects: ntp-4.2.6, up to but not including ntp-4.2.8p11.
19 1.1.1.12.4.1 msaitoh CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:N/I:N/A:P) This could score between
20 1.1.1.12.4.1 msaitoh 2.9 and 6.8.
21 1.1.1.12.4.1 msaitoh 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
22 1.1.1.12.4.1 msaitoh score between 2.6 and 3.1
23 1.1.1.12.4.1 msaitoh Summary:
24 1.1.1.12.4.1 msaitoh The NTP Protocol allows for both non-authenticated and
25 1.1.1.12.4.1 msaitoh authenticated associations, in client/server, symmetric (peer),
26 1.1.1.12.4.1 msaitoh and several broadcast modes. In addition to the basic NTP
27 1.1.1.12.4.1 msaitoh operational modes, symmetric mode and broadcast servers can
28 1.1.1.12.4.1 msaitoh support an interleaved mode of operation. In ntp-4.2.8p4 a bug
29 1.1.1.12.4.1 msaitoh was inadvertently introduced into the protocol engine that
30 1.1.1.12.4.1 msaitoh allows a non-authenticated zero-origin (reset) packet to reset
31 1.1.1.12.4.1 msaitoh an authenticated interleaved peer association. If an attacker
32 1.1.1.12.4.1 msaitoh can send a packet with a zero-origin timestamp and the source
33 1.1.1.12.4.1 msaitoh IP address of the "other side" of an interleaved association,
34 1.1.1.12.4.1 msaitoh the 'victim' ntpd will reset its association. The attacker must
35 1.1.1.12.4.1 msaitoh continue sending these packets in order to maintain the
36 1.1.1.12.4.1 msaitoh disruption of the association. In ntp-4.0.0 thru ntp-4.2.8p6,
37 1.1.1.12.4.1 msaitoh interleave mode could be entered dynamically. As of ntp-4.2.8p7,
38 1.1.1.12.4.1 msaitoh interleaved mode must be explicitly configured/enabled.
39 1.1.1.12.4.1 msaitoh Mitigation:
40 1.1.1.12.4.1 msaitoh Implement BCP-38.
41 1.1.1.12.4.1 msaitoh Upgrade to 4.2.8p11, or later, from the NTP Project Download Page
42 1.1.1.12.4.1 msaitoh or the NTP Public Services Project Download Page.
43 1.1.1.12.4.1 msaitoh If you are unable to upgrade to 4.2.8p11 or later and have
44 1.1.1.12.4.1 msaitoh 'peer HOST xleave' lines in your ntp.conf file, remove the
45 1.1.1.12.4.1 msaitoh 'xleave' option.
46 1.1.1.12.4.1 msaitoh Have enough sources of time.
47 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances.
48 1.1.1.12.4.1 msaitoh If ntpd stops running, auto-restart it without -g .
49 1.1.1.12.4.1 msaitoh Credit:
50 1.1.1.12.4.1 msaitoh This weakness was discovered by Miroslav Lichvar of Red Hat.
51 1.1.1.12.4.1 msaitoh
52 1.1.1.12.4.1 msaitoh * NTP Bug 3453: Interleaved symmetric mode cannot recover from bad
53 1.1.1.12.4.1 msaitoh state (LOW/MED)
54 1.1.1.12.4.1 msaitoh Date Resolved: Stable (4.2.8p11) 27 Feb 2018
55 1.1.1.12.4.1 msaitoh References: Sec 3453 / CVE-2018-7184 / VU#961909
56 1.1.1.12.4.1 msaitoh Affects: ntpd in ntp-4.2.8p4, up to but not including ntp-4.2.8p11.
57 1.1.1.12.4.1 msaitoh CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:P/I:N/A:N)
58 1.1.1.12.4.1 msaitoh Could score between 2.9 and 6.8.
59 1.1.1.12.4.1 msaitoh CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
60 1.1.1.12.4.1 msaitoh Could score between 2.6 and 6.0.
61 1.1.1.12.4.1 msaitoh Summary:
62 1.1.1.12.4.1 msaitoh The fix for NtpBug2952 was incomplete, and while it fixed one
63 1.1.1.12.4.1 msaitoh problem it created another. Specifically, it drops bad packets
64 1.1.1.12.4.1 msaitoh before updating the "received" timestamp. This means a
65 1.1.1.12.4.1 msaitoh third-party can inject a packet with a zero-origin timestamp,
66 1.1.1.12.4.1 msaitoh meaning the sender wants to reset the association, and the
67 1.1.1.12.4.1 msaitoh transmit timestamp in this bogus packet will be saved as the
68 1.1.1.12.4.1 msaitoh most recent "received" timestamp. The real remote peer does
69 1.1.1.12.4.1 msaitoh not know this value and this will disrupt the association until
70 1.1.1.12.4.1 msaitoh the association resets.
71 1.1.1.12.4.1 msaitoh Mitigation:
72 1.1.1.12.4.1 msaitoh Implement BCP-38.
73 1.1.1.12.4.1 msaitoh Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
74 1.1.1.12.4.1 msaitoh or the NTP Public Services Project Download Page.
75 1.1.1.12.4.1 msaitoh Use authentication with 'peer' mode.
76 1.1.1.12.4.1 msaitoh Have enough sources of time.
77 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances.
78 1.1.1.12.4.1 msaitoh If ntpd stops running, auto-restart it without -g .
79 1.1.1.12.4.1 msaitoh Credit:
80 1.1.1.12.4.1 msaitoh This weakness was discovered by Miroslav Lichvar of Red Hat.
81 1.1.1.12.4.1 msaitoh
82 1.1.1.12.4.1 msaitoh * NTP Bug 3415: Provide a way to prevent authenticated symmetric passive
83 1.1.1.12.4.1 msaitoh peering (LOW)
84 1.1.1.12.4.1 msaitoh Date Resolved: Stable (4.2.8p11) 27 Feb 2018
85 1.1.1.12.4.1 msaitoh References: Sec 3415 / CVE-2018-7170 / VU#961909
86 1.1.1.12.4.1 msaitoh Sec 3012 / CVE-2016-1549 / VU#718152
87 1.1.1.12.4.1 msaitoh Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
88 1.1.1.12.4.1 msaitoh 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
89 1.1.1.12.4.1 msaitoh CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
90 1.1.1.12.4.1 msaitoh CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N
91 1.1.1.12.4.1 msaitoh Summary:
92 1.1.1.12.4.1 msaitoh ntpd can be vulnerable to Sybil attacks. If a system is set up to
93 1.1.1.12.4.1 msaitoh use a trustedkey and if one is not using the feature introduced in
94 1.1.1.12.4.1 msaitoh ntp-4.2.8p6 allowing an optional 4th field in the ntp.keys file to
95 1.1.1.12.4.1 msaitoh specify which IPs can serve time, a malicious authenticated peer
96 1.1.1.12.4.1 msaitoh -- i.e. one where the attacker knows the private symmetric key --
97 1.1.1.12.4.1 msaitoh can create arbitrarily-many ephemeral associations in order to win
98 1.1.1.12.4.1 msaitoh the clock selection of ntpd and modify a victim's clock. Three
99 1.1.1.12.4.1 msaitoh additional protections are offered in ntp-4.2.8p11. One is the
100 1.1.1.12.4.1 msaitoh new 'noepeer' directive, which disables symmetric passive
101 1.1.1.12.4.1 msaitoh ephemeral peering. Another is the new 'ippeerlimit' directive,
102 1.1.1.12.4.1 msaitoh which limits the number of peers that can be created from an IP.
103 1.1.1.12.4.1 msaitoh The third extends the functionality of the 4th field in the
104 1.1.1.12.4.1 msaitoh ntp.keys file to include specifying a subnet range.
105 1.1.1.12.4.1 msaitoh Mitigation:
106 1.1.1.12.4.1 msaitoh Implement BCP-38.
107 1.1.1.12.4.1 msaitoh Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
108 1.1.1.12.4.1 msaitoh or the NTP Public Services Project Download Page.
109 1.1.1.12.4.1 msaitoh Use the 'noepeer' directive to prohibit symmetric passive
110 1.1.1.12.4.1 msaitoh ephemeral associations.
111 1.1.1.12.4.1 msaitoh Use the 'ippeerlimit' directive to limit the number of peers
112 1.1.1.12.4.1 msaitoh that can be created from an IP.
113 1.1.1.12.4.1 msaitoh Use the 4th argument in the ntp.keys file to limit the IPs and
114 1.1.1.12.4.1 msaitoh subnets that can be time servers.
115 1.1.1.12.4.1 msaitoh Have enough sources of time.
116 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances.
117 1.1.1.12.4.1 msaitoh If ntpd stops running, auto-restart it without -g .
118 1.1.1.12.4.1 msaitoh Credit:
119 1.1.1.12.4.1 msaitoh This weakness was reported as Bug 3012 by Matthew Van Gundy of
120 1.1.1.12.4.1 msaitoh Cisco ASIG, and separately by Stefan Moser as Bug 3415.
121 1.1.1.12.4.1 msaitoh
122 1.1.1.12.4.1 msaitoh * ntpq Bug 3414: decodearr() can write beyond its 'buf' limits (Medium)
123 1.1.1.12.4.1 msaitoh Date Resolved: 27 Feb 2018
124 1.1.1.12.4.1 msaitoh References: Sec 3414 / CVE-2018-7183 / VU#961909
125 1.1.1.12.4.1 msaitoh Affects: ntpq in ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
126 1.1.1.12.4.1 msaitoh CVSS2: MED 6.8 (AV:N/AC:M/Au:N/C:P/I:P/A:P)
127 1.1.1.12.4.1 msaitoh CVSS3: MED 5.0 CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L
128 1.1.1.12.4.1 msaitoh Summary:
129 1.1.1.12.4.1 msaitoh ntpq is a monitoring and control program for ntpd. decodearr()
130 1.1.1.12.4.1 msaitoh is an internal function of ntpq that is used to -- wait for it --
131 1.1.1.12.4.1 msaitoh decode an array in a response string when formatted data is being
132 1.1.1.12.4.1 msaitoh displayed. This is a problem in affected versions of ntpq if a
133 1.1.1.12.4.1 msaitoh maliciously-altered ntpd returns an array result that will trip this
134 1.1.1.12.4.1 msaitoh bug, or if a bad actor is able to read an ntpq request on its way to
135 1.1.1.12.4.1 msaitoh a remote ntpd server and forge and send a response before the remote
136 1.1.1.12.4.1 msaitoh ntpd sends its response. It's potentially possible that the
137 1.1.1.12.4.1 msaitoh malicious data could become injectable/executable code.
138 1.1.1.12.4.1 msaitoh Mitigation:
139 1.1.1.12.4.1 msaitoh Implement BCP-38.
140 1.1.1.12.4.1 msaitoh Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
141 1.1.1.12.4.1 msaitoh or the NTP Public Services Project Download Page.
142 1.1.1.12.4.1 msaitoh Credit:
143 1.1.1.12.4.1 msaitoh This weakness was discovered by Michael Macnair of Thales e-Security.
144 1.1.1.12.4.1 msaitoh
145 1.1.1.12.4.1 msaitoh * NTP Bug 3412: ctl_getitem(): buffer read overrun leads to undefined
146 1.1.1.12.4.1 msaitoh behavior and information leak (Info/Medium)
147 1.1.1.12.4.1 msaitoh Date Resolved: 27 Feb 2018
148 1.1.1.12.4.1 msaitoh References: Sec 3412 / CVE-2018-7182 / VU#961909
149 1.1.1.12.4.1 msaitoh Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p11.
150 1.1.1.12.4.1 msaitoh CVSS2: INFO 0.0 - MED 5.0 (AV:N/AC:L/Au:N/C:P/I:N/A:N) 0.0 if C:N
151 1.1.1.12.4.1 msaitoh 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
152 1.1.1.12.4.1 msaitoh 0.0 if C:N
153 1.1.1.12.4.1 msaitoh Summary:
154 1.1.1.12.4.1 msaitoh ctl_getitem() is used by ntpd to process incoming mode 6 packets.
155 1.1.1.12.4.1 msaitoh A malicious mode 6 packet can be sent to an ntpd instance, and
156 1.1.1.12.4.1 msaitoh if the ntpd instance is from 4.2.8p6 thru 4.2.8p10, that will
157 1.1.1.12.4.1 msaitoh cause ctl_getitem() to read past the end of its buffer.
158 1.1.1.12.4.1 msaitoh Mitigation:
159 1.1.1.12.4.1 msaitoh Implement BCP-38.
160 1.1.1.12.4.1 msaitoh Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page
161 1.1.1.12.4.1 msaitoh or the NTP Public Services Project Download Page.
162 1.1.1.12.4.1 msaitoh Have enough sources of time.
163 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances.
164 1.1.1.12.4.1 msaitoh If ntpd stops running, auto-restart it without -g .
165 1.1.1.12.4.1 msaitoh Credit:
166 1.1.1.12.4.1 msaitoh This weakness was discovered by Yihan Lian of Qihoo 360.
167 1.1.1.12.4.1 msaitoh
168 1.1.1.12.4.1 msaitoh * NTP Bug 3012: Sybil vulnerability: ephemeral association attack
169 1.1.1.12.4.1 msaitoh Also see Bug 3415, above.
170 1.1.1.12.4.1 msaitoh Date Mitigated: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
171 1.1.1.12.4.1 msaitoh Date Resolved: Stable (4.2.8p11) 27 Feb 2018
172 1.1.1.12.4.1 msaitoh References: Sec 3012 / CVE-2016-1549 / VU#718152
173 1.1.1.12.4.1 msaitoh Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
174 1.1.1.12.4.1 msaitoh 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11.
175 1.1.1.12.4.1 msaitoh CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
176 1.1.1.12.4.1 msaitoh CVSS3: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
177 1.1.1.12.4.1 msaitoh Summary:
178 1.1.1.12.4.1 msaitoh ntpd can be vulnerable to Sybil attacks. If a system is set up
179 1.1.1.12.4.1 msaitoh to use a trustedkey and if one is not using the feature
180 1.1.1.12.4.1 msaitoh introduced in ntp-4.2.8p6 allowing an optional 4th field in the
181 1.1.1.12.4.1 msaitoh ntp.keys file to specify which IPs can serve time, a malicious
182 1.1.1.12.4.1 msaitoh authenticated peer -- i.e. one where the attacker knows the
183 1.1.1.12.4.1 msaitoh private symmetric key -- can create arbitrarily-many ephemeral
184 1.1.1.12.4.1 msaitoh associations in order to win the clock selection of ntpd and
185 1.1.1.12.4.1 msaitoh modify a victim's clock. Two additional protections are
186 1.1.1.12.4.1 msaitoh offered in ntp-4.2.8p11. One is the 'noepeer' directive, which
187 1.1.1.12.4.1 msaitoh disables symmetric passive ephemeral peering. The other extends
188 1.1.1.12.4.1 msaitoh the functionality of the 4th field in the ntp.keys file to
189 1.1.1.12.4.1 msaitoh include specifying a subnet range.
190 1.1.1.12.4.1 msaitoh Mitigation:
191 1.1.1.12.4.1 msaitoh Implement BCP-38.
192 1.1.1.12.4.1 msaitoh Upgrade to 4.2.8p11, or later, from the NTP Project Download Page or
193 1.1.1.12.4.1 msaitoh the NTP Public Services Project Download Page.
194 1.1.1.12.4.1 msaitoh Use the 'noepeer' directive to prohibit symmetric passive
195 1.1.1.12.4.1 msaitoh ephemeral associations.
196 1.1.1.12.4.1 msaitoh Use the 'ippeerlimit' directive to limit the number of peer
197 1.1.1.12.4.1 msaitoh associations from an IP.
198 1.1.1.12.4.1 msaitoh Use the 4th argument in the ntp.keys file to limit the IPs
199 1.1.1.12.4.1 msaitoh and subnets that can be time servers.
200 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances.
201 1.1.1.12.4.1 msaitoh Credit:
202 1.1.1.12.4.1 msaitoh This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
203 1.1.1.12.4.1 msaitoh
204 1.1.1.12.4.1 msaitoh * Bug fixes:
205 1.1.1.12.4.1 msaitoh [Bug 3457] OpenSSL FIPS mode regression <perlinger (a] ntp.org>
206 1.1.1.12.4.1 msaitoh [Bug 3455] ntpd doesn't use scope id when binding multicast <perlinger (a] ntp.org>
207 1.1.1.12.4.1 msaitoh - applied patch by Sean Haugh
208 1.1.1.12.4.1 msaitoh [Bug 3452] PARSE driver prints uninitialized memory. <perlinger (a] ntp.org>
209 1.1.1.12.4.1 msaitoh [Bug 3450] Dubious error messages from plausibility checks in get_systime()
210 1.1.1.12.4.1 msaitoh - removed error log caused by rounding/slew, ensured postcondition <perlinger (a] ntp.org>
211 1.1.1.12.4.1 msaitoh [Bug 3447] AES-128-CMAC (fixes) <perlinger (a] ntp.org>
212 1.1.1.12.4.1 msaitoh - refactoring the MAC code, too
213 1.1.1.12.4.1 msaitoh [Bug 3441] Validate the assumption that AF_UNSPEC is 0. stenn (a] ntp.org
214 1.1.1.12.4.1 msaitoh [Bug 3439] When running multiple commands / hosts in ntpq... <perlinger (a] ntp.org>
215 1.1.1.12.4.1 msaitoh - applied patch by ggarvey
216 1.1.1.12.4.1 msaitoh [Bug 3438] Negative values and values > 999 days in... <perlinger (a] ntp.org>
217 1.1.1.12.4.1 msaitoh - applied patch by ggarvey (with minor mods)
218 1.1.1.12.4.1 msaitoh [Bug 3437] ntpd tries to open socket with AF_UNSPEC domain
219 1.1.1.12.4.1 msaitoh - applied patch (with mods) by Miroslav Lichvar <perlinger (a] ntp.org>
220 1.1.1.12.4.1 msaitoh [Bug 3435] anchor NTP era alignment <perlinger (a] ntp.org>
221 1.1.1.12.4.1 msaitoh [Bug 3433] sntp crashes when run with -a. <stenn (a] ntp.org>
222 1.1.1.12.4.1 msaitoh [Bug 3430] ntpq dumps core (SIGSEGV) for "keytype md2"
223 1.1.1.12.4.1 msaitoh - fixed several issues with hash algos in ntpd, sntp, ntpq,
224 1.1.1.12.4.1 msaitoh ntpdc and the test suites <perlinger (a] ntp.org>
225 1.1.1.12.4.1 msaitoh [Bug 3424] Trimble Thunderbolt 1024 week millenium bug <perlinger (a] ntp.org>
226 1.1.1.12.4.1 msaitoh - initial patch by Daniel Pouzzner
227 1.1.1.12.4.1 msaitoh [Bug 3423] QNX adjtime() implementation error checking is
228 1.1.1.12.4.1 msaitoh wrong <perlinger (a] ntp.org>
229 1.1.1.12.4.1 msaitoh [Bug 3417] ntpq ifstats packet counters can be negative
230 1.1.1.12.4.1 msaitoh made IFSTATS counter quantities unsigned <perlinger (a] ntp.org>
231 1.1.1.12.4.1 msaitoh [Bug 3411] problem about SIGN(6) packet handling for ntp-4.2.8p10
232 1.1.1.12.4.1 msaitoh - raised receive buffer size to 1200 <perlinger (a] ntp.org>
233 1.1.1.12.4.1 msaitoh [Bug 3408] refclock_jjy.c: Avoid a wrong report of the coverity static
234 1.1.1.12.4.1 msaitoh analysis tool. <abe (a] ntp.org>
235 1.1.1.12.4.1 msaitoh [Bug 3405] update-leap.in: general cleanup, HTTPS support. Paul McMath.
236 1.1.1.12.4.1 msaitoh [Bug 3404] Fix openSSL DLL usage under Windows <perlinger (a] ntp.org>
237 1.1.1.12.4.1 msaitoh - fix/drop assumptions on OpenSSL libs directory layout
238 1.1.1.12.4.1 msaitoh [Bug 3399] NTP: linker error in 4.2.8p10 during Linux cross-compilation
239 1.1.1.12.4.1 msaitoh - initial patch by timeflies (a] mail2tor.com <perlinger (a] ntp.org>
240 1.1.1.12.4.1 msaitoh [Bug 3398] tests fail with core dump <perlinger (a] ntp.org>
241 1.1.1.12.4.1 msaitoh - patch contributed by Alexander Bluhm
242 1.1.1.12.4.1 msaitoh [Bug 3397] ctl_putstr() asserts that data fits in its buffer
243 1.1.1.12.4.1 msaitoh rework of formatting & data transfer stuff in 'ntp_control.c'
244 1.1.1.12.4.1 msaitoh avoids unecessary buffers and size limitations. <perlinger (a] ntp.org>
245 1.1.1.12.4.1 msaitoh [Bug 3394] Leap second deletion does not work on ntpd clients
246 1.1.1.12.4.1 msaitoh - fixed handling of dynamic deletion w/o leap file <perlinger (a] ntp.org>
247 1.1.1.12.4.1 msaitoh [Bug 3391] ntpd segfaults on startup due to small warmup thread stack size
248 1.1.1.12.4.1 msaitoh - increased mimimum stack size to 32kB <perlinger (a] ntp.org>
249 1.1.1.12.4.1 msaitoh [Bug 3367] Faulty LinuxPPS NMEA clock support in 4.2.8 <perlinger (a] ntp.org>
250 1.1.1.12.4.1 msaitoh - reverted handling of PPS kernel consumer to 4.2.6 behavior
251 1.1.1.12.4.1 msaitoh [Bug 3365] Updates driver40(-ja).html and miscopt.html <abe (a] ntp.org>
252 1.1.1.12.4.1 msaitoh [Bug 3358] Spurious KoD log messages in .INIT. phase. HStenn.
253 1.1.1.12.4.1 msaitoh [Bug 3016] wrong error position reported for bad ":config pool"
254 1.1.1.12.4.1 msaitoh - fixed location counter & ntpq output <perlinger (a] ntp.org>
255 1.1.1.12.4.1 msaitoh [Bug 2900] libntp build order problem. HStenn.
256 1.1.1.12.4.1 msaitoh [Bug 2878] Tests are cluttering up syslog <perlinger (a] ntp.org>
257 1.1.1.12.4.1 msaitoh [Bug 2737] Wrong phone number listed for USNO. ntp-bugs (a] bodosom.net,
258 1.1.1.12.4.1 msaitoh perlinger (a] ntp.org
259 1.1.1.12.4.1 msaitoh [Bug 2557] Fix Thunderbolt init. ntp-bugs (a] bodosom.net, perlinger@ntp.
260 1.1.1.12.4.1 msaitoh [Bug 948] Trustedkey config directive leaks memory. <perlinger (a] ntp.org>
261 1.1.1.12.4.1 msaitoh Use strlcpy() to copy strings, not memcpy(). HStenn.
262 1.1.1.12.4.1 msaitoh Typos. HStenn.
263 1.1.1.12.4.1 msaitoh test_ntp_scanner_LDADD needs ntpd/ntp_io.o. HStenn.
264 1.1.1.12.4.1 msaitoh refclock_jjy.c: Add missing "%s" to an msyslog() call. HStenn.
265 1.1.1.12.4.1 msaitoh Build ntpq and libntpq.a with NTP_HARD_*FLAGS. perlinger (a] ntp.org
266 1.1.1.12.4.1 msaitoh Fix trivial warnings from 'make check'. perlinger (a] ntp.org
267 1.1.1.12.4.1 msaitoh Fix bug in the override portion of the compiler hardening macro. HStenn.
268 1.1.1.12.4.1 msaitoh record_raw_stats(): Log entire packet. Log writes. HStenn.
269 1.1.1.12.4.1 msaitoh AES-128-CMAC support. BInglis, HStenn, JPerlinger.
270 1.1.1.12.4.1 msaitoh sntp: tweak key file logging. HStenn.
271 1.1.1.12.4.1 msaitoh sntp: pkt_output(): Improve debug output. HStenn.
272 1.1.1.12.4.1 msaitoh update-leap: updates from Paul McMath.
273 1.1.1.12.4.1 msaitoh When using pkg-config, report --modversion. HStenn.
274 1.1.1.12.4.1 msaitoh Clean up libevent configure checks. HStenn.
275 1.1.1.12.4.1 msaitoh sntp: show the IP of who sent us a crypto-NAK. HStenn.
276 1.1.1.12.4.1 msaitoh Allow .../N to specify subnet bits for IPs in ntp.keys. HStenn, JPerlinger.
277 1.1.1.12.4.1 msaitoh authistrustedip() - use it in more places. HStenn, JPerlinger.
278 1.1.1.12.4.1 msaitoh New sysstats: sys_lamport, sys_tsrounding. HStenn.
279 1.1.1.12.4.1 msaitoh Update ntp.keys .../N documentation. HStenn.
280 1.1.1.12.4.1 msaitoh Distribute testconf.yml. HStenn.
281 1.1.1.12.4.1 msaitoh Add DPRINTF(2,...) lines to receive() for packet drops. HStenn.
282 1.1.1.12.4.1 msaitoh Rename the configuration flag fifo variables. HStenn.
283 1.1.1.12.4.1 msaitoh Improve saveconfig output. HStenn.
284 1.1.1.12.4.1 msaitoh Decode restrict flags on receive() debug output. HStenn.
285 1.1.1.12.4.1 msaitoh Decode interface flags on receive() debug output. HStenn.
286 1.1.1.12.4.1 msaitoh Warn the user if deprecated "driftfile name WanderThreshold" is used. HStenn.
287 1.1.1.12.4.1 msaitoh Update the documentation in ntp.conf.def . HStenn.
288 1.1.1.12.4.1 msaitoh restrictions() must return restrict flags and ippeerlimit. HStenn.
289 1.1.1.12.4.1 msaitoh Update ntpq peer documentation to describe the 'p' type. HStenn.
290 1.1.1.12.4.1 msaitoh Rename restrict 'flags' to 'rflags. Use an enum for the values. HStenn.
291 1.1.1.12.4.1 msaitoh Provide dump_restricts() for debugging. HStenn.
292 1.1.1.12.4.1 msaitoh Use consistent 4th arg type for [gs]etsockopt. JPerlinger.
293 1.1.1.12.4.1 msaitoh
294 1.1.1.12.4.1 msaitoh * Other items:
295 1.1.1.12.4.1 msaitoh
296 1.1.1.12.4.1 msaitoh * update-leap needs the following perl modules:
297 1.1.1.12.4.1 msaitoh Net::SSLeay
298 1.1.1.12.4.1 msaitoh IO::Socket::SSL
299 1.1.1.12.4.1 msaitoh
300 1.1.1.12.4.1 msaitoh * New sysstats variables: sys_lamport, sys_tsrounding
301 1.1.1.12.4.1 msaitoh See them with: ntpq -c "rv 0 ss_lamport,ss_tsrounding"
302 1.1.1.12.4.1 msaitoh sys_lamport counts the number of observed Lamport violations, while
303 1.1.1.12.4.1 msaitoh sys_tsrounding counts observed timestamp rounding events.
304 1.1.1.12.4.1 msaitoh
305 1.1.1.12.4.1 msaitoh * New ntp.conf items:
306 1.1.1.12.4.1 msaitoh
307 1.1.1.12.4.1 msaitoh - restrict ... noepeer
308 1.1.1.12.4.1 msaitoh - restrict ... ippeerlimit N
309 1.1.1.12.4.1 msaitoh
310 1.1.1.12.4.1 msaitoh The 'noepeer' directive will disallow all ephemeral/passive peer
311 1.1.1.12.4.1 msaitoh requests.
312 1.1.1.12.4.1 msaitoh
313 1.1.1.12.4.1 msaitoh The 'ippeerlimit' directive limits the number of time associations
314 1.1.1.12.4.1 msaitoh for each IP in the designated set of addresses. This limit does not
315 1.1.1.12.4.1 msaitoh apply to explicitly-configured associations. A value of -1, the current
316 1.1.1.12.4.1 msaitoh default, means an unlimited number of associations may connect from a
317 1.1.1.12.4.1 msaitoh single IP. 0 means "none", etc. Ordinarily the only way multiple
318 1.1.1.12.4.1 msaitoh associations would come from the same IP would be if the remote side
319 1.1.1.12.4.1 msaitoh was using a proxy. But a trusted machine might become compromised,
320 1.1.1.12.4.1 msaitoh in which case an attacker might spin up multiple authenticated sessions
321 1.1.1.12.4.1 msaitoh from different ports. This directive should be helpful in this case.
322 1.1.1.12.4.1 msaitoh
323 1.1.1.12.4.1 msaitoh * New ntp.keys feature: Each IP in the optional list of IPs in the 4th
324 1.1.1.12.4.1 msaitoh field may contain a /subnetbits specification, which identifies the
325 1.1.1.12.4.1 msaitoh scope of IPs that may use this key. This IP/subnet restriction can be
326 1.1.1.12.4.1 msaitoh used to limit the IPs that may use the key in most all situations where
327 1.1.1.12.4.1 msaitoh a key is used.
328 1.1.1.12.4.1 msaitoh --
329 1.1.1.12 christos NTP 4.2.8p10 (Harlan Stenn <stenn (a] ntp.org>, 2017/03/21)
330 1.1.1.12 christos
331 1.1.1.12 christos Focus: Security, Bug fixes, enhancements.
332 1.1.1.12 christos
333 1.1.1.12 christos Severity: MEDIUM
334 1.1.1.12 christos
335 1.1.1.12 christos This release fixes 5 medium-, 6 low-, and 4 informational-severity
336 1.1.1.12 christos vulnerabilities, and provides 15 other non-security fixes and improvements:
337 1.1.1.12 christos
338 1.1.1.12 christos * NTP-01-016 NTP: Denial of Service via Malformed Config (Medium)
339 1.1.1.12 christos Date Resolved: 21 Mar 2017
340 1.1.1.12 christos References: Sec 3389 / CVE-2017-6464 / VU#325339
341 1.1.1.12 christos Affects: All versions of NTP-4, up to but not including ntp-4.2.8p10, and
342 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
343 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
344 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
345 1.1.1.12 christos Summary:
346 1.1.1.12 christos A vulnerability found in the NTP server makes it possible for an
347 1.1.1.12 christos authenticated remote user to crash ntpd via a malformed mode
348 1.1.1.12 christos configuration directive.
349 1.1.1.12 christos Mitigation:
350 1.1.1.12 christos Implement BCP-38.
351 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
352 1.1.1.12 christos the NTP Public Services Project Download Page
353 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
354 1.1.1.12 christos ntpd (without -g) if it stops running.
355 1.1.1.12 christos Credit:
356 1.1.1.12 christos This weakness was discovered by Cure53.
357 1.1.1.12 christos
358 1.1.1.12 christos * NTP-01-014 NTP: Buffer Overflow in DPTS Clock (Low)
359 1.1.1.12 christos Date Resolved: 21 Mar 2017
360 1.1.1.12 christos References: Sec 3388 / CVE-2017-6462 / VU#325339
361 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.
362 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
363 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
364 1.1.1.12 christos Summary:
365 1.1.1.12 christos There is a potential for a buffer overflow in the legacy Datum
366 1.1.1.12 christos Programmable Time Server refclock driver. Here the packets are
367 1.1.1.12 christos processed from the /dev/datum device and handled in
368 1.1.1.12 christos datum_pts_receive(). Since an attacker would be required to
369 1.1.1.12 christos somehow control a malicious /dev/datum device, this does not
370 1.1.1.12 christos appear to be a practical attack and renders this issue "Low" in
371 1.1.1.12 christos terms of severity.
372 1.1.1.12 christos Mitigation:
373 1.1.1.12 christos If you have a Datum reference clock installed and think somebody
374 1.1.1.12 christos may maliciously change the device, upgrade to 4.2.8p10, or
375 1.1.1.12 christos later, from the NTP Project Download Page or the NTP Public
376 1.1.1.12 christos Services Project Download Page
377 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
378 1.1.1.12 christos ntpd (without -g) if it stops running.
379 1.1.1.12 christos Credit:
380 1.1.1.12 christos This weakness was discovered by Cure53.
381 1.1.1.12 christos
382 1.1.1.12 christos * NTP-01-012 NTP: Authenticated DoS via Malicious Config Option (Medium)
383 1.1.1.12 christos Date Resolved: 21 Mar 2017
384 1.1.1.12 christos References: Sec 3387 / CVE-2017-6463 / VU#325339
385 1.1.1.12 christos Affects: All versions of ntp, up to but not including ntp-4.2.8p10, and
386 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
387 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
388 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
389 1.1.1.12 christos Summary:
390 1.1.1.12 christos A vulnerability found in the NTP server allows an authenticated
391 1.1.1.12 christos remote attacker to crash the daemon by sending an invalid setting
392 1.1.1.12 christos via the :config directive. The unpeer option expects a number or
393 1.1.1.12 christos an address as an argument. In case the value is "0", a
394 1.1.1.12 christos segmentation fault occurs.
395 1.1.1.12 christos Mitigation:
396 1.1.1.12 christos Implement BCP-38.
397 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
398 1.1.1.12 christos or the NTP Public Services Project Download Page
399 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
400 1.1.1.12 christos ntpd (without -g) if it stops running.
401 1.1.1.12 christos Credit:
402 1.1.1.12 christos This weakness was discovered by Cure53.
403 1.1.1.12 christos
404 1.1.1.12 christos * NTP-01-011 NTP: ntpq_stripquotes() returns incorrect value (Informational)
405 1.1.1.12 christos Date Resolved: 21 Mar 2017
406 1.1.1.12 christos References: Sec 3386
407 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
408 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
409 1.1.1.12 christos CVSS2: None 0.0 (AV:N/AC:H/Au:N/C:N/I:N/A:N)
410 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
411 1.1.1.12 christos Summary:
412 1.1.1.12 christos The NTP Mode 6 monitoring and control client, ntpq, uses the
413 1.1.1.12 christos function ntpq_stripquotes() to remove quotes and escape characters
414 1.1.1.12 christos from a given string. According to the documentation, the function
415 1.1.1.12 christos is supposed to return the number of copied bytes but due to
416 1.1.1.12 christos incorrect pointer usage this value is always zero. Although the
417 1.1.1.12 christos return value of this function is never used in the code, this
418 1.1.1.12 christos flaw could lead to a vulnerability in the future. Since relying
419 1.1.1.12 christos on wrong return values when performing memory operations is a
420 1.1.1.12 christos dangerous practice, it is recommended to return the correct value
421 1.1.1.12 christos in accordance with the documentation pertinent to the code.
422 1.1.1.12 christos Mitigation:
423 1.1.1.12 christos Implement BCP-38.
424 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
425 1.1.1.12 christos or the NTP Public Services Project Download Page
426 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
427 1.1.1.12 christos ntpd (without -g) if it stops running.
428 1.1.1.12 christos Credit:
429 1.1.1.12 christos This weakness was discovered by Cure53.
430 1.1.1.12 christos
431 1.1.1.12 christos * NTP-01-010 NTP: ereallocarray()/eallocarray() underused (Info)
432 1.1.1.12 christos Date Resolved: 21 Mar 2017
433 1.1.1.12 christos References: Sec 3385
434 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
435 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
436 1.1.1.12 christos Summary:
437 1.1.1.12 christos NTP makes use of several wrappers around the standard heap memory
438 1.1.1.12 christos allocation functions that are provided by libc. This is mainly
439 1.1.1.12 christos done to introduce additional safety checks concentrated on
440 1.1.1.12 christos several goals. First, they seek to ensure that memory is not
441 1.1.1.12 christos accidentally freed, secondly they verify that a correct amount
442 1.1.1.12 christos is always allocated and, thirdly, that allocation failures are
443 1.1.1.12 christos correctly handled. There is an additional implementation for
444 1.1.1.12 christos scenarios where memory for a specific amount of items of the
445 1.1.1.12 christos same size needs to be allocated. The handling can be found in
446 1.1.1.12 christos the oreallocarray() function for which a further number-of-elements
447 1.1.1.12 christos parameter needs to be provided. Although no considerable threat
448 1.1.1.12 christos was identified as tied to a lack of use of this function, it is
449 1.1.1.12 christos recommended to correctly apply oreallocarray() as a preferred
450 1.1.1.12 christos option across all of the locations where it is possible.
451 1.1.1.12 christos Mitigation:
452 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
453 1.1.1.12 christos or the NTP Public Services Project Download Page
454 1.1.1.12 christos Credit:
455 1.1.1.12 christos This weakness was discovered by Cure53.
456 1.1.1.12 christos
457 1.1.1.12 christos * NTP-01-009 NTP: Privileged execution of User Library code (WINDOWS
458 1.1.1.12 christos PPSAPI ONLY) (Low)
459 1.1.1.12 christos Date Resolved: 21 Mar 2017
460 1.1.1.12 christos References: Sec 3384 / CVE-2017-6455 / VU#325339
461 1.1.1.12 christos Affects: All Windows versions of ntp-4 that use the PPSAPI, up to but
462 1.1.1.12 christos not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not
463 1.1.1.12 christos including ntp-4.3.94.
464 1.1.1.12 christos CVSS2: MED 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
465 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
466 1.1.1.12 christos Summary:
467 1.1.1.12 christos The Windows NT port has the added capability to preload DLLs
468 1.1.1.12 christos defined in the inherited global local environment variable
469 1.1.1.12 christos PPSAPI_DLLS. The code contained within those libraries is then
470 1.1.1.12 christos called from the NTPD service, usually running with elevated
471 1.1.1.12 christos privileges. Depending on how securely the machine is setup and
472 1.1.1.12 christos configured, if ntpd is configured to use the PPSAPI under Windows
473 1.1.1.12 christos this can easily lead to a code injection.
474 1.1.1.12 christos Mitigation:
475 1.1.1.12 christos Implement BCP-38.
476 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
477 1.1.1.12 christos or the NTP Public Services Project Download Page
478 1.1.1.12 christos Credit:
479 1.1.1.12 christos This weakness was discovered by Cure53.
480 1.1.1.12 christos
481 1.1.1.12 christos * NTP-01-008 NTP: Stack Buffer Overflow from Command Line (WINDOWS
482 1.1.1.12 christos installer ONLY) (Low)
483 1.1.1.12 christos Date Resolved: 21 Mar 2017
484 1.1.1.12 christos References: Sec 3383 / CVE-2017-6452 / VU#325339
485 1.1.1.12 christos Affects: WINDOWS installer ONLY: All versions of the ntp-4 Windows
486 1.1.1.12 christos installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up
487 1.1.1.12 christos to, but not including ntp-4.3.94.
488 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
489 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
490 1.1.1.12 christos Summary:
491 1.1.1.12 christos The Windows installer for NTP calls strcat(), blindly appending
492 1.1.1.12 christos the string passed to the stack buffer in the addSourceToRegistry()
493 1.1.1.12 christos function. The stack buffer is 70 bytes smaller than the buffer
494 1.1.1.12 christos in the calling main() function. Together with the initially
495 1.1.1.12 christos copied Registry path, the combination causes a stack buffer
496 1.1.1.12 christos overflow and effectively overwrites the stack frame. The
497 1.1.1.12 christos passed application path is actually limited to 256 bytes by the
498 1.1.1.12 christos operating system, but this is not sufficient to assure that the
499 1.1.1.12 christos affected stack buffer is consistently protected against
500 1.1.1.12 christos overflowing at all times.
501 1.1.1.12 christos Mitigation:
502 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
503 1.1.1.12 christos or the NTP Public Services Project Download Page
504 1.1.1.12 christos Credit:
505 1.1.1.12 christos This weakness was discovered by Cure53.
506 1.1.1.12 christos
507 1.1.1.12 christos * NTP-01-007 NTP: Data Structure terminated insufficiently (WINDOWS
508 1.1.1.12 christos installer ONLY) (Low)
509 1.1.1.12 christos Date Resolved: 21 Mar 2017
510 1.1.1.12 christos References: Sec 3382 / CVE-2017-6459 / VU#325339
511 1.1.1.12 christos Affects: WINDOWS installer ONLY: All ntp-4 versions of the Windows
512 1.1.1.12 christos installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0
513 1.1.1.12 christos up to, but not including ntp-4.3.94.
514 1.1.1.12 christos CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
515 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
516 1.1.1.12 christos Summary:
517 1.1.1.12 christos The Windows installer for NTP calls strcpy() with an argument
518 1.1.1.12 christos that specifically contains multiple null bytes. strcpy() only
519 1.1.1.12 christos copies a single terminating null character into the target
520 1.1.1.12 christos buffer instead of copying the required double null bytes in the
521 1.1.1.12 christos addKeysToRegistry() function. As a consequence, a garbage
522 1.1.1.12 christos registry entry can be created. The additional arsize parameter
523 1.1.1.12 christos is erroneously set to contain two null bytes and the following
524 1.1.1.12 christos call to RegSetValueEx() claims to be passing in a multi-string
525 1.1.1.12 christos value, though this may not be true.
526 1.1.1.12 christos Mitigation:
527 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
528 1.1.1.12 christos or the NTP Public Services Project Download Page
529 1.1.1.12 christos Credit:
530 1.1.1.12 christos This weakness was discovered by Cure53.
531 1.1.1.12 christos
532 1.1.1.12 christos * NTP-01-006 NTP: Copious amounts of Unused Code (Informational)
533 1.1.1.12 christos References: Sec 3381
534 1.1.1.12 christos Summary:
535 1.1.1.12 christos The report says: Statically included external projects
536 1.1.1.12 christos potentially introduce several problems and the issue of having
537 1.1.1.12 christos extensive amounts of code that is "dead" in the resulting binary
538 1.1.1.12 christos must clearly be pointed out. The unnecessary unused code may or
539 1.1.1.12 christos may not contain bugs and, quite possibly, might be leveraged for
540 1.1.1.12 christos code-gadget-based branch-flow redirection exploits. Analogically,
541 1.1.1.12 christos having source trees statically included as well means a failure
542 1.1.1.12 christos in taking advantage of the free feature for periodical updates.
543 1.1.1.12 christos This solution is offered by the system's Package Manager. The
544 1.1.1.12 christos three libraries identified are libisc, libevent, and libopts.
545 1.1.1.12 christos Resolution:
546 1.1.1.12 christos For libisc, we already only use a portion of the original library.
547 1.1.1.12 christos We've found and fixed bugs in the original implementation (and
548 1.1.1.12 christos offered the patches to ISC), and plan to see what has changed
549 1.1.1.12 christos since we last upgraded the code. libisc is generally not
550 1.1.1.12 christos installed, and when it it we usually only see the static libisc.a
551 1.1.1.12 christos file installed. Until we know for sure that the bugs we've found
552 1.1.1.12 christos and fixed are fixed upstream, we're better off with the copy we
553 1.1.1.12 christos are using.
554 1.1.1.12 christos
555 1.1.1.12 christos Version 1 of libevent was the only production version available
556 1.1.1.12 christos until recently, and we've been requiring version 2 for a long time.
557 1.1.1.12 christos But if the build system has at least version 2 of libevent
558 1.1.1.12 christos installed, we'll use the version that is installed on the system.
559 1.1.1.12 christos Otherwise, we provide a copy of libevent that we know works.
560 1.1.1.12 christos
561 1.1.1.12 christos libopts is provided by GNU AutoGen, and that library and package
562 1.1.1.12 christos undergoes frequent API version updates. The version of autogen
563 1.1.1.12 christos used to generate the tables for the code must match the API
564 1.1.1.12 christos version in libopts. AutoGen can be ... difficult to build and
565 1.1.1.12 christos install, and very few developers really need it. So we have it
566 1.1.1.12 christos on our build and development machines, and we provide the
567 1.1.1.12 christos specific version of the libopts code in the distribution to make
568 1.1.1.12 christos sure that the proper API version of libopts is available.
569 1.1.1.12 christos
570 1.1.1.12 christos As for the point about there being code in these libraries that
571 1.1.1.12 christos NTP doesn't use, OK. But other packages used these libraries as
572 1.1.1.12 christos well, and it is reasonable to assume that other people are paying
573 1.1.1.12 christos attention to security and code quality issues for the overall
574 1.1.1.12 christos libraries. It takes significant resources to analyze and
575 1.1.1.12 christos customize these libraries to only include what we need, and to
576 1.1.1.12 christos date we believe the cost of this effort does not justify the benefit.
577 1.1.1.12 christos Credit:
578 1.1.1.12 christos This issue was discovered by Cure53.
579 1.1.1.12 christos
580 1.1.1.12 christos * NTP-01-005 NTP: Off-by-one in Oncore GPS Receiver (Low)
581 1.1.1.12 christos Date Resolved: 21 Mar 2017
582 1.1.1.12 christos References: Sec 3380
583 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
584 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
585 1.1.1.12 christos CVSS2: None 0.0 (AV:L/AC:H/Au:N/C:N/I:N/A:N)
586 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
587 1.1.1.12 christos Summary:
588 1.1.1.12 christos There is a fencepost error in a "recovery branch" of the code for
589 1.1.1.12 christos the Oncore GPS receiver if the communication link to the ONCORE
590 1.1.1.12 christos is weak / distorted and the decoding doesn't work.
591 1.1.1.12 christos Mitigation:
592 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or
593 1.1.1.12 christos the NTP Public Services Project Download Page
594 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
595 1.1.1.12 christos ntpd (without -g) if it stops running.
596 1.1.1.12 christos Credit:
597 1.1.1.12 christos This weakness was discovered by Cure53.
598 1.1.1.12 christos
599 1.1.1.12 christos * NTP-01-004 NTP: Potential Overflows in ctl_put() functions (Medium)
600 1.1.1.12 christos Date Resolved: 21 Mar 2017
601 1.1.1.12 christos References: Sec 3379 / CVE-2017-6458 / VU#325339
602 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
603 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
604 1.1.1.12 christos CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C)
605 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
606 1.1.1.12 christos Summary:
607 1.1.1.12 christos ntpd makes use of different wrappers around ctl_putdata() to
608 1.1.1.12 christos create name/value ntpq (mode 6) response strings. For example,
609 1.1.1.12 christos ctl_putstr() is usually used to send string data (variable names
610 1.1.1.12 christos or string data). The formatting code was missing a length check
611 1.1.1.12 christos for variable names. If somebody explicitly created any unusually
612 1.1.1.12 christos long variable names in ntpd (longer than 200-512 bytes, depending
613 1.1.1.12 christos on the type of variable), then if any of these variables are
614 1.1.1.12 christos added to the response list it would overflow a buffer.
615 1.1.1.12 christos Mitigation:
616 1.1.1.12 christos Implement BCP-38.
617 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
618 1.1.1.12 christos or the NTP Public Services Project Download Page
619 1.1.1.12 christos If you don't want to upgrade, then don't setvar variable names
620 1.1.1.12 christos longer than 200-512 bytes in your ntp.conf file.
621 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
622 1.1.1.12 christos ntpd (without -g) if it stops running.
623 1.1.1.12 christos Credit:
624 1.1.1.12 christos This weakness was discovered by Cure53.
625 1.1.1.12 christos
626 1.1.1.12 christos * NTP-01-003 NTP: Improper use of snprintf() in mx4200_send() (Low)
627 1.1.1.12 christos Date Resolved: 21 Mar 2017
628 1.1.1.12 christos References: Sec 3378 / CVE-2017-6451 / VU#325339
629 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
630 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
631 1.1.1.12 christos CVSS2: LOW 0.8 (AV:L/AC:H/Au:M/C:N/I:N/A:P)
632 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
633 1.1.1.12 christos Summary:
634 1.1.1.12 christos The legacy MX4200 refclock is only built if is specifically
635 1.1.1.12 christos enabled, and furthermore additional code changes are required to
636 1.1.1.12 christos compile and use it. But it uses the libc functions snprintf()
637 1.1.1.12 christos and vsnprintf() incorrectly, which can lead to an out-of-bounds
638 1.1.1.12 christos memory write due to an improper handling of the return value of
639 1.1.1.12 christos snprintf()/vsnprintf(). Since the return value is used as an
640 1.1.1.12 christos iterator and it can be larger than the buffer's size, it is
641 1.1.1.12 christos possible for the iterator to point somewhere outside of the
642 1.1.1.12 christos allocated buffer space. This results in an out-of-bound memory
643 1.1.1.12 christos write. This behavior can be leveraged to overwrite a saved
644 1.1.1.12 christos instruction pointer on the stack and gain control over the
645 1.1.1.12 christos execution flow. During testing it was not possible to identify
646 1.1.1.12 christos any malicious usage for this vulnerability. Specifically, no
647 1.1.1.12 christos way for an attacker to exploit this vulnerability was ultimately
648 1.1.1.12 christos unveiled. However, it has the potential to be exploited, so the
649 1.1.1.12 christos code should be fixed.
650 1.1.1.12 christos Mitigation, if you have a Magnavox MX4200 refclock:
651 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
652 1.1.1.12 christos or the NTP Public Services Project Download Page.
653 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
654 1.1.1.12 christos ntpd (without -g) if it stops running.
655 1.1.1.12 christos Credit:
656 1.1.1.12 christos This weakness was discovered by Cure53.
657 1.1.1.12 christos
658 1.1.1.12 christos * NTP-01-002 NTP: Buffer Overflow in ntpq when fetching reslist from a
659 1.1.1.12 christos malicious ntpd (Medium)
660 1.1.1.12 christos Date Resolved: 21 Mar 2017
661 1.1.1.12 christos References: Sec 3377 / CVE-2017-6460 / VU#325339
662 1.1.1.12 christos Affects: All versions of ntpq, up to but not including ntp-4.2.8p10, and
663 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
664 1.1.1.12 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:S/C:N/I:N/A:C)
665 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
666 1.1.1.12 christos Summary:
667 1.1.1.12 christos A stack buffer overflow in ntpq can be triggered by a malicious
668 1.1.1.12 christos ntpd server when ntpq requests the restriction list from the server.
669 1.1.1.12 christos This is due to a missing length check in the reslist() function.
670 1.1.1.12 christos It occurs whenever the function parses the server's response and
671 1.1.1.12 christos encounters a flagstr variable of an excessive length. The string
672 1.1.1.12 christos will be copied into a fixed-size buffer, leading to an overflow on
673 1.1.1.12 christos the function's stack-frame. Note well that this problem requires
674 1.1.1.12 christos a malicious server, and affects ntpq, not ntpd.
675 1.1.1.12 christos Mitigation:
676 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
677 1.1.1.12 christos or the NTP Public Services Project Download Page
678 1.1.1.12 christos If you can't upgrade your version of ntpq then if you want to know
679 1.1.1.12 christos the reslist of an instance of ntpd that you do not control,
680 1.1.1.12 christos know that if the target ntpd is malicious that it can send back
681 1.1.1.12 christos a response that intends to crash your ntpq process.
682 1.1.1.12 christos Credit:
683 1.1.1.12 christos This weakness was discovered by Cure53.
684 1.1.1.12 christos
685 1.1.1.12 christos * NTP-01-001 NTP: Makefile does not enforce Security Flags (Informational)
686 1.1.1.12 christos Date Resolved: 21 Mar 2017
687 1.1.1.12 christos References: Sec 3376
688 1.1.1.12 christos Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and
689 1.1.1.12 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
690 1.1.1.12 christos CVSS2: N/A
691 1.1.1.12 christos CVSS3: N/A
692 1.1.1.12 christos Summary:
693 1.1.1.12 christos The build process for NTP has not, by default, provided compile
694 1.1.1.12 christos or link flags to offer "hardened" security options. Package
695 1.1.1.12 christos maintainers have always been able to provide hardening security
696 1.1.1.12 christos flags for their builds. As of ntp-4.2.8p10, the NTP build
697 1.1.1.12 christos system has a way to provide OS-specific hardening flags. Please
698 1.1.1.12 christos note that this is still not a really great solution because it
699 1.1.1.12 christos is specific to NTP builds. It's inefficient to have every
700 1.1.1.12 christos package supply, track and maintain this information for every
701 1.1.1.12 christos target build. It would be much better if there was a common way
702 1.1.1.12 christos for OSes to provide this information in a way that arbitrary
703 1.1.1.12 christos packages could benefit from it.
704 1.1.1.12 christos Mitigation:
705 1.1.1.12 christos Implement BCP-38.
706 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
707 1.1.1.12 christos or the NTP Public Services Project Download Page
708 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
709 1.1.1.12 christos ntpd (without -g) if it stops running.
710 1.1.1.12 christos Credit:
711 1.1.1.12 christos This weakness was reported by Cure53.
712 1.1.1.12 christos
713 1.1.1.12 christos * 0rigin DoS (Medium)
714 1.1.1.12 christos Date Resolved: 21 Mar 2017
715 1.1.1.12 christos References: Sec 3361 / CVE-2016-9042 / VU#325339
716 1.1.1.12 christos Affects: ntp-4.2.8p9 (21 Nov 2016), up to but not including ntp-4.2.8p10
717 1.1.1.12 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C) (worst case)
718 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)
719 1.1.1.12 christos Summary:
720 1.1.1.12 christos An exploitable denial of service vulnerability exists in the
721 1.1.1.12 christos origin timestamp check functionality of ntpd 4.2.8p9. A specially
722 1.1.1.12 christos crafted unauthenticated network packet can be used to reset the
723 1.1.1.12 christos expected origin timestamp for target peers. Legitimate replies
724 1.1.1.12 christos from targeted peers will fail the origin timestamp check (TEST2)
725 1.1.1.12 christos causing the reply to be dropped and creating a denial of service
726 1.1.1.12 christos condition. This vulnerability can only be exploited if the
727 1.1.1.12 christos attacker can spoof all of the servers.
728 1.1.1.12 christos Mitigation:
729 1.1.1.12 christos Implement BCP-38.
730 1.1.1.12 christos Configure enough servers/peers that an attacker cannot target
731 1.1.1.12 christos all of your time sources.
732 1.1.1.12 christos Upgrade to 4.2.8p10, or later, from the NTP Project Download Page
733 1.1.1.12 christos or the NTP Public Services Project Download Page
734 1.1.1.12 christos Properly monitor your ntpd instances, and auto-restart
735 1.1.1.12 christos ntpd (without -g) if it stops running.
736 1.1.1.12 christos Credit:
737 1.1.1.12 christos This weakness was discovered by Matthew Van Gundy of Cisco.
738 1.1.1.12 christos
739 1.1.1.12 christos Other fixes:
740 1.1.1.12 christos
741 1.1.1.12 christos * [Bug 3393] clang scan-build findings <perlinger (a] ntp.org>
742 1.1.1.12 christos * [Bug 3363] Support for openssl-1.1.0 without compatibility modes
743 1.1.1.12 christos - rework of patch set from <ntp.org (a] eroen.eu>. <perlinger (a] ntp.org>
744 1.1.1.12 christos * [Bug 3356] Bugfix 3072 breaks multicastclient <perlinger (a] ntp.org>
745 1.1.1.12 christos * [Bug 3216] libntp audio ioctl() args incorrectly cast to int
746 1.1.1.12 christos on 4.4BSD-Lite derived platforms <perlinger (a] ntp.org>
747 1.1.1.12 christos - original patch by Majdi S. Abbas
748 1.1.1.12 christos * [Bug 3215] 'make distcheck' fails with new BK repo format <perlinger (a] ntp.org>
749 1.1.1.12 christos * [Bug 3173] forking async worker: interrupted pipe I/O <perlinger (a] ntp.org>
750 1.1.1.12 christos - initial patch by Christos Zoulas
751 1.1.1.12 christos * [Bug 3139] (...) time_pps_create: Exec format error <perlinger (a] ntp.org>
752 1.1.1.12 christos - move loader API from 'inline' to proper source
753 1.1.1.12 christos - augment pathless dlls with absolute path to NTPD
754 1.1.1.12 christos - use 'msyslog()' instead of 'printf() 'for reporting trouble
755 1.1.1.12 christos * [Bug 3107] Incorrect Logic for Peer Event Limiting <perlinger (a] ntp.org>
756 1.1.1.12 christos - applied patch by Matthew Van Gundy
757 1.1.1.12 christos * [Bug 3065] Quiet warnings on NetBSD <perlinger (a] ntp.org>
758 1.1.1.12 christos - applied some of the patches provided by Havard. Not all of them
759 1.1.1.12 christos still match the current code base, and I did not touch libopt.
760 1.1.1.12 christos * [Bug 3062] Change the process name of forked DNS worker <perlinger (a] ntp.org>
761 1.1.1.12 christos - applied patch by Reinhard Max. See bugzilla for limitations.
762 1.1.1.12 christos * [Bug 2923] Trap Configuration Fail <perlinger (a] ntp.org>
763 1.1.1.12 christos - fixed dependency inversion from [Bug 2837]
764 1.1.1.12 christos * [Bug 2896] Nothing happens if minsane < maxclock < minclock
765 1.1.1.12 christos - produce ERROR log message about dysfunctional daemon. <perlinger (a] ntp.org>
766 1.1.1.12 christos * [Bug 2851] allow -4/-6 on restrict line with mask <perlinger (a] ntp.org>
767 1.1.1.12 christos - applied patch by Miroslav Lichvar for ntp4.2.6 compat
768 1.1.1.12 christos * [Bug 2645] out-of-bound pointers in ctl_putsys and decode_bitflags
769 1.1.1.12 christos - Fixed these and some more locations of this pattern.
770 1.1.1.12 christos Probably din't get them all, though. <perlinger (a] ntp.org>
771 1.1.1.12 christos * Update copyright year.
772 1.1.1.12 christos
773 1.1.1.12 christos --
774 1.1.1.12 christos (4.2.8p9-win) 2017/02/01 Released by Harlan Stenn <stenn (a] ntp.org>
775 1.1.1.12 christos
776 1.1.1.12 christos * [Bug 3144] NTP does not build without openSSL. <perlinger (a] ntp.org>
777 1.1.1.12 christos - added missed changeset for automatic openssl lib detection
778 1.1.1.12 christos - fixed some minor warning issues
779 1.1.1.12 christos * [Bug 3095] More compatibility with openssl 1.1. <perlinger (a] ntp.org>
780 1.1.1.12 christos * configure.ac cleanup. stenn (a] ntp.org
781 1.1.1.12 christos * openssl configure cleanup. stenn (a] ntp.org
782 1.1.1.12 christos
783 1.1.1.12 christos --
784 1.1.1.11 christos NTP 4.2.8p9 (Harlan Stenn <stenn (a] ntp.org>, 2016/11/21)
785 1.1.1.11 christos
786 1.1.1.11 christos Focus: Security, Bug fixes, enhancements.
787 1.1.1.11 christos
788 1.1.1.11 christos Severity: HIGH
789 1.1.1.11 christos
790 1.1.1.11 christos In addition to bug fixes and enhancements, this release fixes the
791 1.1.1.11 christos following 1 high- (Windows only), 2 medium-, 2 medium-/low, and
792 1.1.1.11 christos 5 low-severity vulnerabilities, and provides 28 other non-security
793 1.1.1.11 christos fixes and improvements:
794 1.1.1.11 christos
795 1.1.1.11 christos * Trap crash
796 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
797 1.1.1.11 christos References: Sec 3119 / CVE-2016-9311 / VU#633847
798 1.1.1.11 christos Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
799 1.1.1.11 christos including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
800 1.1.1.11 christos CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C)
801 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
802 1.1.1.11 christos Summary:
803 1.1.1.11 christos ntpd does not enable trap service by default. If trap service
804 1.1.1.11 christos has been explicitly enabled, an attacker can send a specially
805 1.1.1.11 christos crafted packet to cause a null pointer dereference that will
806 1.1.1.11 christos crash ntpd, resulting in a denial of service.
807 1.1.1.11 christos Mitigation:
808 1.1.1.11 christos Implement BCP-38.
809 1.1.1.11 christos Use "restrict default noquery ..." in your ntp.conf file. Only
810 1.1.1.11 christos allow mode 6 queries from trusted networks and hosts.
811 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
812 1.1.1.11 christos or the NTP Public Services Project Download Page
813 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
814 1.1.1.11 christos (without -g) if it stops running.
815 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
816 1.1.1.11 christos
817 1.1.1.11 christos * Mode 6 information disclosure and DDoS vector
818 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
819 1.1.1.11 christos References: Sec 3118 / CVE-2016-9310 / VU#633847
820 1.1.1.11 christos Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not
821 1.1.1.11 christos including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94.
822 1.1.1.11 christos CVSS2: MED 6.4 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
823 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
824 1.1.1.11 christos Summary:
825 1.1.1.11 christos An exploitable configuration modification vulnerability exists
826 1.1.1.11 christos in the control mode (mode 6) functionality of ntpd. If, against
827 1.1.1.11 christos long-standing BCP recommendations, "restrict default noquery ..."
828 1.1.1.11 christos is not specified, a specially crafted control mode packet can set
829 1.1.1.11 christos ntpd traps, providing information disclosure and DDoS
830 1.1.1.11 christos amplification, and unset ntpd traps, disabling legitimate
831 1.1.1.11 christos monitoring. A remote, unauthenticated, network attacker can
832 1.1.1.11 christos trigger this vulnerability.
833 1.1.1.11 christos Mitigation:
834 1.1.1.11 christos Implement BCP-38.
835 1.1.1.11 christos Use "restrict default noquery ..." in your ntp.conf file.
836 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
837 1.1.1.11 christos or the NTP Public Services Project Download Page
838 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
839 1.1.1.11 christos (without -g) if it stops running.
840 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
841 1.1.1.11 christos
842 1.1.1.11 christos * Broadcast Mode Replay Prevention DoS
843 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
844 1.1.1.11 christos References: Sec 3114 / CVE-2016-7427 / VU#633847
845 1.1.1.11 christos Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
846 1.1.1.11 christos ntp-4.3.90 up to, but not including ntp-4.3.94.
847 1.1.1.11 christos CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
848 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
849 1.1.1.11 christos Summary:
850 1.1.1.11 christos The broadcast mode of NTP is expected to only be used in a
851 1.1.1.11 christos trusted network. If the broadcast network is accessible to an
852 1.1.1.11 christos attacker, a potentially exploitable denial of service
853 1.1.1.11 christos vulnerability in ntpd's broadcast mode replay prevention
854 1.1.1.11 christos functionality can be abused. An attacker with access to the NTP
855 1.1.1.11 christos broadcast domain can periodically inject specially crafted
856 1.1.1.11 christos broadcast mode NTP packets into the broadcast domain which,
857 1.1.1.11 christos while being logged by ntpd, can cause ntpd to reject broadcast
858 1.1.1.11 christos mode packets from legitimate NTP broadcast servers.
859 1.1.1.11 christos Mitigation:
860 1.1.1.11 christos Implement BCP-38.
861 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
862 1.1.1.11 christos or the NTP Public Services Project Download Page
863 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
864 1.1.1.11 christos (without -g) if it stops running.
865 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
866 1.1.1.11 christos
867 1.1.1.11 christos * Broadcast Mode Poll Interval Enforcement DoS
868 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
869 1.1.1.11 christos References: Sec 3113 / CVE-2016-7428 / VU#633847
870 1.1.1.11 christos Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and
871 1.1.1.11 christos ntp-4.3.90 up to, but not including ntp-4.3.94
872 1.1.1.11 christos CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P)
873 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
874 1.1.1.11 christos Summary:
875 1.1.1.11 christos The broadcast mode of NTP is expected to only be used in a
876 1.1.1.11 christos trusted network. If the broadcast network is accessible to an
877 1.1.1.11 christos attacker, a potentially exploitable denial of service
878 1.1.1.11 christos vulnerability in ntpd's broadcast mode poll interval enforcement
879 1.1.1.11 christos functionality can be abused. To limit abuse, ntpd restricts the
880 1.1.1.11 christos rate at which each broadcast association will process incoming
881 1.1.1.11 christos packets. ntpd will reject broadcast mode packets that arrive
882 1.1.1.11 christos before the poll interval specified in the preceding broadcast
883 1.1.1.11 christos packet expires. An attacker with access to the NTP broadcast
884 1.1.1.11 christos domain can send specially crafted broadcast mode NTP packets to
885 1.1.1.11 christos the broadcast domain which, while being logged by ntpd, will
886 1.1.1.11 christos cause ntpd to reject broadcast mode packets from legitimate NTP
887 1.1.1.11 christos broadcast servers.
888 1.1.1.11 christos Mitigation:
889 1.1.1.11 christos Implement BCP-38.
890 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
891 1.1.1.11 christos or the NTP Public Services Project Download Page
892 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
893 1.1.1.11 christos (without -g) if it stops running.
894 1.1.1.11 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco.
895 1.1.1.11 christos
896 1.1.1.11 christos * Windows: ntpd DoS by oversized UDP packet
897 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
898 1.1.1.11 christos References: Sec 3110 / CVE-2016-9312 / VU#633847
899 1.1.1.11 christos Affects Windows only: ntp-4.?.?, up to but not including ntp-4.2.8p9,
900 1.1.1.11 christos and ntp-4.3.0 up to, but not including ntp-4.3.94.
901 1.1.1.11 christos CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
902 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
903 1.1.1.11 christos Summary:
904 1.1.1.11 christos If a vulnerable instance of ntpd on Windows receives a crafted
905 1.1.1.11 christos malicious packet that is "too big", ntpd will stop working.
906 1.1.1.11 christos Mitigation:
907 1.1.1.11 christos Implement BCP-38.
908 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
909 1.1.1.11 christos or the NTP Public Services Project Download Page
910 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
911 1.1.1.11 christos (without -g) if it stops running.
912 1.1.1.11 christos Credit: This weakness was discovered by Robert Pajak of ABB.
913 1.1.1.11 christos
914 1.1.1.11 christos * 0rigin (zero origin) issues
915 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
916 1.1.1.11 christos References: Sec 3102 / CVE-2016-7431 / VU#633847
917 1.1.1.11 christos Affects: ntp-4.2.8p8, and ntp-4.3.93.
918 1.1.1.11 christos CVSS2: MED 5.0 (AV:N/AC:L/Au:N/C:N/I:P/A:N)
919 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
920 1.1.1.11 christos Summary:
921 1.1.1.11 christos Zero Origin timestamp problems were fixed by Bug 2945 in
922 1.1.1.11 christos ntp-4.2.8p6. However, subsequent timestamp validation checks
923 1.1.1.11 christos introduced a regression in the handling of some Zero origin
924 1.1.1.11 christos timestamp checks.
925 1.1.1.11 christos Mitigation:
926 1.1.1.11 christos Implement BCP-38.
927 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
928 1.1.1.11 christos or the NTP Public Services Project Download Page
929 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
930 1.1.1.11 christos (without -g) if it stops running.
931 1.1.1.11 christos Credit: This weakness was discovered by Sharon Goldberg and Aanchal
932 1.1.1.11 christos Malhotra of Boston University.
933 1.1.1.11 christos
934 1.1.1.11 christos * read_mru_list() does inadequate incoming packet checks
935 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
936 1.1.1.11 christos References: Sec 3082 / CVE-2016-7434 / VU#633847
937 1.1.1.11 christos Affects: ntp-4.2.7p22, up to but not including ntp-4.2.8p9, and
938 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94.
939 1.1.1.11 christos CVSS2: LOW 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C)
940 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
941 1.1.1.11 christos Summary:
942 1.1.1.11 christos If ntpd is configured to allow mrulist query requests from a
943 1.1.1.11 christos server that sends a crafted malicious packet, ntpd will crash
944 1.1.1.11 christos on receipt of that crafted malicious mrulist query packet.
945 1.1.1.11 christos Mitigation:
946 1.1.1.11 christos Only allow mrulist query packets from trusted hosts.
947 1.1.1.11 christos Implement BCP-38.
948 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
949 1.1.1.11 christos or the NTP Public Services Project Download Page
950 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
951 1.1.1.11 christos (without -g) if it stops running.
952 1.1.1.11 christos Credit: This weakness was discovered by Magnus Stubman.
953 1.1.1.11 christos
954 1.1.1.11 christos * Attack on interface selection
955 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
956 1.1.1.11 christos References: Sec 3072 / CVE-2016-7429 / VU#633847
957 1.1.1.11 christos Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
958 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94
959 1.1.1.11 christos CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
960 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
961 1.1.1.11 christos Summary:
962 1.1.1.11 christos When ntpd receives a server response on a socket that corresponds
963 1.1.1.11 christos to a different interface than was used for the request, the peer
964 1.1.1.11 christos structure is updated to use the interface for new requests. If
965 1.1.1.11 christos ntpd is running on a host with multiple interfaces in separate
966 1.1.1.11 christos networks and the operating system doesn't check source address in
967 1.1.1.11 christos received packets (e.g. rp_filter on Linux is set to 0), an
968 1.1.1.11 christos attacker that knows the address of the source can send a packet
969 1.1.1.11 christos with spoofed source address which will cause ntpd to select wrong
970 1.1.1.11 christos interface for the source and prevent it from sending new requests
971 1.1.1.11 christos until the list of interfaces is refreshed, which happens on
972 1.1.1.11 christos routing changes or every 5 minutes by default. If the attack is
973 1.1.1.11 christos repeated often enough (once per second), ntpd will not be able to
974 1.1.1.11 christos synchronize with the source.
975 1.1.1.11 christos Mitigation:
976 1.1.1.11 christos Implement BCP-38.
977 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
978 1.1.1.11 christos or the NTP Public Services Project Download Page
979 1.1.1.11 christos If you are going to configure your OS to disable source address
980 1.1.1.11 christos checks, also configure your firewall configuration to control
981 1.1.1.11 christos what interfaces can receive packets from what networks.
982 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
983 1.1.1.11 christos (without -g) if it stops running.
984 1.1.1.11 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
985 1.1.1.11 christos
986 1.1.1.11 christos * Client rate limiting and server responses
987 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
988 1.1.1.11 christos References: Sec 3071 / CVE-2016-7426 / VU#633847
989 1.1.1.11 christos Affects: ntp-4.2.5p203, up to but not including ntp-4.2.8p9, and
990 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94
991 1.1.1.11 christos CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P)
992 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
993 1.1.1.11 christos Summary:
994 1.1.1.11 christos When ntpd is configured with rate limiting for all associations
995 1.1.1.11 christos (restrict default limited in ntp.conf), the limits are applied
996 1.1.1.11 christos also to responses received from its configured sources. An
997 1.1.1.11 christos attacker who knows the sources (e.g., from an IPv4 refid in
998 1.1.1.11 christos server response) and knows the system is (mis)configured in this
999 1.1.1.11 christos way can periodically send packets with spoofed source address to
1000 1.1.1.11 christos keep the rate limiting activated and prevent ntpd from accepting
1001 1.1.1.11 christos valid responses from its sources.
1002 1.1.1.11 christos
1003 1.1.1.11 christos While this blanket rate limiting can be useful to prevent
1004 1.1.1.11 christos brute-force attacks on the origin timestamp, it allows this DoS
1005 1.1.1.11 christos attack. Similarly, it allows the attacker to prevent mobilization
1006 1.1.1.11 christos of ephemeral associations.
1007 1.1.1.11 christos Mitigation:
1008 1.1.1.11 christos Implement BCP-38.
1009 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1010 1.1.1.11 christos or the NTP Public Services Project Download Page
1011 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
1012 1.1.1.11 christos (without -g) if it stops running.
1013 1.1.1.11 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1014 1.1.1.11 christos
1015 1.1.1.11 christos * Fix for bug 2085 broke initial sync calculations
1016 1.1.1.11 christos Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016
1017 1.1.1.11 christos References: Sec 3067 / CVE-2016-7433 / VU#633847
1018 1.1.1.11 christos Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and
1019 1.1.1.11 christos ntp-4.3.0 up to, but not including ntp-4.3.94. But the
1020 1.1.1.11 christos root-distance calculation in general is incorrect in all versions
1021 1.1.1.11 christos of ntp-4 until this release.
1022 1.1.1.11 christos CVSS2: LOW 1.2 (AV:L/AC:H/Au:N/C:N/I:N/A:P)
1023 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
1024 1.1.1.11 christos Summary:
1025 1.1.1.11 christos Bug 2085 described a condition where the root delay was included
1026 1.1.1.11 christos twice, causing the jitter value to be higher than expected. Due
1027 1.1.1.11 christos to a misinterpretation of a small-print variable in The Book, the
1028 1.1.1.11 christos fix for this problem was incorrect, resulting in a root distance
1029 1.1.1.11 christos that did not include the peer dispersion. The calculations and
1030 1.1.1.11 christos formulae have been reviewed and reconciled, and the code has been
1031 1.1.1.11 christos updated accordingly.
1032 1.1.1.11 christos Mitigation:
1033 1.1.1.11 christos Upgrade to 4.2.8p9, or later, from the NTP Project Download Page
1034 1.1.1.11 christos or the NTP Public Services Project Download Page
1035 1.1.1.11 christos Properly monitor your ntpd instances, and auto-restart ntpd
1036 1.1.1.11 christos (without -g) if it stops running.
1037 1.1.1.11 christos Credit: This weakness was discovered independently by Brian Utterback of
1038 1.1.1.11 christos Oracle, and Sharon Goldberg and Aanchal Malhotra of Boston University.
1039 1.1.1.11 christos
1040 1.1.1.11 christos Other fixes:
1041 1.1.1.11 christos
1042 1.1.1.11 christos * [Bug 3142] bug in netmask prefix length detection <perlinger (a] ntp.org>
1043 1.1.1.11 christos * [Bug 3138] gpsdjson refclock should honor fudgetime1. stenn (a] ntp.org
1044 1.1.1.11 christos * [Bug 3129] Unknown hosts can put resolver thread into a hard loop
1045 1.1.1.11 christos - moved retry decision where it belongs. <perlinger (a] ntp.org>
1046 1.1.1.11 christos * [Bug 3125] NTPD doesn't fully start when ntp.conf entries are out of order
1047 1.1.1.11 christos using the loopback-ppsapi-provider.dll <perlinger (a] ntp.org>
1048 1.1.1.11 christos * [Bug 3116] unit tests for NTP time stamp expansion. <perlinger (a] ntp.org>
1049 1.1.1.11 christos * [Bug 3100] ntpq can't retrieve daemon_version <perlinger (a] ntp.org>
1050 1.1.1.11 christos - fixed extended sysvar lookup (bug introduced with bug 3008 fix)
1051 1.1.1.11 christos * [Bug 3095] Compatibility with openssl 1.1 <perlinger (a] ntp.org>
1052 1.1.1.11 christos - applied patches by Kurt Roeckx <kurt (a] roeckx.be> to source
1053 1.1.1.11 christos - added shim layer for SSL API calls with issues (both directions)
1054 1.1.1.11 christos * [Bug 3089] Serial Parser does not work anymore for hopfser like device
1055 1.1.1.11 christos - simplified / refactored hex-decoding in driver. <perlinger (a] ntp.org>
1056 1.1.1.11 christos * [Bug 3084] update-leap mis-parses the leapfile name. HStenn.
1057 1.1.1.11 christos * [Bug 3068] Linker warnings when building on Solaris. perlinger (a] ntp.org
1058 1.1.1.11 christos - applied patch thanks to Andrew Stormont <andyjstormont (a] gmail.com>
1059 1.1.1.11 christos * [Bug 3067] Root distance calculation needs improvement. HStenn
1060 1.1.1.11 christos * [Bug 3066] NMEA clock ignores pps. perlinger (a] ntp.org
1061 1.1.1.11 christos - PPS-HACK works again.
1062 1.1.1.11 christos * [Bug 3059] Potential buffer overrun from oversized hash <perlinger (a] ntp.org>
1063 1.1.1.11 christos - applied patch by Brian Utterback <brian.utterback (a] oracle.com>
1064 1.1.1.11 christos * [Bug 3053] ntp_loopfilter.c frequency calc precedence error. Sarah White.
1065 1.1.1.11 christos * [Bug 3050] Fix for bug #2960 causes [...] spurious error message.
1066 1.1.1.11 christos <perlinger (a] ntp.org>
1067 1.1.1.11 christos - patches by Reinhard Max <max (a] suse.com> and Havard Eidnes <he (a] uninett.no>
1068 1.1.1.11 christos * [Bug 3047] Fix refclock_jjy C-DEX JST2000. abe (a] ntp.org
1069 1.1.1.11 christos - Patch provided by Kuramatsu.
1070 1.1.1.11 christos * [Bug 3021] unity_fixture.c needs pragma weak <perlinger (a] ntp.org>
1071 1.1.1.11 christos - removed unnecessary & harmful decls of 'setUp()' & 'tearDown()'
1072 1.1.1.11 christos * [Bug 3019] Windows: ERROR_HOST_UNREACHABLE block packet processing. DMayer
1073 1.1.1.11 christos * [Bug 2998] sntp/tests/packetProcessing.c broken without openssl. JPerlinger
1074 1.1.1.11 christos * [Bug 2961] sntp/tests/packetProcessing.c assumes AUTOKEY. HStenn.
1075 1.1.1.11 christos * [Bug 2959] refclock_jupiter: gps week correction <perlinger (a] ntp.org>
1076 1.1.1.11 christos - fixed GPS week expansion to work based on build date. Special thanks
1077 1.1.1.11 christos to Craig Leres for initial patch and testing.
1078 1.1.1.11 christos * [Bug 2951] ntpd tests fail: multiple definition of `send_via_ntp_signd'
1079 1.1.1.11 christos - fixed Makefile.am <perlinger (a] ntp.org>
1080 1.1.1.11 christos * [Bug 2689] ATOM driver processes last PPS pulse at startup,
1081 1.1.1.11 christos even if it is very old <perlinger (a] ntp.org>
1082 1.1.1.11 christos - make sure PPS source is alive before processing samples
1083 1.1.1.11 christos - improve stability close to the 500ms phase jump (phase gate)
1084 1.1.1.11 christos * Fix typos in include/ntp.h.
1085 1.1.1.11 christos * Shim X509_get_signature_nid() if needed
1086 1.1.1.11 christos * git author attribution cleanup
1087 1.1.1.11 christos * bk ignore file cleanup
1088 1.1.1.11 christos * remove locks in Windows IO, use rpc-like thread synchronisation instead
1089 1.1.1.11 christos
1090 1.1.1.11 christos ---
1091 1.1.1.10 christos NTP 4.2.8p8 (Harlan Stenn <stenn (a] ntp.org>, 2016/06/02)
1092 1.1.1.10 christos
1093 1.1.1.10 christos Focus: Security, Bug fixes, enhancements.
1094 1.1.1.10 christos
1095 1.1.1.10 christos Severity: HIGH
1096 1.1.1.10 christos
1097 1.1.1.10 christos In addition to bug fixes and enhancements, this release fixes the
1098 1.1.1.10 christos following 1 high- and 4 low-severity vulnerabilities:
1099 1.1.1.10 christos
1100 1.1.1.10 christos * CRYPTO_NAK crash
1101 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1102 1.1.1.10 christos References: Sec 3046 / CVE-2016-4957 / VU#321640
1103 1.1.1.10 christos Affects: ntp-4.2.8p7, and ntp-4.3.92.
1104 1.1.1.10 christos CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C)
1105 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
1106 1.1.1.10 christos Summary: The fix for Sec 3007 in ntp-4.2.8p7 contained a bug that
1107 1.1.1.10 christos could cause ntpd to crash.
1108 1.1.1.10 christos Mitigation:
1109 1.1.1.10 christos Implement BCP-38.
1110 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1111 1.1.1.10 christos or the NTP Public Services Project Download Page
1112 1.1.1.10 christos If you cannot upgrade from 4.2.8p7, the only other alternatives
1113 1.1.1.10 christos are to patch your code or filter CRYPTO_NAK packets.
1114 1.1.1.10 christos Properly monitor your ntpd instances, and auto-restart ntpd
1115 1.1.1.10 christos (without -g) if it stops running.
1116 1.1.1.10 christos Credit: This weakness was discovered by Nicolas Edet of Cisco.
1117 1.1.1.10 christos
1118 1.1.1.10 christos * Bad authentication demobilizes ephemeral associations
1119 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1120 1.1.1.10 christos References: Sec 3045 / CVE-2016-4953 / VU#321640
1121 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1122 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
1123 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1124 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
1125 1.1.1.10 christos Summary: An attacker who knows the origin timestamp and can send a
1126 1.1.1.10 christos spoofed packet containing a CRYPTO-NAK to an ephemeral peer
1127 1.1.1.10 christos target before any other response is sent can demobilize that
1128 1.1.1.10 christos association.
1129 1.1.1.10 christos Mitigation:
1130 1.1.1.10 christos Implement BCP-38.
1131 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1132 1.1.1.10 christos or the NTP Public Services Project Download Page
1133 1.1.1.10 christos Properly monitor your ntpd instances.
1134 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1135 1.1.1.10 christos
1136 1.1.1.10 christos * Processing spoofed server packets
1137 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1138 1.1.1.10 christos References: Sec 3044 / CVE-2016-4954 / VU#321640
1139 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1140 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
1141 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1142 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
1143 1.1.1.10 christos Summary: An attacker who is able to spoof packets with correct origin
1144 1.1.1.10 christos timestamps from enough servers before the expected response
1145 1.1.1.10 christos packets arrive at the target machine can affect some peer
1146 1.1.1.10 christos variables and, for example, cause a false leap indication to be set.
1147 1.1.1.10 christos Mitigation:
1148 1.1.1.10 christos Implement BCP-38.
1149 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1150 1.1.1.10 christos or the NTP Public Services Project Download Page
1151 1.1.1.10 christos Properly monitor your ntpd instances.
1152 1.1.1.10 christos Credit: This weakness was discovered by Jakub Prokes of Red Hat.
1153 1.1.1.10 christos
1154 1.1.1.10 christos * Autokey association reset
1155 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1156 1.1.1.10 christos References: Sec 3043 / CVE-2016-4955 / VU#321640
1157 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1158 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
1159 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1160 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
1161 1.1.1.10 christos Summary: An attacker who is able to spoof a packet with a correct
1162 1.1.1.10 christos origin timestamp before the expected response packet arrives at
1163 1.1.1.10 christos the target machine can send a CRYPTO_NAK or a bad MAC and cause
1164 1.1.1.10 christos the association's peer variables to be cleared. If this can be
1165 1.1.1.10 christos done often enough, it will prevent that association from working.
1166 1.1.1.10 christos Mitigation:
1167 1.1.1.10 christos Implement BCP-38.
1168 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1169 1.1.1.10 christos or the NTP Public Services Project Download Page
1170 1.1.1.10 christos Properly monitor your ntpd instances.
1171 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1172 1.1.1.10 christos
1173 1.1.1.10 christos * Broadcast interleave
1174 1.1.1.10 christos Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016
1175 1.1.1.10 christos References: Sec 3042 / CVE-2016-4956 / VU#321640
1176 1.1.1.10 christos Affects: ntp-4, up to but not including ntp-4.2.8p8, and
1177 1.1.1.10 christos ntp-4.3.0 up to, but not including ntp-4.3.93.
1178 1.1.1.10 christos CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P)
1179 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
1180 1.1.1.10 christos Summary: The fix for NtpBug2978 does not cover broadcast associations,
1181 1.1.1.10 christos so broadcast clients can be triggered to flip into interleave mode.
1182 1.1.1.10 christos Mitigation:
1183 1.1.1.10 christos Implement BCP-38.
1184 1.1.1.10 christos Upgrade to 4.2.8p8, or later, from the NTP Project Download Page
1185 1.1.1.10 christos or the NTP Public Services Project Download Page
1186 1.1.1.10 christos Properly monitor your ntpd instances.
1187 1.1.1.10 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1188 1.1.1.10 christos
1189 1.1.1.10 christos Other fixes:
1190 1.1.1.10 christos * [Bug 3038] NTP fails to build in VS2015. perlinger (a] ntp.org
1191 1.1.1.10 christos - provide build environment
1192 1.1.1.10 christos - 'wint_t' and 'struct timespec' defined by VS2015
1193 1.1.1.10 christos - fixed print()/scanf() format issues
1194 1.1.1.10 christos * [Bug 3052] Add a .gitignore file. Edmund Wong.
1195 1.1.1.10 christos * [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite.
1196 1.1.1.10 christos * [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback,
1197 1.1.1.10 christos JPerlinger, HStenn.
1198 1.1.1.10 christos * Fix typo in ntp-wait and plot_summary. HStenn.
1199 1.1.1.10 christos * Make sure we have an "author" file for git imports. HStenn.
1200 1.1.1.10 christos * Update the sntp problem tests for MacOS. HStenn.
1201 1.1.1.10 christos
1202 1.1.1.10 christos ---
1203 1.1.1.9 christos NTP 4.2.8p7 (Harlan Stenn <stenn (a] ntp.org>, 2016/04/26)
1204 1.1.1.8 christos
1205 1.1.1.9 christos Focus: Security, Bug fixes, enhancements.
1206 1.1.1.9 christos
1207 1.1.1.9 christos Severity: MEDIUM
1208 1.1.1.9 christos
1209 1.1.1.9 christos When building NTP from source, there is a new configure option
1210 1.1.1.9 christos available, --enable-dynamic-interleave. More information on this below.
1211 1.1.1.9 christos
1212 1.1.1.9 christos Also note that ntp-4.2.8p7 logs more "unexpected events" than previous
1213 1.1.1.9 christos versions of ntp. These events have almost certainly happened in the
1214 1.1.1.9 christos past, it's just that they were silently counted and not logged. With
1215 1.1.1.9 christos the increasing awareness around security, we feel it's better to clearly
1216 1.1.1.9 christos log these events to help detect abusive behavior. This increased
1217 1.1.1.9 christos logging can also help detect other problems, too.
1218 1.1.1.9 christos
1219 1.1.1.9 christos In addition to bug fixes and enhancements, this release fixes the
1220 1.1.1.9 christos following 9 low- and medium-severity vulnerabilities:
1221 1.1.1.9 christos
1222 1.1.1.9 christos * Improve NTP security against buffer comparison timing attacks,
1223 1.1.1.9 christos AKA: authdecrypt-timing
1224 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1225 1.1.1.9 christos References: Sec 2879 / CVE-2016-1550
1226 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1227 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1228 1.1.1.9 christos CVSSv2: LOW 2.6 - (AV:L/AC:H/Au:N/C:P/I:P/A:N)
1229 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
1230 1.1.1.9 christos Summary: Packet authentication tests have been performed using
1231 1.1.1.9 christos memcmp() or possibly bcmp(), and it is potentially possible
1232 1.1.1.9 christos for a local or perhaps LAN-based attacker to send a packet with
1233 1.1.1.9 christos an authentication payload and indirectly observe how much of
1234 1.1.1.9 christos the digest has matched.
1235 1.1.1.9 christos Mitigation:
1236 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1237 1.1.1.9 christos or the NTP Public Services Project Download Page.
1238 1.1.1.9 christos Properly monitor your ntpd instances.
1239 1.1.1.9 christos Credit: This weakness was discovered independently by Loganaden
1240 1.1.1.9 christos Velvindron, and Matthew Van Gundy and Stephen Gray of Cisco ASIG.
1241 1.1.1.9 christos
1242 1.1.1.9 christos * Zero origin timestamp bypass: Additional KoD checks.
1243 1.1.1.9 christos References: Sec 2945 / Sec 2901 / CVE-2015-8138
1244 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1245 1.1.1.9 christos Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.92.
1246 1.1.1.9 christos
1247 1.1.1.9 christos * peer associations were broken by the fix for NtpBug2899
1248 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1249 1.1.1.9 christos References: Sec 2952 / CVE-2015-7704
1250 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1251 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1252 1.1.1.9 christos CVSSv2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
1253 1.1.1.9 christos Summary: The fix for NtpBug2952 in ntp-4.2.8p5 to address broken peer
1254 1.1.1.9 christos associations did not address all of the issues.
1255 1.1.1.9 christos Mitigation:
1256 1.1.1.9 christos Implement BCP-38.
1257 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1258 1.1.1.9 christos or the NTP Public Services Project Download Page
1259 1.1.1.9 christos If you can't upgrade, use "server" associations instead of
1260 1.1.1.9 christos "peer" associations.
1261 1.1.1.9 christos Monitor your ntpd instances.
1262 1.1.1.9 christos Credit: This problem was discovered by Michael Tatarinov.
1263 1.1.1.9 christos
1264 1.1.1.9 christos * Validate crypto-NAKs, AKA: CRYPTO-NAK DoS
1265 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1266 1.1.1.9 christos References: Sec 3007 / CVE-2016-1547 / VU#718152
1267 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1268 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1269 1.1.1.9 christos CVSS2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P)
1270 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
1271 1.1.1.9 christos Summary: For ntp-4 versions up to but not including ntp-4.2.8p7, an
1272 1.1.1.9 christos off-path attacker can cause a preemptable client association to
1273 1.1.1.9 christos be demobilized by sending a crypto NAK packet to a victim client
1274 1.1.1.9 christos with a spoofed source address of an existing associated peer.
1275 1.1.1.9 christos This is true even if authentication is enabled.
1276 1.1.1.9 christos
1277 1.1.1.9 christos Furthermore, if the attacker keeps sending crypto NAK packets,
1278 1.1.1.9 christos for example one every second, the victim never has a chance to
1279 1.1.1.9 christos reestablish the association and synchronize time with that
1280 1.1.1.9 christos legitimate server.
1281 1.1.1.9 christos
1282 1.1.1.9 christos For ntp-4.2.8 thru ntp-4.2.8p6 there is less risk because more
1283 1.1.1.9 christos stringent checks are performed on incoming packets, but there
1284 1.1.1.9 christos are still ways to exploit this vulnerability in versions before
1285 1.1.1.9 christos ntp-4.2.8p7.
1286 1.1.1.9 christos Mitigation:
1287 1.1.1.9 christos Implement BCP-38.
1288 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1289 1.1.1.9 christos or the NTP Public Services Project Download Page
1290 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances
1291 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray and
1292 1.1.1.9 christos Matthew Van Gundy of Cisco ASIG.
1293 1.1.1.9 christos
1294 1.1.1.9 christos * ctl_getitem() return value not always checked
1295 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1296 1.1.1.9 christos References: Sec 3008 / CVE-2016-2519
1297 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1298 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1299 1.1.1.9 christos CVSSv2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
1300 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
1301 1.1.1.9 christos Summary: ntpq and ntpdc can be used to store and retrieve information
1302 1.1.1.9 christos in ntpd. It is possible to store a data value that is larger
1303 1.1.1.9 christos than the size of the buffer that the ctl_getitem() function of
1304 1.1.1.9 christos ntpd uses to report the return value. If the length of the
1305 1.1.1.9 christos requested data value returned by ctl_getitem() is too large,
1306 1.1.1.9 christos the value NULL is returned instead. There are 2 cases where the
1307 1.1.1.9 christos return value from ctl_getitem() was not directly checked to make
1308 1.1.1.9 christos sure it's not NULL, but there are subsequent INSIST() checks
1309 1.1.1.9 christos that make sure the return value is not NULL. There are no data
1310 1.1.1.9 christos values ordinarily stored in ntpd that would exceed this buffer
1311 1.1.1.9 christos length. But if one has permission to store values and one stores
1312 1.1.1.9 christos a value that is "too large", then ntpd will abort if an attempt
1313 1.1.1.9 christos is made to read that oversized value.
1314 1.1.1.9 christos Mitigation:
1315 1.1.1.9 christos Implement BCP-38.
1316 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1317 1.1.1.9 christos or the NTP Public Services Project Download Page
1318 1.1.1.9 christos Properly monitor your ntpd instances.
1319 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
1320 1.1.1.9 christos Security Team, Qihoo 360.
1321 1.1.1.9 christos
1322 1.1.1.9 christos * Crafted addpeer with hmode > 7 causes array wraparound with MATCH_ASSOC
1323 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1324 1.1.1.9 christos References: Sec 3009 / CVE-2016-2518 / VU#718152
1325 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1326 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1327 1.1.1.9 christos CVSS2: LOW 2.1 - (AV:N/AC:H/Au:S/C:N/I:N/A:P)
1328 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
1329 1.1.1.9 christos Summary: Using a crafted packet to create a peer association with
1330 1.1.1.9 christos hmode > 7 causes the MATCH_ASSOC() lookup to make an
1331 1.1.1.9 christos out-of-bounds reference.
1332 1.1.1.9 christos Mitigation:
1333 1.1.1.9 christos Implement BCP-38.
1334 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1335 1.1.1.9 christos or the NTP Public Services Project Download Page
1336 1.1.1.9 christos Properly monitor your ntpd instances
1337 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
1338 1.1.1.9 christos Security Team, Qihoo 360.
1339 1.1.1.9 christos
1340 1.1.1.9 christos * remote configuration trustedkey/requestkey/controlkey values are not
1341 1.1.1.9 christos properly validated
1342 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1343 1.1.1.9 christos References: Sec 3010 / CVE-2016-2517 / VU#718152
1344 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1345 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1346 1.1.1.9 christos CVSS2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C)
1347 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
1348 1.1.1.9 christos Summary: If ntpd was expressly configured to allow for remote
1349 1.1.1.9 christos configuration, a malicious user who knows the controlkey for
1350 1.1.1.9 christos ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
1351 1.1.1.9 christos can create a session with ntpd and then send a crafted packet to
1352 1.1.1.9 christos ntpd that will change the value of the trustedkey, controlkey,
1353 1.1.1.9 christos or requestkey to a value that will prevent any subsequent
1354 1.1.1.9 christos authentication with ntpd until ntpd is restarted.
1355 1.1.1.9 christos Mitigation:
1356 1.1.1.9 christos Implement BCP-38.
1357 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1358 1.1.1.9 christos or the NTP Public Services Project Download Page
1359 1.1.1.12.4.1 msaitoh Properly monitor your ntpd instances
1360 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
1361 1.1.1.9 christos Security Team, Qihoo 360.
1362 1.1.1.9 christos
1363 1.1.1.9 christos * Duplicate IPs on unconfig directives will cause an assertion botch in ntpd
1364 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1365 1.1.1.9 christos References: Sec 3011 / CVE-2016-2516 / VU#718152
1366 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1367 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1368 1.1.1.9 christos CVSS2: MED 6.3 - (AV:N/AC:M/Au:S/C:N/I:N/A:C)
1369 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
1370 1.1.1.9 christos Summary: If ntpd was expressly configured to allow for remote
1371 1.1.1.9 christos configuration, a malicious user who knows the controlkey for
1372 1.1.1.9 christos ntpq or the requestkey for ntpdc (if mode7 is expressly enabled)
1373 1.1.1.9 christos can create a session with ntpd and if an existing association is
1374 1.1.1.9 christos unconfigured using the same IP twice on the unconfig directive
1375 1.1.1.9 christos line, ntpd will abort.
1376 1.1.1.9 christos Mitigation:
1377 1.1.1.9 christos Implement BCP-38.
1378 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1379 1.1.1.9 christos or the NTP Public Services Project Download Page
1380 1.1.1.9 christos Properly monitor your ntpd instances
1381 1.1.1.9 christos Credit: This weakness was discovered by Yihan Lian of the Cloud
1382 1.1.1.9 christos Security Team, Qihoo 360.
1383 1.1.1.9 christos
1384 1.1.1.9 christos * Refclock impersonation vulnerability
1385 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1386 1.1.1.9 christos References: Sec 3020 / CVE-2016-1551
1387 1.1.1.9 christos Affects: On a very limited number of OSes, all NTP releases up to but
1388 1.1.1.9 christos not including 4.2.8p7, and 4.3.0 up to but not including 4.3.92.
1389 1.1.1.9 christos By "very limited number of OSes" we mean no general-purpose OSes
1390 1.1.1.9 christos have yet been identified that have this vulnerability.
1391 1.1.1.9 christos CVSSv2: LOW 2.6 - (AV:N/AC:H/Au:N/C:N/I:P/A:N)
1392 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
1393 1.1.1.9 christos Summary: While most OSes implement martian packet filtering in their
1394 1.1.1.9 christos network stack, at least regarding 127.0.0.0/8, some will allow
1395 1.1.1.9 christos packets claiming to be from 127.0.0.0/8 that arrive over a
1396 1.1.1.9 christos physical network. On these OSes, if ntpd is configured to use a
1397 1.1.1.9 christos reference clock an attacker can inject packets over the network
1398 1.1.1.9 christos that look like they are coming from that reference clock.
1399 1.1.1.9 christos Mitigation:
1400 1.1.1.9 christos Implement martian packet filtering and BCP-38.
1401 1.1.1.9 christos Configure ntpd to use an adequate number of time sources.
1402 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1403 1.1.1.9 christos or the NTP Public Services Project Download Page
1404 1.1.1.9 christos If you are unable to upgrade and if you are running an OS that
1405 1.1.1.9 christos has this vulnerability, implement martian packet filters and
1406 1.1.1.9 christos lobby your OS vendor to fix this problem, or run your
1407 1.1.1.9 christos refclocks on computers that use OSes that are not vulnerable
1408 1.1.1.9 christos to these attacks and have your vulnerable machines get their
1409 1.1.1.9 christos time from protected resources.
1410 1.1.1.9 christos Properly monitor your ntpd instances.
1411 1.1.1.9 christos Credit: This weakness was discovered by Matt Street and others of
1412 1.1.1.9 christos Cisco ASIG.
1413 1.1.1.9 christos
1414 1.1.1.9 christos The following issues were fixed in earlier releases and contain
1415 1.1.1.9 christos improvements in 4.2.8p7:
1416 1.1.1.9 christos
1417 1.1.1.9 christos * Clients that receive a KoD should validate the origin timestamp field.
1418 1.1.1.9 christos References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
1419 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1420 1.1.1.9 christos Summary: Improvements to the fixes incorporated into 4.2.8p4 and 4.3.77.
1421 1.1.1.9 christos
1422 1.1.1.9 christos * Skeleton key: passive server with trusted key can serve time.
1423 1.1.1.9 christos References: Sec 2936 / CVE-2015-7974
1424 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7,
1425 1.1.1.9 christos Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.90.
1426 1.1.1.9 christos
1427 1.1.1.9 christos Two other vulnerabilities have been reported, and the mitigations
1428 1.1.1.9 christos for these are as follows:
1429 1.1.1.9 christos
1430 1.1.1.9 christos * Interleave-pivot
1431 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1432 1.1.1.9 christos References: Sec 2978 / CVE-2016-1548
1433 1.1.1.9 christos Affects: All ntp-4 releases.
1434 1.1.1.9 christos CVSSv2: MED 6.4 - (AV:N/AC:L/Au:N/C:N/I:P/A:P)
1435 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
1436 1.1.1.9 christos Summary: It is possible to change the time of an ntpd client or deny
1437 1.1.1.9 christos service to an ntpd client by forcing it to change from basic
1438 1.1.1.9 christos client/server mode to interleaved symmetric mode. An attacker
1439 1.1.1.9 christos can spoof a packet from a legitimate ntpd server with an origin
1440 1.1.1.9 christos timestamp that matches the peer->dst timestamp recorded for that
1441 1.1.1.9 christos server. After making this switch, the client will reject all
1442 1.1.1.9 christos future legitimate server responses. It is possible to force the
1443 1.1.1.9 christos victim client to move time after the mode has been changed.
1444 1.1.1.9 christos ntpq gives no indication that the mode has been switched.
1445 1.1.1.9 christos Mitigation:
1446 1.1.1.9 christos Implement BCP-38.
1447 1.1.1.9 christos Upgrade to 4.2.8p7, or later, from the NTP Project Download Page
1448 1.1.1.9 christos or the NTP Public Services Project Download Page. These
1449 1.1.1.9 christos versions will not dynamically "flip" into interleave mode
1450 1.1.1.9 christos unless configured to do so.
1451 1.1.1.9 christos Properly monitor your ntpd instances.
1452 1.1.1.9 christos Credit: This weakness was discovered by Miroslav Lichvar of RedHat
1453 1.1.1.9 christos and separately by Jonathan Gardner of Cisco ASIG.
1454 1.1.1.9 christos
1455 1.1.1.9 christos * Sybil vulnerability: ephemeral association attack
1456 1.1.1.9 christos Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016
1457 1.1.1.9 christos References: Sec 3012 / CVE-2016-1549
1458 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p7, and
1459 1.1.1.9 christos 4.3.0 up to, but not including 4.3.92
1460 1.1.1.9 christos CVSSv2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N)
1461 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
1462 1.1.1.9 christos Summary: ntpd can be vulnerable to Sybil attacks. If one is not using
1463 1.1.1.9 christos the feature introduced in ntp-4.2.8p6 allowing an optional 4th
1464 1.1.1.9 christos field in the ntp.keys file to specify which IPs can serve time,
1465 1.1.1.9 christos a malicious authenticated peer can create arbitrarily-many
1466 1.1.1.9 christos ephemeral associations in order to win the clock selection of
1467 1.1.1.9 christos ntpd and modify a victim's clock.
1468 1.1.1.9 christos Mitigation:
1469 1.1.1.9 christos Implement BCP-38.
1470 1.1.1.9 christos Use the 4th field in the ntp.keys file to specify which IPs
1471 1.1.1.9 christos can be time servers.
1472 1.1.1.9 christos Properly monitor your ntpd instances.
1473 1.1.1.9 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
1474 1.1.1.9 christos
1475 1.1.1.9 christos Other fixes:
1476 1.1.1.9 christos
1477 1.1.1.9 christos * [Bug 2831] Segmentation Fault in DNS lookup during startup. perlinger (a] ntp.org
1478 1.1.1.9 christos - fixed yet another race condition in the threaded resolver code.
1479 1.1.1.9 christos * [Bug 2858] bool support. Use stdbool.h when available. HStenn.
1480 1.1.1.9 christos * [Bug 2879] Improve NTP security against timing attacks. perlinger (a] ntp.org
1481 1.1.1.9 christos - integrated patches by Loganaden Velvidron <logan (a] ntp.org>
1482 1.1.1.9 christos with some modifications & unit tests
1483 1.1.1.9 christos * [Bug 2960] async name resolution fixes for chroot() environments.
1484 1.1.1.9 christos Reinhard Max.
1485 1.1.1.9 christos * [Bug 2994] Systems with HAVE_SIGNALED_IO fail to compile. perlinger (a] ntp.org
1486 1.1.1.9 christos * [Bug 2995] Fixes to compile on Windows
1487 1.1.1.9 christos * [Bug 2999] out-of-bounds access in 'is_safe_filename()'. perlinger (a] ntp.org
1488 1.1.1.9 christos * [Bug 3013] Fix for ssl_init.c SHA1 test. perlinger (a] ntp.org
1489 1.1.1.9 christos - Patch provided by Ch. Weisgerber
1490 1.1.1.9 christos * [Bug 3015] ntpq: config-from-file: "request contains an unprintable character"
1491 1.1.1.9 christos - A change related to [Bug 2853] forbids trailing white space in
1492 1.1.1.9 christos remote config commands. perlinger (a] ntp.org
1493 1.1.1.9 christos * [Bug 3019] NTPD stops processing packets after ERROR_HOST_UNREACHABLE
1494 1.1.1.9 christos - report and patch from Aleksandr Kostikov.
1495 1.1.1.9 christos - Overhaul of Windows IO completion port handling. perlinger (a] ntp.org
1496 1.1.1.9 christos * [Bug 3022] authkeys.c should be refactored. perlinger (a] ntp.org
1497 1.1.1.9 christos - fixed memory leak in access list (auth[read]keys.c)
1498 1.1.1.9 christos - refactored handling of key access lists (auth[read]keys.c)
1499 1.1.1.9 christos - reduced number of error branches (authreadkeys.c)
1500 1.1.1.9 christos * [Bug 3023] ntpdate cannot correct dates in the future. perlinger (a] ntp.org
1501 1.1.1.9 christos * [Bug 3030] ntpq needs a general way to specify refid output format. HStenn.
1502 1.1.1.9 christos * [Bug 3031] ntp broadcastclient unable to synchronize to an server
1503 1.1.1.9 christos when the time of server changed. perlinger (a] ntp.org
1504 1.1.1.9 christos - Check the initial delay calculation and reject/unpeer the broadcast
1505 1.1.1.9 christos server if the delay exceeds 50ms. Retry again after the next
1506 1.1.1.9 christos broadcast packet.
1507 1.1.1.9 christos * [Bug 3036] autokey trips an INSIST in authistrustedip(). Harlan Stenn.
1508 1.1.1.9 christos * Document ntp.key's optional IP list in authenetic.html. Harlan Stenn.
1509 1.1.1.9 christos * Update html/xleave.html documentation. Harlan Stenn.
1510 1.1.1.9 christos * Update ntp.conf documentation. Harlan Stenn.
1511 1.1.1.9 christos * Fix some Credit: attributions in the NEWS file. Harlan Stenn.
1512 1.1.1.9 christos * Fix typo in html/monopt.html. Harlan Stenn.
1513 1.1.1.9 christos * Add README.pullrequests. Harlan Stenn.
1514 1.1.1.9 christos * Cleanup to include/ntp.h. Harlan Stenn.
1515 1.1.1.9 christos
1516 1.1.1.9 christos New option to 'configure':
1517 1.1.1.9 christos
1518 1.1.1.9 christos While looking in to the issues around Bug 2978, the "interleave pivot"
1519 1.1.1.9 christos issue, it became clear that there are some intricate and unresolved
1520 1.1.1.9 christos issues with interleave operations. We also realized that the interleave
1521 1.1.1.9 christos protocol was never added to the NTPv4 Standard, and it should have been.
1522 1.1.1.9 christos
1523 1.1.1.9 christos Interleave mode was first released in July of 2008, and can be engaged
1524 1.1.1.9 christos in two ways. Any 'peer' and 'broadcast' lines in the ntp.conf file may
1525 1.1.1.9 christos contain the 'xleave' option, which will expressly enable interlave mode
1526 1.1.1.9 christos for that association. Additionally, if a time packet arrives and is
1527 1.1.1.9 christos found inconsistent with normal protocol behavior but has certain
1528 1.1.1.9 christos characteristics that are compatible with interleave mode, NTP will
1529 1.1.1.9 christos dynamically switch to interleave mode. With sufficient knowledge, an
1530 1.1.1.9 christos attacker can send a crafted forged packet to an NTP instance that
1531 1.1.1.9 christos triggers only one side to enter interleaved mode.
1532 1.1.1.9 christos
1533 1.1.1.9 christos To prevent this attack until we can thoroughly document, describe,
1534 1.1.1.9 christos fix, and test the dynamic interleave mode, we've added a new
1535 1.1.1.9 christos 'configure' option to the build process:
1536 1.1.1.9 christos
1537 1.1.1.9 christos --enable-dynamic-interleave
1538 1.1.1.9 christos
1539 1.1.1.9 christos This option controls whether or not NTP will, if conditions are right,
1540 1.1.1.9 christos engage dynamic interleave mode. Dynamic interleave mode is disabled by
1541 1.1.1.9 christos default in ntp-4.2.8p7.
1542 1.1.1.9 christos
1543 1.1.1.9 christos ---
1544 1.1.1.9 christos NTP 4.2.8p6 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/20)
1545 1.1.1.9 christos
1546 1.1.1.9 christos Focus: Security, Bug fixes, enhancements.
1547 1.1.1.9 christos
1548 1.1.1.9 christos Severity: MEDIUM
1549 1.1.1.9 christos
1550 1.1.1.9 christos In addition to bug fixes and enhancements, this release fixes the
1551 1.1.1.9 christos following 1 low- and 8 medium-severity vulnerabilities:
1552 1.1.1.9 christos
1553 1.1.1.9 christos * Potential Infinite Loop in 'ntpq'
1554 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1555 1.1.1.9 christos References: Sec 2548 / CVE-2015-8158
1556 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1557 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1558 1.1.1.9 christos CVSS2: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
1559 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
1560 1.1.1.9 christos Summary: 'ntpq' processes incoming packets in a loop in 'getresponse()'.
1561 1.1.1.9 christos The loop's only stopping conditions are receiving a complete and
1562 1.1.1.9 christos correct response or hitting a small number of error conditions.
1563 1.1.1.9 christos If the packet contains incorrect values that don't trigger one of
1564 1.1.1.9 christos the error conditions, the loop continues to receive new packets.
1565 1.1.1.9 christos Note well, this is an attack against an instance of 'ntpq', not
1566 1.1.1.9 christos 'ntpd', and this attack requires the attacker to do one of the
1567 1.1.1.9 christos following:
1568 1.1.1.9 christos * Own a malicious NTP server that the client trusts
1569 1.1.1.9 christos * Prevent a legitimate NTP server from sending packets to
1570 1.1.1.9 christos the 'ntpq' client
1571 1.1.1.9 christos * MITM the 'ntpq' communications between the 'ntpq' client
1572 1.1.1.9 christos and the NTP server
1573 1.1.1.9 christos Mitigation:
1574 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1575 1.1.1.9 christos or the NTP Public Services Project Download Page
1576 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
1577 1.1.1.9 christos
1578 1.1.1.9 christos * 0rigin: Zero Origin Timestamp Bypass
1579 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1580 1.1.1.9 christos References: Sec 2945 / CVE-2015-8138
1581 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1582 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1583 1.1.1.9 christos CVSS2: (AV:N/AC:L/Au:N/C:N/I:P/A:N) Base Score: 5.0 - MEDIUM
1584 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
1585 1.1.1.9 christos (3.7 - LOW if you score AC:L)
1586 1.1.1.9 christos Summary: To distinguish legitimate peer responses from forgeries, a
1587 1.1.1.9 christos client attempts to verify a response packet by ensuring that the
1588 1.1.1.9 christos origin timestamp in the packet matches the origin timestamp it
1589 1.1.1.9 christos transmitted in its last request. A logic error exists that
1590 1.1.1.9 christos allows packets with an origin timestamp of zero to bypass this
1591 1.1.1.9 christos check whenever there is not an outstanding request to the server.
1592 1.1.1.9 christos Mitigation:
1593 1.1.1.9 christos Configure 'ntpd' to get time from multiple sources.
1594 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1595 1.1.1.9 christos or the NTP Public Services Project Download Page.
1596 1.1.1.12.4.1 msaitoh Monitor your 'ntpd' instances.
1597 1.1.1.9 christos Credit: This weakness was discovered by Matthey Van Gundy and
1598 1.1.1.9 christos Jonathan Gardner of Cisco ASIG.
1599 1.1.1.9 christos
1600 1.1.1.9 christos * Stack exhaustion in recursive traversal of restriction list
1601 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016
1602 1.1.1.9 christos References: Sec 2940 / CVE-2015-7978
1603 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1604 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1605 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
1606 1.1.1.9 christos Summary: An unauthenticated 'ntpdc reslist' command can cause a
1607 1.1.1.9 christos segmentation fault in ntpd by exhausting the call stack.
1608 1.1.1.9 christos Mitigation:
1609 1.1.1.9 christos Implement BCP-38.
1610 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1611 1.1.1.9 christos or the NTP Public Services Project Download Page.
1612 1.1.1.9 christos If you are unable to upgrade:
1613 1.1.1.9 christos In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
1614 1.1.1.9 christos If you must enable mode 7:
1615 1.1.1.9 christos configure the use of a 'requestkey' to control who can
1616 1.1.1.9 christos issue mode 7 requests.
1617 1.1.1.9 christos configure 'restrict noquery' to further limit mode 7
1618 1.1.1.9 christos requests to trusted sources.
1619 1.1.1.9 christos Monitor your ntpd instances.
1620 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray at Cisco ASIG.
1621 1.1.1.9 christos
1622 1.1.1.9 christos * Off-path Denial of Service (!DoS) attack on authenticated broadcast mode
1623 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1624 1.1.1.9 christos References: Sec 2942 / CVE-2015-7979
1625 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1626 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1627 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:P/A:P) Base Score: 5.8
1628 1.1.1.9 christos Summary: An off-path attacker can send broadcast packets with bad
1629 1.1.1.9 christos authentication (wrong key, mismatched key, incorrect MAC, etc)
1630 1.1.1.9 christos to broadcast clients. It is observed that the broadcast client
1631 1.1.1.9 christos tears down the association with the broadcast server upon
1632 1.1.1.9 christos receiving just one bad packet.
1633 1.1.1.9 christos Mitigation:
1634 1.1.1.9 christos Implement BCP-38.
1635 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1636 1.1.1.9 christos or the NTP Public Services Project Download Page.
1637 1.1.1.9 christos Monitor your 'ntpd' instances.
1638 1.1.1.9 christos If this sort of attack is an active problem for you, you have
1639 1.1.1.9 christos deeper problems to investigate. In this case also consider
1640 1.1.1.9 christos having smaller NTP broadcast domains.
1641 1.1.1.9 christos Credit: This weakness was discovered by Aanchal Malhotra of Boston
1642 1.1.1.9 christos University.
1643 1.1.1.9 christos
1644 1.1.1.9 christos * reslist NULL pointer dereference
1645 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1646 1.1.1.9 christos References: Sec 2939 / CVE-2015-7977
1647 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1648 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1649 1.1.1.9 christos CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM
1650 1.1.1.9 christos Summary: An unauthenticated 'ntpdc reslist' command can cause a
1651 1.1.1.9 christos segmentation fault in ntpd by causing a NULL pointer dereference.
1652 1.1.1.9 christos Mitigation:
1653 1.1.1.9 christos Implement BCP-38.
1654 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from NTP Project Download Page or
1655 1.1.1.9 christos the NTP Public Services Project Download Page.
1656 1.1.1.9 christos If you are unable to upgrade:
1657 1.1.1.9 christos mode 7 is disabled by default. Don't enable it.
1658 1.1.1.9 christos If you must enable mode 7:
1659 1.1.1.9 christos configure the use of a 'requestkey' to control who can
1660 1.1.1.9 christos issue mode 7 requests.
1661 1.1.1.9 christos configure 'restrict noquery' to further limit mode 7
1662 1.1.1.9 christos requests to trusted sources.
1663 1.1.1.9 christos Monitor your ntpd instances.
1664 1.1.1.9 christos Credit: This weakness was discovered by Stephen Gray of Cisco ASIG.
1665 1.1.1.9 christos
1666 1.1.1.9 christos * 'ntpq saveconfig' command allows dangerous characters in filenames.
1667 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1668 1.1.1.9 christos References: Sec 2938 / CVE-2015-7976
1669 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1670 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1671 1.1.1.9 christos CVSS: (AV:N/AC:L/Au:S/C:N/I:P/A:N) Base Score: 4.0 - MEDIUM
1672 1.1.1.9 christos Summary: The ntpq saveconfig command does not do adequate filtering
1673 1.1.1.9 christos of special characters from the supplied filename.
1674 1.1.1.9 christos Note well: The ability to use the saveconfig command is controlled
1675 1.1.1.9 christos by the 'restrict nomodify' directive, and the recommended default
1676 1.1.1.9 christos configuration is to disable this capability. If the ability to
1677 1.1.1.9 christos execute a 'saveconfig' is required, it can easily (and should) be
1678 1.1.1.9 christos limited and restricted to a known small number of IP addresses.
1679 1.1.1.9 christos Mitigation:
1680 1.1.1.9 christos Implement BCP-38.
1681 1.1.1.9 christos use 'restrict default nomodify' in your 'ntp.conf' file.
1682 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page.
1683 1.1.1.9 christos If you are unable to upgrade:
1684 1.1.1.9 christos build NTP with 'configure --disable-saveconfig' if you will
1685 1.1.1.9 christos never need this capability, or
1686 1.1.1.9 christos use 'restrict default nomodify' in your 'ntp.conf' file. Be
1687 1.1.1.9 christos careful about what IPs have the ability to send 'modify'
1688 1.1.1.9 christos requests to 'ntpd'.
1689 1.1.1.9 christos Monitor your ntpd instances.
1690 1.1.1.9 christos 'saveconfig' requests are logged to syslog - monitor your syslog files.
1691 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG.
1692 1.1.1.9 christos
1693 1.1.1.9 christos * nextvar() missing length check in ntpq
1694 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1695 1.1.1.9 christos References: Sec 2937 / CVE-2015-7975
1696 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1697 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1698 1.1.1.9 christos CVSS: (AV:L/AC:H/Au:N/C:N/I:N/A:P) Base Score: 1.2 - LOW
1699 1.1.1.9 christos If you score A:C, this becomes 4.0.
1700 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
1701 1.1.1.9 christos Summary: ntpq may call nextvar() which executes a memcpy() into the
1702 1.1.1.9 christos name buffer without a proper length check against its maximum
1703 1.1.1.9 christos length of 256 bytes. Note well that we're taking about ntpq here.
1704 1.1.1.9 christos The usual worst-case effect of this vulnerability is that the
1705 1.1.1.9 christos specific instance of ntpq will crash and the person or process
1706 1.1.1.9 christos that did this will have stopped themselves.
1707 1.1.1.9 christos Mitigation:
1708 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1709 1.1.1.9 christos or the NTP Public Services Project Download Page.
1710 1.1.1.9 christos If you are unable to upgrade:
1711 1.1.1.9 christos If you have scripts that feed input to ntpq make sure there are
1712 1.1.1.9 christos some sanity checks on the input received from the "outside".
1713 1.1.1.9 christos This is potentially more dangerous if ntpq is run as root.
1714 1.1.1.9 christos Credit: This weakness was discovered by Jonathan Gardner at Cisco ASIG.
1715 1.1.1.9 christos
1716 1.1.1.9 christos * Skeleton Key: Any trusted key system can serve time
1717 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1718 1.1.1.9 christos References: Sec 2936 / CVE-2015-7974
1719 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1720 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1721 1.1.1.9 christos CVSS: (AV:N/AC:H/Au:S/C:N/I:C/A:N) Base Score: 4.9
1722 1.1.1.9 christos Summary: Symmetric key encryption uses a shared trusted key. The
1723 1.1.1.9 christos reported title for this issue was "Missing key check allows
1724 1.1.1.9 christos impersonation between authenticated peers" and the report claimed
1725 1.1.1.9 christos "A key specified only for one server should only work to
1726 1.1.1.9 christos authenticate that server, other trusted keys should be refused."
1727 1.1.1.9 christos Except there has never been any correlation between this trusted
1728 1.1.1.9 christos key and server v. clients machines and there has never been any
1729 1.1.1.9 christos way to specify a key only for one server. We have treated this as
1730 1.1.1.9 christos an enhancement request, and ntp-4.2.8p6 includes other checks and
1731 1.1.1.9 christos tests to strengthen clients against attacks coming from broadcast
1732 1.1.1.9 christos servers.
1733 1.1.1.9 christos Mitigation:
1734 1.1.1.9 christos Implement BCP-38.
1735 1.1.1.9 christos If this scenario represents a real or a potential issue for you,
1736 1.1.1.9 christos upgrade to 4.2.8p6, or later, from the NTP Project Download
1737 1.1.1.9 christos Page or the NTP Public Services Project Download Page, and
1738 1.1.1.9 christos use the new field in the ntp.keys file that specifies the list
1739 1.1.1.9 christos of IPs that are allowed to serve time. Note that this alone
1740 1.1.1.9 christos will not protect against time packets with forged source IP
1741 1.1.1.9 christos addresses, however other changes in ntp-4.2.8p6 provide
1742 1.1.1.9 christos significant mitigation against broadcast attacks. MITM attacks
1743 1.1.1.9 christos are a different story.
1744 1.1.1.9 christos If you are unable to upgrade:
1745 1.1.1.9 christos Don't use broadcast mode if you cannot monitor your client
1746 1.1.1.9 christos servers.
1747 1.1.1.9 christos If you choose to use symmetric keys to authenticate time
1748 1.1.1.9 christos packets in a hostile environment where ephemeral time
1749 1.1.1.9 christos servers can be created, or if it is expected that malicious
1750 1.1.1.9 christos time servers will participate in an NTP broadcast domain,
1751 1.1.1.9 christos limit the number of participating systems that participate
1752 1.1.1.9 christos in the shared-key group.
1753 1.1.1.9 christos Monitor your ntpd instances.
1754 1.1.1.9 christos Credit: This weakness was discovered by Matt Street of Cisco ASIG.
1755 1.1.1.9 christos
1756 1.1.1.9 christos * Deja Vu: Replay attack on authenticated broadcast mode
1757 1.1.1.9 christos Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016
1758 1.1.1.9 christos References: Sec 2935 / CVE-2015-7973
1759 1.1.1.9 christos Affects: All ntp-4 releases up to, but not including 4.2.8p6, and
1760 1.1.1.9 christos 4.3.0 up to, but not including 4.3.90
1761 1.1.1.9 christos CVSS: (AV:A/AC:M/Au:N/C:N/I:P/A:P) Base Score: 4.3 - MEDIUM
1762 1.1.1.9 christos Summary: If an NTP network is configured for broadcast operations then
1763 1.1.1.9 christos either a man-in-the-middle attacker or a malicious participant
1764 1.1.1.9 christos that has the same trusted keys as the victim can replay time packets.
1765 1.1.1.9 christos Mitigation:
1766 1.1.1.9 christos Implement BCP-38.
1767 1.1.1.9 christos Upgrade to 4.2.8p6, or later, from the NTP Project Download Page
1768 1.1.1.9 christos or the NTP Public Services Project Download Page.
1769 1.1.1.9 christos If you are unable to upgrade:
1770 1.1.1.9 christos Don't use broadcast mode if you cannot monitor your client servers.
1771 1.1.1.9 christos Monitor your ntpd instances.
1772 1.1.1.9 christos Credit: This weakness was discovered by Aanchal Malhotra of Boston
1773 1.1.1.9 christos University.
1774 1.1.1.9 christos
1775 1.1.1.9 christos Other fixes:
1776 1.1.1.9 christos
1777 1.1.1.9 christos * [Bug 2772] adj_systime overflows tv_usec. perlinger (a] ntp.org
1778 1.1.1.9 christos * [Bug 2814] msyslog deadlock when signaled. perlinger (a] ntp.org
1779 1.1.1.9 christos - applied patch by shenpeng11 (a] huawei.com with minor adjustments
1780 1.1.1.9 christos * [Bug 2882] Look at ntp_request.c:list_peers_sum(). perlinger (a] ntp.org
1781 1.1.1.9 christos * [Bug 2891] Deadlock in deferred DNS lookup framework. perlinger (a] ntp.org
1782 1.1.1.9 christos * [Bug 2892] Several test cases assume IPv6 capabilities even when
1783 1.1.1.9 christos IPv6 is disabled in the build. perlinger (a] ntp.org
1784 1.1.1.9 christos - Found this already fixed, but validation led to cleanup actions.
1785 1.1.1.9 christos * [Bug 2905] DNS lookups broken. perlinger (a] ntp.org
1786 1.1.1.9 christos - added limits to stack consumption, fixed some return code handling
1787 1.1.1.9 christos * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
1788 1.1.1.9 christos - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
1789 1.1.1.9 christos - make CTRL-C work for retrieval and printing od MRU list. perlinger (a] ntp.org
1790 1.1.1.9 christos * [Bug 2980] reduce number of warnings. perlinger (a] ntp.org
1791 1.1.1.9 christos - integrated several patches from Havard Eidnes (he (a] uninett.no)
1792 1.1.1.9 christos * [Bug 2985] bogus calculation in authkeys.c perlinger (a] ntp.org
1793 1.1.1.9 christos - implement 'auth_log2()' using integer bithack instead of float calculation
1794 1.1.1.9 christos * Make leapsec_query debug messages less verbose. Harlan Stenn.
1795 1.1.1.9 christos
1796 1.1.1.9 christos ---
1797 1.1.1.9 christos NTP 4.2.8p5 (Harlan Stenn <stenn (a] ntp.org>, 2016/01/07)
1798 1.1.1.8 christos
1799 1.1.1.8 christos Focus: Security, Bug fixes, enhancements.
1800 1.1.1.8 christos
1801 1.1.1.8 christos Severity: MEDIUM
1802 1.1.1.8 christos
1803 1.1.1.8 christos In addition to bug fixes and enhancements, this release fixes the
1804 1.1.1.8 christos following medium-severity vulnerability:
1805 1.1.1.8 christos
1806 1.1.1.8 christos * Small-step/big-step. Close the panic gate earlier.
1807 1.1.1.8 christos References: Sec 2956, CVE-2015-5300
1808 1.1.1.8 christos Affects: All ntp-4 releases up to, but not including 4.2.8p5, and
1809 1.1.1.8 christos 4.3.0 up to, but not including 4.3.78
1810 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
1811 1.1.1.8 christos Summary: If ntpd is always started with the -g option, which is
1812 1.1.1.8 christos common and against long-standing recommendation, and if at the
1813 1.1.1.8 christos moment ntpd is restarted an attacker can immediately respond to
1814 1.1.1.8 christos enough requests from enough sources trusted by the target, which
1815 1.1.1.8 christos is difficult and not common, there is a window of opportunity
1816 1.1.1.8 christos where the attacker can cause ntpd to set the time to an
1817 1.1.1.8 christos arbitrary value. Similarly, if an attacker is able to respond
1818 1.1.1.8 christos to enough requests from enough sources trusted by the target,
1819 1.1.1.8 christos the attacker can cause ntpd to abort and restart, at which
1820 1.1.1.8 christos point it can tell the target to set the time to an arbitrary
1821 1.1.1.8 christos value if and only if ntpd was re-started against long-standing
1822 1.1.1.8 christos recommendation with the -g flag, or if ntpd was not given the
1823 1.1.1.8 christos -g flag, the attacker can move the target system's time by at
1824 1.1.1.8 christos most 900 seconds' time per attack.
1825 1.1.1.8 christos Mitigation:
1826 1.1.1.8 christos Configure ntpd to get time from multiple sources.
1827 1.1.1.8 christos Upgrade to 4.2.8p5, or later, from the NTP Project Download
1828 1.1.1.8 christos Page or the NTP Public Services Project Download Page
1829 1.1.1.8 christos As we've long documented, only use the -g option to ntpd in
1830 1.1.1.8 christos cold-start situations.
1831 1.1.1.8 christos Monitor your ntpd instances.
1832 1.1.1.8 christos Credit: This weakness was discovered by Aanchal Malhotra,
1833 1.1.1.8 christos Isaac E. Cohen, and Sharon Goldberg at Boston University.
1834 1.1.1.8 christos
1835 1.1.1.8 christos NOTE WELL: The -g flag disables the limit check on the panic_gate
1836 1.1.1.8 christos in ntpd, which is 900 seconds by default. The bug identified by
1837 1.1.1.8 christos the researchers at Boston University is that the panic_gate
1838 1.1.1.8 christos check was only re-enabled after the first change to the system
1839 1.1.1.8 christos clock that was greater than 128 milliseconds, by default. The
1840 1.1.1.8 christos correct behavior is that the panic_gate check should be
1841 1.1.1.8 christos re-enabled after any initial time correction.
1842 1.1.1.8 christos
1843 1.1.1.8 christos If an attacker is able to inject consistent but erroneous time
1844 1.1.1.8 christos responses to your systems via the network or "over the air",
1845 1.1.1.8 christos perhaps by spoofing radio, cellphone, or navigation satellite
1846 1.1.1.8 christos transmissions, they are in a great position to affect your
1847 1.1.1.8 christos system's clock. There comes a point where your very best
1848 1.1.1.8 christos defenses include:
1849 1.1.1.8 christos
1850 1.1.1.8 christos Configure ntpd to get time from multiple sources.
1851 1.1.1.8 christos Monitor your ntpd instances.
1852 1.1.1.8 christos
1853 1.1.1.8 christos Other fixes:
1854 1.1.1.8 christos
1855 1.1.1.8 christos * Coverity submission process updated from Coverity 5 to Coverity 7.
1856 1.1.1.8 christos The NTP codebase has been undergoing regular Coverity scans on an
1857 1.1.1.8 christos ongoing basis since 2006. As part of our recent upgrade from
1858 1.1.1.8 christos Coverity 5 to Coverity 7, Coverity identified 16 nits in some of
1859 1.1.1.8 christos the newly-written Unity test programs. These were fixed.
1860 1.1.1.9 christos * [Bug 2829] Clean up pipe_fds in ntpd.c perlinger (a] ntp.org
1861 1.1.1.8 christos * [Bug 2887] stratum -1 config results as showing value 99
1862 1.1.1.8 christos - fudge stratum should only accept values [0..16]. perlinger (a] ntp.org
1863 1.1.1.8 christos * [Bug 2932] Update leapsecond file info in miscopt.html. CWoodbury, HStenn.
1864 1.1.1.8 christos * [Bug 2934] tests/ntpd/t-ntp_scanner.c has a magic constant wired in. HMurray
1865 1.1.1.8 christos * [Bug 2944] errno is not preserved properly in ntpdate after sendto call.
1866 1.1.1.8 christos - applied patch by Christos Zoulas. perlinger (a] ntp.org
1867 1.1.1.8 christos * [Bug 2952] Peer associations broken by fix for Bug 2901/CVE-2015-7704.
1868 1.1.1.9 christos * [Bug 2954] Version 4.2.8p4 crashes on startup on some OSes.
1869 1.1.1.8 christos - fixed data race conditions in threaded DNS worker. perlinger (a] ntp.org
1870 1.1.1.8 christos - limit threading warm-up to linux; FreeBSD bombs on it. perlinger (a] ntp.org
1871 1.1.1.8 christos * [Bug 2957] 'unsigned int' vs 'size_t' format clash. perlinger (a] ntp.org
1872 1.1.1.8 christos - accept key file only if there are no parsing errors
1873 1.1.1.8 christos - fixed size_t/u_int format clash
1874 1.1.1.8 christos - fixed wrong use of 'strlcpy'
1875 1.1.1.8 christos * [Bug 2958] ntpq: fatal error messages need a final newline. Craig Leres.
1876 1.1.1.8 christos * [Bug 2962] truncation of size_t/ptrdiff_t on 64bit targets. perlinger (a] ntp.org
1877 1.1.1.8 christos - fixed several other warnings (cast-alignment, missing const, missing prototypes)
1878 1.1.1.8 christos - promote use of 'size_t' for values that express a size
1879 1.1.1.8 christos - use ptr-to-const for read-only arguments
1880 1.1.1.8 christos - make sure SOCKET values are not truncated (win32-specific)
1881 1.1.1.8 christos - format string fixes
1882 1.1.1.8 christos * [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki.
1883 1.1.1.8 christos * [Bug 2967] ntpdate command suffers an assertion failure
1884 1.1.1.8 christos - fixed ntp_rfc2553.c to return proper address length. perlinger (a] ntp.org
1885 1.1.1.8 christos * [Bug 2969] Seg fault from ntpq/mrulist when looking at server with
1886 1.1.1.8 christos lots of clients. perlinger (a] ntp.org
1887 1.1.1.8 christos * [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call
1888 1.1.1.8 christos - changed stacked/nested handling of CTRL-C. perlinger (a] ntp.org
1889 1.1.1.8 christos * Unity cleanup for FreeBSD-6.4. Harlan Stenn.
1890 1.1.1.8 christos * Unity test cleanup. Harlan Stenn.
1891 1.1.1.8 christos * Libevent autoconf pthread fixes for FreeBSD-10. Harlan Stenn.
1892 1.1.1.8 christos * Header cleanup in tests/sandbox/uglydate.c. Harlan Stenn.
1893 1.1.1.8 christos * Header cleanup in tests/libntp/sfptostr.c. Harlan Stenn.
1894 1.1.1.8 christos * Quiet a warning from clang. Harlan Stenn.
1895 1.1.1.8 christos
1896 1.1.1.8 christos ---
1897 1.1.1.9 christos NTP 4.2.8p4 (Harlan Stenn <stenn (a] ntp.org>, 2015/10/21)
1898 1.1.1.7 christos
1899 1.1.1.8 christos Focus: Security, Bug fixes, enhancements.
1900 1.1.1.7 christos
1901 1.1.1.7 christos Severity: MEDIUM
1902 1.1.1.7 christos
1903 1.1.1.7 christos In addition to bug fixes and enhancements, this release fixes the
1904 1.1.1.7 christos following 13 low- and medium-severity vulnerabilities:
1905 1.1.1.7 christos
1906 1.1.1.7 christos * Incomplete vallen (value length) checks in ntp_crypto.c, leading
1907 1.1.1.7 christos to potential crashes or potential code injection/information leakage.
1908 1.1.1.7 christos
1909 1.1.1.7 christos References: Sec 2899, Sec 2671, CVE-2015-7691, CVE-2015-7692, CVE-2015-7702
1910 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
1911 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
1912 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
1913 1.1.1.7 christos Summary: The fix for CVE-2014-9750 was incomplete in that there were
1914 1.1.1.7 christos certain code paths where a packet with particular autokey operations
1915 1.1.1.7 christos that contained malicious data was not always being completely
1916 1.1.1.7 christos validated. Receipt of these packets can cause ntpd to crash.
1917 1.1.1.7 christos Mitigation:
1918 1.1.1.7 christos Don't use autokey.
1919 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
1920 1.1.1.7 christos Page or the NTP Public Services Project Download Page
1921 1.1.1.7 christos Monitor your ntpd instances.
1922 1.1.1.7 christos Credit: This weakness was discovered by Tenable Network Security.
1923 1.1.1.7 christos
1924 1.1.1.7 christos * Clients that receive a KoD should validate the origin timestamp field.
1925 1.1.1.7 christos
1926 1.1.1.7 christos References: Sec 2901 / CVE-2015-7704, CVE-2015-7705
1927 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
1928 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
1929 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
1930 1.1.1.7 christos Summary: An ntpd client that honors Kiss-of-Death responses will honor
1931 1.1.1.7 christos KoD messages that have been forged by an attacker, causing it to
1932 1.1.1.7 christos delay or stop querying its servers for time updates. Also, an
1933 1.1.1.7 christos attacker can forge packets that claim to be from the target and
1934 1.1.1.7 christos send them to servers often enough that a server that implements
1935 1.1.1.7 christos KoD rate limiting will send the target machine a KoD response to
1936 1.1.1.7 christos attempt to reduce the rate of incoming packets, or it may also
1937 1.1.1.7 christos trigger a firewall block at the server for packets from the target
1938 1.1.1.7 christos machine. For either of these attacks to succeed, the attacker must
1939 1.1.1.7 christos know what servers the target is communicating with. An attacker
1940 1.1.1.7 christos can be anywhere on the Internet and can frequently learn the
1941 1.1.1.7 christos identity of the target's time source by sending the target a
1942 1.1.1.7 christos time query.
1943 1.1.1.7 christos Mitigation:
1944 1.1.1.7 christos Implement BCP-38.
1945 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download Page
1946 1.1.1.7 christos or the NTP Public Services Project Download Page
1947 1.1.1.7 christos If you can't upgrade, restrict who can query ntpd to learn who
1948 1.1.1.7 christos its servers are, and what IPs are allowed to ask your system
1949 1.1.1.7 christos for the time. This mitigation is heavy-handed.
1950 1.1.1.7 christos Monitor your ntpd instances.
1951 1.1.1.7 christos Note:
1952 1.1.1.7 christos 4.2.8p4 protects against the first attack. For the second attack,
1953 1.1.1.7 christos all we can do is warn when it is happening, which we do in 4.2.8p4.
1954 1.1.1.7 christos Credit: This weakness was discovered by Aanchal Malhotra,
1955 1.1.1.7 christos Issac E. Cohen, and Sharon Goldberg of Boston University.
1956 1.1.1.7 christos
1957 1.1.1.7 christos * configuration directives to change "pidfile" and "driftfile" should
1958 1.1.1.7 christos only be allowed locally.
1959 1.1.1.7 christos
1960 1.1.1.7 christos References: Sec 2902 / CVE-2015-5196
1961 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
1962 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
1963 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.2 worst case
1964 1.1.1.7 christos Summary: If ntpd is configured to allow for remote configuration,
1965 1.1.1.7 christos and if the (possibly spoofed) source IP address is allowed to
1966 1.1.1.7 christos send remote configuration requests, and if the attacker knows
1967 1.1.1.7 christos the remote configuration password, it's possible for an attacker
1968 1.1.1.7 christos to use the "pidfile" or "driftfile" directives to potentially
1969 1.1.1.7 christos overwrite other files.
1970 1.1.1.7 christos Mitigation:
1971 1.1.1.7 christos Implement BCP-38.
1972 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
1973 1.1.1.7 christos Page or the NTP Public Services Project Download Page
1974 1.1.1.7 christos If you cannot upgrade, don't enable remote configuration.
1975 1.1.1.7 christos If you must enable remote configuration and cannot upgrade,
1976 1.1.1.7 christos remote configuration of NTF's ntpd requires:
1977 1.1.1.7 christos - an explicitly configured trustedkey, and you should also
1978 1.1.1.7 christos configure a controlkey.
1979 1.1.1.7 christos - access from a permitted IP. You choose the IPs.
1980 1.1.1.7 christos - authentication. Don't disable it. Practice secure key safety.
1981 1.1.1.7 christos Monitor your ntpd instances.
1982 1.1.1.7 christos Credit: This weakness was discovered by Miroslav Lichvar of Red Hat.
1983 1.1.1.7 christos
1984 1.1.1.7 christos * Slow memory leak in CRYPTO_ASSOC
1985 1.1.1.7 christos
1986 1.1.1.7 christos References: Sec 2909 / CVE-2015-7701
1987 1.1.1.7 christos Affects: All ntp-4 releases that use autokey up to, but not
1988 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
1989 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,
1990 1.1.1.7 christos 4.6 otherwise
1991 1.1.1.7 christos Summary: If ntpd is configured to use autokey, then an attacker can
1992 1.1.1.7 christos send packets to ntpd that will, after several days of ongoing
1993 1.1.1.7 christos attack, cause it to run out of memory.
1994 1.1.1.7 christos Mitigation:
1995 1.1.1.7 christos Don't use autokey.
1996 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
1997 1.1.1.7 christos Page or the NTP Public Services Project Download Page
1998 1.1.1.7 christos Monitor your ntpd instances.
1999 1.1.1.7 christos Credit: This weakness was discovered by Tenable Network Security.
2000 1.1.1.7 christos
2001 1.1.1.7 christos * mode 7 loop counter underrun
2002 1.1.1.7 christos
2003 1.1.1.7 christos References: Sec 2913 / CVE-2015-7848 / TALOS-CAN-0052
2004 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2005 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
2006 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6
2007 1.1.1.7 christos Summary: If ntpd is configured to enable mode 7 packets, and if the
2008 1.1.1.7 christos use of mode 7 packets is not properly protected thru the use of
2009 1.1.1.7 christos the available mode 7 authentication and restriction mechanisms,
2010 1.1.1.7 christos and if the (possibly spoofed) source IP address is allowed to
2011 1.1.1.7 christos send mode 7 queries, then an attacker can send a crafted packet
2012 1.1.1.7 christos to ntpd that will cause it to crash.
2013 1.1.1.7 christos Mitigation:
2014 1.1.1.7 christos Implement BCP-38.
2015 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2016 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2017 1.1.1.7 christos If you are unable to upgrade:
2018 1.1.1.7 christos In ntp-4.2.8, mode 7 is disabled by default. Don't enable it.
2019 1.1.1.7 christos If you must enable mode 7:
2020 1.1.1.7 christos configure the use of a requestkey to control who can issue
2021 1.1.1.7 christos mode 7 requests.
2022 1.1.1.7 christos configure restrict noquery to further limit mode 7 requests
2023 1.1.1.7 christos to trusted sources.
2024 1.1.1.7 christos Monitor your ntpd instances.
2025 1.1.1.7 christos Credit: This weakness was discovered by Aleksandar Nikolic of Cisco Talos.
2026 1.1.1.7 christos
2027 1.1.1.7 christos * memory corruption in password store
2028 1.1.1.7 christos
2029 1.1.1.7 christos References: Sec 2916 / CVE-2015-7849 / TALOS-CAN-0054
2030 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
2031 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.8, worst case
2032 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
2033 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
2034 1.1.1.7 christos remote configuration requests, and if the attacker knows the
2035 1.1.1.7 christos remote configuration password or if ntpd was configured to
2036 1.1.1.7 christos disable authentication, then an attacker can send a set of
2037 1.1.1.7 christos packets to ntpd that may cause a crash or theoretically
2038 1.1.1.7 christos perform a code injection attack.
2039 1.1.1.7 christos Mitigation:
2040 1.1.1.7 christos Implement BCP-38.
2041 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2042 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2043 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's
2044 1.1.1.7 christos ntpd requires:
2045 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
2046 1.1.1.7 christos this if you need it.
2047 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
2048 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
2049 1.1.1.7 christos Monitor your ntpd instances.
2050 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2051 1.1.1.7 christos
2052 1.1.1.7 christos * Infinite loop if extended logging enabled and the logfile and
2053 1.1.1.7 christos keyfile are the same.
2054 1.1.1.7 christos
2055 1.1.1.7 christos References: Sec 2917 / CVE-2015-7850 / TALOS-CAN-0055
2056 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4,
2057 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
2058 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
2059 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
2060 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
2061 1.1.1.7 christos remote configuration requests, and if the attacker knows the
2062 1.1.1.7 christos remote configuration password or if ntpd was configured to
2063 1.1.1.7 christos disable authentication, then an attacker can send a set of
2064 1.1.1.7 christos packets to ntpd that will cause it to crash and/or create a
2065 1.1.1.7 christos potentially huge log file. Specifically, the attacker could
2066 1.1.1.7 christos enable extended logging, point the key file at the log file,
2067 1.1.1.7 christos and cause what amounts to an infinite loop.
2068 1.1.1.7 christos Mitigation:
2069 1.1.1.7 christos Implement BCP-38.
2070 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2071 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2072 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's ntpd
2073 1.1.1.7 christos requires:
2074 1.1.1.7 christos an explicitly configured "trusted" key. Only configure this
2075 1.1.1.7 christos if you need it.
2076 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
2077 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
2078 1.1.1.7 christos Monitor your ntpd instances.
2079 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2080 1.1.1.7 christos
2081 1.1.1.7 christos * Potential path traversal vulnerability in the config file saving of
2082 1.1.1.7 christos ntpd on VMS.
2083 1.1.1.7 christos
2084 1.1.1.7 christos References: Sec 2918 / CVE-2015-7851 / TALOS-CAN-0062
2085 1.1.1.7 christos Affects: All ntp-4 releases running under VMS up to, but not
2086 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2087 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:P/A:C) Base Score: 5.2, worst case
2088 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
2089 1.1.1.7 christos the (possibly spoofed) IP address is allowed to send remote
2090 1.1.1.7 christos configuration requests, and if the attacker knows the remote
2091 1.1.1.7 christos configuration password or if ntpd was configured to disable
2092 1.1.1.7 christos authentication, then an attacker can send a set of packets to
2093 1.1.1.7 christos ntpd that may cause ntpd to overwrite files.
2094 1.1.1.7 christos Mitigation:
2095 1.1.1.7 christos Implement BCP-38.
2096 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2097 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2098 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's ntpd
2099 1.1.1.7 christos requires:
2100 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
2101 1.1.1.7 christos this if you need it.
2102 1.1.1.7 christos access from permitted IP addresses. You choose the IPs.
2103 1.1.1.7 christos authentication. Don't disable it. Practice key security safety.
2104 1.1.1.7 christos Monitor your ntpd instances.
2105 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2106 1.1.1.7 christos
2107 1.1.1.7 christos * ntpq atoascii() potential memory corruption
2108 1.1.1.7 christos
2109 1.1.1.7 christos References: Sec 2919 / CVE-2015-7852 / TALOS-CAN-0063
2110 1.1.1.7 christos Affects: All ntp-4 releases running up to, but not including 4.2.8p4,
2111 1.1.1.7 christos and 4.3.0 up to, but not including 4.3.77
2112 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:N/C:N/I:P/A:P) Base Score: 4.0, worst case
2113 1.1.1.7 christos Summary: If an attacker can figure out the precise moment that ntpq
2114 1.1.1.7 christos is listening for data and the port number it is listening on or
2115 1.1.1.7 christos if the attacker can provide a malicious instance ntpd that
2116 1.1.1.7 christos victims will connect to then an attacker can send a set of
2117 1.1.1.7 christos crafted mode 6 response packets that, if received by ntpq,
2118 1.1.1.7 christos can cause ntpq to crash.
2119 1.1.1.7 christos Mitigation:
2120 1.1.1.7 christos Implement BCP-38.
2121 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2122 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2123 1.1.1.7 christos If you are unable to upgrade and you run ntpq against a server
2124 1.1.1.7 christos and ntpq crashes, try again using raw mode. Build or get a
2125 1.1.1.7 christos patched ntpq and see if that fixes the problem. Report new
2126 1.1.1.7 christos bugs in ntpq or abusive servers appropriately.
2127 1.1.1.7 christos If you use ntpq in scripts, make sure ntpq does what you expect
2128 1.1.1.7 christos in your scripts.
2129 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan and
2130 1.1.1.7 christos Aleksander Nikolich of Cisco Talos.
2131 1.1.1.7 christos
2132 1.1.1.7 christos * Invalid length data provided by a custom refclock driver could cause
2133 1.1.1.7 christos a buffer overflow.
2134 1.1.1.7 christos
2135 1.1.1.7 christos References: Sec 2920 / CVE-2015-7853 / TALOS-CAN-0064
2136 1.1.1.7 christos Affects: Potentially all ntp-4 releases running up to, but not
2137 1.1.1.7 christos including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77
2138 1.1.1.7 christos that have custom refclocks
2139 1.1.1.7 christos CVSS: (AV:L/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 usual case,
2140 1.1.1.7 christos 5.9 unusual worst case
2141 1.1.1.7 christos Summary: A negative value for the datalen parameter will overflow a
2142 1.1.1.7 christos data buffer. NTF's ntpd driver implementations always set this
2143 1.1.1.7 christos value to 0 and are therefore not vulnerable to this weakness.
2144 1.1.1.7 christos If you are running a custom refclock driver in ntpd and that
2145 1.1.1.7 christos driver supplies a negative value for datalen (no custom driver
2146 1.1.1.7 christos of even minimal competence would do this) then ntpd would
2147 1.1.1.7 christos overflow a data buffer. It is even hypothetically possible
2148 1.1.1.7 christos in this case that instead of simply crashing ntpd the attacker
2149 1.1.1.7 christos could effect a code injection attack.
2150 1.1.1.7 christos Mitigation:
2151 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2152 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2153 1.1.1.7 christos If you are unable to upgrade:
2154 1.1.1.7 christos If you are running custom refclock drivers, make sure
2155 1.1.1.7 christos the signed datalen value is either zero or positive.
2156 1.1.1.7 christos Monitor your ntpd instances.
2157 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan of Cisco Talos.
2158 1.1.1.7 christos
2159 1.1.1.7 christos * Password Length Memory Corruption Vulnerability
2160 1.1.1.7 christos
2161 1.1.1.7 christos References: Sec 2921 / CVE-2015-7854 / TALOS-CAN-0065
2162 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
2163 1.1.1.7 christos 4.3.0 up to, but not including 4.3.77
2164 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 best case,
2165 1.1.1.7 christos 1.7 usual case, 6.8, worst case
2166 1.1.1.7 christos Summary: If ntpd is configured to allow remote configuration, and if
2167 1.1.1.7 christos the (possibly spoofed) source IP address is allowed to send
2168 1.1.1.7 christos remote configuration requests, and if the attacker knows the
2169 1.1.1.7 christos remote configuration password or if ntpd was (foolishly)
2170 1.1.1.7 christos configured to disable authentication, then an attacker can
2171 1.1.1.7 christos send a set of packets to ntpd that may cause it to crash,
2172 1.1.1.7 christos with the hypothetical possibility of a small code injection.
2173 1.1.1.7 christos Mitigation:
2174 1.1.1.7 christos Implement BCP-38.
2175 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2176 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2177 1.1.1.7 christos If you are unable to upgrade, remote configuration of NTF's
2178 1.1.1.7 christos ntpd requires:
2179 1.1.1.7 christos an explicitly configured "trusted" key. Only configure
2180 1.1.1.7 christos this if you need it.
2181 1.1.1.7 christos access from a permitted IP address. You choose the IPs.
2182 1.1.1.7 christos authentication. Don't disable it. Practice secure key safety.
2183 1.1.1.7 christos Monitor your ntpd instances.
2184 1.1.1.7 christos Credit: This weakness was discovered by Yves Younan and
2185 1.1.1.7 christos Aleksander Nikolich of Cisco Talos.
2186 1.1.1.7 christos
2187 1.1.1.7 christos * decodenetnum() will ASSERT botch instead of returning FAIL on some
2188 1.1.1.7 christos bogus values.
2189 1.1.1.7 christos
2190 1.1.1.7 christos References: Sec 2922 / CVE-2015-7855
2191 1.1.1.7 christos Affects: All ntp-4 releases up to, but not including 4.2.8p4, and
2192 1.1.1.7 christos 4.3.0 up to, but not including 4.3.77
2193 1.1.1.7 christos CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
2194 1.1.1.7 christos Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing
2195 1.1.1.7 christos an unusually long data value where a network address is expected,
2196 1.1.1.7 christos the decodenetnum() function will abort with an assertion failure
2197 1.1.1.7 christos instead of simply returning a failure condition.
2198 1.1.1.7 christos Mitigation:
2199 1.1.1.7 christos Implement BCP-38.
2200 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2201 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2202 1.1.1.7 christos If you are unable to upgrade:
2203 1.1.1.7 christos mode 7 is disabled by default. Don't enable it.
2204 1.1.1.7 christos Use restrict noquery to limit who can send mode 6
2205 1.1.1.7 christos and mode 7 requests.
2206 1.1.1.7 christos Configure and use the controlkey and requestkey
2207 1.1.1.7 christos authentication directives to limit who can
2208 1.1.1.7 christos send mode 6 and mode 7 requests.
2209 1.1.1.7 christos Monitor your ntpd instances.
2210 1.1.1.7 christos Credit: This weakness was discovered by John D "Doug" Birdwell of IDA.org.
2211 1.1.1.7 christos
2212 1.1.1.7 christos * NAK to the Future: Symmetric association authentication bypass via
2213 1.1.1.7 christos crypto-NAK.
2214 1.1.1.7 christos
2215 1.1.1.7 christos References: Sec 2941 / CVE-2015-7871
2216 1.1.1.7 christos Affects: All ntp-4 releases between 4.2.5p186 up to but not including
2217 1.1.1.7 christos 4.2.8p4, and 4.3.0 up to but not including 4.3.77
2218 1.1.1.7 christos CVSS: (AV:N/AC:L/Au:N/C:N/I:P/A:P) Base Score: 6.4
2219 1.1.1.7 christos Summary: Crypto-NAK packets can be used to cause ntpd to accept time
2220 1.1.1.7 christos from unauthenticated ephemeral symmetric peers by bypassing the
2221 1.1.1.7 christos authentication required to mobilize peer associations. This
2222 1.1.1.7 christos vulnerability appears to have been introduced in ntp-4.2.5p186
2223 1.1.1.7 christos when the code handling mobilization of new passive symmetric
2224 1.1.1.7 christos associations (lines 1103-1165) was refactored.
2225 1.1.1.7 christos Mitigation:
2226 1.1.1.7 christos Implement BCP-38.
2227 1.1.1.7 christos Upgrade to 4.2.8p4, or later, from the NTP Project Download
2228 1.1.1.7 christos Page or the NTP Public Services Project Download Page.
2229 1.1.1.7 christos If you are unable to upgrade:
2230 1.1.1.7 christos Apply the patch to the bottom of the "authentic" check
2231 1.1.1.7 christos block around line 1136 of ntp_proto.c.
2232 1.1.1.7 christos Monitor your ntpd instances.
2233 1.1.1.9 christos Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG.
2234 1.1.1.7 christos
2235 1.1.1.7 christos Backward-Incompatible changes:
2236 1.1.1.7 christos * [Bug 2817] Default on Linux is now "rlimit memlock -1".
2237 1.1.1.8 christos While the general default of 32M is still the case, under Linux
2238 1.1.1.8 christos the default value has been changed to -1 (do not lock ntpd into
2239 1.1.1.7 christos memory). A value of 0 means "lock ntpd into memory with whatever
2240 1.1.1.7 christos memory it needs." If your ntp.conf file has an explicit "rlimit memlock"
2241 1.1.1.7 christos value in it, that value will continue to be used.
2242 1.1.1.7 christos
2243 1.1.1.7 christos * [Bug 2886] Misspelling: "outlyer" should be "outlier".
2244 1.1.1.7 christos If you've written a script that looks for this case in, say, the
2245 1.1.1.7 christos output of ntpq, you probably want to change your regex matches
2246 1.1.1.7 christos from 'outlyer' to 'outl[iy]er'.
2247 1.1.1.7 christos
2248 1.1.1.7 christos New features in this release:
2249 1.1.1.7 christos * 'rlimit memlock' now has finer-grained control. A value of -1 means
2250 1.1.1.7 christos "don't lock ntpd into memore". This is the default for Linux boxes.
2251 1.1.1.7 christos A value of 0 means "lock ntpd into memory" with no limits. Otherwise
2252 1.1.1.7 christos the value is the number of megabytes of memory to lock. The default
2253 1.1.1.7 christos is 32 megabytes.
2254 1.1.1.7 christos
2255 1.1.1.7 christos * The old Google Test framework has been replaced with a new framework,
2256 1.1.1.7 christos based on http://www.throwtheswitch.org/unity/ .
2257 1.1.1.7 christos
2258 1.1.1.7 christos Bug Fixes and Improvements:
2259 1.1.1.7 christos * [Bug 2332] (reopened) Exercise thread cancellation once before dropping
2260 1.1.1.7 christos privileges and limiting resources in NTPD removes the need to link
2261 1.1.1.7 christos forcefully against 'libgcc_s' which does not always work. J.Perlinger
2262 1.1.1.7 christos * [Bug 2595] ntpdate man page quirks. Hal Murray, Harlan Stenn.
2263 1.1.1.7 christos * [Bug 2625] Deprecate flag1 in local refclock. Hal Murray, Harlan Stenn.
2264 1.1.1.7 christos * [Bug 2817] Stop locking ntpd into memory by default under Linux. H.Stenn.
2265 1.1.1.7 christos * [Bug 2821] minor build issues: fixed refclock_gpsdjson.c. perlinger (a] ntp.org
2266 1.1.1.7 christos * [Bug 2823] ntpsweep with recursive peers option doesn't work. H.Stenn.
2267 1.1.1.7 christos * [Bug 2849] Systems with more than one default route may never
2268 1.1.1.7 christos synchronize. Brian Utterback. Note that this patch might need to
2269 1.1.1.7 christos be reverted once Bug 2043 has been fixed.
2270 1.1.1.7 christos * [Bug 2864] 4.2.8p3 fails to compile on Windows. Juergen Perlinger
2271 1.1.1.7 christos * [Bug 2866] segmentation fault at initgroups(). Harlan Stenn.
2272 1.1.1.7 christos * [Bug 2867] ntpd with autokey active crashed by 'ntpq -crv'. J.Perlinger
2273 1.1.1.7 christos * [Bug 2873] libevent should not include .deps/ in the tarball. H.Stenn
2274 1.1.1.7 christos * [Bug 2874] Don't distribute generated sntp/tests/fileHandlingTest.h. H.Stenn
2275 1.1.1.7 christos * [Bug 2875] sntp/Makefile.am: Get rid of DIST_SUBDIRS. libevent must
2276 1.1.1.7 christos be configured for the distribution targets. Harlan Stenn.
2277 1.1.1.7 christos * [Bug 2883] ntpd crashes on exit with empty driftfile. Miroslav Lichvar.
2278 1.1.1.7 christos * [Bug 2886] Mis-spelling: "outlyer" should be "outlier". dave (a] horsfall.org
2279 1.1.1.7 christos * [Bug 2888] streamline calendar functions. perlinger (a] ntp.org
2280 1.1.1.7 christos * [Bug 2889] ntp-dev-4.3.67 does not build on Windows. perlinger (a] ntp.org
2281 1.1.1.7 christos * [Bug 2890] Ignore ENOBUFS on routing netlink socket. Konstantin Khlebnikov.
2282 1.1.1.7 christos * [Bug 2906] make check needs better support for pthreads. Harlan Stenn.
2283 1.1.1.7 christos * [Bug 2907] dist* build targets require our libevent/ to be enabled. HStenn.
2284 1.1.1.7 christos * [Bug 2912] no munlockall() under Windows. David Taylor, Harlan Stenn.
2285 1.1.1.7 christos * libntp/emalloc.c: Remove explicit include of stdint.h. Harlan Stenn.
2286 1.1.1.7 christos * Put Unity CPPFLAGS items in unity_config.h. Harlan Stenn.
2287 1.1.1.7 christos * tests/ntpd/g_leapsec.cpp typo fix. Harlan Stenn.
2288 1.1.1.7 christos * Phase 1 deprecation of google test in sntp/tests/. Harlan Stenn.
2289 1.1.1.7 christos * On some versions of HP-UX, inttypes.h does not include stdint.h. H.Stenn.
2290 1.1.1.7 christos * top_srcdir can change based on ntp v. sntp. Harlan Stenn.
2291 1.1.1.7 christos * sntp/tests/ function parameter list cleanup. Damir Tomi.
2292 1.1.1.7 christos * tests/libntp/ function parameter list cleanup. Damir Tomi.
2293 1.1.1.7 christos * tests/ntpd/ function parameter list cleanup. Damir Tomi.
2294 1.1.1.7 christos * sntp/unity/unity_config.h: handle stdint.h. Harlan Stenn.
2295 1.1.1.7 christos * sntp/unity/unity_internals.h: handle *INTPTR_MAX on old Solaris. H.Stenn.
2296 1.1.1.7 christos * tests/libntp/timevalops.c and timespecops.c fixed error printing. D.Tomi.
2297 1.1.1.7 christos * tests/libntp/ improvements in code and fixed error printing. Damir Tomi.
2298 1.1.1.7 christos * tests/libntp: a_md5encrypt.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
2299 1.1.1.7 christos caltontp.c, clocktime.c, humandate.c, hextolfp.c, decodenetnum.c - fixed
2300 1.1.1.7 christos formatting; first declaration, then code (C90); deleted unnecessary comments;
2301 1.1.1.7 christos changed from sprintf to snprintf; fixed order of includes. Tomasz Flendrich
2302 1.1.1.7 christos * tests/libntp/lfpfunc.c remove unnecessary include, remove old comments,
2303 1.1.1.7 christos fix formatting, cleanup. Tomasz Flendrich
2304 1.1.1.7 christos * tests/libntp/lfptostr.c remove unnecessary include, add consts, fix formatting.
2305 1.1.1.7 christos Tomasz Flendrich
2306 1.1.1.7 christos * tests/libntp/statestr.c remove empty functions, remove unnecessary include,
2307 1.1.1.7 christos fix formatting. Tomasz Flendrich
2308 1.1.1.7 christos * tests/libntp/modetoa.c fixed formatting. Tomasz Flendrich
2309 1.1.1.7 christos * tests/libntp/msyslog.c fixed formatting. Tomasz Flendrich
2310 1.1.1.7 christos * tests/libntp/numtoa.c deleted unnecessary empty functions, fixed formatting.
2311 1.1.1.7 christos Tomasz Flendrich
2312 1.1.1.7 christos * tests/libntp/numtohost.c added const, fixed formatting. Tomasz Flendrich
2313 1.1.1.7 christos * tests/libntp/refnumtoa.c fixed formatting. Tomasz Flendrich
2314 1.1.1.7 christos * tests/libntp/ssl_init.c fixed formatting. Tomasz Flendrich
2315 1.1.1.7 christos * tests/libntp/tvtots.c fixed a bug, fixed formatting. Tomasz Flendrich
2316 1.1.1.7 christos * tests/libntp/uglydate.c removed an unnecessary include. Tomasz Flendrich
2317 1.1.1.7 christos * tests/libntp/vi64ops.c removed an unnecessary comment, fixed formatting.
2318 1.1.1.7 christos * tests/libntp/ymd3yd.c removed an empty function and an unnecessary include,
2319 1.1.1.7 christos fixed formatting. Tomasz Flendrich
2320 1.1.1.7 christos * tests/libntp/timespecops.c fixed formatting, fixed the order of includes,
2321 1.1.1.7 christos removed unnecessary comments, cleanup. Tomasz Flendrich
2322 1.1.1.7 christos * tests/libntp/timevalops.c fixed the order of includes, deleted unnecessary
2323 1.1.1.7 christos comments, cleanup. Tomasz Flendrich
2324 1.1.1.7 christos * tests/libntp/sockaddrtest.h making it agree to NTP's conventions of formatting.
2325 1.1.1.7 christos Tomasz Flendrich
2326 1.1.1.7 christos * tests/libntp/lfptest.h cleanup. Tomasz Flendrich
2327 1.1.1.7 christos * tests/libntp/test-libntp.c fix formatting. Tomasz Flendrich
2328 1.1.1.7 christos * sntp/tests/crypto.c is now using proper Unity's assertions, fixed formatting.
2329 1.1.1.7 christos Tomasz Flendrich
2330 1.1.1.7 christos * sntp/tests/kodDatabase.c added consts, deleted empty function,
2331 1.1.1.7 christos fixed formatting. Tomasz Flendrich
2332 1.1.1.7 christos * sntp/tests/kodFile.c cleanup, fixed formatting. Tomasz Flendrich
2333 1.1.1.7 christos * sntp/tests/packetHandling.c is now using proper Unity's assertions,
2334 1.1.1.7 christos fixed formatting, deleted unused variable. Tomasz Flendrich
2335 1.1.1.7 christos * sntp/tests/keyFile.c is now using proper Unity's assertions, fixed formatting.
2336 1.1.1.7 christos Tomasz Flendrich
2337 1.1.1.7 christos * sntp/tests/packetProcessing.c changed from sprintf to snprintf,
2338 1.1.1.7 christos fixed formatting. Tomasz Flendrich
2339 1.1.1.7 christos * sntp/tests/utilities.c is now using proper Unity's assertions, changed
2340 1.1.1.7 christos the order of includes, fixed formatting, removed unnecessary comments.
2341 1.1.1.7 christos Tomasz Flendrich
2342 1.1.1.7 christos * sntp/tests/sntptest.h fixed formatting. Tomasz Flendrich
2343 1.1.1.7 christos * sntp/tests/fileHandlingTest.h.in fixed a possible buffer overflow problem,
2344 1.1.1.7 christos made one function do its job, deleted unnecessary prints, fixed formatting.
2345 1.1.1.7 christos Tomasz Flendrich
2346 1.1.1.7 christos * sntp/unity/Makefile.am added a missing header. Tomasz Flendrich
2347 1.1.1.7 christos * sntp/unity/unity_config.h: Distribute it. Harlan Stenn.
2348 1.1.1.7 christos * sntp/libevent/evconfig-private.h: remove generated filefrom SCM. H.Stenn.
2349 1.1.1.7 christos * sntp/unity/Makefile.am: fix some broken paths. Harlan Stenn.
2350 1.1.1.7 christos * sntp/unity/unity.c: Clean up a printf(). Harlan Stenn.
2351 1.1.1.7 christos * Phase 1 deprecation of google test in tests/libntp/. Harlan Stenn.
2352 1.1.1.7 christos * Don't build sntp/libevent/sample/. Harlan Stenn.
2353 1.1.1.7 christos * tests/libntp/test_caltontp needs -lpthread. Harlan Stenn.
2354 1.1.1.7 christos * br-flock: --enable-local-libevent. Harlan Stenn.
2355 1.1.1.7 christos * Wrote tests for ntpd/ntp_prio_q.c. Tomasz Flendrich
2356 1.1.1.7 christos * scripts/lib/NTP/Util.pm: stratum output is version-dependent. Harlan Stenn.
2357 1.1.1.7 christos * Get rid of the NTP_ prefix on our assertion macros. Harlan Stenn.
2358 1.1.1.7 christos * Code cleanup. Harlan Stenn.
2359 1.1.1.7 christos * libntp/icom.c: Typo fix. Harlan Stenn.
2360 1.1.1.7 christos * util/ntptime.c: initialization nit. Harlan Stenn.
2361 1.1.1.7 christos * ntpd/ntp_peer.c:newpeer(): added a DEBUG_REQUIRE(srcadr). Harlan Stenn.
2362 1.1.1.7 christos * Add std_unity_tests to various Makefile.am files. Harlan Stenn.
2363 1.1.1.7 christos * ntpd/ntp_restrict.c: added a few assertions, created tests for this file.
2364 1.1.1.7 christos Tomasz Flendrich
2365 1.1.1.7 christos * Changed progname to be const in many files - now it's consistent. Tomasz
2366 1.1.1.7 christos Flendrich
2367 1.1.1.7 christos * Typo fix for GCC warning suppression. Harlan Stenn.
2368 1.1.1.7 christos * Added tests/ntpd/ntp_scanner.c test. Damir Tomi.
2369 1.1.1.7 christos * Added declarations to all Unity tests, and did minor fixes to them.
2370 1.1.1.7 christos Reduced the number of warnings by half. Damir Tomi.
2371 1.1.1.7 christos * Updated generate_test_runner.rb and updated the sntp/unity/auto directory
2372 1.1.1.7 christos with the latest Unity updates from Mark. Damir Tomi.
2373 1.1.1.7 christos * Retire google test - phase I. Harlan Stenn.
2374 1.1.1.7 christos * Unity test cleanup: move declaration of 'initializing'. Harlan Stenn.
2375 1.1.1.7 christos * Update the NEWS file. Harlan Stenn.
2376 1.1.1.7 christos * Autoconf cleanup. Harlan Stenn.
2377 1.1.1.7 christos * Unit test dist cleanup. Harlan Stenn.
2378 1.1.1.7 christos * Cleanup various test Makefile.am files. Harlan Stenn.
2379 1.1.1.7 christos * Pthread autoconf macro cleanup. Harlan Stenn.
2380 1.1.1.7 christos * Fix progname definition in unity runner scripts. Harlan Stenn.
2381 1.1.1.7 christos * Clean trailing whitespace in tests/ntpd/Makefile.am. Harlan Stenn.
2382 1.1.1.7 christos * Update the patch for bug 2817. Harlan Stenn.
2383 1.1.1.7 christos * More updates for bug 2817. Harlan Stenn.
2384 1.1.1.7 christos * Fix bugs in tests/ntpd/ntp_prio_q.c. Harlan Stenn.
2385 1.1.1.7 christos * gcc on older HPUX may need +allowdups. Harlan Stenn.
2386 1.1.1.7 christos * Adding missing MCAST protection. Harlan Stenn.
2387 1.1.1.7 christos * Disable certain test programs on certain platforms. Harlan Stenn.
2388 1.1.1.7 christos * Implement --enable-problem-tests (on by default). Harlan Stenn.
2389 1.1.1.7 christos * build system tweaks. Harlan Stenn.
2390 1.1.1.7 christos
2391 1.1.1.7 christos ---
2392 1.1.1.6 christos NTP 4.2.8p3 (Harlan Stenn <stenn (a] ntp.org>, 2015/06/29)
2393 1.1.1.6 christos
2394 1.1.1.6 christos Focus: 1 Security fix. Bug fixes and enhancements. Leap-second improvements.
2395 1.1.1.6 christos
2396 1.1.1.6 christos Severity: MEDIUM
2397 1.1.1.6 christos
2398 1.1.1.6 christos Security Fix:
2399 1.1.1.6 christos
2400 1.1.1.6 christos * [Sec 2853] Crafted remote config packet can crash some versions of
2401 1.1.1.6 christos ntpd. Aleksis Kauppinen, Juergen Perlinger, Harlan Stenn.
2402 1.1.1.6 christos
2403 1.1.1.6 christos Under specific circumstances an attacker can send a crafted packet to
2404 1.1.1.6 christos cause a vulnerable ntpd instance to crash. This requires each of the
2405 1.1.1.6 christos following to be true:
2406 1.1.1.6 christos
2407 1.1.1.6 christos 1) ntpd set up to allow remote configuration (not allowed by default), and
2408 1.1.1.6 christos 2) knowledge of the configuration password, and
2409 1.1.1.6 christos 3) access to a computer entrusted to perform remote configuration.
2410 1.1.1.6 christos
2411 1.1.1.6 christos This vulnerability is considered low-risk.
2412 1.1.1.6 christos
2413 1.1.1.6 christos New features in this release:
2414 1.1.1.6 christos
2415 1.1.1.6 christos Optional (disabled by default) support to have ntpd provide smeared
2416 1.1.1.6 christos leap second time. A specially built and configured ntpd will only
2417 1.1.1.6 christos offer smeared time in response to client packets. These response
2418 1.1.1.6 christos packets will also contain a "refid" of 254.a.b.c, where the 24 bits
2419 1.1.1.6 christos of a, b, and c encode the amount of smear in a 2:22 integer:fraction
2420 1.1.1.6 christos format. See README.leapsmear and http://bugs.ntp.org/2855 for more
2421 1.1.1.6 christos information.
2422 1.1.1.6 christos
2423 1.1.1.6 christos *IF YOU CHOOSE TO CONFIGURE NTPD TO PROVIDE LEAP SMEAR TIME*
2424 1.1.1.6 christos *BE SURE YOU DO NOT OFFER THAT TIME ON PUBLIC TIMESERVERS.*
2425 1.1.1.6 christos
2426 1.1.1.6 christos We've imported the Unity test framework, and have begun converting
2427 1.1.1.6 christos the existing google-test items to this new framework. If you want
2428 1.1.1.6 christos to write new tests or change old ones, you'll need to have ruby
2429 1.1.1.6 christos installed. You don't need ruby to run the test suite.
2430 1.1.1.6 christos
2431 1.1.1.6 christos Bug Fixes and Improvements:
2432 1.1.1.6 christos
2433 1.1.1.6 christos * CID 739725: Fix a rare resource leak in libevent/listener.c.
2434 1.1.1.6 christos * CID 1295478: Quiet a pedantic potential error from the fix for Bug 2776.
2435 1.1.1.6 christos * CID 1296235: Fix refclock_jjy.c and correcting type of the driver40-ja.html
2436 1.1.1.6 christos * CID 1269537: Clean up a line of dead code in getShmTime().
2437 1.1.1.6 christos * [Bug 1060] Buffer overruns in libparse/clk_rawdcf.c. Helge Oldach.
2438 1.1.1.6 christos * [Bug 2590] autogen-5.18.5.
2439 1.1.1.6 christos * [Bug 2612] restrict: Warn when 'monitor' can't be disabled because
2440 1.1.1.6 christos of 'limited'.
2441 1.1.1.6 christos * [Bug 2650] fix includefile processing.
2442 1.1.1.6 christos * [Bug 2745] ntpd -x steps clock on leap second
2443 1.1.1.6 christos Fixed an initial-value problem that caused misbehaviour in absence of
2444 1.1.1.6 christos any leapsecond information.
2445 1.1.1.6 christos Do leap second stepping only of the step adjustment is beyond the
2446 1.1.1.6 christos proper jump distance limit and step correction is allowed at all.
2447 1.1.1.6 christos * [Bug 2750] build for Win64
2448 1.1.1.6 christos Building for 32bit of loopback ppsapi needs def file
2449 1.1.1.6 christos * [Bug 2776] Improve ntpq's 'help keytype'.
2450 1.1.1.6 christos * [Bug 2778] Implement "apeers" ntpq command to include associd.
2451 1.1.1.6 christos * [Bug 2782] Refactor refclock_shm.c, add memory barrier protection.
2452 1.1.1.6 christos * [Bug 2792] If the IFF_RUNNING interface flag is supported then an
2453 1.1.1.6 christos interface is ignored as long as this flag is not set since the
2454 1.1.1.6 christos interface is not usable (e.g., no link).
2455 1.1.1.6 christos * [Bug 2794] Clean up kernel clock status reports.
2456 1.1.1.6 christos * [Bug 2800] refclock_true.c true_debug() can't open debug log because
2457 1.1.1.6 christos of incompatible open/fdopen parameters.
2458 1.1.1.6 christos * [Bug 2804] install-local-data assumes GNU 'find' semantics.
2459 1.1.1.6 christos * [Bug 2805] ntpd fails to join multicast group.
2460 1.1.1.6 christos * [Bug 2806] refclock_jjy.c supports the Telephone JJY.
2461 1.1.1.6 christos * [Bug 2808] GPSD_JSON driver enhancements, step 1.
2462 1.1.1.6 christos Fix crash during cleanup if GPS device not present and char device.
2463 1.1.1.6 christos Increase internal token buffer to parse all JSON data, even SKY.
2464 1.1.1.6 christos Defer logging of errors during driver init until the first unit is
2465 1.1.1.6 christos started, so the syslog is not cluttered when the driver is not used.
2466 1.1.1.6 christos Various improvements, see http://bugs.ntp.org/2808 for details.
2467 1.1.1.6 christos Changed libjsmn to a more recent version.
2468 1.1.1.6 christos * [Bug 2810] refclock_shm.c memory barrier code needs tweaks for QNX.
2469 1.1.1.6 christos * [Bug 2813] HP-UX needs -D__STDC_VERSION__=199901L and limits.h.
2470 1.1.1.6 christos * [Bug 2815] net-snmp before v5.4 has circular library dependencies.
2471 1.1.1.6 christos * [Bug 2821] Add a missing NTP_PRINTF and a missing const.
2472 1.1.1.6 christos * [Bug 2822] New leap column in sntp broke NTP::Util.pm.
2473 1.1.1.6 christos * [Bug 2824] Convert update-leap to perl. (also see 2769)
2474 1.1.1.6 christos * [Bug 2825] Quiet file installation in html/ .
2475 1.1.1.6 christos * [Bug 2830] ntpd doesn't always transfer the correct TAI offset via autokey
2476 1.1.1.6 christos NTPD transfers the current TAI (instead of an announcement) now.
2477 1.1.1.6 christos This might still needed improvement.
2478 1.1.1.6 christos Update autokey data ASAP when 'sys_tai' changes.
2479 1.1.1.6 christos Fix unit test that was broken by changes for autokey update.
2480 1.1.1.6 christos Avoid potential signature length issue and use DPRINTF where possible
2481 1.1.1.6 christos in ntp_crypto.c.
2482 1.1.1.6 christos * [Bug 2832] refclock_jjy.c supports the TDC-300.
2483 1.1.1.6 christos * [Bug 2834] Correct a broken html tag in html/refclock.html
2484 1.1.1.6 christos * [Bug 2836] DFC77 patches from Frank Kardel to make decoding more
2485 1.1.1.6 christos robust, and require 2 consecutive timestamps to be consistent.
2486 1.1.1.6 christos * [Bug 2837] Allow a configurable DSCP value.
2487 1.1.1.6 christos * [Bug 2837] add test for DSCP to ntpd/complete.conf.in
2488 1.1.1.6 christos * [Bug 2842] Glitch in ntp.conf.def documentation stanza.
2489 1.1.1.6 christos * [Bug 2842] Bug in mdoc2man.
2490 1.1.1.6 christos * [Bug 2843] make check fails on 4.3.36
2491 1.1.1.6 christos Fixed compiler warnings about numeric range overflow
2492 1.1.1.6 christos (The original topic was fixed in a byplay to bug#2830)
2493 1.1.1.6 christos * [Bug 2845] Harden memory allocation in ntpd.
2494 1.1.1.6 christos * [Bug 2852] 'make check' can't find unity.h. Hal Murray.
2495 1.1.1.6 christos * [Bug 2854] Missing brace in libntp/strdup.c. Masanari Iida.
2496 1.1.1.6 christos * [Bug 2855] Parser fix for conditional leap smear code. Harlan Stenn.
2497 1.1.1.6 christos * [Bug 2855] Report leap smear in the REFID. Harlan Stenn.
2498 1.1.1.6 christos * [Bug 2855] Implement conditional leap smear code. Martin Burnicki.
2499 1.1.1.6 christos * [Bug 2856] ntpd should wait() on terminated child processes. Paul Green.
2500 1.1.1.6 christos * [Bug 2857] Stratus VOS does not support SIGIO. Paul Green.
2501 1.1.1.6 christos * [Bug 2859] Improve raw DCF77 robustness deconding. Frank Kardel.
2502 1.1.1.6 christos * [Bug 2860] ntpq ifstats sanity check is too stringent. Frank Kardel.
2503 1.1.1.6 christos * html/drivers/driver22.html: typo fix. Harlan Stenn.
2504 1.1.1.6 christos * refidsmear test cleanup. Tomasz Flendrich.
2505 1.1.1.6 christos * refidsmear function support and tests. Harlan Stenn.
2506 1.1.1.6 christos * sntp/tests/Makefile.am: remove g_nameresolution.cpp as it tested
2507 1.1.1.6 christos something that was only in the 4.2.6 sntp. Harlan Stenn.
2508 1.1.1.6 christos * Modified tests/bug-2803/Makefile.am so it builds Unity framework tests.
2509 1.1.1.6 christos Damir Tomi
2510 1.1.1.6 christos * Modified tests/libtnp/Makefile.am so it builds Unity framework tests.
2511 1.1.1.6 christos Damir Tomi
2512 1.1.1.6 christos * Modified sntp/tests/Makefile.am so it builds Unity framework tests.
2513 1.1.1.6 christos Damir Tomi
2514 1.1.1.6 christos * tests/sandbox/smeartest.c: Harlan Stenn, Damir Tomic, Juergen Perlinger.
2515 1.1.1.6 christos * Converted from gtest to Unity: tests/bug-2803/. Damir Tomi
2516 1.1.1.6 christos * Converted from gtest to Unity: tests/libntp/ a_md5encrypt, atoint.c,
2517 1.1.1.6 christos atouint.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c,
2518 1.1.1.6 christos calyearstart.c, clocktime.c, hextoint.c, lfpfunc.c, modetoa.c,
2519 1.1.1.6 christos numtoa.c, numtohost.c, refnumtoa.c, ssl_init.c, statestr.c,
2520 1.1.1.6 christos timespecops.c, timevalops.c, uglydate.c, vi64ops.c, ymd2yd.c.
2521 1.1.1.6 christos Damir Tomi
2522 1.1.1.6 christos * Converted from gtest to Unity: sntp/tests/ kodDatabase.c, kodFile.c,
2523 1.1.1.6 christos networking.c, keyFile.c, utilities.cpp, sntptest.h,
2524 1.1.1.6 christos fileHandlingTest.h. Damir Tomi
2525 1.1.1.6 christos * Initial support for experimental leap smear code. Harlan Stenn.
2526 1.1.1.6 christos * Fixes to sntp/tests/fileHandlingTest.h.in. Harlan Stenn.
2527 1.1.1.6 christos * Report select() debug messages at debug level 3 now.
2528 1.1.1.6 christos * sntp/scripts/genLocInfo: treat raspbian as debian.
2529 1.1.1.6 christos * Unity test framework fixes.
2530 1.1.1.6 christos ** Requires ruby for changes to tests.
2531 1.1.1.6 christos * Initial support for PACKAGE_VERSION tests.
2532 1.1.1.6 christos * sntp/libpkgver belongs in EXTRA_DIST, not DIST_SUBDIRS.
2533 1.1.1.6 christos * tests/bug-2803/Makefile.am must distribute bug-2803.h.
2534 1.1.1.6 christos * Add an assert to the ntpq ifstats code.
2535 1.1.1.6 christos * Clean up the RLIMIT_STACK code.
2536 1.1.1.6 christos * Improve the ntpq documentation around the controlkey keyid.
2537 1.1.1.6 christos * ntpq.c cleanup.
2538 1.1.1.6 christos * Windows port build cleanup.
2539 1.1.1.6 christos
2540 1.1.1.6 christos ---
2541 1.1.1.6 christos NTP 4.2.8p2 (Harlan Stenn <stenn (a] ntp.org>, 2015/04/07)
2542 1.1.1.5 christos
2543 1.1.1.5 christos Focus: Security and Bug fixes, enhancements.
2544 1.1.1.5 christos
2545 1.1.1.5 christos Severity: MEDIUM
2546 1.1.1.5 christos
2547 1.1.1.5 christos In addition to bug fixes and enhancements, this release fixes the
2548 1.1.1.5 christos following medium-severity vulnerabilities involving private key
2549 1.1.1.5 christos authentication:
2550 1.1.1.5 christos
2551 1.1.1.5 christos * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
2552 1.1.1.5 christos
2553 1.1.1.5 christos References: Sec 2779 / CVE-2015-1798 / VU#374268
2554 1.1.1.5 christos Affects: All NTP4 releases starting with ntp-4.2.5p99 up to but not
2555 1.1.1.5 christos including ntp-4.2.8p2 where the installation uses symmetric keys
2556 1.1.1.5 christos to authenticate remote associations.
2557 1.1.1.5 christos CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
2558 1.1.1.5 christos Date Resolved: Stable (4.2.8p2) 07 Apr 2015
2559 1.1.1.5 christos Summary: When ntpd is configured to use a symmetric key to authenticate
2560 1.1.1.5 christos a remote NTP server/peer, it checks if the NTP message
2561 1.1.1.5 christos authentication code (MAC) in received packets is valid, but not if
2562 1.1.1.5 christos there actually is any MAC included. Packets without a MAC are
2563 1.1.1.5 christos accepted as if they had a valid MAC. This allows a MITM attacker to
2564 1.1.1.5 christos send false packets that are accepted by the client/peer without
2565 1.1.1.5 christos having to know the symmetric key. The attacker needs to know the
2566 1.1.1.5 christos transmit timestamp of the client to match it in the forged reply
2567 1.1.1.5 christos and the false reply needs to reach the client before the genuine
2568 1.1.1.5 christos reply from the server. The attacker doesn't necessarily need to be
2569 1.1.1.5 christos relaying the packets between the client and the server.
2570 1.1.1.5 christos
2571 1.1.1.5 christos Authentication using autokey doesn't have this problem as there is
2572 1.1.1.5 christos a check that requires the key ID to be larger than NTP_MAXKEY,
2573 1.1.1.5 christos which fails for packets without a MAC.
2574 1.1.1.5 christos Mitigation:
2575 1.1.1.5 christos Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
2576 1.1.1.5 christos or the NTP Public Services Project Download Page
2577 1.1.1.5 christos Configure ntpd with enough time sources and monitor it properly.
2578 1.1.1.5 christos Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
2579 1.1.1.5 christos
2580 1.1.1.5 christos * [Sec 2781] Authentication doesn't protect symmetric associations against
2581 1.1.1.5 christos DoS attacks.
2582 1.1.1.5 christos
2583 1.1.1.5 christos References: Sec 2781 / CVE-2015-1799 / VU#374268
2584 1.1.1.5 christos Affects: All NTP releases starting with at least xntp3.3wy up to but
2585 1.1.1.5 christos not including ntp-4.2.8p2 where the installation uses symmetric
2586 1.1.1.5 christos key authentication.
2587 1.1.1.5 christos CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4
2588 1.1.1.5 christos Note: the CVSS base Score for this issue could be 4.3 or lower, and
2589 1.1.1.5 christos it could be higher than 5.4.
2590 1.1.1.5 christos Date Resolved: Stable (4.2.8p2) 07 Apr 2015
2591 1.1.1.5 christos Summary: An attacker knowing that NTP hosts A and B are peering with
2592 1.1.1.5 christos each other (symmetric association) can send a packet to host A
2593 1.1.1.5 christos with source address of B which will set the NTP state variables
2594 1.1.1.5 christos on A to the values sent by the attacker. Host A will then send
2595 1.1.1.5 christos on its next poll to B a packet with originate timestamp that
2596 1.1.1.5 christos doesn't match the transmit timestamp of B and the packet will
2597 1.1.1.5 christos be dropped. If the attacker does this periodically for both
2598 1.1.1.5 christos hosts, they won't be able to synchronize to each other. This is
2599 1.1.1.5 christos a known denial-of-service attack, described at
2600 1.1.1.5 christos https://www.eecis.udel.edu/~mills/onwire.html .
2601 1.1.1.5 christos
2602 1.1.1.5 christos According to the document the NTP authentication is supposed to
2603 1.1.1.5 christos protect symmetric associations against this attack, but that
2604 1.1.1.5 christos doesn't seem to be the case. The state variables are updated even
2605 1.1.1.5 christos when authentication fails and the peers are sending packets with
2606 1.1.1.5 christos originate timestamps that don't match the transmit timestamps on
2607 1.1.1.5 christos the receiving side.
2608 1.1.1.5 christos
2609 1.1.1.5 christos This seems to be a very old problem, dating back to at least
2610 1.1.1.5 christos xntp3.3wy. It's also in the NTPv3 (RFC 1305) and NTPv4 (RFC 5905)
2611 1.1.1.5 christos specifications, so other NTP implementations with support for
2612 1.1.1.5 christos symmetric associations and authentication may be vulnerable too.
2613 1.1.1.5 christos An update to the NTP RFC to correct this error is in-process.
2614 1.1.1.5 christos Mitigation:
2615 1.1.1.5 christos Upgrade to 4.2.8p2, or later, from the NTP Project Download Page
2616 1.1.1.5 christos or the NTP Public Services Project Download Page
2617 1.1.1.5 christos Note that for users of autokey, this specific style of MITM attack
2618 1.1.1.5 christos is simply a long-known potential problem.
2619 1.1.1.5 christos Configure ntpd with appropriate time sources and monitor ntpd.
2620 1.1.1.5 christos Alert your staff if problems are detected.
2621 1.1.1.5 christos Credit: This issue was discovered by Miroslav Lichvar, of Red Hat.
2622 1.1.1.5 christos
2623 1.1.1.5 christos * New script: update-leap
2624 1.1.1.5 christos The update-leap script will verify and if necessary, update the
2625 1.1.1.5 christos leap-second definition file.
2626 1.1.1.5 christos It requires the following commands in order to work:
2627 1.1.1.5 christos
2628 1.1.1.5 christos wget logger tr sed shasum
2629 1.1.1.5 christos
2630 1.1.1.5 christos Some may choose to run this from cron. It needs more portability testing.
2631 1.1.1.5 christos
2632 1.1.1.5 christos Bug Fixes and Improvements:
2633 1.1.1.5 christos
2634 1.1.1.5 christos * [Bug 1787] DCF77's formerly "antenna" bit is "call bit" since 2003.
2635 1.1.1.5 christos * [Bug 1960] setsockopt IPV6_MULTICAST_IF: Invalid argument.
2636 1.1.1.5 christos * [Bug 2346] "graceful termination" signals do not do peer cleanup.
2637 1.1.1.5 christos * [Bug 2728] See if C99-style structure initialization works.
2638 1.1.1.5 christos * [Bug 2747] Upgrade libevent to 2.1.5-beta.
2639 1.1.1.5 christos * [Bug 2749] ntp/lib/NTP/Util.pm needs update for ntpq -w, IPv6, .POOL. .
2640 1.1.1.5 christos * [Bug 2751] jitter.h has stale copies of l_fp macros.
2641 1.1.1.5 christos * [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM.
2642 1.1.1.5 christos * [Bug 2757] Quiet compiler warnings.
2643 1.1.1.5 christos * [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq.
2644 1.1.1.5 christos * [Bug 2763] Allow different thresholds for forward and backward steps.
2645 1.1.1.5 christos * [Bug 2766] ntp-keygen output files should not be world-readable.
2646 1.1.1.5 christos * [Bug 2767] ntp-keygen -M should symlink to ntp.keys.
2647 1.1.1.5 christos * [Bug 2771] nonvolatile value is documented in wrong units.
2648 1.1.1.5 christos * [Bug 2773] Early leap announcement from Palisade/Thunderbolt
2649 1.1.1.5 christos * [Bug 2774] Unreasonably verbose printout - leap pending/warning
2650 1.1.1.5 christos * [Bug 2775] ntp-keygen.c fails to compile under Windows.
2651 1.1.1.5 christos * [Bug 2777] Fixed loops and decoding of Meinberg GPS satellite info.
2652 1.1.1.5 christos Removed non-ASCII characters from some copyright comments.
2653 1.1.1.5 christos Removed trailing whitespace.
2654 1.1.1.5 christos Updated definitions for Meinberg clocks from current Meinberg header files.
2655 1.1.1.5 christos Now use C99 fixed-width types and avoid non-ASCII characters in comments.
2656 1.1.1.5 christos Account for updated definitions pulled from Meinberg header files.
2657 1.1.1.5 christos Updated comments on Meinberg GPS receivers which are not only called GPS16x.
2658 1.1.1.5 christos Replaced some constant numbers by defines from ntp_calendar.h
2659 1.1.1.5 christos Modified creation of parse-specific variables for Meinberg devices
2660 1.1.1.5 christos in gps16x_message().
2661 1.1.1.5 christos Reworked mk_utcinfo() to avoid printing of ambiguous leap second dates.
2662 1.1.1.5 christos Modified mbg_tm_str() which now expexts an additional parameter controlling
2663 1.1.1.5 christos if the time status shall be printed.
2664 1.1.1.5 christos * [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto.
2665 1.1.1.5 christos * [Sec 2781] Authentication doesn't protect symmetric associations against
2666 1.1.1.5 christos DoS attacks.
2667 1.1.1.5 christos * [Bug 2783] Quiet autoconf warnings about missing AC_LANG_SOURCE.
2668 1.1.1.5 christos * [Bug 2789] Quiet compiler warnings from libevent.
2669 1.1.1.5 christos * [Bug 2790] If ntpd sets the Windows MM timer highest resolution
2670 1.1.1.5 christos pause briefly before measuring system clock precision to yield
2671 1.1.1.5 christos correct results.
2672 1.1.1.5 christos * Comment from Juergen Perlinger in ntp_calendar.c to make the code clearer.
2673 1.1.1.5 christos * Use predefined function types for parse driver functions
2674 1.1.1.5 christos used to set up function pointers.
2675 1.1.1.5 christos Account for changed prototype of parse_inp_fnc_t functions.
2676 1.1.1.5 christos Cast parse conversion results to appropriate types to avoid
2677 1.1.1.5 christos compiler warnings.
2678 1.1.1.5 christos Let ioctl() for Windows accept a (void *) to avoid compiler warnings
2679 1.1.1.5 christos when called with pointers to different types.
2680 1.1.1.5 christos
2681 1.1.1.5 christos ---
2682 1.1.1.5 christos NTP 4.2.8p1 (Harlan Stenn <stenn (a] ntp.org>, 2015/02/04)
2683 1.1.1.5 christos
2684 1.1.1.5 christos Focus: Security and Bug fixes, enhancements.
2685 1.1.1.5 christos
2686 1.1.1.5 christos Severity: HIGH
2687 1.1.1.5 christos
2688 1.1.1.5 christos In addition to bug fixes and enhancements, this release fixes the
2689 1.1.1.5 christos following high-severity vulnerabilities:
2690 1.1.1.5 christos
2691 1.1.1.5 christos * vallen is not validated in several places in ntp_crypto.c, leading
2692 1.1.1.5 christos to a potential information leak or possibly a crash
2693 1.1.1.5 christos
2694 1.1.1.5 christos References: Sec 2671 / CVE-2014-9297 / VU#852879
2695 1.1.1.5 christos Affects: All NTP4 releases before 4.2.8p1 that are running autokey.
2696 1.1.1.5 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
2697 1.1.1.5 christos Date Resolved: Stable (4.2.8p1) 04 Feb 2015
2698 1.1.1.5 christos Summary: The vallen packet value is not validated in several code
2699 1.1.1.5 christos paths in ntp_crypto.c which can lead to information leakage
2700 1.1.1.5 christos or perhaps a crash of the ntpd process.
2701 1.1.1.5 christos Mitigation - any of:
2702 1.1.1.5 christos Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
2703 1.1.1.5 christos or the NTP Public Services Project Download Page.
2704 1.1.1.5 christos Disable Autokey Authentication by removing, or commenting out,
2705 1.1.1.5 christos all configuration directives beginning with the "crypto"
2706 1.1.1.5 christos keyword in your ntp.conf file.
2707 1.1.1.5 christos Credit: This vulnerability was discovered by Stephen Roettger of the
2708 1.1.1.5 christos Google Security Team, with additional cases found by Sebastian
2709 1.1.1.5 christos Krahmer of the SUSE Security Team and Harlan Stenn of Network
2710 1.1.1.5 christos Time Foundation.
2711 1.1.1.5 christos
2712 1.1.1.5 christos * ::1 can be spoofed on some OSes, so ACLs based on IPv6 ::1 addresses
2713 1.1.1.5 christos can be bypassed.
2714 1.1.1.5 christos
2715 1.1.1.5 christos References: Sec 2672 / CVE-2014-9298 / VU#852879
2716 1.1.1.5 christos Affects: All NTP4 releases before 4.2.8p1, under at least some
2717 1.1.1.5 christos versions of MacOS and Linux. *BSD has not been seen to be vulnerable.
2718 1.1.1.5 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:C) Base Score: 9
2719 1.1.1.5 christos Date Resolved: Stable (4.2.8p1) 04 Feb 2014
2720 1.1.1.5 christos Summary: While available kernels will prevent 127.0.0.1 addresses
2721 1.1.1.5 christos from "appearing" on non-localhost IPv4 interfaces, some kernels
2722 1.1.1.5 christos do not offer the same protection for ::1 source addresses on
2723 1.1.1.5 christos IPv6 interfaces. Since NTP's access control is based on source
2724 1.1.1.5 christos address and localhost addresses generally have no restrictions,
2725 1.1.1.5 christos an attacker can send malicious control and configuration packets
2726 1.1.1.5 christos by spoofing ::1 addresses from the outside. Note Well: This is
2727 1.1.1.5 christos not really a bug in NTP, it's a problem with some OSes. If you
2728 1.1.1.5 christos have one of these OSes where ::1 can be spoofed, ALL ::1 -based
2729 1.1.1.5 christos ACL restrictions on any application can be bypassed!
2730 1.1.1.5 christos Mitigation:
2731 1.1.1.5 christos Upgrade to 4.2.8p1, or later, from the NTP Project Download Page
2732 1.1.1.5 christos or the NTP Public Services Project Download Page
2733 1.1.1.5 christos Install firewall rules to block packets claiming to come from
2734 1.1.1.5 christos ::1 from inappropriate network interfaces.
2735 1.1.1.5 christos Credit: This vulnerability was discovered by Stephen Roettger of
2736 1.1.1.5 christos the Google Security Team.
2737 1.1.1.5 christos
2738 1.1.1.5 christos Additionally, over 30 bugfixes and improvements were made to the codebase.
2739 1.1.1.5 christos See the ChangeLog for more information.
2740 1.1.1.5 christos
2741 1.1.1.5 christos ---
2742 1.1.1.4 christos NTP 4.2.8 (Harlan Stenn <stenn (a] ntp.org>, 2014/12/18)
2743 1.1.1.4 christos
2744 1.1.1.4 christos Focus: Security and Bug fixes, enhancements.
2745 1.1.1.4 christos
2746 1.1.1.4 christos Severity: HIGH
2747 1.1.1.4 christos
2748 1.1.1.4 christos In addition to bug fixes and enhancements, this release fixes the
2749 1.1.1.4 christos following high-severity vulnerabilities:
2750 1.1.1.4 christos
2751 1.1.1.5 christos ************************** vv NOTE WELL vv *****************************
2752 1.1.1.5 christos
2753 1.1.1.5 christos The vulnerabilities listed below can be significantly mitigated by
2754 1.1.1.5 christos following the BCP of putting
2755 1.1.1.5 christos
2756 1.1.1.5 christos restrict default ... noquery
2757 1.1.1.5 christos
2758 1.1.1.5 christos in the ntp.conf file. With the exception of:
2759 1.1.1.5 christos
2760 1.1.1.5 christos receive(): missing return on error
2761 1.1.1.5 christos References: Sec 2670 / CVE-2014-9296 / VU#852879
2762 1.1.1.5 christos
2763 1.1.1.5 christos below (which is a limited-risk vulnerability), none of the recent
2764 1.1.1.5 christos vulnerabilities listed below can be exploited if the source IP is
2765 1.1.1.5 christos restricted from sending a 'query'-class packet by your ntp.conf file.
2766 1.1.1.5 christos
2767 1.1.1.5 christos ************************** ^^ NOTE WELL ^^ *****************************
2768 1.1.1.5 christos
2769 1.1.1.4 christos * Weak default key in config_auth().
2770 1.1.1.4 christos
2771 1.1.1.4 christos References: [Sec 2665] / CVE-2014-9293 / VU#852879
2772 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
2773 1.1.1.4 christos Vulnerable Versions: all releases prior to 4.2.7p11
2774 1.1.1.4 christos Date Resolved: 28 Jan 2010
2775 1.1.1.4 christos
2776 1.1.1.4 christos Summary: If no 'auth' key is set in the configuration file, ntpd
2777 1.1.1.4 christos would generate a random key on the fly. There were two
2778 1.1.1.4 christos problems with this: 1) the generated key was 31 bits in size,
2779 1.1.1.4 christos and 2) it used the (now weak) ntp_random() function, which was
2780 1.1.1.4 christos seeded with a 32-bit value and could only provide 32 bits of
2781 1.1.1.4 christos entropy. This was sufficient back in the late 1990s when the
2782 1.1.1.4 christos code was written. Not today.
2783 1.1.1.4 christos
2784 1.1.1.5 christos Mitigation - any of:
2785 1.1.1.5 christos - Upgrade to 4.2.7p11 or later.
2786 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
2787 1.1.1.4 christos
2788 1.1.1.4 christos Credit: This vulnerability was noticed in ntp-4.2.6 by Neel Mehta
2789 1.1.1.4 christos of the Google Security Team.
2790 1.1.1.4 christos
2791 1.1.1.4 christos * Non-cryptographic random number generator with weak seed used by
2792 1.1.1.4 christos ntp-keygen to generate symmetric keys.
2793 1.1.1.4 christos
2794 1.1.1.4 christos References: [Sec 2666] / CVE-2014-9294 / VU#852879
2795 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3
2796 1.1.1.4 christos Vulnerable Versions: All NTP4 releases before 4.2.7p230
2797 1.1.1.4 christos Date Resolved: Dev (4.2.7p230) 01 Nov 2011
2798 1.1.1.4 christos
2799 1.1.1.4 christos Summary: Prior to ntp-4.2.7p230 ntp-keygen used a weak seed to
2800 1.1.1.4 christos prepare a random number generator that was of good quality back
2801 1.1.1.4 christos in the late 1990s. The random numbers produced was then used to
2802 1.1.1.4 christos generate symmetric keys. In ntp-4.2.8 we use a current-technology
2803 1.1.1.4 christos cryptographic random number generator, either RAND_bytes from
2804 1.1.1.4 christos OpenSSL, or arc4random().
2805 1.1.1.4 christos
2806 1.1.1.5 christos Mitigation - any of:
2807 1.1.1.5 christos - Upgrade to 4.2.7p230 or later.
2808 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
2809 1.1.1.4 christos
2810 1.1.1.4 christos Credit: This vulnerability was discovered in ntp-4.2.6 by
2811 1.1.1.4 christos Stephen Roettger of the Google Security Team.
2812 1.1.1.4 christos
2813 1.1.1.4 christos * Buffer overflow in crypto_recv()
2814 1.1.1.4 christos
2815 1.1.1.4 christos References: Sec 2667 / CVE-2014-9295 / VU#852879
2816 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
2817 1.1.1.4 christos Versions: All releases before 4.2.8
2818 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
2819 1.1.1.4 christos
2820 1.1.1.4 christos Summary: When Autokey Authentication is enabled (i.e. the ntp.conf
2821 1.1.1.4 christos file contains a 'crypto pw ...' directive) a remote attacker
2822 1.1.1.4 christos can send a carefully crafted packet that can overflow a stack
2823 1.1.1.4 christos buffer and potentially allow malicious code to be executed
2824 1.1.1.4 christos with the privilege level of the ntpd process.
2825 1.1.1.4 christos
2826 1.1.1.5 christos Mitigation - any of:
2827 1.1.1.5 christos - Upgrade to 4.2.8, or later, or
2828 1.1.1.5 christos - Disable Autokey Authentication by removing, or commenting out,
2829 1.1.1.5 christos all configuration directives beginning with the crypto keyword
2830 1.1.1.5 christos in your ntp.conf file.
2831 1.1.1.4 christos
2832 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
2833 1.1.1.4 christos Google Security Team.
2834 1.1.1.4 christos
2835 1.1.1.4 christos * Buffer overflow in ctl_putdata()
2836 1.1.1.4 christos
2837 1.1.1.4 christos References: Sec 2668 / CVE-2014-9295 / VU#852879
2838 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
2839 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
2840 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
2841 1.1.1.4 christos
2842 1.1.1.4 christos Summary: A remote attacker can send a carefully crafted packet that
2843 1.1.1.4 christos can overflow a stack buffer and potentially allow malicious
2844 1.1.1.4 christos code to be executed with the privilege level of the ntpd process.
2845 1.1.1.4 christos
2846 1.1.1.5 christos Mitigation - any of:
2847 1.1.1.5 christos - Upgrade to 4.2.8, or later.
2848 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
2849 1.1.1.4 christos
2850 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
2851 1.1.1.4 christos Google Security Team.
2852 1.1.1.4 christos
2853 1.1.1.4 christos * Buffer overflow in configure()
2854 1.1.1.4 christos
2855 1.1.1.4 christos References: Sec 2669 / CVE-2014-9295 / VU#852879
2856 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5
2857 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
2858 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
2859 1.1.1.4 christos
2860 1.1.1.4 christos Summary: A remote attacker can send a carefully crafted packet that
2861 1.1.1.4 christos can overflow a stack buffer and potentially allow malicious
2862 1.1.1.4 christos code to be executed with the privilege level of the ntpd process.
2863 1.1.1.4 christos
2864 1.1.1.5 christos Mitigation - any of:
2865 1.1.1.5 christos - Upgrade to 4.2.8, or later.
2866 1.1.1.5 christos - Follow BCP and put 'restrict ... noquery' in your ntp.conf file.
2867 1.1.1.4 christos
2868 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
2869 1.1.1.4 christos Google Security Team.
2870 1.1.1.4 christos
2871 1.1.1.4 christos * receive(): missing return on error
2872 1.1.1.4 christos
2873 1.1.1.4 christos References: Sec 2670 / CVE-2014-9296 / VU#852879
2874 1.1.1.4 christos CVSS: (AV:N/AC:L/Au:N/C:N/I:N/A:P) Base Score: 5.0
2875 1.1.1.4 christos Versions: All NTP4 releases before 4.2.8
2876 1.1.1.4 christos Date Resolved: Stable (4.2.8) 18 Dec 2014
2877 1.1.1.4 christos
2878 1.1.1.4 christos Summary: Code in ntp_proto.c:receive() was missing a 'return;' in
2879 1.1.1.4 christos the code path where an error was detected, which meant
2880 1.1.1.4 christos processing did not stop when a specific rare error occurred.
2881 1.1.1.4 christos We haven't found a way for this bug to affect system integrity.
2882 1.1.1.4 christos If there is no way to affect system integrity the base CVSS
2883 1.1.1.4 christos score for this bug is 0. If there is one avenue through which
2884 1.1.1.4 christos system integrity can be partially affected, the base score
2885 1.1.1.4 christos becomes a 5. If system integrity can be partially affected
2886 1.1.1.4 christos via all three integrity metrics, the CVSS base score become 7.5.
2887 1.1.1.4 christos
2888 1.1.1.5 christos Mitigation - any of:
2889 1.1.1.5 christos - Upgrade to 4.2.8, or later,
2890 1.1.1.5 christos - Remove or comment out all configuration directives
2891 1.1.1.5 christos beginning with the crypto keyword in your ntp.conf file.
2892 1.1.1.4 christos
2893 1.1.1.4 christos Credit: This vulnerability was discovered by Stephen Roettger of the
2894 1.1.1.4 christos Google Security Team.
2895 1.1.1.4 christos
2896 1.1.1.4 christos See http://support.ntp.org/security for more information.
2897 1.1.1.4 christos
2898 1.1.1.4 christos New features / changes in this release:
2899 1.1.1.3 christos
2900 1.1.1.3 christos Important Changes
2901 1.1.1.3 christos
2902 1.1.1.3 christos * Internal NTP Era counters
2903 1.1.1.3 christos
2904 1.1.1.4 christos The internal counters that track the "era" (range of years) we are in
2905 1.1.1.3 christos rolls over every 136 years'. The current "era" started at the stroke of
2906 1.1.1.3 christos midnight on 1 Jan 1900, and ends just before the stroke of midnight on
2907 1.1.1.3 christos 1 Jan 2036.
2908 1.1.1.3 christos In the past, we have used the "midpoint" of the range to decide which
2909 1.1.1.3 christos era we were in. Given the longevity of some products, it became clear
2910 1.1.1.3 christos that it would be more functional to "look back" less, and "look forward"
2911 1.1.1.3 christos more. We now compile a timestamp into the ntpd executable and when we
2912 1.1.1.3 christos get a timestamp we us the "built-on" to tell us what era we are in.
2913 1.1.1.3 christos This check "looks back" 10 years, and "looks forward" 126 years.
2914 1.1.1.3 christos
2915 1.1.1.3 christos * ntpdc responses disabled by default
2916 1.1.1.3 christos
2917 1.1.1.3 christos Dave Hart writes:
2918 1.1.1.3 christos
2919 1.1.1.3 christos For a long time, ntpq and its mostly text-based mode 6 (control)
2920 1.1.1.3 christos protocol have been preferred over ntpdc and its mode 7 (private
2921 1.1.1.3 christos request) protocol for runtime queries and configuration. There has
2922 1.1.1.3 christos been a goal of deprecating ntpdc, previously held back by numerous
2923 1.1.1.3 christos capabilities exposed by ntpdc with no ntpq equivalent. I have been
2924 1.1.1.3 christos adding commands to ntpq to cover these cases, and I believe I've
2925 1.1.1.3 christos covered them all, though I've not compared command-by-command
2926 1.1.1.3 christos recently.
2927 1.1.1.3 christos
2928 1.1.1.3 christos As I've said previously, the binary mode 7 protocol involves a lot of
2929 1.1.1.3 christos hand-rolled structure layout and byte-swapping code in both ntpd and
2930 1.1.1.3 christos ntpdc which is hard to get right. As ntpd grows and changes, the
2931 1.1.1.3 christos changes are difficult to expose via ntpdc while maintaining forward
2932 1.1.1.3 christos and backward compatibility between ntpdc and ntpd. In contrast,
2933 1.1.1.3 christos ntpq's text-based, label=value approach involves more code reuse and
2934 1.1.1.3 christos allows compatible changes without extra work in most cases.
2935 1.1.1.3 christos
2936 1.1.1.3 christos Mode 7 has always been defined as vendor/implementation-specific while
2937 1.1.1.4 christos mode 6 is described in RFC 1305 and intended to be open to interoperate
2938 1.1.1.3 christos with other implementations. There is an early draft of an updated
2939 1.1.1.3 christos mode 6 description that likely will join the other NTPv4 RFCs
2940 1.1.1.3 christos eventually. (http://tools.ietf.org/html/draft-odonoghue-ntpv4-control-01)
2941 1.1.1.3 christos
2942 1.1.1.3 christos For these reasons, ntpd 4.2.7p230 by default disables processing of
2943 1.1.1.3 christos ntpdc queries, reducing ntpd's attack surface and functionally
2944 1.1.1.3 christos deprecating ntpdc. If you are in the habit of using ntpdc for certain
2945 1.1.1.3 christos operations, please try the ntpq equivalent. If there's no equivalent,
2946 1.1.1.3 christos please open a bug report at http://bugs.ntp.org./
2947 1.1.1.3 christos
2948 1.1.1.4 christos In addition to the above, over 1100 issues have been resolved between
2949 1.1.1.4 christos the 4.2.6 branch and 4.2.8. The ChangeLog file in the distribution
2950 1.1.1.4 christos lists these.
2951 1.1.1.4 christos
2952 1.1.1.2 kardel ---
2953 1.1.1.2 kardel NTP 4.2.6p5 (Harlan Stenn <stenn (a] ntp.org>, 2011/12/24)
2954 1.1.1.2 kardel
2955 1.1.1.2 kardel Focus: Bug fixes
2956 1.1.1.2 kardel
2957 1.1.1.2 kardel Severity: Medium
2958 1.1.1.2 kardel
2959 1.1.1.2 kardel This is a recommended upgrade.
2960 1.1.1.2 kardel
2961 1.1.1.2 kardel This release updates sys_rootdisp and sys_jitter calculations to match the
2962 1.1.1.2 kardel RFC specification, fixes a potential IPv6 address matching error for the
2963 1.1.1.2 kardel "nic" and "interface" configuration directives, suppresses the creation of
2964 1.1.1.2 kardel extraneous ephemeral associations for certain broadcastclient and
2965 1.1.1.2 kardel multicastclient configurations, cleans up some ntpq display issues, and
2966 1.1.1.2 kardel includes improvements to orphan mode, minor bugs fixes and code clean-ups.
2967 1.1.1.2 kardel
2968 1.1.1.2 kardel New features / changes in this release:
2969 1.1.1.2 kardel
2970 1.1.1.2 kardel ntpd
2971 1.1.1.2 kardel
2972 1.1.1.2 kardel * Updated "nic" and "interface" IPv6 address handling to prevent
2973 1.1.1.2 kardel mismatches with localhost [::1] and wildcard [::] which resulted from
2974 1.1.1.2 kardel using the address/prefix format (e.g. fe80::/64)
2975 1.1.1.2 kardel * Fix orphan mode stratum incorrectly counting to infinity
2976 1.1.1.2 kardel * Orphan parent selection metric updated to includes missing ntohl()
2977 1.1.1.2 kardel * Non-printable stratum 16 refid no longer sent to ntp
2978 1.1.1.2 kardel * Duplicate ephemeral associations suppressed for broadcastclient and
2979 1.1.1.2 kardel multicastclient without broadcastdelay
2980 1.1.1.2 kardel * Exclude undetermined sys_refid from use in loopback TEST12
2981 1.1.1.2 kardel * Exclude MODE_SERVER responses from KoD rate limiting
2982 1.1.1.2 kardel * Include root delay in clock_update() sys_rootdisp calculations
2983 1.1.1.2 kardel * get_systime() updated to exclude sys_residual offset (which only
2984 1.1.1.2 kardel affected bits "below" sys_tick, the precision threshold)
2985 1.1.1.2 kardel * sys.peer jitter weighting corrected in sys_jitter calculation
2986 1.1.1.2 kardel
2987 1.1.1.2 kardel ntpq
2988 1.1.1.2 kardel
2989 1.1.1.2 kardel * -n option extended to include the billboard "server" column
2990 1.1.1.2 kardel * IPv6 addresses in the local column truncated to prevent overruns
2991 1.1.1.2 kardel
2992 1.1.1.2 kardel ---
2993 1.1.1.2 kardel NTP 4.2.6p4 (Harlan Stenn <stenn (a] ntp.org>, 2011/09/22)
2994 1.1.1.2 kardel
2995 1.1.1.2 kardel Focus: Bug fixes and portability improvements
2996 1.1.1.2 kardel
2997 1.1.1.2 kardel Severity: Medium
2998 1.1.1.2 kardel
2999 1.1.1.2 kardel This is a recommended upgrade.
3000 1.1.1.2 kardel
3001 1.1.1.2 kardel This release includes build infrastructure updates, code
3002 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
3003 1.1.1.2 kardel ref-clock issues, and documentation revisions.
3004 1.1.1.2 kardel
3005 1.1.1.2 kardel Portability improvements affect AIX, HP-UX, Linux, OS X and 64-bit time_t.
3006 1.1.1.2 kardel
3007 1.1.1.2 kardel New features / changes in this release:
3008 1.1.1.2 kardel
3009 1.1.1.2 kardel Build system
3010 1.1.1.2 kardel
3011 1.1.1.2 kardel * Fix checking for struct rtattr
3012 1.1.1.2 kardel * Update config.guess and config.sub for AIX
3013 1.1.1.2 kardel * Upgrade required version of autogen and libopts for building
3014 1.1.1.2 kardel from our source code repository
3015 1.1.1.2 kardel
3016 1.1.1.2 kardel ntpd
3017 1.1.1.2 kardel
3018 1.1.1.2 kardel * Back-ported several fixes for Coverity warnings from ntp-dev
3019 1.1.1.2 kardel * Fix a rare boundary condition in UNLINK_EXPR_SLIST()
3020 1.1.1.2 kardel * Allow "logconfig =allall" configuration directive
3021 1.1.1.2 kardel * Bind tentative IPv6 addresses on Linux
3022 1.1.1.2 kardel * Correct WWVB/Spectracom driver to timestamp CR instead of LF
3023 1.1.1.2 kardel * Improved tally bit handling to prevent incorrect ntpq peer status reports
3024 1.1.1.2 kardel * Exclude the Undisciplined Local Clock and ACTS drivers from the initial
3025 1.1.1.2 kardel candidate list unless they are designated a "prefer peer"
3026 1.1.1.2 kardel * Prevent the consideration of Undisciplined Local Clock or ACTS drivers for
3027 1.1.1.2 kardel selection during the 'tos orphanwait' period
3028 1.1.1.2 kardel * Prefer an Orphan Mode Parent over the Undisciplined Local Clock or ACTS
3029 1.1.1.2 kardel drivers
3030 1.1.1.2 kardel * Improved support of the Parse Refclock trusttime flag in Meinberg mode
3031 1.1.1.2 kardel * Back-port utility routines from ntp-dev: mprintf(), emalloc_zero()
3032 1.1.1.2 kardel * Added the NTPD_TICKADJ_PPM environment variable for specifying baseline
3033 1.1.1.2 kardel clock slew on Microsoft Windows
3034 1.1.1.2 kardel * Code cleanup in libntpq
3035 1.1.1.2 kardel
3036 1.1.1.2 kardel ntpdc
3037 1.1.1.2 kardel
3038 1.1.1.2 kardel * Fix timerstats reporting
3039 1.1.1.2 kardel
3040 1.1.1.2 kardel ntpdate
3041 1.1.1.2 kardel
3042 1.1.1.2 kardel * Reduce time required to set clock
3043 1.1.1.2 kardel * Allow a timeout greater than 2 seconds
3044 1.1.1.2 kardel
3045 1.1.1.2 kardel sntp
3046 1.1.1.2 kardel
3047 1.1.1.2 kardel * Backward incompatible command-line option change:
3048 1.1.1.2 kardel -l/--filelog changed -l/--logfile (to be consistent with ntpd)
3049 1.1.1.2 kardel
3050 1.1.1.2 kardel Documentation
3051 1.1.1.2 kardel
3052 1.1.1.2 kardel * Update html2man. Fix some tags in the .html files
3053 1.1.1.2 kardel * Distribute ntp-wait.html
3054 1.1.1.2 kardel
3055 1.1.1.2 kardel ---
3056 1.1.1.2 kardel NTP 4.2.6p3 (Harlan Stenn <stenn (a] ntp.org>, 2011/01/03)
3057 1.1.1.2 kardel
3058 1.1.1.2 kardel Focus: Bug fixes and portability improvements
3059 1.1.1.2 kardel
3060 1.1.1.2 kardel Severity: Medium
3061 1.1.1.2 kardel
3062 1.1.1.2 kardel This is a recommended upgrade.
3063 1.1.1.2 kardel
3064 1.1.1.2 kardel This release includes build infrastructure updates, code
3065 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
3066 1.1.1.2 kardel ref-clock issues, and documentation revisions.
3067 1.1.1.2 kardel
3068 1.1.1.2 kardel Portability improvements in this release affect AIX, Atari FreeMiNT,
3069 1.1.1.2 kardel FreeBSD4, Linux and Microsoft Windows.
3070 1.1.1.2 kardel
3071 1.1.1.2 kardel New features / changes in this release:
3072 1.1.1.2 kardel
3073 1.1.1.2 kardel Build system
3074 1.1.1.2 kardel * Use lsb_release to get information about Linux distributions.
3075 1.1.1.2 kardel * 'test' is in /usr/bin (instead of /bin) on some systems.
3076 1.1.1.2 kardel * Basic sanity checks for the ChangeLog file.
3077 1.1.1.2 kardel * Source certain build files with ./filename for systems without . in PATH.
3078 1.1.1.2 kardel * IRIX portability fix.
3079 1.1.1.2 kardel * Use a single copy of the "libopts" code.
3080 1.1.1.2 kardel * autogen/libopts upgrade.
3081 1.1.1.2 kardel * configure.ac m4 quoting cleanup.
3082 1.1.1.2 kardel
3083 1.1.1.2 kardel ntpd
3084 1.1.1.2 kardel * Do not bind to IN6_IFF_ANYCAST addresses.
3085 1.1.1.2 kardel * Log the reason for exiting under Windows.
3086 1.1.1.2 kardel * Multicast fixes for Windows.
3087 1.1.1.2 kardel * Interpolation fixes for Windows.
3088 1.1.1.2 kardel * IPv4 and IPv6 Multicast fixes.
3089 1.1.1.2 kardel * Manycast solicitation fixes and general repairs.
3090 1.1.1.2 kardel * JJY refclock cleanup.
3091 1.1.1.2 kardel * NMEA refclock improvements.
3092 1.1.1.2 kardel * Oncore debug message cleanup.
3093 1.1.1.2 kardel * Palisade refclock now builds under Linux.
3094 1.1.1.2 kardel * Give RAWDCF more baud rates.
3095 1.1.1.2 kardel * Support Truetime Satellite clocks under Windows.
3096 1.1.1.2 kardel * Support Arbiter 1093C Satellite clocks under Windows.
3097 1.1.1.2 kardel * Make sure that the "filegen" configuration command defaults to "enable".
3098 1.1.1.2 kardel * Range-check the status codes (plus other cleanup) in the RIPE-NCC driver.
3099 1.1.1.2 kardel * Prohibit 'includefile' directive in remote configuration command.
3100 1.1.1.2 kardel * Fix 'nic' interface bindings.
3101 1.1.1.2 kardel * Fix the way we link with openssl if openssl is installed in the base
3102 1.1.1.2 kardel system.
3103 1.1.1.2 kardel
3104 1.1.1.2 kardel ntp-keygen
3105 1.1.1.2 kardel * Fix -V coredump.
3106 1.1.1.2 kardel * OpenSSL version display cleanup.
3107 1.1.1.2 kardel
3108 1.1.1.2 kardel ntpdc
3109 1.1.1.2 kardel * Many counters should be treated as unsigned.
3110 1.1.1.2 kardel
3111 1.1.1.2 kardel ntpdate
3112 1.1.1.2 kardel * Do not ignore replies with equal receive and transmit timestamps.
3113 1.1.1.2 kardel
3114 1.1.1.2 kardel ntpq
3115 1.1.1.2 kardel * libntpq warning cleanup.
3116 1.1.1.2 kardel
3117 1.1.1.2 kardel ntpsnmpd
3118 1.1.1.2 kardel * Correct SNMP type for "precision" and "resolution".
3119 1.1.1.2 kardel * Update the MIB from the draft version to RFC-5907.
3120 1.1.1.2 kardel
3121 1.1.1.2 kardel sntp
3122 1.1.1.2 kardel * Display timezone offset when showing time for sntp in the local
3123 1.1.1.2 kardel timezone.
3124 1.1.1.2 kardel * Pay proper attention to RATE KoD packets.
3125 1.1.1.2 kardel * Fix a miscalculation of the offset.
3126 1.1.1.2 kardel * Properly parse empty lines in the key file.
3127 1.1.1.2 kardel * Logging cleanup.
3128 1.1.1.2 kardel * Use tv_usec correctly in set_time().
3129 1.1.1.2 kardel * Documentation cleanup.
3130 1.1.1.2 kardel
3131 1.1.1.2 kardel ---
3132 1.1.1.2 kardel NTP 4.2.6p2 (Harlan Stenn <stenn (a] ntp.org>, 2010/07/08)
3133 1.1.1.2 kardel
3134 1.1.1.2 kardel Focus: Bug fixes and portability improvements
3135 1.1.1.2 kardel
3136 1.1.1.2 kardel Severity: Medium
3137 1.1.1.2 kardel
3138 1.1.1.2 kardel This is a recommended upgrade.
3139 1.1.1.2 kardel
3140 1.1.1.2 kardel This release includes build infrastructure updates, code
3141 1.1.1.2 kardel clean-ups, minor bug fixes, fixes for a number of minor
3142 1.1.1.2 kardel ref-clock issues, improved KOD handling, OpenSSL related
3143 1.1.1.2 kardel updates and documentation revisions.
3144 1.1.1.2 kardel
3145 1.1.1.2 kardel Portability improvements in this release affect Irix, Linux,
3146 1.1.1.2 kardel Mac OS, Microsoft Windows, OpenBSD and QNX6
3147 1.1.1.2 kardel
3148 1.1.1.2 kardel New features / changes in this release:
3149 1.1.1.2 kardel
3150 1.1.1.2 kardel ntpd
3151 1.1.1.2 kardel * Range syntax for the trustedkey configuration directive
3152 1.1.1.2 kardel * Unified IPv4 and IPv6 restrict lists
3153 1.1.1.2 kardel
3154 1.1.1.2 kardel ntpdate
3155 1.1.1.2 kardel * Rate limiting and KOD handling
3156 1.1.1.2 kardel
3157 1.1.1.2 kardel ntpsnmpd
3158 1.1.1.2 kardel * default connection to net-snmpd via a unix-domain socket
3159 1.1.1.2 kardel * command-line 'socket name' option
3160 1.1.1.2 kardel
3161 1.1.1.2 kardel ntpq / ntpdc
3162 1.1.1.2 kardel * support for the "passwd ..." syntax
3163 1.1.1.2 kardel * key-type specific password prompts
3164 1.1.1.2 kardel
3165 1.1.1.2 kardel sntp
3166 1.1.1.2 kardel * MD5 authentication of an ntpd
3167 1.1.1.2 kardel * Broadcast and crypto
3168 1.1.1.2 kardel * OpenSSL support
3169 1.1.1.2 kardel
3170 1.1.1.2 kardel ---
3171 1.1.1.2 kardel NTP 4.2.6p1 (Harlan Stenn <stenn (a] ntp.org>, 2010/04/09)
3172 1.1.1.2 kardel
3173 1.1.1.2 kardel Focus: Bug fixes, portability fixes, and documentation improvements
3174 1.1.1.2 kardel
3175 1.1.1.2 kardel Severity: Medium
3176 1.1.1.2 kardel
3177 1.1.1.2 kardel This is a recommended upgrade.
3178 1.1.1.2 kardel
3179 1.1.1.2 kardel ---
3180 1.1.1.2 kardel NTP 4.2.6 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
3181 1.1.1.2 kardel
3182 1.1.1.2 kardel Focus: enhancements and bug fixes.
3183 1.1.1.2 kardel
3184 1.1.1.2 kardel ---
3185 1.1 kardel NTP 4.2.4p8 (Harlan Stenn <stenn (a] ntp.org>, 2009/12/08)
3186 1.1 kardel
3187 1.1 kardel Focus: Security Fixes
3188 1.1 kardel
3189 1.1 kardel Severity: HIGH
3190 1.1 kardel
3191 1.1 kardel This release fixes the following high-severity vulnerability:
3192 1.1 kardel
3193 1.1 kardel * [Sec 1331] DoS with mode 7 packets - CVE-2009-3563.
3194 1.1 kardel
3195 1.1 kardel See http://support.ntp.org/security for more information.
3196 1.1 kardel
3197 1.1 kardel NTP mode 7 (MODE_PRIVATE) is used by the ntpdc query and control utility.
3198 1.1 kardel In contrast, ntpq uses NTP mode 6 (MODE_CONTROL), while routine NTP time
3199 1.1 kardel transfers use modes 1 through 5. Upon receipt of an incorrect mode 7
3200 1.1 kardel request or a mode 7 error response from an address which is not listed
3201 1.1 kardel in a "restrict ... noquery" or "restrict ... ignore" statement, ntpd will
3202 1.1 kardel reply with a mode 7 error response (and log a message). In this case:
3203 1.1 kardel
3204 1.1 kardel * If an attacker spoofs the source address of ntpd host A in a
3205 1.1 kardel mode 7 response packet sent to ntpd host B, both A and B will
3206 1.1 kardel continuously send each other error responses, for as long as
3207 1.1 kardel those packets get through.
3208 1.1 kardel
3209 1.1 kardel * If an attacker spoofs an address of ntpd host A in a mode 7
3210 1.1 kardel response packet sent to ntpd host A, A will respond to itself
3211 1.1 kardel endlessly, consuming CPU and logging excessively.
3212 1.1 kardel
3213 1.1 kardel Credit for finding this vulnerability goes to Robin Park and Dmitri
3214 1.1 kardel Vinokurov of Alcatel-Lucent.
3215 1.1 kardel
3216 1.1 kardel THIS IS A STRONGLY RECOMMENDED UPGRADE.
3217 1.1 kardel
3218 1.1 kardel ---
3219 1.1 kardel ntpd now syncs to refclocks right away.
3220 1.1 kardel
3221 1.1.1.2 kardel Backward-Incompatible changes:
3222 1.1 kardel
3223 1.1 kardel ntpd no longer accepts '-v name' or '-V name' to define internal variables.
3224 1.1 kardel Use '--var name' or '--dvar name' instead. (Bug 817)
3225 1.1 kardel
3226 1.1 kardel ---
3227 1.1 kardel NTP 4.2.4p7 (Harlan Stenn <stenn (a] ntp.org>, 2009/05/04)
3228 1.1 kardel
3229 1.1 kardel Focus: Security and Bug Fixes
3230 1.1 kardel
3231 1.1 kardel Severity: HIGH
3232 1.1 kardel
3233 1.1 kardel This release fixes the following high-severity vulnerability:
3234 1.1 kardel
3235 1.1 kardel * [Sec 1151] Remote exploit if autokey is enabled. CVE-2009-1252
3236 1.1 kardel
3237 1.1 kardel See http://support.ntp.org/security for more information.
3238 1.1 kardel
3239 1.1 kardel If autokey is enabled (if ntp.conf contains a "crypto pw whatever"
3240 1.1 kardel line) then a carefully crafted packet sent to the machine will cause
3241 1.1 kardel a buffer overflow and possible execution of injected code, running
3242 1.1 kardel with the privileges of the ntpd process (often root).
3243 1.1 kardel
3244 1.1 kardel Credit for finding this vulnerability goes to Chris Ries of CMU.
3245 1.1 kardel
3246 1.1 kardel This release fixes the following low-severity vulnerabilities:
3247 1.1 kardel
3248 1.1 kardel * [Sec 1144] limited (two byte) buffer overflow in ntpq. CVE-2009-0159
3249 1.1 kardel Credit for finding this vulnerability goes to Geoff Keating of Apple.
3250 1.1 kardel
3251 1.1 kardel * [Sec 1149] use SO_EXCLUSIVEADDRUSE on Windows
3252 1.1 kardel Credit for finding this issue goes to Dave Hart.
3253 1.1 kardel
3254 1.1 kardel This release fixes a number of bugs and adds some improvements:
3255 1.1 kardel
3256 1.1 kardel * Improved logging
3257 1.1 kardel * Fix many compiler warnings
3258 1.1 kardel * Many fixes and improvements for Windows
3259 1.1 kardel * Adds support for AIX 6.1
3260 1.1 kardel * Resolves some issues under MacOS X and Solaris
3261 1.1 kardel
3262 1.1 kardel THIS IS A STRONGLY RECOMMENDED UPGRADE.
3263 1.1 kardel
3264 1.1 kardel ---
3265 1.1 kardel NTP 4.2.4p6 (Harlan Stenn <stenn (a] ntp.org>, 2009/01/07)
3266 1.1 kardel
3267 1.1 kardel Focus: Security Fix
3268 1.1 kardel
3269 1.1 kardel Severity: Low
3270 1.1 kardel
3271 1.1 kardel This release fixes oCERT.org's CVE-2009-0021, a vulnerability affecting
3272 1.1 kardel the OpenSSL library relating to the incorrect checking of the return
3273 1.1 kardel value of EVP_VerifyFinal function.
3274 1.1 kardel
3275 1.1 kardel Credit for finding this issue goes to the Google Security Team for
3276 1.1 kardel finding the original issue with OpenSSL, and to ocert.org for finding
3277 1.1 kardel the problem in NTP and telling us about it.
3278 1.1 kardel
3279 1.1 kardel This is a recommended upgrade.
3280 1.1 kardel ---
3281 1.1 kardel NTP 4.2.4p5 (Harlan Stenn <stenn (a] ntp.org>, 2008/08/17)
3282 1.1 kardel
3283 1.1 kardel Focus: Minor Bugfixes
3284 1.1 kardel
3285 1.1 kardel This release fixes a number of Windows-specific ntpd bugs and
3286 1.1 kardel platform-independent ntpdate bugs. A logging bugfix has been applied
3287 1.1 kardel to the ONCORE driver.
3288 1.1 kardel
3289 1.1 kardel The "dynamic" keyword and is now obsolete and deferred binding to local
3290 1.1 kardel interfaces is the new default. The minimum time restriction for the
3291 1.1 kardel interface update interval has been dropped.
3292 1.1 kardel
3293 1.1 kardel A number of minor build system and documentation fixes are included.
3294 1.1 kardel
3295 1.1 kardel This is a recommended upgrade for Windows.
3296 1.1 kardel
3297 1.1 kardel ---
3298 1.1 kardel NTP 4.2.4p4 (Harlan Stenn <stenn (a] ntp.org>, 2007/09/10)
3299 1.1 kardel
3300 1.1 kardel Focus: Minor Bugfixes
3301 1.1 kardel
3302 1.1 kardel This release updates certain copyright information, fixes several display
3303 1.1 kardel bugs in ntpdc, avoids SIGIO interrupting malloc(), cleans up file descriptor
3304 1.1 kardel shutdown in the parse refclock driver, removes some lint from the code,
3305 1.1 kardel stops accessing certain buffers immediately after they were freed, fixes
3306 1.1 kardel a problem with non-command-line specification of -6, and allows the loopback
3307 1.1 kardel interface to share addresses with other interfaces.
3308 1.1 kardel
3309 1.1 kardel ---
3310 1.1 kardel NTP 4.2.4p3 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/29)
3311 1.1 kardel
3312 1.1 kardel Focus: Minor Bugfixes
3313 1.1 kardel
3314 1.1 kardel This release fixes a bug in Windows that made it difficult to
3315 1.1 kardel terminate ntpd under windows.
3316 1.1 kardel This is a recommended upgrade for Windows.
3317 1.1 kardel
3318 1.1 kardel ---
3319 1.1 kardel NTP 4.2.4p2 (Harlan Stenn <stenn (a] ntp.org>, 2007/06/19)
3320 1.1 kardel
3321 1.1 kardel Focus: Minor Bugfixes
3322 1.1 kardel
3323 1.1 kardel This release fixes a multicast mode authentication problem,
3324 1.1 kardel an error in NTP packet handling on Windows that could lead to
3325 1.1 kardel ntpd crashing, and several other minor bugs. Handling of
3326 1.1 kardel multicast interfaces and logging configuration were improved.
3327 1.1 kardel The required versions of autogen and libopts were incremented.
3328 1.1 kardel This is a recommended upgrade for Windows and multicast users.
3329 1.1 kardel
3330 1.1 kardel ---
3331 1.1 kardel NTP 4.2.4 (Harlan Stenn <stenn (a] ntp.org>, 2006/12/31)
3332 1.1 kardel
3333 1.1 kardel Focus: enhancements and bug fixes.
3334 1.1 kardel
3335 1.1 kardel Dynamic interface rescanning was added to simplify the use of ntpd in
3336 1.1 kardel conjunction with DHCP. GNU AutoGen is used for its command-line options
3337 1.1 kardel processing. Separate PPS devices are supported for PARSE refclocks, MD5
3338 1.1 kardel signatures are now provided for the release files. Drivers have been
3339 1.1 kardel added for some new ref-clocks and have been removed for some older
3340 1.1 kardel ref-clocks. This release also includes other improvements, documentation
3341 1.1 kardel and bug fixes.
3342 1.1 kardel
3343 1.1 kardel K&R C is no longer supported as of NTP-4.2.4. We are now aiming for ANSI
3344 1.1 kardel C support.
3345 1.1 kardel
3346 1.1 kardel ---
3347 1.1 kardel NTP 4.2.0 (Harlan Stenn <stenn (a] ntp.org>, 2003/10/15)
3348 1.1 kardel
3349 1.1 kardel Focus: enhancements and bug fixes.
3350