NTP BUG 3415: Provide a way to prevent authenticated symmetric passive peering
Last update: April 22, 2024 18:49 UTC (7e7bd5857)
Summary
Description
ntpd can be vulnerable to Sybil attacks. If a system is set up to use a trustedkey and if one is not using the feature introduced in ntp-4.2.8p6 allowing an optional 4th field in the ntp.keys file to specify which IPs can serve time, a malicious authenticated peer – i.e. one where the attacker knows the private symmetric key – can create arbitrarily-many ephemeral associations in order to win the clock selection of ntpd and modify a victim’s clock. Three additional protections are offered in ntp-4.2.8p11. One is the new noepeer directive, which disables symmetric passive ephemeral peering. Another is the new ippeerlimit directive, which limits the number of peers that can be created from an IP. The third extends the functionality of the 4th field in the ntp.keys file to include specifying a subnet range.
Mitigation
- Implement BCP-38.
- Upgrade to ntp-4.2.8p11 or later.
- Use the
noepeer directive to prohibit symmetric passive ephemeral associations.
- Use the
ippeerlimit directive to limit the number of peers that can be created from an IP.
- Use the 4th argument in the
ntp.keys file to limit the IPs and subnets that can be time servers.
- Have enough sources of time.
- Properly monitor your
ntpd instances.
- If
ntpd stops running, auto-restart it without -g.
Credit
This weakness was reported as Bug 3012 by Matthew Van Gundy of Cisco ASIG, and separately by Stefan Moser as Bug 3415.
Timeline