Мәселе: соқыр сенім
Бала мониторы қолданбасын орнатқанда, оған өте жеке кеңістікке — сәбиіңіздің бөлмесіне — қолжетімділік бересіз. Қолданба дыбысты тыңдайды, кейде бейнені де көрсетеді. Ал ата-аналар көбіне фондық режимде не болып жатқанын көре алмайды: ағындар үшінші тарап серверлері арқылы өте ме, пайдалану деректері жинала ма, техникалық тұрғыдан кімнің қандай да бір дерекке қолы жете алады?
Шынайы жауап: көптеген қолданбада мұны білмейсіз. Код жабық, ал архитектура жай ғана уәде болып қалады. Соңында провайдерге сенуіңіз сұралады.
Жабық код, ашық осал тұстар
Соңғы жылдары бұзылған бала мониторлары туралы хабарлар аз болған жоқ. Бейтаныс адамдар тыңдап, камераларды басқарып немесе динамик арқылы сөйлей алған. Көбіне бұл күрделі шабуылдар емес, өрескел қателер еді: шифрланбаған қосылымдар, әдепкі құпиясөздер, аутентификацияның болмауы.
Жеке меншікті бағдарламалық жасақтамада сыртқы мамандар мұндай әлсіздіктерді көбіне бірдеңе болғаннан кейін ғана көреді. Қауіпсіздік зерттеушілері, тәуелсіз әзірлеушілер және ата-аналар дайын өнімге сыртынан қарайды. Балалар бөлмесіндегі құрылғы үшін бұл әлсіз тәсіл.
Қауіпсіздік қағидасы ретіндегі ашықтық
Ақпараттық қауіпсіздікте ескі әрі пайдалы бір ереже бар: Керкгоффс қағидасы. Қауіпсіздік жүйе құрылысының құпия болып қалуына тәуелді болмауы тиіс. Жүйенің қалай жасалғанын біреу білсе де, ол қауіпсіз болып қалуы керек.
Ашық құжатталған код бағдарламаны өздігінен қауіпсіз етпейді. Бірақ ол мәлімдемелерді тексеруге мүмкіндік береді. Саланы түсінетін мамандар маркетингтік мәтінді оқумен шектелмей, деректер ағындарын, кілттерді шығару тәсілін және ережелерді тексере алады.
Timmy тәсілі: бөлек қауіпсіздік өзегі
Timmy-де қауіпсіздікке шын мәнінде маңызды бөліктерді енді өте нақты ажыратамын. Интерфейстегі әр жол өнімнің сенімге лайық екенін шешпейді. Шешуші бөліктер — серверлік логика, сигналдау келісімшарттары, жұптастыру криптографиясы және серверге қандай деректің жететіні.
Сондықтан қауіпсіздік өзегі енді ашық baby-monitor-timmy-core репозиторийінде. Қолданбаның толық коды әзірге ашық емес. Қауіпсіздікке маңызды құрамдастар интерфейс пен өнім логикасынан бөлініп, жеке құжатталып және тексерілуі үшін шығарылды.
Бұл іс жүзінде нені білдіреді?
- Нақты шекаралар: қауіпсіздік құрамдастары интерфейс пен өнім логикасынан бөлінген.
- Тексеруге болатын деректер ағындары: жұптастыруды, сигналдауды және серверлік интерфейстерді бөлек құжаттауға болады.
- Жасырын трекерлер жоқ: маңызды жолдарда техникалық тұрғыдан қажет нәрсе ғана бар.
- Ұзақ мерзімді қолдауға ыңғайлылық: бөлек өзекті тексеру ретсіз монолитке қарағанда оңайырақ.
Қорытынды: ата-аналар ашықтыққа лайық
Қолданба балалар бөлмесіне қол жеткізе алса, маңызды сұрақтарға нақты жауап беруі керек: Қандай деректер жасалады? Олар қайда барады? Оларды кім оқи алады? Ата-аналар сайттың төменгі жағындағы құпиялылық белгішесінен де артыққа лайық.
Baby Monitor Timmy жақсы өнім мен аудиттен өтуге болатын қауіпсіздік бір-бірімен үйлесе алатынын көрсетуі керек. Мен үшін бұл қолданбаның әр бұрышын ашық ету деген сөз емес. Бұл жұптастыруды, сигналдауды, серверлік қолжетімділікті және деректер ағындарын шешетін бөліктерді ашу дегенді білдіреді.