1052d159aSCy Schubert--- 2*2d4e511cSCy SchubertNTP 4.2.8p14 (Harlan Stenn <stenn@ntp.org>, 2020 Mar 03) 3*2d4e511cSCy Schubert 4*2d4e511cSCy SchubertFocus: Security, Bug fixes, enhancements. 5*2d4e511cSCy Schubert 6*2d4e511cSCy SchubertSeverity: MEDIUM 7*2d4e511cSCy Schubert 8*2d4e511cSCy SchubertThis release fixes three vulnerabilities: a bug that causes causes an ntpd 9*2d4e511cSCy Schubertinstance that is explicitly configured to override the default and allow 10*2d4e511cSCy Schubertntpdc (mode 7) connections to be made to a server to read some uninitialized 11*2d4e511cSCy Schubertmemory; fixes the case where an unmonitored ntpd using an unauthenticated 12*2d4e511cSCy Schubertassociation to its servers may be susceptible to a forged packet DoS attack; 13*2d4e511cSCy Schubertand fixes an attack against a client instance that uses a single 14*2d4e511cSCy Schubertunauthenticated time source. It also fixes 46 other bugs and addresses 15*2d4e511cSCy Schubert4 other issues. 16*2d4e511cSCy Schubert 17*2d4e511cSCy Schubert* [Sec 3610] process_control() should bail earlier on short packets. stenn@ 18*2d4e511cSCy Schubert - Reported by Philippe Antoine 19*2d4e511cSCy Schubert* [Sec 3596] Highly predictable timestamp attack. <stenn@ntp.org> 20*2d4e511cSCy Schubert - Reported by Miroslav Lichvar 21*2d4e511cSCy Schubert* [Sec 3592] DoS attack on client ntpd <perlinger@ntp.org> 22*2d4e511cSCy Schubert - Reported by Miroslav Lichvar 23*2d4e511cSCy Schubert* [Bug 3637] Emit the version of ntpd in saveconfig. stenn@ 24*2d4e511cSCy Schubert* [Bug 3636] NMEA: combine time/date from multiple sentences <perlinger@ntp.org> 25*2d4e511cSCy Schubert* [Bug 3635] Make leapsecond file hash check optional <perlinger@ntp.org> 26*2d4e511cSCy Schubert* [Bug 3634] Typo in discipline.html, reported by Jason Harrison. stenn@ 27*2d4e511cSCy Schubert* [Bug 3628] raw DCF decoding - improve robustness with Zeller's congruence 28*2d4e511cSCy Schubert - implement Zeller's congruence in libparse and libntp <perlinger@ntp.org> 29*2d4e511cSCy Schubert* [Bug 3627] SIGSEGV on FreeBSD-12 with stack limit and stack gap <perlinger@ntp.org> 30*2d4e511cSCy Schubert - integrated patch by Cy Schubert 31*2d4e511cSCy Schubert* [Bug 3620] memory leak in ntpq sysinfo <perlinger@ntp.org> 32*2d4e511cSCy Schubert - applied patch by Gerry Garvey 33*2d4e511cSCy Schubert* [Bug 3619] Honour drefid setting in cooked mode and sysinfo <perlinger@ntp.org> 34*2d4e511cSCy Schubert - applied patch by Gerry Garvey 35*2d4e511cSCy Schubert* [Bug 3617] Add support for ACE III and Copernicus II receivers <perlinger@ntp.org> 36*2d4e511cSCy Schubert - integrated patch by Richard Steedman 37*2d4e511cSCy Schubert* [Bug 3615] accelerate refclock startup <perlinger@ntp.org> 38*2d4e511cSCy Schubert* [Bug 3613] Propagate noselect to mobilized pool servers <stenn@ntp.org> 39*2d4e511cSCy Schubert - Reported by Martin Burnicki 40*2d4e511cSCy Schubert* [Bug 3612] Use-of-uninitialized-value in receive function <perlinger@ntp.org> 41*2d4e511cSCy Schubert - Reported by Philippe Antoine 42*2d4e511cSCy Schubert* [Bug 3611] NMEA time interpreted incorrectly <perlinger@ntp.org> 43*2d4e511cSCy Schubert - officially document new "trust date" mode bit for NMEA driver 44*2d4e511cSCy Schubert - restore the (previously undocumented) "trust date" feature lost with [bug 3577] 45*2d4e511cSCy Schubert* [Bug 3609] Fixing wrong falseticker in case of non-statistic jitter <perlinger@ntp.org> 46*2d4e511cSCy Schubert - mostly based on a patch by Michael Haardt, implementing 'fudge minjitter' 47*2d4e511cSCy Schubert* [Bug 3608] libparse fails to compile on S11.4SRU13 and later <perlinger@ntp.org> 48*2d4e511cSCy Schubert - removed ffs() and fls() prototypes as per Brian Utterback 49*2d4e511cSCy Schubert* [Bug 3604] Wrong param byte order passing into record_raw_stats() in 50*2d4e511cSCy Schubert ntp_io.c <perlinger@ntp.org> 51*2d4e511cSCy Schubert - fixed byte and paramter order as suggested by wei6410@sina.com 52*2d4e511cSCy Schubert* [Bug 3601] Tests fail to link on platforms with ntp_cv_gc_sections_runs=no <perlinger@ntp.org> 53*2d4e511cSCy Schubert* [Bug 3599] Build fails on linux-m68k due to alignment issues <perlinger@ntp.org> 54*2d4e511cSCy Schubert - added padding as suggested by John Paul Adrian Glaubitz 55*2d4e511cSCy Schubert* [Bug 3594] ntpd discards messages coming through nmead <perlinger@ntp.org> 56*2d4e511cSCy Schubert* [Bug 3593] ntpd discards silently nmea messages after the 5th string <perlinger@ntp.org> 57*2d4e511cSCy Schubert* [Bug 3590] Update refclock_oncore.c to the new GPS date API <perlinger@ntp.org> 58*2d4e511cSCy Schubert* [Bug 3585] Unity tests mix buffered and unbuffered output <perlinger@ntp.org> 59*2d4e511cSCy Schubert - stdout+stderr are set to line buffered during test setup now 60*2d4e511cSCy Schubert* [Bug 3583] synchronization error <perlinger@ntp.org> 61*2d4e511cSCy Schubert - set clock to base date if system time is before that limit 62*2d4e511cSCy Schubert* [Bug 3582] gpsdjson refclock fudgetime1 adjustment is doubled <perlinger@ntp.org> 63*2d4e511cSCy Schubert* [Bug 3580] Possible bug ntpq-subs (NULL dereference in dogetassoc) <perlinger@ntp.org> 64*2d4e511cSCy Schubert - Reported by Paulo Neves 65*2d4e511cSCy Schubert* [Bug 3577] Update refclock_zyfer.c to the new GPS date API <perlinger@ntp.org> 66*2d4e511cSCy Schubert - also updates for refclock_nmea.c and refclock_jupiter.c 67*2d4e511cSCy Schubert* [Bug 3576] New GPS date function API <perlinger@ntp.org> 68*2d4e511cSCy Schubert* [Bug 3573] nptdate: missleading error message <perlinger@ntp.org> 69*2d4e511cSCy Schubert* [Bug 3570] NMEA driver docs: talker ID not mentioned, typo <perlinger@ntp.org> 70*2d4e511cSCy Schubert* [Bug 3569] cleanup MOD_NANO/STA_NANO handling for 'ntpadjtimex()' <perlinger@ntp.org> 71*2d4e511cSCy Schubert - sidekick: service port resolution in 'ntpdate' 72*2d4e511cSCy Schubert* [Bug 3550] Reproducible build: Respect SOURCE_DATE_EPOCH <perlinger@ntp.org> 73*2d4e511cSCy Schubert - applied patch by Douglas Royds 74*2d4e511cSCy Schubert* [Bug 3542] ntpdc monlist parameters cannot be set <perlinger@ntp.org> 75*2d4e511cSCy Schubert* [Bug 3533] ntpdc peer_info ipv6 issues <perlinger@ntp.org> 76*2d4e511cSCy Schubert - applied patch by Gerry Garvey 77*2d4e511cSCy Schubert* [Bug 3531] make check: test-decodenetnum fails <perlinger@ntp.org> 78*2d4e511cSCy Schubert - try to harden 'decodenetnum()' against 'getaddrinfo()' errors 79*2d4e511cSCy Schubert - fix wrong cond-compile tests in unit tests 80*2d4e511cSCy Schubert* [Bug 3517] Reducing build noise <perlinger@ntp.org> 81*2d4e511cSCy Schubert* [Bug 3516] Require tooling from this decade <perlinger@ntp.org> 82*2d4e511cSCy Schubert - patch by Philipp Prindeville 83*2d4e511cSCy Schubert* [Bug 3515] Refactor ntpdmain() dispatcher loop and group common code <perlinger@ntp.org> 84*2d4e511cSCy Schubert - patch by Philipp Prindeville 85*2d4e511cSCy Schubert* [Bug 3511] Get rid of AC_LANG_SOURCE() warnings <perlinger@ntp.org> 86*2d4e511cSCy Schubert - patch by Philipp Prindeville 87*2d4e511cSCy Schubert* [Bug 3510] Flatten out the #ifdef nesting in ntpdmain() <perlinger@ntp.org> 88*2d4e511cSCy Schubert - partial application of patch by Philipp Prindeville 89*2d4e511cSCy Schubert* [Bug 3491] Signed values of LFP datatypes should always display a sign 90*2d4e511cSCy Schubert - applied patch by Gerry Garvey & fixed unit tests <perlinger@ntp.org> 91*2d4e511cSCy Schubert* [Bug 3490] Patch to support Trimble Resolution Receivers <perlinger@ntp.org> 92*2d4e511cSCy Schubert - applied (modified) patch by Richard Steedman 93*2d4e511cSCy Schubert* [Bug 3473] RefID of refclocks should always be text format <perlinger@ntp.org> 94*2d4e511cSCy Schubert - applied patch by Gerry Garvey (with minor formatting changes) 95*2d4e511cSCy Schubert* [Bug 3132] Building 4.2.8p8 with disabled local libopts fails <perlinger@ntp.org> 96*2d4e511cSCy Schubert - applied patch by Miroslav Lichvar 97*2d4e511cSCy Schubert* [Bug 3094] ntpd trying to listen for broadcasts on a completely ipv6 network 98*2d4e511cSCy Schubert <perlinger@ntp.org> 99*2d4e511cSCy Schubert* [Bug 2420] ntpd doesn't run and exits with retval 0 when invalid user 100*2d4e511cSCy Schubert is specified with -u <perlinger@ntp.org> 101*2d4e511cSCy Schubert - monitor daemon child startup & propagate exit codes 102*2d4e511cSCy Schubert* [Bug 1433] runtime check whether the kernel really supports capabilities 103*2d4e511cSCy Schubert - (modified) patch by Kurt Roeckx <perlinger@ntp.org> 104*2d4e511cSCy Schubert* Clean up sntp/networking.c:sendpkt() error message. <stenn@ntp.org> 105*2d4e511cSCy Schubert* Provide more detail on unrecognized config file parser tokens. <stenn@ntp.org> 106*2d4e511cSCy Schubert* Startup log improvements. <stenn@ntp.org> 107*2d4e511cSCy Schubert* Update the copyright year. 108*2d4e511cSCy Schubert 109*2d4e511cSCy Schubert--- 110052d159aSCy SchubertNTP 4.2.8p13 (Harlan Stenn <stenn@ntp.org>, 2019 Mar 07) 111052d159aSCy Schubert 112052d159aSCy SchubertFocus: Security, Bug fixes, enhancements. 113052d159aSCy Schubert 114052d159aSCy SchubertSeverity: MEDIUM 115052d159aSCy Schubert 116052d159aSCy SchubertThis release fixes a bug that allows an attacker with access to an 117052d159aSCy Schubertexplicitly trusted source to send a crafted malicious mode 6 (ntpq) 118052d159aSCy Schubertpacket that can trigger a NULL pointer dereference, crashing ntpd. 119052d159aSCy SchubertIt also provides 17 other bugfixes and 1 other improvement: 120052d159aSCy Schubert 121052d159aSCy Schubert* [Sec 3565] Crafted null dereference attack in authenticated 122052d159aSCy Schubert mode 6 packet <perlinger@ntp.org> 123052d159aSCy Schubert - reported by Magnus Stubman 124052d159aSCy Schubert* [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger@ntp.org> 125052d159aSCy Schubert - applied patch by Ian Lepore 126052d159aSCy Schubert* [Bug 3558] Crash and integer size bug <perlinger@ntp.org> 127052d159aSCy Schubert - isolate and fix linux/windows specific code issue 128052d159aSCy Schubert* [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger@ntp.org> 129052d159aSCy Schubert - provide better function for incremental string formatting 130052d159aSCy Schubert* [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger@ntp.org> 131052d159aSCy Schubert - applied patch by Gerry Garvey 132052d159aSCy Schubert* [Bug 3554] config revoke stores incorrect value <perlinger@ntp.org> 133052d159aSCy Schubert - original finding by Gerry Garvey, additional cleanup needed 134052d159aSCy Schubert* [Bug 3549] Spurious initgroups() error message <perlinger@ntp.org> 135052d159aSCy Schubert - patch by Christous Zoulas 136052d159aSCy Schubert* [Bug 3548] Signature not verified on windows system <perlinger@ntp.org> 137052d159aSCy Schubert - finding by Chen Jiabin, plus another one by me 138052d159aSCy Schubert* [Bug 3541] patch to fix STA_NANO struct timex units <perlinger@ntp.org> 139052d159aSCy Schubert - applied patch by Maciej Szmigiero 140052d159aSCy Schubert* [Bug 3540] Cannot set minsane to 0 anymore <perlinger@ntp.org> 141052d159aSCy Schubert - applied patch by Andre Charbonneau 142052d159aSCy Schubert* [Bug 3539] work_fork build fails when droproot is not supported <perlinger@ntp.org> 143052d159aSCy Schubert - applied patch by Baruch Siach 144052d159aSCy Schubert* [Bug 3538] Build fails for no-MMU targets <perlinger@ntp.org> 145052d159aSCy Schubert - applied patch by Baruch Siach 146052d159aSCy Schubert* [Bug 3535] libparse won't handle GPS week rollover <perlinger@ntp.org> 147052d159aSCy Schubert - refactored handling of GPS era based on 'tos basedate' for 148052d159aSCy Schubert parse (TSIP) and JUPITER clocks 149052d159aSCy Schubert* [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger@ntp.org> 150052d159aSCy Schubert - patch by Daniel J. Luke; this does not fix a potential linker 151052d159aSCy Schubert regression issue on MacOS. 152052d159aSCy Schubert* [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet 153052d159aSCy Schubert anomaly <perlinger@ntp.org>, reported by GGarvey. 154052d159aSCy Schubert - --enable-bug3527-fix support by HStenn 155052d159aSCy Schubert* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org> 156052d159aSCy Schubert - applied patch by Gerry Garvey 157052d159aSCy Schubert* [Bug 3471] Check for openssl/[ch]mac.h. <perlinger@ntp.org> 158052d159aSCy Schubert - added missing check, reported by Reinhard Max <perlinger@ntp.org> 159052d159aSCy Schubert* [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64 160052d159aSCy Schubert - this is a variant of [bug 3558] and should be fixed with it 161052d159aSCy Schubert* Implement 'configure --disable-signalled-io' 162052d159aSCy Schubert 163f0574f5cSXin LI-- 1644e1ef62aSXin LINTP 4.2.8p12 (Harlan Stenn <stenn@ntp.org>, 2018/14/09) 16509100258SXin LI 16609100258SXin LIFocus: Security, Bug fixes, enhancements. 16709100258SXin LI 16809100258SXin LISeverity: MEDIUM 16909100258SXin LI 1704e1ef62aSXin LIThis release fixes a "hole" in the noepeer capability introduced to ntpd 1714e1ef62aSXin LIin ntp-4.2.8p11, and a buffer overflow in the openhost() function used by 1724e1ef62aSXin LIntpq and ntpdc. It also provides 26 other bugfixes, and 4 other improvements: 1734e1ef62aSXin LI 1744e1ef62aSXin LI* [Sec 3505] Buffer overflow in the openhost() call of ntpq and ntpdc. 1754e1ef62aSXin LI 1764e1ef62aSXin LI* [Sec 3012] Fix a hole in the new "noepeer" processing. 1774e1ef62aSXin LI 1784e1ef62aSXin LI* Bug Fixes: 1794e1ef62aSXin LI [Bug 3521] Fix a logic bug in the INVALIDNAK checks. <stenn@ntp.org> 1804e1ef62aSXin LI [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, 1814e1ef62aSXin LI other TrustedBSD platforms 1824e1ef62aSXin LI - applied patch by Ian Lepore <perlinger@ntp.org> 1834e1ef62aSXin LI [Bug 3506] Service Control Manager interacts poorly with NTPD <perlinger@ntp.org> 1844e1ef62aSXin LI - changed interaction with SCM to signal pending startup 1854e1ef62aSXin LI [Bug 3486] Buffer overflow in ntpq/ntpq.c:tstflags() <perlinger@ntp.org> 1864e1ef62aSXin LI - applied patch by Gerry Garvey 1874e1ef62aSXin LI [Bug 3485] Undefined sockaddr used in error messages in ntp_config.c <perlinger@ntp.org> 1884e1ef62aSXin LI - applied patch by Gerry Garvey 1894e1ef62aSXin LI [Bug 3484] ntpq response from ntpd is incorrect when REFID is null <perlinger@ntp.org> 1904e1ef62aSXin LI - rework of ntpq 'nextvar()' key/value parsing 1914e1ef62aSXin LI [Bug 3482] Fixes for compilation warnings (ntp_io.c & ntpq-subs.c) <perlinger@ntp.org> 1924e1ef62aSXin LI - applied patch by Gerry Garvey (with mods) 1934e1ef62aSXin LI [Bug 3480] Refclock sample filter not cleared on clock STEP <perlinger@ntp.org> 1944e1ef62aSXin LI - applied patch by Gerry Garvey 1954e1ef62aSXin LI [Bug 3479] ctl_putrefid() allows unsafe characters through to ntpq <perlinger@ntp.org> 1964e1ef62aSXin LI - applied patch by Gerry Garvey (with mods) 1974e1ef62aSXin LI [Bug 3476]ctl_putstr() sends empty unquoted string [...] <perlinger@ntp.org> 1984e1ef62aSXin LI - applied patch by Gerry Garvey (with mods); not sure if that's bug or feature, though 1994e1ef62aSXin LI [Bug 3475] modify prettydate() to suppress output of zero time <perlinger@ntp.org> 2004e1ef62aSXin LI - applied patch by Gerry Garvey 2014e1ef62aSXin LI [Bug 3474] Missing pmode in mode7 peer info response <perlinger@ntp.org> 2024e1ef62aSXin LI - applied patch by Gerry Garvey 2034e1ef62aSXin LI [Bug 3471] Check for openssl/[ch]mac.h. HStenn. 2044e1ef62aSXin LI - add #define ENABLE_CMAC support in configure. HStenn. 2054e1ef62aSXin LI [Bug 3470] ntpd4.2.8p11 fails to compile without OpenSSL <perlinger@ntp.org> 2064e1ef62aSXin LI [Bug 3469] Incomplete string compare [...] in is_refclk_addr <perlinger@ntp.org> 2074e1ef62aSXin LI - patch by Stephen Friedl 2084e1ef62aSXin LI [Bug 3467] Potential memory fault in ntpq [...] <perlinger@ntp.org> 2094e1ef62aSXin LI - fixed IO redirection and CTRL-C handling in ntq and ntpdc 2104e1ef62aSXin LI [Bug 3465] Default TTL values cannot be used <perlinger@ntp.org> 2114e1ef62aSXin LI [Bug 3461] refclock_shm.c: clear error status on clock recovery <perlinger@ntp.org> 2124e1ef62aSXin LI - initial patch by Hal Murray; also fixed refclock_report() trouble 2134e1ef62aSXin LI [Bug 3460] Fix typo in ntpq.texi, reported by Kenyon Ralph. <stenn@ntp.org> 2144e1ef62aSXin LI [Bug 3456] Use uintptr_t rather than size_t to store an integer in a pointer 2154e1ef62aSXin LI - According to Brooks Davis, there was only one location <perlinger@ntp.org> 2164e1ef62aSXin LI [Bug 3449] ntpq - display "loop" instead of refid [...] <perlinger@ntp.org> 2174e1ef62aSXin LI - applied patch by Gerry Garvey 2184e1ef62aSXin LI [Bug 3445] Symmetric peer won't sync on startup <perlinger@ntp.org> 2194e1ef62aSXin LI - applied patch by Gerry Garvey 2204e1ef62aSXin LI [Bug 3442] Fixes for ntpdate as suggested by Gerry Garvey, 2214e1ef62aSXin LI with modifications 2224e1ef62aSXin LI New macro REFID_ISTEXT() which is also used in ntpd/ntp_control.c. 2234e1ef62aSXin LI [Bug 3434] ntpd clears STA_UNSYNC on start <perlinger@ntp.org> 2244e1ef62aSXin LI - applied patch by Miroslav Lichvar 2254e1ef62aSXin LI [Bug 3426] ntpdate.html -t default is 2 seconds. Leonid Evdokimov. 2264e1ef62aSXin LI [Bug 3121] Drop root privileges for the forked DNS worker <perlinger@ntp.org> 2274e1ef62aSXin LI - integrated patch by Reinhard Max 2284e1ef62aSXin LI [Bug 2821] minor build issues <perlinger@ntp.org> 2294e1ef62aSXin LI - applied patches by Christos Zoulas, including real bug fixes 2304e1ef62aSXin LI html/authopt.html: cleanup, from <stenn@ntp.org> 2314e1ef62aSXin LI ntpd/ntpd.c: DROPROOT cleanup. <stenn@ntp.org> 2324e1ef62aSXin LI Symmetric key range is 1-65535. Update docs. <stenn@ntp.org> 2334e1ef62aSXin LI 2344e1ef62aSXin LI-- 2354e1ef62aSXin LINTP 4.2.8p11 (Harlan Stenn <stenn@ntp.org>, 2018/02/27) 2364e1ef62aSXin LI 2374e1ef62aSXin LIFocus: Security, Bug fixes, enhancements. 2384e1ef62aSXin LI 2394e1ef62aSXin LISeverity: MEDIUM 2404e1ef62aSXin LI 24109100258SXin LIThis release fixes 2 low-/medium-, 1 informational/medum-, and 2 low-severity 24209100258SXin LIvulnerabilities in ntpd, one medium-severity vulernability in ntpq, and 24309100258SXin LIprovides 65 other non-security fixes and improvements: 24409100258SXin LI 24509100258SXin LI* NTP Bug 3454: Unauthenticated packet can reset authenticated interleaved 24609100258SXin LI association (LOW/MED) 24709100258SXin LI Date Resolved: Stable (4.2.8p11) 27 Feb 2018 24809100258SXin LI References: Sec 3454 / CVE-2018-7185 / VU#961909 24909100258SXin LI Affects: ntp-4.2.6, up to but not including ntp-4.2.8p11. 25009100258SXin LI CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:N/I:N/A:P) This could score between 25109100258SXin LI 2.9 and 6.8. 25209100258SXin LI 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 25309100258SXin LI score between 2.6 and 3.1 25409100258SXin LI Summary: 25509100258SXin LI The NTP Protocol allows for both non-authenticated and 25609100258SXin LI authenticated associations, in client/server, symmetric (peer), 25709100258SXin LI and several broadcast modes. In addition to the basic NTP 25809100258SXin LI operational modes, symmetric mode and broadcast servers can 25909100258SXin LI support an interleaved mode of operation. In ntp-4.2.8p4 a bug 26009100258SXin LI was inadvertently introduced into the protocol engine that 26109100258SXin LI allows a non-authenticated zero-origin (reset) packet to reset 26209100258SXin LI an authenticated interleaved peer association. If an attacker 26309100258SXin LI can send a packet with a zero-origin timestamp and the source 26409100258SXin LI IP address of the "other side" of an interleaved association, 26509100258SXin LI the 'victim' ntpd will reset its association. The attacker must 26609100258SXin LI continue sending these packets in order to maintain the 26709100258SXin LI disruption of the association. In ntp-4.0.0 thru ntp-4.2.8p6, 26809100258SXin LI interleave mode could be entered dynamically. As of ntp-4.2.8p7, 26909100258SXin LI interleaved mode must be explicitly configured/enabled. 27009100258SXin LI Mitigation: 27109100258SXin LI Implement BCP-38. 27209100258SXin LI Upgrade to 4.2.8p11, or later, from the NTP Project Download Page 27309100258SXin LI or the NTP Public Services Project Download Page. 27409100258SXin LI If you are unable to upgrade to 4.2.8p11 or later and have 27509100258SXin LI 'peer HOST xleave' lines in your ntp.conf file, remove the 27609100258SXin LI 'xleave' option. 27709100258SXin LI Have enough sources of time. 27809100258SXin LI Properly monitor your ntpd instances. 27909100258SXin LI If ntpd stops running, auto-restart it without -g . 28009100258SXin LI Credit: 28109100258SXin LI This weakness was discovered by Miroslav Lichvar of Red Hat. 28209100258SXin LI 28309100258SXin LI* NTP Bug 3453: Interleaved symmetric mode cannot recover from bad 28409100258SXin LI state (LOW/MED) 28509100258SXin LI Date Resolved: Stable (4.2.8p11) 27 Feb 2018 28609100258SXin LI References: Sec 3453 / CVE-2018-7184 / VU#961909 28709100258SXin LI Affects: ntpd in ntp-4.2.8p4, up to but not including ntp-4.2.8p11. 28809100258SXin LI CVSS2: MED 4.3 (AV:N/AC:M/Au:N/C:P/I:N/A:N) 28909100258SXin LI Could score between 2.9 and 6.8. 29009100258SXin LI CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L 29109100258SXin LI Could score between 2.6 and 6.0. 29209100258SXin LI Summary: 29309100258SXin LI The fix for NtpBug2952 was incomplete, and while it fixed one 29409100258SXin LI problem it created another. Specifically, it drops bad packets 29509100258SXin LI before updating the "received" timestamp. This means a 29609100258SXin LI third-party can inject a packet with a zero-origin timestamp, 29709100258SXin LI meaning the sender wants to reset the association, and the 29809100258SXin LI transmit timestamp in this bogus packet will be saved as the 29909100258SXin LI most recent "received" timestamp. The real remote peer does 30009100258SXin LI not know this value and this will disrupt the association until 30109100258SXin LI the association resets. 30209100258SXin LI Mitigation: 30309100258SXin LI Implement BCP-38. 30409100258SXin LI Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page 30509100258SXin LI or the NTP Public Services Project Download Page. 30609100258SXin LI Use authentication with 'peer' mode. 30709100258SXin LI Have enough sources of time. 30809100258SXin LI Properly monitor your ntpd instances. 30909100258SXin LI If ntpd stops running, auto-restart it without -g . 31009100258SXin LI Credit: 31109100258SXin LI This weakness was discovered by Miroslav Lichvar of Red Hat. 31209100258SXin LI 31309100258SXin LI* NTP Bug 3415: Provide a way to prevent authenticated symmetric passive 31409100258SXin LI peering (LOW) 31509100258SXin LI Date Resolved: Stable (4.2.8p11) 27 Feb 2018 31609100258SXin LI References: Sec 3415 / CVE-2018-7170 / VU#961909 31709100258SXin LI Sec 3012 / CVE-2016-1549 / VU#718152 31809100258SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 31909100258SXin LI 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11. 32009100258SXin LI CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N) 32109100258SXin LI CVSS3: LOW 3.1 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N 32209100258SXin LI Summary: 32309100258SXin LI ntpd can be vulnerable to Sybil attacks. If a system is set up to 32409100258SXin LI use a trustedkey and if one is not using the feature introduced in 32509100258SXin LI ntp-4.2.8p6 allowing an optional 4th field in the ntp.keys file to 32609100258SXin LI specify which IPs can serve time, a malicious authenticated peer 32709100258SXin LI -- i.e. one where the attacker knows the private symmetric key -- 32809100258SXin LI can create arbitrarily-many ephemeral associations in order to win 32909100258SXin LI the clock selection of ntpd and modify a victim's clock. Three 33009100258SXin LI additional protections are offered in ntp-4.2.8p11. One is the 33109100258SXin LI new 'noepeer' directive, which disables symmetric passive 33209100258SXin LI ephemeral peering. Another is the new 'ippeerlimit' directive, 33309100258SXin LI which limits the number of peers that can be created from an IP. 33409100258SXin LI The third extends the functionality of the 4th field in the 33509100258SXin LI ntp.keys file to include specifying a subnet range. 33609100258SXin LI Mitigation: 33709100258SXin LI Implement BCP-38. 33809100258SXin LI Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page 33909100258SXin LI or the NTP Public Services Project Download Page. 34009100258SXin LI Use the 'noepeer' directive to prohibit symmetric passive 34109100258SXin LI ephemeral associations. 34209100258SXin LI Use the 'ippeerlimit' directive to limit the number of peers 34309100258SXin LI that can be created from an IP. 34409100258SXin LI Use the 4th argument in the ntp.keys file to limit the IPs and 34509100258SXin LI subnets that can be time servers. 34609100258SXin LI Have enough sources of time. 34709100258SXin LI Properly monitor your ntpd instances. 34809100258SXin LI If ntpd stops running, auto-restart it without -g . 34909100258SXin LI Credit: 35009100258SXin LI This weakness was reported as Bug 3012 by Matthew Van Gundy of 35109100258SXin LI Cisco ASIG, and separately by Stefan Moser as Bug 3415. 35209100258SXin LI 35309100258SXin LI* ntpq Bug 3414: decodearr() can write beyond its 'buf' limits (Medium) 35409100258SXin LI Date Resolved: 27 Feb 2018 35509100258SXin LI References: Sec 3414 / CVE-2018-7183 / VU#961909 35609100258SXin LI Affects: ntpq in ntp-4.2.8p6, up to but not including ntp-4.2.8p11. 35709100258SXin LI CVSS2: MED 6.8 (AV:N/AC:M/Au:N/C:P/I:P/A:P) 35809100258SXin LI CVSS3: MED 5.0 CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L 35909100258SXin LI Summary: 36009100258SXin LI ntpq is a monitoring and control program for ntpd. decodearr() 36109100258SXin LI is an internal function of ntpq that is used to -- wait for it -- 36209100258SXin LI decode an array in a response string when formatted data is being 36309100258SXin LI displayed. This is a problem in affected versions of ntpq if a 36409100258SXin LI maliciously-altered ntpd returns an array result that will trip this 36509100258SXin LI bug, or if a bad actor is able to read an ntpq request on its way to 36609100258SXin LI a remote ntpd server and forge and send a response before the remote 36709100258SXin LI ntpd sends its response. It's potentially possible that the 36809100258SXin LI malicious data could become injectable/executable code. 36909100258SXin LI Mitigation: 37009100258SXin LI Implement BCP-38. 37109100258SXin LI Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page 37209100258SXin LI or the NTP Public Services Project Download Page. 37309100258SXin LI Credit: 37409100258SXin LI This weakness was discovered by Michael Macnair of Thales e-Security. 37509100258SXin LI 37609100258SXin LI* NTP Bug 3412: ctl_getitem(): buffer read overrun leads to undefined 37709100258SXin LI behavior and information leak (Info/Medium) 37809100258SXin LI Date Resolved: 27 Feb 2018 37909100258SXin LI References: Sec 3412 / CVE-2018-7182 / VU#961909 38009100258SXin LI Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p11. 38109100258SXin LI CVSS2: INFO 0.0 - MED 5.0 (AV:N/AC:L/Au:N/C:P/I:N/A:N) 0.0 if C:N 38209100258SXin LI 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 38309100258SXin LI 0.0 if C:N 38409100258SXin LI Summary: 38509100258SXin LI ctl_getitem() is used by ntpd to process incoming mode 6 packets. 38609100258SXin LI A malicious mode 6 packet can be sent to an ntpd instance, and 38709100258SXin LI if the ntpd instance is from 4.2.8p6 thru 4.2.8p10, that will 38809100258SXin LI cause ctl_getitem() to read past the end of its buffer. 38909100258SXin LI Mitigation: 39009100258SXin LI Implement BCP-38. 39109100258SXin LI Upgrade to ntp-4.2.8p11 or later from the NTP Project Download Page 39209100258SXin LI or the NTP Public Services Project Download Page. 39309100258SXin LI Have enough sources of time. 39409100258SXin LI Properly monitor your ntpd instances. 39509100258SXin LI If ntpd stops running, auto-restart it without -g . 39609100258SXin LI Credit: 39709100258SXin LI This weakness was discovered by Yihan Lian of Qihoo 360. 39809100258SXin LI 39909100258SXin LI* NTP Bug 3012: Sybil vulnerability: ephemeral association attack 40009100258SXin LI Also see Bug 3415, above. 40109100258SXin LI Date Mitigated: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 40209100258SXin LI Date Resolved: Stable (4.2.8p11) 27 Feb 2018 40309100258SXin LI References: Sec 3012 / CVE-2016-1549 / VU#718152 40409100258SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 40509100258SXin LI 4.3.0 up to, but not including 4.3.92. Resolved in 4.2.8p11. 40609100258SXin LI CVSS2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N) 40709100258SXin LI CVSS3: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N 40809100258SXin LI Summary: 40909100258SXin LI ntpd can be vulnerable to Sybil attacks. If a system is set up 41009100258SXin LI to use a trustedkey and if one is not using the feature 41109100258SXin LI introduced in ntp-4.2.8p6 allowing an optional 4th field in the 41209100258SXin LI ntp.keys file to specify which IPs can serve time, a malicious 41309100258SXin LI authenticated peer -- i.e. one where the attacker knows the 41409100258SXin LI private symmetric key -- can create arbitrarily-many ephemeral 41509100258SXin LI associations in order to win the clock selection of ntpd and 41609100258SXin LI modify a victim's clock. Two additional protections are 41709100258SXin LI offered in ntp-4.2.8p11. One is the 'noepeer' directive, which 41809100258SXin LI disables symmetric passive ephemeral peering. The other extends 41909100258SXin LI the functionality of the 4th field in the ntp.keys file to 42009100258SXin LI include specifying a subnet range. 42109100258SXin LI Mitigation: 42209100258SXin LI Implement BCP-38. 42309100258SXin LI Upgrade to 4.2.8p11, or later, from the NTP Project Download Page or 42409100258SXin LI the NTP Public Services Project Download Page. 42509100258SXin LI Use the 'noepeer' directive to prohibit symmetric passive 42609100258SXin LI ephemeral associations. 42709100258SXin LI Use the 'ippeerlimit' directive to limit the number of peer 42809100258SXin LI associations from an IP. 42909100258SXin LI Use the 4th argument in the ntp.keys file to limit the IPs 43009100258SXin LI and subnets that can be time servers. 43109100258SXin LI Properly monitor your ntpd instances. 43209100258SXin LI Credit: 43309100258SXin LI This weakness was discovered by Matthew Van Gundy of Cisco ASIG. 43409100258SXin LI 43509100258SXin LI* Bug fixes: 43609100258SXin LI [Bug 3457] OpenSSL FIPS mode regression <perlinger@ntp.org> 43709100258SXin LI [Bug 3455] ntpd doesn't use scope id when binding multicast <perlinger@ntp.org> 43809100258SXin LI - applied patch by Sean Haugh 43909100258SXin LI [Bug 3452] PARSE driver prints uninitialized memory. <perlinger@ntp.org> 44009100258SXin LI [Bug 3450] Dubious error messages from plausibility checks in get_systime() 44109100258SXin LI - removed error log caused by rounding/slew, ensured postcondition <perlinger@ntp.org> 44209100258SXin LI [Bug 3447] AES-128-CMAC (fixes) <perlinger@ntp.org> 44309100258SXin LI - refactoring the MAC code, too 44409100258SXin LI [Bug 3441] Validate the assumption that AF_UNSPEC is 0. stenn@ntp.org 44509100258SXin LI [Bug 3439] When running multiple commands / hosts in ntpq... <perlinger@ntp.org> 44609100258SXin LI - applied patch by ggarvey 44709100258SXin LI [Bug 3438] Negative values and values > 999 days in... <perlinger@ntp.org> 44809100258SXin LI - applied patch by ggarvey (with minor mods) 44909100258SXin LI [Bug 3437] ntpd tries to open socket with AF_UNSPEC domain 45009100258SXin LI - applied patch (with mods) by Miroslav Lichvar <perlinger@ntp.org> 45109100258SXin LI [Bug 3435] anchor NTP era alignment <perlinger@ntp.org> 45209100258SXin LI [Bug 3433] sntp crashes when run with -a. <stenn@ntp.org> 45309100258SXin LI [Bug 3430] ntpq dumps core (SIGSEGV) for "keytype md2" 45409100258SXin LI - fixed several issues with hash algos in ntpd, sntp, ntpq, 45509100258SXin LI ntpdc and the test suites <perlinger@ntp.org> 45609100258SXin LI [Bug 3424] Trimble Thunderbolt 1024 week millenium bug <perlinger@ntp.org> 45709100258SXin LI - initial patch by Daniel Pouzzner 45809100258SXin LI [Bug 3423] QNX adjtime() implementation error checking is 45909100258SXin LI wrong <perlinger@ntp.org> 46009100258SXin LI [Bug 3417] ntpq ifstats packet counters can be negative 46109100258SXin LI made IFSTATS counter quantities unsigned <perlinger@ntp.org> 46209100258SXin LI [Bug 3411] problem about SIGN(6) packet handling for ntp-4.2.8p10 46309100258SXin LI - raised receive buffer size to 1200 <perlinger@ntp.org> 46409100258SXin LI [Bug 3408] refclock_jjy.c: Avoid a wrong report of the coverity static 46509100258SXin LI analysis tool. <abe@ntp.org> 46609100258SXin LI [Bug 3405] update-leap.in: general cleanup, HTTPS support. Paul McMath. 46709100258SXin LI [Bug 3404] Fix openSSL DLL usage under Windows <perlinger@ntp.org> 46809100258SXin LI - fix/drop assumptions on OpenSSL libs directory layout 46909100258SXin LI [Bug 3399] NTP: linker error in 4.2.8p10 during Linux cross-compilation 47009100258SXin LI - initial patch by timeflies@mail2tor.com <perlinger@ntp.org> 47109100258SXin LI [Bug 3398] tests fail with core dump <perlinger@ntp.org> 47209100258SXin LI - patch contributed by Alexander Bluhm 47309100258SXin LI [Bug 3397] ctl_putstr() asserts that data fits in its buffer 47409100258SXin LI rework of formatting & data transfer stuff in 'ntp_control.c' 47509100258SXin LI avoids unecessary buffers and size limitations. <perlinger@ntp.org> 47609100258SXin LI [Bug 3394] Leap second deletion does not work on ntpd clients 47709100258SXin LI - fixed handling of dynamic deletion w/o leap file <perlinger@ntp.org> 47809100258SXin LI [Bug 3391] ntpd segfaults on startup due to small warmup thread stack size 47909100258SXin LI - increased mimimum stack size to 32kB <perlinger@ntp.org> 48009100258SXin LI [Bug 3367] Faulty LinuxPPS NMEA clock support in 4.2.8 <perlinger@ntp.org> 48109100258SXin LI - reverted handling of PPS kernel consumer to 4.2.6 behavior 48209100258SXin LI [Bug 3365] Updates driver40(-ja).html and miscopt.html <abe@ntp.org> 48309100258SXin LI [Bug 3358] Spurious KoD log messages in .INIT. phase. HStenn. 48409100258SXin LI [Bug 3016] wrong error position reported for bad ":config pool" 48509100258SXin LI - fixed location counter & ntpq output <perlinger@ntp.org> 48609100258SXin LI [Bug 2900] libntp build order problem. HStenn. 48709100258SXin LI [Bug 2878] Tests are cluttering up syslog <perlinger@ntp.org> 48809100258SXin LI [Bug 2737] Wrong phone number listed for USNO. ntp-bugs@bodosom.net, 48909100258SXin LI perlinger@ntp.org 49009100258SXin LI [Bug 2557] Fix Thunderbolt init. ntp-bugs@bodosom.net, perlinger@ntp. 49109100258SXin LI [Bug 948] Trustedkey config directive leaks memory. <perlinger@ntp.org> 49209100258SXin LI Use strlcpy() to copy strings, not memcpy(). HStenn. 49309100258SXin LI Typos. HStenn. 49409100258SXin LI test_ntp_scanner_LDADD needs ntpd/ntp_io.o. HStenn. 49509100258SXin LI refclock_jjy.c: Add missing "%s" to an msyslog() call. HStenn. 49609100258SXin LI Build ntpq and libntpq.a with NTP_HARD_*FLAGS. perlinger@ntp.org 49709100258SXin LI Fix trivial warnings from 'make check'. perlinger@ntp.org 49809100258SXin LI Fix bug in the override portion of the compiler hardening macro. HStenn. 49909100258SXin LI record_raw_stats(): Log entire packet. Log writes. HStenn. 50009100258SXin LI AES-128-CMAC support. BInglis, HStenn, JPerlinger. 50109100258SXin LI sntp: tweak key file logging. HStenn. 50209100258SXin LI sntp: pkt_output(): Improve debug output. HStenn. 50309100258SXin LI update-leap: updates from Paul McMath. 50409100258SXin LI When using pkg-config, report --modversion. HStenn. 50509100258SXin LI Clean up libevent configure checks. HStenn. 50609100258SXin LI sntp: show the IP of who sent us a crypto-NAK. HStenn. 50709100258SXin LI Allow .../N to specify subnet bits for IPs in ntp.keys. HStenn, JPerlinger. 50809100258SXin LI authistrustedip() - use it in more places. HStenn, JPerlinger. 50909100258SXin LI New sysstats: sys_lamport, sys_tsrounding. HStenn. 51009100258SXin LI Update ntp.keys .../N documentation. HStenn. 51109100258SXin LI Distribute testconf.yml. HStenn. 51209100258SXin LI Add DPRINTF(2,...) lines to receive() for packet drops. HStenn. 51309100258SXin LI Rename the configuration flag fifo variables. HStenn. 51409100258SXin LI Improve saveconfig output. HStenn. 51509100258SXin LI Decode restrict flags on receive() debug output. HStenn. 51609100258SXin LI Decode interface flags on receive() debug output. HStenn. 51709100258SXin LI Warn the user if deprecated "driftfile name WanderThreshold" is used. HStenn. 51809100258SXin LI Update the documentation in ntp.conf.def . HStenn. 51909100258SXin LI restrictions() must return restrict flags and ippeerlimit. HStenn. 52009100258SXin LI Update ntpq peer documentation to describe the 'p' type. HStenn. 52109100258SXin LI Rename restrict 'flags' to 'rflags. Use an enum for the values. HStenn. 52209100258SXin LI Provide dump_restricts() for debugging. HStenn. 52309100258SXin LI Use consistent 4th arg type for [gs]etsockopt. JPerlinger. 52409100258SXin LI 52509100258SXin LI* Other items: 52609100258SXin LI 52709100258SXin LI* update-leap needs the following perl modules: 52809100258SXin LI Net::SSLeay 52909100258SXin LI IO::Socket::SSL 53009100258SXin LI 53109100258SXin LI* New sysstats variables: sys_lamport, sys_tsrounding 53209100258SXin LISee them with: ntpq -c "rv 0 ss_lamport,ss_tsrounding" 53309100258SXin LIsys_lamport counts the number of observed Lamport violations, while 53409100258SXin LIsys_tsrounding counts observed timestamp rounding events. 53509100258SXin LI 53609100258SXin LI* New ntp.conf items: 53709100258SXin LI 53809100258SXin LI- restrict ... noepeer 53909100258SXin LI- restrict ... ippeerlimit N 54009100258SXin LI 54109100258SXin LIThe 'noepeer' directive will disallow all ephemeral/passive peer 54209100258SXin LIrequests. 54309100258SXin LI 54409100258SXin LIThe 'ippeerlimit' directive limits the number of time associations 54509100258SXin LIfor each IP in the designated set of addresses. This limit does not 54609100258SXin LIapply to explicitly-configured associations. A value of -1, the current 54709100258SXin LIdefault, means an unlimited number of associations may connect from a 54809100258SXin LIsingle IP. 0 means "none", etc. Ordinarily the only way multiple 54909100258SXin LIassociations would come from the same IP would be if the remote side 55009100258SXin LIwas using a proxy. But a trusted machine might become compromised, 55109100258SXin LIin which case an attacker might spin up multiple authenticated sessions 55209100258SXin LIfrom different ports. This directive should be helpful in this case. 55309100258SXin LI 55409100258SXin LI* New ntp.keys feature: Each IP in the optional list of IPs in the 4th 55509100258SXin LIfield may contain a /subnetbits specification, which identifies the 55609100258SXin LIscope of IPs that may use this key. This IP/subnet restriction can be 55709100258SXin LIused to limit the IPs that may use the key in most all situations where 55809100258SXin LIa key is used. 55909100258SXin LI-- 560f0574f5cSXin LINTP 4.2.8p10 (Harlan Stenn <stenn@ntp.org>, 2017/03/21) 561f0574f5cSXin LI 562f0574f5cSXin LIFocus: Security, Bug fixes, enhancements. 563f0574f5cSXin LI 564f0574f5cSXin LISeverity: MEDIUM 565f0574f5cSXin LI 566f0574f5cSXin LIThis release fixes 5 medium-, 6 low-, and 4 informational-severity 567f0574f5cSXin LIvulnerabilities, and provides 15 other non-security fixes and improvements: 568f0574f5cSXin LI 569f0574f5cSXin LI* NTP-01-016 NTP: Denial of Service via Malformed Config (Medium) 570f0574f5cSXin LI Date Resolved: 21 Mar 2017 571f0574f5cSXin LI References: Sec 3389 / CVE-2017-6464 / VU#325339 572f0574f5cSXin LI Affects: All versions of NTP-4, up to but not including ntp-4.2.8p10, and 573f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 574f0574f5cSXin LI CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C) 575f0574f5cSXin LI CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 576f0574f5cSXin LI Summary: 577f0574f5cSXin LI A vulnerability found in the NTP server makes it possible for an 578f0574f5cSXin LI authenticated remote user to crash ntpd via a malformed mode 579f0574f5cSXin LI configuration directive. 580f0574f5cSXin LI Mitigation: 581f0574f5cSXin LI Implement BCP-38. 582f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or 583f0574f5cSXin LI the NTP Public Services Project Download Page 584f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 585f0574f5cSXin LI ntpd (without -g) if it stops running. 586f0574f5cSXin LI Credit: 587f0574f5cSXin LI This weakness was discovered by Cure53. 588f0574f5cSXin LI 589f0574f5cSXin LI* NTP-01-014 NTP: Buffer Overflow in DPTS Clock (Low) 590f0574f5cSXin LI Date Resolved: 21 Mar 2017 591f0574f5cSXin LI References: Sec 3388 / CVE-2017-6462 / VU#325339 592f0574f5cSXin LI 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. 593f0574f5cSXin LI CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P) 594f0574f5cSXin LI CVSS3: Low 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 595f0574f5cSXin LI Summary: 596f0574f5cSXin LI There is a potential for a buffer overflow in the legacy Datum 597f0574f5cSXin LI Programmable Time Server refclock driver. Here the packets are 598f0574f5cSXin LI processed from the /dev/datum device and handled in 599f0574f5cSXin LI datum_pts_receive(). Since an attacker would be required to 600f0574f5cSXin LI somehow control a malicious /dev/datum device, this does not 601f0574f5cSXin LI appear to be a practical attack and renders this issue "Low" in 602f0574f5cSXin LI terms of severity. 603f0574f5cSXin LI Mitigation: 604f0574f5cSXin LI If you have a Datum reference clock installed and think somebody 605f0574f5cSXin LI may maliciously change the device, upgrade to 4.2.8p10, or 606f0574f5cSXin LI later, from the NTP Project Download Page or the NTP Public 607f0574f5cSXin LI Services Project Download Page 608f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 609f0574f5cSXin LI ntpd (without -g) if it stops running. 610f0574f5cSXin LI Credit: 611f0574f5cSXin LI This weakness was discovered by Cure53. 612f0574f5cSXin LI 613f0574f5cSXin LI* NTP-01-012 NTP: Authenticated DoS via Malicious Config Option (Medium) 614f0574f5cSXin LI Date Resolved: 21 Mar 2017 615f0574f5cSXin LI References: Sec 3387 / CVE-2017-6463 / VU#325339 616f0574f5cSXin LI Affects: All versions of ntp, up to but not including ntp-4.2.8p10, and 617f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 618f0574f5cSXin LI CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C) 619f0574f5cSXin LI CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 620f0574f5cSXin LI Summary: 621f0574f5cSXin LI A vulnerability found in the NTP server allows an authenticated 622f0574f5cSXin LI remote attacker to crash the daemon by sending an invalid setting 623f0574f5cSXin LI via the :config directive. The unpeer option expects a number or 624f0574f5cSXin LI an address as an argument. In case the value is "0", a 625f0574f5cSXin LI segmentation fault occurs. 626f0574f5cSXin LI Mitigation: 627f0574f5cSXin LI Implement BCP-38. 628f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 629f0574f5cSXin LI or the NTP Public Services Project Download Page 630f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 631f0574f5cSXin LI ntpd (without -g) if it stops running. 632f0574f5cSXin LI Credit: 633f0574f5cSXin LI This weakness was discovered by Cure53. 634f0574f5cSXin LI 635f0574f5cSXin LI* NTP-01-011 NTP: ntpq_stripquotes() returns incorrect value (Informational) 636f0574f5cSXin LI Date Resolved: 21 Mar 2017 637f0574f5cSXin LI References: Sec 3386 638f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 639f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 640f0574f5cSXin LI CVSS2: None 0.0 (AV:N/AC:H/Au:N/C:N/I:N/A:N) 641f0574f5cSXin LI CVSS3: None 0.0 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:N 642f0574f5cSXin LI Summary: 643f0574f5cSXin LI The NTP Mode 6 monitoring and control client, ntpq, uses the 644f0574f5cSXin LI function ntpq_stripquotes() to remove quotes and escape characters 645f0574f5cSXin LI from a given string. According to the documentation, the function 646f0574f5cSXin LI is supposed to return the number of copied bytes but due to 647f0574f5cSXin LI incorrect pointer usage this value is always zero. Although the 648f0574f5cSXin LI return value of this function is never used in the code, this 649f0574f5cSXin LI flaw could lead to a vulnerability in the future. Since relying 650f0574f5cSXin LI on wrong return values when performing memory operations is a 651f0574f5cSXin LI dangerous practice, it is recommended to return the correct value 652f0574f5cSXin LI in accordance with the documentation pertinent to the code. 653f0574f5cSXin LI Mitigation: 654f0574f5cSXin LI Implement BCP-38. 655f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 656f0574f5cSXin LI or the NTP Public Services Project Download Page 657f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 658f0574f5cSXin LI ntpd (without -g) if it stops running. 659f0574f5cSXin LI Credit: 660f0574f5cSXin LI This weakness was discovered by Cure53. 661f0574f5cSXin LI 662f0574f5cSXin LI* NTP-01-010 NTP: ereallocarray()/eallocarray() underused (Info) 663f0574f5cSXin LI Date Resolved: 21 Mar 2017 664f0574f5cSXin LI References: Sec 3385 665f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 666f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 667f0574f5cSXin LI Summary: 668f0574f5cSXin LI NTP makes use of several wrappers around the standard heap memory 669f0574f5cSXin LI allocation functions that are provided by libc. This is mainly 670f0574f5cSXin LI done to introduce additional safety checks concentrated on 671f0574f5cSXin LI several goals. First, they seek to ensure that memory is not 672f0574f5cSXin LI accidentally freed, secondly they verify that a correct amount 673f0574f5cSXin LI is always allocated and, thirdly, that allocation failures are 674f0574f5cSXin LI correctly handled. There is an additional implementation for 675f0574f5cSXin LI scenarios where memory for a specific amount of items of the 676f0574f5cSXin LI same size needs to be allocated. The handling can be found in 677f0574f5cSXin LI the oreallocarray() function for which a further number-of-elements 678f0574f5cSXin LI parameter needs to be provided. Although no considerable threat 679f0574f5cSXin LI was identified as tied to a lack of use of this function, it is 680f0574f5cSXin LI recommended to correctly apply oreallocarray() as a preferred 681f0574f5cSXin LI option across all of the locations where it is possible. 682f0574f5cSXin LI Mitigation: 683f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 684f0574f5cSXin LI or the NTP Public Services Project Download Page 685f0574f5cSXin LI Credit: 686f0574f5cSXin LI This weakness was discovered by Cure53. 687f0574f5cSXin LI 688f0574f5cSXin LI* NTP-01-009 NTP: Privileged execution of User Library code (WINDOWS 689f0574f5cSXin LI PPSAPI ONLY) (Low) 690f0574f5cSXin LI Date Resolved: 21 Mar 2017 691f0574f5cSXin LI References: Sec 3384 / CVE-2017-6455 / VU#325339 692f0574f5cSXin LI Affects: All Windows versions of ntp-4 that use the PPSAPI, up to but 693f0574f5cSXin LI not including ntp-4.2.8p10, and ntp-4.3.0 up to, but not 694f0574f5cSXin LI including ntp-4.3.94. 695f0574f5cSXin LI CVSS2: MED 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C) 696f0574f5cSXin LI CVSS3: MED 4.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 697f0574f5cSXin LI Summary: 698f0574f5cSXin LI The Windows NT port has the added capability to preload DLLs 699f0574f5cSXin LI defined in the inherited global local environment variable 700f0574f5cSXin LI PPSAPI_DLLS. The code contained within those libraries is then 701f0574f5cSXin LI called from the NTPD service, usually running with elevated 702f0574f5cSXin LI privileges. Depending on how securely the machine is setup and 703f0574f5cSXin LI configured, if ntpd is configured to use the PPSAPI under Windows 704f0574f5cSXin LI this can easily lead to a code injection. 705f0574f5cSXin LI Mitigation: 706f0574f5cSXin LI Implement BCP-38. 707f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 708f0574f5cSXin LI or the NTP Public Services Project Download Page 709f0574f5cSXin LI Credit: 710f0574f5cSXin LI This weakness was discovered by Cure53. 711f0574f5cSXin LI 712f0574f5cSXin LI* NTP-01-008 NTP: Stack Buffer Overflow from Command Line (WINDOWS 713f0574f5cSXin LI installer ONLY) (Low) 714f0574f5cSXin LI Date Resolved: 21 Mar 2017 715f0574f5cSXin LI References: Sec 3383 / CVE-2017-6452 / VU#325339 716f0574f5cSXin LI Affects: WINDOWS installer ONLY: All versions of the ntp-4 Windows 717f0574f5cSXin LI installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0 up 718f0574f5cSXin LI to, but not including ntp-4.3.94. 719f0574f5cSXin LI CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P) 720f0574f5cSXin LI CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 721f0574f5cSXin LI Summary: 722f0574f5cSXin LI The Windows installer for NTP calls strcat(), blindly appending 723f0574f5cSXin LI the string passed to the stack buffer in the addSourceToRegistry() 724f0574f5cSXin LI function. The stack buffer is 70 bytes smaller than the buffer 725f0574f5cSXin LI in the calling main() function. Together with the initially 726f0574f5cSXin LI copied Registry path, the combination causes a stack buffer 727f0574f5cSXin LI overflow and effectively overwrites the stack frame. The 728f0574f5cSXin LI passed application path is actually limited to 256 bytes by the 729f0574f5cSXin LI operating system, but this is not sufficient to assure that the 730f0574f5cSXin LI affected stack buffer is consistently protected against 731f0574f5cSXin LI overflowing at all times. 732f0574f5cSXin LI Mitigation: 733f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 734f0574f5cSXin LI or the NTP Public Services Project Download Page 735f0574f5cSXin LI Credit: 736f0574f5cSXin LI This weakness was discovered by Cure53. 737f0574f5cSXin LI 738f0574f5cSXin LI* NTP-01-007 NTP: Data Structure terminated insufficiently (WINDOWS 739f0574f5cSXin LI installer ONLY) (Low) 740f0574f5cSXin LI Date Resolved: 21 Mar 2017 741f0574f5cSXin LI References: Sec 3382 / CVE-2017-6459 / VU#325339 742f0574f5cSXin LI Affects: WINDOWS installer ONLY: All ntp-4 versions of the Windows 743f0574f5cSXin LI installer, up to but not including ntp-4.2.8p10, and ntp-4.3.0 744f0574f5cSXin LI up to, but not including ntp-4.3.94. 745f0574f5cSXin LI CVSS2: Low 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P) 746f0574f5cSXin LI CVSS3: Low 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 747f0574f5cSXin LI Summary: 748f0574f5cSXin LI The Windows installer for NTP calls strcpy() with an argument 749f0574f5cSXin LI that specifically contains multiple null bytes. strcpy() only 750f0574f5cSXin LI copies a single terminating null character into the target 751f0574f5cSXin LI buffer instead of copying the required double null bytes in the 752f0574f5cSXin LI addKeysToRegistry() function. As a consequence, a garbage 753f0574f5cSXin LI registry entry can be created. The additional arsize parameter 754f0574f5cSXin LI is erroneously set to contain two null bytes and the following 755f0574f5cSXin LI call to RegSetValueEx() claims to be passing in a multi-string 756f0574f5cSXin LI value, though this may not be true. 757f0574f5cSXin LI Mitigation: 758f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 759f0574f5cSXin LI or the NTP Public Services Project Download Page 760f0574f5cSXin LI Credit: 761f0574f5cSXin LI This weakness was discovered by Cure53. 762f0574f5cSXin LI 763f0574f5cSXin LI* NTP-01-006 NTP: Copious amounts of Unused Code (Informational) 764f0574f5cSXin LI References: Sec 3381 765f0574f5cSXin LI Summary: 766f0574f5cSXin LI The report says: Statically included external projects 767f0574f5cSXin LI potentially introduce several problems and the issue of having 768f0574f5cSXin LI extensive amounts of code that is "dead" in the resulting binary 769f0574f5cSXin LI must clearly be pointed out. The unnecessary unused code may or 770f0574f5cSXin LI may not contain bugs and, quite possibly, might be leveraged for 771f0574f5cSXin LI code-gadget-based branch-flow redirection exploits. Analogically, 772f0574f5cSXin LI having source trees statically included as well means a failure 773f0574f5cSXin LI in taking advantage of the free feature for periodical updates. 774f0574f5cSXin LI This solution is offered by the system's Package Manager. The 775f0574f5cSXin LI three libraries identified are libisc, libevent, and libopts. 776f0574f5cSXin LI Resolution: 777f0574f5cSXin LI For libisc, we already only use a portion of the original library. 778f0574f5cSXin LI We've found and fixed bugs in the original implementation (and 779f0574f5cSXin LI offered the patches to ISC), and plan to see what has changed 780f0574f5cSXin LI since we last upgraded the code. libisc is generally not 781f0574f5cSXin LI installed, and when it it we usually only see the static libisc.a 782f0574f5cSXin LI file installed. Until we know for sure that the bugs we've found 783f0574f5cSXin LI and fixed are fixed upstream, we're better off with the copy we 784f0574f5cSXin LI are using. 785f0574f5cSXin LI 786f0574f5cSXin LI Version 1 of libevent was the only production version available 787f0574f5cSXin LI until recently, and we've been requiring version 2 for a long time. 788f0574f5cSXin LI But if the build system has at least version 2 of libevent 789f0574f5cSXin LI installed, we'll use the version that is installed on the system. 790f0574f5cSXin LI Otherwise, we provide a copy of libevent that we know works. 791f0574f5cSXin LI 792f0574f5cSXin LI libopts is provided by GNU AutoGen, and that library and package 793f0574f5cSXin LI undergoes frequent API version updates. The version of autogen 794f0574f5cSXin LI used to generate the tables for the code must match the API 795f0574f5cSXin LI version in libopts. AutoGen can be ... difficult to build and 796f0574f5cSXin LI install, and very few developers really need it. So we have it 797f0574f5cSXin LI on our build and development machines, and we provide the 798f0574f5cSXin LI specific version of the libopts code in the distribution to make 799f0574f5cSXin LI sure that the proper API version of libopts is available. 800f0574f5cSXin LI 801f0574f5cSXin LI As for the point about there being code in these libraries that 802f0574f5cSXin LI NTP doesn't use, OK. But other packages used these libraries as 803f0574f5cSXin LI well, and it is reasonable to assume that other people are paying 804f0574f5cSXin LI attention to security and code quality issues for the overall 805f0574f5cSXin LI libraries. It takes significant resources to analyze and 806f0574f5cSXin LI customize these libraries to only include what we need, and to 807f0574f5cSXin LI date we believe the cost of this effort does not justify the benefit. 808f0574f5cSXin LI Credit: 809f0574f5cSXin LI This issue was discovered by Cure53. 810f0574f5cSXin LI 811f0574f5cSXin LI* NTP-01-005 NTP: Off-by-one in Oncore GPS Receiver (Low) 812f0574f5cSXin LI Date Resolved: 21 Mar 2017 813f0574f5cSXin LI References: Sec 3380 814f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 815f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 816f0574f5cSXin LI CVSS2: None 0.0 (AV:L/AC:H/Au:N/C:N/I:N/A:N) 817f0574f5cSXin LI CVSS3: None 0.0 CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:N 818f0574f5cSXin LI Summary: 819f0574f5cSXin LI There is a fencepost error in a "recovery branch" of the code for 820f0574f5cSXin LI the Oncore GPS receiver if the communication link to the ONCORE 821f0574f5cSXin LI is weak / distorted and the decoding doesn't work. 822f0574f5cSXin LI Mitigation: 823f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page or 824f0574f5cSXin LI the NTP Public Services Project Download Page 825f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 826f0574f5cSXin LI ntpd (without -g) if it stops running. 827f0574f5cSXin LI Credit: 828f0574f5cSXin LI This weakness was discovered by Cure53. 829f0574f5cSXin LI 830f0574f5cSXin LI* NTP-01-004 NTP: Potential Overflows in ctl_put() functions (Medium) 831f0574f5cSXin LI Date Resolved: 21 Mar 2017 832f0574f5cSXin LI References: Sec 3379 / CVE-2017-6458 / VU#325339 833f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 834f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 835f0574f5cSXin LI CVSS2: MED 4.6 (AV:N/AC:H/Au:M/C:N/I:N/A:C) 836f0574f5cSXin LI CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 837f0574f5cSXin LI Summary: 838f0574f5cSXin LI ntpd makes use of different wrappers around ctl_putdata() to 839f0574f5cSXin LI create name/value ntpq (mode 6) response strings. For example, 840f0574f5cSXin LI ctl_putstr() is usually used to send string data (variable names 841f0574f5cSXin LI or string data). The formatting code was missing a length check 842f0574f5cSXin LI for variable names. If somebody explicitly created any unusually 843f0574f5cSXin LI long variable names in ntpd (longer than 200-512 bytes, depending 844f0574f5cSXin LI on the type of variable), then if any of these variables are 845f0574f5cSXin LI added to the response list it would overflow a buffer. 846f0574f5cSXin LI Mitigation: 847f0574f5cSXin LI Implement BCP-38. 848f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 849f0574f5cSXin LI or the NTP Public Services Project Download Page 850f0574f5cSXin LI If you don't want to upgrade, then don't setvar variable names 851f0574f5cSXin LI longer than 200-512 bytes in your ntp.conf file. 852f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 853f0574f5cSXin LI ntpd (without -g) if it stops running. 854f0574f5cSXin LI Credit: 855f0574f5cSXin LI This weakness was discovered by Cure53. 856f0574f5cSXin LI 857f0574f5cSXin LI* NTP-01-003 NTP: Improper use of snprintf() in mx4200_send() (Low) 858f0574f5cSXin LI Date Resolved: 21 Mar 2017 859f0574f5cSXin LI References: Sec 3378 / CVE-2017-6451 / VU#325339 860f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 861f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 862f0574f5cSXin LI CVSS2: LOW 0.8 (AV:L/AC:H/Au:M/C:N/I:N/A:P) 863f0574f5cSXin LI CVSS3: LOW 1.8 CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N 864f0574f5cSXin LI Summary: 865f0574f5cSXin LI The legacy MX4200 refclock is only built if is specifically 866f0574f5cSXin LI enabled, and furthermore additional code changes are required to 867f0574f5cSXin LI compile and use it. But it uses the libc functions snprintf() 868f0574f5cSXin LI and vsnprintf() incorrectly, which can lead to an out-of-bounds 869f0574f5cSXin LI memory write due to an improper handling of the return value of 870f0574f5cSXin LI snprintf()/vsnprintf(). Since the return value is used as an 871f0574f5cSXin LI iterator and it can be larger than the buffer's size, it is 872f0574f5cSXin LI possible for the iterator to point somewhere outside of the 873f0574f5cSXin LI allocated buffer space. This results in an out-of-bound memory 874f0574f5cSXin LI write. This behavior can be leveraged to overwrite a saved 875f0574f5cSXin LI instruction pointer on the stack and gain control over the 876f0574f5cSXin LI execution flow. During testing it was not possible to identify 877f0574f5cSXin LI any malicious usage for this vulnerability. Specifically, no 878f0574f5cSXin LI way for an attacker to exploit this vulnerability was ultimately 879f0574f5cSXin LI unveiled. However, it has the potential to be exploited, so the 880f0574f5cSXin LI code should be fixed. 881f0574f5cSXin LI Mitigation, if you have a Magnavox MX4200 refclock: 882f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 883f0574f5cSXin LI or the NTP Public Services Project Download Page. 884f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 885f0574f5cSXin LI ntpd (without -g) if it stops running. 886f0574f5cSXin LI Credit: 887f0574f5cSXin LI This weakness was discovered by Cure53. 888f0574f5cSXin LI 889f0574f5cSXin LI* NTP-01-002 NTP: Buffer Overflow in ntpq when fetching reslist from a 890f0574f5cSXin LI malicious ntpd (Medium) 891f0574f5cSXin LI Date Resolved: 21 Mar 2017 892f0574f5cSXin LI References: Sec 3377 / CVE-2017-6460 / VU#325339 893f0574f5cSXin LI Affects: All versions of ntpq, up to but not including ntp-4.2.8p10, and 894f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 895f0574f5cSXin LI CVSS2: MED 4.9 (AV:N/AC:H/Au:S/C:N/I:N/A:C) 896f0574f5cSXin LI CVSS3: MED 4.2 CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 897f0574f5cSXin LI Summary: 898f0574f5cSXin LI A stack buffer overflow in ntpq can be triggered by a malicious 899f0574f5cSXin LI ntpd server when ntpq requests the restriction list from the server. 900f0574f5cSXin LI This is due to a missing length check in the reslist() function. 901f0574f5cSXin LI It occurs whenever the function parses the server's response and 902f0574f5cSXin LI encounters a flagstr variable of an excessive length. The string 903f0574f5cSXin LI will be copied into a fixed-size buffer, leading to an overflow on 904f0574f5cSXin LI the function's stack-frame. Note well that this problem requires 905f0574f5cSXin LI a malicious server, and affects ntpq, not ntpd. 906f0574f5cSXin LI Mitigation: 907f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 908f0574f5cSXin LI or the NTP Public Services Project Download Page 909f0574f5cSXin LI If you can't upgrade your version of ntpq then if you want to know 910f0574f5cSXin LI the reslist of an instance of ntpd that you do not control, 911f0574f5cSXin LI know that if the target ntpd is malicious that it can send back 912f0574f5cSXin LI a response that intends to crash your ntpq process. 913f0574f5cSXin LI Credit: 914f0574f5cSXin LI This weakness was discovered by Cure53. 915f0574f5cSXin LI 916f0574f5cSXin LI* NTP-01-001 NTP: Makefile does not enforce Security Flags (Informational) 917f0574f5cSXin LI Date Resolved: 21 Mar 2017 918f0574f5cSXin LI References: Sec 3376 919f0574f5cSXin LI Affects: All versions of NTP, up to but not including ntp-4.2.8p10, and 920f0574f5cSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 921f0574f5cSXin LI CVSS2: N/A 922f0574f5cSXin LI CVSS3: N/A 923f0574f5cSXin LI Summary: 924f0574f5cSXin LI The build process for NTP has not, by default, provided compile 925f0574f5cSXin LI or link flags to offer "hardened" security options. Package 926f0574f5cSXin LI maintainers have always been able to provide hardening security 927f0574f5cSXin LI flags for their builds. As of ntp-4.2.8p10, the NTP build 928f0574f5cSXin LI system has a way to provide OS-specific hardening flags. Please 929f0574f5cSXin LI note that this is still not a really great solution because it 930f0574f5cSXin LI is specific to NTP builds. It's inefficient to have every 931f0574f5cSXin LI package supply, track and maintain this information for every 932f0574f5cSXin LI target build. It would be much better if there was a common way 933f0574f5cSXin LI for OSes to provide this information in a way that arbitrary 934f0574f5cSXin LI packages could benefit from it. 935f0574f5cSXin LI Mitigation: 936f0574f5cSXin LI Implement BCP-38. 937f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 938f0574f5cSXin LI or the NTP Public Services Project Download Page 939f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 940f0574f5cSXin LI ntpd (without -g) if it stops running. 941f0574f5cSXin LI Credit: 942f0574f5cSXin LI This weakness was reported by Cure53. 943f0574f5cSXin LI 944f0574f5cSXin LI* 0rigin DoS (Medium) 945f0574f5cSXin LI Date Resolved: 21 Mar 2017 946f0574f5cSXin LI References: Sec 3361 / CVE-2016-9042 / VU#325339 947f0574f5cSXin LI Affects: ntp-4.2.8p9 (21 Nov 2016), up to but not including ntp-4.2.8p10 948f0574f5cSXin LI CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C) (worst case) 949f0574f5cSXin LI 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) 950f0574f5cSXin LI Summary: 951f0574f5cSXin LI An exploitable denial of service vulnerability exists in the 952f0574f5cSXin LI origin timestamp check functionality of ntpd 4.2.8p9. A specially 953f0574f5cSXin LI crafted unauthenticated network packet can be used to reset the 954f0574f5cSXin LI expected origin timestamp for target peers. Legitimate replies 955f0574f5cSXin LI from targeted peers will fail the origin timestamp check (TEST2) 956f0574f5cSXin LI causing the reply to be dropped and creating a denial of service 957f0574f5cSXin LI condition. This vulnerability can only be exploited if the 958f0574f5cSXin LI attacker can spoof all of the servers. 959f0574f5cSXin LI Mitigation: 960f0574f5cSXin LI Implement BCP-38. 961f0574f5cSXin LI Configure enough servers/peers that an attacker cannot target 962f0574f5cSXin LI all of your time sources. 963f0574f5cSXin LI Upgrade to 4.2.8p10, or later, from the NTP Project Download Page 964f0574f5cSXin LI or the NTP Public Services Project Download Page 965f0574f5cSXin LI Properly monitor your ntpd instances, and auto-restart 966f0574f5cSXin LI ntpd (without -g) if it stops running. 967f0574f5cSXin LI Credit: 968f0574f5cSXin LI This weakness was discovered by Matthew Van Gundy of Cisco. 969f0574f5cSXin LI 970f0574f5cSXin LIOther fixes: 971f0574f5cSXin LI 972f0574f5cSXin LI* [Bug 3393] clang scan-build findings <perlinger@ntp.org> 973f0574f5cSXin LI* [Bug 3363] Support for openssl-1.1.0 without compatibility modes 974f0574f5cSXin LI - rework of patch set from <ntp.org@eroen.eu>. <perlinger@ntp.org> 975f0574f5cSXin LI* [Bug 3356] Bugfix 3072 breaks multicastclient <perlinger@ntp.org> 976f0574f5cSXin LI* [Bug 3216] libntp audio ioctl() args incorrectly cast to int 977f0574f5cSXin LI on 4.4BSD-Lite derived platforms <perlinger@ntp.org> 978f0574f5cSXin LI - original patch by Majdi S. Abbas 979f0574f5cSXin LI* [Bug 3215] 'make distcheck' fails with new BK repo format <perlinger@ntp.org> 980f0574f5cSXin LI* [Bug 3173] forking async worker: interrupted pipe I/O <perlinger@ntp.org> 981f0574f5cSXin LI - initial patch by Christos Zoulas 982f0574f5cSXin LI* [Bug 3139] (...) time_pps_create: Exec format error <perlinger@ntp.org> 983f0574f5cSXin LI - move loader API from 'inline' to proper source 984f0574f5cSXin LI - augment pathless dlls with absolute path to NTPD 985f0574f5cSXin LI - use 'msyslog()' instead of 'printf() 'for reporting trouble 986f0574f5cSXin LI* [Bug 3107] Incorrect Logic for Peer Event Limiting <perlinger@ntp.org> 987f0574f5cSXin LI - applied patch by Matthew Van Gundy 988f0574f5cSXin LI* [Bug 3065] Quiet warnings on NetBSD <perlinger@ntp.org> 989f0574f5cSXin LI - applied some of the patches provided by Havard. Not all of them 990f0574f5cSXin LI still match the current code base, and I did not touch libopt. 991f0574f5cSXin LI* [Bug 3062] Change the process name of forked DNS worker <perlinger@ntp.org> 992f0574f5cSXin LI - applied patch by Reinhard Max. See bugzilla for limitations. 993f0574f5cSXin LI* [Bug 2923] Trap Configuration Fail <perlinger@ntp.org> 994f0574f5cSXin LI - fixed dependency inversion from [Bug 2837] 995f0574f5cSXin LI* [Bug 2896] Nothing happens if minsane < maxclock < minclock 996f0574f5cSXin LI - produce ERROR log message about dysfunctional daemon. <perlinger@ntp.org> 997f0574f5cSXin LI* [Bug 2851] allow -4/-6 on restrict line with mask <perlinger@ntp.org> 998f0574f5cSXin LI - applied patch by Miroslav Lichvar for ntp4.2.6 compat 999f0574f5cSXin LI* [Bug 2645] out-of-bound pointers in ctl_putsys and decode_bitflags 1000f0574f5cSXin LI - Fixed these and some more locations of this pattern. 1001f0574f5cSXin LI Probably din't get them all, though. <perlinger@ntp.org> 1002f0574f5cSXin LI* Update copyright year. 1003f0574f5cSXin LI 1004f0574f5cSXin LI-- 1005f0574f5cSXin LI(4.2.8p9-win) 2017/02/01 Released by Harlan Stenn <stenn@ntp.org> 1006f0574f5cSXin LI 1007f0574f5cSXin LI* [Bug 3144] NTP does not build without openSSL. <perlinger@ntp.org> 1008f0574f5cSXin LI - added missed changeset for automatic openssl lib detection 1009f0574f5cSXin LI - fixed some minor warning issues 1010f0574f5cSXin LI* [Bug 3095] More compatibility with openssl 1.1. <perlinger@ntp.org> 1011f0574f5cSXin LI* configure.ac cleanup. stenn@ntp.org 1012f0574f5cSXin LI* openssl configure cleanup. stenn@ntp.org 1013f0574f5cSXin LI 1014f0574f5cSXin LI-- 1015f391d6bcSXin LINTP 4.2.8p9 (Harlan Stenn <stenn@ntp.org>, 2016/11/21) 1016f391d6bcSXin LI 1017f391d6bcSXin LIFocus: Security, Bug fixes, enhancements. 1018f391d6bcSXin LI 1019f391d6bcSXin LISeverity: HIGH 1020f391d6bcSXin LI 1021f391d6bcSXin LIIn addition to bug fixes and enhancements, this release fixes the 1022f391d6bcSXin LIfollowing 1 high- (Windows only), 2 medium-, 2 medium-/low, and 1023f391d6bcSXin LI5 low-severity vulnerabilities, and provides 28 other non-security 1024f391d6bcSXin LIfixes and improvements: 1025f391d6bcSXin LI 1026f391d6bcSXin LI* Trap crash 1027f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1028f391d6bcSXin LI References: Sec 3119 / CVE-2016-9311 / VU#633847 1029f391d6bcSXin LI Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not 1030f391d6bcSXin LI including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94. 1031f391d6bcSXin LI CVSS2: MED 4.9 (AV:N/AC:H/Au:N/C:N/I:N/A:C) 1032f391d6bcSXin LI CVSS3: MED 4.4 CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H 1033f391d6bcSXin LI Summary: 1034f391d6bcSXin LI ntpd does not enable trap service by default. If trap service 1035f391d6bcSXin LI has been explicitly enabled, an attacker can send a specially 1036f391d6bcSXin LI crafted packet to cause a null pointer dereference that will 1037f391d6bcSXin LI crash ntpd, resulting in a denial of service. 1038f391d6bcSXin LI Mitigation: 1039f391d6bcSXin LI Implement BCP-38. 1040f391d6bcSXin LI Use "restrict default noquery ..." in your ntp.conf file. Only 1041f391d6bcSXin LI allow mode 6 queries from trusted networks and hosts. 1042f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1043f391d6bcSXin LI or the NTP Public Services Project Download Page 1044f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1045f391d6bcSXin LI (without -g) if it stops running. 1046f391d6bcSXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco. 1047f391d6bcSXin LI 1048f391d6bcSXin LI* Mode 6 information disclosure and DDoS vector 1049f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1050f391d6bcSXin LI References: Sec 3118 / CVE-2016-9310 / VU#633847 1051f391d6bcSXin LI Affects: ntp-4.0.90 (21 July 1999), possibly earlier, up to but not 1052f391d6bcSXin LI including 4.2.8p9, and ntp-4.3.0 up to but not including ntp-4.3.94. 1053f391d6bcSXin LI CVSS2: MED 6.4 (AV:A/AC:L/Au:N/C:N/I:N/A:P) 1054f391d6bcSXin LI CVSS3: MED 6.5 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L 1055f391d6bcSXin LI Summary: 1056f391d6bcSXin LI An exploitable configuration modification vulnerability exists 1057f391d6bcSXin LI in the control mode (mode 6) functionality of ntpd. If, against 1058f391d6bcSXin LI long-standing BCP recommendations, "restrict default noquery ..." 1059f391d6bcSXin LI is not specified, a specially crafted control mode packet can set 1060f391d6bcSXin LI ntpd traps, providing information disclosure and DDoS 1061f391d6bcSXin LI amplification, and unset ntpd traps, disabling legitimate 1062f391d6bcSXin LI monitoring. A remote, unauthenticated, network attacker can 1063f391d6bcSXin LI trigger this vulnerability. 1064f391d6bcSXin LI Mitigation: 1065f391d6bcSXin LI Implement BCP-38. 1066f391d6bcSXin LI Use "restrict default noquery ..." in your ntp.conf file. 1067f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1068f391d6bcSXin LI or the NTP Public Services Project Download Page 1069f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1070f391d6bcSXin LI (without -g) if it stops running. 1071f391d6bcSXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco. 1072f391d6bcSXin LI 1073f391d6bcSXin LI* Broadcast Mode Replay Prevention DoS 1074f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1075f391d6bcSXin LI References: Sec 3114 / CVE-2016-7427 / VU#633847 1076f391d6bcSXin LI Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and 1077f391d6bcSXin LI ntp-4.3.90 up to, but not including ntp-4.3.94. 1078f391d6bcSXin LI CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P) 1079f391d6bcSXin LI CVSS3: MED 4.3 CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L 1080f391d6bcSXin LI Summary: 1081f391d6bcSXin LI The broadcast mode of NTP is expected to only be used in a 1082f391d6bcSXin LI trusted network. If the broadcast network is accessible to an 1083f391d6bcSXin LI attacker, a potentially exploitable denial of service 1084f391d6bcSXin LI vulnerability in ntpd's broadcast mode replay prevention 1085f391d6bcSXin LI functionality can be abused. An attacker with access to the NTP 1086f391d6bcSXin LI broadcast domain can periodically inject specially crafted 1087f391d6bcSXin LI broadcast mode NTP packets into the broadcast domain which, 1088f391d6bcSXin LI while being logged by ntpd, can cause ntpd to reject broadcast 1089f391d6bcSXin LI mode packets from legitimate NTP broadcast servers. 1090f391d6bcSXin LI Mitigation: 1091f391d6bcSXin LI Implement BCP-38. 1092f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1093f391d6bcSXin LI or the NTP Public Services Project Download Page 1094f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1095f391d6bcSXin LI (without -g) if it stops running. 1096f391d6bcSXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco. 1097f391d6bcSXin LI 1098f391d6bcSXin LI* Broadcast Mode Poll Interval Enforcement DoS 1099f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1100f391d6bcSXin LI References: Sec 3113 / CVE-2016-7428 / VU#633847 1101f391d6bcSXin LI Affects: ntp-4.2.8p6, up to but not including ntp-4.2.8p9, and 1102f391d6bcSXin LI ntp-4.3.90 up to, but not including ntp-4.3.94 1103f391d6bcSXin LI CVSS2: LOW 3.3 (AV:A/AC:L/Au:N/C:N/I:N/A:P) 1104f391d6bcSXin LI CVSS3: MED 4.3 CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L 1105f391d6bcSXin LI Summary: 1106f391d6bcSXin LI The broadcast mode of NTP is expected to only be used in a 1107f391d6bcSXin LI trusted network. If the broadcast network is accessible to an 1108f391d6bcSXin LI attacker, a potentially exploitable denial of service 1109f391d6bcSXin LI vulnerability in ntpd's broadcast mode poll interval enforcement 1110f391d6bcSXin LI functionality can be abused. To limit abuse, ntpd restricts the 1111f391d6bcSXin LI rate at which each broadcast association will process incoming 1112f391d6bcSXin LI packets. ntpd will reject broadcast mode packets that arrive 1113f391d6bcSXin LI before the poll interval specified in the preceding broadcast 1114f391d6bcSXin LI packet expires. An attacker with access to the NTP broadcast 1115f391d6bcSXin LI domain can send specially crafted broadcast mode NTP packets to 1116f391d6bcSXin LI the broadcast domain which, while being logged by ntpd, will 1117f391d6bcSXin LI cause ntpd to reject broadcast mode packets from legitimate NTP 1118f391d6bcSXin LI broadcast servers. 1119f391d6bcSXin LI Mitigation: 1120f391d6bcSXin LI Implement BCP-38. 1121f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1122f391d6bcSXin LI or the NTP Public Services Project Download Page 1123f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1124f391d6bcSXin LI (without -g) if it stops running. 1125f391d6bcSXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco. 1126f391d6bcSXin LI 1127f391d6bcSXin LI* Windows: ntpd DoS by oversized UDP packet 1128f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1129f391d6bcSXin LI References: Sec 3110 / CVE-2016-9312 / VU#633847 1130f391d6bcSXin LI Affects Windows only: ntp-4.?.?, up to but not including ntp-4.2.8p9, 1131f391d6bcSXin LI and ntp-4.3.0 up to, but not including ntp-4.3.94. 1132f391d6bcSXin LI CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C) 1133f391d6bcSXin LI CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H 1134f391d6bcSXin LI Summary: 1135f391d6bcSXin LI If a vulnerable instance of ntpd on Windows receives a crafted 1136f391d6bcSXin LI malicious packet that is "too big", ntpd will stop working. 1137f391d6bcSXin LI Mitigation: 1138f391d6bcSXin LI Implement BCP-38. 1139f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1140f391d6bcSXin LI or the NTP Public Services Project Download Page 1141f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1142f391d6bcSXin LI (without -g) if it stops running. 1143f391d6bcSXin LI Credit: This weakness was discovered by Robert Pajak of ABB. 1144f391d6bcSXin LI 1145f391d6bcSXin LI* 0rigin (zero origin) issues 1146f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1147f391d6bcSXin LI References: Sec 3102 / CVE-2016-7431 / VU#633847 1148f391d6bcSXin LI Affects: ntp-4.2.8p8, and ntp-4.3.93. 1149f391d6bcSXin LI CVSS2: MED 5.0 (AV:N/AC:L/Au:N/C:N/I:P/A:N) 1150f391d6bcSXin LI CVSS3: MED 5.3 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N 1151f391d6bcSXin LI Summary: 1152f391d6bcSXin LI Zero Origin timestamp problems were fixed by Bug 2945 in 1153f391d6bcSXin LI ntp-4.2.8p6. However, subsequent timestamp validation checks 1154f391d6bcSXin LI introduced a regression in the handling of some Zero origin 1155f391d6bcSXin LI timestamp checks. 1156f391d6bcSXin LI Mitigation: 1157f391d6bcSXin LI Implement BCP-38. 1158f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1159f391d6bcSXin LI or the NTP Public Services Project Download Page 1160f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1161f391d6bcSXin LI (without -g) if it stops running. 1162f391d6bcSXin LI Credit: This weakness was discovered by Sharon Goldberg and Aanchal 1163f391d6bcSXin LI Malhotra of Boston University. 1164f391d6bcSXin LI 1165f391d6bcSXin LI* read_mru_list() does inadequate incoming packet checks 1166f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1167f391d6bcSXin LI References: Sec 3082 / CVE-2016-7434 / VU#633847 1168f391d6bcSXin LI Affects: ntp-4.2.7p22, up to but not including ntp-4.2.8p9, and 1169f391d6bcSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. 1170f391d6bcSXin LI CVSS2: LOW 3.8 (AV:L/AC:H/Au:S/C:N/I:N/A:C) 1171f391d6bcSXin LI CVSS3: LOW 3.8 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 1172f391d6bcSXin LI Summary: 1173f391d6bcSXin LI If ntpd is configured to allow mrulist query requests from a 1174f391d6bcSXin LI server that sends a crafted malicious packet, ntpd will crash 1175f391d6bcSXin LI on receipt of that crafted malicious mrulist query packet. 1176f391d6bcSXin LI Mitigation: 1177f391d6bcSXin LI Only allow mrulist query packets from trusted hosts. 1178f391d6bcSXin LI Implement BCP-38. 1179f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1180f391d6bcSXin LI or the NTP Public Services Project Download Page 1181f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1182f391d6bcSXin LI (without -g) if it stops running. 1183f391d6bcSXin LI Credit: This weakness was discovered by Magnus Stubman. 1184f391d6bcSXin LI 1185f391d6bcSXin LI* Attack on interface selection 1186f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1187f391d6bcSXin LI References: Sec 3072 / CVE-2016-7429 / VU#633847 1188f391d6bcSXin LI Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and 1189f391d6bcSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94 1190f391d6bcSXin LI CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P) 1191f391d6bcSXin LI CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 1192f391d6bcSXin LI Summary: 1193f391d6bcSXin LI When ntpd receives a server response on a socket that corresponds 1194f391d6bcSXin LI to a different interface than was used for the request, the peer 1195f391d6bcSXin LI structure is updated to use the interface for new requests. If 1196f391d6bcSXin LI ntpd is running on a host with multiple interfaces in separate 1197f391d6bcSXin LI networks and the operating system doesn't check source address in 1198f391d6bcSXin LI received packets (e.g. rp_filter on Linux is set to 0), an 1199f391d6bcSXin LI attacker that knows the address of the source can send a packet 1200f391d6bcSXin LI with spoofed source address which will cause ntpd to select wrong 1201f391d6bcSXin LI interface for the source and prevent it from sending new requests 1202f391d6bcSXin LI until the list of interfaces is refreshed, which happens on 1203f391d6bcSXin LI routing changes or every 5 minutes by default. If the attack is 1204f391d6bcSXin LI repeated often enough (once per second), ntpd will not be able to 1205f391d6bcSXin LI synchronize with the source. 1206f391d6bcSXin LI Mitigation: 1207f391d6bcSXin LI Implement BCP-38. 1208f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1209f391d6bcSXin LI or the NTP Public Services Project Download Page 1210f391d6bcSXin LI If you are going to configure your OS to disable source address 1211f391d6bcSXin LI checks, also configure your firewall configuration to control 1212f391d6bcSXin LI what interfaces can receive packets from what networks. 1213f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1214f391d6bcSXin LI (without -g) if it stops running. 1215f391d6bcSXin LI Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 1216f391d6bcSXin LI 1217f391d6bcSXin LI* Client rate limiting and server responses 1218f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1219f391d6bcSXin LI References: Sec 3071 / CVE-2016-7426 / VU#633847 1220f391d6bcSXin LI Affects: ntp-4.2.5p203, up to but not including ntp-4.2.8p9, and 1221f391d6bcSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94 1222f391d6bcSXin LI CVSS2: LOW 1.0 (AV:L/AC:H/Au:S/C:N/I:N/A:P) 1223f391d6bcSXin LI CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 1224f391d6bcSXin LI Summary: 1225f391d6bcSXin LI When ntpd is configured with rate limiting for all associations 1226f391d6bcSXin LI (restrict default limited in ntp.conf), the limits are applied 1227f391d6bcSXin LI also to responses received from its configured sources. An 1228f391d6bcSXin LI attacker who knows the sources (e.g., from an IPv4 refid in 1229f391d6bcSXin LI server response) and knows the system is (mis)configured in this 1230f391d6bcSXin LI way can periodically send packets with spoofed source address to 1231f391d6bcSXin LI keep the rate limiting activated and prevent ntpd from accepting 1232f391d6bcSXin LI valid responses from its sources. 1233f391d6bcSXin LI 1234f391d6bcSXin LI While this blanket rate limiting can be useful to prevent 1235f391d6bcSXin LI brute-force attacks on the origin timestamp, it allows this DoS 1236f391d6bcSXin LI attack. Similarly, it allows the attacker to prevent mobilization 1237f391d6bcSXin LI of ephemeral associations. 1238f391d6bcSXin LI Mitigation: 1239f391d6bcSXin LI Implement BCP-38. 1240f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1241f391d6bcSXin LI or the NTP Public Services Project Download Page 1242f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1243f391d6bcSXin LI (without -g) if it stops running. 1244f391d6bcSXin LI Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 1245f391d6bcSXin LI 1246f391d6bcSXin LI* Fix for bug 2085 broke initial sync calculations 1247f391d6bcSXin LI Date Resolved: 21 November 2016; Dev (4.3.94) 21 November 2016 1248f391d6bcSXin LI References: Sec 3067 / CVE-2016-7433 / VU#633847 1249f391d6bcSXin LI Affects: ntp-4.2.7p385, up to but not including ntp-4.2.8p9, and 1250f391d6bcSXin LI ntp-4.3.0 up to, but not including ntp-4.3.94. But the 1251f391d6bcSXin LI root-distance calculation in general is incorrect in all versions 1252f391d6bcSXin LI of ntp-4 until this release. 1253f391d6bcSXin LI CVSS2: LOW 1.2 (AV:L/AC:H/Au:N/C:N/I:N/A:P) 1254f391d6bcSXin LI CVSS3: LOW 1.6 CVSS:3.0/AV:P/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:L 1255f391d6bcSXin LI Summary: 1256f391d6bcSXin LI Bug 2085 described a condition where the root delay was included 1257f391d6bcSXin LI twice, causing the jitter value to be higher than expected. Due 1258f391d6bcSXin LI to a misinterpretation of a small-print variable in The Book, the 1259f391d6bcSXin LI fix for this problem was incorrect, resulting in a root distance 1260f391d6bcSXin LI that did not include the peer dispersion. The calculations and 1261f391d6bcSXin LI formulae have been reviewed and reconciled, and the code has been 1262f391d6bcSXin LI updated accordingly. 1263f391d6bcSXin LI Mitigation: 1264f391d6bcSXin LI Upgrade to 4.2.8p9, or later, from the NTP Project Download Page 1265f391d6bcSXin LI or the NTP Public Services Project Download Page 1266f391d6bcSXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1267f391d6bcSXin LI (without -g) if it stops running. 1268f391d6bcSXin LI Credit: This weakness was discovered independently by Brian Utterback of 1269f391d6bcSXin LI Oracle, and Sharon Goldberg and Aanchal Malhotra of Boston University. 1270f391d6bcSXin LI 1271f391d6bcSXin LIOther fixes: 1272f391d6bcSXin LI 1273f391d6bcSXin LI* [Bug 3142] bug in netmask prefix length detection <perlinger@ntp.org> 1274f391d6bcSXin LI* [Bug 3138] gpsdjson refclock should honor fudgetime1. stenn@ntp.org 1275f391d6bcSXin LI* [Bug 3129] Unknown hosts can put resolver thread into a hard loop 1276f391d6bcSXin LI - moved retry decision where it belongs. <perlinger@ntp.org> 1277f391d6bcSXin LI* [Bug 3125] NTPD doesn't fully start when ntp.conf entries are out of order 1278f391d6bcSXin LI using the loopback-ppsapi-provider.dll <perlinger@ntp.org> 1279f391d6bcSXin LI* [Bug 3116] unit tests for NTP time stamp expansion. <perlinger@ntp.org> 1280f391d6bcSXin LI* [Bug 3100] ntpq can't retrieve daemon_version <perlinger@ntp.org> 1281f391d6bcSXin LI - fixed extended sysvar lookup (bug introduced with bug 3008 fix) 1282f391d6bcSXin LI* [Bug 3095] Compatibility with openssl 1.1 <perlinger@ntp.org> 1283f391d6bcSXin LI - applied patches by Kurt Roeckx <kurt@roeckx.be> to source 1284f391d6bcSXin LI - added shim layer for SSL API calls with issues (both directions) 1285f391d6bcSXin LI* [Bug 3089] Serial Parser does not work anymore for hopfser like device 1286f391d6bcSXin LI - simplified / refactored hex-decoding in driver. <perlinger@ntp.org> 1287f391d6bcSXin LI* [Bug 3084] update-leap mis-parses the leapfile name. HStenn. 1288f391d6bcSXin LI* [Bug 3068] Linker warnings when building on Solaris. perlinger@ntp.org 1289f391d6bcSXin LI - applied patch thanks to Andrew Stormont <andyjstormont@gmail.com> 1290f391d6bcSXin LI* [Bug 3067] Root distance calculation needs improvement. HStenn 1291f391d6bcSXin LI* [Bug 3066] NMEA clock ignores pps. perlinger@ntp.org 1292f391d6bcSXin LI - PPS-HACK works again. 1293f391d6bcSXin LI* [Bug 3059] Potential buffer overrun from oversized hash <perlinger@ntp.org> 1294f391d6bcSXin LI - applied patch by Brian Utterback <brian.utterback@oracle.com> 1295f391d6bcSXin LI* [Bug 3053] ntp_loopfilter.c frequency calc precedence error. Sarah White. 1296f391d6bcSXin LI* [Bug 3050] Fix for bug #2960 causes [...] spurious error message. 1297f391d6bcSXin LI <perlinger@ntp.org> 1298f391d6bcSXin LI - patches by Reinhard Max <max@suse.com> and Havard Eidnes <he@uninett.no> 1299f391d6bcSXin LI* [Bug 3047] Fix refclock_jjy C-DEX JST2000. abe@ntp.org 1300f391d6bcSXin LI - Patch provided by Kuramatsu. 1301f391d6bcSXin LI* [Bug 3021] unity_fixture.c needs pragma weak <perlinger@ntp.org> 1302f391d6bcSXin LI - removed unnecessary & harmful decls of 'setUp()' & 'tearDown()' 1303f391d6bcSXin LI* [Bug 3019] Windows: ERROR_HOST_UNREACHABLE block packet processing. DMayer 1304f391d6bcSXin LI* [Bug 2998] sntp/tests/packetProcessing.c broken without openssl. JPerlinger 1305f391d6bcSXin LI* [Bug 2961] sntp/tests/packetProcessing.c assumes AUTOKEY. HStenn. 1306f391d6bcSXin LI* [Bug 2959] refclock_jupiter: gps week correction <perlinger@ntp.org> 1307f391d6bcSXin LI - fixed GPS week expansion to work based on build date. Special thanks 1308f391d6bcSXin LI to Craig Leres for initial patch and testing. 1309f391d6bcSXin LI* [Bug 2951] ntpd tests fail: multiple definition of `send_via_ntp_signd' 1310f391d6bcSXin LI - fixed Makefile.am <perlinger@ntp.org> 1311f391d6bcSXin LI* [Bug 2689] ATOM driver processes last PPS pulse at startup, 1312f391d6bcSXin LI even if it is very old <perlinger@ntp.org> 1313f391d6bcSXin LI - make sure PPS source is alive before processing samples 1314f391d6bcSXin LI - improve stability close to the 500ms phase jump (phase gate) 1315f391d6bcSXin LI* Fix typos in include/ntp.h. 1316f391d6bcSXin LI* Shim X509_get_signature_nid() if needed 1317f391d6bcSXin LI* git author attribution cleanup 1318f391d6bcSXin LI* bk ignore file cleanup 1319f391d6bcSXin LI* remove locks in Windows IO, use rpc-like thread synchronisation instead 1320f391d6bcSXin LI 1321f391d6bcSXin LI--- 1322e27abb66SXin LINTP 4.2.8p8 (Harlan Stenn <stenn@ntp.org>, 2016/06/02) 1323e27abb66SXin LI 1324e27abb66SXin LIFocus: Security, Bug fixes, enhancements. 1325e27abb66SXin LI 1326e27abb66SXin LISeverity: HIGH 1327e27abb66SXin LI 1328e27abb66SXin LIIn addition to bug fixes and enhancements, this release fixes the 1329e27abb66SXin LIfollowing 1 high- and 4 low-severity vulnerabilities: 1330e27abb66SXin LI 1331e27abb66SXin LI* CRYPTO_NAK crash 1332e27abb66SXin LI Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016 1333e27abb66SXin LI References: Sec 3046 / CVE-2016-4957 / VU#321640 1334e27abb66SXin LI Affects: ntp-4.2.8p7, and ntp-4.3.92. 1335e27abb66SXin LI CVSS2: HIGH 7.8 (AV:N/AC:L/Au:N/C:N/I:N/A:C) 1336e27abb66SXin LI CVSS3: HIGH 7.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H 1337e27abb66SXin LI Summary: The fix for Sec 3007 in ntp-4.2.8p7 contained a bug that 1338e27abb66SXin LI could cause ntpd to crash. 1339e27abb66SXin LI Mitigation: 1340e27abb66SXin LI Implement BCP-38. 1341e27abb66SXin LI Upgrade to 4.2.8p8, or later, from the NTP Project Download Page 1342e27abb66SXin LI or the NTP Public Services Project Download Page 1343e27abb66SXin LI If you cannot upgrade from 4.2.8p7, the only other alternatives 1344e27abb66SXin LI are to patch your code or filter CRYPTO_NAK packets. 1345e27abb66SXin LI Properly monitor your ntpd instances, and auto-restart ntpd 1346e27abb66SXin LI (without -g) if it stops running. 1347e27abb66SXin LI Credit: This weakness was discovered by Nicolas Edet of Cisco. 1348e27abb66SXin LI 1349e27abb66SXin LI* Bad authentication demobilizes ephemeral associations 1350e27abb66SXin LI Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016 1351e27abb66SXin LI References: Sec 3045 / CVE-2016-4953 / VU#321640 1352e27abb66SXin LI Affects: ntp-4, up to but not including ntp-4.2.8p8, and 1353e27abb66SXin LI ntp-4.3.0 up to, but not including ntp-4.3.93. 1354e27abb66SXin LI CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P) 1355e27abb66SXin LI CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L 1356e27abb66SXin LI Summary: An attacker who knows the origin timestamp and can send a 1357e27abb66SXin LI spoofed packet containing a CRYPTO-NAK to an ephemeral peer 1358e27abb66SXin LI target before any other response is sent can demobilize that 1359e27abb66SXin LI association. 1360e27abb66SXin LI Mitigation: 1361e27abb66SXin LI Implement BCP-38. 1362e27abb66SXin LI Upgrade to 4.2.8p8, or later, from the NTP Project Download Page 1363e27abb66SXin LI or the NTP Public Services Project Download Page 1364e27abb66SXin LI Properly monitor your ntpd instances. 1365e27abb66SXin LI Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 1366e27abb66SXin LI 1367e27abb66SXin LI* Processing spoofed server packets 1368e27abb66SXin LI Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016 1369e27abb66SXin LI References: Sec 3044 / CVE-2016-4954 / VU#321640 1370e27abb66SXin LI Affects: ntp-4, up to but not including ntp-4.2.8p8, and 1371e27abb66SXin LI ntp-4.3.0 up to, but not including ntp-4.3.93. 1372e27abb66SXin LI CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P) 1373e27abb66SXin LI CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L 1374e27abb66SXin LI Summary: An attacker who is able to spoof packets with correct origin 1375e27abb66SXin LI timestamps from enough servers before the expected response 1376e27abb66SXin LI packets arrive at the target machine can affect some peer 1377e27abb66SXin LI variables and, for example, cause a false leap indication to be set. 1378e27abb66SXin LI Mitigation: 1379e27abb66SXin LI Implement BCP-38. 1380e27abb66SXin LI Upgrade to 4.2.8p8, or later, from the NTP Project Download Page 1381e27abb66SXin LI or the NTP Public Services Project Download Page 1382e27abb66SXin LI Properly monitor your ntpd instances. 1383e27abb66SXin LI Credit: This weakness was discovered by Jakub Prokes of Red Hat. 1384e27abb66SXin LI 1385e27abb66SXin LI* Autokey association reset 1386e27abb66SXin LI Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016 1387e27abb66SXin LI References: Sec 3043 / CVE-2016-4955 / VU#321640 1388e27abb66SXin LI Affects: ntp-4, up to but not including ntp-4.2.8p8, and 1389e27abb66SXin LI ntp-4.3.0 up to, but not including ntp-4.3.93. 1390e27abb66SXin LI CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P) 1391e27abb66SXin LI CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L 1392e27abb66SXin LI Summary: An attacker who is able to spoof a packet with a correct 1393e27abb66SXin LI origin timestamp before the expected response packet arrives at 1394e27abb66SXin LI the target machine can send a CRYPTO_NAK or a bad MAC and cause 1395e27abb66SXin LI the association's peer variables to be cleared. If this can be 1396e27abb66SXin LI done often enough, it will prevent that association from working. 1397e27abb66SXin LI Mitigation: 1398e27abb66SXin LI Implement BCP-38. 1399e27abb66SXin LI Upgrade to 4.2.8p8, or later, from the NTP Project Download Page 1400e27abb66SXin LI or the NTP Public Services Project Download Page 1401e27abb66SXin LI Properly monitor your ntpd instances. 1402e27abb66SXin LI Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 1403e27abb66SXin LI 1404e27abb66SXin LI* Broadcast interleave 1405e27abb66SXin LI Date Resolved: 02 June 2016; Dev (4.3.93) 02 June 2016 1406e27abb66SXin LI References: Sec 3042 / CVE-2016-4956 / VU#321640 1407e27abb66SXin LI Affects: ntp-4, up to but not including ntp-4.2.8p8, and 1408e27abb66SXin LI ntp-4.3.0 up to, but not including ntp-4.3.93. 1409e27abb66SXin LI CVSS2: LOW 2.6 (AV:N/AC:H/Au:N/C:N/I:N/A:P) 1410e27abb66SXin LI CVSS3: LOW 3.7 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L 1411e27abb66SXin LI Summary: The fix for NtpBug2978 does not cover broadcast associations, 1412e27abb66SXin LI so broadcast clients can be triggered to flip into interleave mode. 1413e27abb66SXin LI Mitigation: 1414e27abb66SXin LI Implement BCP-38. 1415e27abb66SXin LI Upgrade to 4.2.8p8, or later, from the NTP Project Download Page 1416e27abb66SXin LI or the NTP Public Services Project Download Page 1417e27abb66SXin LI Properly monitor your ntpd instances. 1418e27abb66SXin LI Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 1419e27abb66SXin LI 1420e27abb66SXin LIOther fixes: 1421e27abb66SXin LI* [Bug 3038] NTP fails to build in VS2015. perlinger@ntp.org 1422e27abb66SXin LI - provide build environment 1423e27abb66SXin LI - 'wint_t' and 'struct timespec' defined by VS2015 1424e27abb66SXin LI - fixed print()/scanf() format issues 1425e27abb66SXin LI* [Bug 3052] Add a .gitignore file. Edmund Wong. 1426e27abb66SXin LI* [Bug 3054] miscopt.html documents the allan intercept in seconds. SWhite. 1427e27abb66SXin LI* [Bug 3058] fetch_timestamp() mishandles 64-bit alignment. Brian Utterback, 1428e27abb66SXin LI JPerlinger, HStenn. 1429e27abb66SXin LI* Fix typo in ntp-wait and plot_summary. HStenn. 1430e27abb66SXin LI* Make sure we have an "author" file for git imports. HStenn. 1431e27abb66SXin LI* Update the sntp problem tests for MacOS. HStenn. 1432e27abb66SXin LI 1433e27abb66SXin LI--- 14344990d495SXin LINTP 4.2.8p7 (Harlan Stenn <stenn@ntp.org>, 2016/04/26) 14353311ff84SXin LI 14364990d495SXin LIFocus: Security, Bug fixes, enhancements. 14374990d495SXin LI 14384990d495SXin LISeverity: MEDIUM 14394990d495SXin LI 14404990d495SXin LIWhen building NTP from source, there is a new configure option 14414990d495SXin LIavailable, --enable-dynamic-interleave. More information on this below. 14424990d495SXin LI 14434990d495SXin LIAlso note that ntp-4.2.8p7 logs more "unexpected events" than previous 14444990d495SXin LIversions of ntp. These events have almost certainly happened in the 14454990d495SXin LIpast, it's just that they were silently counted and not logged. With 14464990d495SXin LIthe increasing awareness around security, we feel it's better to clearly 14474990d495SXin LIlog these events to help detect abusive behavior. This increased 14484990d495SXin LIlogging can also help detect other problems, too. 14494990d495SXin LI 14504990d495SXin LIIn addition to bug fixes and enhancements, this release fixes the 14514990d495SXin LIfollowing 9 low- and medium-severity vulnerabilities: 14524990d495SXin LI 14534990d495SXin LI* Improve NTP security against buffer comparison timing attacks, 14544990d495SXin LI AKA: authdecrypt-timing 14554990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 14564990d495SXin LI References: Sec 2879 / CVE-2016-1550 14574990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 14584990d495SXin LI 4.3.0 up to, but not including 4.3.92 14594990d495SXin LI CVSSv2: LOW 2.6 - (AV:L/AC:H/Au:N/C:P/I:P/A:N) 14604990d495SXin LI CVSSv3: MED 4.0 - CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N 14614990d495SXin LI Summary: Packet authentication tests have been performed using 14624990d495SXin LI memcmp() or possibly bcmp(), and it is potentially possible 14634990d495SXin LI for a local or perhaps LAN-based attacker to send a packet with 14644990d495SXin LI an authentication payload and indirectly observe how much of 14654990d495SXin LI the digest has matched. 14664990d495SXin LI Mitigation: 14674990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 14684990d495SXin LI or the NTP Public Services Project Download Page. 14694990d495SXin LI Properly monitor your ntpd instances. 14704990d495SXin LI Credit: This weakness was discovered independently by Loganaden 14714990d495SXin LI Velvindron, and Matthew Van Gundy and Stephen Gray of Cisco ASIG. 14724990d495SXin LI 14734990d495SXin LI* Zero origin timestamp bypass: Additional KoD checks. 14744990d495SXin LI References: Sec 2945 / Sec 2901 / CVE-2015-8138 14754990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, 14764990d495SXin LI Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.92. 14774990d495SXin LI 14784990d495SXin LI* peer associations were broken by the fix for NtpBug2899 14794990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 14804990d495SXin LI References: Sec 2952 / CVE-2015-7704 14814990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 14824990d495SXin LI 4.3.0 up to, but not including 4.3.92 14834990d495SXin LI CVSSv2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P) 14844990d495SXin LI Summary: The fix for NtpBug2952 in ntp-4.2.8p5 to address broken peer 14854990d495SXin LI associations did not address all of the issues. 14864990d495SXin LI Mitigation: 14874990d495SXin LI Implement BCP-38. 14884990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 14894990d495SXin LI or the NTP Public Services Project Download Page 14904990d495SXin LI If you can't upgrade, use "server" associations instead of 14914990d495SXin LI "peer" associations. 14924990d495SXin LI Monitor your ntpd instances. 14934990d495SXin LI Credit: This problem was discovered by Michael Tatarinov. 14944990d495SXin LI 14954990d495SXin LI* Validate crypto-NAKs, AKA: CRYPTO-NAK DoS 14964990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 14974990d495SXin LI References: Sec 3007 / CVE-2016-1547 / VU#718152 14984990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 14994990d495SXin LI 4.3.0 up to, but not including 4.3.92 15004990d495SXin LI CVSS2: MED 4.3 - (AV:N/AC:M/Au:N/C:N/I:N/A:P) 15014990d495SXin LI CVSS3: MED 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L 15024990d495SXin LI Summary: For ntp-4 versions up to but not including ntp-4.2.8p7, an 15034990d495SXin LI off-path attacker can cause a preemptable client association to 15044990d495SXin LI be demobilized by sending a crypto NAK packet to a victim client 15054990d495SXin LI with a spoofed source address of an existing associated peer. 15064990d495SXin LI This is true even if authentication is enabled. 15074990d495SXin LI 15084990d495SXin LI Furthermore, if the attacker keeps sending crypto NAK packets, 15094990d495SXin LI for example one every second, the victim never has a chance to 15104990d495SXin LI reestablish the association and synchronize time with that 15114990d495SXin LI legitimate server. 15124990d495SXin LI 15134990d495SXin LI For ntp-4.2.8 thru ntp-4.2.8p6 there is less risk because more 15144990d495SXin LI stringent checks are performed on incoming packets, but there 15154990d495SXin LI are still ways to exploit this vulnerability in versions before 15164990d495SXin LI ntp-4.2.8p7. 15174990d495SXin LI Mitigation: 15184990d495SXin LI Implement BCP-38. 15194990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 15204990d495SXin LI or the NTP Public Services Project Download Page 152109100258SXin LI Properly monitor your ntpd instances 15224990d495SXin LI Credit: This weakness was discovered by Stephen Gray and 15234990d495SXin LI Matthew Van Gundy of Cisco ASIG. 15244990d495SXin LI 15254990d495SXin LI* ctl_getitem() return value not always checked 15264990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 15274990d495SXin LI References: Sec 3008 / CVE-2016-2519 15284990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 15294990d495SXin LI 4.3.0 up to, but not including 4.3.92 15304990d495SXin LI CVSSv2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C) 15314990d495SXin LI CVSSv3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 15324990d495SXin LI Summary: ntpq and ntpdc can be used to store and retrieve information 15334990d495SXin LI in ntpd. It is possible to store a data value that is larger 15344990d495SXin LI than the size of the buffer that the ctl_getitem() function of 15354990d495SXin LI ntpd uses to report the return value. If the length of the 15364990d495SXin LI requested data value returned by ctl_getitem() is too large, 15374990d495SXin LI the value NULL is returned instead. There are 2 cases where the 15384990d495SXin LI return value from ctl_getitem() was not directly checked to make 15394990d495SXin LI sure it's not NULL, but there are subsequent INSIST() checks 15404990d495SXin LI that make sure the return value is not NULL. There are no data 15414990d495SXin LI values ordinarily stored in ntpd that would exceed this buffer 15424990d495SXin LI length. But if one has permission to store values and one stores 15434990d495SXin LI a value that is "too large", then ntpd will abort if an attempt 15444990d495SXin LI is made to read that oversized value. 15454990d495SXin LI Mitigation: 15464990d495SXin LI Implement BCP-38. 15474990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 15484990d495SXin LI or the NTP Public Services Project Download Page 15494990d495SXin LI Properly monitor your ntpd instances. 15504990d495SXin LI Credit: This weakness was discovered by Yihan Lian of the Cloud 15514990d495SXin LI Security Team, Qihoo 360. 15524990d495SXin LI 15534990d495SXin LI* Crafted addpeer with hmode > 7 causes array wraparound with MATCH_ASSOC 15544990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 15554990d495SXin LI References: Sec 3009 / CVE-2016-2518 / VU#718152 15564990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 15574990d495SXin LI 4.3.0 up to, but not including 4.3.92 15584990d495SXin LI CVSS2: LOW 2.1 - (AV:N/AC:H/Au:S/C:N/I:N/A:P) 15594990d495SXin LI CVSS3: LOW 2.0 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L 15604990d495SXin LI Summary: Using a crafted packet to create a peer association with 15614990d495SXin LI hmode > 7 causes the MATCH_ASSOC() lookup to make an 15624990d495SXin LI out-of-bounds reference. 15634990d495SXin LI Mitigation: 15644990d495SXin LI Implement BCP-38. 15654990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 15664990d495SXin LI or the NTP Public Services Project Download Page 15674990d495SXin LI Properly monitor your ntpd instances 15684990d495SXin LI Credit: This weakness was discovered by Yihan Lian of the Cloud 15694990d495SXin LI Security Team, Qihoo 360. 15704990d495SXin LI 15714990d495SXin LI* remote configuration trustedkey/requestkey/controlkey values are not 15724990d495SXin LI properly validated 15734990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 15744990d495SXin LI References: Sec 3010 / CVE-2016-2517 / VU#718152 15754990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 15764990d495SXin LI 4.3.0 up to, but not including 4.3.92 15774990d495SXin LI CVSS2: MED 4.9 - (AV:N/AC:H/Au:S/C:N/I:N/A:C) 15784990d495SXin LI CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 15794990d495SXin LI Summary: If ntpd was expressly configured to allow for remote 15804990d495SXin LI configuration, a malicious user who knows the controlkey for 15814990d495SXin LI ntpq or the requestkey for ntpdc (if mode7 is expressly enabled) 15824990d495SXin LI can create a session with ntpd and then send a crafted packet to 15834990d495SXin LI ntpd that will change the value of the trustedkey, controlkey, 15844990d495SXin LI or requestkey to a value that will prevent any subsequent 15854990d495SXin LI authentication with ntpd until ntpd is restarted. 15864990d495SXin LI Mitigation: 15874990d495SXin LI Implement BCP-38. 15884990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 15894990d495SXin LI or the NTP Public Services Project Download Page 159009100258SXin LI Properly monitor your ntpd instances 15914990d495SXin LI Credit: This weakness was discovered by Yihan Lian of the Cloud 15924990d495SXin LI Security Team, Qihoo 360. 15934990d495SXin LI 15944990d495SXin LI* Duplicate IPs on unconfig directives will cause an assertion botch in ntpd 15954990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 15964990d495SXin LI References: Sec 3011 / CVE-2016-2516 / VU#718152 15974990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 15984990d495SXin LI 4.3.0 up to, but not including 4.3.92 15994990d495SXin LI CVSS2: MED 6.3 - (AV:N/AC:M/Au:S/C:N/I:N/A:C) 16004990d495SXin LI CVSS3: MED 4.2 - CVSS:3.0/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H 16014990d495SXin LI Summary: If ntpd was expressly configured to allow for remote 16024990d495SXin LI configuration, a malicious user who knows the controlkey for 16034990d495SXin LI ntpq or the requestkey for ntpdc (if mode7 is expressly enabled) 16044990d495SXin LI can create a session with ntpd and if an existing association is 16054990d495SXin LI unconfigured using the same IP twice on the unconfig directive 16064990d495SXin LI line, ntpd will abort. 16074990d495SXin LI Mitigation: 16084990d495SXin LI Implement BCP-38. 16094990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 16104990d495SXin LI or the NTP Public Services Project Download Page 16114990d495SXin LI Properly monitor your ntpd instances 16124990d495SXin LI Credit: This weakness was discovered by Yihan Lian of the Cloud 16134990d495SXin LI Security Team, Qihoo 360. 16144990d495SXin LI 16154990d495SXin LI* Refclock impersonation vulnerability 16164990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 16174990d495SXin LI References: Sec 3020 / CVE-2016-1551 16184990d495SXin LI Affects: On a very limited number of OSes, all NTP releases up to but 16194990d495SXin LI not including 4.2.8p7, and 4.3.0 up to but not including 4.3.92. 16204990d495SXin LI By "very limited number of OSes" we mean no general-purpose OSes 16214990d495SXin LI have yet been identified that have this vulnerability. 16224990d495SXin LI CVSSv2: LOW 2.6 - (AV:N/AC:H/Au:N/C:N/I:P/A:N) 16234990d495SXin LI CVSSv3: LOW 3.7 - CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N 16244990d495SXin LI Summary: While most OSes implement martian packet filtering in their 16254990d495SXin LI network stack, at least regarding 127.0.0.0/8, some will allow 16264990d495SXin LI packets claiming to be from 127.0.0.0/8 that arrive over a 16274990d495SXin LI physical network. On these OSes, if ntpd is configured to use a 16284990d495SXin LI reference clock an attacker can inject packets over the network 16294990d495SXin LI that look like they are coming from that reference clock. 16304990d495SXin LI Mitigation: 16314990d495SXin LI Implement martian packet filtering and BCP-38. 16324990d495SXin LI Configure ntpd to use an adequate number of time sources. 16334990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 16344990d495SXin LI or the NTP Public Services Project Download Page 16354990d495SXin LI If you are unable to upgrade and if you are running an OS that 16364990d495SXin LI has this vulnerability, implement martian packet filters and 16374990d495SXin LI lobby your OS vendor to fix this problem, or run your 16384990d495SXin LI refclocks on computers that use OSes that are not vulnerable 16394990d495SXin LI to these attacks and have your vulnerable machines get their 16404990d495SXin LI time from protected resources. 16414990d495SXin LI Properly monitor your ntpd instances. 16424990d495SXin LI Credit: This weakness was discovered by Matt Street and others of 16434990d495SXin LI Cisco ASIG. 16444990d495SXin LI 16454990d495SXin LIThe following issues were fixed in earlier releases and contain 16464990d495SXin LIimprovements in 4.2.8p7: 16474990d495SXin LI 16484990d495SXin LI* Clients that receive a KoD should validate the origin timestamp field. 16494990d495SXin LI References: Sec 2901 / CVE-2015-7704, CVE-2015-7705 16504990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, 16514990d495SXin LI Summary: Improvements to the fixes incorporated into 4.2.8p4 and 4.3.77. 16524990d495SXin LI 16534990d495SXin LI* Skeleton key: passive server with trusted key can serve time. 16544990d495SXin LI References: Sec 2936 / CVE-2015-7974 16554990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, 16564990d495SXin LI Summary: Improvements to the fixes incorporated in t 4.2.8p6 and 4.3.90. 16574990d495SXin LI 16584990d495SXin LITwo other vulnerabilities have been reported, and the mitigations 16594990d495SXin LIfor these are as follows: 16604990d495SXin LI 16614990d495SXin LI* Interleave-pivot 16624990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 16634990d495SXin LI References: Sec 2978 / CVE-2016-1548 16644990d495SXin LI Affects: All ntp-4 releases. 16654990d495SXin LI CVSSv2: MED 6.4 - (AV:N/AC:L/Au:N/C:N/I:P/A:P) 16664990d495SXin LI CVSSv3: MED 7.2 - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L 16674990d495SXin LI Summary: It is possible to change the time of an ntpd client or deny 16684990d495SXin LI service to an ntpd client by forcing it to change from basic 16694990d495SXin LI client/server mode to interleaved symmetric mode. An attacker 16704990d495SXin LI can spoof a packet from a legitimate ntpd server with an origin 16714990d495SXin LI timestamp that matches the peer->dst timestamp recorded for that 16724990d495SXin LI server. After making this switch, the client will reject all 16734990d495SXin LI future legitimate server responses. It is possible to force the 16744990d495SXin LI victim client to move time after the mode has been changed. 16754990d495SXin LI ntpq gives no indication that the mode has been switched. 16764990d495SXin LI Mitigation: 16774990d495SXin LI Implement BCP-38. 16784990d495SXin LI Upgrade to 4.2.8p7, or later, from the NTP Project Download Page 16794990d495SXin LI or the NTP Public Services Project Download Page. These 16804990d495SXin LI versions will not dynamically "flip" into interleave mode 16814990d495SXin LI unless configured to do so. 16824990d495SXin LI Properly monitor your ntpd instances. 16834990d495SXin LI Credit: This weakness was discovered by Miroslav Lichvar of RedHat 16844990d495SXin LI and separately by Jonathan Gardner of Cisco ASIG. 16854990d495SXin LI 16864990d495SXin LI* Sybil vulnerability: ephemeral association attack 16874990d495SXin LI Date Resolved: Stable (4.2.8p7) 26 Apr 2016; Dev (4.3.92) 26 Apr 2016 16884990d495SXin LI References: Sec 3012 / CVE-2016-1549 16894990d495SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p7, and 16904990d495SXin LI 4.3.0 up to, but not including 4.3.92 16914990d495SXin LI CVSSv2: LOW 3.5 - (AV:N/AC:M/Au:S/C:N/I:P/A:N) 16924990d495SXin LI CVSS3v: MED 5.3 - CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N 16934990d495SXin LI Summary: ntpd can be vulnerable to Sybil attacks. If one is not using 16944990d495SXin LI the feature introduced in ntp-4.2.8p6 allowing an optional 4th 16954990d495SXin LI field in the ntp.keys file to specify which IPs can serve time, 16964990d495SXin LI a malicious authenticated peer can create arbitrarily-many 16974990d495SXin LI ephemeral associations in order to win the clock selection of 16984990d495SXin LI ntpd and modify a victim's clock. 16994990d495SXin LI Mitigation: 17004990d495SXin LI Implement BCP-38. 17014990d495SXin LI Use the 4th field in the ntp.keys file to specify which IPs 17024990d495SXin LI can be time servers. 17034990d495SXin LI Properly monitor your ntpd instances. 17044990d495SXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG. 17054990d495SXin LI 17064990d495SXin LIOther fixes: 17074990d495SXin LI 17084990d495SXin LI* [Bug 2831] Segmentation Fault in DNS lookup during startup. perlinger@ntp.org 17094990d495SXin LI - fixed yet another race condition in the threaded resolver code. 17104990d495SXin LI* [Bug 2858] bool support. Use stdbool.h when available. HStenn. 17114990d495SXin LI* [Bug 2879] Improve NTP security against timing attacks. perlinger@ntp.org 17124990d495SXin LI - integrated patches by Loganaden Velvidron <logan@ntp.org> 17134990d495SXin LI with some modifications & unit tests 17144990d495SXin LI* [Bug 2960] async name resolution fixes for chroot() environments. 17154990d495SXin LI Reinhard Max. 17164990d495SXin LI* [Bug 2994] Systems with HAVE_SIGNALED_IO fail to compile. perlinger@ntp.org 17174990d495SXin LI* [Bug 2995] Fixes to compile on Windows 17184990d495SXin LI* [Bug 2999] out-of-bounds access in 'is_safe_filename()'. perlinger@ntp.org 17194990d495SXin LI* [Bug 3013] Fix for ssl_init.c SHA1 test. perlinger@ntp.org 17204990d495SXin LI - Patch provided by Ch. Weisgerber 17214990d495SXin LI* [Bug 3015] ntpq: config-from-file: "request contains an unprintable character" 17224990d495SXin LI - A change related to [Bug 2853] forbids trailing white space in 17234990d495SXin LI remote config commands. perlinger@ntp.org 17244990d495SXin LI* [Bug 3019] NTPD stops processing packets after ERROR_HOST_UNREACHABLE 17254990d495SXin LI - report and patch from Aleksandr Kostikov. 17264990d495SXin LI - Overhaul of Windows IO completion port handling. perlinger@ntp.org 17274990d495SXin LI* [Bug 3022] authkeys.c should be refactored. perlinger@ntp.org 17284990d495SXin LI - fixed memory leak in access list (auth[read]keys.c) 17294990d495SXin LI - refactored handling of key access lists (auth[read]keys.c) 17304990d495SXin LI - reduced number of error branches (authreadkeys.c) 17314990d495SXin LI* [Bug 3023] ntpdate cannot correct dates in the future. perlinger@ntp.org 17324990d495SXin LI* [Bug 3030] ntpq needs a general way to specify refid output format. HStenn. 17334990d495SXin LI* [Bug 3031] ntp broadcastclient unable to synchronize to an server 17344990d495SXin LI when the time of server changed. perlinger@ntp.org 17354990d495SXin LI - Check the initial delay calculation and reject/unpeer the broadcast 17364990d495SXin LI server if the delay exceeds 50ms. Retry again after the next 17374990d495SXin LI broadcast packet. 17384990d495SXin LI* [Bug 3036] autokey trips an INSIST in authistrustedip(). Harlan Stenn. 17394990d495SXin LI* Document ntp.key's optional IP list in authenetic.html. Harlan Stenn. 17404990d495SXin LI* Update html/xleave.html documentation. Harlan Stenn. 17414990d495SXin LI* Update ntp.conf documentation. Harlan Stenn. 17424990d495SXin LI* Fix some Credit: attributions in the NEWS file. Harlan Stenn. 17434990d495SXin LI* Fix typo in html/monopt.html. Harlan Stenn. 17444990d495SXin LI* Add README.pullrequests. Harlan Stenn. 17454990d495SXin LI* Cleanup to include/ntp.h. Harlan Stenn. 17464990d495SXin LI 17474990d495SXin LINew option to 'configure': 17484990d495SXin LI 17494990d495SXin LIWhile looking in to the issues around Bug 2978, the "interleave pivot" 17504990d495SXin LIissue, it became clear that there are some intricate and unresolved 17514990d495SXin LIissues with interleave operations. We also realized that the interleave 17524990d495SXin LIprotocol was never added to the NTPv4 Standard, and it should have been. 17534990d495SXin LI 17544990d495SXin LIInterleave mode was first released in July of 2008, and can be engaged 17554990d495SXin LIin two ways. Any 'peer' and 'broadcast' lines in the ntp.conf file may 17564990d495SXin LIcontain the 'xleave' option, which will expressly enable interlave mode 17574990d495SXin LIfor that association. Additionally, if a time packet arrives and is 17584990d495SXin LIfound inconsistent with normal protocol behavior but has certain 17594990d495SXin LIcharacteristics that are compatible with interleave mode, NTP will 17604990d495SXin LIdynamically switch to interleave mode. With sufficient knowledge, an 17614990d495SXin LIattacker can send a crafted forged packet to an NTP instance that 17624990d495SXin LItriggers only one side to enter interleaved mode. 17634990d495SXin LI 17644990d495SXin LITo prevent this attack until we can thoroughly document, describe, 17654990d495SXin LIfix, and test the dynamic interleave mode, we've added a new 17664990d495SXin LI'configure' option to the build process: 17674990d495SXin LI 17684990d495SXin LI --enable-dynamic-interleave 17694990d495SXin LI 17704990d495SXin LIThis option controls whether or not NTP will, if conditions are right, 17714990d495SXin LIengage dynamic interleave mode. Dynamic interleave mode is disabled by 17724990d495SXin LIdefault in ntp-4.2.8p7. 17734990d495SXin LI 17744990d495SXin LI--- 17754990d495SXin LINTP 4.2.8p6 (Harlan Stenn <stenn@ntp.org>, 2016/01/20) 177668ba7e87SXin LI 177768ba7e87SXin LIFocus: Security, Bug fixes, enhancements. 177868ba7e87SXin LI 177968ba7e87SXin LISeverity: MEDIUM 178068ba7e87SXin LI 178168ba7e87SXin LIIn addition to bug fixes and enhancements, this release fixes the 17824990d495SXin LIfollowing 1 low- and 8 medium-severity vulnerabilities: 178368ba7e87SXin LI 178468ba7e87SXin LI* Potential Infinite Loop in 'ntpq' 178568ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 178668ba7e87SXin LI References: Sec 2548 / CVE-2015-8158 178768ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 178868ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 178968ba7e87SXin LI CVSS2: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 179068ba7e87SXin LI CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM 179168ba7e87SXin LI Summary: 'ntpq' processes incoming packets in a loop in 'getresponse()'. 179268ba7e87SXin LI The loop's only stopping conditions are receiving a complete and 179368ba7e87SXin LI correct response or hitting a small number of error conditions. 179468ba7e87SXin LI If the packet contains incorrect values that don't trigger one of 179568ba7e87SXin LI the error conditions, the loop continues to receive new packets. 179668ba7e87SXin LI Note well, this is an attack against an instance of 'ntpq', not 179768ba7e87SXin LI 'ntpd', and this attack requires the attacker to do one of the 179868ba7e87SXin LI following: 179968ba7e87SXin LI * Own a malicious NTP server that the client trusts 180068ba7e87SXin LI * Prevent a legitimate NTP server from sending packets to 180168ba7e87SXin LI the 'ntpq' client 180268ba7e87SXin LI * MITM the 'ntpq' communications between the 'ntpq' client 180368ba7e87SXin LI and the NTP server 180468ba7e87SXin LI Mitigation: 180568ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 180668ba7e87SXin LI or the NTP Public Services Project Download Page 180768ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG. 180868ba7e87SXin LI 180968ba7e87SXin LI* 0rigin: Zero Origin Timestamp Bypass 181068ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 181168ba7e87SXin LI References: Sec 2945 / CVE-2015-8138 181268ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 181368ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 181468ba7e87SXin LI CVSS2: (AV:N/AC:L/Au:N/C:N/I:P/A:N) Base Score: 5.0 - MEDIUM 181568ba7e87SXin LI CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N Base Score: 5.3 - MEDIUM 181668ba7e87SXin LI (3.7 - LOW if you score AC:L) 181768ba7e87SXin LI Summary: To distinguish legitimate peer responses from forgeries, a 181868ba7e87SXin LI client attempts to verify a response packet by ensuring that the 181968ba7e87SXin LI origin timestamp in the packet matches the origin timestamp it 182068ba7e87SXin LI transmitted in its last request. A logic error exists that 182168ba7e87SXin LI allows packets with an origin timestamp of zero to bypass this 182268ba7e87SXin LI check whenever there is not an outstanding request to the server. 182368ba7e87SXin LI Mitigation: 182468ba7e87SXin LI Configure 'ntpd' to get time from multiple sources. 182568ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 182668ba7e87SXin LI or the NTP Public Services Project Download Page. 182709100258SXin LI Monitor your 'ntpd' instances. 18284990d495SXin LI Credit: This weakness was discovered by Matthey Van Gundy and 18294990d495SXin LI Jonathan Gardner of Cisco ASIG. 183068ba7e87SXin LI 183168ba7e87SXin LI* Stack exhaustion in recursive traversal of restriction list 183268ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016 183368ba7e87SXin LI References: Sec 2940 / CVE-2015-7978 183468ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 183568ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 183668ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 183768ba7e87SXin LI Summary: An unauthenticated 'ntpdc reslist' command can cause a 183868ba7e87SXin LI segmentation fault in ntpd by exhausting the call stack. 183968ba7e87SXin LI Mitigation: 184068ba7e87SXin LI Implement BCP-38. 184168ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 184268ba7e87SXin LI or the NTP Public Services Project Download Page. 184368ba7e87SXin LI If you are unable to upgrade: 184468ba7e87SXin LI In ntp-4.2.8, mode 7 is disabled by default. Don't enable it. 184568ba7e87SXin LI If you must enable mode 7: 184668ba7e87SXin LI configure the use of a 'requestkey' to control who can 184768ba7e87SXin LI issue mode 7 requests. 184868ba7e87SXin LI configure 'restrict noquery' to further limit mode 7 184968ba7e87SXin LI requests to trusted sources. 185068ba7e87SXin LI Monitor your ntpd instances. 185168ba7e87SXin LI Credit: This weakness was discovered by Stephen Gray at Cisco ASIG. 185268ba7e87SXin LI 185368ba7e87SXin LI* Off-path Denial of Service (!DoS) attack on authenticated broadcast mode 185468ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 185568ba7e87SXin LI References: Sec 2942 / CVE-2015-7979 185668ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 185768ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 185868ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:P/A:P) Base Score: 5.8 185968ba7e87SXin LI Summary: An off-path attacker can send broadcast packets with bad 186068ba7e87SXin LI authentication (wrong key, mismatched key, incorrect MAC, etc) 186168ba7e87SXin LI to broadcast clients. It is observed that the broadcast client 186268ba7e87SXin LI tears down the association with the broadcast server upon 186368ba7e87SXin LI receiving just one bad packet. 186468ba7e87SXin LI Mitigation: 186568ba7e87SXin LI Implement BCP-38. 186668ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 186768ba7e87SXin LI or the NTP Public Services Project Download Page. 186868ba7e87SXin LI Monitor your 'ntpd' instances. 186968ba7e87SXin LI If this sort of attack is an active problem for you, you have 187068ba7e87SXin LI deeper problems to investigate. In this case also consider 187168ba7e87SXin LI having smaller NTP broadcast domains. 187268ba7e87SXin LI Credit: This weakness was discovered by Aanchal Malhotra of Boston 187368ba7e87SXin LI University. 187468ba7e87SXin LI 187568ba7e87SXin LI* reslist NULL pointer dereference 187668ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 187768ba7e87SXin LI References: Sec 2939 / CVE-2015-7977 187868ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 187968ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 188068ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 188168ba7e87SXin LI Summary: An unauthenticated 'ntpdc reslist' command can cause a 188268ba7e87SXin LI segmentation fault in ntpd by causing a NULL pointer dereference. 188368ba7e87SXin LI Mitigation: 188468ba7e87SXin LI Implement BCP-38. 188568ba7e87SXin LI Upgrade to 4.2.8p6, or later, from NTP Project Download Page or 188668ba7e87SXin LI the NTP Public Services Project Download Page. 188768ba7e87SXin LI If you are unable to upgrade: 188868ba7e87SXin LI mode 7 is disabled by default. Don't enable it. 188968ba7e87SXin LI If you must enable mode 7: 189068ba7e87SXin LI configure the use of a 'requestkey' to control who can 189168ba7e87SXin LI issue mode 7 requests. 189268ba7e87SXin LI configure 'restrict noquery' to further limit mode 7 189368ba7e87SXin LI requests to trusted sources. 189468ba7e87SXin LI Monitor your ntpd instances. 189568ba7e87SXin LI Credit: This weakness was discovered by Stephen Gray of Cisco ASIG. 189668ba7e87SXin LI 189768ba7e87SXin LI* 'ntpq saveconfig' command allows dangerous characters in filenames. 189868ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 189968ba7e87SXin LI References: Sec 2938 / CVE-2015-7976 190068ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 190168ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 190268ba7e87SXin LI CVSS: (AV:N/AC:L/Au:S/C:N/I:P/A:N) Base Score: 4.0 - MEDIUM 190368ba7e87SXin LI Summary: The ntpq saveconfig command does not do adequate filtering 190468ba7e87SXin LI of special characters from the supplied filename. 190568ba7e87SXin LI Note well: The ability to use the saveconfig command is controlled 190668ba7e87SXin LI by the 'restrict nomodify' directive, and the recommended default 190768ba7e87SXin LI configuration is to disable this capability. If the ability to 190868ba7e87SXin LI execute a 'saveconfig' is required, it can easily (and should) be 190968ba7e87SXin LI limited and restricted to a known small number of IP addresses. 191068ba7e87SXin LI Mitigation: 191168ba7e87SXin LI Implement BCP-38. 191268ba7e87SXin LI use 'restrict default nomodify' in your 'ntp.conf' file. 191368ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page. 191468ba7e87SXin LI If you are unable to upgrade: 191568ba7e87SXin LI build NTP with 'configure --disable-saveconfig' if you will 191668ba7e87SXin LI never need this capability, or 191768ba7e87SXin LI use 'restrict default nomodify' in your 'ntp.conf' file. Be 191868ba7e87SXin LI careful about what IPs have the ability to send 'modify' 191968ba7e87SXin LI requests to 'ntpd'. 192068ba7e87SXin LI Monitor your ntpd instances. 192168ba7e87SXin LI 'saveconfig' requests are logged to syslog - monitor your syslog files. 192268ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG. 192368ba7e87SXin LI 192468ba7e87SXin LI* nextvar() missing length check in ntpq 192568ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 192668ba7e87SXin LI References: Sec 2937 / CVE-2015-7975 192768ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 192868ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 192968ba7e87SXin LI CVSS: (AV:L/AC:H/Au:N/C:N/I:N/A:P) Base Score: 1.2 - LOW 193068ba7e87SXin LI If you score A:C, this becomes 4.0. 193168ba7e87SXin LI 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 193268ba7e87SXin LI Summary: ntpq may call nextvar() which executes a memcpy() into the 193368ba7e87SXin LI name buffer without a proper length check against its maximum 193468ba7e87SXin LI length of 256 bytes. Note well that we're taking about ntpq here. 193568ba7e87SXin LI The usual worst-case effect of this vulnerability is that the 193668ba7e87SXin LI specific instance of ntpq will crash and the person or process 193768ba7e87SXin LI that did this will have stopped themselves. 193868ba7e87SXin LI Mitigation: 193968ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 194068ba7e87SXin LI or the NTP Public Services Project Download Page. 194168ba7e87SXin LI If you are unable to upgrade: 194268ba7e87SXin LI If you have scripts that feed input to ntpq make sure there are 194368ba7e87SXin LI some sanity checks on the input received from the "outside". 194468ba7e87SXin LI This is potentially more dangerous if ntpq is run as root. 194568ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner at Cisco ASIG. 194668ba7e87SXin LI 194768ba7e87SXin LI* Skeleton Key: Any trusted key system can serve time 194868ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 194968ba7e87SXin LI References: Sec 2936 / CVE-2015-7974 195068ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 195168ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 195268ba7e87SXin LI CVSS: (AV:N/AC:H/Au:S/C:N/I:C/A:N) Base Score: 4.9 195368ba7e87SXin LI Summary: Symmetric key encryption uses a shared trusted key. The 195468ba7e87SXin LI reported title for this issue was "Missing key check allows 195568ba7e87SXin LI impersonation between authenticated peers" and the report claimed 195668ba7e87SXin LI "A key specified only for one server should only work to 195768ba7e87SXin LI authenticate that server, other trusted keys should be refused." 195868ba7e87SXin LI Except there has never been any correlation between this trusted 195968ba7e87SXin LI key and server v. clients machines and there has never been any 196068ba7e87SXin LI way to specify a key only for one server. We have treated this as 196168ba7e87SXin LI an enhancement request, and ntp-4.2.8p6 includes other checks and 196268ba7e87SXin LI tests to strengthen clients against attacks coming from broadcast 196368ba7e87SXin LI servers. 196468ba7e87SXin LI Mitigation: 196568ba7e87SXin LI Implement BCP-38. 196668ba7e87SXin LI If this scenario represents a real or a potential issue for you, 196768ba7e87SXin LI upgrade to 4.2.8p6, or later, from the NTP Project Download 196868ba7e87SXin LI Page or the NTP Public Services Project Download Page, and 196968ba7e87SXin LI use the new field in the ntp.keys file that specifies the list 197068ba7e87SXin LI of IPs that are allowed to serve time. Note that this alone 197168ba7e87SXin LI will not protect against time packets with forged source IP 197268ba7e87SXin LI addresses, however other changes in ntp-4.2.8p6 provide 197368ba7e87SXin LI significant mitigation against broadcast attacks. MITM attacks 197468ba7e87SXin LI are a different story. 197568ba7e87SXin LI If you are unable to upgrade: 197668ba7e87SXin LI Don't use broadcast mode if you cannot monitor your client 197768ba7e87SXin LI servers. 197868ba7e87SXin LI If you choose to use symmetric keys to authenticate time 197968ba7e87SXin LI packets in a hostile environment where ephemeral time 198068ba7e87SXin LI servers can be created, or if it is expected that malicious 198168ba7e87SXin LI time servers will participate in an NTP broadcast domain, 198268ba7e87SXin LI limit the number of participating systems that participate 198368ba7e87SXin LI in the shared-key group. 198468ba7e87SXin LI Monitor your ntpd instances. 198568ba7e87SXin LI Credit: This weakness was discovered by Matt Street of Cisco ASIG. 198668ba7e87SXin LI 198768ba7e87SXin LI* Deja Vu: Replay attack on authenticated broadcast mode 198868ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 198968ba7e87SXin LI References: Sec 2935 / CVE-2015-7973 199068ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 199168ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 199268ba7e87SXin LI CVSS: (AV:A/AC:M/Au:N/C:N/I:P/A:P) Base Score: 4.3 - MEDIUM 199368ba7e87SXin LI Summary: If an NTP network is configured for broadcast operations then 199468ba7e87SXin LI either a man-in-the-middle attacker or a malicious participant 199568ba7e87SXin LI that has the same trusted keys as the victim can replay time packets. 199668ba7e87SXin LI Mitigation: 199768ba7e87SXin LI Implement BCP-38. 199868ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 199968ba7e87SXin LI or the NTP Public Services Project Download Page. 200068ba7e87SXin LI If you are unable to upgrade: 200168ba7e87SXin LI Don't use broadcast mode if you cannot monitor your client servers. 200268ba7e87SXin LI Monitor your ntpd instances. 200368ba7e87SXin LI Credit: This weakness was discovered by Aanchal Malhotra of Boston 200468ba7e87SXin LI University. 200568ba7e87SXin LI 200668ba7e87SXin LIOther fixes: 200768ba7e87SXin LI 200868ba7e87SXin LI* [Bug 2772] adj_systime overflows tv_usec. perlinger@ntp.org 200968ba7e87SXin LI* [Bug 2814] msyslog deadlock when signaled. perlinger@ntp.org 201068ba7e87SXin LI - applied patch by shenpeng11@huawei.com with minor adjustments 201168ba7e87SXin LI* [Bug 2882] Look at ntp_request.c:list_peers_sum(). perlinger@ntp.org 201268ba7e87SXin LI* [Bug 2891] Deadlock in deferred DNS lookup framework. perlinger@ntp.org 201368ba7e87SXin LI* [Bug 2892] Several test cases assume IPv6 capabilities even when 201468ba7e87SXin LI IPv6 is disabled in the build. perlinger@ntp.org 201568ba7e87SXin LI - Found this already fixed, but validation led to cleanup actions. 201668ba7e87SXin LI* [Bug 2905] DNS lookups broken. perlinger@ntp.org 201768ba7e87SXin LI - added limits to stack consumption, fixed some return code handling 201868ba7e87SXin LI* [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call 201968ba7e87SXin LI - changed stacked/nested handling of CTRL-C. perlinger@ntp.org 202068ba7e87SXin LI - make CTRL-C work for retrieval and printing od MRU list. perlinger@ntp.org 202168ba7e87SXin LI* [Bug 2980] reduce number of warnings. perlinger@ntp.org 202268ba7e87SXin LI - integrated several patches from Havard Eidnes (he@uninett.no) 202368ba7e87SXin LI* [Bug 2985] bogus calculation in authkeys.c perlinger@ntp.org 202468ba7e87SXin LI - implement 'auth_log2()' using integer bithack instead of float calculation 202568ba7e87SXin LI* Make leapsec_query debug messages less verbose. Harlan Stenn. 202668ba7e87SXin LI 202768ba7e87SXin LI--- 20284990d495SXin LINTP 4.2.8p5 (Harlan Stenn <stenn@ntp.org>, 2016/01/07) 20293311ff84SXin LI 20303311ff84SXin LIFocus: Security, Bug fixes, enhancements. 20313311ff84SXin LI 20323311ff84SXin LISeverity: MEDIUM 20333311ff84SXin LI 20343311ff84SXin LIIn addition to bug fixes and enhancements, this release fixes the 20353311ff84SXin LIfollowing medium-severity vulnerability: 20363311ff84SXin LI 20373311ff84SXin LI* Small-step/big-step. Close the panic gate earlier. 20383311ff84SXin LI References: Sec 2956, CVE-2015-5300 20393311ff84SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p5, and 20403311ff84SXin LI 4.3.0 up to, but not including 4.3.78 20413311ff84SXin LI CVSS3: (AV:N/AC:H/PR:H/UI:R/S:C/C:L/I:N/A:L) Base Score: 4.0, MEDIUM 20423311ff84SXin LI Summary: If ntpd is always started with the -g option, which is 20433311ff84SXin LI common and against long-standing recommendation, and if at the 20443311ff84SXin LI moment ntpd is restarted an attacker can immediately respond to 20453311ff84SXin LI enough requests from enough sources trusted by the target, which 20463311ff84SXin LI is difficult and not common, there is a window of opportunity 20473311ff84SXin LI where the attacker can cause ntpd to set the time to an 20483311ff84SXin LI arbitrary value. Similarly, if an attacker is able to respond 20493311ff84SXin LI to enough requests from enough sources trusted by the target, 20503311ff84SXin LI the attacker can cause ntpd to abort and restart, at which 20513311ff84SXin LI point it can tell the target to set the time to an arbitrary 20523311ff84SXin LI value if and only if ntpd was re-started against long-standing 20533311ff84SXin LI recommendation with the -g flag, or if ntpd was not given the 20543311ff84SXin LI -g flag, the attacker can move the target system's time by at 20553311ff84SXin LI most 900 seconds' time per attack. 20563311ff84SXin LI Mitigation: 20573311ff84SXin LI Configure ntpd to get time from multiple sources. 20583311ff84SXin LI Upgrade to 4.2.8p5, or later, from the NTP Project Download 20593311ff84SXin LI Page or the NTP Public Services Project Download Page 20603311ff84SXin LI As we've long documented, only use the -g option to ntpd in 20613311ff84SXin LI cold-start situations. 20623311ff84SXin LI Monitor your ntpd instances. 20633311ff84SXin LI Credit: This weakness was discovered by Aanchal Malhotra, 20643311ff84SXin LI Isaac E. Cohen, and Sharon Goldberg at Boston University. 20653311ff84SXin LI 20663311ff84SXin LI NOTE WELL: The -g flag disables the limit check on the panic_gate 20673311ff84SXin LI in ntpd, which is 900 seconds by default. The bug identified by 20683311ff84SXin LI the researchers at Boston University is that the panic_gate 20693311ff84SXin LI check was only re-enabled after the first change to the system 20703311ff84SXin LI clock that was greater than 128 milliseconds, by default. The 20713311ff84SXin LI correct behavior is that the panic_gate check should be 20723311ff84SXin LI re-enabled after any initial time correction. 20733311ff84SXin LI 20743311ff84SXin LI If an attacker is able to inject consistent but erroneous time 20753311ff84SXin LI responses to your systems via the network or "over the air", 20763311ff84SXin LI perhaps by spoofing radio, cellphone, or navigation satellite 20773311ff84SXin LI transmissions, they are in a great position to affect your 20783311ff84SXin LI system's clock. There comes a point where your very best 20793311ff84SXin LI defenses include: 20803311ff84SXin LI 20813311ff84SXin LI Configure ntpd to get time from multiple sources. 20823311ff84SXin LI Monitor your ntpd instances. 20833311ff84SXin LI 20843311ff84SXin LIOther fixes: 20853311ff84SXin LI 20863311ff84SXin LI* Coverity submission process updated from Coverity 5 to Coverity 7. 20873311ff84SXin LI The NTP codebase has been undergoing regular Coverity scans on an 20883311ff84SXin LI ongoing basis since 2006. As part of our recent upgrade from 20893311ff84SXin LI Coverity 5 to Coverity 7, Coverity identified 16 nits in some of 20903311ff84SXin LI the newly-written Unity test programs. These were fixed. 20913311ff84SXin LI* [Bug 2829] Clean up pipe_fds in ntpd.c perlinger@ntp.org 20923311ff84SXin LI* [Bug 2887] stratum -1 config results as showing value 99 20933311ff84SXin LI - fudge stratum should only accept values [0..16]. perlinger@ntp.org 20943311ff84SXin LI* [Bug 2932] Update leapsecond file info in miscopt.html. CWoodbury, HStenn. 20953311ff84SXin LI* [Bug 2934] tests/ntpd/t-ntp_scanner.c has a magic constant wired in. HMurray 20963311ff84SXin LI* [Bug 2944] errno is not preserved properly in ntpdate after sendto call. 20973311ff84SXin LI - applied patch by Christos Zoulas. perlinger@ntp.org 20983311ff84SXin LI* [Bug 2952] Peer associations broken by fix for Bug 2901/CVE-2015-7704. 20993311ff84SXin LI* [Bug 2954] Version 4.2.8p4 crashes on startup on some OSes. 21003311ff84SXin LI - fixed data race conditions in threaded DNS worker. perlinger@ntp.org 21013311ff84SXin LI - limit threading warm-up to linux; FreeBSD bombs on it. perlinger@ntp.org 21023311ff84SXin LI* [Bug 2957] 'unsigned int' vs 'size_t' format clash. perlinger@ntp.org 21033311ff84SXin LI - accept key file only if there are no parsing errors 21043311ff84SXin LI - fixed size_t/u_int format clash 21053311ff84SXin LI - fixed wrong use of 'strlcpy' 21063311ff84SXin LI* [Bug 2958] ntpq: fatal error messages need a final newline. Craig Leres. 21073311ff84SXin LI* [Bug 2962] truncation of size_t/ptrdiff_t on 64bit targets. perlinger@ntp.org 21083311ff84SXin LI - fixed several other warnings (cast-alignment, missing const, missing prototypes) 21093311ff84SXin LI - promote use of 'size_t' for values that express a size 21103311ff84SXin LI - use ptr-to-const for read-only arguments 21113311ff84SXin LI - make sure SOCKET values are not truncated (win32-specific) 21123311ff84SXin LI - format string fixes 21133311ff84SXin LI* [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki. 21143311ff84SXin LI* [Bug 2967] ntpdate command suffers an assertion failure 21153311ff84SXin LI - fixed ntp_rfc2553.c to return proper address length. perlinger@ntp.org 21163311ff84SXin LI* [Bug 2969] Seg fault from ntpq/mrulist when looking at server with 21173311ff84SXin LI lots of clients. perlinger@ntp.org 21183311ff84SXin LI* [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call 21193311ff84SXin LI - changed stacked/nested handling of CTRL-C. perlinger@ntp.org 21203311ff84SXin LI* Unity cleanup for FreeBSD-6.4. Harlan Stenn. 21213311ff84SXin LI* Unity test cleanup. Harlan Stenn. 21223311ff84SXin LI* Libevent autoconf pthread fixes for FreeBSD-10. Harlan Stenn. 21233311ff84SXin LI* Header cleanup in tests/sandbox/uglydate.c. Harlan Stenn. 21243311ff84SXin LI* Header cleanup in tests/libntp/sfptostr.c. Harlan Stenn. 21253311ff84SXin LI* Quiet a warning from clang. Harlan Stenn. 21263311ff84SXin LI 21273311ff84SXin LI--- 21284990d495SXin LINTP 4.2.8p4 (Harlan Stenn <stenn@ntp.org>, 2015/10/21) 21299034852cSGleb Smirnoff 21303311ff84SXin LIFocus: Security, Bug fixes, enhancements. 21319034852cSGleb Smirnoff 21329034852cSGleb SmirnoffSeverity: MEDIUM 21339034852cSGleb Smirnoff 21349034852cSGleb SmirnoffIn addition to bug fixes and enhancements, this release fixes the 21359034852cSGleb Smirnofffollowing 13 low- and medium-severity vulnerabilities: 21369034852cSGleb Smirnoff 21379034852cSGleb Smirnoff* Incomplete vallen (value length) checks in ntp_crypto.c, leading 21389034852cSGleb Smirnoff to potential crashes or potential code injection/information leakage. 21399034852cSGleb Smirnoff 21409034852cSGleb Smirnoff References: Sec 2899, Sec 2671, CVE-2015-7691, CVE-2015-7692, CVE-2015-7702 21419034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 21429034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 21439034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6 21449034852cSGleb Smirnoff Summary: The fix for CVE-2014-9750 was incomplete in that there were 21459034852cSGleb Smirnoff certain code paths where a packet with particular autokey operations 21469034852cSGleb Smirnoff that contained malicious data was not always being completely 21479034852cSGleb Smirnoff validated. Receipt of these packets can cause ntpd to crash. 21489034852cSGleb Smirnoff Mitigation: 21499034852cSGleb Smirnoff Don't use autokey. 21509034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 21519034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 21529034852cSGleb Smirnoff Monitor your ntpd instances. 21539034852cSGleb Smirnoff Credit: This weakness was discovered by Tenable Network Security. 21549034852cSGleb Smirnoff 21559034852cSGleb Smirnoff* Clients that receive a KoD should validate the origin timestamp field. 21569034852cSGleb Smirnoff 21579034852cSGleb Smirnoff References: Sec 2901 / CVE-2015-7704, CVE-2015-7705 21589034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 21599034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 21609034852cSGleb Smirnoff CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3-5.0 at worst 21619034852cSGleb Smirnoff Summary: An ntpd client that honors Kiss-of-Death responses will honor 21629034852cSGleb Smirnoff KoD messages that have been forged by an attacker, causing it to 21639034852cSGleb Smirnoff delay or stop querying its servers for time updates. Also, an 21649034852cSGleb Smirnoff attacker can forge packets that claim to be from the target and 21659034852cSGleb Smirnoff send them to servers often enough that a server that implements 21669034852cSGleb Smirnoff KoD rate limiting will send the target machine a KoD response to 21679034852cSGleb Smirnoff attempt to reduce the rate of incoming packets, or it may also 21689034852cSGleb Smirnoff trigger a firewall block at the server for packets from the target 21699034852cSGleb Smirnoff machine. For either of these attacks to succeed, the attacker must 21709034852cSGleb Smirnoff know what servers the target is communicating with. An attacker 21719034852cSGleb Smirnoff can be anywhere on the Internet and can frequently learn the 21729034852cSGleb Smirnoff identity of the target's time source by sending the target a 21739034852cSGleb Smirnoff time query. 21749034852cSGleb Smirnoff Mitigation: 21759034852cSGleb Smirnoff Implement BCP-38. 21769034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download Page 21779034852cSGleb Smirnoff or the NTP Public Services Project Download Page 21789034852cSGleb Smirnoff If you can't upgrade, restrict who can query ntpd to learn who 21799034852cSGleb Smirnoff its servers are, and what IPs are allowed to ask your system 21809034852cSGleb Smirnoff for the time. This mitigation is heavy-handed. 21819034852cSGleb Smirnoff Monitor your ntpd instances. 21829034852cSGleb Smirnoff Note: 21839034852cSGleb Smirnoff 4.2.8p4 protects against the first attack. For the second attack, 21849034852cSGleb Smirnoff all we can do is warn when it is happening, which we do in 4.2.8p4. 21859034852cSGleb Smirnoff Credit: This weakness was discovered by Aanchal Malhotra, 21869034852cSGleb Smirnoff Issac E. Cohen, and Sharon Goldberg of Boston University. 21879034852cSGleb Smirnoff 21889034852cSGleb Smirnoff* configuration directives to change "pidfile" and "driftfile" should 21899034852cSGleb Smirnoff only be allowed locally. 21909034852cSGleb Smirnoff 21919034852cSGleb Smirnoff References: Sec 2902 / CVE-2015-5196 21929034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 21939034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 21949034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.2 worst case 21959034852cSGleb Smirnoff Summary: If ntpd is configured to allow for remote configuration, 21969034852cSGleb Smirnoff and if the (possibly spoofed) source IP address is allowed to 21979034852cSGleb Smirnoff send remote configuration requests, and if the attacker knows 21989034852cSGleb Smirnoff the remote configuration password, it's possible for an attacker 21999034852cSGleb Smirnoff to use the "pidfile" or "driftfile" directives to potentially 22009034852cSGleb Smirnoff overwrite other files. 22019034852cSGleb Smirnoff Mitigation: 22029034852cSGleb Smirnoff Implement BCP-38. 22039034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 22049034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 22059034852cSGleb Smirnoff If you cannot upgrade, don't enable remote configuration. 22069034852cSGleb Smirnoff If you must enable remote configuration and cannot upgrade, 22079034852cSGleb Smirnoff remote configuration of NTF's ntpd requires: 22089034852cSGleb Smirnoff - an explicitly configured trustedkey, and you should also 22099034852cSGleb Smirnoff configure a controlkey. 22109034852cSGleb Smirnoff - access from a permitted IP. You choose the IPs. 22119034852cSGleb Smirnoff - authentication. Don't disable it. Practice secure key safety. 22129034852cSGleb Smirnoff Monitor your ntpd instances. 22139034852cSGleb Smirnoff Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 22149034852cSGleb Smirnoff 22159034852cSGleb Smirnoff* Slow memory leak in CRYPTO_ASSOC 22169034852cSGleb Smirnoff 22179034852cSGleb Smirnoff References: Sec 2909 / CVE-2015-7701 22189034852cSGleb Smirnoff Affects: All ntp-4 releases that use autokey up to, but not 22199034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 22209034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 0.0 best/usual case, 22219034852cSGleb Smirnoff 4.6 otherwise 22229034852cSGleb Smirnoff Summary: If ntpd is configured to use autokey, then an attacker can 22239034852cSGleb Smirnoff send packets to ntpd that will, after several days of ongoing 22249034852cSGleb Smirnoff attack, cause it to run out of memory. 22259034852cSGleb Smirnoff Mitigation: 22269034852cSGleb Smirnoff Don't use autokey. 22279034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 22289034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 22299034852cSGleb Smirnoff Monitor your ntpd instances. 22309034852cSGleb Smirnoff Credit: This weakness was discovered by Tenable Network Security. 22319034852cSGleb Smirnoff 22329034852cSGleb Smirnoff* mode 7 loop counter underrun 22339034852cSGleb Smirnoff 22349034852cSGleb Smirnoff References: Sec 2913 / CVE-2015-7848 / TALOS-CAN-0052 22359034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 22369034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 22379034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6 22389034852cSGleb Smirnoff Summary: If ntpd is configured to enable mode 7 packets, and if the 22399034852cSGleb Smirnoff use of mode 7 packets is not properly protected thru the use of 22409034852cSGleb Smirnoff the available mode 7 authentication and restriction mechanisms, 22419034852cSGleb Smirnoff and if the (possibly spoofed) source IP address is allowed to 22429034852cSGleb Smirnoff send mode 7 queries, then an attacker can send a crafted packet 22439034852cSGleb Smirnoff to ntpd that will cause it to crash. 22449034852cSGleb Smirnoff Mitigation: 22459034852cSGleb Smirnoff Implement BCP-38. 22469034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 22479034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 22489034852cSGleb Smirnoff If you are unable to upgrade: 22499034852cSGleb Smirnoff In ntp-4.2.8, mode 7 is disabled by default. Don't enable it. 22509034852cSGleb Smirnoff If you must enable mode 7: 22519034852cSGleb Smirnoff configure the use of a requestkey to control who can issue 22529034852cSGleb Smirnoff mode 7 requests. 22539034852cSGleb Smirnoff configure restrict noquery to further limit mode 7 requests 22549034852cSGleb Smirnoff to trusted sources. 22559034852cSGleb Smirnoff Monitor your ntpd instances. 22569034852cSGleb SmirnoffCredit: This weakness was discovered by Aleksandar Nikolic of Cisco Talos. 22579034852cSGleb Smirnoff 22589034852cSGleb Smirnoff* memory corruption in password store 22599034852cSGleb Smirnoff 22609034852cSGleb Smirnoff References: Sec 2916 / CVE-2015-7849 / TALOS-CAN-0054 22619034852cSGleb Smirnoff 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 22629034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.8, worst case 22639034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 22649034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 22659034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 22669034852cSGleb Smirnoff remote configuration password or if ntpd was configured to 22679034852cSGleb Smirnoff disable authentication, then an attacker can send a set of 22689034852cSGleb Smirnoff packets to ntpd that may cause a crash or theoretically 22699034852cSGleb Smirnoff perform a code injection attack. 22709034852cSGleb Smirnoff Mitigation: 22719034852cSGleb Smirnoff Implement BCP-38. 22729034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 22739034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 22749034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's 22759034852cSGleb Smirnoff ntpd requires: 22769034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 22779034852cSGleb Smirnoff this if you need it. 22789034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 22799034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 22809034852cSGleb Smirnoff Monitor your ntpd instances. 22819034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 22829034852cSGleb Smirnoff 22839034852cSGleb Smirnoff* Infinite loop if extended logging enabled and the logfile and 22849034852cSGleb Smirnoff keyfile are the same. 22859034852cSGleb Smirnoff 22869034852cSGleb Smirnoff References: Sec 2917 / CVE-2015-7850 / TALOS-CAN-0055 22879034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 22889034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 22899034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case 22909034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 22919034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 22929034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 22939034852cSGleb Smirnoff remote configuration password or if ntpd was configured to 22949034852cSGleb Smirnoff disable authentication, then an attacker can send a set of 22959034852cSGleb Smirnoff packets to ntpd that will cause it to crash and/or create a 22969034852cSGleb Smirnoff potentially huge log file. Specifically, the attacker could 22979034852cSGleb Smirnoff enable extended logging, point the key file at the log file, 22989034852cSGleb Smirnoff and cause what amounts to an infinite loop. 22999034852cSGleb Smirnoff Mitigation: 23009034852cSGleb Smirnoff Implement BCP-38. 23019034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 23029034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 23039034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's ntpd 23049034852cSGleb Smirnoff requires: 23059034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure this 23069034852cSGleb Smirnoff if you need it. 23079034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 23089034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 23099034852cSGleb Smirnoff Monitor your ntpd instances. 23109034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 23119034852cSGleb Smirnoff 23129034852cSGleb Smirnoff* Potential path traversal vulnerability in the config file saving of 23139034852cSGleb Smirnoff ntpd on VMS. 23149034852cSGleb Smirnoff 23159034852cSGleb Smirnoff References: Sec 2918 / CVE-2015-7851 / TALOS-CAN-0062 23169034852cSGleb Smirnoff Affects: All ntp-4 releases running under VMS up to, but not 23179034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 23189034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:P/A:C) Base Score: 5.2, worst case 23199034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 23209034852cSGleb Smirnoff the (possibly spoofed) IP address is allowed to send remote 23219034852cSGleb Smirnoff configuration requests, and if the attacker knows the remote 23229034852cSGleb Smirnoff configuration password or if ntpd was configured to disable 23239034852cSGleb Smirnoff authentication, then an attacker can send a set of packets to 23249034852cSGleb Smirnoff ntpd that may cause ntpd to overwrite files. 23259034852cSGleb Smirnoff Mitigation: 23269034852cSGleb Smirnoff Implement BCP-38. 23279034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 23289034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 23299034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's ntpd 23309034852cSGleb Smirnoff requires: 23319034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 23329034852cSGleb Smirnoff this if you need it. 23339034852cSGleb Smirnoff access from permitted IP addresses. You choose the IPs. 23349034852cSGleb Smirnoff authentication. Don't disable it. Practice key security safety. 23359034852cSGleb Smirnoff Monitor your ntpd instances. 23369034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 23379034852cSGleb Smirnoff 23389034852cSGleb Smirnoff* ntpq atoascii() potential memory corruption 23399034852cSGleb Smirnoff 23409034852cSGleb Smirnoff References: Sec 2919 / CVE-2015-7852 / TALOS-CAN-0063 23419034852cSGleb Smirnoff Affects: All ntp-4 releases running up to, but not including 4.2.8p4, 23429034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 23439034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:N/C:N/I:P/A:P) Base Score: 4.0, worst case 23449034852cSGleb Smirnoff Summary: If an attacker can figure out the precise moment that ntpq 23459034852cSGleb Smirnoff is listening for data and the port number it is listening on or 23469034852cSGleb Smirnoff if the attacker can provide a malicious instance ntpd that 23479034852cSGleb Smirnoff victims will connect to then an attacker can send a set of 23489034852cSGleb Smirnoff crafted mode 6 response packets that, if received by ntpq, 23499034852cSGleb Smirnoff can cause ntpq to crash. 23509034852cSGleb Smirnoff Mitigation: 23519034852cSGleb Smirnoff Implement BCP-38. 23529034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 23539034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 23549034852cSGleb Smirnoff If you are unable to upgrade and you run ntpq against a server 23559034852cSGleb Smirnoff and ntpq crashes, try again using raw mode. Build or get a 23569034852cSGleb Smirnoff patched ntpq and see if that fixes the problem. Report new 23579034852cSGleb Smirnoff bugs in ntpq or abusive servers appropriately. 23589034852cSGleb Smirnoff If you use ntpq in scripts, make sure ntpq does what you expect 23599034852cSGleb Smirnoff in your scripts. 23609034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan and 23619034852cSGleb Smirnoff Aleksander Nikolich of Cisco Talos. 23629034852cSGleb Smirnoff 23639034852cSGleb Smirnoff* Invalid length data provided by a custom refclock driver could cause 23649034852cSGleb Smirnoff a buffer overflow. 23659034852cSGleb Smirnoff 23669034852cSGleb Smirnoff References: Sec 2920 / CVE-2015-7853 / TALOS-CAN-0064 23679034852cSGleb Smirnoff Affects: Potentially all ntp-4 releases running up to, but not 23689034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 23699034852cSGleb Smirnoff that have custom refclocks 23709034852cSGleb Smirnoff CVSS: (AV:L/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 usual case, 23719034852cSGleb Smirnoff 5.9 unusual worst case 23729034852cSGleb Smirnoff Summary: A negative value for the datalen parameter will overflow a 23739034852cSGleb Smirnoff data buffer. NTF's ntpd driver implementations always set this 23749034852cSGleb Smirnoff value to 0 and are therefore not vulnerable to this weakness. 23759034852cSGleb Smirnoff If you are running a custom refclock driver in ntpd and that 23769034852cSGleb Smirnoff driver supplies a negative value for datalen (no custom driver 23779034852cSGleb Smirnoff of even minimal competence would do this) then ntpd would 23789034852cSGleb Smirnoff overflow a data buffer. It is even hypothetically possible 23799034852cSGleb Smirnoff in this case that instead of simply crashing ntpd the attacker 23809034852cSGleb Smirnoff could effect a code injection attack. 23819034852cSGleb Smirnoff Mitigation: 23829034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 23839034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 23849034852cSGleb Smirnoff If you are unable to upgrade: 23859034852cSGleb Smirnoff If you are running custom refclock drivers, make sure 23869034852cSGleb Smirnoff the signed datalen value is either zero or positive. 23879034852cSGleb Smirnoff Monitor your ntpd instances. 23889034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 23899034852cSGleb Smirnoff 23909034852cSGleb Smirnoff* Password Length Memory Corruption Vulnerability 23919034852cSGleb Smirnoff 23929034852cSGleb Smirnoff References: Sec 2921 / CVE-2015-7854 / TALOS-CAN-0065 23939034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 23949034852cSGleb Smirnoff 4.3.0 up to, but not including 4.3.77 23959034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 best case, 23969034852cSGleb Smirnoff 1.7 usual case, 6.8, worst case 23979034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 23989034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 23999034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 24009034852cSGleb Smirnoff remote configuration password or if ntpd was (foolishly) 24019034852cSGleb Smirnoff configured to disable authentication, then an attacker can 24029034852cSGleb Smirnoff send a set of packets to ntpd that may cause it to crash, 24039034852cSGleb Smirnoff with the hypothetical possibility of a small code injection. 24049034852cSGleb Smirnoff Mitigation: 24059034852cSGleb Smirnoff Implement BCP-38. 24069034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 24079034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 24089034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's 24099034852cSGleb Smirnoff ntpd requires: 24109034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 24119034852cSGleb Smirnoff this if you need it. 24129034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 24139034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 24149034852cSGleb Smirnoff Monitor your ntpd instances. 24159034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan and 24169034852cSGleb Smirnoff Aleksander Nikolich of Cisco Talos. 24179034852cSGleb Smirnoff 24189034852cSGleb Smirnoff* decodenetnum() will ASSERT botch instead of returning FAIL on some 24199034852cSGleb Smirnoff bogus values. 24209034852cSGleb Smirnoff 24219034852cSGleb Smirnoff References: Sec 2922 / CVE-2015-7855 24229034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 24239034852cSGleb Smirnoff 4.3.0 up to, but not including 4.3.77 24249034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case 24259034852cSGleb Smirnoff Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing 24269034852cSGleb Smirnoff an unusually long data value where a network address is expected, 24279034852cSGleb Smirnoff the decodenetnum() function will abort with an assertion failure 24289034852cSGleb Smirnoff instead of simply returning a failure condition. 24299034852cSGleb Smirnoff Mitigation: 24309034852cSGleb Smirnoff Implement BCP-38. 24319034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 24329034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 24339034852cSGleb Smirnoff If you are unable to upgrade: 24349034852cSGleb Smirnoff mode 7 is disabled by default. Don't enable it. 24359034852cSGleb Smirnoff Use restrict noquery to limit who can send mode 6 24369034852cSGleb Smirnoff and mode 7 requests. 24379034852cSGleb Smirnoff Configure and use the controlkey and requestkey 24389034852cSGleb Smirnoff authentication directives to limit who can 24399034852cSGleb Smirnoff send mode 6 and mode 7 requests. 24409034852cSGleb Smirnoff Monitor your ntpd instances. 24419034852cSGleb Smirnoff Credit: This weakness was discovered by John D "Doug" Birdwell of IDA.org. 24429034852cSGleb Smirnoff 24439034852cSGleb Smirnoff* NAK to the Future: Symmetric association authentication bypass via 24449034852cSGleb Smirnoff crypto-NAK. 24459034852cSGleb Smirnoff 24469034852cSGleb Smirnoff References: Sec 2941 / CVE-2015-7871 24479034852cSGleb Smirnoff Affects: All ntp-4 releases between 4.2.5p186 up to but not including 24489034852cSGleb Smirnoff 4.2.8p4, and 4.3.0 up to but not including 4.3.77 24499034852cSGleb Smirnoff CVSS: (AV:N/AC:L/Au:N/C:N/I:P/A:P) Base Score: 6.4 24509034852cSGleb Smirnoff Summary: Crypto-NAK packets can be used to cause ntpd to accept time 24519034852cSGleb Smirnoff from unauthenticated ephemeral symmetric peers by bypassing the 24529034852cSGleb Smirnoff authentication required to mobilize peer associations. This 24539034852cSGleb Smirnoff vulnerability appears to have been introduced in ntp-4.2.5p186 24549034852cSGleb Smirnoff when the code handling mobilization of new passive symmetric 24559034852cSGleb Smirnoff associations (lines 1103-1165) was refactored. 24569034852cSGleb Smirnoff Mitigation: 24579034852cSGleb Smirnoff Implement BCP-38. 24589034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 24599034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 24609034852cSGleb Smirnoff If you are unable to upgrade: 24619034852cSGleb Smirnoff Apply the patch to the bottom of the "authentic" check 24629034852cSGleb Smirnoff block around line 1136 of ntp_proto.c. 24639034852cSGleb Smirnoff Monitor your ntpd instances. 24644990d495SXin LI Credit: This weakness was discovered by Matthew Van Gundy of Cisco ASIG. 24659034852cSGleb Smirnoff 24669034852cSGleb SmirnoffBackward-Incompatible changes: 24679034852cSGleb Smirnoff* [Bug 2817] Default on Linux is now "rlimit memlock -1". 24689034852cSGleb Smirnoff While the general default of 32M is still the case, under Linux 24699034852cSGleb Smirnoff the default value has been changed to -1 (do not lock ntpd into 24709034852cSGleb Smirnoff memory). A value of 0 means "lock ntpd into memory with whatever 24719034852cSGleb Smirnoff memory it needs." If your ntp.conf file has an explicit "rlimit memlock" 24729034852cSGleb Smirnoff value in it, that value will continue to be used. 24739034852cSGleb Smirnoff 24749034852cSGleb Smirnoff* [Bug 2886] Misspelling: "outlyer" should be "outlier". 24759034852cSGleb Smirnoff If you've written a script that looks for this case in, say, the 24769034852cSGleb Smirnoff output of ntpq, you probably want to change your regex matches 24779034852cSGleb Smirnoff from 'outlyer' to 'outl[iy]er'. 24789034852cSGleb Smirnoff 24799034852cSGleb SmirnoffNew features in this release: 24809034852cSGleb Smirnoff* 'rlimit memlock' now has finer-grained control. A value of -1 means 24819034852cSGleb Smirnoff "don't lock ntpd into memore". This is the default for Linux boxes. 24829034852cSGleb Smirnoff A value of 0 means "lock ntpd into memory" with no limits. Otherwise 24839034852cSGleb Smirnoff the value is the number of megabytes of memory to lock. The default 24849034852cSGleb Smirnoff is 32 megabytes. 24859034852cSGleb Smirnoff 24869034852cSGleb Smirnoff* The old Google Test framework has been replaced with a new framework, 24879034852cSGleb Smirnoff based on http://www.throwtheswitch.org/unity/ . 24889034852cSGleb Smirnoff 24899034852cSGleb SmirnoffBug Fixes and Improvements: 24909034852cSGleb Smirnoff* [Bug 2332] (reopened) Exercise thread cancellation once before dropping 24919034852cSGleb Smirnoff privileges and limiting resources in NTPD removes the need to link 24929034852cSGleb Smirnoff forcefully against 'libgcc_s' which does not always work. J.Perlinger 24939034852cSGleb Smirnoff* [Bug 2595] ntpdate man page quirks. Hal Murray, Harlan Stenn. 24949034852cSGleb Smirnoff* [Bug 2625] Deprecate flag1 in local refclock. Hal Murray, Harlan Stenn. 24959034852cSGleb Smirnoff* [Bug 2817] Stop locking ntpd into memory by default under Linux. H.Stenn. 24969034852cSGleb Smirnoff* [Bug 2821] minor build issues: fixed refclock_gpsdjson.c. perlinger@ntp.org 24979034852cSGleb Smirnoff* [Bug 2823] ntpsweep with recursive peers option doesn't work. H.Stenn. 24989034852cSGleb Smirnoff* [Bug 2849] Systems with more than one default route may never 24999034852cSGleb Smirnoff synchronize. Brian Utterback. Note that this patch might need to 25009034852cSGleb Smirnoff be reverted once Bug 2043 has been fixed. 25019034852cSGleb Smirnoff* [Bug 2864] 4.2.8p3 fails to compile on Windows. Juergen Perlinger 25029034852cSGleb Smirnoff* [Bug 2866] segmentation fault at initgroups(). Harlan Stenn. 25039034852cSGleb Smirnoff* [Bug 2867] ntpd with autokey active crashed by 'ntpq -crv'. J.Perlinger 25049034852cSGleb Smirnoff* [Bug 2873] libevent should not include .deps/ in the tarball. H.Stenn 25059034852cSGleb Smirnoff* [Bug 2874] Don't distribute generated sntp/tests/fileHandlingTest.h. H.Stenn 25069034852cSGleb Smirnoff* [Bug 2875] sntp/Makefile.am: Get rid of DIST_SUBDIRS. libevent must 25079034852cSGleb Smirnoff be configured for the distribution targets. Harlan Stenn. 25089034852cSGleb Smirnoff* [Bug 2883] ntpd crashes on exit with empty driftfile. Miroslav Lichvar. 25099034852cSGleb Smirnoff* [Bug 2886] Mis-spelling: "outlyer" should be "outlier". dave@horsfall.org 25109034852cSGleb Smirnoff* [Bug 2888] streamline calendar functions. perlinger@ntp.org 25119034852cSGleb Smirnoff* [Bug 2889] ntp-dev-4.3.67 does not build on Windows. perlinger@ntp.org 25129034852cSGleb Smirnoff* [Bug 2890] Ignore ENOBUFS on routing netlink socket. Konstantin Khlebnikov. 25139034852cSGleb Smirnoff* [Bug 2906] make check needs better support for pthreads. Harlan Stenn. 25149034852cSGleb Smirnoff* [Bug 2907] dist* build targets require our libevent/ to be enabled. HStenn. 25159034852cSGleb Smirnoff* [Bug 2912] no munlockall() under Windows. David Taylor, Harlan Stenn. 25169034852cSGleb Smirnoff* libntp/emalloc.c: Remove explicit include of stdint.h. Harlan Stenn. 25179034852cSGleb Smirnoff* Put Unity CPPFLAGS items in unity_config.h. Harlan Stenn. 25189034852cSGleb Smirnoff* tests/ntpd/g_leapsec.cpp typo fix. Harlan Stenn. 25199034852cSGleb Smirnoff* Phase 1 deprecation of google test in sntp/tests/. Harlan Stenn. 25209034852cSGleb Smirnoff* On some versions of HP-UX, inttypes.h does not include stdint.h. H.Stenn. 25219034852cSGleb Smirnoff* top_srcdir can change based on ntp v. sntp. Harlan Stenn. 25229034852cSGleb Smirnoff* sntp/tests/ function parameter list cleanup. Damir Tomić. 25239034852cSGleb Smirnoff* tests/libntp/ function parameter list cleanup. Damir Tomić. 25249034852cSGleb Smirnoff* tests/ntpd/ function parameter list cleanup. Damir Tomić. 25259034852cSGleb Smirnoff* sntp/unity/unity_config.h: handle stdint.h. Harlan Stenn. 25269034852cSGleb Smirnoff* sntp/unity/unity_internals.h: handle *INTPTR_MAX on old Solaris. H.Stenn. 25279034852cSGleb Smirnoff* tests/libntp/timevalops.c and timespecops.c fixed error printing. D.Tomić. 25289034852cSGleb Smirnoff* tests/libntp/ improvements in code and fixed error printing. Damir Tomić. 25299034852cSGleb Smirnoff* tests/libntp: a_md5encrypt.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c, 25309034852cSGleb Smirnoff caltontp.c, clocktime.c, humandate.c, hextolfp.c, decodenetnum.c - fixed 25319034852cSGleb Smirnoff formatting; first declaration, then code (C90); deleted unnecessary comments; 25329034852cSGleb Smirnoff changed from sprintf to snprintf; fixed order of includes. Tomasz Flendrich 25339034852cSGleb Smirnoff* tests/libntp/lfpfunc.c remove unnecessary include, remove old comments, 25349034852cSGleb Smirnoff fix formatting, cleanup. Tomasz Flendrich 25359034852cSGleb Smirnoff* tests/libntp/lfptostr.c remove unnecessary include, add consts, fix formatting. 25369034852cSGleb Smirnoff Tomasz Flendrich 25379034852cSGleb Smirnoff* tests/libntp/statestr.c remove empty functions, remove unnecessary include, 25389034852cSGleb Smirnoff fix formatting. Tomasz Flendrich 25399034852cSGleb Smirnoff* tests/libntp/modetoa.c fixed formatting. Tomasz Flendrich 25409034852cSGleb Smirnoff* tests/libntp/msyslog.c fixed formatting. Tomasz Flendrich 25419034852cSGleb Smirnoff* tests/libntp/numtoa.c deleted unnecessary empty functions, fixed formatting. 25429034852cSGleb Smirnoff Tomasz Flendrich 25439034852cSGleb Smirnoff* tests/libntp/numtohost.c added const, fixed formatting. Tomasz Flendrich 25449034852cSGleb Smirnoff* tests/libntp/refnumtoa.c fixed formatting. Tomasz Flendrich 25459034852cSGleb Smirnoff* tests/libntp/ssl_init.c fixed formatting. Tomasz Flendrich 25469034852cSGleb Smirnoff* tests/libntp/tvtots.c fixed a bug, fixed formatting. Tomasz Flendrich 25479034852cSGleb Smirnoff* tests/libntp/uglydate.c removed an unnecessary include. Tomasz Flendrich 25489034852cSGleb Smirnoff* tests/libntp/vi64ops.c removed an unnecessary comment, fixed formatting. 25499034852cSGleb Smirnoff* tests/libntp/ymd3yd.c removed an empty function and an unnecessary include, 25509034852cSGleb Smirnofffixed formatting. Tomasz Flendrich 25519034852cSGleb Smirnoff* tests/libntp/timespecops.c fixed formatting, fixed the order of includes, 25529034852cSGleb Smirnoff removed unnecessary comments, cleanup. Tomasz Flendrich 25539034852cSGleb Smirnoff* tests/libntp/timevalops.c fixed the order of includes, deleted unnecessary 25549034852cSGleb Smirnoff comments, cleanup. Tomasz Flendrich 25559034852cSGleb Smirnoff* tests/libntp/sockaddrtest.h making it agree to NTP's conventions of formatting. 25569034852cSGleb Smirnoff Tomasz Flendrich 25579034852cSGleb Smirnoff* tests/libntp/lfptest.h cleanup. Tomasz Flendrich 25589034852cSGleb Smirnoff* tests/libntp/test-libntp.c fix formatting. Tomasz Flendrich 25599034852cSGleb Smirnoff* sntp/tests/crypto.c is now using proper Unity's assertions, fixed formatting. 25609034852cSGleb Smirnoff Tomasz Flendrich 25619034852cSGleb Smirnoff* sntp/tests/kodDatabase.c added consts, deleted empty function, 25629034852cSGleb Smirnoff fixed formatting. Tomasz Flendrich 25639034852cSGleb Smirnoff* sntp/tests/kodFile.c cleanup, fixed formatting. Tomasz Flendrich 25649034852cSGleb Smirnoff* sntp/tests/packetHandling.c is now using proper Unity's assertions, 25659034852cSGleb Smirnoff fixed formatting, deleted unused variable. Tomasz Flendrich 25669034852cSGleb Smirnoff* sntp/tests/keyFile.c is now using proper Unity's assertions, fixed formatting. 25679034852cSGleb Smirnoff Tomasz Flendrich 25689034852cSGleb Smirnoff* sntp/tests/packetProcessing.c changed from sprintf to snprintf, 25699034852cSGleb Smirnoff fixed formatting. Tomasz Flendrich 25709034852cSGleb Smirnoff* sntp/tests/utilities.c is now using proper Unity's assertions, changed 25719034852cSGleb Smirnoff the order of includes, fixed formatting, removed unnecessary comments. 25729034852cSGleb Smirnoff Tomasz Flendrich 25739034852cSGleb Smirnoff* sntp/tests/sntptest.h fixed formatting. Tomasz Flendrich 25749034852cSGleb Smirnoff* sntp/tests/fileHandlingTest.h.in fixed a possible buffer overflow problem, 25759034852cSGleb Smirnoff made one function do its job, deleted unnecessary prints, fixed formatting. 25769034852cSGleb Smirnoff Tomasz Flendrich 25779034852cSGleb Smirnoff* sntp/unity/Makefile.am added a missing header. Tomasz Flendrich 25789034852cSGleb Smirnoff* sntp/unity/unity_config.h: Distribute it. Harlan Stenn. 25799034852cSGleb Smirnoff* sntp/libevent/evconfig-private.h: remove generated filefrom SCM. H.Stenn. 25809034852cSGleb Smirnoff* sntp/unity/Makefile.am: fix some broken paths. Harlan Stenn. 25819034852cSGleb Smirnoff* sntp/unity/unity.c: Clean up a printf(). Harlan Stenn. 25829034852cSGleb Smirnoff* Phase 1 deprecation of google test in tests/libntp/. Harlan Stenn. 25839034852cSGleb Smirnoff* Don't build sntp/libevent/sample/. Harlan Stenn. 25849034852cSGleb Smirnoff* tests/libntp/test_caltontp needs -lpthread. Harlan Stenn. 25859034852cSGleb Smirnoff* br-flock: --enable-local-libevent. Harlan Stenn. 25869034852cSGleb Smirnoff* Wrote tests for ntpd/ntp_prio_q.c. Tomasz Flendrich 25879034852cSGleb Smirnoff* scripts/lib/NTP/Util.pm: stratum output is version-dependent. Harlan Stenn. 25889034852cSGleb Smirnoff* Get rid of the NTP_ prefix on our assertion macros. Harlan Stenn. 25899034852cSGleb Smirnoff* Code cleanup. Harlan Stenn. 25909034852cSGleb Smirnoff* libntp/icom.c: Typo fix. Harlan Stenn. 25919034852cSGleb Smirnoff* util/ntptime.c: initialization nit. Harlan Stenn. 25929034852cSGleb Smirnoff* ntpd/ntp_peer.c:newpeer(): added a DEBUG_REQUIRE(srcadr). Harlan Stenn. 25939034852cSGleb Smirnoff* Add std_unity_tests to various Makefile.am files. Harlan Stenn. 25949034852cSGleb Smirnoff* ntpd/ntp_restrict.c: added a few assertions, created tests for this file. 25959034852cSGleb Smirnoff Tomasz Flendrich 25969034852cSGleb Smirnoff* Changed progname to be const in many files - now it's consistent. Tomasz 25979034852cSGleb Smirnoff Flendrich 25989034852cSGleb Smirnoff* Typo fix for GCC warning suppression. Harlan Stenn. 25999034852cSGleb Smirnoff* Added tests/ntpd/ntp_scanner.c test. Damir Tomić. 26009034852cSGleb Smirnoff* Added declarations to all Unity tests, and did minor fixes to them. 26019034852cSGleb Smirnoff Reduced the number of warnings by half. Damir Tomić. 26029034852cSGleb Smirnoff* Updated generate_test_runner.rb and updated the sntp/unity/auto directory 26039034852cSGleb Smirnoff with the latest Unity updates from Mark. Damir Tomić. 26049034852cSGleb Smirnoff* Retire google test - phase I. Harlan Stenn. 26059034852cSGleb Smirnoff* Unity test cleanup: move declaration of 'initializing'. Harlan Stenn. 26069034852cSGleb Smirnoff* Update the NEWS file. Harlan Stenn. 26079034852cSGleb Smirnoff* Autoconf cleanup. Harlan Stenn. 26089034852cSGleb Smirnoff* Unit test dist cleanup. Harlan Stenn. 26099034852cSGleb Smirnoff* Cleanup various test Makefile.am files. Harlan Stenn. 26109034852cSGleb Smirnoff* Pthread autoconf macro cleanup. Harlan Stenn. 26119034852cSGleb Smirnoff* Fix progname definition in unity runner scripts. Harlan Stenn. 26129034852cSGleb Smirnoff* Clean trailing whitespace in tests/ntpd/Makefile.am. Harlan Stenn. 26139034852cSGleb Smirnoff* Update the patch for bug 2817. Harlan Stenn. 26149034852cSGleb Smirnoff* More updates for bug 2817. Harlan Stenn. 26159034852cSGleb Smirnoff* Fix bugs in tests/ntpd/ntp_prio_q.c. Harlan Stenn. 26169034852cSGleb Smirnoff* gcc on older HPUX may need +allowdups. Harlan Stenn. 26179034852cSGleb Smirnoff* Adding missing MCAST protection. Harlan Stenn. 26189034852cSGleb Smirnoff* Disable certain test programs on certain platforms. Harlan Stenn. 26199034852cSGleb Smirnoff* Implement --enable-problem-tests (on by default). Harlan Stenn. 26209034852cSGleb Smirnoff* build system tweaks. Harlan Stenn. 26219034852cSGleb Smirnoff 26229034852cSGleb Smirnoff--- 2623276da39aSCy SchubertNTP 4.2.8p3 (Harlan Stenn <stenn@ntp.org>, 2015/06/29) 2624276da39aSCy Schubert 2625276da39aSCy SchubertFocus: 1 Security fix. Bug fixes and enhancements. Leap-second improvements. 2626276da39aSCy Schubert 2627276da39aSCy SchubertSeverity: MEDIUM 2628276da39aSCy Schubert 2629276da39aSCy SchubertSecurity Fix: 2630276da39aSCy Schubert 2631276da39aSCy Schubert* [Sec 2853] Crafted remote config packet can crash some versions of 2632276da39aSCy Schubert ntpd. Aleksis Kauppinen, Juergen Perlinger, Harlan Stenn. 2633276da39aSCy Schubert 2634276da39aSCy SchubertUnder specific circumstances an attacker can send a crafted packet to 2635276da39aSCy Schubertcause a vulnerable ntpd instance to crash. This requires each of the 2636276da39aSCy Schubertfollowing to be true: 2637276da39aSCy Schubert 2638276da39aSCy Schubert1) ntpd set up to allow remote configuration (not allowed by default), and 2639276da39aSCy Schubert2) knowledge of the configuration password, and 2640276da39aSCy Schubert3) access to a computer entrusted to perform remote configuration. 2641276da39aSCy Schubert 2642276da39aSCy SchubertThis vulnerability is considered low-risk. 2643276da39aSCy Schubert 2644276da39aSCy SchubertNew features in this release: 2645276da39aSCy Schubert 2646276da39aSCy SchubertOptional (disabled by default) support to have ntpd provide smeared 2647276da39aSCy Schubertleap second time. A specially built and configured ntpd will only 2648276da39aSCy Schubertoffer smeared time in response to client packets. These response 2649276da39aSCy Schubertpackets will also contain a "refid" of 254.a.b.c, where the 24 bits 2650276da39aSCy Schubertof a, b, and c encode the amount of smear in a 2:22 integer:fraction 2651276da39aSCy Schubertformat. See README.leapsmear and http://bugs.ntp.org/2855 for more 2652276da39aSCy Schubertinformation. 2653276da39aSCy Schubert 2654276da39aSCy Schubert *IF YOU CHOOSE TO CONFIGURE NTPD TO PROVIDE LEAP SMEAR TIME* 2655276da39aSCy Schubert *BE SURE YOU DO NOT OFFER THAT TIME ON PUBLIC TIMESERVERS.* 2656276da39aSCy Schubert 2657276da39aSCy SchubertWe've imported the Unity test framework, and have begun converting 2658276da39aSCy Schubertthe existing google-test items to this new framework. If you want 2659276da39aSCy Schubertto write new tests or change old ones, you'll need to have ruby 2660276da39aSCy Schubertinstalled. You don't need ruby to run the test suite. 2661276da39aSCy Schubert 2662276da39aSCy SchubertBug Fixes and Improvements: 2663276da39aSCy Schubert 2664276da39aSCy Schubert* CID 739725: Fix a rare resource leak in libevent/listener.c. 2665276da39aSCy Schubert* CID 1295478: Quiet a pedantic potential error from the fix for Bug 2776. 2666276da39aSCy Schubert* CID 1296235: Fix refclock_jjy.c and correcting type of the driver40-ja.html 2667276da39aSCy Schubert* CID 1269537: Clean up a line of dead code in getShmTime(). 2668276da39aSCy Schubert* [Bug 1060] Buffer overruns in libparse/clk_rawdcf.c. Helge Oldach. 2669276da39aSCy Schubert* [Bug 2590] autogen-5.18.5. 2670276da39aSCy Schubert* [Bug 2612] restrict: Warn when 'monitor' can't be disabled because 2671276da39aSCy Schubert of 'limited'. 2672276da39aSCy Schubert* [Bug 2650] fix includefile processing. 2673276da39aSCy Schubert* [Bug 2745] ntpd -x steps clock on leap second 2674276da39aSCy Schubert Fixed an initial-value problem that caused misbehaviour in absence of 2675276da39aSCy Schubert any leapsecond information. 2676276da39aSCy Schubert Do leap second stepping only of the step adjustment is beyond the 2677276da39aSCy Schubert proper jump distance limit and step correction is allowed at all. 2678276da39aSCy Schubert* [Bug 2750] build for Win64 2679276da39aSCy Schubert Building for 32bit of loopback ppsapi needs def file 2680276da39aSCy Schubert* [Bug 2776] Improve ntpq's 'help keytype'. 2681276da39aSCy Schubert* [Bug 2778] Implement "apeers" ntpq command to include associd. 2682276da39aSCy Schubert* [Bug 2782] Refactor refclock_shm.c, add memory barrier protection. 2683276da39aSCy Schubert* [Bug 2792] If the IFF_RUNNING interface flag is supported then an 2684276da39aSCy Schubert interface is ignored as long as this flag is not set since the 2685276da39aSCy Schubert interface is not usable (e.g., no link). 2686276da39aSCy Schubert* [Bug 2794] Clean up kernel clock status reports. 2687276da39aSCy Schubert* [Bug 2800] refclock_true.c true_debug() can't open debug log because 2688276da39aSCy Schubert of incompatible open/fdopen parameters. 2689276da39aSCy Schubert* [Bug 2804] install-local-data assumes GNU 'find' semantics. 2690276da39aSCy Schubert* [Bug 2805] ntpd fails to join multicast group. 2691276da39aSCy Schubert* [Bug 2806] refclock_jjy.c supports the Telephone JJY. 2692276da39aSCy Schubert* [Bug 2808] GPSD_JSON driver enhancements, step 1. 2693276da39aSCy Schubert Fix crash during cleanup if GPS device not present and char device. 2694276da39aSCy Schubert Increase internal token buffer to parse all JSON data, even SKY. 2695276da39aSCy Schubert Defer logging of errors during driver init until the first unit is 2696276da39aSCy Schubert started, so the syslog is not cluttered when the driver is not used. 2697276da39aSCy Schubert Various improvements, see http://bugs.ntp.org/2808 for details. 2698276da39aSCy Schubert Changed libjsmn to a more recent version. 2699276da39aSCy Schubert* [Bug 2810] refclock_shm.c memory barrier code needs tweaks for QNX. 2700276da39aSCy Schubert* [Bug 2813] HP-UX needs -D__STDC_VERSION__=199901L and limits.h. 2701276da39aSCy Schubert* [Bug 2815] net-snmp before v5.4 has circular library dependencies. 2702276da39aSCy Schubert* [Bug 2821] Add a missing NTP_PRINTF and a missing const. 2703276da39aSCy Schubert* [Bug 2822] New leap column in sntp broke NTP::Util.pm. 2704276da39aSCy Schubert* [Bug 2824] Convert update-leap to perl. (also see 2769) 2705276da39aSCy Schubert* [Bug 2825] Quiet file installation in html/ . 2706276da39aSCy Schubert* [Bug 2830] ntpd doesn't always transfer the correct TAI offset via autokey 2707276da39aSCy Schubert NTPD transfers the current TAI (instead of an announcement) now. 2708276da39aSCy Schubert This might still needed improvement. 2709276da39aSCy Schubert Update autokey data ASAP when 'sys_tai' changes. 2710276da39aSCy Schubert Fix unit test that was broken by changes for autokey update. 2711276da39aSCy Schubert Avoid potential signature length issue and use DPRINTF where possible 2712276da39aSCy Schubert in ntp_crypto.c. 2713276da39aSCy Schubert* [Bug 2832] refclock_jjy.c supports the TDC-300. 2714276da39aSCy Schubert* [Bug 2834] Correct a broken html tag in html/refclock.html 2715276da39aSCy Schubert* [Bug 2836] DFC77 patches from Frank Kardel to make decoding more 2716276da39aSCy Schubert robust, and require 2 consecutive timestamps to be consistent. 2717276da39aSCy Schubert* [Bug 2837] Allow a configurable DSCP value. 2718276da39aSCy Schubert* [Bug 2837] add test for DSCP to ntpd/complete.conf.in 2719276da39aSCy Schubert* [Bug 2842] Glitch in ntp.conf.def documentation stanza. 2720276da39aSCy Schubert* [Bug 2842] Bug in mdoc2man. 2721276da39aSCy Schubert* [Bug 2843] make check fails on 4.3.36 2722276da39aSCy Schubert Fixed compiler warnings about numeric range overflow 2723276da39aSCy Schubert (The original topic was fixed in a byplay to bug#2830) 2724276da39aSCy Schubert* [Bug 2845] Harden memory allocation in ntpd. 2725276da39aSCy Schubert* [Bug 2852] 'make check' can't find unity.h. Hal Murray. 2726276da39aSCy Schubert* [Bug 2854] Missing brace in libntp/strdup.c. Masanari Iida. 2727276da39aSCy Schubert* [Bug 2855] Parser fix for conditional leap smear code. Harlan Stenn. 2728276da39aSCy Schubert* [Bug 2855] Report leap smear in the REFID. Harlan Stenn. 2729276da39aSCy Schubert* [Bug 2855] Implement conditional leap smear code. Martin Burnicki. 2730276da39aSCy Schubert* [Bug 2856] ntpd should wait() on terminated child processes. Paul Green. 2731276da39aSCy Schubert* [Bug 2857] Stratus VOS does not support SIGIO. Paul Green. 2732276da39aSCy Schubert* [Bug 2859] Improve raw DCF77 robustness deconding. Frank Kardel. 2733276da39aSCy Schubert* [Bug 2860] ntpq ifstats sanity check is too stringent. Frank Kardel. 2734276da39aSCy Schubert* html/drivers/driver22.html: typo fix. Harlan Stenn. 2735276da39aSCy Schubert* refidsmear test cleanup. Tomasz Flendrich. 2736276da39aSCy Schubert* refidsmear function support and tests. Harlan Stenn. 2737276da39aSCy Schubert* sntp/tests/Makefile.am: remove g_nameresolution.cpp as it tested 2738276da39aSCy Schubert something that was only in the 4.2.6 sntp. Harlan Stenn. 2739276da39aSCy Schubert* Modified tests/bug-2803/Makefile.am so it builds Unity framework tests. 2740276da39aSCy Schubert Damir Tomić 2741276da39aSCy Schubert* Modified tests/libtnp/Makefile.am so it builds Unity framework tests. 2742276da39aSCy Schubert Damir Tomić 2743276da39aSCy Schubert* Modified sntp/tests/Makefile.am so it builds Unity framework tests. 2744276da39aSCy Schubert Damir Tomić 2745276da39aSCy Schubert* tests/sandbox/smeartest.c: Harlan Stenn, Damir Tomic, Juergen Perlinger. 2746276da39aSCy Schubert* Converted from gtest to Unity: tests/bug-2803/. Damir Tomić 2747276da39aSCy Schubert* Converted from gtest to Unity: tests/libntp/ a_md5encrypt, atoint.c, 2748276da39aSCy Schubert atouint.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c, 2749276da39aSCy Schubert calyearstart.c, clocktime.c, hextoint.c, lfpfunc.c, modetoa.c, 2750276da39aSCy Schubert numtoa.c, numtohost.c, refnumtoa.c, ssl_init.c, statestr.c, 2751276da39aSCy Schubert timespecops.c, timevalops.c, uglydate.c, vi64ops.c, ymd2yd.c. 2752276da39aSCy Schubert Damir Tomić 2753276da39aSCy Schubert* Converted from gtest to Unity: sntp/tests/ kodDatabase.c, kodFile.c, 2754276da39aSCy Schubert networking.c, keyFile.c, utilities.cpp, sntptest.h, 2755276da39aSCy Schubert fileHandlingTest.h. Damir Tomić 2756276da39aSCy Schubert* Initial support for experimental leap smear code. Harlan Stenn. 2757276da39aSCy Schubert* Fixes to sntp/tests/fileHandlingTest.h.in. Harlan Stenn. 2758276da39aSCy Schubert* Report select() debug messages at debug level 3 now. 2759276da39aSCy Schubert* sntp/scripts/genLocInfo: treat raspbian as debian. 2760276da39aSCy Schubert* Unity test framework fixes. 2761276da39aSCy Schubert ** Requires ruby for changes to tests. 2762276da39aSCy Schubert* Initial support for PACKAGE_VERSION tests. 2763276da39aSCy Schubert* sntp/libpkgver belongs in EXTRA_DIST, not DIST_SUBDIRS. 2764276da39aSCy Schubert* tests/bug-2803/Makefile.am must distribute bug-2803.h. 2765276da39aSCy Schubert* Add an assert to the ntpq ifstats code. 2766276da39aSCy Schubert* Clean up the RLIMIT_STACK code. 2767276da39aSCy Schubert* Improve the ntpq documentation around the controlkey keyid. 2768276da39aSCy Schubert* ntpq.c cleanup. 2769276da39aSCy Schubert* Windows port build cleanup. 2770276da39aSCy Schubert 2771276da39aSCy Schubert--- 2772276da39aSCy SchubertNTP 4.2.8p2 (Harlan Stenn <stenn@ntp.org>, 2015/04/07) 2773a25439b6SCy Schubert 2774a25439b6SCy SchubertFocus: Security and Bug fixes, enhancements. 2775a25439b6SCy Schubert 2776a25439b6SCy SchubertSeverity: MEDIUM 2777a25439b6SCy Schubert 2778a25439b6SCy SchubertIn addition to bug fixes and enhancements, this release fixes the 2779a25439b6SCy Schubertfollowing medium-severity vulnerabilities involving private key 2780a25439b6SCy Schubertauthentication: 2781a25439b6SCy Schubert 2782a25439b6SCy Schubert* [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto. 2783a25439b6SCy Schubert 2784a25439b6SCy Schubert References: Sec 2779 / CVE-2015-1798 / VU#374268 2785a25439b6SCy Schubert Affects: All NTP4 releases starting with ntp-4.2.5p99 up to but not 2786a25439b6SCy Schubert including ntp-4.2.8p2 where the installation uses symmetric keys 2787a25439b6SCy Schubert to authenticate remote associations. 2788a25439b6SCy Schubert CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4 2789a25439b6SCy Schubert Date Resolved: Stable (4.2.8p2) 07 Apr 2015 2790a25439b6SCy Schubert Summary: When ntpd is configured to use a symmetric key to authenticate 2791a25439b6SCy Schubert a remote NTP server/peer, it checks if the NTP message 2792a25439b6SCy Schubert authentication code (MAC) in received packets is valid, but not if 2793a25439b6SCy Schubert there actually is any MAC included. Packets without a MAC are 2794a25439b6SCy Schubert accepted as if they had a valid MAC. This allows a MITM attacker to 2795a25439b6SCy Schubert send false packets that are accepted by the client/peer without 2796a25439b6SCy Schubert having to know the symmetric key. The attacker needs to know the 2797a25439b6SCy Schubert transmit timestamp of the client to match it in the forged reply 2798a25439b6SCy Schubert and the false reply needs to reach the client before the genuine 2799a25439b6SCy Schubert reply from the server. The attacker doesn't necessarily need to be 2800a25439b6SCy Schubert relaying the packets between the client and the server. 2801a25439b6SCy Schubert 2802a25439b6SCy Schubert Authentication using autokey doesn't have this problem as there is 2803a25439b6SCy Schubert a check that requires the key ID to be larger than NTP_MAXKEY, 2804a25439b6SCy Schubert which fails for packets without a MAC. 2805a25439b6SCy Schubert Mitigation: 2806a25439b6SCy Schubert Upgrade to 4.2.8p2, or later, from the NTP Project Download Page 2807a25439b6SCy Schubert or the NTP Public Services Project Download Page 2808a25439b6SCy Schubert Configure ntpd with enough time sources and monitor it properly. 2809a25439b6SCy Schubert Credit: This issue was discovered by Miroslav Lichvar, of Red Hat. 2810a25439b6SCy Schubert 2811a25439b6SCy Schubert* [Sec 2781] Authentication doesn't protect symmetric associations against 2812a25439b6SCy Schubert DoS attacks. 2813a25439b6SCy Schubert 2814a25439b6SCy Schubert References: Sec 2781 / CVE-2015-1799 / VU#374268 2815a25439b6SCy Schubert Affects: All NTP releases starting with at least xntp3.3wy up to but 2816a25439b6SCy Schubert not including ntp-4.2.8p2 where the installation uses symmetric 2817a25439b6SCy Schubert key authentication. 2818a25439b6SCy Schubert CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4 2819a25439b6SCy Schubert Note: the CVSS base Score for this issue could be 4.3 or lower, and 2820a25439b6SCy Schubert it could be higher than 5.4. 2821a25439b6SCy Schubert Date Resolved: Stable (4.2.8p2) 07 Apr 2015 2822a25439b6SCy Schubert Summary: An attacker knowing that NTP hosts A and B are peering with 2823a25439b6SCy Schubert each other (symmetric association) can send a packet to host A 2824a25439b6SCy Schubert with source address of B which will set the NTP state variables 2825a25439b6SCy Schubert on A to the values sent by the attacker. Host A will then send 2826a25439b6SCy Schubert on its next poll to B a packet with originate timestamp that 2827a25439b6SCy Schubert doesn't match the transmit timestamp of B and the packet will 2828a25439b6SCy Schubert be dropped. If the attacker does this periodically for both 2829a25439b6SCy Schubert hosts, they won't be able to synchronize to each other. This is 2830a25439b6SCy Schubert a known denial-of-service attack, described at 2831a25439b6SCy Schubert https://www.eecis.udel.edu/~mills/onwire.html . 2832a25439b6SCy Schubert 2833a25439b6SCy Schubert According to the document the NTP authentication is supposed to 2834a25439b6SCy Schubert protect symmetric associations against this attack, but that 2835a25439b6SCy Schubert doesn't seem to be the case. The state variables are updated even 2836a25439b6SCy Schubert when authentication fails and the peers are sending packets with 2837a25439b6SCy Schubert originate timestamps that don't match the transmit timestamps on 2838a25439b6SCy Schubert the receiving side. 2839a25439b6SCy Schubert 2840a25439b6SCy Schubert This seems to be a very old problem, dating back to at least 2841a25439b6SCy Schubert xntp3.3wy. It's also in the NTPv3 (RFC 1305) and NTPv4 (RFC 5905) 2842a25439b6SCy Schubert specifications, so other NTP implementations with support for 2843a25439b6SCy Schubert symmetric associations and authentication may be vulnerable too. 2844a25439b6SCy Schubert An update to the NTP RFC to correct this error is in-process. 2845a25439b6SCy Schubert Mitigation: 2846a25439b6SCy Schubert Upgrade to 4.2.8p2, or later, from the NTP Project Download Page 2847a25439b6SCy Schubert or the NTP Public Services Project Download Page 2848a25439b6SCy Schubert Note that for users of autokey, this specific style of MITM attack 2849a25439b6SCy Schubert is simply a long-known potential problem. 2850a25439b6SCy Schubert Configure ntpd with appropriate time sources and monitor ntpd. 2851a25439b6SCy Schubert Alert your staff if problems are detected. 2852a25439b6SCy Schubert Credit: This issue was discovered by Miroslav Lichvar, of Red Hat. 2853a25439b6SCy Schubert 2854a25439b6SCy Schubert* New script: update-leap 2855a25439b6SCy SchubertThe update-leap script will verify and if necessary, update the 2856a25439b6SCy Schubertleap-second definition file. 2857a25439b6SCy SchubertIt requires the following commands in order to work: 2858a25439b6SCy Schubert 2859a25439b6SCy Schubert wget logger tr sed shasum 2860a25439b6SCy Schubert 2861a25439b6SCy SchubertSome may choose to run this from cron. It needs more portability testing. 2862a25439b6SCy Schubert 2863a25439b6SCy SchubertBug Fixes and Improvements: 2864a25439b6SCy Schubert 2865a25439b6SCy Schubert* [Bug 1787] DCF77's formerly "antenna" bit is "call bit" since 2003. 2866a25439b6SCy Schubert* [Bug 1960] setsockopt IPV6_MULTICAST_IF: Invalid argument. 2867a25439b6SCy Schubert* [Bug 2346] "graceful termination" signals do not do peer cleanup. 2868a25439b6SCy Schubert* [Bug 2728] See if C99-style structure initialization works. 2869a25439b6SCy Schubert* [Bug 2747] Upgrade libevent to 2.1.5-beta. 2870a25439b6SCy Schubert* [Bug 2749] ntp/lib/NTP/Util.pm needs update for ntpq -w, IPv6, .POOL. . 2871a25439b6SCy Schubert* [Bug 2751] jitter.h has stale copies of l_fp macros. 2872a25439b6SCy Schubert* [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM. 2873a25439b6SCy Schubert* [Bug 2757] Quiet compiler warnings. 2874a25439b6SCy Schubert* [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq. 2875a25439b6SCy Schubert* [Bug 2763] Allow different thresholds for forward and backward steps. 2876a25439b6SCy Schubert* [Bug 2766] ntp-keygen output files should not be world-readable. 2877a25439b6SCy Schubert* [Bug 2767] ntp-keygen -M should symlink to ntp.keys. 2878a25439b6SCy Schubert* [Bug 2771] nonvolatile value is documented in wrong units. 2879a25439b6SCy Schubert* [Bug 2773] Early leap announcement from Palisade/Thunderbolt 2880a25439b6SCy Schubert* [Bug 2774] Unreasonably verbose printout - leap pending/warning 2881a25439b6SCy Schubert* [Bug 2775] ntp-keygen.c fails to compile under Windows. 2882a25439b6SCy Schubert* [Bug 2777] Fixed loops and decoding of Meinberg GPS satellite info. 2883a25439b6SCy Schubert Removed non-ASCII characters from some copyright comments. 2884a25439b6SCy Schubert Removed trailing whitespace. 2885a25439b6SCy Schubert Updated definitions for Meinberg clocks from current Meinberg header files. 2886a25439b6SCy Schubert Now use C99 fixed-width types and avoid non-ASCII characters in comments. 2887a25439b6SCy Schubert Account for updated definitions pulled from Meinberg header files. 2888a25439b6SCy Schubert Updated comments on Meinberg GPS receivers which are not only called GPS16x. 2889a25439b6SCy Schubert Replaced some constant numbers by defines from ntp_calendar.h 2890a25439b6SCy Schubert Modified creation of parse-specific variables for Meinberg devices 2891a25439b6SCy Schubert in gps16x_message(). 2892a25439b6SCy Schubert Reworked mk_utcinfo() to avoid printing of ambiguous leap second dates. 2893a25439b6SCy Schubert Modified mbg_tm_str() which now expexts an additional parameter controlling 2894a25439b6SCy Schubert if the time status shall be printed. 2895a25439b6SCy Schubert* [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto. 2896a25439b6SCy Schubert* [Sec 2781] Authentication doesn't protect symmetric associations against 2897a25439b6SCy Schubert DoS attacks. 2898a25439b6SCy Schubert* [Bug 2783] Quiet autoconf warnings about missing AC_LANG_SOURCE. 2899a25439b6SCy Schubert* [Bug 2789] Quiet compiler warnings from libevent. 2900a25439b6SCy Schubert* [Bug 2790] If ntpd sets the Windows MM timer highest resolution 2901a25439b6SCy Schubert pause briefly before measuring system clock precision to yield 2902a25439b6SCy Schubert correct results. 2903a25439b6SCy Schubert* Comment from Juergen Perlinger in ntp_calendar.c to make the code clearer. 2904a25439b6SCy Schubert* Use predefined function types for parse driver functions 2905a25439b6SCy Schubert used to set up function pointers. 2906a25439b6SCy Schubert Account for changed prototype of parse_inp_fnc_t functions. 2907a25439b6SCy Schubert Cast parse conversion results to appropriate types to avoid 2908a25439b6SCy Schubert compiler warnings. 2909a25439b6SCy Schubert Let ioctl() for Windows accept a (void *) to avoid compiler warnings 2910a25439b6SCy Schubert when called with pointers to different types. 2911a25439b6SCy Schubert 2912a25439b6SCy Schubert--- 29132b15cb3dSCy SchubertNTP 4.2.8p1 (Harlan Stenn <stenn@ntp.org>, 2015/02/04) 29142b15cb3dSCy Schubert 29152b15cb3dSCy SchubertFocus: Security and Bug fixes, enhancements. 29162b15cb3dSCy Schubert 29172b15cb3dSCy SchubertSeverity: HIGH 29182b15cb3dSCy Schubert 29192b15cb3dSCy SchubertIn addition to bug fixes and enhancements, this release fixes the 29202b15cb3dSCy Schubertfollowing high-severity vulnerabilities: 29212b15cb3dSCy Schubert 29222b15cb3dSCy Schubert* vallen is not validated in several places in ntp_crypto.c, leading 29232b15cb3dSCy Schubert to a potential information leak or possibly a crash 29242b15cb3dSCy Schubert 29252b15cb3dSCy Schubert References: Sec 2671 / CVE-2014-9297 / VU#852879 29262b15cb3dSCy Schubert Affects: All NTP4 releases before 4.2.8p1 that are running autokey. 29272b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 29282b15cb3dSCy Schubert Date Resolved: Stable (4.2.8p1) 04 Feb 2015 29292b15cb3dSCy Schubert Summary: The vallen packet value is not validated in several code 29302b15cb3dSCy Schubert paths in ntp_crypto.c which can lead to information leakage 29312b15cb3dSCy Schubert or perhaps a crash of the ntpd process. 29322b15cb3dSCy Schubert Mitigation - any of: 29332b15cb3dSCy Schubert Upgrade to 4.2.8p1, or later, from the NTP Project Download Page 29342b15cb3dSCy Schubert or the NTP Public Services Project Download Page. 29352b15cb3dSCy Schubert Disable Autokey Authentication by removing, or commenting out, 29362b15cb3dSCy Schubert all configuration directives beginning with the "crypto" 29372b15cb3dSCy Schubert keyword in your ntp.conf file. 29382b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 29392b15cb3dSCy Schubert Google Security Team, with additional cases found by Sebastian 29402b15cb3dSCy Schubert Krahmer of the SUSE Security Team and Harlan Stenn of Network 29412b15cb3dSCy Schubert Time Foundation. 29422b15cb3dSCy Schubert 29432b15cb3dSCy Schubert* ::1 can be spoofed on some OSes, so ACLs based on IPv6 ::1 addresses 29442b15cb3dSCy Schubert can be bypassed. 29452b15cb3dSCy Schubert 29462b15cb3dSCy Schubert References: Sec 2672 / CVE-2014-9298 / VU#852879 29472b15cb3dSCy Schubert Affects: All NTP4 releases before 4.2.8p1, under at least some 29482b15cb3dSCy Schubert versions of MacOS and Linux. *BSD has not been seen to be vulnerable. 29492b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:C) Base Score: 9 29502b15cb3dSCy Schubert Date Resolved: Stable (4.2.8p1) 04 Feb 2014 29512b15cb3dSCy Schubert Summary: While available kernels will prevent 127.0.0.1 addresses 29522b15cb3dSCy Schubert from "appearing" on non-localhost IPv4 interfaces, some kernels 29532b15cb3dSCy Schubert do not offer the same protection for ::1 source addresses on 29542b15cb3dSCy Schubert IPv6 interfaces. Since NTP's access control is based on source 29552b15cb3dSCy Schubert address and localhost addresses generally have no restrictions, 29562b15cb3dSCy Schubert an attacker can send malicious control and configuration packets 29572b15cb3dSCy Schubert by spoofing ::1 addresses from the outside. Note Well: This is 29582b15cb3dSCy Schubert not really a bug in NTP, it's a problem with some OSes. If you 29592b15cb3dSCy Schubert have one of these OSes where ::1 can be spoofed, ALL ::1 -based 29602b15cb3dSCy Schubert ACL restrictions on any application can be bypassed! 29612b15cb3dSCy Schubert Mitigation: 29622b15cb3dSCy Schubert Upgrade to 4.2.8p1, or later, from the NTP Project Download Page 29632b15cb3dSCy Schubert or the NTP Public Services Project Download Page 29642b15cb3dSCy Schubert Install firewall rules to block packets claiming to come from 29652b15cb3dSCy Schubert ::1 from inappropriate network interfaces. 29662b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of 29672b15cb3dSCy Schubert the Google Security Team. 29682b15cb3dSCy Schubert 29692b15cb3dSCy SchubertAdditionally, over 30 bugfixes and improvements were made to the codebase. 29702b15cb3dSCy SchubertSee the ChangeLog for more information. 29712b15cb3dSCy Schubert 29722b15cb3dSCy Schubert--- 29732b15cb3dSCy SchubertNTP 4.2.8 (Harlan Stenn <stenn@ntp.org>, 2014/12/18) 29742b15cb3dSCy Schubert 29752b15cb3dSCy SchubertFocus: Security and Bug fixes, enhancements. 29762b15cb3dSCy Schubert 29772b15cb3dSCy SchubertSeverity: HIGH 29782b15cb3dSCy Schubert 29792b15cb3dSCy SchubertIn addition to bug fixes and enhancements, this release fixes the 29802b15cb3dSCy Schubertfollowing high-severity vulnerabilities: 29812b15cb3dSCy Schubert 29822b15cb3dSCy Schubert************************** vv NOTE WELL vv ***************************** 29832b15cb3dSCy Schubert 29842b15cb3dSCy SchubertThe vulnerabilities listed below can be significantly mitigated by 29852b15cb3dSCy Schubertfollowing the BCP of putting 29862b15cb3dSCy Schubert 29872b15cb3dSCy Schubert restrict default ... noquery 29882b15cb3dSCy Schubert 29892b15cb3dSCy Schubertin the ntp.conf file. With the exception of: 29902b15cb3dSCy Schubert 29912b15cb3dSCy Schubert receive(): missing return on error 29922b15cb3dSCy Schubert References: Sec 2670 / CVE-2014-9296 / VU#852879 29932b15cb3dSCy Schubert 29942b15cb3dSCy Schubertbelow (which is a limited-risk vulnerability), none of the recent 29952b15cb3dSCy Schubertvulnerabilities listed below can be exploited if the source IP is 29962b15cb3dSCy Schubertrestricted from sending a 'query'-class packet by your ntp.conf file. 29972b15cb3dSCy Schubert 29982b15cb3dSCy Schubert************************** ^^ NOTE WELL ^^ ***************************** 29992b15cb3dSCy Schubert 30002b15cb3dSCy Schubert* Weak default key in config_auth(). 30012b15cb3dSCy Schubert 30022b15cb3dSCy Schubert References: [Sec 2665] / CVE-2014-9293 / VU#852879 30032b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3 30042b15cb3dSCy Schubert Vulnerable Versions: all releases prior to 4.2.7p11 30052b15cb3dSCy Schubert Date Resolved: 28 Jan 2010 30062b15cb3dSCy Schubert 30072b15cb3dSCy Schubert Summary: If no 'auth' key is set in the configuration file, ntpd 30082b15cb3dSCy Schubert would generate a random key on the fly. There were two 30092b15cb3dSCy Schubert problems with this: 1) the generated key was 31 bits in size, 30102b15cb3dSCy Schubert and 2) it used the (now weak) ntp_random() function, which was 30112b15cb3dSCy Schubert seeded with a 32-bit value and could only provide 32 bits of 30122b15cb3dSCy Schubert entropy. This was sufficient back in the late 1990s when the 30132b15cb3dSCy Schubert code was written. Not today. 30142b15cb3dSCy Schubert 30152b15cb3dSCy Schubert Mitigation - any of: 30162b15cb3dSCy Schubert - Upgrade to 4.2.7p11 or later. 30172b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 30182b15cb3dSCy Schubert 30192b15cb3dSCy Schubert Credit: This vulnerability was noticed in ntp-4.2.6 by Neel Mehta 30202b15cb3dSCy Schubert of the Google Security Team. 30212b15cb3dSCy Schubert 30222b15cb3dSCy Schubert* Non-cryptographic random number generator with weak seed used by 30232b15cb3dSCy Schubert ntp-keygen to generate symmetric keys. 30242b15cb3dSCy Schubert 30252b15cb3dSCy Schubert References: [Sec 2666] / CVE-2014-9294 / VU#852879 30262b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3 30272b15cb3dSCy Schubert Vulnerable Versions: All NTP4 releases before 4.2.7p230 30282b15cb3dSCy Schubert Date Resolved: Dev (4.2.7p230) 01 Nov 2011 30292b15cb3dSCy Schubert 30302b15cb3dSCy Schubert Summary: Prior to ntp-4.2.7p230 ntp-keygen used a weak seed to 30312b15cb3dSCy Schubert prepare a random number generator that was of good quality back 30322b15cb3dSCy Schubert in the late 1990s. The random numbers produced was then used to 30332b15cb3dSCy Schubert generate symmetric keys. In ntp-4.2.8 we use a current-technology 30342b15cb3dSCy Schubert cryptographic random number generator, either RAND_bytes from 30352b15cb3dSCy Schubert OpenSSL, or arc4random(). 30362b15cb3dSCy Schubert 30372b15cb3dSCy Schubert Mitigation - any of: 30382b15cb3dSCy Schubert - Upgrade to 4.2.7p230 or later. 30392b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 30402b15cb3dSCy Schubert 30412b15cb3dSCy Schubert Credit: This vulnerability was discovered in ntp-4.2.6 by 30422b15cb3dSCy Schubert Stephen Roettger of the Google Security Team. 30432b15cb3dSCy Schubert 30442b15cb3dSCy Schubert* Buffer overflow in crypto_recv() 30452b15cb3dSCy Schubert 30462b15cb3dSCy Schubert References: Sec 2667 / CVE-2014-9295 / VU#852879 30472b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 30482b15cb3dSCy Schubert Versions: All releases before 4.2.8 30492b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 30502b15cb3dSCy Schubert 30512b15cb3dSCy Schubert Summary: When Autokey Authentication is enabled (i.e. the ntp.conf 30522b15cb3dSCy Schubert file contains a 'crypto pw ...' directive) a remote attacker 30532b15cb3dSCy Schubert can send a carefully crafted packet that can overflow a stack 30542b15cb3dSCy Schubert buffer and potentially allow malicious code to be executed 30552b15cb3dSCy Schubert with the privilege level of the ntpd process. 30562b15cb3dSCy Schubert 30572b15cb3dSCy Schubert Mitigation - any of: 30582b15cb3dSCy Schubert - Upgrade to 4.2.8, or later, or 30592b15cb3dSCy Schubert - Disable Autokey Authentication by removing, or commenting out, 30602b15cb3dSCy Schubert all configuration directives beginning with the crypto keyword 30612b15cb3dSCy Schubert in your ntp.conf file. 30622b15cb3dSCy Schubert 30632b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 30642b15cb3dSCy Schubert Google Security Team. 30652b15cb3dSCy Schubert 30662b15cb3dSCy Schubert* Buffer overflow in ctl_putdata() 30672b15cb3dSCy Schubert 30682b15cb3dSCy Schubert References: Sec 2668 / CVE-2014-9295 / VU#852879 30692b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 30702b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 30712b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 30722b15cb3dSCy Schubert 30732b15cb3dSCy Schubert Summary: A remote attacker can send a carefully crafted packet that 30742b15cb3dSCy Schubert can overflow a stack buffer and potentially allow malicious 30752b15cb3dSCy Schubert code to be executed with the privilege level of the ntpd process. 30762b15cb3dSCy Schubert 30772b15cb3dSCy Schubert Mitigation - any of: 30782b15cb3dSCy Schubert - Upgrade to 4.2.8, or later. 30792b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 30802b15cb3dSCy Schubert 30812b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 30822b15cb3dSCy Schubert Google Security Team. 30832b15cb3dSCy Schubert 30842b15cb3dSCy Schubert* Buffer overflow in configure() 30852b15cb3dSCy Schubert 30862b15cb3dSCy Schubert References: Sec 2669 / CVE-2014-9295 / VU#852879 30872b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 30882b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 30892b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 30902b15cb3dSCy Schubert 30912b15cb3dSCy Schubert Summary: A remote attacker can send a carefully crafted packet that 30922b15cb3dSCy Schubert can overflow a stack buffer and potentially allow malicious 30932b15cb3dSCy Schubert code to be executed with the privilege level of the ntpd process. 30942b15cb3dSCy Schubert 30952b15cb3dSCy Schubert Mitigation - any of: 30962b15cb3dSCy Schubert - Upgrade to 4.2.8, or later. 30972b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 30982b15cb3dSCy Schubert 30992b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 31002b15cb3dSCy Schubert Google Security Team. 31012b15cb3dSCy Schubert 31022b15cb3dSCy Schubert* receive(): missing return on error 31032b15cb3dSCy Schubert 31042b15cb3dSCy Schubert References: Sec 2670 / CVE-2014-9296 / VU#852879 31052b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:N/I:N/A:P) Base Score: 5.0 31062b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 31072b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 31082b15cb3dSCy Schubert 31092b15cb3dSCy Schubert Summary: Code in ntp_proto.c:receive() was missing a 'return;' in 31102b15cb3dSCy Schubert the code path where an error was detected, which meant 31112b15cb3dSCy Schubert processing did not stop when a specific rare error occurred. 31122b15cb3dSCy Schubert We haven't found a way for this bug to affect system integrity. 31132b15cb3dSCy Schubert If there is no way to affect system integrity the base CVSS 31142b15cb3dSCy Schubert score for this bug is 0. If there is one avenue through which 31152b15cb3dSCy Schubert system integrity can be partially affected, the base score 31162b15cb3dSCy Schubert becomes a 5. If system integrity can be partially affected 31172b15cb3dSCy Schubert via all three integrity metrics, the CVSS base score become 7.5. 31182b15cb3dSCy Schubert 31192b15cb3dSCy Schubert Mitigation - any of: 31202b15cb3dSCy Schubert - Upgrade to 4.2.8, or later, 31212b15cb3dSCy Schubert - Remove or comment out all configuration directives 31222b15cb3dSCy Schubert beginning with the crypto keyword in your ntp.conf file. 31232b15cb3dSCy Schubert 31242b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 31252b15cb3dSCy Schubert Google Security Team. 31262b15cb3dSCy Schubert 31272b15cb3dSCy SchubertSee http://support.ntp.org/security for more information. 31282b15cb3dSCy Schubert 31292b15cb3dSCy SchubertNew features / changes in this release: 31302b15cb3dSCy Schubert 31312b15cb3dSCy SchubertImportant Changes 31322b15cb3dSCy Schubert 31332b15cb3dSCy Schubert* Internal NTP Era counters 31342b15cb3dSCy Schubert 31352b15cb3dSCy SchubertThe internal counters that track the "era" (range of years) we are in 31362b15cb3dSCy Schubertrolls over every 136 years'. The current "era" started at the stroke of 31372b15cb3dSCy Schubertmidnight on 1 Jan 1900, and ends just before the stroke of midnight on 31382b15cb3dSCy Schubert1 Jan 2036. 31392b15cb3dSCy SchubertIn the past, we have used the "midpoint" of the range to decide which 31402b15cb3dSCy Schubertera we were in. Given the longevity of some products, it became clear 31412b15cb3dSCy Schubertthat it would be more functional to "look back" less, and "look forward" 31422b15cb3dSCy Schubertmore. We now compile a timestamp into the ntpd executable and when we 31432b15cb3dSCy Schubertget a timestamp we us the "built-on" to tell us what era we are in. 31442b15cb3dSCy SchubertThis check "looks back" 10 years, and "looks forward" 126 years. 31452b15cb3dSCy Schubert 31462b15cb3dSCy Schubert* ntpdc responses disabled by default 31472b15cb3dSCy Schubert 31482b15cb3dSCy SchubertDave Hart writes: 31492b15cb3dSCy Schubert 31502b15cb3dSCy SchubertFor a long time, ntpq and its mostly text-based mode 6 (control) 31512b15cb3dSCy Schubertprotocol have been preferred over ntpdc and its mode 7 (private 31522b15cb3dSCy Schubertrequest) protocol for runtime queries and configuration. There has 31532b15cb3dSCy Schubertbeen a goal of deprecating ntpdc, previously held back by numerous 31542b15cb3dSCy Schubertcapabilities exposed by ntpdc with no ntpq equivalent. I have been 31552b15cb3dSCy Schubertadding commands to ntpq to cover these cases, and I believe I've 31562b15cb3dSCy Schubertcovered them all, though I've not compared command-by-command 31572b15cb3dSCy Schubertrecently. 31582b15cb3dSCy Schubert 31592b15cb3dSCy SchubertAs I've said previously, the binary mode 7 protocol involves a lot of 31602b15cb3dSCy Schuberthand-rolled structure layout and byte-swapping code in both ntpd and 31612b15cb3dSCy Schubertntpdc which is hard to get right. As ntpd grows and changes, the 31622b15cb3dSCy Schubertchanges are difficult to expose via ntpdc while maintaining forward 31632b15cb3dSCy Schubertand backward compatibility between ntpdc and ntpd. In contrast, 31642b15cb3dSCy Schubertntpq's text-based, label=value approach involves more code reuse and 31652b15cb3dSCy Schubertallows compatible changes without extra work in most cases. 31662b15cb3dSCy Schubert 31672b15cb3dSCy SchubertMode 7 has always been defined as vendor/implementation-specific while 31682b15cb3dSCy Schubertmode 6 is described in RFC 1305 and intended to be open to interoperate 31692b15cb3dSCy Schubertwith other implementations. There is an early draft of an updated 31702b15cb3dSCy Schubertmode 6 description that likely will join the other NTPv4 RFCs 31712b15cb3dSCy Schuberteventually. (http://tools.ietf.org/html/draft-odonoghue-ntpv4-control-01) 31722b15cb3dSCy Schubert 31732b15cb3dSCy SchubertFor these reasons, ntpd 4.2.7p230 by default disables processing of 31742b15cb3dSCy Schubertntpdc queries, reducing ntpd's attack surface and functionally 31752b15cb3dSCy Schubertdeprecating ntpdc. If you are in the habit of using ntpdc for certain 31762b15cb3dSCy Schubertoperations, please try the ntpq equivalent. If there's no equivalent, 31772b15cb3dSCy Schubertplease open a bug report at http://bugs.ntp.org./ 31782b15cb3dSCy Schubert 31792b15cb3dSCy SchubertIn addition to the above, over 1100 issues have been resolved between 31802b15cb3dSCy Schubertthe 4.2.6 branch and 4.2.8. The ChangeLog file in the distribution 31812b15cb3dSCy Schubertlists these. 31822b15cb3dSCy Schubert 31832b15cb3dSCy Schubert--- 31842b15cb3dSCy SchubertNTP 4.2.6p5 (Harlan Stenn <stenn@ntp.org>, 2011/12/24) 31852b15cb3dSCy Schubert 31862b15cb3dSCy SchubertFocus: Bug fixes 31872b15cb3dSCy Schubert 31882b15cb3dSCy SchubertSeverity: Medium 31892b15cb3dSCy Schubert 31902b15cb3dSCy SchubertThis is a recommended upgrade. 31912b15cb3dSCy Schubert 31922b15cb3dSCy SchubertThis release updates sys_rootdisp and sys_jitter calculations to match the 31932b15cb3dSCy SchubertRFC specification, fixes a potential IPv6 address matching error for the 31942b15cb3dSCy Schubert"nic" and "interface" configuration directives, suppresses the creation of 31952b15cb3dSCy Schubertextraneous ephemeral associations for certain broadcastclient and 31962b15cb3dSCy Schubertmulticastclient configurations, cleans up some ntpq display issues, and 31972b15cb3dSCy Schubertincludes improvements to orphan mode, minor bugs fixes and code clean-ups. 31982b15cb3dSCy Schubert 31992b15cb3dSCy SchubertNew features / changes in this release: 32002b15cb3dSCy Schubert 32012b15cb3dSCy Schubertntpd 32022b15cb3dSCy Schubert 32032b15cb3dSCy Schubert * Updated "nic" and "interface" IPv6 address handling to prevent 32042b15cb3dSCy Schubert mismatches with localhost [::1] and wildcard [::] which resulted from 32052b15cb3dSCy Schubert using the address/prefix format (e.g. fe80::/64) 32062b15cb3dSCy Schubert * Fix orphan mode stratum incorrectly counting to infinity 32072b15cb3dSCy Schubert * Orphan parent selection metric updated to includes missing ntohl() 32082b15cb3dSCy Schubert * Non-printable stratum 16 refid no longer sent to ntp 32092b15cb3dSCy Schubert * Duplicate ephemeral associations suppressed for broadcastclient and 32102b15cb3dSCy Schubert multicastclient without broadcastdelay 32112b15cb3dSCy Schubert * Exclude undetermined sys_refid from use in loopback TEST12 32122b15cb3dSCy Schubert * Exclude MODE_SERVER responses from KoD rate limiting 32132b15cb3dSCy Schubert * Include root delay in clock_update() sys_rootdisp calculations 32142b15cb3dSCy Schubert * get_systime() updated to exclude sys_residual offset (which only 32152b15cb3dSCy Schubert affected bits "below" sys_tick, the precision threshold) 32162b15cb3dSCy Schubert * sys.peer jitter weighting corrected in sys_jitter calculation 32172b15cb3dSCy Schubert 32182b15cb3dSCy Schubertntpq 32192b15cb3dSCy Schubert 32202b15cb3dSCy Schubert * -n option extended to include the billboard "server" column 32212b15cb3dSCy Schubert * IPv6 addresses in the local column truncated to prevent overruns 32222b15cb3dSCy Schubert 32232b15cb3dSCy Schubert--- 32242b15cb3dSCy SchubertNTP 4.2.6p4 (Harlan Stenn <stenn@ntp.org>, 2011/09/22) 32252b15cb3dSCy Schubert 32262b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 32272b15cb3dSCy Schubert 32282b15cb3dSCy SchubertSeverity: Medium 32292b15cb3dSCy Schubert 32302b15cb3dSCy SchubertThis is a recommended upgrade. 32312b15cb3dSCy Schubert 32322b15cb3dSCy SchubertThis release includes build infrastructure updates, code 32332b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 32342b15cb3dSCy Schubertref-clock issues, and documentation revisions. 32352b15cb3dSCy Schubert 32362b15cb3dSCy SchubertPortability improvements affect AIX, HP-UX, Linux, OS X and 64-bit time_t. 32372b15cb3dSCy Schubert 32382b15cb3dSCy SchubertNew features / changes in this release: 32392b15cb3dSCy Schubert 32402b15cb3dSCy SchubertBuild system 32412b15cb3dSCy Schubert 32422b15cb3dSCy Schubert* Fix checking for struct rtattr 32432b15cb3dSCy Schubert* Update config.guess and config.sub for AIX 32442b15cb3dSCy Schubert* Upgrade required version of autogen and libopts for building 32452b15cb3dSCy Schubert from our source code repository 32462b15cb3dSCy Schubert 32472b15cb3dSCy Schubertntpd 32482b15cb3dSCy Schubert 32492b15cb3dSCy Schubert* Back-ported several fixes for Coverity warnings from ntp-dev 32502b15cb3dSCy Schubert* Fix a rare boundary condition in UNLINK_EXPR_SLIST() 32512b15cb3dSCy Schubert* Allow "logconfig =allall" configuration directive 32522b15cb3dSCy Schubert* Bind tentative IPv6 addresses on Linux 32532b15cb3dSCy Schubert* Correct WWVB/Spectracom driver to timestamp CR instead of LF 32542b15cb3dSCy Schubert* Improved tally bit handling to prevent incorrect ntpq peer status reports 32552b15cb3dSCy Schubert* Exclude the Undisciplined Local Clock and ACTS drivers from the initial 32562b15cb3dSCy Schubert candidate list unless they are designated a "prefer peer" 32572b15cb3dSCy Schubert* Prevent the consideration of Undisciplined Local Clock or ACTS drivers for 32582b15cb3dSCy Schubert selection during the 'tos orphanwait' period 32592b15cb3dSCy Schubert* Prefer an Orphan Mode Parent over the Undisciplined Local Clock or ACTS 32602b15cb3dSCy Schubert drivers 32612b15cb3dSCy Schubert* Improved support of the Parse Refclock trusttime flag in Meinberg mode 32622b15cb3dSCy Schubert* Back-port utility routines from ntp-dev: mprintf(), emalloc_zero() 32632b15cb3dSCy Schubert* Added the NTPD_TICKADJ_PPM environment variable for specifying baseline 32642b15cb3dSCy Schubert clock slew on Microsoft Windows 32652b15cb3dSCy Schubert* Code cleanup in libntpq 32662b15cb3dSCy Schubert 32672b15cb3dSCy Schubertntpdc 32682b15cb3dSCy Schubert 32692b15cb3dSCy Schubert* Fix timerstats reporting 32702b15cb3dSCy Schubert 32712b15cb3dSCy Schubertntpdate 32722b15cb3dSCy Schubert 32732b15cb3dSCy Schubert* Reduce time required to set clock 32742b15cb3dSCy Schubert* Allow a timeout greater than 2 seconds 32752b15cb3dSCy Schubert 32762b15cb3dSCy Schubertsntp 32772b15cb3dSCy Schubert 32782b15cb3dSCy Schubert* Backward incompatible command-line option change: 32792b15cb3dSCy Schubert -l/--filelog changed -l/--logfile (to be consistent with ntpd) 32802b15cb3dSCy Schubert 32812b15cb3dSCy SchubertDocumentation 32822b15cb3dSCy Schubert 32832b15cb3dSCy Schubert* Update html2man. Fix some tags in the .html files 32842b15cb3dSCy Schubert* Distribute ntp-wait.html 32852b15cb3dSCy Schubert 32862b15cb3dSCy Schubert--- 32872b15cb3dSCy SchubertNTP 4.2.6p3 (Harlan Stenn <stenn@ntp.org>, 2011/01/03) 32882b15cb3dSCy Schubert 32892b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 32902b15cb3dSCy Schubert 32912b15cb3dSCy SchubertSeverity: Medium 32922b15cb3dSCy Schubert 32932b15cb3dSCy SchubertThis is a recommended upgrade. 32942b15cb3dSCy Schubert 32952b15cb3dSCy SchubertThis release includes build infrastructure updates, code 32962b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 32972b15cb3dSCy Schubertref-clock issues, and documentation revisions. 32982b15cb3dSCy Schubert 32992b15cb3dSCy SchubertPortability improvements in this release affect AIX, Atari FreeMiNT, 33002b15cb3dSCy SchubertFreeBSD4, Linux and Microsoft Windows. 33012b15cb3dSCy Schubert 33022b15cb3dSCy SchubertNew features / changes in this release: 33032b15cb3dSCy Schubert 33042b15cb3dSCy SchubertBuild system 33052b15cb3dSCy Schubert* Use lsb_release to get information about Linux distributions. 33062b15cb3dSCy Schubert* 'test' is in /usr/bin (instead of /bin) on some systems. 33072b15cb3dSCy Schubert* Basic sanity checks for the ChangeLog file. 33082b15cb3dSCy Schubert* Source certain build files with ./filename for systems without . in PATH. 33092b15cb3dSCy Schubert* IRIX portability fix. 33102b15cb3dSCy Schubert* Use a single copy of the "libopts" code. 33112b15cb3dSCy Schubert* autogen/libopts upgrade. 33122b15cb3dSCy Schubert* configure.ac m4 quoting cleanup. 33132b15cb3dSCy Schubert 33142b15cb3dSCy Schubertntpd 33152b15cb3dSCy Schubert* Do not bind to IN6_IFF_ANYCAST addresses. 33162b15cb3dSCy Schubert* Log the reason for exiting under Windows. 33172b15cb3dSCy Schubert* Multicast fixes for Windows. 33182b15cb3dSCy Schubert* Interpolation fixes for Windows. 33192b15cb3dSCy Schubert* IPv4 and IPv6 Multicast fixes. 33202b15cb3dSCy Schubert* Manycast solicitation fixes and general repairs. 33212b15cb3dSCy Schubert* JJY refclock cleanup. 33222b15cb3dSCy Schubert* NMEA refclock improvements. 33232b15cb3dSCy Schubert* Oncore debug message cleanup. 33242b15cb3dSCy Schubert* Palisade refclock now builds under Linux. 33252b15cb3dSCy Schubert* Give RAWDCF more baud rates. 33262b15cb3dSCy Schubert* Support Truetime Satellite clocks under Windows. 33272b15cb3dSCy Schubert* Support Arbiter 1093C Satellite clocks under Windows. 33282b15cb3dSCy Schubert* Make sure that the "filegen" configuration command defaults to "enable". 33292b15cb3dSCy Schubert* Range-check the status codes (plus other cleanup) in the RIPE-NCC driver. 33302b15cb3dSCy Schubert* Prohibit 'includefile' directive in remote configuration command. 33312b15cb3dSCy Schubert* Fix 'nic' interface bindings. 33322b15cb3dSCy Schubert* Fix the way we link with openssl if openssl is installed in the base 33332b15cb3dSCy Schubert system. 33342b15cb3dSCy Schubert 33352b15cb3dSCy Schubertntp-keygen 33362b15cb3dSCy Schubert* Fix -V coredump. 33372b15cb3dSCy Schubert* OpenSSL version display cleanup. 33382b15cb3dSCy Schubert 33392b15cb3dSCy Schubertntpdc 33402b15cb3dSCy Schubert* Many counters should be treated as unsigned. 33412b15cb3dSCy Schubert 33422b15cb3dSCy Schubertntpdate 33432b15cb3dSCy Schubert* Do not ignore replies with equal receive and transmit timestamps. 33442b15cb3dSCy Schubert 33452b15cb3dSCy Schubertntpq 33462b15cb3dSCy Schubert* libntpq warning cleanup. 33472b15cb3dSCy Schubert 33482b15cb3dSCy Schubertntpsnmpd 33492b15cb3dSCy Schubert* Correct SNMP type for "precision" and "resolution". 33502b15cb3dSCy Schubert* Update the MIB from the draft version to RFC-5907. 33512b15cb3dSCy Schubert 33522b15cb3dSCy Schubertsntp 33532b15cb3dSCy Schubert* Display timezone offset when showing time for sntp in the local 33542b15cb3dSCy Schubert timezone. 33552b15cb3dSCy Schubert* Pay proper attention to RATE KoD packets. 33562b15cb3dSCy Schubert* Fix a miscalculation of the offset. 33572b15cb3dSCy Schubert* Properly parse empty lines in the key file. 33582b15cb3dSCy Schubert* Logging cleanup. 33592b15cb3dSCy Schubert* Use tv_usec correctly in set_time(). 33602b15cb3dSCy Schubert* Documentation cleanup. 33612b15cb3dSCy Schubert 33622b15cb3dSCy Schubert--- 33632b15cb3dSCy SchubertNTP 4.2.6p2 (Harlan Stenn <stenn@ntp.org>, 2010/07/08) 33642b15cb3dSCy Schubert 33652b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 33662b15cb3dSCy Schubert 33672b15cb3dSCy SchubertSeverity: Medium 33682b15cb3dSCy Schubert 33692b15cb3dSCy SchubertThis is a recommended upgrade. 33702b15cb3dSCy Schubert 33712b15cb3dSCy SchubertThis release includes build infrastructure updates, code 33722b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 33732b15cb3dSCy Schubertref-clock issues, improved KOD handling, OpenSSL related 33742b15cb3dSCy Schubertupdates and documentation revisions. 33752b15cb3dSCy Schubert 33762b15cb3dSCy SchubertPortability improvements in this release affect Irix, Linux, 33772b15cb3dSCy SchubertMac OS, Microsoft Windows, OpenBSD and QNX6 33782b15cb3dSCy Schubert 33792b15cb3dSCy SchubertNew features / changes in this release: 33802b15cb3dSCy Schubert 33812b15cb3dSCy Schubertntpd 33822b15cb3dSCy Schubert* Range syntax for the trustedkey configuration directive 33832b15cb3dSCy Schubert* Unified IPv4 and IPv6 restrict lists 33842b15cb3dSCy Schubert 33852b15cb3dSCy Schubertntpdate 33862b15cb3dSCy Schubert* Rate limiting and KOD handling 33872b15cb3dSCy Schubert 33882b15cb3dSCy Schubertntpsnmpd 33892b15cb3dSCy Schubert* default connection to net-snmpd via a unix-domain socket 33902b15cb3dSCy Schubert* command-line 'socket name' option 33912b15cb3dSCy Schubert 33922b15cb3dSCy Schubertntpq / ntpdc 33932b15cb3dSCy Schubert* support for the "passwd ..." syntax 33942b15cb3dSCy Schubert* key-type specific password prompts 33952b15cb3dSCy Schubert 33962b15cb3dSCy Schubertsntp 33972b15cb3dSCy Schubert* MD5 authentication of an ntpd 33982b15cb3dSCy Schubert* Broadcast and crypto 33992b15cb3dSCy Schubert* OpenSSL support 34002b15cb3dSCy Schubert 34012b15cb3dSCy Schubert--- 34022b15cb3dSCy SchubertNTP 4.2.6p1 (Harlan Stenn <stenn@ntp.org>, 2010/04/09) 34032b15cb3dSCy Schubert 34042b15cb3dSCy SchubertFocus: Bug fixes, portability fixes, and documentation improvements 34052b15cb3dSCy Schubert 34062b15cb3dSCy SchubertSeverity: Medium 34072b15cb3dSCy Schubert 34082b15cb3dSCy SchubertThis is a recommended upgrade. 34092b15cb3dSCy Schubert 34102b15cb3dSCy Schubert--- 34112b15cb3dSCy SchubertNTP 4.2.6 (Harlan Stenn <stenn@ntp.org>, 2009/12/08) 34122b15cb3dSCy Schubert 34132b15cb3dSCy SchubertFocus: enhancements and bug fixes. 34142b15cb3dSCy Schubert 34152b15cb3dSCy Schubert--- 3416eb6d21b4SOllivier RobertNTP 4.2.4p8 (Harlan Stenn <stenn@ntp.org>, 2009/12/08) 3417eb6d21b4SOllivier Robert 3418eb6d21b4SOllivier RobertFocus: Security Fixes 3419eb6d21b4SOllivier Robert 3420eb6d21b4SOllivier RobertSeverity: HIGH 3421eb6d21b4SOllivier Robert 3422eb6d21b4SOllivier RobertThis release fixes the following high-severity vulnerability: 3423eb6d21b4SOllivier Robert 3424eb6d21b4SOllivier Robert* [Sec 1331] DoS with mode 7 packets - CVE-2009-3563. 3425eb6d21b4SOllivier Robert 3426eb6d21b4SOllivier Robert See http://support.ntp.org/security for more information. 3427eb6d21b4SOllivier Robert 3428eb6d21b4SOllivier Robert NTP mode 7 (MODE_PRIVATE) is used by the ntpdc query and control utility. 3429eb6d21b4SOllivier Robert In contrast, ntpq uses NTP mode 6 (MODE_CONTROL), while routine NTP time 3430eb6d21b4SOllivier Robert transfers use modes 1 through 5. Upon receipt of an incorrect mode 7 3431eb6d21b4SOllivier Robert request or a mode 7 error response from an address which is not listed 3432eb6d21b4SOllivier Robert in a "restrict ... noquery" or "restrict ... ignore" statement, ntpd will 3433eb6d21b4SOllivier Robert reply with a mode 7 error response (and log a message). In this case: 3434eb6d21b4SOllivier Robert 3435eb6d21b4SOllivier Robert * If an attacker spoofs the source address of ntpd host A in a 3436eb6d21b4SOllivier Robert mode 7 response packet sent to ntpd host B, both A and B will 3437eb6d21b4SOllivier Robert continuously send each other error responses, for as long as 3438eb6d21b4SOllivier Robert those packets get through. 3439eb6d21b4SOllivier Robert 3440eb6d21b4SOllivier Robert * If an attacker spoofs an address of ntpd host A in a mode 7 3441eb6d21b4SOllivier Robert response packet sent to ntpd host A, A will respond to itself 3442eb6d21b4SOllivier Robert endlessly, consuming CPU and logging excessively. 3443eb6d21b4SOllivier Robert 3444eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Robin Park and Dmitri 3445eb6d21b4SOllivier Robert Vinokurov of Alcatel-Lucent. 3446eb6d21b4SOllivier Robert 3447eb6d21b4SOllivier RobertTHIS IS A STRONGLY RECOMMENDED UPGRADE. 3448eb6d21b4SOllivier Robert 3449eb6d21b4SOllivier Robert--- 34502b15cb3dSCy Schubertntpd now syncs to refclocks right away. 34512b15cb3dSCy Schubert 34522b15cb3dSCy SchubertBackward-Incompatible changes: 34532b15cb3dSCy Schubert 34542b15cb3dSCy Schubertntpd no longer accepts '-v name' or '-V name' to define internal variables. 34552b15cb3dSCy SchubertUse '--var name' or '--dvar name' instead. (Bug 817) 34562b15cb3dSCy Schubert 34572b15cb3dSCy Schubert--- 3458eb6d21b4SOllivier RobertNTP 4.2.4p7 (Harlan Stenn <stenn@ntp.org>, 2009/05/04) 3459eb6d21b4SOllivier Robert 3460eb6d21b4SOllivier RobertFocus: Security and Bug Fixes 3461eb6d21b4SOllivier Robert 3462eb6d21b4SOllivier RobertSeverity: HIGH 3463eb6d21b4SOllivier Robert 3464eb6d21b4SOllivier RobertThis release fixes the following high-severity vulnerability: 3465eb6d21b4SOllivier Robert 3466eb6d21b4SOllivier Robert* [Sec 1151] Remote exploit if autokey is enabled. CVE-2009-1252 3467eb6d21b4SOllivier Robert 3468eb6d21b4SOllivier Robert See http://support.ntp.org/security for more information. 3469eb6d21b4SOllivier Robert 3470eb6d21b4SOllivier Robert If autokey is enabled (if ntp.conf contains a "crypto pw whatever" 3471eb6d21b4SOllivier Robert line) then a carefully crafted packet sent to the machine will cause 3472eb6d21b4SOllivier Robert a buffer overflow and possible execution of injected code, running 3473eb6d21b4SOllivier Robert with the privileges of the ntpd process (often root). 3474eb6d21b4SOllivier Robert 3475eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Chris Ries of CMU. 3476eb6d21b4SOllivier Robert 3477eb6d21b4SOllivier RobertThis release fixes the following low-severity vulnerabilities: 3478eb6d21b4SOllivier Robert 3479eb6d21b4SOllivier Robert* [Sec 1144] limited (two byte) buffer overflow in ntpq. CVE-2009-0159 3480eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Geoff Keating of Apple. 3481eb6d21b4SOllivier Robert 3482eb6d21b4SOllivier Robert* [Sec 1149] use SO_EXCLUSIVEADDRUSE on Windows 3483eb6d21b4SOllivier Robert Credit for finding this issue goes to Dave Hart. 3484eb6d21b4SOllivier Robert 3485eb6d21b4SOllivier RobertThis release fixes a number of bugs and adds some improvements: 3486eb6d21b4SOllivier Robert 3487eb6d21b4SOllivier Robert* Improved logging 3488eb6d21b4SOllivier Robert* Fix many compiler warnings 3489eb6d21b4SOllivier Robert* Many fixes and improvements for Windows 3490eb6d21b4SOllivier Robert* Adds support for AIX 6.1 3491eb6d21b4SOllivier Robert* Resolves some issues under MacOS X and Solaris 3492eb6d21b4SOllivier Robert 3493eb6d21b4SOllivier RobertTHIS IS A STRONGLY RECOMMENDED UPGRADE. 3494eb6d21b4SOllivier Robert 3495eb6d21b4SOllivier Robert--- 3496eb6d21b4SOllivier RobertNTP 4.2.4p6 (Harlan Stenn <stenn@ntp.org>, 2009/01/07) 3497eb6d21b4SOllivier Robert 3498eb6d21b4SOllivier RobertFocus: Security Fix 3499eb6d21b4SOllivier Robert 3500eb6d21b4SOllivier RobertSeverity: Low 3501eb6d21b4SOllivier Robert 3502eb6d21b4SOllivier RobertThis release fixes oCERT.org's CVE-2009-0021, a vulnerability affecting 3503eb6d21b4SOllivier Robertthe OpenSSL library relating to the incorrect checking of the return 3504eb6d21b4SOllivier Robertvalue of EVP_VerifyFinal function. 3505eb6d21b4SOllivier Robert 3506eb6d21b4SOllivier RobertCredit for finding this issue goes to the Google Security Team for 3507eb6d21b4SOllivier Robertfinding the original issue with OpenSSL, and to ocert.org for finding 3508eb6d21b4SOllivier Robertthe problem in NTP and telling us about it. 3509eb6d21b4SOllivier Robert 3510eb6d21b4SOllivier RobertThis is a recommended upgrade. 3511eb6d21b4SOllivier Robert--- 3512ea906c41SOllivier RobertNTP 4.2.4p5 (Harlan Stenn <stenn@ntp.org>, 2008/08/17) 3513ea906c41SOllivier Robert 3514ea906c41SOllivier RobertFocus: Minor Bugfixes 3515ea906c41SOllivier Robert 3516ea906c41SOllivier RobertThis release fixes a number of Windows-specific ntpd bugs and 3517ea906c41SOllivier Robertplatform-independent ntpdate bugs. A logging bugfix has been applied 3518ea906c41SOllivier Robertto the ONCORE driver. 3519ea906c41SOllivier Robert 3520ea906c41SOllivier RobertThe "dynamic" keyword and is now obsolete and deferred binding to local 3521ea906c41SOllivier Robertinterfaces is the new default. The minimum time restriction for the 3522ea906c41SOllivier Robertinterface update interval has been dropped. 3523ea906c41SOllivier Robert 3524ea906c41SOllivier RobertA number of minor build system and documentation fixes are included. 3525ea906c41SOllivier Robert 3526ea906c41SOllivier RobertThis is a recommended upgrade for Windows. 3527ea906c41SOllivier Robert 3528ea906c41SOllivier Robert--- 3529ea906c41SOllivier RobertNTP 4.2.4p4 (Harlan Stenn <stenn@ntp.org>, 2007/09/10) 3530ea906c41SOllivier Robert 3531ea906c41SOllivier RobertFocus: Minor Bugfixes 3532ea906c41SOllivier Robert 3533ea906c41SOllivier RobertThis release updates certain copyright information, fixes several display 3534ea906c41SOllivier Robertbugs in ntpdc, avoids SIGIO interrupting malloc(), cleans up file descriptor 3535ea906c41SOllivier Robertshutdown in the parse refclock driver, removes some lint from the code, 3536ea906c41SOllivier Robertstops accessing certain buffers immediately after they were freed, fixes 3537ea906c41SOllivier Roberta problem with non-command-line specification of -6, and allows the loopback 3538ea906c41SOllivier Robertinterface to share addresses with other interfaces. 3539ea906c41SOllivier Robert 3540ea906c41SOllivier Robert--- 3541ea906c41SOllivier RobertNTP 4.2.4p3 (Harlan Stenn <stenn@ntp.org>, 2007/06/29) 3542ea906c41SOllivier Robert 3543ea906c41SOllivier RobertFocus: Minor Bugfixes 3544ea906c41SOllivier Robert 3545ea906c41SOllivier RobertThis release fixes a bug in Windows that made it difficult to 3546ea906c41SOllivier Robertterminate ntpd under windows. 3547ea906c41SOllivier RobertThis is a recommended upgrade for Windows. 3548ea906c41SOllivier Robert 3549ea906c41SOllivier Robert--- 3550ea906c41SOllivier RobertNTP 4.2.4p2 (Harlan Stenn <stenn@ntp.org>, 2007/06/19) 3551ea906c41SOllivier Robert 3552ea906c41SOllivier RobertFocus: Minor Bugfixes 3553ea906c41SOllivier Robert 3554ea906c41SOllivier RobertThis release fixes a multicast mode authentication problem, 3555ea906c41SOllivier Robertan error in NTP packet handling on Windows that could lead to 3556ea906c41SOllivier Robertntpd crashing, and several other minor bugs. Handling of 3557ea906c41SOllivier Robertmulticast interfaces and logging configuration were improved. 3558ea906c41SOllivier RobertThe required versions of autogen and libopts were incremented. 3559ea906c41SOllivier RobertThis is a recommended upgrade for Windows and multicast users. 3560ea906c41SOllivier Robert 3561ea906c41SOllivier Robert--- 3562ea906c41SOllivier RobertNTP 4.2.4 (Harlan Stenn <stenn@ntp.org>, 2006/12/31) 3563ea906c41SOllivier Robert 3564ea906c41SOllivier RobertFocus: enhancements and bug fixes. 3565ea906c41SOllivier Robert 3566ea906c41SOllivier RobertDynamic interface rescanning was added to simplify the use of ntpd in 3567ea906c41SOllivier Robertconjunction with DHCP. GNU AutoGen is used for its command-line options 3568ea906c41SOllivier Robertprocessing. Separate PPS devices are supported for PARSE refclocks, MD5 3569ea906c41SOllivier Robertsignatures are now provided for the release files. Drivers have been 3570ea906c41SOllivier Robertadded for some new ref-clocks and have been removed for some older 3571ea906c41SOllivier Robertref-clocks. This release also includes other improvements, documentation 3572ea906c41SOllivier Robertand bug fixes. 3573ea906c41SOllivier Robert 3574ea906c41SOllivier RobertK&R C is no longer supported as of NTP-4.2.4. We are now aiming for ANSI 3575ea906c41SOllivier RobertC support. 3576ea906c41SOllivier Robert 3577ea906c41SOllivier Robert--- 3578ea906c41SOllivier RobertNTP 4.2.0 (Harlan Stenn <stenn@ntp.org>, 2003/10/15) 3579ea906c41SOllivier Robert 3580ea906c41SOllivier RobertFocus: enhancements and bug fixes. 3581