ببل ریپ 0.8 کی ریلیز، الگ تھلگ ماحول بنانے کے لیے ایک تہہ

الگ تھلگ ماحول کے کام کو منظم کرنے کے لیے ٹولز کی ریلیز Bubblewrap 0.8 دستیاب ہے، جو عام طور پر غیر مراعات یافتہ صارفین کی انفرادی ایپلی کیشنز کو محدود کرنے کے لیے استعمال ہوتی ہے۔ عملی طور پر، Bubblewrap کو Flatpak پروجیکٹ کے ذریعے پیکیجز سے شروع کی گئی ایپلی کیشنز کو الگ کرنے کے لیے ایک پرت کے طور پر استعمال کیا جاتا ہے۔ پروجیکٹ کوڈ C میں لکھا گیا ہے اور LGPLv2+ لائسنس کے تحت تقسیم کیا گیا ہے۔

تنہائی کے لیے، روایتی لینکس کنٹینر ورچوئلائزیشن ٹیکنالوجیز استعمال کی جاتی ہیں، جو cgroups، namespaces، Seccomp اور SELinux کے استعمال پر مبنی ہیں۔ کنٹینر کو کنفیگر کرنے کے لیے مراعات یافتہ کارروائیوں کو انجام دینے کے لیے، ببل ریپ کو روٹ رائٹس کے ساتھ لانچ کیا جاتا ہے (سوڈ فلیگ کے ساتھ ایک ایگزیکیوٹیبل فائل) اور پھر کنٹینر شروع ہونے کے بعد مراعات کو دوبارہ ترتیب دیا جاتا ہے۔

نام کی جگہ کے نظام میں صارف کے نام کی جگہوں کی ایکٹیویشن، جو آپ کو کنٹینرز میں شناخت کنندگان کا اپنا الگ سیٹ استعمال کرنے کی اجازت دیتی ہے، آپریشن کے لیے ضروری نہیں ہے، کیونکہ یہ بہت سی تقسیموں میں بطور ڈیفالٹ کام نہیں کرتا ہے صارف کے نام کی جگہوں کی صلاحیتوں کا ذیلی سیٹ - تمام صارف اور عمل کے شناخت کنندگان کو ماحول سے خارج کرنے کے لیے، موجودہ کے علاوہ، CLONE_NEWUSER اور CLONE_NEWPID موڈز استعمال کیے جاتے ہیں)۔ اضافی تحفظ کے لیے، Bubblewrap کے تحت انجام پانے والے پروگرام PR_SET_NO_NEW_PRIVS موڈ میں شروع کیے جاتے ہیں، جو کہ نئی مراعات کے حصول کو روکتا ہے، مثال کے طور پر، اگر setuid پرچم موجود ہے۔

فائل سسٹم کی سطح پر تنہائی ڈیفالٹ کے طور پر ایک نئی ماؤنٹ نام کی جگہ بنا کر مکمل کی جاتی ہے، جس میں tmpfs کا استعمال کرتے ہوئے ایک خالی روٹ پارٹیشن بنایا جاتا ہے۔ اگر ضروری ہو تو، بیرونی FS پارٹیشن اس پارٹیشن کے ساتھ "mount —bind" موڈ میں منسلک ہوتے ہیں (مثال کے طور پر، جب "bwrap —ro-bind /usr /usr" آپشن کے ساتھ لانچ کیا جاتا ہے، تو /usr پارٹیشن کو مین سسٹم سے فارورڈ کیا جاتا ہے۔ صرف پڑھنے کے موڈ میں)۔ نیٹ ورک کی صلاحیتیں CLONE_NEWNET اور CLONE_NEWUTS جھنڈوں کے ذریعے نیٹ ورک اسٹیک آئسولیشن کے ساتھ لوپ بیک انٹرفیس تک رسائی تک محدود ہیں۔

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

نئی ریلیز میں:

  • سینڈ باکس ماحول میں اپنے نیسٹڈ یوزر نیم اسپیس کی تخلیق کو غیر فعال کرنے کے لیے "--disable-users" کا اختیار شامل کیا گیا۔
  • "--assert-users-disabled" آپشن شامل کیا گیا تاکہ یہ چیک کیا جا سکے کہ "--disable-users-users" آپشن استعمال کرتے وقت موجودہ صارف ID کی جگہ استعمال کی گئی ہے۔
  • کرنل میں CONFIG_SECCOMP اور CONFIG_SECCOMP_FILTER سیٹنگز کو غیر فعال کرنے سے متعلق غلطی کے پیغامات کے معلوماتی مواد کو بڑھا دیا گیا ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں