Slashdot Mirror


Network Time Protocol Hardened To Protect Users From Spying, Increase Privacy (theregister.co.uk)

AmiMoJo quotes the Register: The Internet Engineering Task Force has taken another small step in protecting everybody's privacy... As the draft proposal explains, the RFCs that define NTP have what amounts to a convenience feature: packets going from client to server have the same set of fields as packets sent from servers to clients... "Populating these fields with accurate information is harmful to privacy of clients because it allows a passive observer to fingerprint clients and track them as they move across networks".

The header fields in question are Stratum, Root Delay, Root Dispersion, Reference ID, Reference Timestamp, Origin Timestamp, and Receive Timestamp. The Origin Timestamp and Receive Timestamp offer a handy example or a "particularly severe information leak". Under NTP's spec (RFC 5905), clients copy the server's most recent timestamp into their next request to a server – and that's a boon to a snoop-level watcher.

The proposal "proposes backward-compatible updates to the Network Time Protocol to strip unnecessary identifying information from client requests and to improve resilience against blind spoofing of unauthenticated server responses." Specifically, client developers should set those fields to zero.

51 comments

  1. Firsto Posto by Anonymous Coward · · Score: 0

    #MAGA

  2. proposal, should, and all that. by turkeydance · · Score: 0

    set those fields to zero.

  3. I have since long given up on other peoples NTP. by Anonymous Coward · · Score: 2, Interesting
  4. Re:I have since long given up on other peoples NTP by AK+Marc · · Score: 0

    If you are going to trust the government for your time, you have no trust in your time. You might as well manually synchronize with an atomic clock once every month as your internal time source won't lose +- 5 min in a month (unless there's a serious problem with the system clock), and drift isn't a "real" problem if everyone in the same security domain is drifting together.

  5. Why have a port open and listening all the time? by Anonymous Coward · · Score: 0

    Is there any necessity for a computer system to have a port open and listening all the time? Surely doing a time update should only be as simple as making an HTTPS GET request?

  6. Re:I have since long given up on other peoples NTP by Anonymous Coward · · Score: 1

    I assume you mean because GPS is run by government? Meh. as long as governments (mulitple) are using the same time source I actually trust it quite a bit. Besides, atomic clocks essentially mean trusting government too... they are ALL either directly or indirectly funded by governments, even one you buy yourself for personal use.

  7. Local NTP is probably a bit more secure by RevDisk · · Score: 4, Interesting

    I just use a GPS attachment. Well, GPS, GLONASS and Galileo. With a tiny bit of code to verify location checks out, math wise it'd be tricky to spoof. If my building moves by any significant amount, I'm fairly sure there's a problem of some sort that needs my attention. Spoofing the time and getting the locational data from all three providers to match would be kinda an impressive mathematical exercise. Plus, any domestic GPS spoofing will bring the anger of the FCC on someone and never underestimate interdepartment bureaucracy fury. It's kinda unlikely unless you're in a very high security environment.

    Very simple to code. Cost me $50, and pretty much only because I wanted one that could handle multiple constellations. Or buy one off the shelf. More expensive, less work.

    1. Re:Local NTP is probably a bit more secure by sjames · · Score: 1

      Just be sure to avoid setting your watch during an earthquake.

    2. Re:Local NTP is probably a bit more secure by RevDisk · · Score: 2

      If the antenna position moves more than 10 feet, I have other concerns. ;)

  8. Perhaps a better solution by jmcharry · · Score: 1

    Fill the fields with plausible garbage. If the data has no legitimate usage, poison it.

    1. Re:Perhaps a better solution by Anonymous Coward · · Score: 2, Insightful

      But if everyone's garbage is different it's unique, and thus identifying, information.

    2. Re:Perhaps a better solution by Archfeld · · Score: 1

      Fill the fields with random garbage each time a request is made. That way you create more and more seemingly unique entities to track. If you can't beat/avoid the DB, fill it with garbage.

      Slippery Jim DiGriz
      https://en.wikipedia.org/wiki/...

      --
      errr....umm...*whooosh* *whoosh* Is this thing on ?
  9. When time.windows.com... by Anonymous Coward · · Score: 0

    can't even get the time correct, we should be focusing on reliability instead of security. I don't care as much about security when my hourly processes run more than once because Microsoft's NTP can't even get time right. We double-charged a few hundred customers because of the problem Microsoft created.

    1. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      This. If a company as large as Microsoft can't get this right, what hope does anyone else have?

    2. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      True, but others have gotten NTP right for over 25 years. They just suck.

    3. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      Microsoft is a little over 25 years behind copying UNIX, so this shouldn't be a surprise.

    4. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      I would say that's your fault for relying on Microsoft time for a critical business service.

    5. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      There is evil in the world as proven by the fact that Bush got reelected. NTP is too complicated as proven by the fact that Microsoft can't get it right even over 25 years since RFC 1305 was published.

    6. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      Actually in practice, NTP is actually much older than that. We've used it since 1979. Microsoft is much farther behind than even your claim.

    7. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      But is that our fault when that is their garbage server's default?

    8. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      That's because they don't use ntp. They use the equivalent of sntp.

    9. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      When you recognize their garbage as garbage then you should know better.

    10. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      Maybe they do use Simple Network Time Protocol, but they advertise that they support real NTP. Some applications don't require high accuracy timing, but Microsoft is intentionally misleading.

    11. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      RFC 956 is generally considered the NTP standard so they nearly 32 years behind.

    12. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      I work for Azure, and the largest cause I've seen for auto problems is due to time.

    13. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      Time.Windows.Com made me late for a job interview.

    14. Re:When time.windows.com... by hcs_$reboot · · Score: 1

      can't even get the time correct, we should be focusing on reliability instead of security.

      That's a normal behavior. Windows has always been a few years behind.

      --
      Slashdot, fix the reply notifications... You won't get away with it...
    15. Re: When time.windows.com... by arglebargle_xiv · · Score: 1

      OTP (Office Time Protocol) predates even that one by decades, and is probably more accurate than Microsoft's NTP:

      Hey Jim, what time is it?
      About five-ish
      Beer o'clock?
      Yeah, about that.

      Never failed so far.

    16. Re: When time.windows.com... by Zero__Kelvin · · Score: 3, Insightful

      The hope that ignorant people will stop thinking Microsoft is competent? Double points for not thinking they must be competent because they are "big".

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    17. Re: When time.windows.com... by arglebargle_xiv · · Score: 1

      It's not just that, in a domain you've actually got CTP, Clusterfuck Time Protocol. Let's see, we'll all sync to that backup domain controller over there, which is sync'd to another BDC, one of which syncs to the PDC, which in turn syncs to a different BDC. Having that lot settling on a time is like watching a bunch of rednecks debate how gravity waves work, they eventually converge on some sort of solution but it sure ain't the solution that anyone else is on.

    18. Re: When time.windows.com... by Anonymous Coward · · Score: 0

      so wait a second. You're saying because the defaults don't work (and you knew about this) and didn't do anything to fix this? You would be fired from my company in a heartbeat.

  10. Re:I have since long given up on other peoples NTP by drinkypoo · · Score: 1

    Wowsers that's a lot of money. You can get PPS out of neo8m

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  11. Re:Sounds good! by Anonymous Coward · · Score: 0

    Patrick, is that you?

  12. Watch very closely. by WolfgangVL · · Score: 1

    Anytime anybody says they are doing something "to protect you from spying" or to "increase your privacy" You would do well to watch very closely and try to read between the lines. Sometimes your just a paranoid nutcase. Sometimes.

    --
    You are being ripped off every second of every day, so that advertisers can help rip you off even more tomorrow.
  13. Simple solutions by LostMyBeaver · · Score: 0

    Time related issues are easy to solve. The real problem is that no one wants to pay a few bucks for accurate time since probably 99% or more of all systems synchronizing time probably don't need better than the correct second... forget milliseconds or better.

    So here's the thing. Replace NTP as the wide spread time protocol with one that uses a round trip timer over HTTPS for get time requests and changes are the precision is good enough.

    Most enterprise and industrial environments don't need precision time, but instead need consistent time. So, running a local time server is optimal. Windows domain services does time as well, so once computers are domain joined, they sync against the AD server and so long as the AD server is correct, then all the PCs should be synced against the AD.

    This is where there could be a problem. NTP has no security so wherever possible, it is preferable to run NTP over IPv6 with encryption enabled. This should be true for most enterprise traffic today. If nothing else, placing the AD server in an IPv6 only domain and requiring DirectAccess when IPv6 isn't available will secure the connection. And it's generally better than most systems like Cisco, Palo Alto, Checkpoint and open source solutions since every time there's a Windows update that fixes VPN bugs, the VPN is policy based, so both the client and server are updated and then reconfigured to secure the link. It's stupid how many people still run AD on IPv4 when running it on IPv6 is a millions time better... ESPECIALLY when IPv6 isn't available and DirectAccess needs to be used.

    Of course, synchronizing against a server is stupid since time on Windows and Linux is generally REALLY bad because they're running on general purpose operating systems without real-time extensions, so clock drift is a reality. There's also the issue of non-deterministic packet processing latency. For this reason, using an older Cisco router (running IOS, not IOS-XE) is a good idea. These cost $20-$100 on eBay. Cisco has classically had pretty good NTP implementations even if they generally aren't very secure. This solution is a much better option than server syncing. Of course, if all you have is modern equipment, you don't want to use Cisco IOS-XE devices since Cisco did a half-assed job on real-time Linux (try BFD out on XE and you'll see what I mean).

    Now, the Cisco solution is nice because you can stick a few cheap IOS based devices at the edge of the network, peer them to each other and sync them against NTP and you're good to go. The entire configuration with security (what little you can get with NTP and less with Cisco) should take 10-15 minutes if the Cisco guy knows his stuff... good luck with that.

    If your an enterprise that considers time to be more important than just per second resolution... then it's time for a proper time server.

    http://www.satsignal.eu/ntp/Raspberry-Pi-NTP.html

    That's currently my favorite option as it's dirt cheap, GPS sync'd and very simple... and it's almost 100% guaranteed to be a better option than buying expensive devices from somewhere else.

    $200 per server, get two of these per location and configure them properly to include NTP peering and run your own "master".

    1. Re:Simple solutions by Zero__Kelvin · · Score: 1

      "Of course, synchronizing against a server is stupid since time on Windows and Linux is generally REALLY bad because they're running on general purpose operating systems without real-time extensions, so clock drift is a reality."

      Linux doesn't need "real time extensions". Linux has had soft realtime support in the mainline kernel for a frigging decade. Furthermore, clock drift is "a thing" everywhere. If it were not then there would be no need for NTP.

      "Now, the Cisco solution is nice because you can stick a few cheap IOS based devices at the edge of the network, peer them to each other and sync them against NTP and you're good to go."

      You don't seem to understand that IOS is Linux based.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    2. Re:Simple solutions by Dog-Cow · · Score: 1

      It's amusing that you think being real-time has anything to do with keeping time.

    3. Re:Simple solutions by Anonymous Coward · · Score: 0

      > Linux doesn't need "real time extensions"

      I think he means timekeeping extensions, not hard realtime execution. If you only have the posix adjtime to discipline the clock there are some limitations that make it impossible to do it correctly. Fortunately modern linux and the BSDs have ntp_adjtime and indeed kernel timekeeping.

      > You don't seem to understand that IOS is Linux based.

      Not true. You may be thinking of the os Juniper uses, which is BSD based

    4. Re:Simple solutions by Anonymous Coward · · Score: 0

      and it's almost 100% guaranteed to be a better option than buying expensive devices from somewhere else.

      Nope, the raspberry pi ethernet works over usb. USB 2.0 has a frame time of 125us and this is thus the lower bound on latency. Good for most applications, but probably not for applications where you would buy a dedicated gps based time server. Try some more performant (ethernetwise) embedded device: Orange Pi Zero, Odroid C2, ...

  14. Use HTTPS over UDP by hcs_$reboot · · Score: 1
    --
    Slashdot, fix the reply notifications... You won't get away with it...
  15. Re:I have since long given up on other peoples NTP by arglebargle_xiv · · Score: 1

    Nice, but pretty pricey. Not quite in the league of a Symmetricom privewise, but getting close. I'm running more or less the same thing but without the OLED display at 1/10th the price. Unfortunately the guy who made them on Tindie seems to have gone away, so I can't provide a link.

  16. Re:Why have a port open and listening all the time by driblio · · Score: 1

    Check your protocols.

    Actually, establishing (and tearing down) an encrypted TCP channel is far less simple than UDP based ntp.

    The open port isn't a requirement, but it is how ntp does the important (and complicated) part - establishing what the real time actually is, without blind faith in just one other server.

  17. Re:Why have a port open and listening all the time by Zero__Kelvin · · Score: 2

    Ignoring for the moment what a bad idea that would be, how do you plan on doing HTTP without a port open?

    --
    Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
  18. Re:Why have a port open and listening all the time by dcollins117 · · Score: 1
  19. Any idea on the underlying motivation? by Anonymous Coward · · Score: 0

    The article doesn't mention any exploits, or reference any recent disclosures about CIA/NSA tracking software. Is this just preventative? Or has it been used? One place I can see this being an issue is for TOR clients -- if you're foolish to let your ntp out they may be able to track you between exit nodes -- not good. Interestingly governments are big TOR users (google if you don't believe me).

  20. Indeed by Anonymous Coward · · Score: 0

    You are not required to fill these fields on the client. The server sends them back to you to enable the development of simple stateless clients, where you send the packets first and then decode the replies. Some NTP implementations (eg chrony) already leave the unneeded TX/RX timestamp out (it is filled with a nonce, for further protection against spoofing).

    You should be careful with zeroing reference id, root delay and dispersion. Some enterprise NTP monitoring solutions use this to detect client problems. Of course, if you have a system like this you are using your own stratum 1 servers and don't really care about identifying data within your own network.

  21. Re:I have since long given up on other peoples NTP by AK+Marc · · Score: 1

    The government could turn off the NIST atomic clock, but couldn't turn off the ones in universities or the like. GPS is explicitly run by the US government, and has been tweaked to reduce its efficiency.

  22. Re: I have since long given up on other peoples NT by adolf · · Score: 1

    My stratum 1 server also receives timing from the Russian glonass constellation. American GPS is not the only game in town, and hasn't been for many years.