hot or not fingerprinting hosts through clock skew
play

Hot or Not: Fingerprinting hosts through clock skew ^ c = 95, min s - PowerPoint PPT Presentation

Hot or Not: Fingerprinting hosts through clock skew ^ c = 95, min s ^ ( t ) = 0.11, max s ^ ( t ) = 0.22 ppm s 0 39.0


  1. Hot or Not: Fingerprinting hosts through clock skew ^ c = 95, min s ^ ( t ) = −0.11, max s ^ ( t ) = 0.22 ppm s 0 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 39.0 ● ● ● ● ● ● ● ● ● ● ● ● ● ● Non−linear offset component (ms) ● ● −1 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 38.5 Temperature ( ° C) ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● −2 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 38.0 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● −3 ● ● ● ● ● ● ● ● ● ● − ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 37.5 ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ●● ● ● −4 01:00 05:00 09:00 Time (hh:mm) Steven J. Murdoch www.cl.cam.ac.uk/users/sjm217 Sebastian Zander caia.swin.edu.au/cv/szander Computer Laboratory www.torproject.org Security seminar, 12 February, Cambridge, UK

  2. This presentation introduces clock skew and how it can introduce security vulnerabilities 0.0 De−noised ● ● 26.4 ● ● ● Non−linear offset component (ms) ● ● ● 26.3 −0.5 Non−linear offset Temperature ● ● ● ● Temperature ( ° C) 26.2 ● ● ●● ● ● −1.0 Clock skew, its link to temperature, and measurement ● ● ● ●● ● ● ● ● ● ● ●● ● ● ● 26.1 ● ●● ●● ●● ● ●● ● ● ● ● ● ● ● ● −1.5 26.0 ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ●● ● ● ● ●●● ● ● 25.9 − −2.0 ● ●●● ● ● ● ● ● ● ● ● ●●● ● Variable skew ● 25.8 Fri 11:00 Fri 21:00 Sat 07:00 Sat 17:00 Time Data Transfer Service Publication Connection Setup Hidden Service * 1 6 RP IP 7 Tor and hidden services Introduction Point (IP) Rendevous 2 Point (RP) 5 8 RP Directory data Server 4 IP Client 3 Pattern measured Measurer Attacking Tor with clock skew Resulting pattern Pattern injected Attacker Tor Network Hidden Server Applications and improvements

  3. Computers have multiple clocks which are constructed from hardware and software components A clock consists of an: • Oscillator , controlled by a crystal, ticks at a nominal frequency • Counter , counts the number of ticks produced by the oscillator On FreeBSD there are several clocks available (other OS are similar): • Tick counter: An uncorrected clock used internally to the OS • System clock: A clock corrected by NTP (used by applications) • BIOS clock (also known as CMOS clock): runs even when PC is off

  4. Computers have multiple clocks which are constructed from hardware and software components A clock consists of an: • Oscillator , controlled by a crystal, ticks at a nominal frequency • Counter , counts the number of ticks produced by the oscillator On FreeBSD there are several clocks available (other OS are similar): • Tick counter: An uncorrected clock used internally to the OS • System clock: A clock corrected by NTP (used by applications) • BIOS clock (also known as CMOS clock): runs even when PC is off

  5. Computers have multiple clocks which are constructed from hardware and software components A clock consists of an: • Oscillator , controlled by a crystal, ticks at a nominal frequency • Counter , counts the number of ticks produced by the oscillator On FreeBSD there are several clocks available (other OS are similar): • Tick counter: An uncorrected clock used internally to the OS • System clock: A clock corrected by NTP (used by applications) • BIOS clock (also known as CMOS clock): runs even when PC is off

  6. Computers have multiple clocks which are constructed from hardware and software components A clock consists of an: • Oscillator , controlled by a crystal, ticks at a nominal frequency • Counter , counts the number of ticks produced by the oscillator On FreeBSD there are several clocks available (other OS are similar): • Tick counter: An uncorrected clock used internally to the OS • System clock: A clock corrected by NTP (used by applications) • BIOS clock (also known as CMOS clock): runs even when PC is off

  7. Computers have multiple clocks which are constructed from hardware and software components A clock consists of an: • Oscillator , controlled by a crystal, ticks at a nominal frequency • Counter , counts the number of ticks produced by the oscillator On FreeBSD there are several clocks available (other OS are similar): • Tick counter: An uncorrected clock used internally to the OS • System clock: A clock corrected by NTP (used by applications) • BIOS clock (also known as CMOS clock): runs even when PC is off

  8. Some of these clocks can be queried over the Internet through ICMP and TCP • ICMP timestamp request • Generated from system clock, 1 kHz, commonly disabled or blocked by firewalls • TCP sequence numbers • Works for Linux, 1 MHz, generated from system clock, rewriting needs state on firewalls, (more in my 22C3 talk) • TCP timestamp • Newer feature than ICMP timestamps, 2 Hz–1 kHz, generated from tick counter, enabled by default on all modern TCP stacks, hard to block on firewalls, required on fast networks

  9. Some of these clocks can be queried over the Internet through ICMP and TCP • ICMP timestamp request • Generated from system clock, 1 kHz, commonly disabled or blocked by firewalls • TCP sequence numbers • Works for Linux, 1 MHz, generated from system clock, rewriting needs state on firewalls, (more in my 22C3 talk) • TCP timestamp • Newer feature than ICMP timestamps, 2 Hz–1 kHz, generated from tick counter, enabled by default on all modern TCP stacks, hard to block on firewalls, required on fast networks

  10. Some of these clocks can be queried over the Internet through ICMP and TCP • ICMP timestamp request • Generated from system clock, 1 kHz, commonly disabled or blocked by firewalls • TCP sequence numbers • Works for Linux, 1 MHz, generated from system clock, rewriting needs state on firewalls, (more in my 22C3 talk) • TCP timestamp • Newer feature than ICMP timestamps, 2 Hz–1 kHz, generated from tick counter, enabled by default on all modern TCP stacks, hard to block on firewalls, required on fast networks

  11. Measured clock skew acts as a fingerprint of a computer (Kohno et al. , 2005) Offset: 20 • The difference between two clocks (ms) 10 Offset (ms) + + + + + + ++ + + + + + + + + + + + + + ++ + +++ ++ + + + + + + + + 0 ++ + + ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +++ + + + + + + + ++ + + + + + Skew: −10 • The rate of change of offset (ppm) −20 • Stable on one machine ( ± 1–2 ppm), 37:00 37:30 38:00 38:30 39:00 39:30 40:00 Time (mm:ss) but varies over different machines (up to ± 50 ppm) • Can give 4–6 bits of information on machine identity

  12. Fingerprinting computers allows identification of hosts and virtual machines • Identify machines, as they change IP address, ISP and even physical location • De-anonymise network traces • Detecting whether a host is running on a virtual machine • Confirming whether a group of hosts are running on the same hardware (e.g. a honeynet) • Honeyd has now been modified to produce different clock-skew fingerprints for virtual hosts • Counting number of hosts behind a NAT • The paper did note that clock skew can be affected by temperature, but did not explore the full potential

  13. Temperature has a small, but remotely measurable, effect on clock skew • Skew of typical clock crystal will 20 change by ± 20 ppm over 150 ◦ C 10 Clock skew (ppm) operational range 0 • In typical PC temperatures, only −10 around ± 1 ppm −20 • By requesting timestamps and measuring skews, an estimate of −50 0 50 100 Temperature ( ° C) temperature changes can be derived • Even in a well-insulated building, changes in temperature over the day become apparent

  14. Temperature has a small, but remotely measurable, effect on clock skew • Skew of typical clock crystal will change by ± 20 ppm over 150 ◦ C 0.0 Observed skew range Clock skew (ppm) operational range −0.5 • In typical PC temperatures, only −1.0 around ± 1 ppm −1.5 Observed temperature range • By requesting timestamps and measuring skews, an estimate of 26.5 27.0 27.5 28.0 28.5 29.0 29.5 Temperature ( ° C) temperature changes can be derived • Even in a well-insulated building, changes in temperature over the day become apparent

Recommend


More recommend