Top Banner
Matthew Van Gundy <[email protected]> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux Collaboration Summit 2016 Security Evaluation of NTP
40

Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

Mar 12, 2019

Download

Documents

vodang
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

Matthew Van Gundy <[email protected]>

Technical Leader, Cisco Advanced Security Initiatives Group (ASIG)

Linux Collaboration Summit 2016

Security Evaluation of NTP

Page 2: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

2 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Cisco ASIG: •  ~70 Hardware & Software Security

Specialists

•  Dedicated to securing Cisco, customers, and the Internet

•  Eval Team: Jonathan Gardner, Stephen Gray, Matt Street

Cisco Talos VulnDev: •  Develop and employ automated tooling

to discover open-source software vulnerabilities at scale

•  Eval Team: Yves Younan, Aleksandar Nikolic

Boston University: •  Aanchal Malhotra, PhD Student •  Sharon Goldberg, Associate Professor

Who Are We?

Page 3: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

3 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Accurate time keeping is critical to the safe operation of many Internet systems

•  NTP runs everywhere: routers, switches, servers, laptops

•  All software has flaws •  A number of serious CVEs disclosed in 2014-2015 •  Previous evaluators stated additional concerns

•  Cisco proactively assesses security of our products and services

•  In support of Linux Foundation Core Infrastructure Initiative (CII)

Why Evaluate NTP?

Page 4: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

4 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

ntp.conf server a server b server c

How NTP Works

Image credits: George Boukeas, original Gorilla icon theme artwork by Jakub Steiner (CC BY-SA 3.0), via Wikimedia Commons Slide Credit: Sharon Goldberg & Aanchal Malhotra

Query

Response

Stratum 1 Stratum 2 Stratum 3

•  Every host is both a client and server •  Your laptop will answer queries from

the public Internet

client server

Page 5: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

5 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Talos VulnDev •  Target: ntp 4.2.8p2 •  Memory corruption •  Injection •  Fuzzing and Static Analysis

•  ASIG & Boston University •  Targets: ntp 4.2.8p3-p6,

NTPsec @{2015-08-19}-0.9.0 •  Protocol vulnerabilities •  Application logic vulnerabilities

Approach and High-Level Attack Goals

Goal Status

Change Time

Denial of Service

OS-level Privilege Escalation 😡

: Achieved! 😡 : Not Achieved

Page 6: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

6 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Impersonate servers Defeat authentication

Sync with clients

Add malicious peers

Bypass ACL

Exploit inconsistency in authentication

Information disclosure Malicious reconfiguration

😡

😡

😡 😡

Local privilege escalation

….: Achieved! 😡 : Not Achieved

😀

Page 7: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

7 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

NTP’s Security Mechanisms

Page 8: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

8 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Crypto prevents on-path attacks •  Rarely used in practice

•  Symmetric crypto •  digest = MD5(key || message) •  Difficult to manage: manual key distribution

•  Asymmetric crypto (Autokey) •  Autokey Protocol (RFC 5906) is not a standards-track document •  Autokey is known to be broken (S. Röttger 2012) •  “… if you are using autokey you should stop using it.” -- Harlan Stenn, NTP

Maintainer, 2015

Preventing On-Path Attacks

Image credits: George Boukeas, original Gorilla icon theme artwork by Jakub Steiner (CC BY-SA 3.0), via Wikimedia Commons Slide Credit: Sharon Goldberg & Aanchal Malhotra

Query

Response

server client

Page 9: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

9 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  No source port randomization •  TEST2: Drop packet unless

T3 in query == T1 in response

•  Transmit timestamp has ≈ 32-bits entropy

•  Similar to TCP sequence number randomization

Preventing Off-Path Attacks

Image credits: George Boukeas, original Gorilla icon theme artwork by Jakub Steiner (CC BY-SA 3.0), via Wikimedia Commons Slide Credit: Sharon Goldberg & Aanchal Malhotra

Response: T’

Query

Response: T

server client NTP Packet

LI Ver Mode Stratum (8)

Poll (8)

Precision (8)

Root delay (32)

Root dispersion (32)

Reference Clock Id (32)

Reference Clock Timestamp (64)

T1: Origin Timestamp (64)

T2: Receive Timestamp (64)

T3: Transmit Timestamp (64)

Keyid (32, optional)

Digest (128+, optional)

Query: T3

Response: T1

Page 10: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

10 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Bypassing Origin Validation

Page 11: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

11 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Origin timestamp serves as a nonce to prevent spoofing •  Control protocols disclose expected origin timestamp to

unauthenticated clients (CVE-2015-8139) ntpdc> showpeer 192.168.33.10 remote 192.168.33.10, local 192.168.33.11 ... reference time: d9c79a0e.1ef70a98 Tue, Oct 13 2015 14:56:14.120 originate timestamp: d9c79a63.b05e631b Tue, Oct 13 2015 14:57:39.688 receive timestamp: d9c79a20.b9d5ee3d Tue, Oct 13 2015 14:56:32.725 transmit timestamp: d9c79a20.b9d5ee3d Tue, Oct 13 2015 14:56:32.725

•  Most systems limit ntpq/ntpdc to localhost

Spoofing Messages from Peers

Page 12: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

12 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

T1 orig: x T2 recv: T3 xmit: y

•  RFC 5905 (NTP v4) States: To protect against replay of the last transmitted packet, the xmt state variable is set to zero immediately after a successful bogus check.

•  ntpd advertises time source in reference clock id field

•  ntpd accepts more than one message per poll period

Spoofing Messages from Peers: 0rigin (CVE-2015-8138)

server client

orig: 0 recv: xmit: y’

T1 orig: T2 recv: T3 xmit: x T1 orig:

T2 recv: T3 xmit: x

refid: server …

Page 13: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

13 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Demo: Changing Time Using 0rigin (CVE-2015-8138)

Page 14: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

14 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Improve scrutiny of non-standard extensions •  Prevent access to control protocols ntp.conf:  

disable  mode7  restrict  default  noquery  …  

•  Only allow authorized access iptables  -­‐A  OUTPUT  -­‐o  lo  -­‐p  udp  -­‐m  udp  -­‐-­‐dport  123  \        -­‐m  owner  -­‐-­‐uid-­‐owner  root  -­‐j  ACCEPT  iptables  -­‐A  OUTPUT  -­‐o  lo  -­‐p  udp  -­‐m  udp  -­‐-­‐dport  123  \        -­‐j  DROP  

Recommendations for Origin Leak (CVE-2015-8139)

Page 15: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

15 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Limit number of messages accepted per poll period •  Improved peer review? •  Improved modularity and automated testing •  Clients: Block incoming packets except from configured peers

•  ntp.conf: restrict  default  noserve  ...  •  Host-based firewall

•  Enable and enforce authentication (if feasible) restrict  default  notrust  ...  trustedkey  1  enable  auth  server  ntp.localdomain  key  1  

Recommendations for 0rigin (CVE-2015-8138)

Page 16: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

16 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  RFC 5905 (NTP v4) : PANIC means the offset is greater than the panic threshold PANICT (1000 s) and SHOULD cause the program to exit with a diagnostic message to the system log.

•  Many systems invoke ntpd with the -g flag This option allows the time to be set to any value without restriction; however, this can happen only once.

•  Process supervisors restart failed daemons

•  Sometimes ntpd will STEP more than once (Malhotra et al. CVE-2015-5300)

PANIC: Preventing large time shifts

Page 17: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

17 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Going Back to 1985

-1x109

-9x108

-8x108

-7x108

-6x108

-5x108

-4x108

-3x108

-2x108

-1x108

0

1x108

0 200 400 600 800 1000 1200 1400 1600 1800 2000

Tim

e d

iffere

nce

Sample

baseline (ntp-server)ntp-client deltaattacker2 deltaattacker3 deltaattacker1 delta

Panic and restart

Recommendations: •  Don’t invoke ntpd with -g •  Monitor syslogs for errors, exits, and restarts

Page 18: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

18 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Authentication

Page 19: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

19 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

A Typical Authenticated NTP Environment

Stratum 1 Stratum 2 Client

Keys: 1: secret 2:

server stratum1 key 1 Keys: 1: secret 2: othersecret

server stratum2 key 2 Keys: 1: 2: othersecret

… Keyid: 1 Digest: …

… Keyid: 1 Digest: …

… Keyid: 2 Digest: …

… Keyid: 2 Digest: …

Page 20: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

20 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  digest = MD5(key || message) •  Vulnerable to length extension

(Only affects autokey and proprietary extensions)

•  Difficult to manage

•  Standards do not define semantics

•  Reject packet if MD5(keys[peer.keyid]  ||          pkt.msg)  !=  pkt.digest  

Symmetric Authentication NTP Packet

LI Ver Mode Stratum (8)

Poll (8)

Precision (8)

Root delay (32)

Root dispersion (32)

Reference Clock Id (32)

Reference Clock Timestamp (64)

T1: Origin Timestamp (64)

T2: Receive Timestamp (64)

T3: Transmit Timestamp (64)

Keyid (32, optional)

Digest (128+, optional) pkt.keyid  

Page 21: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

21 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Skeleton Key Vulnerability (CVE-2015-7974, CVE-2016-1567)

Stratum 1 Stratum 2 Client

Keys: 1: secret 2:

server stratum1 key 1 Keys: 1: secret 2: othersecret

server stratum2 key 2 Keys: 1: 2: othersecret

… Keyid: 1 Digest: …

… Keyid: 1 Digest: …

src: stratum1 … Keyid: 2 Digest: …

Page 22: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

22 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Improved peer review? •  Standardize clear and precise definition of NTP authentication

•  Upgrade to ntp 4.2.8p6 or above

Recommendations for Skeleton Key (CVE-2015-7974, CVE-2016-1567)

Page 23: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

23 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Ephemeral Associations

Page 24: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

24 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  RFC 5905 (NTP v4) : Ephemeral associations are mobilized upon the arrival of a packet and are demobilized upon error or timeout

•  Supported for symmetric, broadcast, and manycast modes

•  Packets mobilizing new ephemeral associations must be authenticated (by default)

Ephemeral Associations

Page 25: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

25 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Authentication errors elicit a crypto-NAK response

•  Not authenticated

•  crypto-NAK packets are handled “late”, during other packet consistency checks

•  Authentication states: { NONE, OK, ERROR, CRYPTO }

Crypto-NAK Packets NTP Crypto-NAK Packet

LI Ver Mode Stratum (8)

Poll (8)

Precision (8)

Root delay (32)

Root dispersion (32)

Reference Clock Id (32)

Reference Clock Timestamp (64)

T1: Origin Timestamp (64)

T2: Receive Timestamp (64)

T3: Transmit Timestamp (64)

Keyid (32, optional) == 0x00000000

Digest (128+, optional)

Page 26: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

26 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Most ephemeral associations •  auth == OK: mobilize •  auth == NONE: mobilize only if auth

not required •  else: reject

•  Symmetric active mode packets •  auth == OK: mobilize •  auth in {NONE, ERROR}: Special

handling for certain broken clients •  auth == CRYPTO: crypto-NAK packets

mobilize new symmetric associations

•  keyid == 0: Unauthenticated association

NAK to the Future Vulnerability (CVE-2015-7871)

Peers: •  server •  attacker

crypto-NAK

Unauthenticated Symmetric NTP

Page 27: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

27 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Introduced through refactoring in 4.2.5p186 •  Use language / compiler features enums  and  switch  +  gcc  -­‐Wswitch

•  Clients: Block incoming packets except from configured peers

•  Block crypto-NAK packets using deep packet inspection

•  Drop NTP packets unless the level 3 payload length is one of •  48 bytes (unauthenticated) •  68 bytes (symmetric MD5) •  72 bytes (symmetric SHA1)

Recommendations for NAK to the Future (CVE-2015-7871)

Page 28: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

28 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Other Vulnerabilities

Page 29: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

29 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Déjà vu: Broadcast traffic can be replayed by on-path attackers (CVE-2015-7973)1

•  Unauthenticated off-path DoS against preemptable modes (CVE-2015-7979)1

•  Buffer overflow via refclock (CVE-2015-7853)

Other Vulnerabilities

1. Malhotra & Goldberg. “Attacking NTP’s Authenticated Broadcast Mode.” ACM SIGCOMM Computer Communication Review, April 2016.

Page 30: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

30 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Unauthenticated •  Control messages can be replayed (CVE-2015-8140) •  DoS via ntpq reslist command (CVE-2015-7977, CVE-2015-7978)

Authenticated •  1 use-after free (CVE-2015-7849) •  2 denial-of-service (CVE-2015-7848, CVE-2015-7850) •  1 directory traversal on VMS (CVE-2015-7851) •  1 creation of file with unsafe path (CVE-2015-7976)

Server-side (ntpd) Control Mode Vulnerabilities

Page 31: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

31 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Unauthenticated •  1 server-exploitable infinite loop DoS (CVE-2015-8158)

Authenticated •  2 local buffer overflows (CVE-2015-7854, CVE-2015-7975) •  1 off-by-one memory corruption (CVE-2015-7852)

Client-side (ntpq/ntpdc) Control Mode Vulnerabilities

Recommendations: •  Limit access to control protocols

Page 32: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

32 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Impact Unauthenticated Authenticated Total

Time-Shifting 5 1 6

Server Escalation 0 4 4

Client Escalation 1 1 2

Server DoS 2 2 4

Client DoS 3 0 3

To Be Disclosed 5

Total 11 8 24

Vulnerability Summary

Page 33: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

33 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Interleaved Modes •  Pool Mode

•  Manycast Mode

•  Orphan Mode

•  Dynamic Server Discovery

•  IP-based Access Control •  Clock Selection

•  Leap Second Handling

•  NTPsec Modifications

NTP / NTPsec Wins

Page 34: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

34 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Network Time Security (draft replacement for Autokey) •  Attacking reference clocks

•  Spoofing upstream time sources •  Exploiting refclock drivers

•  IP ACL consistency

•  Clock selection

•  ntpq traps

Areas for Future Investigation

Page 35: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

35 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Conduct security evaluations •  Contribute developer resources to NTP and NTPsec

•  Modularization •  Testing

•  Contribute tooling and other infrastructure

How You Can Help

Page 36: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

http://www.talosintel.com/vulnerability-reports/

Page 37: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

37 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

Demo: Changing Time Using NAK to the Future

Page 38: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

38 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Two control protocols: ntpq (mode 6), ntpdc (mode 7, deprecated) •  Read ntpd parameters: variables, counters, peer list, peer attributes

•  Write many ntpd parameters •  Dynamic reconfiguration •  Requires authentication

•  Previously used in large-scale DDoS attacks

•  Restricted to localhost by default on many modern systems

NTP Control Protocols (ntpq, ntpdc)

Page 39: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

39 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Keep up on security patches •  Use safe default restrictions restrict  default  notrap  nomodify  nopeer  

•  Disable ntpdc entirely

•  Restrict access to control protocols as much as possible

•  Use firewall to limit local access to control protocols to authorized users

•  Use firewall to restrict NTP traffic to configured peers •  Clients: block inbound NTP

packets that are not part of an established session

•  Servers: block inbound symmetric and server NTP packets that are not part of an established session

Hardening your NTP daemons

Page 40: Security Evaluation of NTP - events.static.linuxfound.org · Matthew Van Gundy <mvangund@cisco.com> Technical Leader, Cisco Advanced Security Initiatives Group (ASIG) Linux

40 © 2015 Cisco and/or its affiliates. All rights reserved. Cisco Public

•  Enable authentication if possible

•  Disable unauthenticated traffic by default

•  Whitelist known-good unauthenticated peers

•  Use firewall rules to drop crypto-NAK packets

•  Disable unpeering on error

•  Remove unused ntp.conf trustedkeys

•  Do not invoke ntpd with -g

•  Run ntpd as an unprivileged user

•  Confine ntpd using Mandatory Access Controls

•  Consider chroot jailing ntpd

Hardening your NTP daemons