Hvordan takle datoer og klokkeslett uten raserianfall i tidssonen...

Kilde node: 1658325

Datoer, tider og tidssoner er plagsomme ting.

Sommertid, eller "sommertid" som det også er kjent for, gjør saken enda verre, fordi mange land justerer klokkene sine to ganger i året for å flytte den tilsynelatende tiden for soloppgang og solnedgang i forhold til den vanlige arbeidsdagen.

I Storbritannia, for eksempel, er klokkene våre satt til Greenwich Mean Time når nyttår kommer, men vi spoler dem frem til GMT+1 i slutten av mars, og tilbake til GMT igjen i slutten av oktober.

Store deler av Nord-Amerika gjør noe veldig, veldig likt, men likevel irriterende annerledes, og setter datoene som klokkene endres til begynnelsen av november og begynnelsen av mars i stedet. (Våre to land pleide å være praktisk på linje, men drev litt fra hverandre tidligere dette århundret.)

Så våre kolleger i Boston er alltid fem timer bak oss her i Oxfordshire, bortsett fra den korte perioden hver høst (eller høst, gitt at vi ikke engang kan bli enige om navnene på årstidene på vårt felles språk, enn si justeringen av klokkene våre) og våren når de ikke er det.

Motstandere av sommertid avviser det som en meningsløs kompleksitet som vi rett og slett ikke trenger i internett-æraen, noe som er mildt sagt ironisk gitt at enheter fra Internett-æra generelt klarer å justere seg selv automatisk. Tilhengere av systemet bemerker at for mange mennesker er det ikke lenger mulig å flytte arbeidsdagen for å passe sesongen, fordi dagene deres styres av klokken og ikke av solens daglige posisjon, så å skifte klokken for å passe sesongen er det enkleste alternativet.

DST-skift anses som skadelige

Ja, sommertid-problemer løftet hodet hele denne uken da Chile bestemte seg for å endre sin vanlige klokkesvitsjdato midlertidig (for å legge til enda mer kompleksitet går klokken den andre veien under ekvator, fordi årstidene er omvendt).

Den midlertidige endringen ble kunngjort for å unngå forvirring på dagen for landets nylige konstitusjonelle folkeavstemning.

Folkeavstemningen fant sted 04. september 2022, dagen da klokkene normalt ville gå frem for sommeren.

Klokkebyttet ble derfor utsatt i en uke, for at folk som glemte å stille klokken før de la seg lørdag kveld ikke kunne misforstå klokken på søndag, og uskyldig ende opp med å komme til deres lokale stemmelokale etter at den var stengt, uten å innse at de var en time forsinket fordi klokkene deres var en time trege.

Selv Microsoft følte behov for å advare brukerne om at Windows-klokker, operativsystemets tidtaking, møteplaner og mer kan være kastet ut av taket, gitt at den chilenske regjeringen ikke kunngjorde denne midlertidige endringen til endringen før i forrige måned, og krever derfor en siste liten oppdatering til Windows tidssonedatabase.

Hva om klokken er låst?

I det minste kan brukere av tradisjonelle operativsystemer gjøre midlertidige tidssonejusteringer selv om nødvendig.

Noen enheter er helt avhengige av fastvareoppdateringer for å vise lokal tid riktig.

For eksempel har vi en miniatyr sykkel "datamaskin" som vi bruker som et kompass og avstandsmåler når vi tar en reise (det er utrolig hvor flytende og naturlig du kan navigere uten å se på et kart hvis du kan holde styr på tid, avstand og retning)…

…og selv om du kan fikle med alle slags innstillinger som er lagret i enheten, for eksempel kroppsmassen din (tilsynelatende brukt til å gjette kraftuttaket), kartinnstillinger, posisjonsreferanseformat, skriftstørrelse og mer, er det en ting du ikke kan gjøre er å stille inn dato og klokkeslett manuelt.

Det er rett og slett ikke en måte å gjøre det på, i det minste for de innebygde appene, og du kan ikke engang justere eller hacke dem selv, fordi det hele kjører en digitalt signert, fastvarelåst versjon av Linux

Du kan skrive dine egne tilleggsapper, og de kan vise dato og klokkeslett slik de vil, men de må kompileres for å kjøre i en dedikert virtuell maskin inne i en noe begrenset sandkasse.

Teorien er at hvis enheten fungerer som den skal, kjenner den den absolutte tiden via sin GPS-mottaker, med en nøyaktighet som er betydelig bedre enn de fineste, største, dyreste og mest komplekse mekaniske kronometrene som noen gang er laget.

Den vet også hvor du er på planeten med en nøyaktighet på godt under 10 meter (du forteller tydelig hvilket kjørefelt du var i, eller ser hvor du har kjørt forbi busser, når du ser tilbake på en reise du har registrert), slik at den kan beregne hvilken fysisk tidssone du er i, og angi lokal tid nøyaktig også.

Vel, den kan gjøre det hvis tidssonedatabasen, som viser den nøyaktige plasseringen av tidssonegrensene, og de nødvendige forskyvningene fra UTC (den moderne erstatningen for GMT på digitale ur) er oppdatert.

Ellers kan det hende du må legge til eller trekke fra en time i hodet hvis enheten tar feil.

Eller en halvtime, fordi noen regioner bruker 30-minutters tidssoner.

(Det er forbløffende hvor mange mennesker som nekter å akseptere at det eksisterer ikke-heltalls tidssoner, og insisterer på at "alle lovlige tidssoner går i timer", som vil være nyheter for alle i India eller Sør-Australia.)

Eller 15 minutter.

(Prøv å besøke Nepal eller Eucla.)

Vil det hjelpe å forby sommertid?

De som ikke liker sommertid, enten fordi de mener det er en krenkelse av tingenes naturlige orden, eller fordi de aldri kan huske å endre de manuelt betjente klokkene i husholdningen, vil forsikre oss alle om at det å forby «sommertid» vil pent løse alle disse problemene.

Men det vil ikke løse problemet med hvordan man forstår datalogger, og hvordan du bruker dem i IT-feilsøking, spesielt i cybersikkerhetstrusselrespons, der rekkefølgen ting skjedde i kan være veldig viktig.

For eksempel, hvis loggene viser at skurker nesten helt sikkert kom inn klokken 03:30 tirsdag kveld, basert på en utnyttelse som først ble misbrukt på den tiden...

… skjedde virkelig den nye kontoopprettingen tidsstemplet 03:00 før du utnyttelsen utløste, eller kunne det ha vært det etterpå?

Er konfigurasjonsendringene tidsstemplet 04:00 de som må rulles tilbake, fordi de skjedde etter at angrepet startet, eller er det endringer du må beholde fordi loggene er angitt i forskjellige tidssoner?

Hva gjør jeg?

Det er én ting du kan gjøre for å hjelpe, både som loggfilskaper og loggfilforbruker.

Reduser alltid tidsstempler til UTC (universell koordinert tid), og tar dermed tidssoner ut av loggfilene dine, og alltid registrere tidsstempler i et enkelt, entydig, alfabetisk sorterbart format.

Enkelt sagt: konsultere, RFC 3339, og hold deg til Zulu tid tidsstempler overalt.

Disse ser omtrent slik ut:

  2022-09-08T17:30:00.00000Z

Datoen har alltid firesifrede årstall, så det er ingen risiko for å gjenoppfinne tusenårsfeilen.

Tider trenger ikke AM og PM (datamaskiner kan telle til 24 minst like enkelt som du kan telle til 12), noe som fjerner tvetydighet.

Og det Z på slutten angir at datoen og klokkeslettet som vises har ingen tidssonejustering brukt, slik at alle to Zulu tid loggoppføringer kan sammenlignes direkte for å bestemme rekkefølgen de fant sted i.

Trusselrespons er mye enklere og mye sikrere når tidsstemplene dine er entydige, så vi anbefaler denne tilnærmingen til alle.


LES MER OM
VIKTIGHETEN AV KLARHET I TIMESTAMP-FORMATER


NOEN LYKKELIGE (MEN EKTE) GRUNER TIL RFC 3339

Tidstempel:

Mer fra Naken sikkerhet