Emuārs

Kāpēc mazuļa uzraudzības lietotnēm nepieciešams pārbaudāms drošības pamats

Ar labu sajūtu vien mazuļa uzraudzībai nepietiek. Būtiskākajām daļām jābūt pārbaudāmām.

Problēma: akla uzticēšanās

Kad instalējat mazuļa uzraudzības lietotni, jūs tai dodat piekļuvi ļoti privātai vietai — sava mazuļa istabai. Lietotne klausās, un dažkārt tā arī skatās. Vienlaikus vecāki bieži neredz, kas notiek fonā: vai straumes iet caur trešo pušu serveriem, vai tiek vākti lietošanas dati, kam tehniski ir piekļuve šai informācijai?

Godīgā atbilde: daudzās lietotnēs jūs to nezināt. Kods ir slēgts, un arhitektūra paliek tikai apgalvojums. Galu galā jums tiek prasīts uzticēties pakalpojuma sniedzējam.

Slēgts kods, atvērtas ievainojamības

Pēdējos gados ir bijis pietiekami daudz ziņojumu par uzlauztiem mazuļu monitoriem. Svešinieki varēja klausīties, pārvietot kameras vai runāt caur skaļruņiem. Visbiežāk tie nebija sarežģīti uzbrukumi, bet gan nopietnas kļūdas: nešifrēti savienojumi, noklusējuma paroles, trūkstoša autentifikācija.

Izmantojot slēgtu programmatūru, cilvēki no malas šīs vājās vietas bieži pamana tikai pēc tam, kad kaut kas jau ir noticis. Drošības pētnieki, neatkarīgie izstrādātāji un vecāki redz gatavu produktu tikai no ārpuses. Ierīcei mazuļa istabā tas ir vājš modelis.

Pārredzamība kā drošības princips

Informācijas drošībā pastāv sens un noderīgs noteikums: Kerckhoffa princips. Drošība nedrīkst būt atkarīga no tā, ka sistēmas uzbūve tiek turēta noslēpumā. Sistēmai jāpaliek drošai arī tad, ja kāds zina, kā tā ir izveidota.

Atklāti dokumentēts kods pats par sevi nepadara programmatūru drošu. Taču tas ļauj pārbaudīt apgalvojumus. Cilvēki, kuri pārzina šo jomu, var pārbaudīt datu plūsmas, atslēgu atvasināšanu un noteikumus, nevis tikai lasīt mārketinga tekstus.

Timmy pieeja: nošķirts drošības kodols

Timmy es tagad ļoti skaidri nošķiru tās daļas, kas patiesi ir kritiskas drošībai. Ne katra saskarnes rindiņa nosaka, vai produkts ir uzticības vērts. Izšķirošās daļas ir aizmugursistēmas loģika, signalizācijas līgumi, savienošanas pārī kriptogrāfija un jautājums par to, kuri dati nonāk serverī.

Tāpēc drošības kodols tagad atrodas publiskajā baby-monitor-timmy-core repozitorijā. Pilns lietotnes kods pašlaik nav publisks. Drošībai kritiskie pamatelementi ir nodalīti no saskarnes un produkta loģikas, lai tos varētu atsevišķi dokumentēt un pārbaudīt.

Ko tas nozīmē praksē?

Secinājums: vecāki ir pelnījuši pārredzamību

Ja lietotnei ir piekļuve mazuļa istabai, tai skaidri jāatbild uz būtiskajiem jautājumiem: kādi dati tiek radīti? Kur tie nonāk? Kas tos var lasīt? Vecāki ir pelnījuši vairāk nekā tikai privātuma zīmi kājenē.

Baby Monitor Timmy jāparāda, ka labs produkts un pārbaudāma drošība var iet kopā. Man tas nenozīmē publiskot katru lietotnes stūrīti. Tas nozīmē atvērt tās daļas, kas nosaka savienošanu pārī, signalizāciju, piekļuvi aizmugursistēmai un datu plūsmas.


Vairāk rakstu