It’s just NTP, so what is the big deal??

NTP is the grand old lady of time synchronisation protocols. Designed by David L. Mills in 1985, it has been a reliable vehicle to provide clients in a network with accurate time down to a few milliseconds.
In a nutshell NTP uses a tree-like hierarchical system of time sources, with one or more reference time sources (i.e. an atomic clock) on the top. Each hierarchy level is called a stratum and provides accurate time (received from the stratum above) to the layer below via sending / receiving time synchronization packets. In due process network propagation delays are compensated, and the receiving client is able to synchronise its local clock to the parent stratum server.

However, NTP like so many other network protocols has not been designed with “gold-plated” security features in mind. While it supports the Autokey Security Architecture (see RFC 5906 Network Time Protocol Version 4: Autokey Specification), which provides message (aka timestamp) authentication via public asymmetric cryptography, Autokey has some fundamental design flaws.
This means that – even with Autokey enabled – an attacker on a time synchronisation network can attempt to disrupt a time aware service by sending NTP packets with incorrect time information.

But what is the big deal, let’s say outside the financial industry that already ring fence their NTP infrastructure for obvious reasons? Here are a few examples:

  • In a recent (November 2015) publication (Attacking the Network Time Protocol) security researchers from the University of Boston showed how a compromised NTP infrastructure can disable, weaken, or hamper a whole range of essential network protocols, including DNSSEC, Kerberos and HTTPS.
    For example, a client “running in the past” would accept a backdated and either revoked or weak server certificate and setup a cryptographically weak HTTPS connection, or trust a malicious server that issued the certificate.

  • Certain consumer devices (e.g. tablets or smartphones) can be remotely and persistently bricked by providing them with incorrect NTP time information, the so called “1/1/1970 bug”.
    A very impressive video can be found here.

NTP is a mature and widely used protocol that will be with us for many more years to come. But as long as there is no robust Autokey successor ratified and globally rolled out, time synchronisation vulnerabilities will exist.

Speak Your Mind