امنیت عاملهای هوش مصنوعی معمولاً با تزریق دستور، مجوز ابزارها، محیط ایزوله یا تأیید کاربر توضیح داده میشود. یک پیشچاپ تازه از پژوهشگران دانشگاه ایلینوی اربانا-شمپین لایه دیگری را بررسی میکند: سامانهای که زمینه عامل را میسازد و تصمیم میگیرد کدام فایلها، حافظهها، توضیحات ابزار، دستورهای مخزن و مقادیر زمان اجرا با چه سطحی از اختیار وارد ورودی مدل شوند.
پژوهشگران این دسته شکست را «ارتقای سطح دسترسی از طریق زمینه» مینامند. آنها در ۱۲ چارچوب عامل، از جمله کُدکس، کلاد کد، جمینای سیالآی، کیوِن کد، کیمی سیالآی، ایدر، اوپنکد، کلاین، گوس، پای-مونو، اوپنکلا و هرمس ایجنت، ۲۸۲ منبع زمینه را در زمان اجرا راستیآزمایی کردهاند که میتوانند در مسیرهای ارتقای اختیار نقش داشته باشند. نمونههای عملی مقاله دستکاری استدلال و فراخوانی ابزار، ماندگاری میان نشستها، محرومسازی از خدمت و در برخی زنجیرهها اجرای کد از راه دور را نشان میدهند. اینها نتایج گزارششده در یک پیشچاپ آرکایو از اول سپتامبر هستند، نه مدرکی مبنی بر آسیبپذیر بودن همه نسخههای فعلی محصولات نامبرده.
ساخت زمینه خودش یک مدل سطح دسترسی دارد
چارچوب عامل اطلاعات را از منابع زیادی کنار هم میگذارد. یک مخزن میتواند فایل AGENTS.md یا قواعد ویژه یک محصول را ارائه کند. مهارتها و سرورهای MCP توضیحات و نتایج خود را وارد میکنند. فایلهای پیکربندی، متغیرهای محیطی، حافظهها، عاملهای فرعی و فراداده پروژه که بهطور خودکار کشف میشوند نیز ممکن است در اختیار مدل قرار گیرند.
نکته اصلی این است که این ورودیها همیشه سطح اختیار منبع خود را حفظ نمیکنند. پژوهش دو نوع جابهجایی را مدل میکند. در نوع نخست، محتوای تحت کنترل مهاجم به نقشی با اختیار بیشتر در پیامها میرسد. در نوع دوم، اطلاعات از دامنه محدودتر، مانند یک نشست یا پروژه، به دامنه گستردهتر و ماندگارتر، مانند حافظه یا پیکربندی کاربر، منتقل میشود.
پژوهشگران با زنجیره تحلیل CoRA در مجموع ۴۶۳ منبع زمینه را شناسایی و ۲۸۲ مورد را در زمان اجرا تأیید کردهاند. از میان موارد تأییدشده، ۱۸۳ منبع با نقش سامانه، ۶۰ منبع با نقش کاربر، ۹ منبع با نقش دستیار و ۳۰ منبع با نقش ابزار وارد زمینه میشوند. منابع در سطح پروژه بزرگترین گروه از نظر دامنهاند. مقاله سپس ۱۷۶۱ مسیر احتمالی ارتقای اختیار را میسازد و با چند مدل بررسی میکند که آیا دستور تزریقشده وارد زمینه میشود و اثر رفتاری مورد انتظار را ایجاد میکند یا نه.
این اعداد به معنی وجود ۲۸۲ آسیبپذیری مستقل و مستقیماً قابل سوءاستفاده نیستند. یک منبع میتواند در چند مسیر حضور داشته باشد و امکان بهرهبرداری به میزان کنترل مهاجم بر منبع و شیوه ترکیب آن توسط چارچوب بستگی دارد. نتیجه مهم ساختاری است: عاملهای امروزی منابعی با سطح اعتماد، طول عمر و دامنه متفاوت را ترکیب میکنند، اما لایه ساخت زمینه همیشه قانون صریحی برای جلوگیری از افزایش اختیار ندارد.
حمله از مرزهایی عبور میکند که پنجره مجوز نمیبیند
صفحه پروژه چند نمونه کامل را نشان میدهد. در یک سناریوی بازبینی درخواست ادغام با کُدکس، دستورهای تحت کنترل مخزن سیاست واقعی بازبینی را تغییر میدهند و بخشی از کد آسیبپذیر را از بررسی خارج میکنند. در نمونه کلاین، متن مهاجم توسط مدل نقل میشود اما سپس بهعنوان ساختار فراخوانی ابزار تفسیر میشود و میتواند نوشتهای ماندگار ایجاد کند و تنظیمات تأیید را تغییر دهد. نمونه دیگری انتقال محتوای مخرب از طریق فراداده کنترل نسخه و حافظه عامل را بررسی میکند.
این سازوکار با یک درخواست ساده برای نادیده گرفتن دستورهای قبلی فرق دارد. مهاجم میخواهد همان چارچوبی را هدف بگیرد که زمینه را میسازد و دوباره تفسیر میکند. ممکن است سازوکار تأیید مجوز در یک لایه دقیقاً درست عمل کند، اما همزمان منبعی کماعتماد در نقطه دیگری به بازنمایی با اختیار بیشتر ارتقا یابد.
نویسندگان میگویند یافتهها را به مسئولان هر ۱۲ چارچوب گزارش کردهاند. طبق مقاله، کُدکس، جمینای سیالآی و کلاین نسخههایی برای کاهش خطرهای گزارششده منتشر کردهاند و اوپنایآی و آنتروپیک نیز دریافت گزارشها را تأیید کردهاند. چون افشای هماهنگ هنوز ادامه دارد و بعضی جزئیات عمداً منتشر نشدهاند، نباید این پژوهش را به فهرستی از محصولات «اکنون آسیبپذیر» تبدیل کرد.
زمینه به شناسنامه منشأ نیاز دارد، نه فقط پالایش محتوا
کنترل عملی فراتر از افزودن یک پالایه جدید برای تزریق دستور است. محیط اجرا باید بداند هر بخش از زمینه از کجا آمده، چه موجودیتی میتواند آن را تغییر دهد، عمر مورد انتظارش چقدر است و حداکثر چه سطحی از اختیار میتواند به دست آورد.
از اینجا یک اصل عدم ارتقا به دست میآید: محتوای کماعتماد یا دارای دامنه محدود نباید فقط به این دلیل که یک تجزیهگر، حافظه، بارگذار مهارت یا پل پیکربندی آن را کپی کرده، بیصدا به وضعیت دارای سطح دسترسی بالاتر یا ماندگارتر تبدیل شود. هر انتقالی که اختیار را افزایش میدهد باید از یک مرز صریح همراه با راستیآزمایی و تصمیم سیاستی عبور کند.
این رویکرد شبیه ردیابی داده مشکوک و جداسازی سطح دسترسی در سامانههای سنتی است. دستور مخزن میتواند مفید بماند و در عین حال برچسب «تحت کنترل پروژه» داشته باشد. نتیجه ابزار میتواند برای عامل قابل استفاده باشد، بدون آنکه اجازه بازنویسی حافظه سراسری را دریافت کند. مدل میتواند ماندگار کردن یک داده را پیشنهاد دهد، اما محیط اجرا میتواند پیش از تبدیل محتوای نشست به وضعیت دائمی کاربر، یک عملیات جداگانه و مجاز را الزام کند.
این بخش بهتر است از مهندسی صرفِ دستور خارج شود. پالایههای محتوا میتوانند الگوهای شناختهشده تزریق را کاهش دهند، اما ثابت نمیکنند هنگام عبور داده میان منابع زمینه، سطح اختیار افزایش نیافته است. منشأ، دامنه، نقش، ماندگاری و توان نوشتن ویژگیهایی هستند که خود چارچوب میتواند بهصورت قطعی اعمال کند.
دامنه پژوهش از حملههای مبتنی بر گیت گستردهتر است
ایپولیکس بهتازگی GitSpawn را بررسی کرده بود؛ افشایی جداگانه که در آن پیکربندی مخرب گیت میتوانست هنگام جمعآوری خودکار زمینه، اجرای فرمان روی میزبان را فعال کند. آن رخداد یک شرط تحویل محدودکننده داشت: مخزن باید همراه با فراداده .git تحت کنترل مهاجم به قربانی میرسید و یک کلون یا دریافت عادی آن شرایط را منتقل نمیکرد.
پژوهش جدید بردارهایی مرتبط با کنترل نسخه هم دارد، اما سهم اصلی آن گستردهتر است. ردهبندی مقاله حافظه، پیکربندی، مهارتها، اجزای شخص ثالث، تجزیه نشانهگذاری و نوسازی زمینه را در چندین چارچوب پوشش میدهد. بنابراین نتیجه مهندسی متفاوت است: فراداده گیت فقط یکی از منابع ممکن است و مرز امنیتی واقعی، زنجیره تبدیلهایی است که منابع متعدد را به زمینه دارای اختیار تبدیل میکند.
برای تیم مهندسی پرسش مفید این نیست که آیا محصولش در مقاله نام برده شده است. باید برای هر عنصر زمینه بتواند پاسخ دهد: چه کسی آن را فراهم کرده، متعلق به چه دامنهای است، میتواند وارد چه نقشی شود، آیا قابلیت ماندگاری دارد و کدام انتقالها ممکن است اختیار آن را افزایش دهند.
محدودیتهای مهم همچنان باقیاند
این پژوهش پیشچاپ است و هنوز بهطور مستقل تکرار نشده است. CoRA خودش از مدل زبانی کمک میگیرد، نویسندگان نسخههای مشخصی از هر چارچوب را بررسی کردهاند و نتایج ثابت نمیکند تازهترین نسخه همه محصولات نامبرده همچنان متأثر هستند. طبق مقاله، برخی کاهشدهندههای خطر نیز منتشر شدهاند.
نویسندگان همچنین میگویند کد کامل را منتشر خواهند کرد، اما صفحه پروژه در حال حاضر بیشتر شامل نمایشهای عملی و آثار آزمایشی است و مخزن عمومی روش CoRA را بهروشنی معرفی نمیکند. بنابراین امکان بازتولید مستقل امروز محدود است. عدد ۲۸۲ منبع تأییدشده و نرخهای رفتاری باید بهعنوان اندازهگیری تیم پژوهشی دیده شوند، نه آمار عمومی محیطهای عملیاتی.
با وجود این محدودیتها، مقاله یک نقطه کور معماری را روشن میکند. سامانه مجوز ابزار تعیین میکند عامل چه چیزی را میتواند اجرا کند. کنترل سطح دسترسی زمینه باید تعیین کند اطلاعات پیش از تصمیمگیری مدل چگونه اختیار به دست میآورند. بدون این مرز دوم، عامل ممکن است سطحی از اعتماد را به ارث ببرد که منبع اصلی هیچگاه شایسته آن نبوده است.