Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa
Ovo sam ja, pišem skriptu za nabrajanje parametara za POST zahtjev za gov.tr, sjedim ispred granice s Hrvatskom.

Kako je sve počelo

Moja žena i ja putujemo svijetom i radimo na daljinu. Nedavno smo se preselili iz Turske u Hrvatsku (najbolja točka za posjet Europi). Kako ne biste otišli u karantenu u Hrvatskoj, morate imati potvrdu o negativnom covid testu napravljenu najkasnije 48 sati prije ulaska.

Saznali smo da je relativno isplativo (2500 rubalja) i brzo (svi rezultati dolaze u roku od 5 sati) napraviti test u zračnoj luci u Istanbulu, odakle smo upravo odletjeli.

Stigli smo u zračnu luku 7 sati prije polaska, pronašli točku za testiranje. Sve rade kaotično: dođeš, daš putovnicu, platiš, dobiješ 2 naljepnice s barkodom, odeš u mobilni laboratorij, gdje ti uzmu jednu od tih naljepnica za identifikaciju analize. Nakon što odete, a oni vam kažu: idite na ovu stranicu: enabiz.gov.tr/PcrTestSonuc, unesite svoj barkod i posljednje 4 znamenke putovnice, nakon nekog vremena bit će rezultat.

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Ali ako unesete podatke odmah nakon prolaska analize, stranica daje pogrešku.

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa
Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Već tada su mi se u glavu uvukle misli o "lijepom" UX-u, u kojem, uz bilo kakvu pogrešku operatera koji je unio podatke o putovnici, ne postoji način da saznate svoj rezultat.

Prije polaska

Dođe vrijeme polaska, upišem svoje podatke i vidim da su dokumenti za njih već tu, iako rezultata testa još nema.

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa
Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Čak je jasno da su analize stigle u laboratorij prije 1.5 sat. Ali unos podataka moje supruge i dalje daje grešku da unos nije pronađen. I što je najvažnije, nećete moći samo otići i pitati što nije u redu, jer. Prošli smo test u zoni prije pasoške kontrole.

Pri ukrcaju na let tražili smo rezultate testova, ali smo, srećom, uspjeli uvjeriti predstavnika zračne luke da će se uskoro pojaviti (pokazao im barkodove), a u krajnjem slučaju idemo u karantenu.

Čim sam ušao u avion, moja šifra je pokazala da imam negativan test.

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Po dolasku

I tu zabava počinje! Čim smo doletjeli i spojili se na lokalni WiFi, pokazalo se da zapisa moje žene nema u bazi podataka. I na samoj granici dokumentima se pristupilo vrlo pažljivo: graničar je napravio test na koronavirus i odnio ga u posebnu prostoriju kako bi provjerio njegovu stvarnost. Odlučili smo da ćemo ispričati našu priču o povjerenju onakvu kakva jest i saznati koje opcije imamo.

Dok smo stajali u redu, odlučio sam provjeriti jesu li podaci točni (moji) i netočni, kako reagira validacijska stranica.

Ispostavilo se da ona šalje zahtjev za objavu na www.enabiz.gov.tr/PcrTestSonuc/GetPcrRaporVerifyWithKimlik, sa sljedećim parametrima:

crtični kod br=XX
kimlikNo=YY
kimlikTipi=2
gdje crtični kod br – broj crtičnog koda, kimlikBr - Broj putovnice, kimlik Tipi – fiksni parametar jednak 2 (ako su popunjena samo prva dva polja). Nikakvi žetoni nisu bili vidljivi. Zahtjev je vratio 1 za točne parametre (moje podatke) i 0 za netočne.

Od poštara sam pokušao sortirati 40 kombinacija (odjednom greška od jednog znaka), ali ništa.

U tom trenutku prišli smo graničaru, on je saslušao našu priču i predložio karantenu. Ali očito nismo htjeli sjediti u stanu 14 dana, pa smo zamolili da malo pričekamo u tranzitnoj zoni kako bismo pokušali riješiti problem u par sati. Graničar je ušao na našu poziciju, otišao vidjeti možemo li sjesti u bijelu zonu i, uz suglasnost načelnika, rekao: “dobro, samo par sati”.

Počeo sam tražiti telefone onih koji su radili crown test, a paralelno sam odlučio testirati ludu hipotezu: ako ovaj sustav ima tako užasan UX, onda sigurnosni sustav ne bi trebao biti dobar, iako gov.tr domena.

Kao rezultat toga, dok sam sjedio na pozivima, napisao sam malu skriptu koja je poredala sve brojeve od 0000 do 9999 u polju kimlikNo. barkodNo imali smo na naljepnici, tako da nije moglo biti pogrešno.

Zamislite moje iznenađenje kada čak ni nakon 500 kontinuiranih zahtjeva nisam bio baniran, a skripta je nastavila raditi brzinom od 20 zahtjeva u sekundi s WiFi-ja zračne luke.

Pozivi nisu dali previše uspjeha: preusmjeravali su me s jednog odjela na drugi. Ali vrlo brzo skripta je dala željenu vrijednost 6505, koja uopće nije bila poput stvarnih 4 znamenke putovnice.

Nakon učitavanja dokumenta pokazalo se da to očito nije putovnica moje supruge (ruski stranci nemaju čak ni takve brojeve), ali svi ostali podaci (uključujući ime, prezime i datum rođenja) su točni.

Kako nas je loše osmišljen korisnički doživljaj na testu na koronavirus skoro stavio u samoizolaciju, ali spasila nas je sigurnosna rupa

Najzanimljivije je to što barkodovi također nisu nasumični, već idu gotovo jedan po jedan. Tako bih teoretski mogao pronaći kontakte koji su dobili broj putovnice moje supruge i općenito glatko ispumpavati privatne podatke drugih ljudi.

Ali bilo je 9 ujutro i noć bez sna, zakasnio sam na online sastanak i bilo mi je drago što su nas pustili bez karantene, tako da sam tek krenuo na svoje putovanje po Europi.

Izvor: www.habr.com

Dodajte komentar