آئی فون پر دستخط شدہ VPN پروفائل انسٹال کر رہے ہیں؟ پے لوڈز پڑھیں
دستخط شدہ پروفائل صرف یہ ثابت کرتا ہے کہ اسے کس نے پیک کیا، یہ نہیں کہ وہ کیا انسٹال کرتا ہے۔ کسی VPN یا روٹ CA پر بھروسا کرنے سے پہلے لفافہ، ہر پے لوڈ اور ہر سرٹیفکیٹ کا جائزہ لیں۔
پروفائلز Settings میں ایک نام، ایک دستخط کنندہ اور Install بٹن کے ساتھ آتے ہیں، اور دستخط کنندہ کی سطر وہی حصہ ہے جو زیادہ تر لوگ پڑھتے ہیں۔ وہ سطر صرف ایک سوال کا جواب دیتی ہے: دستخط کی تصدیق کے قواعد کے مطابق یہ ترتیبات کس نے پیک کیں۔ یہ نہیں بتاتی کہ VPN پے لوڈ آپ کے آجر کے گیٹ وے کی طرف اشارہ کرتا ہے، یا یہ کہ شامل روٹ سرٹیفکیٹ آپ کے TLS ٹرسٹ اسٹور میں شامل ہونا چاہیے۔ نیچے دیا گیا جائزہ پیکیج کو اسی ترتیب سے کھولتا ہے جس ترتیب سے ڈیوائس اسے لاگو کرے گی۔
لفافے سے شروع کریں: اس پروفائل پر کس نے دستخط کیے
iOS پر پروفائل Settings، General، VPN اور Device Management کے تحت نظر آتا ہے، اور دستخط کنندہ کا نام Install بٹن کے اوپر لکھا ہوتا ہے۔ کچھ بھی چھونے سے پہلے وہ نام پڑھیں اور پوچھیں کہ کیا یہ وہی ادارہ ہے جس سے آپ ترتیبات ملنے کی توقع رکھتے تھے۔ کسی اجنبی فریق کا درست دستخط بھی درست دستخط ہی ہوتے ہیں، اور وہ ان کی ترتیب کو اختیار دیتے ہیں، آپ کی نہیں۔ یہی اسکرین یہ بھی بتاتی ہے کہ پروفائل پر دستخط ہیں یا نہیں۔
اگر فائل آپ کے Mac پر ہے تو اسے فون تک پہنچنے سے پہلے دیکھ لیں۔ سیکیورٹی ٹول CMS لفافہ کھولتا ہے اور وہ plist چھاپتا ہے جو ڈیوائس پڑھے گی، یعنی وہی مواد بغیر کسی Install بٹن کے درمیان میں۔ ایپل کی کنفیگریشن نافذ کرنے سے متعلق دستاویزات دستخط کو اصل کی تصدیق قرار دیتی ہیں، اور یہی وہ دائرہ ہے جس کی یہاں بات ہو رہی ہے۔
security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist
اگر دستخط کنندہ وہ نہیں جس کی آپ توقع رکھتے تھے، یا فائل پر دستخط نہیں اور وہ ایسے ذریعے سے آئی ہے جو اس کی ضمانت نہیں دے سکتا، تو یہیں رک جائیں۔ اس جائزے کا کوئی بھی بعد کا مرحلہ کسی غیر قابل اعتماد لفافے کو قابل اعتماد نہیں بناتا۔
ہر پے لوڈ کھولیں اور لکھیں کہ وہ کیا انسٹال کرتا ہے
پروفائل ایک کنٹینر ہے، اور دلچسپ حصہ اس کے اندر موجود PayloadContent صف ہے۔ ہر اندراج میں ایک PayloadType ہوتا ہے جو بتاتا ہے کہ ڈیوائس کیا انسٹال کرے گی: منظم VPN کنفیگریشن، PKCS#12 شناخت، روٹ سرٹیفکیٹ، یا مدیریتی اندراج۔ کوئی بھی ترتیب پڑھنے سے پہلے اقسام چھاپ لیں۔
plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
grep -E 'PayloadType|PayloadDisplayName'
VPN پے لوڈ ایک کنکشن کا نام بتاتا ہے: سرور کا پتہ، تصدیق کا طریقہ، اور ممکنہ طور پر فی ایپ یا on-demand قاعدہ۔ شناخت کا پے لوڈ وہ کلائنٹ اسناد مہیا کرتا ہے جو یہ کنکشن پیش کرے گا۔ روٹ سرٹیفکیٹ کا پے لوڈ ایک ٹرسٹ اینکر شامل کرتا ہے، اور مدیریتی پے لوڈ جاری کنٹرول کسی سرور کے حوالے کر دیتا ہے۔ یہ چار الگ الگ وعدے ہیں، اور دستخط پیکیج کو ڈھانپتے ہیں، ہر ایک کی الگ ضمانت نہیں دیتے۔ انہیں اسی ترتیب سے پڑھیں، کیونکہ VPN شناخت کے بغیر بے کار ہے اور شناخت کا مطلب کم ہے اگر آپ نہ جانیں کہ اسے کس نے جاری کیا۔
فائل پر پاس ورڈ کی حفاظت پھر ایک الگ خصوصیت ہے۔ خفیہ کردہ پیکیج مواد کو پاس ورڈ نہ رکھنے والے سے چھپاتا ہے؛ یہ فیصلہ نہیں کرتا کہ آپ کو اندر کے مواد کی اجازت دینی چاہیے یا نہیں۔ پاس ورڈ کو ترسیل کا ذریعہ سمجھیں، جائزہ نہیں۔
سرٹیفکیٹس کو اس کنکشن تک لے جائیں جو انہیں استعمال کرتا ہے
پیکیج میں موجود سرٹیفکیٹس کی فہرست بنائیں اور ہر ایک کو ایک کام سے جوڑیں۔ کلائنٹ سرٹیفکیٹ اس ڈیوائس کی شناخت گیٹ وے کے سامنے کرتا ہے، جس CA نے اسے جاری کیا وہ اس کنکشن کی ٹرسٹ چین میں آتا ہے، اور پراکسی یا اندرونی سروس کے لیے نصب روٹ خود بخود ہر HTTPS سائٹ کا اینکر نہیں ہوتا۔ iOS پر ہاتھ سے نصب روٹ TLS کے لیے غیر قابل اعتماد رہتا ہے جب تک آپ اسے Settings، About، Certificate Trust Settings میں فعال نہ کریں، جبکہ مدیریت کے ذریعے پہنچایا گیا روٹ اس مرحلے کے بغیر قابل اعتماد سمجھا جاتا ہے۔ یہی فرق بتاتا ہے کہ پے لوڈ کا مقصد کیوں اہم ہے۔
openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates
جو فراہم کنندہ آپ کا ٹریفک لے کر جاتا ہے وہ اسی وجہ سے آپ کی دیکھی ہر ویب سائٹ کا TLS اینڈ پوائنٹ نہیں ہے۔ درمیان میں دیکھنے کے لیے ٹریفک کا راستہ اور ایسا ٹرسٹ اینکر درکار ہے جو ایپلیکیشن قبول کرے، اور ایک سرٹیفکیٹ رکھنے والا پروفائل دونوں میں سے کچھ ثابت نہیں کرتا۔ یہ فرض کرنے کے بجائے کہ پروفائل انسٹال کرنے سے سب کچھ ڈکرپٹ ہو جاتا ہے، پوچھیں کہ کون سا کنکشن یہ سرٹیفکیٹ استعمال کرتا ہے اور کون سی ایپلیکیشنز اسے قبول کریں گی۔
انسٹال کے بعد: تصدیق کریں، اور جانیں کہ ہٹانا کیا کرتا ہے
پروفائل انسٹال ہونے کے بعد اس کی تصدیق ڈیوائس سے کریں، ڈاؤن لوڈ کی گئی فائل سے نہیں۔ سیٹنگز کی اسکرین نصب شدہ پروفائل، اس کے دستخط کنندہ اور اس کے پے لوڈز کی فہرست دکھاتی ہے، اور VPN اسکرین بتاتی ہے کہ کنکشن مطلوبہ طریقے سے ترتیب دیا گیا ہے یا نہیں۔ ڈاؤن لوڈ شدہ فائل حذف کرنے سے کچھ نہیں ہٹتا؛ نصب شدہ کنفیگریشن ایک الگ شے ہے۔
profiles show -type configuration
scutil --nc list
اگر پروفائل میں مدیریتی اندراج شامل ہے تو ہٹانے کے نتائج انسٹال کرنے سے پہلے پڑھیں، بعد میں نہیں۔ وہ اندراج ہٹانے سے اس کی وابستہ کنفیگریشنز بھی چلی جاتی ہیں اور منظم ایپس بھی ہٹ سکتی ہیں، انحصار اس بات پر ہے کہ ڈیوائس کیسے اندراج ہوئی تھی۔ یہ کوئی مرمت کا مرحلہ نہیں جسے سرٹیفکیٹ غلط لگنے پر آزمانا چاہیے۔ کچھ ہٹانے سے پہلے منتظم سے پوچھیں کہ مسئلہ کس پے لوڈ کا ہے۔
یہ جائزہ چار الگ جوابوں پر ختم ہوتا ہے: پیکیج پر کس نے دستخط کیے، یہ کون سے پے لوڈز انسٹال کرتا ہے، ہر کنکشن کون سی شناخت اور بھروسا استعمال کرتا ہے، اور ہٹانے میں کیا ساتھ جائے گا۔ انہیں الگ رکھیں تو دستخط شدہ پروفائل سبز ٹک کی بجائے ایک جائزہ شدہ فیصلہ بن جاتا ہے۔