مخالفانہ آڈٹ
یہ ایک آڈٹ نہیں۔ یہ ایک نظم و ضبط ہے۔
کوئی بھی ایک بار سیکیورٹی جانچ چلا کر سبز نتیجے کا اسکرین شاٹ لے سکتا ہے۔ مشکل کام یہ ہے کہ سسٹم جیسے جیسے بڑھے، آپ اپنے ہی سسٹم پر بار بار حملہ کرتے رہیں اور ہر بار وہی جواب پائیں۔ تازہ ترین دور: ایک 50 ایجنٹس پر مشتمل آڈٹ، جس کی اصلاحات شپ کی گئیں۔ پھر ایک الگ 14 زاویوں سے مخالفانہ دوبارہ آڈٹ، جس میں ہر finding کو شمار ہونے سے پہلے ایک شکی جانچ کار کے سامنے ٹکنا پڑا۔ جو قائم رہتا ہے، وہ قائم رہتا ہے۔
تازہ ترین آڈٹ میں کیا شامل تھا
پہلے دائرہ کار، طریقہ اور حدود۔ ایجنٹوں کی تعداد بعد میں۔
تازہ ترین core آڈٹ سے، مورخہ 25 ستمبر 2026۔ ایجنٹوں کی تعداد بتاتی ہے کہ آڈٹ کتنا مصروف تھا، یہ نہیں کہ کتنا اچھا تھا، اس لیے یہاں وہ ہے جو اس آڈٹ نے اصل میں کیا۔
- کوڈ
- core package، 162 فائلیں اور 17,362 سطریں، ایک مقررہ commit پر، نیز gateway کا وہ کوڈ جو یہ جاننے کے لیے ضروری ہے کہ ہر path live ہے یا نہیں۔
- رسائی
- مکمل سورس، اور migrations سے بنایا گیا ایک تازہ ڈیٹا بیس۔ production ڈیٹا بیس نہیں؛ صرف production والی settings کو unverified نشان زد کیا گیا اور بعد میں میں نے انہیں جانچا۔
- طریقہ
- چار reviewers میں سے ہر ایک نے ایک layer مکمل پڑھی۔ ایک lead نے ہر دریافت کو فائل کے مقابل دوبارہ پڑھا، اور ہر timing یا pattern دعوے کو چلا کر دیکھا، اس سے پہلے کہ اسے شمار کیا جائے۔
- شدت
- HIGH کا مطلب ہے کسی live path پر چھوٹ جانے والا بحران یا denial of service، cross-tenant leak، یا پیسے کا نقصان۔ Medium کا مطلب ہے ایسا guard جو fail open ہو، بغیر کسی بنیاد کے بننے والا credit، یا خاموشی سے گرا ہوا ڈیٹا۔ ہر دریافت کو live یا latent بھی نشان زد کیا جاتا ہے: آج production میں قابل رسائی، یا نہیں۔
- اختلاف
- جو دریافت lead دوبارہ پیدا نہ کر سکا اسے خارج کر دیا گیا یا unverified نشان زد کیا گیا، اوسط میں شامل نہیں کیا گیا۔
- نتیجہ
- 2 HIGH اور 13 medium دریافتیں۔ سب اسی دن ٹھیک کی گئیں، ہر ایک کے ساتھ ایسا ٹیسٹ جو پرانے کوڈ پر fail ہوا، اور مکمل suite CI میں دوبارہ چلایا گیا۔
- شامل نہیں
- ترجمہ شدہ حفاظتی strings کی تقریباً 7,000 سطروں کی درستی، production ڈیٹا بیس، ویب سرور کی configuration، اور 17 low دریافتیں جو ابھی کھلی ہیں۔
میری ہدایت پر AI reviewers نے خود چلایا، آزاد third-party یقین دہانی نہیں۔
باقاعدگی
round کے بعد round، دوبارہ حملہ کیا گیا۔ نیچے دی گئی ہر cross-tenant دریافت ایک آڈٹ نے ڈھونڈی، کسی customer نے رپورٹ نہیں کی، اور اسے ٹھیک کیا گیا۔
✓ کراؤن جیولز ہر راؤنڈ میں برقرار رہے: آئسولیشن · رقم · گورننس · SSRF · ٹوکن ڈومینز
ان میں سے تین حقیقی
HIGH ٹیننٹس کے درمیان گفتگو کا لیک
چیٹ میموری کی کلید بھیجنے والا تھا، ٹیننٹ نہیں، اس لیے جو مہمان پلیٹ فارم کے ذریعے دو کاروباروں کو پیغام بھیجتا، اس کی ایک کاروبار سے گفتگو دوسرے کے پرامپٹ میں ظاہر ہو سکتی تھی۔ ٹھیک کر دیا گیا: ہسٹری کی کلید اب اسٹوریج لیئر پر کاروبار ہے، ایک ایسے ٹیسٹ کے ساتھ جو پرانی کلید واپس آنے پر فیل ہو جاتا ہے۔ یہ آڈٹ میں ملا، کسی گاہک نے رپورٹ نہیں کیا۔
HIGH ایک provider کا کسی caller کو خالی کر دینا
کراس ٹیننٹ ٹول اکانومی میں، ایک فراہم کنندہ کسی دیے گئے ٹول کی قیمت اس وقت کے بعد بڑھا سکتا تھا جب کوئی کالر اسے استعمال کرنا شروع کر چکا ہو، اور یوں اس کا بیلنس خالی کر سکتا تھا۔ درست کر دیا گیا: کالر ہر کال کی قیمت پر رضامندی دیتا ہے، fail-closed، رضامندی نہیں تو چارج نہیں، اور یہ ایک بھی کریڈٹ منتقل ہونے سے پہلے نافذ ہوتا ہے۔
HIGH میٹر کے پیچھے بحران
بلنگ کی جانچ کرائسس کی جانچ سے پہلے چلتی تھی، اس لیے کریڈٹ ختم ہو چکے کاروبار کو پیغام بھیجنے والے پریشان حال گاہک کو کرائسس لائن کے بجائے "دستیاب نہیں" ملتا تھا۔ ٹھیک کر دیا گیا: کرائسس سپورٹ مفت فراہم کی جاتی ہے، ہر حد اور چارج سے پہلے، گاہک کی ہر سطح پر۔
یہ زاویے ان شعبوں کا احاطہ کرتے ہیں: آئسولیشن · auth · انجیکشن · رقم · گورننس · بکنگ · چینلز · خودمختار ریزیڈنٹ · ڈیٹا کے حقوق (GDPR/PECR) · سائٹ جنریٹر · فرنٹ اینڈ · آپریشنز۔ فیصلہ، ہر راؤنڈ میں: صفر critical باقی؛ ٹیننٹ آئسولیشن اور XSS سطح صاف نکلیں؛ کوئی لائیو auth bypass نہیں: ہر تصدیق شدہ کمزور کنارہ ٹھیک کر کے دوبارہ ڈیپلائے کیا گیا۔
دیانت دار اعداد
ہر عدد، شرط پہلے سے ساتھ منسلک۔
زیادہ تر بنانے والے بات بڑھا چڑھا کر پیش کرتے ہیں۔ میں چاہوں گا کہ آپ ان حصوں پر بھروسہ کریں جو حقیقی ہیں، بجائے اس کے کہ ان حصوں سے متاثر ہوں جو حقیقی نہیں۔
یہ نظام دیانت دار ہے کیونکہ اسے ڈیزائن کرنے والا شخص دیانت دار ہے۔ میں نے شروع سے اس بات کو یقینی بنایا۔ یہ اندر سے بنا ہوا ہے، بعد میں اوپر سے جوڑا نہیں گیا۔
دعوت
اعداد قائم رہتے ہیں۔ شرائط سمیت۔
اگر آپ کو ایسا بلڈر چاہیے جو کسی کے کہنے سے پہلے اپنے ہی کام پر اتنی سختی سے حملہ کرے، اور سسٹم کے بڑھنے کے ساتھ یہ کرتا رہے، تو بات کرتے ہیں۔
آڈٹس کے بارے میں پوچھیں: کیا ملا، کیا ٹھیک ہو چکا ہے، کیا اب بھی کھلا ہے۔
- کیا چیز اب بھی کھلی ہے؟
- سب سے بری چیز کیا ملی؟
- یہ آڈٹ کس نے کیے؟