Content Security Policy
کنٹینٹ سیکیورٹی پالیسی (سی ایس پی) ایک کمپیوٹر سیکیورٹی کا معیار ہے جو کراس سائٹ اسکرپٹنگ (ایکس ایس ایس)، کلک جیکنگ اور دیگر کوڈ انجیکشن حملوں کو روکنے کے لیے متعارف کرایا گیا ہے جس کے نتیجے میں قابل اعتماد ویب پیج کے سیاق و سباق میں بدنیتی پر مبنی مواد پر عمل درآمد ہوتا ہے۔ یہ ویب ایپلیکیشن سیکیورٹی پر ڈبلیو 3 سی ورکنگ گروپ کی ایک امیدوار سفارش ہے، جسے جدید ویب براؤزرز کی طرف سے وسیع پیمانے پر سپورٹ کیا جاتا ہے۔ سی ایس پی ویب سائٹ کے مالکان کے لیے ایک معیاری طریقہ فراہم کرتا ہے کہ وہ مواد کی منظور شدہ ابتداء کا اعلان کریں جسے براؤزرز کو اس ویب سائٹ پر لوڈ کرنے کی اجازت دی جانی چاہیے-احاطہ شدہ اقسام جاوا اسکرپٹ، سی ایس ایس، ایچ ٹی ایم ایل فریم، ویب ورکرز، فونٹ، تصاویر، سرایت کے قابل اشیاء جیسے جاوا ایپلٹ، ایکٹو ایکس، آڈیو اور ویڈیو فائلیں، اور دیگر ایچ ٹی ایم ایل 5 خصوصیات ہیں۔ اسٹیٹس اسٹینڈرڈ، جسے اصل میں مواد کی پابندیاں کہا جاتا ہے، 2004 میں رابرٹ ہینسن نے تجویز کیا تھا، سب سے پہلے فائر فاکس 4 میں لاگو کیا گیا تھا اور دوسرے براؤزرز نے اسے تیزی سے اٹھایا تھا۔ معیار کا ورژن 1 2012 میں ڈبلیو 3 سی امیدوار کی سفارش کے طور پر شائع کیا گیا تھا اور 2014 میں شائع ہونے والے مزید ورژن (لیول 2) کے ساتھ ہی، لیول 3 کا مسودہ تیار کیا جا رہا ہے جس میں ویب براؤزرز کے ذریعے نئی خصوصیات کو تیزی سے اپنایا جا رہا ہے۔ مندرجہ ذیل ہیڈر کے نام تجرباتی سی ایس پی کے نفاذ کے حصے کے طور پر استعمال میں ہیں: مواد-سلامتی-پالیسی-ڈبلیو 3 سی دستاویز کے ذریعہ تجویز کردہ معیاری ہیڈر کا نام۔ گوگل کروم ورژن 25 تک اس کی حمایت کرتا ہے۔ فائر فاکس 6 اگست 2013 کو جاری کردہ ورژن 23 کے طور پر اس کی حمایت کرتا ہے۔ ویب کٹ ورژن 528 (رات کی تعمیر) کے طور پر اس کی حمایت کرتا ہے۔ کرومیم پر مبنی مائیکروسافٹ ایج سپورٹ کروم کی طرح ہے۔ ایکس-ویب کٹ-سی ایس پی-فرسودہ، تجرباتی ہیڈر 2011 میں گوگل کروم، سفاری اور دیگر ویب کٹ پر مبنی ویب براؤزرز میں متعارف کرایا گیا۔ ایکس-کنٹینٹ-سیکیورٹی-پالیسی-گیکو 2 پر مبنی براؤزرز میں پیش کردہ فرسودہ، تجرباتی ہیڈر (فائر فاکس 4 سے فائر فاکس 22، تھنڈر برڈ 3.3، سی منکی 2.1)۔ ایک ویب سائٹ متعدد سی ایس پی ہیڈرز کا اعلان کر سکتی ہے، ساتھ ہی نفاذ اور صرف رپورٹ کرنے والے ہیڈرز کو ملا سکتی ہے۔ ہر ہیڈر پر براؤزر کے ذریعے الگ سے کارروائی کی جائے گی۔ سی ایس پی کو ایچ ٹی ایم ایل میٹا ٹیگ کا استعمال کرتے ہوئے ایچ ٹی ایم ایل کوڈ کے اندر بھی پہنچایا جا سکتا ہے، حالانکہ اس صورت میں اس کی تاثیر محدود ہوگی۔ انٹرنیٹ ایکسپلورر 10 اور انٹرنیٹ ایکسپلورر 11 بھی سی ایس پی کی حمایت کرتے ہیں، لیکن تجرباتی ایکس-کنٹینٹ-سیکیورٹی-پالیسی ہیڈر کا استعمال کرتے ہوئے صرف سینڈ باکس ڈائریکٹیو کی حمایت کرتے ہیں۔ متعدد ویب ایپلیکیشن فریم ورک سی ایس پی کی حمایت کرتے ہیں، مثال کے طور پر اینگولر جے ایس (مقامی طور پر) اور جانگو (مڈل ویئر)۔ روبی آن ریلز کے لیے ہدایات گٹ ہب کے ذریعے پوسٹ کی گئی ہیں۔ تاہم ویب فریم ورک سپورٹ صرف اس صورت میں درکار ہے جب سی ایس پی کے مندرجات کسی طرح ویب ایپلی کیشن کی حالت پر منحصر ہوں-جیسے کہ غیر اصل کا استعمال۔ بصورت دیگر، سی ایس پی کافی مستحکم ہے اور اسے ایپلی کیشن کے اوپر ویب ایپلی کیشن کے درجے سے پہنچایا جا سکتا ہے، مثال کے طور پر لوڈ بیلنس یا ویب سرور پر۔ بائی پاس دسمبر 2015 اور دسمبر 2016 میں، 'نانسی' اجازت یافتہ ماخذ کو نظرانداز کرنے کے کچھ طریقے شائع کیے گئے تھے۔ جنوری 2016 میں، ایک اور طریقہ شائع کیا گیا، جو سرور وسیع سی ایس پی کا فائدہ اٹھاتا ہے جو جاوا اسکرپٹ لائبریریوں کے پرانے اور کمزور ورژن کو ایک ہی سرور پر ہوسٹ کرنے کی اجازت دیتا ہے (سی ڈی این سرورز کے ساتھ اکثر کیس)۔ مئی 2017 میں ویب ایپلیکیشن فریم ورک کوڈ کا استعمال کرتے ہوئے سی ایس پی کو بائی پاس کرنے کے لیے ایک اور طریقہ شائع کیا گیا۔ آپریشن کا طریقہ اگر سرور کے جواب میں مواد-سلامتی-پالیسی ہیڈر موجود ہے، تو ایک تعمیل کرنے والا کلائنٹ اعلانیہ اجازت فہرست پالیسی کو نافذ کرتا ہے۔ پالیسی کا ایک مثال مقصد جاوا اسکرپٹ کے لیے ایک سخت عمل درآمد کا طریقہ ہے تاکہ بعض کراس سائٹ اسکرپٹنگ حملوں کو روکا جا سکے۔ عملی طور پر اس کا مطلب یہ ہے کہ متعدد خصوصیات پہلے سے طے شدہ طور پر غیر فعال ہیں: ان لائن جاوا اسکرپٹ کوڈ <اسکرپٹ> بلاکس، ڈی او ایم ایونٹ ہینڈلرز بطور ایچ ٹی ایم ایل صفات (جیسے. آن کلک) جاوا اسکرپٹ: لنک ان لائن سی ایس ایس بیانات <سٹائل> بلاک اسٹائل جو ایچ ٹی ایم ایل عناصر سے منسوب ہے ڈائنامک جاوا اسکرپٹ کوڈ ایویلیوایشن () سٹرنگ آرگیومنٹس سیٹ ٹائم آؤٹ اور سیٹ انٹرول افعال کے لیے نیا فنکشن () کنسٹرکٹر ڈائنامک سی ایس ایس بیانات CSSStyleSheet.insertRule () طریقہ جبکہ کسی نئی ایپلی کیشن میں سی ایس پی کا استعمال کرنا کافی سیدھا ہو سکتا ہے، خاص طور پر سی ایس پی مطابقت پذیر جاوا اسکرپٹ فریم ورک کے ساتھ، موجودہ ایپلی کیشنز کو کچھ ری فیکٹرنگ-یا پالیسی میں نرمی کی ضرورت پڑ سکتی ہے۔ سی ایس پی مطابقت پذیر ویب ایپلی کیشنز کے لیے تجویز کردہ کوڈنگ کا عمل بیرونی ماخذ فائلوں (<اسکرپٹ ایس آر سی>) سے کوڈ لوڈ کرنا، اس کا جائزہ لینے کے بجائے جے ایس او این کو تجزیہ کرنا اور ایونٹ ہینڈلرز سیٹ کرنے کے لیے EventTarget.addEventListener () کا استعمال کرنا ہے۔ نوٹس رپورٹنگ کسی بھی وقت درخواست کردہ وسائل یا اسکرپٹ پر عمل درآمد پالیسی کی خلاف ورزی کرتا ہے، براؤزر رپورٹ-اوری یا رپورٹ-ٹو میں بیان کردہ ویلیو پر پوسٹ کی درخواست فائر کرے گا جس میں خلاف ورزی کی تفصیلات ہوں گی۔ سی ایس پی رپورٹس معیاری جے ایس او این ڈھانچے ہیں اور انہیں یا تو ایپلی کیشن کے اپنے اے پی آئی یا عوامی سی ایس پی رپورٹ وصول کنندگان کے ذریعے حاصل کیا جا سکتا ہے۔ 2018 میں سیکیورٹی محققین نے دکھایا کہ رپورٹ-اوری میں مخصوص نامزد وصول کنندہ کو غلط مثبت رپورٹیں کیسے بھیجیں۔ یہ ممکنہ حملہ آوروں کو من مانی طور پر ان الارم کو متحرک کرنے کی اجازت دیتا ہے اور حقیقی حملے کی صورت میں انہیں کم کارآمد بنا سکتا ہے۔ اس رویے کا ارادہ ہے اور اسے درست نہیں کیا جا سکتا، کیونکہ براؤزر (کلائنٹ) رپورٹس بھیج رہا ہے۔ براؤزر ایڈ آنز اور ایکسٹینشنز کی چھوٹ اصل سی ایس پی (1) پروسیسنگ ماڈل (2012-2013) کے مطابق، سی ایس پی کو براؤزر ایڈ آنز یا صارف کے انسٹال کردہ ایکسٹینشنز کے آپریشن میں مداخلت نہیں کرنی چاہیے۔ سی ایس پی کی یہ خصوصیت مؤثر طریقے سے کسی بھی ایڈ آن، ایکسٹینشن، یا بک مارکلیٹ کو ویب سائٹس میں اسکرپٹ داخل کرنے کی اجازت دیتی، قطع نظر اس اسکرپٹ کی اصل سے، اور اس طرح سی ایس پی پالیسیوں سے مستثنی ہوتی۔ تاہم، اس پالیسی میں مندرجہ ذیل الفاظ کے ساتھ ترمیم کی گئی ہے (سی ایس پی 1 کے مطابق)۔ نوٹ کریں کہ لفظ "ہو سکتا ہے" کا استعمال پہلے مطلق "چاہیے (نہیں)" الفاظ کے بجائے: نوٹ: صارف کے ایجنٹ صارفین کو صارف کی ترجیحات، بک مارکلیٹس، صارف کے ایجنٹ میں تیسرے فریق کے اضافے کے ذریعے پالیسی کے نفاذ میں ترمیم یا بائی پاس کرنے کی اجازت دے سکتے ہیں، اور اس طرح کے دیگر mechanisms.The مطلق "چاہیے" الفاظ براؤزر کے صارفین کی طرف سے پالیسی پر عمل کرنے کی درخواست/مطالبہ کرنے کے لیے استعمال کیے جا رہے تھے اور اس کی حمایت کرنے کے لیے مقبول براؤزرز (فائر فاکس، کروم، سفاری) میں تبدیلیاں انسٹال ہیں۔ یہ خاص طور پر اس وقت متنازعہ تھا جب ٹویٹر اور گٹ ہب جیسی سائٹس نے مضبوط سی ایس پی پالیسیاں استعمال کرنا شروع کیں، جس نے بک مارکلیٹس کے استعمال کو 'توڑ' دیا۔ ڈبلیو 3 سی ویب ایپلیکیشن سیکیورٹی ورکنگ گروپ اس طرح کے اسکرپٹ کو براؤزر کے ذریعے نافذ کردہ ٹرسٹڈ کمپیوٹنگ بیس کا حصہ سمجھتا ہے۔ تاہم، کاکس کمیونیکیشنز کے نمائندے کی طرف سے ورکنگ گروپ کو یہ دلیل دی گئی ہے کہ یہ چھوٹ ایک ممکنہ حفاظتی سوراخ ہے جس کا بدنیتی پر مبنی یا سمجھوتہ شدہ ایڈ آن یا ایکسٹینشنز کے ذریعے استحصال کیا جا سکتا ہے۔ ڈبلیو 3 سی کی طرف سے متعدد نئے براؤزر سیکیورٹی معیارات تجویز کیے جا رہے ہیں، جن میں سے زیادہ تر سی ایس پی کی تکمیل کرتے ہیں: سب ریسورس انٹیگریٹی (ایس آر آئی)، اس بات کو یقینی بنانے کے لیے کہ صرف معروف، قابل اعتماد ریسورس فائلیں (عام طور پر جاوا اسکرپٹ، سی ایس ایس) تھرڈ پارٹی سرورز (عام طور پر سی ڈی این) سے لوڈ کی جاتی ہیں۔ مخلوط مواد، ایچ ٹی ٹی پی ایس پر لوڈ کیے گئے صفحات پر مطلوبہ براؤزر کی پالیسی کو واضح کرنے اور سادہ متن پر مواد کو جوڑنے کے لیے ایچ ٹی ٹی پی اپ گریڈ غیر محفوظ درخواستیں، براؤزرز کو ایچ ٹی ٹی پی ایس کریڈینشل مینجمنٹ میں منتقل کیے گئے صفحات پر میراث کے لنکس کو سنبھالنے کے بارے میں اشارہ کرتے ہوئے، پیچیدہ لاگ ان اسکیموں کو آسان بنانے کے لیے صارف کی اسناد تک رسائی کے لیے ایک متحد جاوا اسکرپٹ اے پی آئی، ریفرر پالیسی، سی ایس پی ایکسٹینشن براؤزر کو نسل در نسل اشارہ کرنے کے لیے۔ ایک ہی اصل کی پالیسی نو اسکرپٹ-اینٹی ایکس ایس ایس پروٹیکشن اینڈ ایپلیکیشن باؤنڈریز انفورسر (اے بی ای)، فائر فاکس ایچ ٹی ٹی پی سوئچ بورڈ کے لیے توسیع-صارف نے سی ایس پی قوانین کی وضاحت کی، گوگل کروم اور اوپیرا ایچ ٹی ٹی پی کے لیے توسیع سخت ٹرانسپورٹ سیکیورٹی ایچ ٹی ٹی پی پبلک کلیدی پننگ حوالہ جات بیرونی لنکس مواد سیکیورٹی پالیسی ڈبلیو 3 سی ورکنگ ڈرافٹ ایم ڈی این ویب ڈاکس پر مواد سیکیورٹی پالیسی مواد سیکیورٹی پالیسی (سی ایس پی) کے لیے محفوظ کوڈنگ رہنما خطوط کمپیوٹر سیکیورٹی معیارات ہیکنگ (کمپیوٹر سیکیورٹی) ہائپر ٹیکسٹ ٹرانسفر پروٹوکول ہیڈرز ویب ایپلی کیشنز ویب سیکیورٹی کارنامے