NTP Bug 2922

decodenetnum() will ASSERT botch instead of returning FAIL on some bogus values.

  • Date Resolved: Stable (4.2.8p4) 21 Oct 2015
  • References: Sec 2922 / CVE-2015-7855
  • 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
  • CVSS: (AV:N/AC:H/Au:M/C:N/I:N/A:C) Base Score: 4.6, worst case
  • Summary: If ntpd is fed a crafted mode 6 or mode 7 packet containing an unusually long data value where a network address is expected, the decodenetnum() function will abort with an assertion failure instead of simply returning a failure condition.
  • Mitigation:
    • Implement BCP-38.
    • Upgrade to 4.2.8p4, or later, from the NTP Project Download Page or the NTP Public Services Project Download Page.
    • If you are unable to upgrade:
      • mode 7 is disabled by default. Don't enable it.
      • Use restrict noquery to limit who can send mode 6 and mode 7 requests.
      • Configure and use the controlkey and requestkey authentication directives to limit who can send mode 6 and mode 7 requests.
    • Monitor your ntpd instances.
  • Credit: This weakness was discovered by John D "Doug" Birdwell with the Institute for Defense Analyses (

This topic: Main > SecurityNotice > NtpBug2922
Topic revision: r1 - 2015-10-23 - 09:26:52 - HarlanStenn
SSL security by CAcert
Get the CAcert Root Certificate
This site is powered by the TWiki collaboration platform
IPv6 Ready
Copyright & 1999-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding the site? Send feedback