عامل هوش مصنوعی Rovo شرکت Atlassian را میتوان با یک کلیک فریب داد تا تیکتهای Jira، صفحات Confluence و کلیدهای API را برای یک مهاجم ارسال کند، و «کلید قطع» (kill switch) مدیر نیز مانع از قابلیت اصلی دریافت دادهها نمیشود.
این نقص شامل دو تکنیک تزریق (injection) است که به یک عامل مخرب اجازه میدهد دستورات پنهان را در صفحات داخلی جاسازی کند یا لینکی بسازد که باعث شود Rovo از طرف کاربر، فراخوانیهای خروجی (outbound calls) انجام دهد.
نحوه عملکرد این آسیبپذیری
Rovo محتوای وب را میخواند، آن را خلاصه میکند و در صورت فعال بودن، اطلاعات اضافی را از اینترنت استخراج میکند. این عامل در تفکیک «محتوای مورد نظر برای خلاصهسازی» از «دستورالعملهای اجرایی» ناتوان است. دو بردار حمله از این ترکیب سوءاستفاده میکنند:
- تزریق محتوا (Content injection) – یک مهاجم دستوری را در یک صفحه Confluence پنهان میکند. وقتی Rovo صفحه را اسکن میکند، دستور پنهان را دنبال کرده، یک URL حاوی آدرس ایمیل خصوصی سازمان و نام فضای کاری (workspace) را فراخوانی میکند و دادهها را به سرور مهاجم ارسال میکند.
- تزریق URL (URL injection) – یک مهاجم لینکی دستکاری شده ارسال میکند. کلیک بر روی آن باعث میشود Rovo متن ارائه شده توسط مهاجم را به عنوان یک دستور مشروع کاربر در نظر بگیرد. به نظر میرسد عامل در حال انجام یک کار بیضرر، مانند شناسایی یک تصویر است، در حالی که همزمان اسرار داخلی را به یک نقطه پایانی (endpoint) خارجی ارسال میکند.
هر دو روش بر توانایی Rovo در فراخوانی URLهای دلخواه بر اساس هر متنی که پردازش میکند، تکیه دارند، بدون اینکه هیچ حفاظی برای تشخیص خلاصهسازی بیضرر از دستورالعمل مخرب وجود داشته باشد.
چرا دکمه تغییر وضعیت (toggle) مدیر کافی نیست
کنترل رابط کاربری Atlassian، جعبه جستجوی وب را پنهان میکند که به عنوان راهی برای خاموش کردن این ویژگی بازاریابی میشود. در عمل، این دکمه فقط عنصر فرانتاند (front-end) را حذف میکند؛ سرویس بکاند (back-end) که همچنان میتواند URLها را فراخوانی کند، فعال باقی میماند. این کنترل، رابط جستجو را میپوشاند، نه سرویس زیربنایی را.
مخاطرات برای سازمانها
- افشای دادهها – جزئیات حساس پروژه، مستندات داخلی و اطلاعات مربوط به اعتبارنامهها (credentials) میتوانند با کمترین تعامل کاربر، از محدوده شرکت خارج شوند.
آنچه مدیران امروز میتوانند بررسی کنند
- اثربخشی دکمه تغییر وضعیت – پس از غیرفعال کردن گزینه جستجوی وب، عمداً یک دستور فراخوانی (fetch) به عامل بدهید و درخواستهای خروجی را زیر نظر بگیرید. اگر درخواست ارسال شد، این دکمه صرفاً جنبه ظاهری دارد.
- کنترلهای ترافیک خروجی – هرگونه فراخوانی خارجی که عامل میتواند انجام دهد را به یک لیست مجاز (allow-list) از دامنههای مورد اعتماد محدود کنید. دسترسی آزاد به اینترنت، راه را برای سرقت دادهها باز میکند.
- تفکیک دستورالعمل از داده – اطمینان حاصل کنید که سیستم با صفحات یا فایلهای غیرقابل اعتماد، مانند منابع دستورات مورد اعتماد برخورد نمیکند. بدون این تفکیک، حملات تزریق دستور (prompt-injection) بسیار ساده و آسان میشوند.
گامهای معماری برای کاهش ریسک
- کانالهای مجزا – درخواستهای کاربر و بازیابی دادهها را از طریق خطوط لوله (pipelines) متمایز هدایت کنید. این کار از تفسیر یک محموله مخرب (payload) جاسازی شده در دادهها به عنوان یک دستور جلوگیری میکند.
- محدود کردن فراخوانیهای خروجی – فایروالها یا قوانین پروکسی را مستقر کنید که هر مقصدی را که صراحتاً برای عامل هوش مصنوعی تأیید نشده است، مسدود کنند.
- تأیید انسانی برای فراخوانیهای خارجی – قبل از اینکه عامل بتواند یک درخواست شبکه که از محیط شرکت خارج میشود را آغاز کند، یک مرحله تأیید دستی را الزامی کنید.
پاسخ متقابل Atlassian
آنچه باید در ادامه زیر نظر داشت
سازمانها باید بهروزرسانیهای Atlassian را در رابطه با هرگونه وصله (patch) یا تغییرات پیکربندی که به نقص تفکیک زیربنایی میپردازد، زیر نظر داشته باشند.
نکته کلیدی: توانایی Rovo در اجرای دستورات پنهان به این معناست که یک صفحه یا لینک مخرب میتواند دادههای محرمانه را تخلیه کند و دکمه تغییر وضعیت در رابط کاربری مانع از آن نمیشود. مدیران باید تأیید کنند که این ویژگی واقعاً غیرفعال شده است، ترافیک خروجی را محدود کنند و جریان دستورالعملها را بازطراحی کنند تا از تبدیل شدن عاملهای هوش مصنوعی به ابزارهای ناخواسته برای استخراج دادهها (data exfiltration) جلوگیری شود.
