Sandlock: Confining AI Agent Code with Unprivileged Linux Primitives
يُعد Sandlock بيئة عزل (sandbox) خفيفة الوزن وغير مميزة الصلاحيات لنظام Linux، حيث يقوم بعزل وكلاء الذكاء الاصطناعي عبر تجميع سياسات أمنية ثابتة إلى قواعد مفروضة من قِبل النواة مع تفويض القرارات التشغيلية إلى مشرف محدود النطاق، مما يحقق عزلاً قوياً دون الأعباء الإضافية للحاويات (containers)، أو الأجهزة الافتراضية الدقيقة (microVMs)، أو امتيازات الجذر (root privileges).
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك توظف مساعداً موهوباً للغاية ولكنه غير متوقع (وكيل ذكاء اصطناعي) لمساعدتك في تنظيم حياتك الرقمية. يمكن لهذا المساعد كتابة الأكواد، وتحميل الملفات، وتشغيل الأوامر على جهاز الكمبيوتر الخاص بك. المشكلة هي أنك لا تعرف بالضبط ما سيفعله بعد ذلك. قد يقوم بالخطأ بحذف ملفاتك المهمة، أو سرقة كلمات المرور الخاصة بك، أو الاتصال بخادم هكر.
تقليدياً، للحفاظ على أمان جهاز الكمبيوتر الخاص بك، كنت ستضع المساعد في "قفص زجاجي" (مثل حاوية أو آلة افتراضية). لكن هذه الأقفاص ثقيلة، وبطيئة البناء، وتتطلب مفتاحاً رئيسياً (صلاحيات root) لا يمتلك معظم المطورين القدرة على الوصول إليه بسهولة.
Sandlock هو أداة جديدة خفيفة الوزن مصممة لحل هذه المشكلة. فكر فيه ليس كقفص فولاذي ثقيل، بل كـ مجموعة ذكية وغير قابلة للكسر من القواعد يمكنك وضعها على يدي المساعد وقدميه فوراً.
إليك كيف يعمل، مقسماً إلى مفاهيم بسيطة:
1. استراتيجية "العقلين"
يقسم Sandlock مهمة الحفاظ على سلامتك إلى جزئين، مثل حارس أمن وقاضٍ.
- حارس الأمن (القواعد الثابتة): هذا الجزء يعيش داخل نواة الكمبيوتر (العقل المركزي). هو يتعامل مع الأشياء المملة والمتوقعة. هو يعرف: "يمكن للمساعد قراءة الملفات في مجلد المستندات، ولكن لا يمكنه أبداً الوصول إلى مجلد كلمات المرور". وهو يعرف أيضاً: "يمكن للمساعد التحدث مع Google، ولكن لا يمكنه أبداً التحدث مع عنوان IP عشوائي". ولأن هذا الحارس مدمج في النظام، فهو يعمل فوراً دون الحاجة لطلب الإذن من أي شخص.
- القاضي (قرارات وقت التشغيل): أحياناً، قد تحتاج القواعد إلى التغيير بناءً على ما يفعله المساعد فعلياً في تلك اللحظة. على سبيل المثال: "إذا حاول المساعد تشغيل أمر معين لتحميل ملف، تحقق مما إذا كان هذا الملف آمناً قبل السماح بحدوث ذلك". القاضي هو مشرف صغير وذكي يراقب كل حركة للمساعد. إذا حاول المساعد القيام بشيء مخادع، يقوم القاضي بالإيقاف المؤقت، ويتحقق من الموقف، ثم يقول "نعم"، أو "لا"، أو "انتظر، دعني أتحقق من هذا العنوان أولاً".
2. لماذا هو مختلف؟ (سحر "عدم الحاجة لصلاحيات الجذر - No-Root")
معظم أدوات الأمان تتطلب أن تكون "مسؤولاً" (root) لتتمكن من إعدادها. Sandlock مميز لأنه يعمل بـ صلاحيات غير مميزة.
- التشبيه: تخيل أنك تريد وضع قفل على باب، ولكن ليس لديك المفتاح الرئيسي للمبنى. عادةً، لن تستطيع فعل ذلك. Sandlock يشبه قفلاً عالي التقنية يمكنك تثبيته بنفسك باستخدام الأدوات التي تملكها بالفعل في جيبك. هو لا يحتاج لإعادة بناء المنزل بأكمله (مثل الحاويات الافتراضية الثقيلة) أو هدم الجدران (مثل إعدادات الشبكة المعقدة).
3. شبكة الأمان "للعودة بالزمن" (الكتابة عند النسخ - Copy-on-Write)
أحد أروع ميزات Sandlock هو كيفية تعامله مع تغييرات الملفات.
- التشبيه: تخيل أنك ترسم لوحة، لكنك لست متأكداً مما إذا كنت ستعجب بالنتيجة أم لا. يسمح لك Sandlock بالرسم على ورقة بلاستيكية شفافة موضوعة فوق اللوحة الأصلية.
- إذا أعجبتك اللوحة، تضغط على زر لـ دمج الورقة البلاستيكية مع اللوحة الأصلية (Commit).
- إذا لم تعجبك، يمكنك ببداً نزع الورقة البلاستيكية فقط، وستظل لوحتك الأصلية سليمة تماماً ولم يمسها شيء (Abort).
- يمكنك أيضاً النظر إلى اللوحة الموجودة على الورقة البلاستيكية قبل اتخاذ القرار (Dry-run).
يحدث هذا دون الحاجة إلى صلاحيات خاصة أو إعدادات معقدة.
4. "الأنبوب" (العمل الجماعي مع الأمان)
يسمح لك Sandlock بربط المهام معاً، مثل خط التجميع، ولكن بقواعد أمان مختلفة لكل محطة.
- التشبيه: تخيل سباق تتابع حيث البيانات هي العصا التي يتناوب عليها العداءون.
- العداء (أ) لديه حق الوصول إلى مذكراتك الخاصة ولكنه غير مسموح له بالتحدث مع العالم الخارجي.
- العداء (ب) مسموح له بالتحدث مع العالم الخارجي (مثل الاتصال بواجهة برمجة التطبيقات API) ولكنه لا يستطيع رؤية مذكراتك.
هم يمررون العصا (البيانات) عبر أنبوب. حتى لو تعرض العداء (ب) للاختراق أو الخداع، فلن يتمكن من سرقة المذكرات لأن العداء (أ) لم يعطها له مباشرة؛ لقد مرروا العصا فقط. هذا يمنع حدوث "الثالوث المميت" حيث يحصل الهكر على بياناتك، واتصالك بالإنترنت، وكود البرمجة الخاص بك في آن واحد.
5. ما مدى سرعته؟
اختبرت الورقة البحثية Sandlock على جهاز كمبيوتر محمول عادي.
- بدء التشغيل: يستغرق الأمر حوالي 5 ميلي ثانية لوضع القواعد في مكانها. هذا أسرع من طرفة العين. بالمقارنة، يستغرق إعداد حاوية تقليدية (مثل Docker) حوالي 300 ميلي ثانية — أي أبطأ بنحو 60 مرة.
- الأداء: عند تشغيل قاعدة بيانات سريعة (Redis)، كان Sandlock بنفس سرعة تشغيل البرنامج مباشرة على الجهاز (Bare Metal). لم يؤدِ إلى إبطاء أي شيء.
الملخص
Sandlock هو أداة أمان خفيفة وسريعة للغاية لوكلاء الذكاء الاصطناعي. يستخدم تقسيماً ذكياً بين "القواعد المبرمجة" و"المشرف الذكي" لمنع وكلاء الذكاء الاصطناعي من التسبب في أضرار، وكل ذلك دون الحاجة لأن تكون مسؤول النظام (Administrator). إنه يتيح لك ترك وكلاء الذكاء الاصطناعي يعملون بحرية في مساحة عملك الرقمية، مع اليقين بأنه إذا حاولوا كسر شيء ما، فإن القواعد ستوقفهم فوراً.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.