مجله تخصصی هک و امنیت

دانش به‌روز، تحلیل عمیق، امنیت پایدار

آسیب‌پذیری در Azure DevOps چگونه یک کامنت ساده را به دستور مخرب تبدیل می‌کند؟

نشت اطلاعات Azure DevOps با یک کامنت مخفی

شرکت Manifold Security با بررسی سرور Azure DevOps MCP مایکروسافت، یک آسیب‌پذیری در Azure DevOps را کشف کرده که ریشه در نحوه پردازش متفاوت اطلاعات دارد. Azure DevOps از قابلیت Markdown پشتیبانی می‌کند و به توسعه‌دهندگان اجازه می‌دهد کامنت‌هایی به فرمت HTML در توضیحات Pull Request قرار دهند که در رابط کاربری وب دیده نمی‌شوند. با این حال، وقتی عامل هوش مصنوعی از طریق REST API این محتوا را دریافت می‌کند، تمام متن، از جمله همان کامنت‌های مخفی، بدون هیچ پالایشی برایش ارسال می‌شود. نتیجه این شکاف امنیتی آن است که یک مهاجم می‌تواند با قرار دادن دستوراتی نامرئی برای چشم انسان، عامل هوش مصنوعی را که با مجوزهای یک بازبین ارشد فعالیت می‌کند، وادار به ورود به پروژه‌های ممنوعه، خواندن ویکی‌های محرمانه و اجرای پایپ‌لاین‌های غیرمجاز کند.

چرا مکانیسم Spotlighting نتوانست از نشت اطلاعات Azure DevOps جلوگیری کند؟

نکته تأسف‌بار ماجرا اینجاست که مایکروسافت پیش‌تر برای مقابله با چنین تهدیداتی، راهکاری به نام Spotlighting را طراحی کرده بود. این روش با نشانه‌گذاری داده‌های غیرقابل اعتماد، به مدل هوش مصنوعی می‌آموزد که میان یک متن ساده و یک دستورالعمل اجرایی تمایز قائل شود. با این حال، بررسی کد منبع نشان می‌دهد تابعی که مسئول تحویل اطلاعات Pull Request به عامل هوش مصنوعی است، برخلاف بخش‌های ویکی یا گزارش‌های Build، از این لایه حفاظتی بی‌بهره مانده است. این یعنی اطلاعاتی که از یک Pull Request می‌آیند، به‌عنوان یک «داده غیرقابل اعتماد» علامت‌گذاری نشده و عامل هوش مصنوعی آن را به‌عنوان یک «دستور» معتبر پردازش می‌کند. این نقص، روزنه‌ای بزرگ برای نفوذ و نشت اطلاعات Azure DevOps باز گذاشته است.

نشت اطلاعات Azure DevOps با یک کامنت مخفی
نشت اطلاعات Azure DevOps با یک کامنت مخفی

آزمایش واقعی حمله؛ وقتی عامل هوش مصنوعی جاسوس می‌شود

برای اثبات عملی این آسیب‌پذیری، تیم Manifold Security یک حمله شبیه‌سازی‌شده ترتیب داد. یک مهاجم فرضی یک Pull Request کاملاً عادی و بی‌خطر ایجاد کرد، اما درون آن یک کامنت HTML مخفی گنجاند. به محض آنکه بازبین انسانی، ربات هوش مصنوعی را برای بررسی کد فراخواند، عامل بی‌خبر از همه جا، دستور پنهان را اجرا کرد: ابتدا یک Pipeline در پروژه‌ای دیگر به راه انداخت، سپس صفحه‌ای محرمانه از ویکی داخلی همان پروژه را خواند و در نهایت، محتوای دزدیده‌شده را در قالب یک کامنت جدید در زیر همان Pull Request منتشر کرد. تمام این عملیات با مجوزهای قانونی کاربر بازبین انجام شد و در آزمایش‌ها، ابزارهایی چون Copilot CLI و Claude Code gleichermaßen (به طور یکسان) در برابر آن آسیب‌پذیر بودند.

چه باید کرد؟ راهکارهای کاهش ریسک نشت اطلاعات Azure DevOps

اگرچه مایکروسافت این حمله را در چارچوب ریسک‌های شناخته‌شده هوش مصنوعی پذیرفته، اما هنوز برنامه زمانی مشخصی برای ترمیم این نقص اعلام نکرده است. در این میان، کارشناسان معتقدند با توجه به نامرئی بودن کامنت‌های مخرب در رابط کاربری، تشخیص این تهدید برای کاربران عادی تقریباً ناممکن است. از این رو، به سازمان‌ها توصیه می‌شود هرچه سریع‌تر سطح دسترسی عامل‌های هوش مصنوعی را بر اساس اصل «حداقل سطح دسترسی» محدود کرده، تنها ابزارهای ضروری برای هر وظیفه را در اختیارشان بگذارند و لاگ فعالیت‌های آن‌ها را به‌طور پیوسته رصد کنند. چراکه در دنیایی که توسعه‌دهندگان و بازبین‌ها به طور فزاینده‌ای کار بررسی کد را به عامل‌های خودکار می‌سپارند، یک مسیر محافظت‌نشده در سامانه برای رقم‌خوردن یک فاجعه امنیتی کافی است.

اخرین اخبار هک و امنیت سایبری

Leave a Reply

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *