جنریٹو AI (GenAI) ایپلی کیشن کی سیکیورٹی کا آغاز اعتماد کی حد (trust boundary) کے تعین سے ہوتا ہے۔ اعتماد کی حد وہ لکیر ہے جہاں کوئی مختلف آپریٹر یا پالیسی سیٹ کسی درخواست (request) کا مشاہدہ کر سکتا ہے، اسے تبدیل کر سکتا ہے، یا اسے روک سکتا ہے۔
اس کورس میں، ہم ایک ایسی GenAI ایپلی کیشن کو محفوظ بناتے ہیں جو پرامپٹس (prompts) بھیجتی ہے، نجی ڈیٹا حاصل کرتی ہے، ٹولز کو استعمال کرتی ہے اور آؤٹ پٹ فراہم کرتی ہے۔ اس کی سیکیورٹی کا کام روایتی ایپس سے مختلف ہے کیونکہ ماڈل کے ان پٹ اور آؤٹ پٹ کو ہدایات سے قابلِ اعتماد طریقے سے الگ نہیں کیا جا سکتا۔
ہم ماڈل کے آؤٹ پٹ کو ہر اس ‘ڈاؤن اسٹریم’ (downstream) سسٹم کے لیے غیر محفوظ ان پٹ سمجھتے ہیں جو اس کا تجزیہ کرتا ہے یا اس پر عمل کرتا ہے۔ یہ ایک مفروضہ ڈیٹا کے غیر مجاز اخراج (exfiltration) اور ٹولز کے غلط استعمال کے بہت سے ایسے واقعات کو روکتا ہے جن سے بچا جا سکتا ہے۔
GenAI ایپ میں بھی وہی بنیادی سطحیں (surfaces) ہوتی ہیں جو کسی بھی ویب ورک لوڈ میں ہوتی ہیں۔ اسے بھی شناخت (identity)، نیٹ ورک کی تقسیم (segmentation)، انکرپشن، لاگنگ اور واقعے پر ردعمل (incident response) کی ضرورت ہوتی ہے۔
GenAI ایپ پرامپٹس، بازیافت کے سیاق و سباق (retrieval context)، ٹول کے دلائل (arguments) اور ماڈل کے آؤٹ پٹ کے ذریعے خطرات یا رسائی کے نئے راستے (exposures) پیدا کرتی ہے۔ ان راستوں میں حساس ڈیٹا ہو سکتا ہے، چاہے فراہم کنندہ (provider) اس بات کا عہد ہی کیوں نہ کرے کہ وہ ان پٹ ڈیٹا پر ماڈل کی تربیت (training) نہیں کرے گا۔
تھریٹ ماڈلنگ (threat modeling) میں پہلا کام اس اثاثے (asset) اور اس کی حفاظت کرنے والی حد کا نام متعین کرنا ہے۔ GenAI میں، سب سے زیادہ اہم اور قیمتی اثاثے نجی نوعیت کا متن (proprietary text)، اسناد (credentials) اور ٹولز کی صلاحیتیں ہیں۔
کلاؤڈ کی ذمہ داری اس بات پر منحصر ہوتی ہے کہ ماڈل کو کس طرح استعمال کیا جا رہا ہے۔ استعمال کا طریقہ (consumption mode) وہ آپریشنل انتخاب ہے جو یہ طے کرتا ہے کہ ماڈل کو کون چلاتا ہے اور اس کے رن ٹائم تک کس کی رسائی ہو سکتی ہے۔
ہم عام طریقوں کو ان زمروں میں تقسیم کر سکتے ہیں: ہوسٹڈ ماڈل API کو کال کرنا، مینیجڈ ماڈل کو حسب ضرورت بنانا (customizing)، مینیجڈ AI پلیٹ فارم پر تعمیر کرنا، اور ماڈل ویٹس (weights) کو خود ہوسٹ کرنا۔ خود ہوسٹنگ کی طرف ہر قدم اس دائرہ کار کو بڑھاتا ہے جسے ہمیں براہ راست محفوظ بنانا ہوتا ہے۔
ایک فراہم کنندہ ماڈل سروس کو چلا سکتا ہے اور پھر بھی ایپلی کیشن کی اعتماد کی حد سے باہر رہ سکتا ہے۔ ایپلی کیشن ٹیم کے پاس اب بھی پرامپٹ ہینڈلنگ، بازیافت کی فلٹرنگ، ٹول کی اجازت (authorization) اور آؤٹ پٹ ہینڈلنگ کی ذمہ داری ہوتی ہے۔
اب ہم جائزہ لے سکتے ہیں کہ ان طریقوں کے درمیان ملکیت کیسے تبدیل ہوتی ہے۔
ہم اس کورس کے بقیہ حصے کی بنیاد حدود کے ایک چھوٹے سے مجموعے پر رکھتے ہیں۔ ہر حد کنٹرول کے نفاذ اور بعد ازاں شواہد کی تصدیق کے لیے ایک مقام کا کام دیتی ہے۔ شناخت کی حد (Identity boundary): اس سے مراد یہ ہے کہ کون سا ‘پرنسپل’ (صارف یا سسٹم) کس اجازت کے ساتھ API کو کال کر سکتا ہے۔ اس حد میں ورک لوڈ کے اسناد (credentials)، سیشن کا دائرہ کار، اور ہر ٹول کال پر اجازت (authorization) کی جانچ شامل ہے۔ نیٹ ورک کی حد (Network boundary): اس سے مراد وہ مقام ہے جہاں پیکٹ کی سطح پر ٹریفک کا بہاؤ ممکن ہے۔ اس حد میں نجی رابطے (private connectivity)، باہر جانے والے ڈیٹا (egress) پر پابندیاں، اور یہ بات شامل ہے کہ آیا کوئی سروس عوامی انٹرنیٹ سے قابلِ رسائی ہے یا نہیں۔ ڈیٹا کی حد (Data boundary): اس سے مراد وہ اسٹوریج سسٹمز اور لاگز ہیں جو پرامپٹس (prompts)، حاصل کردہ سیاق و سباق (context)، اور آؤٹ پٹس کو محفوظ رکھ سکتے ہیں۔ اس حد میں ڈیٹا کو برقرار رکھنے کی مدت (retention)، رسائی کا کنٹرول، اور یہ بات شامل ہے کہ آیا لاگنگ سے قبل حساس فیلڈز کو حذف یا پوشیدہ (redact) کیا گیا ہے۔ ماڈل آرٹیفیکٹ کی حد (Model artifact boundary): اس سے مراد یہ ہے کہ ماڈل کی فائلیں، اڈاپٹرز، اور کنٹینرز کس طرح ‘بلڈ’ (build) اور ‘رن ٹائم’ (runtime) کے عمل میں شامل ہوتے ہیں۔ اس حد میں ماخذ کی تصدیق (provenance)، سالمیت (integrity)، اور لوڈنگ و ڈیپلائمنٹ کے دوران انحصار (dependency) کے ظاہر ہونے جیسے پہلو شامل ہیں۔ ٹول کی حد (Tool boundary): اس سے مراد وہ اقدامات ہیں جو ماڈل کنیکٹرز، فنکشنز، یا ایجنٹس کے ذریعے شروع کر سکتا ہے۔ اس حد میں ہر عمل کے لیے اجازت اور ان ‘آرگومنٹس’ (arguments) پر حدود شامل ہیں جو کسی ٹول تک پہنچ سکتے ہیں۔ بیرونی اخراج کی حد (External egress boundary): اس سے مراد وہ ڈیٹا ہے جو فریقِ ثالث (third parties)، پلگ انز، یا کھلے انٹرنیٹ تک جا سکتا ہے۔ یہ حد انتہائی اہم ہے کیونکہ ڈیٹا کے غیر مجاز اخراج (exfiltration) کے لیے باہر جانے والے راستے کی ضرورت ہوتی ہے۔ اب ہم تصور کر سکتے ہیں کہ پرامپٹس، ڈیٹا کا حصول (retrieval)، ٹولز، لاگز، اور ڈیٹا کا اخراج (egress) کس طرح ان حدود کو عبور کرتے ہیں۔