یک Skill عامل هوش مصنوعی جعلی که توسط شرکت امنیتی AIR طراحی شده بود، توانست از اسکنرهای امنیتی عبور کند و به گفته این شرکت، به حدود 26 هزار عامل هوش مصنوعی، از جمله برخی عاملهای مورد استفاده در حسابهای سازمانی، برسد. این آزمایش نشان میدهد که Skill عامل هوش مصنوعی حتی در صورت دریافت تأییدیه اسکن امنیتی و برخورداری از شاخصهای اعتماد مانند ستارههای گیتهاب یا اعتبار پروژههای متنباز، همچنان میتواند به بستری برای حملات زنجیره تأمین و تهدیدی جدی برای سازمانها تبدیل شود.
چگونه یک Skill جعلی اعتماد اکوسیستم عاملهای هوش مصنوعی را به چالش کشید
شرکت AIR یک Skill عامل هوش مصنوعی جعلی با نام brand-landingpage توسعه داد و آن را از طریق یک مارکتپلیس (Marketplace) محبوب Skill و یک کمپین تبلیغاتی در اینستاگرام منتشر کرد. این Skill خود را ابزاری برای ساخت لندینگپیج (Landing Page) با استفاده از ابزار طراحی Google Stitch معرفی میکرد و بهطور ویژه کاربران غیرتخصصی مانند بازاریابها، کارشناسان فروش و طراحان را هدف قرار داده بود.
پیلود این آزمایش بهصورت عمدی فاقد هرگونه عملکرد مخرب بود و تنها آدرس ایمیل کاربر را جمعآوری میکرد. هدف AIR نیز اجرای یک حمله واقعی نبود؛ بلکه این شرکت قصد داشت نشان دهد شاخصهایی که کاربران معمولاً برای ارزیابی اعتبار یک Skill به آنها اعتماد میکنند، از جمله اسکنرهای امنیتی، تعداد ستارههای گیتهاب و اعتبار پروژههای متنباز، لزوماً نمیتوانند عملکرد واقعی آن را شناسایی یا تضمین کنند.
این موضوع از آن جهت اهمیت دارد که هر Skill در عمل مجموعهای از دستورالعملها را در اختیار عامل هوش مصنوعی قرار میدهد و عامل نیز آن را تقریباً با همان سطح دسترسی اجرا میکند که یک پرامپت کاربر (User Prompt) در اختیارش قرار میدهد. در چنین شرایطی، اتکا به نشانههای ظاهری اعتماد، بدون ارزیابی دقیق محتوای واقعی Skill و منابع خارجی مرتبط با آن، میتواند زمینهساز سوءاستفاده در زنجیره تأمین ابزارهای هوش مصنوعی باشد.
اعتبارسازی جعلی برای Skill عامل هوش مصنوعی
برای اینکه این Skill در نگاه کاربران معتبر و قابل اعتماد به نظر برسد، شرکت AIR از دو شاخص اعتماد (Trust Signals) زیر که معمولاً مبنای ارزیابی اعتبار یک Skill قرار میگیرند، سوءاستفاده کرد:
- تعداد ستارههای گیتهاب
- تأییدیه اسکنرهای امنیتی
در نخستین مرحله، AIR یک درخواست Pull (Pull Request) به مخزن یکی از مارکتپلیسهای شناختهشده Skill ارسال کرد؛ مخزنی که حدود 36 هزار ستاره گیتهاب و 156 Skill را میزبانی میکرد. این درخواست چند روز بعد پذیرفته شد و با مخزن اصلی ادغام گردید؛ در نتیجه، Skill منتشرشده نیز از اعتبار و تعداد ستارههای همان مخزن بهرهمند شد و در نگاه کاربران، قابل اعتمادتر به نظر رسید.
در ادامه، AIR یک کمپین تبلیغاتی در اینستاگرام راهاندازی کرد و آن را بهطور هدفمند در معرض دید بازاریابها، کارشناسان فروش و طراحان قرار داد. بسیاری از کاربران پس از مشاهده این تبلیغ، Skill را نصب کرده و در فعالیتهای روزمره خود استفاده کردند؛ اقدامی که به گفته این شرکت، موجب شد دامنه انتشار آزمایش به حدود 26 هزار عامل هوش مصنوعی برسد.
چرا اسکنرهای امنیتی Skill جعلی را شناسایی نکردند؟
اسکنرهای امنیتی که AIR این آزمایش را با آنها انجام داد، تنها پکیج ارسالی را بررسی میکردند؛ یعنی فایل SKILL.md و سایر فایلهایی که همراه Skill ارائه شده بودند. این محدودیت در ابزارهایی مانند اسکنر Cisco، ابزار SkillSpector متعلق به NVIDIA و همچنین اسکنرهای یکپارچهشده در skills.sh نیز وجود داشت.
با این حال، Skill عامل هوش مصنوعی طراحیشده توسط AIR هیچ دستورالعمل راهاندازی را در خود نداشت. در عوض، عامل هوش مصنوعی را به دنبال کردن دستورالعملهای نصب کیت توسعه نرمافزار Stitch (Stitch SDK) از طریق یک لینک خارجی با دامنه stitch-design.ai هدایت میکرد. این دامنه توسط AIR مدیریت میشد، در حالی که مستندات رسمی Google Stitch در دامنه stitch.withgoogle.com منتشر میشوند.
در ابتدای این آزمایش، لینک مذکور کاربران را به مستندات واقعی Google Stitch هدایت میکرد. از آنجا که پکیج ارسالی هیچ محتوای مشکوکی نداشت و تنها به یک صفحه راهاندازی ظاهراً معتبر ارجاع میداد، اسکنرهای امنیتی آن را ایمن تشخیص دادند. اما محتوایی که عامل هوش مصنوعی هنگام نصب از طریق این لینک خارجی دریافت میکرد، خارج از محدوده بررسی اسکنرهای امنیتی قرار داشت و به همین دلیل هرگز مورد ارزیابی قرار نمیگرفت.
تغییر محتوای Skill عامل هوش مصنوعی پس از عبور از اسکنر امنیتی
پس از آنکه Skill عامل هوش مصنوعی بهطور گسترده نصب شد، AIR محتوای صفحه مقصدِ لینک خارجی را با نسخهای جدید جایگزین کرد. نسخه جدید این صفحه به عامل هوش مصنوعی دستور میداد یک اسکریپت را دانلود و اجرا کند. در نسخه دموی(demo) این آزمایش، اسکریپت تنها آدرس ایمیل کاربران را برای AIR ارسال میکرد و این شرکت نیز با اتکا به همین اطلاعات، تعداد عاملهای هوش مصنوعی که این Skill روی آنها اجرا شده بود را محاسبه کرد. با این حال، اگر این سناریو توسط یک مهاجم واقعی اجرا میشد، میتوانست از همین نقطه ورود برای خواندن فایلها، انتقال دادهها یا دسترسی به سامانههای داخلی استفاده کند؛ قابلیتی که تنها به سطح دسترسی عامل هوش مصنوعی محدود میشد.
AIR نخستین شرکتی نیست که چنین روشی را اثبات میکند. حدود سه هفته پیش نیز شرکت Trail of Bits موفق شد سامانه شناسایی Skillهای مخرب در ClawHub، اسکنر Cisco و هر سه اسکنر امنیتی یکپارچهشده در skills.sh را دور بزند. جمعبندی این پژوهش نیز کاملاً روشن بود؛ اسکنرها فقط نسخهای از Skill را بررسی میکنند که برای ارزیابی ارسال شده است، در حالی که مهاجم میتواند محتوای پیلود را بارها تغییر دهد تا در نهایت از فرآیند اسکن عبور کند.
بررسیها نشان میدهد این روش تنها به این آزمایش محدود نبوده و مهاجمان ماههاست در حملات واقعی از همین تکنیک استفاده میکنند. در این شیوه، نسخهای کاملاً سالم از Skill برای بررسی و تأیید ارسال میشود، اما پیلود روی یک وبسایت خارجی میزبانی میشود تا عامل هوش مصنوعی فقط هنگام نصب Skill آن را دریافت و اجرا کند.
ریشه اصلی ضعف در اسکن امنیتی Skillها
دلیل اصلی این ضعف، نحوه عملکرد اسکنرهای امنیتی است. این ابزارها فقط یکبار و هنگام بررسی اولیه، Skill را ارزیابی میکنند اما محتوای صفحهای که Skill عامل هوش مصنوعی برای دریافت دستورالعملهای بعدی به آن متکی است، میتواند در هر زمان پس از تأیید تغییر کند. در نتیجه، حتی Skillهایی که هنگام انتشار کاملاً ایمن به نظر میرسند، ممکن است بعدها عامل هوش مصنوعی را به دریافت محتوای مخرب یا دستکاریشده هدایت کنند.
مستندات شرکت آنتروپیک (Anthropic) نیز نسبت به همین موضوع هشدار دادهاند. بر اساس این مستندات، Skillهایی که برای دریافت دستورالعمل یا محتوای موردنیاز به آدرسهای اینترنتی خارجی متکی هستند، ذاتاً ریسک بیشتری دارند؛ زیرا محتوای این آدرسها میتواند پس از تأیید و بررسی Skill تغییر کند.
افزون بر این، یک پژوهش مستقل نیز نشان داده است که اسکنرهای امنیتی در ارزیابی یک Skill، همواره به نتیجه یکسانی نمیرسند. علت این اختلاف، نحوه عملکرد این ابزارهاست؛ زیرا هر اسکنر تنها محتوای خود Skill را بهصورت مستقل بررسی میکند و تغییرات ایجادشده در لینکهای خارجی پس از تأیید آن را در نظر نمیگیرد.
پیام دفاعی برای سازمانها
پیام این پژوهش برای مدافعان امنیت روشن است؛ Skillها نباید صرفاً بهعنوان یک فایل متنی یا مجموعهای از دستورالعملها در نظر گرفته شوند؛ بلکه باید همانند یک نرمافزار مورد ارزیابی امنیتی قرار گیرند. به همین دلیل، بررسی فایلهای داخل پکیج بهتنهایی کافی نیست و لینکها، منابع و سرویسهایی که Skill به آنها ارجاع میدهد نیز باید با همان دقت بررسی شوند.
برای کاهش ریسک Skill عامل هوش مصنوعی، نخست باید مشخص شود چه Skillهایی هماکنون در محیط سازمان در حال استفاده هستند. همچنین توصیه میشود Skillهای جدید فقط از یک منبع مورد اعتماد که تحت کنترل سازمان قرار دارد، دریافت شوند و هرگونه تغییر در فایلها، لینکها یا سایر منابع وابسته آنها دوباره مورد ارزیابی قرار گیرد. زیرا دریافت نتیجه «ایمن» در زمان نصب، زمانی که Skill به یک لینک خارجی قابل ویرایش متکی باشد، تضمینی برای حفظ امنیت آن در آینده نخواهد بود.
پژوهشگران برای کاهش ریسک، اجرای اقدامات زیر را توصیه میکنند:
- پینکردن نسخهها (Version Pinning) تا از بارگذاری نسخههای تغییریافته یا تأییدنشده جلوگیری شود.
- پیکربندی عاملهای هوش مصنوعی بر اساس اصل حداقل سطح دسترسی (Least Privilege) تا دامنه دسترسی آنها به حداقل ممکن محدود شود.
- در نظر گرفتن این فرض که هر دستورالعمل دریافتشده از یک منبع خارجی، با سطح دسترسی همان عامل اجرا میشود؛ بنابراین هر منبع خارجی باید پیش از استفاده بهدقت اعتبارسنجی شود.
ارزیابی ادعای دسترسی به 26 هزار عامل هوش مصنوعی
آمار مربوط به دسترسی به حدود 26 هزار عامل هوش مصنوعی تنها از سوی شرکت AIR منتشر شده و باید با نگاهی انتقادی به آن نگریست. این شرکت در حال راهاندازی یک مارکتپلیس مدیریتشده برای Skillها است و در پایان گزارش خود نیز این سرویس را معرفی میکند. ازاینرو، ادعاهایی مانند دسترسی به 26 هزار عامل، نصب Skill روی برخی حسابهای سازمانی و امکان در اختیار گرفتن کامل این عاملها، تاکنون بهصورت مستقل تأیید نشدهاند.
با این حال، اهمیت این آزمایش بیش از هر چیز به روشی بازمیگردد که برای اجرای آن به کار گرفته شده است. اسکنرهای نامبرده واقعاً فقط پکیج ارسالی را بررسی میکنند و ناتوانی آنها در ارزیابی لینکهای خارجی نیز پیشتر در پژوهشهای مستقل به اثبات رسیده است. افزون بر این، شاخصهایی مانند ستارههای گیتهاب و دریافت نتیجه «ایمن» از اسکنرهای امنیتی، همچنان از مهمترین معیارهایی هستند که بسیاری از کاربران برای اعتماد به یک Skill به آنها اتکا میکنند.
در واقع، این آزمایش بیش از آنکه یک آسیبپذیری جدید را آشکار کند، ضعفهای موجود در سازوکار اعتماد Skill عامل هوش مصنوعی را کنار هم قرار میدهد. از ستارههای گیتهاب که میتوانند تصویری نادرست از اعتبار یک Skill ایجاد کنند، تا اسکنهایی که تنها وضعیت آن را در زمان بررسی ارزیابی میکنند و لینکهای خارجی که محتوای آنها پس از تأیید نیز قابل تغییر است؛ همه این عوامل میتوانند مسیر سوءاستفاده را برای مهاجمان هموار کنند.
در نهایت، چه تعداد واقعی عاملهای تحت تأثیر این آزمایش 26 هزار باشد و چه تنها بخشی از این رقم، مسئله اصلی تغییری نمیکند؛ مسیری که این روش برای سوءاستفاده از آن استفاده میکند، همچنان باز است و مدافعان امنیت هنوز نتوانستهاند آن را بهطور کامل مسدود کنند.