بلاگ

بیبی مانیٹر ایپس کو قابلِ جانچ سکیورٹی کور کی ضرورت کیوں ہے

بیبی مانیٹر کے لیے صرف اچھا محسوس ہونا کافی نہیں۔ اہم حصوں کا جائزہ لیا جا سکنا چاہیے۔

مسئلہ: اندھا اعتماد

جب آپ بیبی مانیٹر ایپ انسٹال کرتے ہیں تو آپ اسے ایک بہت نجی جگہ، یعنی اپنے بچے کے کمرے، تک رسائی دیتے ہیں۔ ایپ سنتی ہے اور کبھی کبھار دیکھتی بھی ہے۔ ساتھ ہی والدین عموماً نہیں دیکھ پاتے کہ پسِ منظر میں کیا ہو رہا ہے: کیا اسٹریمز تھرڈ پارٹی سرورز سے گزرتی ہیں، کیا استعمال کا ڈیٹا جمع کیا جاتا ہے، اور تکنیکی طور پر کس کو کسی چیز تک رسائی حاصل ہو سکتی ہے؟

ایماندارانہ جواب یہ ہے کہ بہت سی ایپس میں آپ کو معلوم ہی نہیں ہوتا۔ کوڈ بند ہوتا ہے اور آرکیٹیکچر محض ایک دعویٰ رہ جاتا ہے۔ آخر میں آپ سے فراہم کنندہ پر یقین کرنے کو کہا جاتا ہے۔

بند کوڈ، کھلی کمزوریاں

گزشتہ برسوں میں ہیک کیے گئے بیبی مانیٹرز کی کافی رپورٹس سامنے آ چکی ہیں۔ اجنبی لوگ سن سکتے تھے، کیمروں کو حرکت دے سکتے تھے، یا اسپیکرز کے ذریعے بول سکتے تھے۔ زیادہ تر یہ کوئی غیرمعمولی حملے نہیں تھے بلکہ سنگین خامیاں تھیں: غیر رمز شدہ کنکشنز، ڈیفالٹ پاس ورڈز، اور تصدیق کی کمی۔

ملکیتی سافٹ ویئر میں باہر کے لوگوں کو اکثر ان کمزوریوں کا پتا تب چلتا ہے جب کچھ ہو چکا ہوتا ہے۔ سکیورٹی محققین، آزاد ڈویلپرز اور والدین تیار شدہ پروڈکٹ کو باہر سے دیکھتے ہیں۔ بچے کے کمرے میں استعمال ہونے والے آلے کے لیے یہ کمزور ماڈل ہے۔

سکیورٹی کے اصول کے طور پر شفافیت

معلوماتی سکیورٹی کا ایک پرانا اور مفید اصول ہے: کیرک ہوفس کا اصول۔ سکیورٹی کا انحصار اس بات پر نہیں ہونا چاہیے کہ ڈیزائن راز رہے۔ نظام کو اس وقت بھی محفوظ رہنا چاہیے جب کسی کو معلوم ہو کہ وہ کیسے بنایا گیا ہے۔

عوامی طور پر دستاویزی کوڈ خودبخود سافٹ ویئر کو محفوظ نہیں بناتا۔ مگر اس سے دعووں کی جانچ ممکن ہوتی ہے۔ اس شعبے کو سمجھنے والے لوگ مارکیٹنگ کے متن کے بجائے ڈیٹا فلو، کلید اخذ کرنے کے طریقے اور قواعد کا جائزہ لے سکتے ہیں۔

Timmy کا طریقہ: الگ سکیورٹی کور

Timmy میں اب میں بہت واضح طور پر الگ کرتا ہوں کہ کون سے حصے واقعی سکیورٹی کے لحاظ سے اہم ہیں۔ UI کی ہر لائن یہ طے نہیں کرتی کہ پروڈکٹ اعتماد کے قابل ہے یا نہیں۔ فیصلہ کن حصے بیک اینڈ لاجک، سگنلنگ کنٹریکٹس، پیئرنگ کرپٹوگرافی، اور یہ سوال ہیں کہ کون سا ڈیٹا سرور تک پہنچتا ہے۔

اسی لیے سکیورٹی کور اب عوامی baby-monitor-timmy-core repositoryمیں موجود ہے۔ فی الحال مکمل ایپ کا کوڈ عوامی نہیں ہے۔ سکیورٹی کے اہم بلڈنگ بلاکس کو UI اور پروڈکٹ لاجک سے الگ کیا گیا ہے تاکہ ان کی اپنی دستاویزات بن سکیں اور ان کا جائزہ لیا جا سکے۔

اس کا عملی مطلب کیا ہے؟

نتیجہ: والدین شفافیت کے حق دار ہیں

جب کسی ایپ کو بچے کے کمرے تک رسائی حاصل ہو تو اسے اہم سوالوں کے واضح جواب دینے چاہییں: کون سا ڈیٹا بنتا ہے؟ وہ کہاں جاتا ہے؟ اسے کون پڑھ سکتا ہے؟ والدین فوٹر میں صرف ایک پرائیویسی بیج سے زیادہ کے حق دار ہیں۔

Baby Monitor Timmy کو یہ دکھانا چاہیے کہ ایک اچھی پروڈکٹ اور قابلِ جانچ سکیورٹی ساتھ چل سکتے ہیں۔ میرے لیے اس کا مطلب ایپ کے ہر کونے کو عوامی کرنا نہیں۔ اس کا مطلب ان حصوں کو کھولنا ہے جو پیئرنگ، سگنلنگ، بیک اینڈ رسائی اور ڈیٹا فلوز کا فیصلہ کرتے ہیں۔


مزید مضامین