sikkerhet

Med tre servere kunne de styre tiden på alle datamaskiner i Albania

Synkronisering av tid på internett foregår ofte med den gamle NTP-protokollen fra internettets spede begynnelse. En dansk sikkerhetsekspert satte opp tre NTP-servere i Albania for å undersøke hvor sårbar tidssynkronisering er.

Et nøyaktig klokkeslett er avgjørende når datamaskiner skal synkroniseres i et nettverk. En dansk sikkerhetsekspert peker på en rekke svakheter i protokollen som brukes til å synkronisere tiden på internett.
Et nøyaktig klokkeslett er avgjørende når datamaskiner skal synkroniseres i et nettverk. En dansk sikkerhetsekspert peker på en rekke svakheter i protokollen som brukes til å synkronisere tiden på internett.

Hva er klokken egentlig? Det spørsmålet stiller datamaskiner, nettbrett, telefoner og maskiner mange ganger om dagen når handlinger skal synkroniseres mellom ulike maskiner i et nettverk.

Selv få millisekunders avvik i klokkeslettet kan skape forvirring og i siste instans koste store beløp i en aksjehandel eller føre til nedstengning av IT-systemer.

Likevel foregår en stor del av tidssynkroniseringen på internett med en gammel og sårbar protokoll, Network Time Protocol (NTP). For hvis man ikke har en direkte forbindelse til et atomur eller er bekymret for bortfall av GPS-satellitter, vil de fleste datamaskiner velge å spørre en NTP-server om klokken.

Utfordringen er at protokollen ble utviklet sammen med TCP/IP-protokollene i internettets spede begynnelse på 1980-tallet. Dette har fått Mikael Vingaard, IT-sikkerhetsekspert med spesialisering i industriell sikkerhet, til å se nærmere på mulige sårbarheter i NTP-protokollen.

– Vi bruker NTP overalt. I våre smarttelefoner, nettbrett og datamaskiner, og til å styre alt fra kritisk infrastruktur til finanssektoren. Selv om vi bruker den daglig, er det ikke mange som kjenner til protokollen, som fungerer etter de samme prinsippene som i 1995, sier Vingaard.

Enkel å manipulere

NTP ble utviklet tilbake i 1985 av den amerikanske professoren David L. Mills. Den nyeste utgaven av NTP er fra 2010, men skal være bakoverkompatibel med utgaven fra 1995.

NTP fungerer forholdsvis enkelt. Hvis man ikke selv har satt opp en NTP-server, spør man som klient ut i en stor NTP-pool som har listet opp alle NTP-servere i verden. Man finner så tre servere som leverer et klokkeslett tilbake.

NTP-poolen er rangert etter geografi, slik at man automatisk vil søke etter de geografisk nærmeste NTP-serverne. I Danmark er det litt over 40 NTP-servere i drift. Noen drives av private, andre av bedrifter.

– Jeg satte meg til å undersøke hvor lett det egentlig er å sette opp en anonym NTP-server som potensielt kan brukes til å manipulere tiden, sier Vingaard.

Fordi geografi vektlegges høyt, valgte han et land uten NTP-servere for å øke sjansen for at hans anonyme NTP-servere ville få mest trafikk. Samtidig skulle det være mulig å sette opp servere uten at han måtte verifisere seg. Valget falt på Albania.

– Det er ingen aktive NTP-servere i Albania, og jeg fant en leverandør hvor vi kunne sette opp tre servere for 44 dollar i måneden uten annet krav enn en e-postadresse, forteller han.

Kunne lett ha manipulert klokkeslett

I løpet av kort tid begynte det å flyte mye trafikk gjennom Mikael Vingaards tre albanske NTP-servere.

– Jeg skulle etter et par måneder holde en workshop i den albanske hovedstaden Tirana om industriell sikkerhet. Mens jeg var i Albania, kunne jeg se at 100 prosent av mine NTP-forespørsler gikk gjennom mine egne servere, sier Vingaard.

Mye tyder på at hovedparten av alle NTP-forespørsler i Albania gikk gjennom Mikaels tre servere. Hvis han hadde fiendtlige hensikter, ville det i prinsippet være mulig å peke ut spesifikke albanske IP-adresser, og så sende manipulerte klokkeslett til dem.

Når en datamaskin leter etter en NTP-server, vil den i første omgang avsøke nettverket i samme land. I Danmark er det litt over 40 NTP-servere i drift. Det betyr at hvis man vil være sikker på å kunne manipulere tiden, må man sette opp tilstrekkelig mange servere til at de med stor sannsynlighet blir brukt av den IP-adressen man ønsker å manipulere. Jo flere NTP-servere som finnes, desto mer vil det kreve å manipulere.

Selv med bare tre NTP-servere så det ut til at Mikael Vingaard leverte klokkeslett til en stor del av den albanske internettrafikken, fra vanlige bærbare datamaskiner på et kontor til industrielle datamaskiner i industrien som trenger et klokkeslett for å synkronisere handlinger mellom ulike maskiner. De industrielle datamaskinene, PLC-er, har ofte definert et tidsintervall som NTP-servere må svare innenfor, for eksempel en bestemt årrekke.

– Får PLC-en plutselig vite at vi befinner oss i år 1958, så vil den sannsynligvis gå i svart, sier han.

Tidssynkronisering har også stor betydning hvis flere fysiske systemer skal synkroniseres, som transportbånd, roboter og maskiner i industrien.

Teleselskap i trøbbel

I løpet av høsten stengte Mikael Vingaard midlertidig de tre albanske NTP-serverne. Det viste seg raskt å gi problemer, blant annet hos en teleleverandør som ikke uten videre fikk omdirigert trafikken til andre NTP-servere.

– Vi hadde gjort oss flid med å ikke skape problemer for noen, men bare undersøke hvor sårbar NTP egentlig er. Eksemplet viser godt at man ikke bør gjøre seg avhengig av en enkelt tjeneste, og slett ikke en som er satt opp anonymt, sier han.

I tillegg til manipulasjon av klokkeslett kan NTP-serveren også fungere som en skjult døråpner til en bedrifts brannmur.

Når man sender og mottar data fra en NTP-server, skjer det som regel med UDP-protokollen, som allerede transporterer store deler av trafikken på internett. I motsetning til TCP-protokollen er kommunikasjonen enveis, og man kan dermed ikke bruke NTP som en bakdør for å snike seg inn i fremmede nettverk.

– Men jeg oppdaget at en del bedrifter bytter ut UDP med TCP, og da må det utveksles en håndtrykkprosess hvor brannmuren på port 123 er åpen. Det åpner et potensielt angrepspunkt, sier Vingaard.

Etterlyser offisiell dansk tidsprotokoll

I internettets tidlige dager ble mange av de underliggende tjenestene og servicene drevet desentralt av private aktører. Slik er det fortsatt med NTP-serverne.

– Det er ikke mange som har tatt eierskap over NTP, på samme måte som det er gjort med DNS, hvor for eksempel teleleverandører setter opp sine egne DNS-servere. NTP har blitt litt glemt på perrongen, sier Vingaard.

Den kanskje mest opplagte løsningen er å se mot stjernehimmelen og få klokkeslettet levert fra GNSS-satellitter, som de amerikanske GPS eller de europeiske Galileo-satellittene.

De siste årene har spesielt GPS-satellitter blitt rammet av jamming på grunn av krigen i Ukraina og uro i Midtøsten, og det har skapt usikkerhet om satellittenes evne til å levere tidssynkronisering stabilt.

Selv om NTP er en eldre protokoll, kan den fortsatt utgjøre en mer stabil løsning for tidssynkronisering. For med noen forholdsvis enkle endringer i oppsettet kan man sikre seg ganske godt mot manipulasjon av klokkeslett. Det krever imidlertid at man aktivt tar stilling til hvordan man mottar klokkeslett fra NTP-servere.

– Man kan aktivt sikre seg flere NTP-kilder samtidig. For eksempel kjører både Apple og Microsoft sine egne NTP-servere, sier Vingaard.

Artikkelen ble først publisert på Version 2 for deres abonnenter. Den er tilgjengelig på norsk for abonnenter av Ekstra gjennom vår samarbeidsavtale. Det siste avsnittet i den oversatte saken er fjernet i ettertid på da det handlet om rent danske forhold.

Powered by Labrador CMS