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

دو دعوے، اور ان میں سے صرف ایک زائر سے شروع ہوتا ہے

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

دوسرا دعوی ایک جزو کے بارے میں ہے: یہ فرض کیا جاتا ہے کہ گیٹ وے، یا اس کے پیچھے کی ایپلیکیشن کا عمل، کسی اور کے کنٹرول میں ہے۔ اس مفروضے سے سوال اس سے بدلتا ہے کہ کون سے URL کی اجازت ہے، اس طرف کہ عمل ابھی کون سے منزلوں اور شناختوں تک پہنچ سکتا ہے۔

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

ایک کام کیا ہوا خرچ سروس، اور وہ جن دو طریقوں سے ہارتا ہے

ایک خرچ سروس لیں: 10.60.4.10 پر عوامی گیٹ وے عملے کی تصدیق کرتا ہے اور منظور شدہ درخواستیں پورٹ 8443 پر ایپلیکیشن سننے والے کو بھیجتا ہے، اور وہ ایپلیکیشن expenses_app کردار کے طور پر 10.60.4.20:5432 پر ایک PostgreSQL سننے والے تک پہنچتی ہے۔ ملازمین کا مقصد عام اندرونی رسائی حاصل کرنا نہیں ہے۔ عام کارروائی میں ڈیزائن واقعی ڈیٹا بیس سننے والے کو کہیں بھی شائع کیے بغیر ایپلیکیشن کے لیے مخصوص داخلہ فراہم کرتا ہے۔ پتے اہم ہیں، کیونکہ اس مضمون کا ہر بعد کا معائنہ انہیں نام دیتا ہے۔

اب گیٹ وے کو قابل اعتماد مجموعے سے نکالیں۔ 10.60.4.10 کا عمل حملہ آور کا ہونے کے بعد وہ کن منزلوں تک پہنچ سکتا ہے؟ زائرین کو محدود کرنے والا URL فلٹر گیٹ وے میزبان کے ڈیٹا بیس ذیلی نیٹ کی طرف کھلنے والے رابطے کے بارے میں کچھ نہیں کہتا۔

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

ہر فریق کے اصل اختیار کا نقشہ بنائیں

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

ComponentAuthority it actually holdsCheck that proves the denialOwner of the check
Identity providerIssues assertions and session cookies, and holds no network path of its ownA request to the application URL without a session is redirected to the login pageIdentity team
Public gateway hostTCP reachability to whatever its routing table and egress rules permitAn egress rule drops 10.60.4.20:5432 and the probe reports the port filteredNetwork platform team
Application roleSQL privileges granted to expenses_app inside the expenses databaseA privilege query shows no ownership or create right on any other schemaApplication team
Database listenerAccepts connections only from the source ranges named in its host-based rulesA connection from an unlisted address is refused before authenticationDatabase administrator
Management pathAdministrative access reserved for patching, monitoring and recoveryA staff workstation cannot reach the administrative port or jump through itPlatform owner

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

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

دعوی کرنے کے بجائے گنیں کہ گیٹ وے کہاں تک پہنچ سکتا ہے

حد کا دعوی اس کے پیچھے کی گنتی جتنا ہی اچھا ہوتا ہے۔ گیٹ وے میزبان پر تین احکام راستے کے انتخاب، براہ راست جانچ اور اخراج کی پالیسی کا احاطہ کرتے ہیں:

ip route get 10.60.4.20
nc -zv 10.60.4.20 5432
sudo nft list chain inet filter output

آؤٹ پٹ اسی ترتیب میں پڑھیں۔ راستہ بتاتا ہے کہ 10.60.4.20 اس میزبان سے منتخب ہوتا ہے یا نہیں؛ جانچ بتاتی ہے کہ سننے والا جواب دیتا ہے یا نہیں؛ قواعد کی فہرست دکھاتی ہے کہ پالیسی پیکٹ روکتی ہے یا اس کے راستے میں کبھی کچھ نہیں تھا۔

ایپلیکیشن میزبان سے گنتی دہرائیں۔ وہاں سے ڈیٹا بیس کا پہلو ایپلیکیشن کردار کے طور پر چلائی گئی ایک استفسار ہے:

psql -h 10.60.4.20 -U expenses_app -d expenses -c 'select rolname, rolsuper, rolcreatedb from pg_roles'

دوسری اسکیمہ پڑھ نہ سکنے والے کردار کے تحت کامیاب رابطہ مالک کردار کے تحت کامیاب رابطے سے مختلف نتیجہ ہے۔ صرف دوسرا ہی ایک دریافت ہے۔

انکار درج کریں، پھر جائزے کو تاریخ دیں

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

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

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

متعلقہ مضامین