12b15cb3dSCy Schubert--- 23311ff84SXin LI 3*68ba7e87SXin LINTP 4.2.8p6 4*68ba7e87SXin LI 5*68ba7e87SXin LIFocus: Security, Bug fixes, enhancements. 6*68ba7e87SXin LI 7*68ba7e87SXin LISeverity: MEDIUM 8*68ba7e87SXin LI 9*68ba7e87SXin LIIn addition to bug fixes and enhancements, this release fixes the 10*68ba7e87SXin LIfollowing X low- and Y medium-severity vulnerabilities: 11*68ba7e87SXin LI 12*68ba7e87SXin LI* Potential Infinite Loop in 'ntpq' 13*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 14*68ba7e87SXin LI References: Sec 2548 / CVE-2015-8158 15*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 16*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 17*68ba7e87SXin LI CVSS2: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 18*68ba7e87SXin 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 19*68ba7e87SXin LI Summary: 'ntpq' processes incoming packets in a loop in 'getresponse()'. 20*68ba7e87SXin LI The loop's only stopping conditions are receiving a complete and 21*68ba7e87SXin LI correct response or hitting a small number of error conditions. 22*68ba7e87SXin LI If the packet contains incorrect values that don't trigger one of 23*68ba7e87SXin LI the error conditions, the loop continues to receive new packets. 24*68ba7e87SXin LI Note well, this is an attack against an instance of 'ntpq', not 25*68ba7e87SXin LI 'ntpd', and this attack requires the attacker to do one of the 26*68ba7e87SXin LI following: 27*68ba7e87SXin LI * Own a malicious NTP server that the client trusts 28*68ba7e87SXin LI * Prevent a legitimate NTP server from sending packets to 29*68ba7e87SXin LI the 'ntpq' client 30*68ba7e87SXin LI * MITM the 'ntpq' communications between the 'ntpq' client 31*68ba7e87SXin LI and the NTP server 32*68ba7e87SXin LI Mitigation: 33*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 34*68ba7e87SXin LI or the NTP Public Services Project Download Page 35*68ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG. 36*68ba7e87SXin LI 37*68ba7e87SXin LI* 0rigin: Zero Origin Timestamp Bypass 38*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 39*68ba7e87SXin LI References: Sec 2945 / CVE-2015-8138 40*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 41*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 42*68ba7e87SXin LI CVSS2: (AV:N/AC:L/Au:N/C:N/I:P/A:N) Base Score: 5.0 - MEDIUM 43*68ba7e87SXin 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 44*68ba7e87SXin LI (3.7 - LOW if you score AC:L) 45*68ba7e87SXin LI Summary: To distinguish legitimate peer responses from forgeries, a 46*68ba7e87SXin LI client attempts to verify a response packet by ensuring that the 47*68ba7e87SXin LI origin timestamp in the packet matches the origin timestamp it 48*68ba7e87SXin LI transmitted in its last request. A logic error exists that 49*68ba7e87SXin LI allows packets with an origin timestamp of zero to bypass this 50*68ba7e87SXin LI check whenever there is not an outstanding request to the server. 51*68ba7e87SXin LI Mitigation: 52*68ba7e87SXin LI Configure 'ntpd' to get time from multiple sources. 53*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 54*68ba7e87SXin LI or the NTP Public Services Project Download Page. 55*68ba7e87SXin LI Monitor your 'ntpd= instances. 56*68ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG. 57*68ba7e87SXin LI 58*68ba7e87SXin LI* Stack exhaustion in recursive traversal of restriction list 59*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016 60*68ba7e87SXin LI References: Sec 2940 / CVE-2015-7978 61*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 62*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 63*68ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 64*68ba7e87SXin LI Summary: An unauthenticated 'ntpdc reslist' command can cause a 65*68ba7e87SXin LI segmentation fault in ntpd by exhausting the call stack. 66*68ba7e87SXin LI Mitigation: 67*68ba7e87SXin LI Implement BCP-38. 68*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 69*68ba7e87SXin LI or the NTP Public Services Project Download Page. 70*68ba7e87SXin LI If you are unable to upgrade: 71*68ba7e87SXin LI In ntp-4.2.8, mode 7 is disabled by default. Don't enable it. 72*68ba7e87SXin LI If you must enable mode 7: 73*68ba7e87SXin LI configure the use of a 'requestkey' to control who can 74*68ba7e87SXin LI issue mode 7 requests. 75*68ba7e87SXin LI configure 'restrict noquery' to further limit mode 7 76*68ba7e87SXin LI requests to trusted sources. 77*68ba7e87SXin LI Monitor your ntpd instances. 78*68ba7e87SXin LI Credit: This weakness was discovered by Stephen Gray at Cisco ASIG. 79*68ba7e87SXin LI 80*68ba7e87SXin LI* Off-path Denial of Service (!DoS) attack on authenticated broadcast mode 81*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 82*68ba7e87SXin LI References: Sec 2942 / CVE-2015-7979 83*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 84*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 85*68ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:P/A:P) Base Score: 5.8 86*68ba7e87SXin LI Summary: An off-path attacker can send broadcast packets with bad 87*68ba7e87SXin LI authentication (wrong key, mismatched key, incorrect MAC, etc) 88*68ba7e87SXin LI to broadcast clients. It is observed that the broadcast client 89*68ba7e87SXin LI tears down the association with the broadcast server upon 90*68ba7e87SXin LI receiving just one bad packet. 91*68ba7e87SXin LI Mitigation: 92*68ba7e87SXin LI Implement BCP-38. 93*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 94*68ba7e87SXin LI or the NTP Public Services Project Download Page. 95*68ba7e87SXin LI Monitor your 'ntpd' instances. 96*68ba7e87SXin LI If this sort of attack is an active problem for you, you have 97*68ba7e87SXin LI deeper problems to investigate. In this case also consider 98*68ba7e87SXin LI having smaller NTP broadcast domains. 99*68ba7e87SXin LI Credit: This weakness was discovered by Aanchal Malhotra of Boston 100*68ba7e87SXin LI University. 101*68ba7e87SXin LI 102*68ba7e87SXin LI* reslist NULL pointer dereference 103*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 104*68ba7e87SXin LI References: Sec 2939 / CVE-2015-7977 105*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 106*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 107*68ba7e87SXin LI CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3 - MEDIUM 108*68ba7e87SXin LI Summary: An unauthenticated 'ntpdc reslist' command can cause a 109*68ba7e87SXin LI segmentation fault in ntpd by causing a NULL pointer dereference. 110*68ba7e87SXin LI Mitigation: 111*68ba7e87SXin LI Implement BCP-38. 112*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from NTP Project Download Page or 113*68ba7e87SXin LI the NTP Public Services Project Download Page. 114*68ba7e87SXin LI If you are unable to upgrade: 115*68ba7e87SXin LI mode 7 is disabled by default. Don't enable it. 116*68ba7e87SXin LI If you must enable mode 7: 117*68ba7e87SXin LI configure the use of a 'requestkey' to control who can 118*68ba7e87SXin LI issue mode 7 requests. 119*68ba7e87SXin LI configure 'restrict noquery' to further limit mode 7 120*68ba7e87SXin LI requests to trusted sources. 121*68ba7e87SXin LI Monitor your ntpd instances. 122*68ba7e87SXin LI Credit: This weakness was discovered by Stephen Gray of Cisco ASIG. 123*68ba7e87SXin LI 124*68ba7e87SXin LI* 'ntpq saveconfig' command allows dangerous characters in filenames. 125*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 126*68ba7e87SXin LI References: Sec 2938 / CVE-2015-7976 127*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 128*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 129*68ba7e87SXin LI CVSS: (AV:N/AC:L/Au:S/C:N/I:P/A:N) Base Score: 4.0 - MEDIUM 130*68ba7e87SXin LI Summary: The ntpq saveconfig command does not do adequate filtering 131*68ba7e87SXin LI of special characters from the supplied filename. 132*68ba7e87SXin LI Note well: The ability to use the saveconfig command is controlled 133*68ba7e87SXin LI by the 'restrict nomodify' directive, and the recommended default 134*68ba7e87SXin LI configuration is to disable this capability. If the ability to 135*68ba7e87SXin LI execute a 'saveconfig' is required, it can easily (and should) be 136*68ba7e87SXin LI limited and restricted to a known small number of IP addresses. 137*68ba7e87SXin LI Mitigation: 138*68ba7e87SXin LI Implement BCP-38. 139*68ba7e87SXin LI use 'restrict default nomodify' in your 'ntp.conf' file. 140*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page. 141*68ba7e87SXin LI If you are unable to upgrade: 142*68ba7e87SXin LI build NTP with 'configure --disable-saveconfig' if you will 143*68ba7e87SXin LI never need this capability, or 144*68ba7e87SXin LI use 'restrict default nomodify' in your 'ntp.conf' file. Be 145*68ba7e87SXin LI careful about what IPs have the ability to send 'modify' 146*68ba7e87SXin LI requests to 'ntpd'. 147*68ba7e87SXin LI Monitor your ntpd instances. 148*68ba7e87SXin LI 'saveconfig' requests are logged to syslog - monitor your syslog files. 149*68ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner of Cisco ASIG. 150*68ba7e87SXin LI 151*68ba7e87SXin LI* nextvar() missing length check in ntpq 152*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 153*68ba7e87SXin LI References: Sec 2937 / CVE-2015-7975 154*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 155*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 156*68ba7e87SXin LI CVSS: (AV:L/AC:H/Au:N/C:N/I:N/A:P) Base Score: 1.2 - LOW 157*68ba7e87SXin LI If you score A:C, this becomes 4.0. 158*68ba7e87SXin 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 159*68ba7e87SXin LI Summary: ntpq may call nextvar() which executes a memcpy() into the 160*68ba7e87SXin LI name buffer without a proper length check against its maximum 161*68ba7e87SXin LI length of 256 bytes. Note well that we're taking about ntpq here. 162*68ba7e87SXin LI The usual worst-case effect of this vulnerability is that the 163*68ba7e87SXin LI specific instance of ntpq will crash and the person or process 164*68ba7e87SXin LI that did this will have stopped themselves. 165*68ba7e87SXin LI Mitigation: 166*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 167*68ba7e87SXin LI or the NTP Public Services Project Download Page. 168*68ba7e87SXin LI If you are unable to upgrade: 169*68ba7e87SXin LI If you have scripts that feed input to ntpq make sure there are 170*68ba7e87SXin LI some sanity checks on the input received from the "outside". 171*68ba7e87SXin LI This is potentially more dangerous if ntpq is run as root. 172*68ba7e87SXin LI Credit: This weakness was discovered by Jonathan Gardner at Cisco ASIG. 173*68ba7e87SXin LI 174*68ba7e87SXin LI* Skeleton Key: Any trusted key system can serve time 175*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 176*68ba7e87SXin LI References: Sec 2936 / CVE-2015-7974 177*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 178*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 179*68ba7e87SXin LI CVSS: (AV:N/AC:H/Au:S/C:N/I:C/A:N) Base Score: 4.9 180*68ba7e87SXin LI Summary: Symmetric key encryption uses a shared trusted key. The 181*68ba7e87SXin LI reported title for this issue was "Missing key check allows 182*68ba7e87SXin LI impersonation between authenticated peers" and the report claimed 183*68ba7e87SXin LI "A key specified only for one server should only work to 184*68ba7e87SXin LI authenticate that server, other trusted keys should be refused." 185*68ba7e87SXin LI Except there has never been any correlation between this trusted 186*68ba7e87SXin LI key and server v. clients machines and there has never been any 187*68ba7e87SXin LI way to specify a key only for one server. We have treated this as 188*68ba7e87SXin LI an enhancement request, and ntp-4.2.8p6 includes other checks and 189*68ba7e87SXin LI tests to strengthen clients against attacks coming from broadcast 190*68ba7e87SXin LI servers. 191*68ba7e87SXin LI Mitigation: 192*68ba7e87SXin LI Implement BCP-38. 193*68ba7e87SXin LI If this scenario represents a real or a potential issue for you, 194*68ba7e87SXin LI upgrade to 4.2.8p6, or later, from the NTP Project Download 195*68ba7e87SXin LI Page or the NTP Public Services Project Download Page, and 196*68ba7e87SXin LI use the new field in the ntp.keys file that specifies the list 197*68ba7e87SXin LI of IPs that are allowed to serve time. Note that this alone 198*68ba7e87SXin LI will not protect against time packets with forged source IP 199*68ba7e87SXin LI addresses, however other changes in ntp-4.2.8p6 provide 200*68ba7e87SXin LI significant mitigation against broadcast attacks. MITM attacks 201*68ba7e87SXin LI are a different story. 202*68ba7e87SXin LI If you are unable to upgrade: 203*68ba7e87SXin LI Don't use broadcast mode if you cannot monitor your client 204*68ba7e87SXin LI servers. 205*68ba7e87SXin LI If you choose to use symmetric keys to authenticate time 206*68ba7e87SXin LI packets in a hostile environment where ephemeral time 207*68ba7e87SXin LI servers can be created, or if it is expected that malicious 208*68ba7e87SXin LI time servers will participate in an NTP broadcast domain, 209*68ba7e87SXin LI limit the number of participating systems that participate 210*68ba7e87SXin LI in the shared-key group. 211*68ba7e87SXin LI Monitor your ntpd instances. 212*68ba7e87SXin LI Credit: This weakness was discovered by Matt Street of Cisco ASIG. 213*68ba7e87SXin LI 214*68ba7e87SXin LI* Deja Vu: Replay attack on authenticated broadcast mode 215*68ba7e87SXin LI Date Resolved: Stable (4.2.8p6) 19 Jan 2016; Dev (4.3.90) 19 Jan 2016 216*68ba7e87SXin LI References: Sec 2935 / CVE-2015-7973 217*68ba7e87SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p6, and 218*68ba7e87SXin LI 4.3.0 up to, but not including 4.3.90 219*68ba7e87SXin LI CVSS: (AV:A/AC:M/Au:N/C:N/I:P/A:P) Base Score: 4.3 - MEDIUM 220*68ba7e87SXin LI Summary: If an NTP network is configured for broadcast operations then 221*68ba7e87SXin LI either a man-in-the-middle attacker or a malicious participant 222*68ba7e87SXin LI that has the same trusted keys as the victim can replay time packets. 223*68ba7e87SXin LI Mitigation: 224*68ba7e87SXin LI Implement BCP-38. 225*68ba7e87SXin LI Upgrade to 4.2.8p6, or later, from the NTP Project Download Page 226*68ba7e87SXin LI or the NTP Public Services Project Download Page. 227*68ba7e87SXin LI If you are unable to upgrade: 228*68ba7e87SXin LI Don't use broadcast mode if you cannot monitor your client servers. 229*68ba7e87SXin LI Monitor your ntpd instances. 230*68ba7e87SXin LI Credit: This weakness was discovered by Aanchal Malhotra of Boston 231*68ba7e87SXin LI University. 232*68ba7e87SXin LI 233*68ba7e87SXin LIOther fixes: 234*68ba7e87SXin LI 235*68ba7e87SXin LI* [Bug 2772] adj_systime overflows tv_usec. perlinger@ntp.org 236*68ba7e87SXin LI* [Bug 2814] msyslog deadlock when signaled. perlinger@ntp.org 237*68ba7e87SXin LI - applied patch by shenpeng11@huawei.com with minor adjustments 238*68ba7e87SXin LI* [Bug 2882] Look at ntp_request.c:list_peers_sum(). perlinger@ntp.org 239*68ba7e87SXin LI* [Bug 2891] Deadlock in deferred DNS lookup framework. perlinger@ntp.org 240*68ba7e87SXin LI* [Bug 2892] Several test cases assume IPv6 capabilities even when 241*68ba7e87SXin LI IPv6 is disabled in the build. perlinger@ntp.org 242*68ba7e87SXin LI - Found this already fixed, but validation led to cleanup actions. 243*68ba7e87SXin LI* [Bug 2905] DNS lookups broken. perlinger@ntp.org 244*68ba7e87SXin LI - added limits to stack consumption, fixed some return code handling 245*68ba7e87SXin LI* [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call 246*68ba7e87SXin LI - changed stacked/nested handling of CTRL-C. perlinger@ntp.org 247*68ba7e87SXin LI - make CTRL-C work for retrieval and printing od MRU list. perlinger@ntp.org 248*68ba7e87SXin LI* [Bug 2980] reduce number of warnings. perlinger@ntp.org 249*68ba7e87SXin LI - integrated several patches from Havard Eidnes (he@uninett.no) 250*68ba7e87SXin LI* [Bug 2985] bogus calculation in authkeys.c perlinger@ntp.org 251*68ba7e87SXin LI - implement 'auth_log2()' using integer bithack instead of float calculation 252*68ba7e87SXin LI* Make leapsec_query debug messages less verbose. Harlan Stenn. 253*68ba7e87SXin LI 254*68ba7e87SXin LI--- 255*68ba7e87SXin LI 2563311ff84SXin LINTP 4.2.8p5 2573311ff84SXin LI 2583311ff84SXin LIFocus: Security, Bug fixes, enhancements. 2593311ff84SXin LI 2603311ff84SXin LISeverity: MEDIUM 2613311ff84SXin LI 2623311ff84SXin LIIn addition to bug fixes and enhancements, this release fixes the 2633311ff84SXin LIfollowing medium-severity vulnerability: 2643311ff84SXin LI 2653311ff84SXin LI* Small-step/big-step. Close the panic gate earlier. 2663311ff84SXin LI References: Sec 2956, CVE-2015-5300 2673311ff84SXin LI Affects: All ntp-4 releases up to, but not including 4.2.8p5, and 2683311ff84SXin LI 4.3.0 up to, but not including 4.3.78 2693311ff84SXin LI CVSS3: (AV:N/AC:H/PR:H/UI:R/S:C/C:L/I:N/A:L) Base Score: 4.0, MEDIUM 2703311ff84SXin LI Summary: If ntpd is always started with the -g option, which is 2713311ff84SXin LI common and against long-standing recommendation, and if at the 2723311ff84SXin LI moment ntpd is restarted an attacker can immediately respond to 2733311ff84SXin LI enough requests from enough sources trusted by the target, which 2743311ff84SXin LI is difficult and not common, there is a window of opportunity 2753311ff84SXin LI where the attacker can cause ntpd to set the time to an 2763311ff84SXin LI arbitrary value. Similarly, if an attacker is able to respond 2773311ff84SXin LI to enough requests from enough sources trusted by the target, 2783311ff84SXin LI the attacker can cause ntpd to abort and restart, at which 2793311ff84SXin LI point it can tell the target to set the time to an arbitrary 2803311ff84SXin LI value if and only if ntpd was re-started against long-standing 2813311ff84SXin LI recommendation with the -g flag, or if ntpd was not given the 2823311ff84SXin LI -g flag, the attacker can move the target system's time by at 2833311ff84SXin LI most 900 seconds' time per attack. 2843311ff84SXin LI Mitigation: 2853311ff84SXin LI Configure ntpd to get time from multiple sources. 2863311ff84SXin LI Upgrade to 4.2.8p5, or later, from the NTP Project Download 2873311ff84SXin LI Page or the NTP Public Services Project Download Page 2883311ff84SXin LI As we've long documented, only use the -g option to ntpd in 2893311ff84SXin LI cold-start situations. 2903311ff84SXin LI Monitor your ntpd instances. 2913311ff84SXin LI Credit: This weakness was discovered by Aanchal Malhotra, 2923311ff84SXin LI Isaac E. Cohen, and Sharon Goldberg at Boston University. 2933311ff84SXin LI 2943311ff84SXin LI NOTE WELL: The -g flag disables the limit check on the panic_gate 2953311ff84SXin LI in ntpd, which is 900 seconds by default. The bug identified by 2963311ff84SXin LI the researchers at Boston University is that the panic_gate 2973311ff84SXin LI check was only re-enabled after the first change to the system 2983311ff84SXin LI clock that was greater than 128 milliseconds, by default. The 2993311ff84SXin LI correct behavior is that the panic_gate check should be 3003311ff84SXin LI re-enabled after any initial time correction. 3013311ff84SXin LI 3023311ff84SXin LI If an attacker is able to inject consistent but erroneous time 3033311ff84SXin LI responses to your systems via the network or "over the air", 3043311ff84SXin LI perhaps by spoofing radio, cellphone, or navigation satellite 3053311ff84SXin LI transmissions, they are in a great position to affect your 3063311ff84SXin LI system's clock. There comes a point where your very best 3073311ff84SXin LI defenses include: 3083311ff84SXin LI 3093311ff84SXin LI Configure ntpd to get time from multiple sources. 3103311ff84SXin LI Monitor your ntpd instances. 3113311ff84SXin LI 3123311ff84SXin LIOther fixes: 3133311ff84SXin LI 3143311ff84SXin LI* Coverity submission process updated from Coverity 5 to Coverity 7. 3153311ff84SXin LI The NTP codebase has been undergoing regular Coverity scans on an 3163311ff84SXin LI ongoing basis since 2006. As part of our recent upgrade from 3173311ff84SXin LI Coverity 5 to Coverity 7, Coverity identified 16 nits in some of 3183311ff84SXin LI the newly-written Unity test programs. These were fixed. 3193311ff84SXin LI* [Bug 2829] Clean up pipe_fds in ntpd.c perlinger@ntp.org 3203311ff84SXin LI* [Bug 2887] stratum -1 config results as showing value 99 3213311ff84SXin LI - fudge stratum should only accept values [0..16]. perlinger@ntp.org 3223311ff84SXin LI* [Bug 2932] Update leapsecond file info in miscopt.html. CWoodbury, HStenn. 3233311ff84SXin LI* [Bug 2934] tests/ntpd/t-ntp_scanner.c has a magic constant wired in. HMurray 3243311ff84SXin LI* [Bug 2944] errno is not preserved properly in ntpdate after sendto call. 3253311ff84SXin LI - applied patch by Christos Zoulas. perlinger@ntp.org 3263311ff84SXin LI* [Bug 2952] Peer associations broken by fix for Bug 2901/CVE-2015-7704. 3273311ff84SXin LI* [Bug 2954] Version 4.2.8p4 crashes on startup on some OSes. 3283311ff84SXin LI - fixed data race conditions in threaded DNS worker. perlinger@ntp.org 3293311ff84SXin LI - limit threading warm-up to linux; FreeBSD bombs on it. perlinger@ntp.org 3303311ff84SXin LI* [Bug 2957] 'unsigned int' vs 'size_t' format clash. perlinger@ntp.org 3313311ff84SXin LI - accept key file only if there are no parsing errors 3323311ff84SXin LI - fixed size_t/u_int format clash 3333311ff84SXin LI - fixed wrong use of 'strlcpy' 3343311ff84SXin LI* [Bug 2958] ntpq: fatal error messages need a final newline. Craig Leres. 3353311ff84SXin LI* [Bug 2962] truncation of size_t/ptrdiff_t on 64bit targets. perlinger@ntp.org 3363311ff84SXin LI - fixed several other warnings (cast-alignment, missing const, missing prototypes) 3373311ff84SXin LI - promote use of 'size_t' for values that express a size 3383311ff84SXin LI - use ptr-to-const for read-only arguments 3393311ff84SXin LI - make sure SOCKET values are not truncated (win32-specific) 3403311ff84SXin LI - format string fixes 3413311ff84SXin LI* [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki. 3423311ff84SXin LI* [Bug 2967] ntpdate command suffers an assertion failure 3433311ff84SXin LI - fixed ntp_rfc2553.c to return proper address length. perlinger@ntp.org 3443311ff84SXin LI* [Bug 2969] Seg fault from ntpq/mrulist when looking at server with 3453311ff84SXin LI lots of clients. perlinger@ntp.org 3463311ff84SXin LI* [Bug 2971] ntpq bails on ^C: select fails: Interrupted system call 3473311ff84SXin LI - changed stacked/nested handling of CTRL-C. perlinger@ntp.org 3483311ff84SXin LI* Unity cleanup for FreeBSD-6.4. Harlan Stenn. 3493311ff84SXin LI* Unity test cleanup. Harlan Stenn. 3503311ff84SXin LI* Libevent autoconf pthread fixes for FreeBSD-10. Harlan Stenn. 3513311ff84SXin LI* Header cleanup in tests/sandbox/uglydate.c. Harlan Stenn. 3523311ff84SXin LI* Header cleanup in tests/libntp/sfptostr.c. Harlan Stenn. 3533311ff84SXin LI* Quiet a warning from clang. Harlan Stenn. 3543311ff84SXin LI 3553311ff84SXin LI--- 3569034852cSGleb SmirnoffNTP 4.2.8p4 3579034852cSGleb Smirnoff 3583311ff84SXin LIFocus: Security, Bug fixes, enhancements. 3599034852cSGleb Smirnoff 3609034852cSGleb SmirnoffSeverity: MEDIUM 3619034852cSGleb Smirnoff 3629034852cSGleb SmirnoffIn addition to bug fixes and enhancements, this release fixes the 3639034852cSGleb Smirnofffollowing 13 low- and medium-severity vulnerabilities: 3649034852cSGleb Smirnoff 3659034852cSGleb Smirnoff* Incomplete vallen (value length) checks in ntp_crypto.c, leading 3669034852cSGleb Smirnoff to potential crashes or potential code injection/information leakage. 3679034852cSGleb Smirnoff 3689034852cSGleb Smirnoff References: Sec 2899, Sec 2671, CVE-2015-7691, CVE-2015-7692, CVE-2015-7702 3699034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 3709034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 3719034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6 3729034852cSGleb Smirnoff Summary: The fix for CVE-2014-9750 was incomplete in that there were 3739034852cSGleb Smirnoff certain code paths where a packet with particular autokey operations 3749034852cSGleb Smirnoff that contained malicious data was not always being completely 3759034852cSGleb Smirnoff validated. Receipt of these packets can cause ntpd to crash. 3769034852cSGleb Smirnoff Mitigation: 3779034852cSGleb Smirnoff Don't use autokey. 3789034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 3799034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 3809034852cSGleb Smirnoff Monitor your ntpd instances. 3819034852cSGleb Smirnoff Credit: This weakness was discovered by Tenable Network Security. 3829034852cSGleb Smirnoff 3839034852cSGleb Smirnoff* Clients that receive a KoD should validate the origin timestamp field. 3849034852cSGleb Smirnoff 3859034852cSGleb Smirnoff References: Sec 2901 / CVE-2015-7704, CVE-2015-7705 3869034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 3879034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 3889034852cSGleb Smirnoff CVSS: (AV:N/AC:M/Au:N/C:N/I:N/A:P) Base Score: 4.3-5.0 at worst 3899034852cSGleb Smirnoff Summary: An ntpd client that honors Kiss-of-Death responses will honor 3909034852cSGleb Smirnoff KoD messages that have been forged by an attacker, causing it to 3919034852cSGleb Smirnoff delay or stop querying its servers for time updates. Also, an 3929034852cSGleb Smirnoff attacker can forge packets that claim to be from the target and 3939034852cSGleb Smirnoff send them to servers often enough that a server that implements 3949034852cSGleb Smirnoff KoD rate limiting will send the target machine a KoD response to 3959034852cSGleb Smirnoff attempt to reduce the rate of incoming packets, or it may also 3969034852cSGleb Smirnoff trigger a firewall block at the server for packets from the target 3979034852cSGleb Smirnoff machine. For either of these attacks to succeed, the attacker must 3989034852cSGleb Smirnoff know what servers the target is communicating with. An attacker 3999034852cSGleb Smirnoff can be anywhere on the Internet and can frequently learn the 4009034852cSGleb Smirnoff identity of the target's time source by sending the target a 4019034852cSGleb Smirnoff time query. 4029034852cSGleb Smirnoff Mitigation: 4039034852cSGleb Smirnoff Implement BCP-38. 4049034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download Page 4059034852cSGleb Smirnoff or the NTP Public Services Project Download Page 4069034852cSGleb Smirnoff If you can't upgrade, restrict who can query ntpd to learn who 4079034852cSGleb Smirnoff its servers are, and what IPs are allowed to ask your system 4089034852cSGleb Smirnoff for the time. This mitigation is heavy-handed. 4099034852cSGleb Smirnoff Monitor your ntpd instances. 4109034852cSGleb Smirnoff Note: 4119034852cSGleb Smirnoff 4.2.8p4 protects against the first attack. For the second attack, 4129034852cSGleb Smirnoff all we can do is warn when it is happening, which we do in 4.2.8p4. 4139034852cSGleb Smirnoff Credit: This weakness was discovered by Aanchal Malhotra, 4149034852cSGleb Smirnoff Issac E. Cohen, and Sharon Goldberg of Boston University. 4159034852cSGleb Smirnoff 4169034852cSGleb Smirnoff* configuration directives to change "pidfile" and "driftfile" should 4179034852cSGleb Smirnoff only be allowed locally. 4189034852cSGleb Smirnoff 4199034852cSGleb Smirnoff References: Sec 2902 / CVE-2015-5196 4209034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 4219034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 4229034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.2 worst case 4239034852cSGleb Smirnoff Summary: If ntpd is configured to allow for remote configuration, 4249034852cSGleb Smirnoff and if the (possibly spoofed) source IP address is allowed to 4259034852cSGleb Smirnoff send remote configuration requests, and if the attacker knows 4269034852cSGleb Smirnoff the remote configuration password, it's possible for an attacker 4279034852cSGleb Smirnoff to use the "pidfile" or "driftfile" directives to potentially 4289034852cSGleb Smirnoff overwrite other files. 4299034852cSGleb Smirnoff Mitigation: 4309034852cSGleb Smirnoff Implement BCP-38. 4319034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 4329034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 4339034852cSGleb Smirnoff If you cannot upgrade, don't enable remote configuration. 4349034852cSGleb Smirnoff If you must enable remote configuration and cannot upgrade, 4359034852cSGleb Smirnoff remote configuration of NTF's ntpd requires: 4369034852cSGleb Smirnoff - an explicitly configured trustedkey, and you should also 4379034852cSGleb Smirnoff configure a controlkey. 4389034852cSGleb Smirnoff - access from a permitted IP. You choose the IPs. 4399034852cSGleb Smirnoff - authentication. Don't disable it. Practice secure key safety. 4409034852cSGleb Smirnoff Monitor your ntpd instances. 4419034852cSGleb Smirnoff Credit: This weakness was discovered by Miroslav Lichvar of Red Hat. 4429034852cSGleb Smirnoff 4439034852cSGleb Smirnoff* Slow memory leak in CRYPTO_ASSOC 4449034852cSGleb Smirnoff 4459034852cSGleb Smirnoff References: Sec 2909 / CVE-2015-7701 4469034852cSGleb Smirnoff Affects: All ntp-4 releases that use autokey up to, but not 4479034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 4489034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 0.0 best/usual case, 4499034852cSGleb Smirnoff 4.6 otherwise 4509034852cSGleb Smirnoff Summary: If ntpd is configured to use autokey, then an attacker can 4519034852cSGleb Smirnoff send packets to ntpd that will, after several days of ongoing 4529034852cSGleb Smirnoff attack, cause it to run out of memory. 4539034852cSGleb Smirnoff Mitigation: 4549034852cSGleb Smirnoff Don't use autokey. 4559034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 4569034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page 4579034852cSGleb Smirnoff Monitor your ntpd instances. 4589034852cSGleb Smirnoff Credit: This weakness was discovered by Tenable Network Security. 4599034852cSGleb Smirnoff 4609034852cSGleb Smirnoff* mode 7 loop counter underrun 4619034852cSGleb Smirnoff 4629034852cSGleb Smirnoff References: Sec 2913 / CVE-2015-7848 / TALOS-CAN-0052 4639034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 4649034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 4659034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6 4669034852cSGleb Smirnoff Summary: If ntpd is configured to enable mode 7 packets, and if the 4679034852cSGleb Smirnoff use of mode 7 packets is not properly protected thru the use of 4689034852cSGleb Smirnoff the available mode 7 authentication and restriction mechanisms, 4699034852cSGleb Smirnoff and if the (possibly spoofed) source IP address is allowed to 4709034852cSGleb Smirnoff send mode 7 queries, then an attacker can send a crafted packet 4719034852cSGleb Smirnoff to ntpd that will cause it to crash. 4729034852cSGleb Smirnoff Mitigation: 4739034852cSGleb Smirnoff Implement BCP-38. 4749034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 4759034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 4769034852cSGleb Smirnoff If you are unable to upgrade: 4779034852cSGleb Smirnoff In ntp-4.2.8, mode 7 is disabled by default. Don't enable it. 4789034852cSGleb Smirnoff If you must enable mode 7: 4799034852cSGleb Smirnoff configure the use of a requestkey to control who can issue 4809034852cSGleb Smirnoff mode 7 requests. 4819034852cSGleb Smirnoff configure restrict noquery to further limit mode 7 requests 4829034852cSGleb Smirnoff to trusted sources. 4839034852cSGleb Smirnoff Monitor your ntpd instances. 4849034852cSGleb SmirnoffCredit: This weakness was discovered by Aleksandar Nikolic of Cisco Talos. 4859034852cSGleb Smirnoff 4869034852cSGleb Smirnoff* memory corruption in password store 4879034852cSGleb Smirnoff 4889034852cSGleb Smirnoff References: Sec 2916 / CVE-2015-7849 / TALOS-CAN-0054 4899034852cSGleb 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 4909034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:C/A:C) Base Score: 6.8, worst case 4919034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 4929034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 4939034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 4949034852cSGleb Smirnoff remote configuration password or if ntpd was configured to 4959034852cSGleb Smirnoff disable authentication, then an attacker can send a set of 4969034852cSGleb Smirnoff packets to ntpd that may cause a crash or theoretically 4979034852cSGleb Smirnoff perform a code injection attack. 4989034852cSGleb Smirnoff Mitigation: 4999034852cSGleb Smirnoff Implement BCP-38. 5009034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 5019034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 5029034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's 5039034852cSGleb Smirnoff ntpd requires: 5049034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 5059034852cSGleb Smirnoff this if you need it. 5069034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 5079034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 5089034852cSGleb Smirnoff Monitor your ntpd instances. 5099034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 5109034852cSGleb Smirnoff 5119034852cSGleb Smirnoff* Infinite loop if extended logging enabled and the logfile and 5129034852cSGleb Smirnoff keyfile are the same. 5139034852cSGleb Smirnoff 5149034852cSGleb Smirnoff References: Sec 2917 / CVE-2015-7850 / TALOS-CAN-0055 5159034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, 5169034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 5179034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case 5189034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 5199034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 5209034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 5219034852cSGleb Smirnoff remote configuration password or if ntpd was configured to 5229034852cSGleb Smirnoff disable authentication, then an attacker can send a set of 5239034852cSGleb Smirnoff packets to ntpd that will cause it to crash and/or create a 5249034852cSGleb Smirnoff potentially huge log file. Specifically, the attacker could 5259034852cSGleb Smirnoff enable extended logging, point the key file at the log file, 5269034852cSGleb Smirnoff and cause what amounts to an infinite loop. 5279034852cSGleb Smirnoff Mitigation: 5289034852cSGleb Smirnoff Implement BCP-38. 5299034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 5309034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 5319034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's ntpd 5329034852cSGleb Smirnoff requires: 5339034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure this 5349034852cSGleb Smirnoff if you need it. 5359034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 5369034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 5379034852cSGleb Smirnoff Monitor your ntpd instances. 5389034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 5399034852cSGleb Smirnoff 5409034852cSGleb Smirnoff* Potential path traversal vulnerability in the config file saving of 5419034852cSGleb Smirnoff ntpd on VMS. 5429034852cSGleb Smirnoff 5439034852cSGleb Smirnoff References: Sec 2918 / CVE-2015-7851 / TALOS-CAN-0062 5449034852cSGleb Smirnoff Affects: All ntp-4 releases running under VMS up to, but not 5459034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 5469034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:P/A:C) Base Score: 5.2, worst case 5479034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 5489034852cSGleb Smirnoff the (possibly spoofed) IP address is allowed to send remote 5499034852cSGleb Smirnoff configuration requests, and if the attacker knows the remote 5509034852cSGleb Smirnoff configuration password or if ntpd was configured to disable 5519034852cSGleb Smirnoff authentication, then an attacker can send a set of packets to 5529034852cSGleb Smirnoff ntpd that may cause ntpd to overwrite files. 5539034852cSGleb Smirnoff Mitigation: 5549034852cSGleb Smirnoff Implement BCP-38. 5559034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 5569034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 5579034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's ntpd 5589034852cSGleb Smirnoff requires: 5599034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 5609034852cSGleb Smirnoff this if you need it. 5619034852cSGleb Smirnoff access from permitted IP addresses. You choose the IPs. 5629034852cSGleb Smirnoff authentication. Don't disable it. Practice key security safety. 5639034852cSGleb Smirnoff Monitor your ntpd instances. 5649034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 5659034852cSGleb Smirnoff 5669034852cSGleb Smirnoff* ntpq atoascii() potential memory corruption 5679034852cSGleb Smirnoff 5689034852cSGleb Smirnoff References: Sec 2919 / CVE-2015-7852 / TALOS-CAN-0063 5699034852cSGleb Smirnoff Affects: All ntp-4 releases running up to, but not including 4.2.8p4, 5709034852cSGleb Smirnoff and 4.3.0 up to, but not including 4.3.77 5719034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:N/C:N/I:P/A:P) Base Score: 4.0, worst case 5729034852cSGleb Smirnoff Summary: If an attacker can figure out the precise moment that ntpq 5739034852cSGleb Smirnoff is listening for data and the port number it is listening on or 5749034852cSGleb Smirnoff if the attacker can provide a malicious instance ntpd that 5759034852cSGleb Smirnoff victims will connect to then an attacker can send a set of 5769034852cSGleb Smirnoff crafted mode 6 response packets that, if received by ntpq, 5779034852cSGleb Smirnoff can cause ntpq to crash. 5789034852cSGleb Smirnoff Mitigation: 5799034852cSGleb Smirnoff Implement BCP-38. 5809034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 5819034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 5829034852cSGleb Smirnoff If you are unable to upgrade and you run ntpq against a server 5839034852cSGleb Smirnoff and ntpq crashes, try again using raw mode. Build or get a 5849034852cSGleb Smirnoff patched ntpq and see if that fixes the problem. Report new 5859034852cSGleb Smirnoff bugs in ntpq or abusive servers appropriately. 5869034852cSGleb Smirnoff If you use ntpq in scripts, make sure ntpq does what you expect 5879034852cSGleb Smirnoff in your scripts. 5889034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan and 5899034852cSGleb Smirnoff Aleksander Nikolich of Cisco Talos. 5909034852cSGleb Smirnoff 5919034852cSGleb Smirnoff* Invalid length data provided by a custom refclock driver could cause 5929034852cSGleb Smirnoff a buffer overflow. 5939034852cSGleb Smirnoff 5949034852cSGleb Smirnoff References: Sec 2920 / CVE-2015-7853 / TALOS-CAN-0064 5959034852cSGleb Smirnoff Affects: Potentially all ntp-4 releases running up to, but not 5969034852cSGleb Smirnoff including 4.2.8p4, and 4.3.0 up to, but not including 4.3.77 5979034852cSGleb Smirnoff that have custom refclocks 5989034852cSGleb Smirnoff CVSS: (AV:L/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 usual case, 5999034852cSGleb Smirnoff 5.9 unusual worst case 6009034852cSGleb Smirnoff Summary: A negative value for the datalen parameter will overflow a 6019034852cSGleb Smirnoff data buffer. NTF's ntpd driver implementations always set this 6029034852cSGleb Smirnoff value to 0 and are therefore not vulnerable to this weakness. 6039034852cSGleb Smirnoff If you are running a custom refclock driver in ntpd and that 6049034852cSGleb Smirnoff driver supplies a negative value for datalen (no custom driver 6059034852cSGleb Smirnoff of even minimal competence would do this) then ntpd would 6069034852cSGleb Smirnoff overflow a data buffer. It is even hypothetically possible 6079034852cSGleb Smirnoff in this case that instead of simply crashing ntpd the attacker 6089034852cSGleb Smirnoff could effect a code injection attack. 6099034852cSGleb Smirnoff Mitigation: 6109034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 6119034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 6129034852cSGleb Smirnoff If you are unable to upgrade: 6139034852cSGleb Smirnoff If you are running custom refclock drivers, make sure 6149034852cSGleb Smirnoff the signed datalen value is either zero or positive. 6159034852cSGleb Smirnoff Monitor your ntpd instances. 6169034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan of Cisco Talos. 6179034852cSGleb Smirnoff 6189034852cSGleb Smirnoff* Password Length Memory Corruption Vulnerability 6199034852cSGleb Smirnoff 6209034852cSGleb Smirnoff References: Sec 2921 / CVE-2015-7854 / TALOS-CAN-0065 6219034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 6229034852cSGleb Smirnoff 4.3.0 up to, but not including 4.3.77 6239034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:C/I:C/A:C) Base Score: 0.0 best case, 6249034852cSGleb Smirnoff 1.7 usual case, 6.8, worst case 6259034852cSGleb Smirnoff Summary: If ntpd is configured to allow remote configuration, and if 6269034852cSGleb Smirnoff the (possibly spoofed) source IP address is allowed to send 6279034852cSGleb Smirnoff remote configuration requests, and if the attacker knows the 6289034852cSGleb Smirnoff remote configuration password or if ntpd was (foolishly) 6299034852cSGleb Smirnoff configured to disable authentication, then an attacker can 6309034852cSGleb Smirnoff send a set of packets to ntpd that may cause it to crash, 6319034852cSGleb Smirnoff with the hypothetical possibility of a small code injection. 6329034852cSGleb Smirnoff Mitigation: 6339034852cSGleb Smirnoff Implement BCP-38. 6349034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 6359034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 6369034852cSGleb Smirnoff If you are unable to upgrade, remote configuration of NTF's 6379034852cSGleb Smirnoff ntpd requires: 6389034852cSGleb Smirnoff an explicitly configured "trusted" key. Only configure 6399034852cSGleb Smirnoff this if you need it. 6409034852cSGleb Smirnoff access from a permitted IP address. You choose the IPs. 6419034852cSGleb Smirnoff authentication. Don't disable it. Practice secure key safety. 6429034852cSGleb Smirnoff Monitor your ntpd instances. 6439034852cSGleb Smirnoff Credit: This weakness was discovered by Yves Younan and 6449034852cSGleb Smirnoff Aleksander Nikolich of Cisco Talos. 6459034852cSGleb Smirnoff 6469034852cSGleb Smirnoff* decodenetnum() will ASSERT botch instead of returning FAIL on some 6479034852cSGleb Smirnoff bogus values. 6489034852cSGleb Smirnoff 6499034852cSGleb Smirnoff References: Sec 2922 / CVE-2015-7855 6509034852cSGleb Smirnoff Affects: All ntp-4 releases up to, but not including 4.2.8p4, and 6519034852cSGleb Smirnoff 4.3.0 up to, but not including 4.3.77 6529034852cSGleb Smirnoff CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case 6539034852cSGleb Smirnoff Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing 6549034852cSGleb Smirnoff an unusually long data value where a network address is expected, 6559034852cSGleb Smirnoff the decodenetnum() function will abort with an assertion failure 6569034852cSGleb Smirnoff instead of simply returning a failure condition. 6579034852cSGleb Smirnoff Mitigation: 6589034852cSGleb Smirnoff Implement BCP-38. 6599034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 6609034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 6619034852cSGleb Smirnoff If you are unable to upgrade: 6629034852cSGleb Smirnoff mode 7 is disabled by default. Don't enable it. 6639034852cSGleb Smirnoff Use restrict noquery to limit who can send mode 6 6649034852cSGleb Smirnoff and mode 7 requests. 6659034852cSGleb Smirnoff Configure and use the controlkey and requestkey 6669034852cSGleb Smirnoff authentication directives to limit who can 6679034852cSGleb Smirnoff send mode 6 and mode 7 requests. 6689034852cSGleb Smirnoff Monitor your ntpd instances. 6699034852cSGleb Smirnoff Credit: This weakness was discovered by John D "Doug" Birdwell of IDA.org. 6709034852cSGleb Smirnoff 6719034852cSGleb Smirnoff* NAK to the Future: Symmetric association authentication bypass via 6729034852cSGleb Smirnoff crypto-NAK. 6739034852cSGleb Smirnoff 6749034852cSGleb Smirnoff References: Sec 2941 / CVE-2015-7871 6759034852cSGleb Smirnoff Affects: All ntp-4 releases between 4.2.5p186 up to but not including 6769034852cSGleb Smirnoff 4.2.8p4, and 4.3.0 up to but not including 4.3.77 6779034852cSGleb Smirnoff CVSS: (AV:N/AC:L/Au:N/C:N/I:P/A:P) Base Score: 6.4 6789034852cSGleb Smirnoff Summary: Crypto-NAK packets can be used to cause ntpd to accept time 6799034852cSGleb Smirnoff from unauthenticated ephemeral symmetric peers by bypassing the 6809034852cSGleb Smirnoff authentication required to mobilize peer associations. This 6819034852cSGleb Smirnoff vulnerability appears to have been introduced in ntp-4.2.5p186 6829034852cSGleb Smirnoff when the code handling mobilization of new passive symmetric 6839034852cSGleb Smirnoff associations (lines 1103-1165) was refactored. 6849034852cSGleb Smirnoff Mitigation: 6859034852cSGleb Smirnoff Implement BCP-38. 6869034852cSGleb Smirnoff Upgrade to 4.2.8p4, or later, from the NTP Project Download 6879034852cSGleb Smirnoff Page or the NTP Public Services Project Download Page. 6889034852cSGleb Smirnoff If you are unable to upgrade: 6899034852cSGleb Smirnoff Apply the patch to the bottom of the "authentic" check 6909034852cSGleb Smirnoff block around line 1136 of ntp_proto.c. 6919034852cSGleb Smirnoff Monitor your ntpd instances. 6929034852cSGleb Smirnoff Credit: This weakness was discovered by Stephen Gray <stepgray@cisco.com>. 6939034852cSGleb Smirnoff 6949034852cSGleb SmirnoffBackward-Incompatible changes: 6959034852cSGleb Smirnoff* [Bug 2817] Default on Linux is now "rlimit memlock -1". 6969034852cSGleb Smirnoff While the general default of 32M is still the case, under Linux 6979034852cSGleb Smirnoff the default value has been changed to -1 (do not lock ntpd into 6989034852cSGleb Smirnoff memory). A value of 0 means "lock ntpd into memory with whatever 6999034852cSGleb Smirnoff memory it needs." If your ntp.conf file has an explicit "rlimit memlock" 7009034852cSGleb Smirnoff value in it, that value will continue to be used. 7019034852cSGleb Smirnoff 7029034852cSGleb Smirnoff* [Bug 2886] Misspelling: "outlyer" should be "outlier". 7039034852cSGleb Smirnoff If you've written a script that looks for this case in, say, the 7049034852cSGleb Smirnoff output of ntpq, you probably want to change your regex matches 7059034852cSGleb Smirnoff from 'outlyer' to 'outl[iy]er'. 7069034852cSGleb Smirnoff 7079034852cSGleb SmirnoffNew features in this release: 7089034852cSGleb Smirnoff* 'rlimit memlock' now has finer-grained control. A value of -1 means 7099034852cSGleb Smirnoff "don't lock ntpd into memore". This is the default for Linux boxes. 7109034852cSGleb Smirnoff A value of 0 means "lock ntpd into memory" with no limits. Otherwise 7119034852cSGleb Smirnoff the value is the number of megabytes of memory to lock. The default 7129034852cSGleb Smirnoff is 32 megabytes. 7139034852cSGleb Smirnoff 7149034852cSGleb Smirnoff* The old Google Test framework has been replaced with a new framework, 7159034852cSGleb Smirnoff based on http://www.throwtheswitch.org/unity/ . 7169034852cSGleb Smirnoff 7179034852cSGleb SmirnoffBug Fixes and Improvements: 7189034852cSGleb Smirnoff* [Bug 2332] (reopened) Exercise thread cancellation once before dropping 7199034852cSGleb Smirnoff privileges and limiting resources in NTPD removes the need to link 7209034852cSGleb Smirnoff forcefully against 'libgcc_s' which does not always work. J.Perlinger 7219034852cSGleb Smirnoff* [Bug 2595] ntpdate man page quirks. Hal Murray, Harlan Stenn. 7229034852cSGleb Smirnoff* [Bug 2625] Deprecate flag1 in local refclock. Hal Murray, Harlan Stenn. 7239034852cSGleb Smirnoff* [Bug 2817] Stop locking ntpd into memory by default under Linux. H.Stenn. 7249034852cSGleb Smirnoff* [Bug 2821] minor build issues: fixed refclock_gpsdjson.c. perlinger@ntp.org 7259034852cSGleb Smirnoff* [Bug 2823] ntpsweep with recursive peers option doesn't work. H.Stenn. 7269034852cSGleb Smirnoff* [Bug 2849] Systems with more than one default route may never 7279034852cSGleb Smirnoff synchronize. Brian Utterback. Note that this patch might need to 7289034852cSGleb Smirnoff be reverted once Bug 2043 has been fixed. 7299034852cSGleb Smirnoff* [Bug 2864] 4.2.8p3 fails to compile on Windows. Juergen Perlinger 7309034852cSGleb Smirnoff* [Bug 2866] segmentation fault at initgroups(). Harlan Stenn. 7319034852cSGleb Smirnoff* [Bug 2867] ntpd with autokey active crashed by 'ntpq -crv'. J.Perlinger 7329034852cSGleb Smirnoff* [Bug 2873] libevent should not include .deps/ in the tarball. H.Stenn 7339034852cSGleb Smirnoff* [Bug 2874] Don't distribute generated sntp/tests/fileHandlingTest.h. H.Stenn 7349034852cSGleb Smirnoff* [Bug 2875] sntp/Makefile.am: Get rid of DIST_SUBDIRS. libevent must 7359034852cSGleb Smirnoff be configured for the distribution targets. Harlan Stenn. 7369034852cSGleb Smirnoff* [Bug 2883] ntpd crashes on exit with empty driftfile. Miroslav Lichvar. 7379034852cSGleb Smirnoff* [Bug 2886] Mis-spelling: "outlyer" should be "outlier". dave@horsfall.org 7389034852cSGleb Smirnoff* [Bug 2888] streamline calendar functions. perlinger@ntp.org 7399034852cSGleb Smirnoff* [Bug 2889] ntp-dev-4.3.67 does not build on Windows. perlinger@ntp.org 7409034852cSGleb Smirnoff* [Bug 2890] Ignore ENOBUFS on routing netlink socket. Konstantin Khlebnikov. 7419034852cSGleb Smirnoff* [Bug 2906] make check needs better support for pthreads. Harlan Stenn. 7429034852cSGleb Smirnoff* [Bug 2907] dist* build targets require our libevent/ to be enabled. HStenn. 7439034852cSGleb Smirnoff* [Bug 2912] no munlockall() under Windows. David Taylor, Harlan Stenn. 7449034852cSGleb Smirnoff* libntp/emalloc.c: Remove explicit include of stdint.h. Harlan Stenn. 7459034852cSGleb Smirnoff* Put Unity CPPFLAGS items in unity_config.h. Harlan Stenn. 7469034852cSGleb Smirnoff* tests/ntpd/g_leapsec.cpp typo fix. Harlan Stenn. 7479034852cSGleb Smirnoff* Phase 1 deprecation of google test in sntp/tests/. Harlan Stenn. 7489034852cSGleb Smirnoff* On some versions of HP-UX, inttypes.h does not include stdint.h. H.Stenn. 7499034852cSGleb Smirnoff* top_srcdir can change based on ntp v. sntp. Harlan Stenn. 7509034852cSGleb Smirnoff* sntp/tests/ function parameter list cleanup. Damir Tomić. 7519034852cSGleb Smirnoff* tests/libntp/ function parameter list cleanup. Damir Tomić. 7529034852cSGleb Smirnoff* tests/ntpd/ function parameter list cleanup. Damir Tomić. 7539034852cSGleb Smirnoff* sntp/unity/unity_config.h: handle stdint.h. Harlan Stenn. 7549034852cSGleb Smirnoff* sntp/unity/unity_internals.h: handle *INTPTR_MAX on old Solaris. H.Stenn. 7559034852cSGleb Smirnoff* tests/libntp/timevalops.c and timespecops.c fixed error printing. D.Tomić. 7569034852cSGleb Smirnoff* tests/libntp/ improvements in code and fixed error printing. Damir Tomić. 7579034852cSGleb Smirnoff* tests/libntp: a_md5encrypt.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c, 7589034852cSGleb Smirnoff caltontp.c, clocktime.c, humandate.c, hextolfp.c, decodenetnum.c - fixed 7599034852cSGleb Smirnoff formatting; first declaration, then code (C90); deleted unnecessary comments; 7609034852cSGleb Smirnoff changed from sprintf to snprintf; fixed order of includes. Tomasz Flendrich 7619034852cSGleb Smirnoff* tests/libntp/lfpfunc.c remove unnecessary include, remove old comments, 7629034852cSGleb Smirnoff fix formatting, cleanup. Tomasz Flendrich 7639034852cSGleb Smirnoff* tests/libntp/lfptostr.c remove unnecessary include, add consts, fix formatting. 7649034852cSGleb Smirnoff Tomasz Flendrich 7659034852cSGleb Smirnoff* tests/libntp/statestr.c remove empty functions, remove unnecessary include, 7669034852cSGleb Smirnoff fix formatting. Tomasz Flendrich 7679034852cSGleb Smirnoff* tests/libntp/modetoa.c fixed formatting. Tomasz Flendrich 7689034852cSGleb Smirnoff* tests/libntp/msyslog.c fixed formatting. Tomasz Flendrich 7699034852cSGleb Smirnoff* tests/libntp/numtoa.c deleted unnecessary empty functions, fixed formatting. 7709034852cSGleb Smirnoff Tomasz Flendrich 7719034852cSGleb Smirnoff* tests/libntp/numtohost.c added const, fixed formatting. Tomasz Flendrich 7729034852cSGleb Smirnoff* tests/libntp/refnumtoa.c fixed formatting. Tomasz Flendrich 7739034852cSGleb Smirnoff* tests/libntp/ssl_init.c fixed formatting. Tomasz Flendrich 7749034852cSGleb Smirnoff* tests/libntp/tvtots.c fixed a bug, fixed formatting. Tomasz Flendrich 7759034852cSGleb Smirnoff* tests/libntp/uglydate.c removed an unnecessary include. Tomasz Flendrich 7769034852cSGleb Smirnoff* tests/libntp/vi64ops.c removed an unnecessary comment, fixed formatting. 7779034852cSGleb Smirnoff* tests/libntp/ymd3yd.c removed an empty function and an unnecessary include, 7789034852cSGleb Smirnofffixed formatting. Tomasz Flendrich 7799034852cSGleb Smirnoff* tests/libntp/timespecops.c fixed formatting, fixed the order of includes, 7809034852cSGleb Smirnoff removed unnecessary comments, cleanup. Tomasz Flendrich 7819034852cSGleb Smirnoff* tests/libntp/timevalops.c fixed the order of includes, deleted unnecessary 7829034852cSGleb Smirnoff comments, cleanup. Tomasz Flendrich 7839034852cSGleb Smirnoff* tests/libntp/sockaddrtest.h making it agree to NTP's conventions of formatting. 7849034852cSGleb Smirnoff Tomasz Flendrich 7859034852cSGleb Smirnoff* tests/libntp/lfptest.h cleanup. Tomasz Flendrich 7869034852cSGleb Smirnoff* tests/libntp/test-libntp.c fix formatting. Tomasz Flendrich 7879034852cSGleb Smirnoff* sntp/tests/crypto.c is now using proper Unity's assertions, fixed formatting. 7889034852cSGleb Smirnoff Tomasz Flendrich 7899034852cSGleb Smirnoff* sntp/tests/kodDatabase.c added consts, deleted empty function, 7909034852cSGleb Smirnoff fixed formatting. Tomasz Flendrich 7919034852cSGleb Smirnoff* sntp/tests/kodFile.c cleanup, fixed formatting. Tomasz Flendrich 7929034852cSGleb Smirnoff* sntp/tests/packetHandling.c is now using proper Unity's assertions, 7939034852cSGleb Smirnoff fixed formatting, deleted unused variable. Tomasz Flendrich 7949034852cSGleb Smirnoff* sntp/tests/keyFile.c is now using proper Unity's assertions, fixed formatting. 7959034852cSGleb Smirnoff Tomasz Flendrich 7969034852cSGleb Smirnoff* sntp/tests/packetProcessing.c changed from sprintf to snprintf, 7979034852cSGleb Smirnoff fixed formatting. Tomasz Flendrich 7989034852cSGleb Smirnoff* sntp/tests/utilities.c is now using proper Unity's assertions, changed 7999034852cSGleb Smirnoff the order of includes, fixed formatting, removed unnecessary comments. 8009034852cSGleb Smirnoff Tomasz Flendrich 8019034852cSGleb Smirnoff* sntp/tests/sntptest.h fixed formatting. Tomasz Flendrich 8029034852cSGleb Smirnoff* sntp/tests/fileHandlingTest.h.in fixed a possible buffer overflow problem, 8039034852cSGleb Smirnoff made one function do its job, deleted unnecessary prints, fixed formatting. 8049034852cSGleb Smirnoff Tomasz Flendrich 8059034852cSGleb Smirnoff* sntp/unity/Makefile.am added a missing header. Tomasz Flendrich 8069034852cSGleb Smirnoff* sntp/unity/unity_config.h: Distribute it. Harlan Stenn. 8079034852cSGleb Smirnoff* sntp/libevent/evconfig-private.h: remove generated filefrom SCM. H.Stenn. 8089034852cSGleb Smirnoff* sntp/unity/Makefile.am: fix some broken paths. Harlan Stenn. 8099034852cSGleb Smirnoff* sntp/unity/unity.c: Clean up a printf(). Harlan Stenn. 8109034852cSGleb Smirnoff* Phase 1 deprecation of google test in tests/libntp/. Harlan Stenn. 8119034852cSGleb Smirnoff* Don't build sntp/libevent/sample/. Harlan Stenn. 8129034852cSGleb Smirnoff* tests/libntp/test_caltontp needs -lpthread. Harlan Stenn. 8139034852cSGleb Smirnoff* br-flock: --enable-local-libevent. Harlan Stenn. 8149034852cSGleb Smirnoff* Wrote tests for ntpd/ntp_prio_q.c. Tomasz Flendrich 8159034852cSGleb Smirnoff* scripts/lib/NTP/Util.pm: stratum output is version-dependent. Harlan Stenn. 8169034852cSGleb Smirnoff* Get rid of the NTP_ prefix on our assertion macros. Harlan Stenn. 8179034852cSGleb Smirnoff* Code cleanup. Harlan Stenn. 8189034852cSGleb Smirnoff* libntp/icom.c: Typo fix. Harlan Stenn. 8199034852cSGleb Smirnoff* util/ntptime.c: initialization nit. Harlan Stenn. 8209034852cSGleb Smirnoff* ntpd/ntp_peer.c:newpeer(): added a DEBUG_REQUIRE(srcadr). Harlan Stenn. 8219034852cSGleb Smirnoff* Add std_unity_tests to various Makefile.am files. Harlan Stenn. 8229034852cSGleb Smirnoff* ntpd/ntp_restrict.c: added a few assertions, created tests for this file. 8239034852cSGleb Smirnoff Tomasz Flendrich 8249034852cSGleb Smirnoff* Changed progname to be const in many files - now it's consistent. Tomasz 8259034852cSGleb Smirnoff Flendrich 8269034852cSGleb Smirnoff* Typo fix for GCC warning suppression. Harlan Stenn. 8279034852cSGleb Smirnoff* Added tests/ntpd/ntp_scanner.c test. Damir Tomić. 8289034852cSGleb Smirnoff* Added declarations to all Unity tests, and did minor fixes to them. 8299034852cSGleb Smirnoff Reduced the number of warnings by half. Damir Tomić. 8309034852cSGleb Smirnoff* Updated generate_test_runner.rb and updated the sntp/unity/auto directory 8319034852cSGleb Smirnoff with the latest Unity updates from Mark. Damir Tomić. 8329034852cSGleb Smirnoff* Retire google test - phase I. Harlan Stenn. 8339034852cSGleb Smirnoff* Unity test cleanup: move declaration of 'initializing'. Harlan Stenn. 8349034852cSGleb Smirnoff* Update the NEWS file. Harlan Stenn. 8359034852cSGleb Smirnoff* Autoconf cleanup. Harlan Stenn. 8369034852cSGleb Smirnoff* Unit test dist cleanup. Harlan Stenn. 8379034852cSGleb Smirnoff* Cleanup various test Makefile.am files. Harlan Stenn. 8389034852cSGleb Smirnoff* Pthread autoconf macro cleanup. Harlan Stenn. 8399034852cSGleb Smirnoff* Fix progname definition in unity runner scripts. Harlan Stenn. 8409034852cSGleb Smirnoff* Clean trailing whitespace in tests/ntpd/Makefile.am. Harlan Stenn. 8419034852cSGleb Smirnoff* Update the patch for bug 2817. Harlan Stenn. 8429034852cSGleb Smirnoff* More updates for bug 2817. Harlan Stenn. 8439034852cSGleb Smirnoff* Fix bugs in tests/ntpd/ntp_prio_q.c. Harlan Stenn. 8449034852cSGleb Smirnoff* gcc on older HPUX may need +allowdups. Harlan Stenn. 8459034852cSGleb Smirnoff* Adding missing MCAST protection. Harlan Stenn. 8469034852cSGleb Smirnoff* Disable certain test programs on certain platforms. Harlan Stenn. 8479034852cSGleb Smirnoff* Implement --enable-problem-tests (on by default). Harlan Stenn. 8489034852cSGleb Smirnoff* build system tweaks. Harlan Stenn. 8499034852cSGleb Smirnoff 8509034852cSGleb Smirnoff--- 851276da39aSCy SchubertNTP 4.2.8p3 (Harlan Stenn <stenn@ntp.org>, 2015/06/29) 852276da39aSCy Schubert 853276da39aSCy SchubertFocus: 1 Security fix. Bug fixes and enhancements. Leap-second improvements. 854276da39aSCy Schubert 855276da39aSCy SchubertSeverity: MEDIUM 856276da39aSCy Schubert 857276da39aSCy SchubertSecurity Fix: 858276da39aSCy Schubert 859276da39aSCy Schubert* [Sec 2853] Crafted remote config packet can crash some versions of 860276da39aSCy Schubert ntpd. Aleksis Kauppinen, Juergen Perlinger, Harlan Stenn. 861276da39aSCy Schubert 862276da39aSCy SchubertUnder specific circumstances an attacker can send a crafted packet to 863276da39aSCy Schubertcause a vulnerable ntpd instance to crash. This requires each of the 864276da39aSCy Schubertfollowing to be true: 865276da39aSCy Schubert 866276da39aSCy Schubert1) ntpd set up to allow remote configuration (not allowed by default), and 867276da39aSCy Schubert2) knowledge of the configuration password, and 868276da39aSCy Schubert3) access to a computer entrusted to perform remote configuration. 869276da39aSCy Schubert 870276da39aSCy SchubertThis vulnerability is considered low-risk. 871276da39aSCy Schubert 872276da39aSCy SchubertNew features in this release: 873276da39aSCy Schubert 874276da39aSCy SchubertOptional (disabled by default) support to have ntpd provide smeared 875276da39aSCy Schubertleap second time. A specially built and configured ntpd will only 876276da39aSCy Schubertoffer smeared time in response to client packets. These response 877276da39aSCy Schubertpackets will also contain a "refid" of 254.a.b.c, where the 24 bits 878276da39aSCy Schubertof a, b, and c encode the amount of smear in a 2:22 integer:fraction 879276da39aSCy Schubertformat. See README.leapsmear and http://bugs.ntp.org/2855 for more 880276da39aSCy Schubertinformation. 881276da39aSCy Schubert 882276da39aSCy Schubert *IF YOU CHOOSE TO CONFIGURE NTPD TO PROVIDE LEAP SMEAR TIME* 883276da39aSCy Schubert *BE SURE YOU DO NOT OFFER THAT TIME ON PUBLIC TIMESERVERS.* 884276da39aSCy Schubert 885276da39aSCy SchubertWe've imported the Unity test framework, and have begun converting 886276da39aSCy Schubertthe existing google-test items to this new framework. If you want 887276da39aSCy Schubertto write new tests or change old ones, you'll need to have ruby 888276da39aSCy Schubertinstalled. You don't need ruby to run the test suite. 889276da39aSCy Schubert 890276da39aSCy SchubertBug Fixes and Improvements: 891276da39aSCy Schubert 892276da39aSCy Schubert* CID 739725: Fix a rare resource leak in libevent/listener.c. 893276da39aSCy Schubert* CID 1295478: Quiet a pedantic potential error from the fix for Bug 2776. 894276da39aSCy Schubert* CID 1296235: Fix refclock_jjy.c and correcting type of the driver40-ja.html 895276da39aSCy Schubert* CID 1269537: Clean up a line of dead code in getShmTime(). 896276da39aSCy Schubert* [Bug 1060] Buffer overruns in libparse/clk_rawdcf.c. Helge Oldach. 897276da39aSCy Schubert* [Bug 2590] autogen-5.18.5. 898276da39aSCy Schubert* [Bug 2612] restrict: Warn when 'monitor' can't be disabled because 899276da39aSCy Schubert of 'limited'. 900276da39aSCy Schubert* [Bug 2650] fix includefile processing. 901276da39aSCy Schubert* [Bug 2745] ntpd -x steps clock on leap second 902276da39aSCy Schubert Fixed an initial-value problem that caused misbehaviour in absence of 903276da39aSCy Schubert any leapsecond information. 904276da39aSCy Schubert Do leap second stepping only of the step adjustment is beyond the 905276da39aSCy Schubert proper jump distance limit and step correction is allowed at all. 906276da39aSCy Schubert* [Bug 2750] build for Win64 907276da39aSCy Schubert Building for 32bit of loopback ppsapi needs def file 908276da39aSCy Schubert* [Bug 2776] Improve ntpq's 'help keytype'. 909276da39aSCy Schubert* [Bug 2778] Implement "apeers" ntpq command to include associd. 910276da39aSCy Schubert* [Bug 2782] Refactor refclock_shm.c, add memory barrier protection. 911276da39aSCy Schubert* [Bug 2792] If the IFF_RUNNING interface flag is supported then an 912276da39aSCy Schubert interface is ignored as long as this flag is not set since the 913276da39aSCy Schubert interface is not usable (e.g., no link). 914276da39aSCy Schubert* [Bug 2794] Clean up kernel clock status reports. 915276da39aSCy Schubert* [Bug 2800] refclock_true.c true_debug() can't open debug log because 916276da39aSCy Schubert of incompatible open/fdopen parameters. 917276da39aSCy Schubert* [Bug 2804] install-local-data assumes GNU 'find' semantics. 918276da39aSCy Schubert* [Bug 2805] ntpd fails to join multicast group. 919276da39aSCy Schubert* [Bug 2806] refclock_jjy.c supports the Telephone JJY. 920276da39aSCy Schubert* [Bug 2808] GPSD_JSON driver enhancements, step 1. 921276da39aSCy Schubert Fix crash during cleanup if GPS device not present and char device. 922276da39aSCy Schubert Increase internal token buffer to parse all JSON data, even SKY. 923276da39aSCy Schubert Defer logging of errors during driver init until the first unit is 924276da39aSCy Schubert started, so the syslog is not cluttered when the driver is not used. 925276da39aSCy Schubert Various improvements, see http://bugs.ntp.org/2808 for details. 926276da39aSCy Schubert Changed libjsmn to a more recent version. 927276da39aSCy Schubert* [Bug 2810] refclock_shm.c memory barrier code needs tweaks for QNX. 928276da39aSCy Schubert* [Bug 2813] HP-UX needs -D__STDC_VERSION__=199901L and limits.h. 929276da39aSCy Schubert* [Bug 2815] net-snmp before v5.4 has circular library dependencies. 930276da39aSCy Schubert* [Bug 2821] Add a missing NTP_PRINTF and a missing const. 931276da39aSCy Schubert* [Bug 2822] New leap column in sntp broke NTP::Util.pm. 932276da39aSCy Schubert* [Bug 2824] Convert update-leap to perl. (also see 2769) 933276da39aSCy Schubert* [Bug 2825] Quiet file installation in html/ . 934276da39aSCy Schubert* [Bug 2830] ntpd doesn't always transfer the correct TAI offset via autokey 935276da39aSCy Schubert NTPD transfers the current TAI (instead of an announcement) now. 936276da39aSCy Schubert This might still needed improvement. 937276da39aSCy Schubert Update autokey data ASAP when 'sys_tai' changes. 938276da39aSCy Schubert Fix unit test that was broken by changes for autokey update. 939276da39aSCy Schubert Avoid potential signature length issue and use DPRINTF where possible 940276da39aSCy Schubert in ntp_crypto.c. 941276da39aSCy Schubert* [Bug 2832] refclock_jjy.c supports the TDC-300. 942276da39aSCy Schubert* [Bug 2834] Correct a broken html tag in html/refclock.html 943276da39aSCy Schubert* [Bug 2836] DFC77 patches from Frank Kardel to make decoding more 944276da39aSCy Schubert robust, and require 2 consecutive timestamps to be consistent. 945276da39aSCy Schubert* [Bug 2837] Allow a configurable DSCP value. 946276da39aSCy Schubert* [Bug 2837] add test for DSCP to ntpd/complete.conf.in 947276da39aSCy Schubert* [Bug 2842] Glitch in ntp.conf.def documentation stanza. 948276da39aSCy Schubert* [Bug 2842] Bug in mdoc2man. 949276da39aSCy Schubert* [Bug 2843] make check fails on 4.3.36 950276da39aSCy Schubert Fixed compiler warnings about numeric range overflow 951276da39aSCy Schubert (The original topic was fixed in a byplay to bug#2830) 952276da39aSCy Schubert* [Bug 2845] Harden memory allocation in ntpd. 953276da39aSCy Schubert* [Bug 2852] 'make check' can't find unity.h. Hal Murray. 954276da39aSCy Schubert* [Bug 2854] Missing brace in libntp/strdup.c. Masanari Iida. 955276da39aSCy Schubert* [Bug 2855] Parser fix for conditional leap smear code. Harlan Stenn. 956276da39aSCy Schubert* [Bug 2855] Report leap smear in the REFID. Harlan Stenn. 957276da39aSCy Schubert* [Bug 2855] Implement conditional leap smear code. Martin Burnicki. 958276da39aSCy Schubert* [Bug 2856] ntpd should wait() on terminated child processes. Paul Green. 959276da39aSCy Schubert* [Bug 2857] Stratus VOS does not support SIGIO. Paul Green. 960276da39aSCy Schubert* [Bug 2859] Improve raw DCF77 robustness deconding. Frank Kardel. 961276da39aSCy Schubert* [Bug 2860] ntpq ifstats sanity check is too stringent. Frank Kardel. 962276da39aSCy Schubert* html/drivers/driver22.html: typo fix. Harlan Stenn. 963276da39aSCy Schubert* refidsmear test cleanup. Tomasz Flendrich. 964276da39aSCy Schubert* refidsmear function support and tests. Harlan Stenn. 965276da39aSCy Schubert* sntp/tests/Makefile.am: remove g_nameresolution.cpp as it tested 966276da39aSCy Schubert something that was only in the 4.2.6 sntp. Harlan Stenn. 967276da39aSCy Schubert* Modified tests/bug-2803/Makefile.am so it builds Unity framework tests. 968276da39aSCy Schubert Damir Tomić 969276da39aSCy Schubert* Modified tests/libtnp/Makefile.am so it builds Unity framework tests. 970276da39aSCy Schubert Damir Tomić 971276da39aSCy Schubert* Modified sntp/tests/Makefile.am so it builds Unity framework tests. 972276da39aSCy Schubert Damir Tomić 973276da39aSCy Schubert* tests/sandbox/smeartest.c: Harlan Stenn, Damir Tomic, Juergen Perlinger. 974276da39aSCy Schubert* Converted from gtest to Unity: tests/bug-2803/. Damir Tomić 975276da39aSCy Schubert* Converted from gtest to Unity: tests/libntp/ a_md5encrypt, atoint.c, 976276da39aSCy Schubert atouint.c, authkeys.c, buftvtots.c, calendar.c, caljulian.c, 977276da39aSCy Schubert calyearstart.c, clocktime.c, hextoint.c, lfpfunc.c, modetoa.c, 978276da39aSCy Schubert numtoa.c, numtohost.c, refnumtoa.c, ssl_init.c, statestr.c, 979276da39aSCy Schubert timespecops.c, timevalops.c, uglydate.c, vi64ops.c, ymd2yd.c. 980276da39aSCy Schubert Damir Tomić 981276da39aSCy Schubert* Converted from gtest to Unity: sntp/tests/ kodDatabase.c, kodFile.c, 982276da39aSCy Schubert networking.c, keyFile.c, utilities.cpp, sntptest.h, 983276da39aSCy Schubert fileHandlingTest.h. Damir Tomić 984276da39aSCy Schubert* Initial support for experimental leap smear code. Harlan Stenn. 985276da39aSCy Schubert* Fixes to sntp/tests/fileHandlingTest.h.in. Harlan Stenn. 986276da39aSCy Schubert* Report select() debug messages at debug level 3 now. 987276da39aSCy Schubert* sntp/scripts/genLocInfo: treat raspbian as debian. 988276da39aSCy Schubert* Unity test framework fixes. 989276da39aSCy Schubert ** Requires ruby for changes to tests. 990276da39aSCy Schubert* Initial support for PACKAGE_VERSION tests. 991276da39aSCy Schubert* sntp/libpkgver belongs in EXTRA_DIST, not DIST_SUBDIRS. 992276da39aSCy Schubert* tests/bug-2803/Makefile.am must distribute bug-2803.h. 993276da39aSCy Schubert* Add an assert to the ntpq ifstats code. 994276da39aSCy Schubert* Clean up the RLIMIT_STACK code. 995276da39aSCy Schubert* Improve the ntpq documentation around the controlkey keyid. 996276da39aSCy Schubert* ntpq.c cleanup. 997276da39aSCy Schubert* Windows port build cleanup. 998276da39aSCy Schubert 999276da39aSCy Schubert--- 1000276da39aSCy SchubertNTP 4.2.8p2 (Harlan Stenn <stenn@ntp.org>, 2015/04/07) 1001a25439b6SCy Schubert 1002a25439b6SCy SchubertFocus: Security and Bug fixes, enhancements. 1003a25439b6SCy Schubert 1004a25439b6SCy SchubertSeverity: MEDIUM 1005a25439b6SCy Schubert 1006a25439b6SCy SchubertIn addition to bug fixes and enhancements, this release fixes the 1007a25439b6SCy Schubertfollowing medium-severity vulnerabilities involving private key 1008a25439b6SCy Schubertauthentication: 1009a25439b6SCy Schubert 1010a25439b6SCy Schubert* [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto. 1011a25439b6SCy Schubert 1012a25439b6SCy Schubert References: Sec 2779 / CVE-2015-1798 / VU#374268 1013a25439b6SCy Schubert Affects: All NTP4 releases starting with ntp-4.2.5p99 up to but not 1014a25439b6SCy Schubert including ntp-4.2.8p2 where the installation uses symmetric keys 1015a25439b6SCy Schubert to authenticate remote associations. 1016a25439b6SCy Schubert CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4 1017a25439b6SCy Schubert Date Resolved: Stable (4.2.8p2) 07 Apr 2015 1018a25439b6SCy Schubert Summary: When ntpd is configured to use a symmetric key to authenticate 1019a25439b6SCy Schubert a remote NTP server/peer, it checks if the NTP message 1020a25439b6SCy Schubert authentication code (MAC) in received packets is valid, but not if 1021a25439b6SCy Schubert there actually is any MAC included. Packets without a MAC are 1022a25439b6SCy Schubert accepted as if they had a valid MAC. This allows a MITM attacker to 1023a25439b6SCy Schubert send false packets that are accepted by the client/peer without 1024a25439b6SCy Schubert having to know the symmetric key. The attacker needs to know the 1025a25439b6SCy Schubert transmit timestamp of the client to match it in the forged reply 1026a25439b6SCy Schubert and the false reply needs to reach the client before the genuine 1027a25439b6SCy Schubert reply from the server. The attacker doesn't necessarily need to be 1028a25439b6SCy Schubert relaying the packets between the client and the server. 1029a25439b6SCy Schubert 1030a25439b6SCy Schubert Authentication using autokey doesn't have this problem as there is 1031a25439b6SCy Schubert a check that requires the key ID to be larger than NTP_MAXKEY, 1032a25439b6SCy Schubert which fails for packets without a MAC. 1033a25439b6SCy Schubert Mitigation: 1034a25439b6SCy Schubert Upgrade to 4.2.8p2, or later, from the NTP Project Download Page 1035a25439b6SCy Schubert or the NTP Public Services Project Download Page 1036a25439b6SCy Schubert Configure ntpd with enough time sources and monitor it properly. 1037a25439b6SCy Schubert Credit: This issue was discovered by Miroslav Lichvar, of Red Hat. 1038a25439b6SCy Schubert 1039a25439b6SCy Schubert* [Sec 2781] Authentication doesn't protect symmetric associations against 1040a25439b6SCy Schubert DoS attacks. 1041a25439b6SCy Schubert 1042a25439b6SCy Schubert References: Sec 2781 / CVE-2015-1799 / VU#374268 1043a25439b6SCy Schubert Affects: All NTP releases starting with at least xntp3.3wy up to but 1044a25439b6SCy Schubert not including ntp-4.2.8p2 where the installation uses symmetric 1045a25439b6SCy Schubert key authentication. 1046a25439b6SCy Schubert CVSS: (AV:A/AC:M/Au:N/C:P/I:P/A:P) Base Score: 5.4 1047a25439b6SCy Schubert Note: the CVSS base Score for this issue could be 4.3 or lower, and 1048a25439b6SCy Schubert it could be higher than 5.4. 1049a25439b6SCy Schubert Date Resolved: Stable (4.2.8p2) 07 Apr 2015 1050a25439b6SCy Schubert Summary: An attacker knowing that NTP hosts A and B are peering with 1051a25439b6SCy Schubert each other (symmetric association) can send a packet to host A 1052a25439b6SCy Schubert with source address of B which will set the NTP state variables 1053a25439b6SCy Schubert on A to the values sent by the attacker. Host A will then send 1054a25439b6SCy Schubert on its next poll to B a packet with originate timestamp that 1055a25439b6SCy Schubert doesn't match the transmit timestamp of B and the packet will 1056a25439b6SCy Schubert be dropped. If the attacker does this periodically for both 1057a25439b6SCy Schubert hosts, they won't be able to synchronize to each other. This is 1058a25439b6SCy Schubert a known denial-of-service attack, described at 1059a25439b6SCy Schubert https://www.eecis.udel.edu/~mills/onwire.html . 1060a25439b6SCy Schubert 1061a25439b6SCy Schubert According to the document the NTP authentication is supposed to 1062a25439b6SCy Schubert protect symmetric associations against this attack, but that 1063a25439b6SCy Schubert doesn't seem to be the case. The state variables are updated even 1064a25439b6SCy Schubert when authentication fails and the peers are sending packets with 1065a25439b6SCy Schubert originate timestamps that don't match the transmit timestamps on 1066a25439b6SCy Schubert the receiving side. 1067a25439b6SCy Schubert 1068a25439b6SCy Schubert This seems to be a very old problem, dating back to at least 1069a25439b6SCy Schubert xntp3.3wy. It's also in the NTPv3 (RFC 1305) and NTPv4 (RFC 5905) 1070a25439b6SCy Schubert specifications, so other NTP implementations with support for 1071a25439b6SCy Schubert symmetric associations and authentication may be vulnerable too. 1072a25439b6SCy Schubert An update to the NTP RFC to correct this error is in-process. 1073a25439b6SCy Schubert Mitigation: 1074a25439b6SCy Schubert Upgrade to 4.2.8p2, or later, from the NTP Project Download Page 1075a25439b6SCy Schubert or the NTP Public Services Project Download Page 1076a25439b6SCy Schubert Note that for users of autokey, this specific style of MITM attack 1077a25439b6SCy Schubert is simply a long-known potential problem. 1078a25439b6SCy Schubert Configure ntpd with appropriate time sources and monitor ntpd. 1079a25439b6SCy Schubert Alert your staff if problems are detected. 1080a25439b6SCy Schubert Credit: This issue was discovered by Miroslav Lichvar, of Red Hat. 1081a25439b6SCy Schubert 1082a25439b6SCy Schubert* New script: update-leap 1083a25439b6SCy SchubertThe update-leap script will verify and if necessary, update the 1084a25439b6SCy Schubertleap-second definition file. 1085a25439b6SCy SchubertIt requires the following commands in order to work: 1086a25439b6SCy Schubert 1087a25439b6SCy Schubert wget logger tr sed shasum 1088a25439b6SCy Schubert 1089a25439b6SCy SchubertSome may choose to run this from cron. It needs more portability testing. 1090a25439b6SCy Schubert 1091a25439b6SCy SchubertBug Fixes and Improvements: 1092a25439b6SCy Schubert 1093a25439b6SCy Schubert* [Bug 1787] DCF77's formerly "antenna" bit is "call bit" since 2003. 1094a25439b6SCy Schubert* [Bug 1960] setsockopt IPV6_MULTICAST_IF: Invalid argument. 1095a25439b6SCy Schubert* [Bug 2346] "graceful termination" signals do not do peer cleanup. 1096a25439b6SCy Schubert* [Bug 2728] See if C99-style structure initialization works. 1097a25439b6SCy Schubert* [Bug 2747] Upgrade libevent to 2.1.5-beta. 1098a25439b6SCy Schubert* [Bug 2749] ntp/lib/NTP/Util.pm needs update for ntpq -w, IPv6, .POOL. . 1099a25439b6SCy Schubert* [Bug 2751] jitter.h has stale copies of l_fp macros. 1100a25439b6SCy Schubert* [Bug 2756] ntpd hangs in startup with gcc 3.3.5 on ARM. 1101a25439b6SCy Schubert* [Bug 2757] Quiet compiler warnings. 1102a25439b6SCy Schubert* [Bug 2759] Expose nonvolatile/clk_wander_threshold to ntpq. 1103a25439b6SCy Schubert* [Bug 2763] Allow different thresholds for forward and backward steps. 1104a25439b6SCy Schubert* [Bug 2766] ntp-keygen output files should not be world-readable. 1105a25439b6SCy Schubert* [Bug 2767] ntp-keygen -M should symlink to ntp.keys. 1106a25439b6SCy Schubert* [Bug 2771] nonvolatile value is documented in wrong units. 1107a25439b6SCy Schubert* [Bug 2773] Early leap announcement from Palisade/Thunderbolt 1108a25439b6SCy Schubert* [Bug 2774] Unreasonably verbose printout - leap pending/warning 1109a25439b6SCy Schubert* [Bug 2775] ntp-keygen.c fails to compile under Windows. 1110a25439b6SCy Schubert* [Bug 2777] Fixed loops and decoding of Meinberg GPS satellite info. 1111a25439b6SCy Schubert Removed non-ASCII characters from some copyright comments. 1112a25439b6SCy Schubert Removed trailing whitespace. 1113a25439b6SCy Schubert Updated definitions for Meinberg clocks from current Meinberg header files. 1114a25439b6SCy Schubert Now use C99 fixed-width types and avoid non-ASCII characters in comments. 1115a25439b6SCy Schubert Account for updated definitions pulled from Meinberg header files. 1116a25439b6SCy Schubert Updated comments on Meinberg GPS receivers which are not only called GPS16x. 1117a25439b6SCy Schubert Replaced some constant numbers by defines from ntp_calendar.h 1118a25439b6SCy Schubert Modified creation of parse-specific variables for Meinberg devices 1119a25439b6SCy Schubert in gps16x_message(). 1120a25439b6SCy Schubert Reworked mk_utcinfo() to avoid printing of ambiguous leap second dates. 1121a25439b6SCy Schubert Modified mbg_tm_str() which now expexts an additional parameter controlling 1122a25439b6SCy Schubert if the time status shall be printed. 1123a25439b6SCy Schubert* [Sec 2779] ntpd accepts unauthenticated packets with symmetric key crypto. 1124a25439b6SCy Schubert* [Sec 2781] Authentication doesn't protect symmetric associations against 1125a25439b6SCy Schubert DoS attacks. 1126a25439b6SCy Schubert* [Bug 2783] Quiet autoconf warnings about missing AC_LANG_SOURCE. 1127a25439b6SCy Schubert* [Bug 2789] Quiet compiler warnings from libevent. 1128a25439b6SCy Schubert* [Bug 2790] If ntpd sets the Windows MM timer highest resolution 1129a25439b6SCy Schubert pause briefly before measuring system clock precision to yield 1130a25439b6SCy Schubert correct results. 1131a25439b6SCy Schubert* Comment from Juergen Perlinger in ntp_calendar.c to make the code clearer. 1132a25439b6SCy Schubert* Use predefined function types for parse driver functions 1133a25439b6SCy Schubert used to set up function pointers. 1134a25439b6SCy Schubert Account for changed prototype of parse_inp_fnc_t functions. 1135a25439b6SCy Schubert Cast parse conversion results to appropriate types to avoid 1136a25439b6SCy Schubert compiler warnings. 1137a25439b6SCy Schubert Let ioctl() for Windows accept a (void *) to avoid compiler warnings 1138a25439b6SCy Schubert when called with pointers to different types. 1139a25439b6SCy Schubert 1140a25439b6SCy Schubert--- 11412b15cb3dSCy SchubertNTP 4.2.8p1 (Harlan Stenn <stenn@ntp.org>, 2015/02/04) 11422b15cb3dSCy Schubert 11432b15cb3dSCy SchubertFocus: Security and Bug fixes, enhancements. 11442b15cb3dSCy Schubert 11452b15cb3dSCy SchubertSeverity: HIGH 11462b15cb3dSCy Schubert 11472b15cb3dSCy SchubertIn addition to bug fixes and enhancements, this release fixes the 11482b15cb3dSCy Schubertfollowing high-severity vulnerabilities: 11492b15cb3dSCy Schubert 11502b15cb3dSCy Schubert* vallen is not validated in several places in ntp_crypto.c, leading 11512b15cb3dSCy Schubert to a potential information leak or possibly a crash 11522b15cb3dSCy Schubert 11532b15cb3dSCy Schubert References: Sec 2671 / CVE-2014-9297 / VU#852879 11542b15cb3dSCy Schubert Affects: All NTP4 releases before 4.2.8p1 that are running autokey. 11552b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 11562b15cb3dSCy Schubert Date Resolved: Stable (4.2.8p1) 04 Feb 2015 11572b15cb3dSCy Schubert Summary: The vallen packet value is not validated in several code 11582b15cb3dSCy Schubert paths in ntp_crypto.c which can lead to information leakage 11592b15cb3dSCy Schubert or perhaps a crash of the ntpd process. 11602b15cb3dSCy Schubert Mitigation - any of: 11612b15cb3dSCy Schubert Upgrade to 4.2.8p1, or later, from the NTP Project Download Page 11622b15cb3dSCy Schubert or the NTP Public Services Project Download Page. 11632b15cb3dSCy Schubert Disable Autokey Authentication by removing, or commenting out, 11642b15cb3dSCy Schubert all configuration directives beginning with the "crypto" 11652b15cb3dSCy Schubert keyword in your ntp.conf file. 11662b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 11672b15cb3dSCy Schubert Google Security Team, with additional cases found by Sebastian 11682b15cb3dSCy Schubert Krahmer of the SUSE Security Team and Harlan Stenn of Network 11692b15cb3dSCy Schubert Time Foundation. 11702b15cb3dSCy Schubert 11712b15cb3dSCy Schubert* ::1 can be spoofed on some OSes, so ACLs based on IPv6 ::1 addresses 11722b15cb3dSCy Schubert can be bypassed. 11732b15cb3dSCy Schubert 11742b15cb3dSCy Schubert References: Sec 2672 / CVE-2014-9298 / VU#852879 11752b15cb3dSCy Schubert Affects: All NTP4 releases before 4.2.8p1, under at least some 11762b15cb3dSCy Schubert versions of MacOS and Linux. *BSD has not been seen to be vulnerable. 11772b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:C) Base Score: 9 11782b15cb3dSCy Schubert Date Resolved: Stable (4.2.8p1) 04 Feb 2014 11792b15cb3dSCy Schubert Summary: While available kernels will prevent 127.0.0.1 addresses 11802b15cb3dSCy Schubert from "appearing" on non-localhost IPv4 interfaces, some kernels 11812b15cb3dSCy Schubert do not offer the same protection for ::1 source addresses on 11822b15cb3dSCy Schubert IPv6 interfaces. Since NTP's access control is based on source 11832b15cb3dSCy Schubert address and localhost addresses generally have no restrictions, 11842b15cb3dSCy Schubert an attacker can send malicious control and configuration packets 11852b15cb3dSCy Schubert by spoofing ::1 addresses from the outside. Note Well: This is 11862b15cb3dSCy Schubert not really a bug in NTP, it's a problem with some OSes. If you 11872b15cb3dSCy Schubert have one of these OSes where ::1 can be spoofed, ALL ::1 -based 11882b15cb3dSCy Schubert ACL restrictions on any application can be bypassed! 11892b15cb3dSCy Schubert Mitigation: 11902b15cb3dSCy Schubert Upgrade to 4.2.8p1, or later, from the NTP Project Download Page 11912b15cb3dSCy Schubert or the NTP Public Services Project Download Page 11922b15cb3dSCy Schubert Install firewall rules to block packets claiming to come from 11932b15cb3dSCy Schubert ::1 from inappropriate network interfaces. 11942b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of 11952b15cb3dSCy Schubert the Google Security Team. 11962b15cb3dSCy Schubert 11972b15cb3dSCy SchubertAdditionally, over 30 bugfixes and improvements were made to the codebase. 11982b15cb3dSCy SchubertSee the ChangeLog for more information. 11992b15cb3dSCy Schubert 12002b15cb3dSCy Schubert--- 12012b15cb3dSCy SchubertNTP 4.2.8 (Harlan Stenn <stenn@ntp.org>, 2014/12/18) 12022b15cb3dSCy Schubert 12032b15cb3dSCy SchubertFocus: Security and Bug fixes, enhancements. 12042b15cb3dSCy Schubert 12052b15cb3dSCy SchubertSeverity: HIGH 12062b15cb3dSCy Schubert 12072b15cb3dSCy SchubertIn addition to bug fixes and enhancements, this release fixes the 12082b15cb3dSCy Schubertfollowing high-severity vulnerabilities: 12092b15cb3dSCy Schubert 12102b15cb3dSCy Schubert************************** vv NOTE WELL vv ***************************** 12112b15cb3dSCy Schubert 12122b15cb3dSCy SchubertThe vulnerabilities listed below can be significantly mitigated by 12132b15cb3dSCy Schubertfollowing the BCP of putting 12142b15cb3dSCy Schubert 12152b15cb3dSCy Schubert restrict default ... noquery 12162b15cb3dSCy Schubert 12172b15cb3dSCy Schubertin the ntp.conf file. With the exception of: 12182b15cb3dSCy Schubert 12192b15cb3dSCy Schubert receive(): missing return on error 12202b15cb3dSCy Schubert References: Sec 2670 / CVE-2014-9296 / VU#852879 12212b15cb3dSCy Schubert 12222b15cb3dSCy Schubertbelow (which is a limited-risk vulnerability), none of the recent 12232b15cb3dSCy Schubertvulnerabilities listed below can be exploited if the source IP is 12242b15cb3dSCy Schubertrestricted from sending a 'query'-class packet by your ntp.conf file. 12252b15cb3dSCy Schubert 12262b15cb3dSCy Schubert************************** ^^ NOTE WELL ^^ ***************************** 12272b15cb3dSCy Schubert 12282b15cb3dSCy Schubert* Weak default key in config_auth(). 12292b15cb3dSCy Schubert 12302b15cb3dSCy Schubert References: [Sec 2665] / CVE-2014-9293 / VU#852879 12312b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3 12322b15cb3dSCy Schubert Vulnerable Versions: all releases prior to 4.2.7p11 12332b15cb3dSCy Schubert Date Resolved: 28 Jan 2010 12342b15cb3dSCy Schubert 12352b15cb3dSCy Schubert Summary: If no 'auth' key is set in the configuration file, ntpd 12362b15cb3dSCy Schubert would generate a random key on the fly. There were two 12372b15cb3dSCy Schubert problems with this: 1) the generated key was 31 bits in size, 12382b15cb3dSCy Schubert and 2) it used the (now weak) ntp_random() function, which was 12392b15cb3dSCy Schubert seeded with a 32-bit value and could only provide 32 bits of 12402b15cb3dSCy Schubert entropy. This was sufficient back in the late 1990s when the 12412b15cb3dSCy Schubert code was written. Not today. 12422b15cb3dSCy Schubert 12432b15cb3dSCy Schubert Mitigation - any of: 12442b15cb3dSCy Schubert - Upgrade to 4.2.7p11 or later. 12452b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 12462b15cb3dSCy Schubert 12472b15cb3dSCy Schubert Credit: This vulnerability was noticed in ntp-4.2.6 by Neel Mehta 12482b15cb3dSCy Schubert of the Google Security Team. 12492b15cb3dSCy Schubert 12502b15cb3dSCy Schubert* Non-cryptographic random number generator with weak seed used by 12512b15cb3dSCy Schubert ntp-keygen to generate symmetric keys. 12522b15cb3dSCy Schubert 12532b15cb3dSCy Schubert References: [Sec 2666] / CVE-2014-9294 / VU#852879 12542b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:M/C:P/I:P/A:C) Base Score: 7.3 12552b15cb3dSCy Schubert Vulnerable Versions: All NTP4 releases before 4.2.7p230 12562b15cb3dSCy Schubert Date Resolved: Dev (4.2.7p230) 01 Nov 2011 12572b15cb3dSCy Schubert 12582b15cb3dSCy Schubert Summary: Prior to ntp-4.2.7p230 ntp-keygen used a weak seed to 12592b15cb3dSCy Schubert prepare a random number generator that was of good quality back 12602b15cb3dSCy Schubert in the late 1990s. The random numbers produced was then used to 12612b15cb3dSCy Schubert generate symmetric keys. In ntp-4.2.8 we use a current-technology 12622b15cb3dSCy Schubert cryptographic random number generator, either RAND_bytes from 12632b15cb3dSCy Schubert OpenSSL, or arc4random(). 12642b15cb3dSCy Schubert 12652b15cb3dSCy Schubert Mitigation - any of: 12662b15cb3dSCy Schubert - Upgrade to 4.2.7p230 or later. 12672b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 12682b15cb3dSCy Schubert 12692b15cb3dSCy Schubert Credit: This vulnerability was discovered in ntp-4.2.6 by 12702b15cb3dSCy Schubert Stephen Roettger of the Google Security Team. 12712b15cb3dSCy Schubert 12722b15cb3dSCy Schubert* Buffer overflow in crypto_recv() 12732b15cb3dSCy Schubert 12742b15cb3dSCy Schubert References: Sec 2667 / CVE-2014-9295 / VU#852879 12752b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 12762b15cb3dSCy Schubert Versions: All releases before 4.2.8 12772b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 12782b15cb3dSCy Schubert 12792b15cb3dSCy Schubert Summary: When Autokey Authentication is enabled (i.e. the ntp.conf 12802b15cb3dSCy Schubert file contains a 'crypto pw ...' directive) a remote attacker 12812b15cb3dSCy Schubert can send a carefully crafted packet that can overflow a stack 12822b15cb3dSCy Schubert buffer and potentially allow malicious code to be executed 12832b15cb3dSCy Schubert with the privilege level of the ntpd process. 12842b15cb3dSCy Schubert 12852b15cb3dSCy Schubert Mitigation - any of: 12862b15cb3dSCy Schubert - Upgrade to 4.2.8, or later, or 12872b15cb3dSCy Schubert - Disable Autokey Authentication by removing, or commenting out, 12882b15cb3dSCy Schubert all configuration directives beginning with the crypto keyword 12892b15cb3dSCy Schubert in your ntp.conf file. 12902b15cb3dSCy Schubert 12912b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 12922b15cb3dSCy Schubert Google Security Team. 12932b15cb3dSCy Schubert 12942b15cb3dSCy Schubert* Buffer overflow in ctl_putdata() 12952b15cb3dSCy Schubert 12962b15cb3dSCy Schubert References: Sec 2668 / CVE-2014-9295 / VU#852879 12972b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 12982b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 12992b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 13002b15cb3dSCy Schubert 13012b15cb3dSCy Schubert Summary: A remote attacker can send a carefully crafted packet that 13022b15cb3dSCy Schubert can overflow a stack buffer and potentially allow malicious 13032b15cb3dSCy Schubert code to be executed with the privilege level of the ntpd process. 13042b15cb3dSCy Schubert 13052b15cb3dSCy Schubert Mitigation - any of: 13062b15cb3dSCy Schubert - Upgrade to 4.2.8, or later. 13072b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 13082b15cb3dSCy Schubert 13092b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 13102b15cb3dSCy Schubert Google Security Team. 13112b15cb3dSCy Schubert 13122b15cb3dSCy Schubert* Buffer overflow in configure() 13132b15cb3dSCy Schubert 13142b15cb3dSCy Schubert References: Sec 2669 / CVE-2014-9295 / VU#852879 13152b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:P/I:P/A:P) Base Score: 7.5 13162b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 13172b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 13182b15cb3dSCy Schubert 13192b15cb3dSCy Schubert Summary: A remote attacker can send a carefully crafted packet that 13202b15cb3dSCy Schubert can overflow a stack buffer and potentially allow malicious 13212b15cb3dSCy Schubert code to be executed with the privilege level of the ntpd process. 13222b15cb3dSCy Schubert 13232b15cb3dSCy Schubert Mitigation - any of: 13242b15cb3dSCy Schubert - Upgrade to 4.2.8, or later. 13252b15cb3dSCy Schubert - Follow BCP and put 'restrict ... noquery' in your ntp.conf file. 13262b15cb3dSCy Schubert 13272b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 13282b15cb3dSCy Schubert Google Security Team. 13292b15cb3dSCy Schubert 13302b15cb3dSCy Schubert* receive(): missing return on error 13312b15cb3dSCy Schubert 13322b15cb3dSCy Schubert References: Sec 2670 / CVE-2014-9296 / VU#852879 13332b15cb3dSCy Schubert CVSS: (AV:N/AC:L/Au:N/C:N/I:N/A:P) Base Score: 5.0 13342b15cb3dSCy Schubert Versions: All NTP4 releases before 4.2.8 13352b15cb3dSCy Schubert Date Resolved: Stable (4.2.8) 18 Dec 2014 13362b15cb3dSCy Schubert 13372b15cb3dSCy Schubert Summary: Code in ntp_proto.c:receive() was missing a 'return;' in 13382b15cb3dSCy Schubert the code path where an error was detected, which meant 13392b15cb3dSCy Schubert processing did not stop when a specific rare error occurred. 13402b15cb3dSCy Schubert We haven't found a way for this bug to affect system integrity. 13412b15cb3dSCy Schubert If there is no way to affect system integrity the base CVSS 13422b15cb3dSCy Schubert score for this bug is 0. If there is one avenue through which 13432b15cb3dSCy Schubert system integrity can be partially affected, the base score 13442b15cb3dSCy Schubert becomes a 5. If system integrity can be partially affected 13452b15cb3dSCy Schubert via all three integrity metrics, the CVSS base score become 7.5. 13462b15cb3dSCy Schubert 13472b15cb3dSCy Schubert Mitigation - any of: 13482b15cb3dSCy Schubert - Upgrade to 4.2.8, or later, 13492b15cb3dSCy Schubert - Remove or comment out all configuration directives 13502b15cb3dSCy Schubert beginning with the crypto keyword in your ntp.conf file. 13512b15cb3dSCy Schubert 13522b15cb3dSCy Schubert Credit: This vulnerability was discovered by Stephen Roettger of the 13532b15cb3dSCy Schubert Google Security Team. 13542b15cb3dSCy Schubert 13552b15cb3dSCy SchubertSee http://support.ntp.org/security for more information. 13562b15cb3dSCy Schubert 13572b15cb3dSCy SchubertNew features / changes in this release: 13582b15cb3dSCy Schubert 13592b15cb3dSCy SchubertImportant Changes 13602b15cb3dSCy Schubert 13612b15cb3dSCy Schubert* Internal NTP Era counters 13622b15cb3dSCy Schubert 13632b15cb3dSCy SchubertThe internal counters that track the "era" (range of years) we are in 13642b15cb3dSCy Schubertrolls over every 136 years'. The current "era" started at the stroke of 13652b15cb3dSCy Schubertmidnight on 1 Jan 1900, and ends just before the stroke of midnight on 13662b15cb3dSCy Schubert1 Jan 2036. 13672b15cb3dSCy SchubertIn the past, we have used the "midpoint" of the range to decide which 13682b15cb3dSCy Schubertera we were in. Given the longevity of some products, it became clear 13692b15cb3dSCy Schubertthat it would be more functional to "look back" less, and "look forward" 13702b15cb3dSCy Schubertmore. We now compile a timestamp into the ntpd executable and when we 13712b15cb3dSCy Schubertget a timestamp we us the "built-on" to tell us what era we are in. 13722b15cb3dSCy SchubertThis check "looks back" 10 years, and "looks forward" 126 years. 13732b15cb3dSCy Schubert 13742b15cb3dSCy Schubert* ntpdc responses disabled by default 13752b15cb3dSCy Schubert 13762b15cb3dSCy SchubertDave Hart writes: 13772b15cb3dSCy Schubert 13782b15cb3dSCy SchubertFor a long time, ntpq and its mostly text-based mode 6 (control) 13792b15cb3dSCy Schubertprotocol have been preferred over ntpdc and its mode 7 (private 13802b15cb3dSCy Schubertrequest) protocol for runtime queries and configuration. There has 13812b15cb3dSCy Schubertbeen a goal of deprecating ntpdc, previously held back by numerous 13822b15cb3dSCy Schubertcapabilities exposed by ntpdc with no ntpq equivalent. I have been 13832b15cb3dSCy Schubertadding commands to ntpq to cover these cases, and I believe I've 13842b15cb3dSCy Schubertcovered them all, though I've not compared command-by-command 13852b15cb3dSCy Schubertrecently. 13862b15cb3dSCy Schubert 13872b15cb3dSCy SchubertAs I've said previously, the binary mode 7 protocol involves a lot of 13882b15cb3dSCy Schuberthand-rolled structure layout and byte-swapping code in both ntpd and 13892b15cb3dSCy Schubertntpdc which is hard to get right. As ntpd grows and changes, the 13902b15cb3dSCy Schubertchanges are difficult to expose via ntpdc while maintaining forward 13912b15cb3dSCy Schubertand backward compatibility between ntpdc and ntpd. In contrast, 13922b15cb3dSCy Schubertntpq's text-based, label=value approach involves more code reuse and 13932b15cb3dSCy Schubertallows compatible changes without extra work in most cases. 13942b15cb3dSCy Schubert 13952b15cb3dSCy SchubertMode 7 has always been defined as vendor/implementation-specific while 13962b15cb3dSCy Schubertmode 6 is described in RFC 1305 and intended to be open to interoperate 13972b15cb3dSCy Schubertwith other implementations. There is an early draft of an updated 13982b15cb3dSCy Schubertmode 6 description that likely will join the other NTPv4 RFCs 13992b15cb3dSCy Schuberteventually. (http://tools.ietf.org/html/draft-odonoghue-ntpv4-control-01) 14002b15cb3dSCy Schubert 14012b15cb3dSCy SchubertFor these reasons, ntpd 4.2.7p230 by default disables processing of 14022b15cb3dSCy Schubertntpdc queries, reducing ntpd's attack surface and functionally 14032b15cb3dSCy Schubertdeprecating ntpdc. If you are in the habit of using ntpdc for certain 14042b15cb3dSCy Schubertoperations, please try the ntpq equivalent. If there's no equivalent, 14052b15cb3dSCy Schubertplease open a bug report at http://bugs.ntp.org./ 14062b15cb3dSCy Schubert 14072b15cb3dSCy SchubertIn addition to the above, over 1100 issues have been resolved between 14082b15cb3dSCy Schubertthe 4.2.6 branch and 4.2.8. The ChangeLog file in the distribution 14092b15cb3dSCy Schubertlists these. 14102b15cb3dSCy Schubert 14112b15cb3dSCy Schubert--- 14122b15cb3dSCy SchubertNTP 4.2.6p5 (Harlan Stenn <stenn@ntp.org>, 2011/12/24) 14132b15cb3dSCy Schubert 14142b15cb3dSCy SchubertFocus: Bug fixes 14152b15cb3dSCy Schubert 14162b15cb3dSCy SchubertSeverity: Medium 14172b15cb3dSCy Schubert 14182b15cb3dSCy SchubertThis is a recommended upgrade. 14192b15cb3dSCy Schubert 14202b15cb3dSCy SchubertThis release updates sys_rootdisp and sys_jitter calculations to match the 14212b15cb3dSCy SchubertRFC specification, fixes a potential IPv6 address matching error for the 14222b15cb3dSCy Schubert"nic" and "interface" configuration directives, suppresses the creation of 14232b15cb3dSCy Schubertextraneous ephemeral associations for certain broadcastclient and 14242b15cb3dSCy Schubertmulticastclient configurations, cleans up some ntpq display issues, and 14252b15cb3dSCy Schubertincludes improvements to orphan mode, minor bugs fixes and code clean-ups. 14262b15cb3dSCy Schubert 14272b15cb3dSCy SchubertNew features / changes in this release: 14282b15cb3dSCy Schubert 14292b15cb3dSCy Schubertntpd 14302b15cb3dSCy Schubert 14312b15cb3dSCy Schubert * Updated "nic" and "interface" IPv6 address handling to prevent 14322b15cb3dSCy Schubert mismatches with localhost [::1] and wildcard [::] which resulted from 14332b15cb3dSCy Schubert using the address/prefix format (e.g. fe80::/64) 14342b15cb3dSCy Schubert * Fix orphan mode stratum incorrectly counting to infinity 14352b15cb3dSCy Schubert * Orphan parent selection metric updated to includes missing ntohl() 14362b15cb3dSCy Schubert * Non-printable stratum 16 refid no longer sent to ntp 14372b15cb3dSCy Schubert * Duplicate ephemeral associations suppressed for broadcastclient and 14382b15cb3dSCy Schubert multicastclient without broadcastdelay 14392b15cb3dSCy Schubert * Exclude undetermined sys_refid from use in loopback TEST12 14402b15cb3dSCy Schubert * Exclude MODE_SERVER responses from KoD rate limiting 14412b15cb3dSCy Schubert * Include root delay in clock_update() sys_rootdisp calculations 14422b15cb3dSCy Schubert * get_systime() updated to exclude sys_residual offset (which only 14432b15cb3dSCy Schubert affected bits "below" sys_tick, the precision threshold) 14442b15cb3dSCy Schubert * sys.peer jitter weighting corrected in sys_jitter calculation 14452b15cb3dSCy Schubert 14462b15cb3dSCy Schubertntpq 14472b15cb3dSCy Schubert 14482b15cb3dSCy Schubert * -n option extended to include the billboard "server" column 14492b15cb3dSCy Schubert * IPv6 addresses in the local column truncated to prevent overruns 14502b15cb3dSCy Schubert 14512b15cb3dSCy Schubert--- 14522b15cb3dSCy SchubertNTP 4.2.6p4 (Harlan Stenn <stenn@ntp.org>, 2011/09/22) 14532b15cb3dSCy Schubert 14542b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 14552b15cb3dSCy Schubert 14562b15cb3dSCy SchubertSeverity: Medium 14572b15cb3dSCy Schubert 14582b15cb3dSCy SchubertThis is a recommended upgrade. 14592b15cb3dSCy Schubert 14602b15cb3dSCy SchubertThis release includes build infrastructure updates, code 14612b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 14622b15cb3dSCy Schubertref-clock issues, and documentation revisions. 14632b15cb3dSCy Schubert 14642b15cb3dSCy SchubertPortability improvements affect AIX, HP-UX, Linux, OS X and 64-bit time_t. 14652b15cb3dSCy Schubert 14662b15cb3dSCy SchubertNew features / changes in this release: 14672b15cb3dSCy Schubert 14682b15cb3dSCy SchubertBuild system 14692b15cb3dSCy Schubert 14702b15cb3dSCy Schubert* Fix checking for struct rtattr 14712b15cb3dSCy Schubert* Update config.guess and config.sub for AIX 14722b15cb3dSCy Schubert* Upgrade required version of autogen and libopts for building 14732b15cb3dSCy Schubert from our source code repository 14742b15cb3dSCy Schubert 14752b15cb3dSCy Schubertntpd 14762b15cb3dSCy Schubert 14772b15cb3dSCy Schubert* Back-ported several fixes for Coverity warnings from ntp-dev 14782b15cb3dSCy Schubert* Fix a rare boundary condition in UNLINK_EXPR_SLIST() 14792b15cb3dSCy Schubert* Allow "logconfig =allall" configuration directive 14802b15cb3dSCy Schubert* Bind tentative IPv6 addresses on Linux 14812b15cb3dSCy Schubert* Correct WWVB/Spectracom driver to timestamp CR instead of LF 14822b15cb3dSCy Schubert* Improved tally bit handling to prevent incorrect ntpq peer status reports 14832b15cb3dSCy Schubert* Exclude the Undisciplined Local Clock and ACTS drivers from the initial 14842b15cb3dSCy Schubert candidate list unless they are designated a "prefer peer" 14852b15cb3dSCy Schubert* Prevent the consideration of Undisciplined Local Clock or ACTS drivers for 14862b15cb3dSCy Schubert selection during the 'tos orphanwait' period 14872b15cb3dSCy Schubert* Prefer an Orphan Mode Parent over the Undisciplined Local Clock or ACTS 14882b15cb3dSCy Schubert drivers 14892b15cb3dSCy Schubert* Improved support of the Parse Refclock trusttime flag in Meinberg mode 14902b15cb3dSCy Schubert* Back-port utility routines from ntp-dev: mprintf(), emalloc_zero() 14912b15cb3dSCy Schubert* Added the NTPD_TICKADJ_PPM environment variable for specifying baseline 14922b15cb3dSCy Schubert clock slew on Microsoft Windows 14932b15cb3dSCy Schubert* Code cleanup in libntpq 14942b15cb3dSCy Schubert 14952b15cb3dSCy Schubertntpdc 14962b15cb3dSCy Schubert 14972b15cb3dSCy Schubert* Fix timerstats reporting 14982b15cb3dSCy Schubert 14992b15cb3dSCy Schubertntpdate 15002b15cb3dSCy Schubert 15012b15cb3dSCy Schubert* Reduce time required to set clock 15022b15cb3dSCy Schubert* Allow a timeout greater than 2 seconds 15032b15cb3dSCy Schubert 15042b15cb3dSCy Schubertsntp 15052b15cb3dSCy Schubert 15062b15cb3dSCy Schubert* Backward incompatible command-line option change: 15072b15cb3dSCy Schubert -l/--filelog changed -l/--logfile (to be consistent with ntpd) 15082b15cb3dSCy Schubert 15092b15cb3dSCy SchubertDocumentation 15102b15cb3dSCy Schubert 15112b15cb3dSCy Schubert* Update html2man. Fix some tags in the .html files 15122b15cb3dSCy Schubert* Distribute ntp-wait.html 15132b15cb3dSCy Schubert 15142b15cb3dSCy Schubert--- 15152b15cb3dSCy SchubertNTP 4.2.6p3 (Harlan Stenn <stenn@ntp.org>, 2011/01/03) 15162b15cb3dSCy Schubert 15172b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 15182b15cb3dSCy Schubert 15192b15cb3dSCy SchubertSeverity: Medium 15202b15cb3dSCy Schubert 15212b15cb3dSCy SchubertThis is a recommended upgrade. 15222b15cb3dSCy Schubert 15232b15cb3dSCy SchubertThis release includes build infrastructure updates, code 15242b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 15252b15cb3dSCy Schubertref-clock issues, and documentation revisions. 15262b15cb3dSCy Schubert 15272b15cb3dSCy SchubertPortability improvements in this release affect AIX, Atari FreeMiNT, 15282b15cb3dSCy SchubertFreeBSD4, Linux and Microsoft Windows. 15292b15cb3dSCy Schubert 15302b15cb3dSCy SchubertNew features / changes in this release: 15312b15cb3dSCy Schubert 15322b15cb3dSCy SchubertBuild system 15332b15cb3dSCy Schubert* Use lsb_release to get information about Linux distributions. 15342b15cb3dSCy Schubert* 'test' is in /usr/bin (instead of /bin) on some systems. 15352b15cb3dSCy Schubert* Basic sanity checks for the ChangeLog file. 15362b15cb3dSCy Schubert* Source certain build files with ./filename for systems without . in PATH. 15372b15cb3dSCy Schubert* IRIX portability fix. 15382b15cb3dSCy Schubert* Use a single copy of the "libopts" code. 15392b15cb3dSCy Schubert* autogen/libopts upgrade. 15402b15cb3dSCy Schubert* configure.ac m4 quoting cleanup. 15412b15cb3dSCy Schubert 15422b15cb3dSCy Schubertntpd 15432b15cb3dSCy Schubert* Do not bind to IN6_IFF_ANYCAST addresses. 15442b15cb3dSCy Schubert* Log the reason for exiting under Windows. 15452b15cb3dSCy Schubert* Multicast fixes for Windows. 15462b15cb3dSCy Schubert* Interpolation fixes for Windows. 15472b15cb3dSCy Schubert* IPv4 and IPv6 Multicast fixes. 15482b15cb3dSCy Schubert* Manycast solicitation fixes and general repairs. 15492b15cb3dSCy Schubert* JJY refclock cleanup. 15502b15cb3dSCy Schubert* NMEA refclock improvements. 15512b15cb3dSCy Schubert* Oncore debug message cleanup. 15522b15cb3dSCy Schubert* Palisade refclock now builds under Linux. 15532b15cb3dSCy Schubert* Give RAWDCF more baud rates. 15542b15cb3dSCy Schubert* Support Truetime Satellite clocks under Windows. 15552b15cb3dSCy Schubert* Support Arbiter 1093C Satellite clocks under Windows. 15562b15cb3dSCy Schubert* Make sure that the "filegen" configuration command defaults to "enable". 15572b15cb3dSCy Schubert* Range-check the status codes (plus other cleanup) in the RIPE-NCC driver. 15582b15cb3dSCy Schubert* Prohibit 'includefile' directive in remote configuration command. 15592b15cb3dSCy Schubert* Fix 'nic' interface bindings. 15602b15cb3dSCy Schubert* Fix the way we link with openssl if openssl is installed in the base 15612b15cb3dSCy Schubert system. 15622b15cb3dSCy Schubert 15632b15cb3dSCy Schubertntp-keygen 15642b15cb3dSCy Schubert* Fix -V coredump. 15652b15cb3dSCy Schubert* OpenSSL version display cleanup. 15662b15cb3dSCy Schubert 15672b15cb3dSCy Schubertntpdc 15682b15cb3dSCy Schubert* Many counters should be treated as unsigned. 15692b15cb3dSCy Schubert 15702b15cb3dSCy Schubertntpdate 15712b15cb3dSCy Schubert* Do not ignore replies with equal receive and transmit timestamps. 15722b15cb3dSCy Schubert 15732b15cb3dSCy Schubertntpq 15742b15cb3dSCy Schubert* libntpq warning cleanup. 15752b15cb3dSCy Schubert 15762b15cb3dSCy Schubertntpsnmpd 15772b15cb3dSCy Schubert* Correct SNMP type for "precision" and "resolution". 15782b15cb3dSCy Schubert* Update the MIB from the draft version to RFC-5907. 15792b15cb3dSCy Schubert 15802b15cb3dSCy Schubertsntp 15812b15cb3dSCy Schubert* Display timezone offset when showing time for sntp in the local 15822b15cb3dSCy Schubert timezone. 15832b15cb3dSCy Schubert* Pay proper attention to RATE KoD packets. 15842b15cb3dSCy Schubert* Fix a miscalculation of the offset. 15852b15cb3dSCy Schubert* Properly parse empty lines in the key file. 15862b15cb3dSCy Schubert* Logging cleanup. 15872b15cb3dSCy Schubert* Use tv_usec correctly in set_time(). 15882b15cb3dSCy Schubert* Documentation cleanup. 15892b15cb3dSCy Schubert 15902b15cb3dSCy Schubert--- 15912b15cb3dSCy SchubertNTP 4.2.6p2 (Harlan Stenn <stenn@ntp.org>, 2010/07/08) 15922b15cb3dSCy Schubert 15932b15cb3dSCy SchubertFocus: Bug fixes and portability improvements 15942b15cb3dSCy Schubert 15952b15cb3dSCy SchubertSeverity: Medium 15962b15cb3dSCy Schubert 15972b15cb3dSCy SchubertThis is a recommended upgrade. 15982b15cb3dSCy Schubert 15992b15cb3dSCy SchubertThis release includes build infrastructure updates, code 16002b15cb3dSCy Schubertclean-ups, minor bug fixes, fixes for a number of minor 16012b15cb3dSCy Schubertref-clock issues, improved KOD handling, OpenSSL related 16022b15cb3dSCy Schubertupdates and documentation revisions. 16032b15cb3dSCy Schubert 16042b15cb3dSCy SchubertPortability improvements in this release affect Irix, Linux, 16052b15cb3dSCy SchubertMac OS, Microsoft Windows, OpenBSD and QNX6 16062b15cb3dSCy Schubert 16072b15cb3dSCy SchubertNew features / changes in this release: 16082b15cb3dSCy Schubert 16092b15cb3dSCy Schubertntpd 16102b15cb3dSCy Schubert* Range syntax for the trustedkey configuration directive 16112b15cb3dSCy Schubert* Unified IPv4 and IPv6 restrict lists 16122b15cb3dSCy Schubert 16132b15cb3dSCy Schubertntpdate 16142b15cb3dSCy Schubert* Rate limiting and KOD handling 16152b15cb3dSCy Schubert 16162b15cb3dSCy Schubertntpsnmpd 16172b15cb3dSCy Schubert* default connection to net-snmpd via a unix-domain socket 16182b15cb3dSCy Schubert* command-line 'socket name' option 16192b15cb3dSCy Schubert 16202b15cb3dSCy Schubertntpq / ntpdc 16212b15cb3dSCy Schubert* support for the "passwd ..." syntax 16222b15cb3dSCy Schubert* key-type specific password prompts 16232b15cb3dSCy Schubert 16242b15cb3dSCy Schubertsntp 16252b15cb3dSCy Schubert* MD5 authentication of an ntpd 16262b15cb3dSCy Schubert* Broadcast and crypto 16272b15cb3dSCy Schubert* OpenSSL support 16282b15cb3dSCy Schubert 16292b15cb3dSCy Schubert--- 16302b15cb3dSCy SchubertNTP 4.2.6p1 (Harlan Stenn <stenn@ntp.org>, 2010/04/09) 16312b15cb3dSCy Schubert 16322b15cb3dSCy SchubertFocus: Bug fixes, portability fixes, and documentation improvements 16332b15cb3dSCy Schubert 16342b15cb3dSCy SchubertSeverity: Medium 16352b15cb3dSCy Schubert 16362b15cb3dSCy SchubertThis is a recommended upgrade. 16372b15cb3dSCy Schubert 16382b15cb3dSCy Schubert--- 16392b15cb3dSCy SchubertNTP 4.2.6 (Harlan Stenn <stenn@ntp.org>, 2009/12/08) 16402b15cb3dSCy Schubert 16412b15cb3dSCy SchubertFocus: enhancements and bug fixes. 16422b15cb3dSCy Schubert 16432b15cb3dSCy Schubert--- 1644eb6d21b4SOllivier RobertNTP 4.2.4p8 (Harlan Stenn <stenn@ntp.org>, 2009/12/08) 1645eb6d21b4SOllivier Robert 1646eb6d21b4SOllivier RobertFocus: Security Fixes 1647eb6d21b4SOllivier Robert 1648eb6d21b4SOllivier RobertSeverity: HIGH 1649eb6d21b4SOllivier Robert 1650eb6d21b4SOllivier RobertThis release fixes the following high-severity vulnerability: 1651eb6d21b4SOllivier Robert 1652eb6d21b4SOllivier Robert* [Sec 1331] DoS with mode 7 packets - CVE-2009-3563. 1653eb6d21b4SOllivier Robert 1654eb6d21b4SOllivier Robert See http://support.ntp.org/security for more information. 1655eb6d21b4SOllivier Robert 1656eb6d21b4SOllivier Robert NTP mode 7 (MODE_PRIVATE) is used by the ntpdc query and control utility. 1657eb6d21b4SOllivier Robert In contrast, ntpq uses NTP mode 6 (MODE_CONTROL), while routine NTP time 1658eb6d21b4SOllivier Robert transfers use modes 1 through 5. Upon receipt of an incorrect mode 7 1659eb6d21b4SOllivier Robert request or a mode 7 error response from an address which is not listed 1660eb6d21b4SOllivier Robert in a "restrict ... noquery" or "restrict ... ignore" statement, ntpd will 1661eb6d21b4SOllivier Robert reply with a mode 7 error response (and log a message). In this case: 1662eb6d21b4SOllivier Robert 1663eb6d21b4SOllivier Robert * If an attacker spoofs the source address of ntpd host A in a 1664eb6d21b4SOllivier Robert mode 7 response packet sent to ntpd host B, both A and B will 1665eb6d21b4SOllivier Robert continuously send each other error responses, for as long as 1666eb6d21b4SOllivier Robert those packets get through. 1667eb6d21b4SOllivier Robert 1668eb6d21b4SOllivier Robert * If an attacker spoofs an address of ntpd host A in a mode 7 1669eb6d21b4SOllivier Robert response packet sent to ntpd host A, A will respond to itself 1670eb6d21b4SOllivier Robert endlessly, consuming CPU and logging excessively. 1671eb6d21b4SOllivier Robert 1672eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Robin Park and Dmitri 1673eb6d21b4SOllivier Robert Vinokurov of Alcatel-Lucent. 1674eb6d21b4SOllivier Robert 1675eb6d21b4SOllivier RobertTHIS IS A STRONGLY RECOMMENDED UPGRADE. 1676eb6d21b4SOllivier Robert 1677eb6d21b4SOllivier Robert--- 16782b15cb3dSCy Schubertntpd now syncs to refclocks right away. 16792b15cb3dSCy Schubert 16802b15cb3dSCy SchubertBackward-Incompatible changes: 16812b15cb3dSCy Schubert 16822b15cb3dSCy Schubertntpd no longer accepts '-v name' or '-V name' to define internal variables. 16832b15cb3dSCy SchubertUse '--var name' or '--dvar name' instead. (Bug 817) 16842b15cb3dSCy Schubert 16852b15cb3dSCy Schubert--- 1686eb6d21b4SOllivier RobertNTP 4.2.4p7 (Harlan Stenn <stenn@ntp.org>, 2009/05/04) 1687eb6d21b4SOllivier Robert 1688eb6d21b4SOllivier RobertFocus: Security and Bug Fixes 1689eb6d21b4SOllivier Robert 1690eb6d21b4SOllivier RobertSeverity: HIGH 1691eb6d21b4SOllivier Robert 1692eb6d21b4SOllivier RobertThis release fixes the following high-severity vulnerability: 1693eb6d21b4SOllivier Robert 1694eb6d21b4SOllivier Robert* [Sec 1151] Remote exploit if autokey is enabled. CVE-2009-1252 1695eb6d21b4SOllivier Robert 1696eb6d21b4SOllivier Robert See http://support.ntp.org/security for more information. 1697eb6d21b4SOllivier Robert 1698eb6d21b4SOllivier Robert If autokey is enabled (if ntp.conf contains a "crypto pw whatever" 1699eb6d21b4SOllivier Robert line) then a carefully crafted packet sent to the machine will cause 1700eb6d21b4SOllivier Robert a buffer overflow and possible execution of injected code, running 1701eb6d21b4SOllivier Robert with the privileges of the ntpd process (often root). 1702eb6d21b4SOllivier Robert 1703eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Chris Ries of CMU. 1704eb6d21b4SOllivier Robert 1705eb6d21b4SOllivier RobertThis release fixes the following low-severity vulnerabilities: 1706eb6d21b4SOllivier Robert 1707eb6d21b4SOllivier Robert* [Sec 1144] limited (two byte) buffer overflow in ntpq. CVE-2009-0159 1708eb6d21b4SOllivier Robert Credit for finding this vulnerability goes to Geoff Keating of Apple. 1709eb6d21b4SOllivier Robert 1710eb6d21b4SOllivier Robert* [Sec 1149] use SO_EXCLUSIVEADDRUSE on Windows 1711eb6d21b4SOllivier Robert Credit for finding this issue goes to Dave Hart. 1712eb6d21b4SOllivier Robert 1713eb6d21b4SOllivier RobertThis release fixes a number of bugs and adds some improvements: 1714eb6d21b4SOllivier Robert 1715eb6d21b4SOllivier Robert* Improved logging 1716eb6d21b4SOllivier Robert* Fix many compiler warnings 1717eb6d21b4SOllivier Robert* Many fixes and improvements for Windows 1718eb6d21b4SOllivier Robert* Adds support for AIX 6.1 1719eb6d21b4SOllivier Robert* Resolves some issues under MacOS X and Solaris 1720eb6d21b4SOllivier Robert 1721eb6d21b4SOllivier RobertTHIS IS A STRONGLY RECOMMENDED UPGRADE. 1722eb6d21b4SOllivier Robert 1723eb6d21b4SOllivier Robert--- 1724eb6d21b4SOllivier RobertNTP 4.2.4p6 (Harlan Stenn <stenn@ntp.org>, 2009/01/07) 1725eb6d21b4SOllivier Robert 1726eb6d21b4SOllivier RobertFocus: Security Fix 1727eb6d21b4SOllivier Robert 1728eb6d21b4SOllivier RobertSeverity: Low 1729eb6d21b4SOllivier Robert 1730eb6d21b4SOllivier RobertThis release fixes oCERT.org's CVE-2009-0021, a vulnerability affecting 1731eb6d21b4SOllivier Robertthe OpenSSL library relating to the incorrect checking of the return 1732eb6d21b4SOllivier Robertvalue of EVP_VerifyFinal function. 1733eb6d21b4SOllivier Robert 1734eb6d21b4SOllivier RobertCredit for finding this issue goes to the Google Security Team for 1735eb6d21b4SOllivier Robertfinding the original issue with OpenSSL, and to ocert.org for finding 1736eb6d21b4SOllivier Robertthe problem in NTP and telling us about it. 1737eb6d21b4SOllivier Robert 1738eb6d21b4SOllivier RobertThis is a recommended upgrade. 1739eb6d21b4SOllivier Robert--- 1740ea906c41SOllivier RobertNTP 4.2.4p5 (Harlan Stenn <stenn@ntp.org>, 2008/08/17) 1741ea906c41SOllivier Robert 1742ea906c41SOllivier RobertFocus: Minor Bugfixes 1743ea906c41SOllivier Robert 1744ea906c41SOllivier RobertThis release fixes a number of Windows-specific ntpd bugs and 1745ea906c41SOllivier Robertplatform-independent ntpdate bugs. A logging bugfix has been applied 1746ea906c41SOllivier Robertto the ONCORE driver. 1747ea906c41SOllivier Robert 1748ea906c41SOllivier RobertThe "dynamic" keyword and is now obsolete and deferred binding to local 1749ea906c41SOllivier Robertinterfaces is the new default. The minimum time restriction for the 1750ea906c41SOllivier Robertinterface update interval has been dropped. 1751ea906c41SOllivier Robert 1752ea906c41SOllivier RobertA number of minor build system and documentation fixes are included. 1753ea906c41SOllivier Robert 1754ea906c41SOllivier RobertThis is a recommended upgrade for Windows. 1755ea906c41SOllivier Robert 1756ea906c41SOllivier Robert--- 1757ea906c41SOllivier RobertNTP 4.2.4p4 (Harlan Stenn <stenn@ntp.org>, 2007/09/10) 1758ea906c41SOllivier Robert 1759ea906c41SOllivier RobertFocus: Minor Bugfixes 1760ea906c41SOllivier Robert 1761ea906c41SOllivier RobertThis release updates certain copyright information, fixes several display 1762ea906c41SOllivier Robertbugs in ntpdc, avoids SIGIO interrupting malloc(), cleans up file descriptor 1763ea906c41SOllivier Robertshutdown in the parse refclock driver, removes some lint from the code, 1764ea906c41SOllivier Robertstops accessing certain buffers immediately after they were freed, fixes 1765ea906c41SOllivier Roberta problem with non-command-line specification of -6, and allows the loopback 1766ea906c41SOllivier Robertinterface to share addresses with other interfaces. 1767ea906c41SOllivier Robert 1768ea906c41SOllivier Robert--- 1769ea906c41SOllivier RobertNTP 4.2.4p3 (Harlan Stenn <stenn@ntp.org>, 2007/06/29) 1770ea906c41SOllivier Robert 1771ea906c41SOllivier RobertFocus: Minor Bugfixes 1772ea906c41SOllivier Robert 1773ea906c41SOllivier RobertThis release fixes a bug in Windows that made it difficult to 1774ea906c41SOllivier Robertterminate ntpd under windows. 1775ea906c41SOllivier RobertThis is a recommended upgrade for Windows. 1776ea906c41SOllivier Robert 1777ea906c41SOllivier Robert--- 1778ea906c41SOllivier RobertNTP 4.2.4p2 (Harlan Stenn <stenn@ntp.org>, 2007/06/19) 1779ea906c41SOllivier Robert 1780ea906c41SOllivier RobertFocus: Minor Bugfixes 1781ea906c41SOllivier Robert 1782ea906c41SOllivier RobertThis release fixes a multicast mode authentication problem, 1783ea906c41SOllivier Robertan error in NTP packet handling on Windows that could lead to 1784ea906c41SOllivier Robertntpd crashing, and several other minor bugs. Handling of 1785ea906c41SOllivier Robertmulticast interfaces and logging configuration were improved. 1786ea906c41SOllivier RobertThe required versions of autogen and libopts were incremented. 1787ea906c41SOllivier RobertThis is a recommended upgrade for Windows and multicast users. 1788ea906c41SOllivier Robert 1789ea906c41SOllivier Robert--- 1790ea906c41SOllivier RobertNTP 4.2.4 (Harlan Stenn <stenn@ntp.org>, 2006/12/31) 1791ea906c41SOllivier Robert 1792ea906c41SOllivier RobertFocus: enhancements and bug fixes. 1793ea906c41SOllivier Robert 1794ea906c41SOllivier RobertDynamic interface rescanning was added to simplify the use of ntpd in 1795ea906c41SOllivier Robertconjunction with DHCP. GNU AutoGen is used for its command-line options 1796ea906c41SOllivier Robertprocessing. Separate PPS devices are supported for PARSE refclocks, MD5 1797ea906c41SOllivier Robertsignatures are now provided for the release files. Drivers have been 1798ea906c41SOllivier Robertadded for some new ref-clocks and have been removed for some older 1799ea906c41SOllivier Robertref-clocks. This release also includes other improvements, documentation 1800ea906c41SOllivier Robertand bug fixes. 1801ea906c41SOllivier Robert 1802ea906c41SOllivier RobertK&R C is no longer supported as of NTP-4.2.4. We are now aiming for ANSI 1803ea906c41SOllivier RobertC support. 1804ea906c41SOllivier Robert 1805ea906c41SOllivier Robert--- 1806ea906c41SOllivier RobertNTP 4.2.0 (Harlan Stenn <stenn@ntp.org>, 2003/10/15) 1807ea906c41SOllivier Robert 1808ea906c41SOllivier RobertFocus: enhancements and bug fixes. 1809