Ärge naljatage NULL-iga

A worthy Friday story unfolded with American security researcher Joseph Tartaro. He wanted to stand out by ordering not just a personalized license plate, but also linking it to his profession. His first thought was to play around with SEGFAULT or something similar. However, he ultimately settled on the plate NULL for his car and VOID for his wife. Did you sense something amiss? Read on to find out how this innocent prank turned into a saga, another quirky Mister Null, and the lessons about bugs in data type checks from user input.

Ärge naljatage NULL-iga

So, in 2016, our programming joker received his brand new humorous license plates and surely rubbed his hands gleefully. He even hoped that this move would spare him from speeding tickets. Not that he broke the law significantly, but the idea of breaking the system like this seemed quite interesting to a security expert.

Problems began a year later when he tried to renew his plates online. This confused the designated website immensely.

Ärge naljatage NULL-iga

The system deemed the number he entered as invalid. The programmers messed up somewhere, and the NULL he entered as a string value was apparently checked incorrectly. A loose type-checking error? Nonetheless, he managed to renew the plate for a year using the code in the link, and somewhat later he forgot about all of it.

However, as it turned out, this was far from the end of his troubles. The story then resembled an old joke:

A soldier in the middle of a field is trying to somehow repair a track that fell off a tank. Suddenly, out of nowhere, a fairy appears and asks:
— What are you up to, soldier?
— Well, I'm struggling a bit.
— Want to do it properly?
— (dreamily) I want to

The fairy waved her wand
 And the tank's turret fell off.

Nii et, 2018. aasta alguses sai ta tĂ€iesti teenitud trahvi summas $35. Ta oleks vĂ”inud selle vaidlustada, kuid maksta oli lihtsam, summa ei olnud suur. Ja siis lehvitas haldjas oma vĂ”lukeppi... Ja tema postkasti sadasid trahvid tasumata parkimise, valeparkimise ja muu sellise eest. KĂŒmnetest ja kĂŒmnetest trahvidest summades $37, $60, $74, $80... Erinevatest California nurkadest. Erinevate automudelite tĂ”ttu. Üks hĂ€lve tĂŒĂŒpimisvĂ”imekontrollis seostas NULL vÀÀrtuse tema isikuandmetega. Ja iga kord, kui tubli korrakaitsja unustas trahvi vĂ€lja kirjutades auto numbri sĂŒsteemi sisestada, lĂ€ks auhind meie kangelasele (siinkohal vĂ”iks nĂŒpeldada ka frontendi arendajaid, et nad ei olnud kontrollinud ĂŒhe vĂ”tmeparameetri tĂ€itmist).

Mingi hetk sai ta kaks trahvi, mis olid vĂ€lja kirjutatud samas kohas mitme tunni vahega tĂ€iesti erinevatele autodele. TĂ€iendava Ă”nne saavutamiseks rakendati talle retrospektiivselt vanu trahve, millel ei olnud numbrit. Nii sai ta isegi trahvid, mis kuulusid aastasse 2014, mil tal ei olnud isegi seda numbrit. LĂ”puks tekkis tal ĂŒle $12000 ulatuses trahve.

Ärge naljatage NULL-iga

Parkimistrahvidega tegeles erafirma Citation Processing Center. Loomulikult vĂ”ttis Joseph nendega ĂŒhendust ja pĂŒĂŒdis olukorda selgitada. Loomulikult oli telefonimanagersĂ”bralikkus, kuid palus neil saata neile tagasi tĂ”endite koopiad, et nad saaksid seal olukorra ĂŒle vaadata. Kuid see tĂ€hendaks ainulaadse pĂŒsiva koopia kaotamist, mis kinnitas trahvi vale vĂ€ljakirjutamist. Ja hĂ€sti, et ta ei saatnud. Hiljem mĂ€rkas ta, et veebis saadaval olevas avatud trahvide andmebaasis oli algne automudel asendatud tema omaga. Veel ĂŒks vooru vestlusi managereid, sama kasutu.

LĂ”puks pidi ta otse DMV (Department of Motor Vehicles, transpordi registreerimisega tegeleva riigiasutuse) poole pöörduma ning nende abiga Ă”nnestus tal ĂŒsna kiiresti summa 6262 $ vĂ”rra vĂ€hendada, kuid see ei lahendanud algset probleemi. Uusi trahve jĂ€tkuvalt laekus. Originaali artikli kirjutamise ajal Wiredis olid tasumata kaks trahvi kokku 140 $. Mis kĂ”ige kurvem, DMV keeldub temalt numbrite pikendamisest jĂ€rgmiseks aastaks, kuni trahvid on tasutud. Veelgi enam, ei ole selge, kuhu minna ja kellele ĂŒtelda, et see probleem lahendada. DMV mĂ€rgib, et nende sĂŒsteem tuvastab Ă”igesti tema numbrid ja mĂ”istab olukorra absurdsust. Kuid parkimiskĂŒsimustega tegelevad kohalikud ametivĂ”imud, millele nad ei saa kuidagi mĂ”ju avaldada. SeetĂ”ttu vĂ”ib lugu veel jĂ€tkuda. Nali torunes.

Hr. Null

Christopher Null'il (Kristopher Null) lĂ€ks veel halvemini. Tal on halba Ă”nne sĂŒnniga sellise perekonnanimega. Kui Joseph Tartaro kannatab ainult trahvide all ja vaid umbes aasta, siis Christopher sukeldub pidevalt sĂŒgavamale kannatuste kuristikku koos digitaaltehnoloogiate arenguga.

Eriti ebamugavust toob talle laialdaselt levinud MVP (minimum viable product, minimaalne elujÔuline toode) mÔisted, mis mÔnel juhul kattuvad otsekohe «hÀrrah-hÀrrah ja tootmisse» kontseptsiooniga.

Kui isegi jĂ€tta kĂ”rvale kĂ”ik algtaseme naljad tema perekonnanime ĂŒle ning sĂŒĂŒdistused katsetes seelĂ€bi tĂ€helepanu tĂ”mmata (mis on hea meetod, kui oled tehniline ajakirjanik, nagu Christopher), siis kummalised asjaolud tekivad teatud veebisaitide ja rakendustega töötamisel.

Christopheri vĂ€itel töötlevad enamiku veebisaitide sĂŒsteem perekonnanime Null Ă”igesti. MĂ”ned teatavad, et vĂ€li ei saa olla tĂŒhi vĂ”i et see on reserveeritud sĂ”na. Harvadel juhtudel rakendused lihtsalt kokku kukuvad. Huvi pĂ€rast on ta mĂ€rganud, et mida suurem on ettevĂ”te, kes rakenduse vĂ”i saidi taga seisab, seda rohkem on probleeme tema perekonnanimega.

Eraldi rÔÔmustab tema andmete filtreerimine, mis eemaldab Null juba salvestatud andmetest. Nii juhtub, et ta saab kirju Media LLC aadressile (samal ajal kui ettevĂ”tte nimi on Null Media LLC), aga mĂ”nikord pöördutakse temaga lihtsalt kui "Hr." spammis. Tal tuli isegi vĂ€lja töötada ĂŒmbersĂ”idud. NĂ€iteks, sisestades teise nime vĂ”i initsiaali samasse vĂ€ljade perekonnanimega vĂ”i lihtsalt lisades punkti lĂ”ppu. Aga mĂ”nikord on sĂŒsteemi jonn ĂŒletamatu.

Nii keeldus Bank of America tĂ€ielikult vastu vĂ”tmast tema e-kirja null@nullmedia.com. Nende sĂŒsteem lihtsalt keeldus aktsepteerimast nulli kasutajanime osas, tuli isegi luua alias info@ spetsiaalselt panga jaoks. Aga pangasoftware arenes aktiivselt ja mĂ”ne aasta pĂ€rast... ei aktsepteerinud nulli isegi domeeninime osana. Vaesel mehel tuli luua tavaline Gmaili konto, mis sisaldas samuti nulli, kuid mitte kasutajanime alguses.

Kas olete sattunud mĂ”nele naljakale olukorrale sĂŒsteemsete vÀÀrtuste töötlemisel? Jagage oma kogemusi kommentaarides.

AitÀh, et olete meiega. Kas teile meeldivad meie artiklid? Kas soovite nÀha rohkem huvitavat sisu? Toetage meid tellimuse esitamise vÔi tuttavatele soovitamisega, 30% allahindlus Habr'i kasutajatele ainulaadsele sissetuleku tasemel serverile, mille oleme teie jaoks vÀlja mÔelnud: Kogu tÔde VPS (KVM) E5-2650 v4 (6 tuuma) 10GB DDR4 240GB SSD 1Gbps alates $20 vÔi kuidas Ôigesti serverit jagada? (saadaval RAID1 ja RAID10 variandid, kuni 24 tuuma ja kuni 40GB DDR4).

Dell R730xd kaks korda odavam? Ainult meie juures 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB alates $199 Hollandis! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — alates $99! Lugege sellest Kuidas luua ettevĂ”tte tasemel infrastruktuuri, kasutades Dell R730xd E5-2650 v4 servereid, mille hind on 9000 eurot, taskukohase hinna eest?

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster