En bemærkelsesværdig fredagshistorie skete for den amerikanske sikkerhedsforsker Joseph Tartaro. Han ønskede at skille sig ud ved at bestille ikke bare et individuelt nummerskilt til sin bil, men også ved at forbinde det med sit håndværk. Første tanke var at lege med SEGFAULT eller noget lignende. Men til sidst endte han med nummeret NULL til sin bil og VOID til sin kone. Fornemmer du noget uheldigt? Om hvordan hans uskyldige spøg udviklede sig, om endnu en kuriøs mister Null og om lærdommene fra bugs ved datatypetjek i brugerinput, læs videre nedenfor.

I 2016 fik vores programmeringsspøgelsesmager sine spritnye sjove nummerskilt og kunne sikkert ikke lade være med at gnide hænderne i glæde. Han havde endda håbet, at denne tilgang ville befri ham fra bøder. Det var ikke fordi, han brød reglerne voldsomt, men tanken om at bryde systemet på denne måde så ganske interessant ud for en sikkerhedsspecialist.
Problemerne begyndte et år senere, da han forsøgte at forny sit nummerskilt online. Og han forvirrede den hjemmeside, der skulle håndtere dette.

Systemet vurderede, at det nummer, han indtastede, var ugyldigt. Programmørerne havde åbenbart lavet en fejl, og det indtastede NULL som tekstværdi blev angiveligt tjekket forkert. En fejl ved løs typecheck? Men han formåede at forny nummeret i et år ved hjælp af koden i linket, og så glemte han det hele.
Men som det viste sig, var det langt fra de eneste problemer. Historien mindede om en gammel vittighed:
En soldat på marken forsøger at reparere en larvefod, der er faldet af sin tank. Pludselig dukker en fe op fra ingen steder og spørger:
— Hvad laver du, soldat?
— Ja, jeg prøver at få det til at fungere.
— Vil du have det til at fungere ordentligt?
— (drømmende) Ja…
Feen svingede sin tryllestav… Og tårnet faldt af tanken.
I begyndelsen af 2018 fik han en fuldt berettiget bøde på $35. Han kunne have indsiget mod den, men det var nemmere at betale, da beløbet ikke var stort. Og så svang fæen sin tryllestav… Og der begyndte at komme bøder for ubetalte parkeringer, standser på forkerte steder og lignende glæder i postkassen. Dussinvis af bøder på beløb som $37, $60, $74, $80… Fra helt forskellige steder i Californien. For helt forskellige bilmodeller. På grund af en skæv typekontrol kom værdien NULL til at være knyttet til hans personlige data i databasen. Og hver gang den tapre ordenshåndhæver glemte at indtaste bilens nummer i systemet, gik præmien til vores helt (her skulle man også give udviklerne af frontenden et spark for ikke at have kontrol med udfyldningen af en af nøgleparametrene).
På et tidspunkt fik han to bøder, udstedt på samme sted med flere timers mellemrum for helt forskellige bilmodeller. For at gøre det endnu mere skræmmende, blev gamle bøder med uoplyst nummer anvendt retroaktivt mod ham. Således endte han også med bøder fra 2014, hvor han slet ikke havde dette nummer. I alt blev han ramt af bøder for mere end $12000.

Bøder for parkering blev håndteret af det private firma Citation Processing Center. Naturligvis kontaktede Joseph dem og forsøgte at forklare situationen. Naturligvis gik lederen i telefonen blødt udenom, bad om at sende kvitteringerne retur, så de kunne finde ud af det. Men det ville betyde at miste den eneste fysiske kopi, der bekræftede fejlagtigheden ved bødeudstedelsen. Og godt for ham, at han ikke sendte det. Senere bemærkede han, at den oprindelige bilmodel i den offentligt tilgængelige bødedatabase online var blevet ændret til hans. Endnu en runde samtaler med ledere, lige så nytteløse.
Til sidst måtte han henvende sig direkte til DMV (Department of Motor Vehicles, en statslig enhed, der beskæftiger sig med registrering af motorkøretøjer), og med deres hjælp lykkedes det ham hurtigt at reducere beløbet til $6262, men det løste ikke det oprindelige problem. Nye bøder fortsatte med at komme. På tidspunktet for skrivningen af den originale artikel i Wired var der 2 ubetalte bøder på i alt $140. Det mest beklagelige er, at DMV nægter at forlænge hans nummerplader for endnu et år, så længe bøderne ikke er betalt. Desuden er det ikke helt klart, hvor man skal henvende sig, og hvem man skal give en på hatten for at få løst dette problem. DMV bemærker, at deres system korrekt genkender hans nummerplader og forstår absurditeten i situationen. Men parkeringsspørgsmålene håndteres af de lokale myndigheder, som de ikke kan påvirke. Så historien kan sagtens få en fortsættelse. Narrestregerne lykkedes ikke.
Mr. Null
Endnu værre gik det Christopher Null. Uheldigt at være født med et sådant efternavn. Mens Joseph Tartaro kun lider under bøderne i det sidste års tid, dykker Christopher konstant dybere ned i lidelserne, samtidig med at de digitale teknologier udvikler sig.
Især besværes han af den bredt udbredte koncept MVP (minimum viable product, minimum levedygtigt produkt), som i nogle tilfælde direkte overlapper med konceptet "hack-hack, og i produktion".
Selv hvis vi ser bort fra alle de skolemæssige jokes omkring hans efternavn og de beskyldninger om, at han prøver at tiltrække opmærksomhed (og det er ikke en dårlig måde at gøre det på, hvis man er teknisk journalist, som Christopher er), opstår der underlige problemer, når man arbejder med nogle hjemmesider og applikationer.
Ifølge Christopher håndterer de fleste hjemmesider efternavnet Null korrekt. Nogle rapporterer imidlertid, at feltet ikke kan være tomt, eller at det er et reserveret ord. I sjældne tilfælde falder applikationer bare ud. Det interessante er, at han har bemærket, at jo større firmaet bag applikationen eller hjemmesiden er, jo flere problemer vil der være med hans efternavn.
Det er især glædeligt med hans datafiltrering, som fjerner Null fra de allerede gemte data. Så nogle gange modtager han e-mails til Media LLC (mens virksomhedens navn er Null Media LLC), og nogle gange bliver han bare adresseret som „Mr.“ i den diverse spam. Han har endda været nødt til at udvikle nogle omveje. For eksempel at placere et mellemnavn eller initial sammen med efternavnet i ét felt eller bare tilføje et punktum i slutningen. Men nogle gange er systemets stædighed umulig at overvinde.
For eksempel nægtede Bank of America konsekvent at acceptere hans e-mail null@nullmedia.com. Deres system nægtede simpelthen at acceptere null i den brugerdefinerede del af adressen, så han måtte oprette et alias info@ specifikt til banken. Men banksoftware udviklede sig hurtigt, og efter et par år... stoppede de med at acceptere null selv som en del af domænenavnet. Den stakkels mand måtte oprette en banal Gmail-konto til de særligt insisterende. Som også indeholdt null, men ikke i starten af brugernavnet.
Har du oplevet nogle sjove situationer, når du har arbejdet med systemværdier? Fortæl det i kommentarerne.
Tak fordi du er med os. Kan du lide vores artikler? Vil du se flere interessante materialer? Støt os ved at lave en bestilling eller anbefale os til dine bekendte. 30% rabat til brugere af Habr på en unik entry-level server, som vi har opfundet til dig: (tilgængelige muligheder med RAID1 og RAID10, op til 24 kerner og op til 40 GB DDR4).
Dell R730xd er 2 gange billigere? Kun hos os i Holland! Dell R420 - 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - fra 99 $! Læs om hvordan
Kilde: habr.com
