خانه » آسیب‌پذیری در Gemini CLI امکان اجرای مخفیانه کد را فراهم می‌کند!

آسیب‌پذیری در Gemini CLI امکان اجرای مخفیانه کد را فراهم می‌کند!

توسط Vulnerbyt_News
31 بازدید
Flaw in Gemini CLI AI coding assistant allowed stealthy code execution گروه والنربایت vulnerbyte

یک آسیب‌پذیری در ابزار Gemini CLI گوگل به مهاجمان اجازه داد دستورات مخرب را به‌صورت مخفیانه اجرا کرده و داده‌ها را از رایانه‌های توسعه‌دهندگان با استفاده از برنامه‌های مجاز استخراج کنند.

جزئیات آسیب‌پذیری در Gemini CLI

این نقص توسط شرکت امنیتی Tracebit در ۲۷ ژوئن کشف و به گوگل گزارش شد. گوگل این مشکل را در نسخه ۰.۱.۱۴ برطرف کرد که در ۲۵ ژوئیه منتشر شد.

Gemini CLI، که در ۲۵ ژوئن ۲۰۲۵ معرفی شد، یک ابزار رابط خط فرمان است که به توسعه‌دهندگان امکان تعامل مستقیم با هوش مصنوعی Gemini گوگل از طریق ترمینال را می‌دهد. این ابزار برای کمک به وظایف کدنویسی طراحی شده و با بارگذاری فایل‌های پروژه در «context» و تعامل با مدل زبانی بزرگ (LLM) از طریق زبان طبیعی، پیشنهادات کدنویسی ارائه می‌دهد، کد می‌نویسد و حتی دستورات را به‌صورت محلی، چه با درخواست تأیید از کاربر و چه با استفاده از مکانیزم لیست مجاز، اجرا می‌کند.

روش اکسپلویت

محققان Tracebit، که بلافاصله پس از انتشار ابزار آن را بررسی کردند، دریافتند که می‌توان Gemini CLI را فریب داد تا دستورات مخرب را اجرا کند. این نقص، در ترکیب با ضعف‌های تجربه کاربری(UX)، می‌تواند به حملات اجرای کد غیرقابل‌شناسایی منجر شود.

این اکسپلویت با سوءاستفاده از نحوه پردازش فایل‌های «context» مانند README.md و GEMINI.md عمل می‌کند که برای درک پایگاه کد خوانده می‌شوند. Tracebit نشان داد که می‌توان دستورات مخرب را در این فایل‌ها مخفی کرد تا تزریق درخواست (prompt injection) انجام شود. همچنین، تجزیه ضعیف دستورات و مدیریت ناکافی لیست مجاز، امکان اجرای کد مخرب را فراهم می‌کند.

آن‌ها حمله‌ای را با ایجاد یک مخزن شامل یک اسکریپت پایتون بی‌ضرر و یک فایل README.md آلوده نشان دادند. با اجرای اسکن Gemini CLI روی این مخزن، ابتدا یک دستور بی‌ضرر (grep ^Setup README.md) اجرا شد، سپس یک دستور استخراج داده مخرب به‌عنوان اقدام مورد اعتماد، بدون نیاز به تأیید کاربر، اجرا گردید.

Flaw in Gemini CLI AI coding assistant allowed stealthy code execution گروه والنربایت vulnerbyte
دستور مخرب

دستور مورد استفاده در مثال Tracebit به‌ظاهر یک دستور grep است؛ اما پس از یک نقطه‌ویرگول (;)، یک دستور استخراج داده جداگانه برای ارسال تمام متغیرهای محیطی کاربر (که ممکن است شامل اسرار باشد) به سرور راه دور آغاز شد. Gemini CLI کل رشته را به‌عنوان دستور امن برای اجرا خودکار، در صورت مجاز بودن grep، تفسیر کرد.

Tracebit توضیح داد که Gemini این دستور را به‌عنوان یک دستور grep در نظر می‌گیرد و بدون پرس‌وجو از کاربر اجرا می‌کند، در حالی که در واقع شامل یک دستور مخرب برای استخراج داده‌ها یا حتی نصب شل راه دور یا حذف فایل‌ها است. علاوه بر این، خروجی Gemini با استفاده از فضای خالی دستکاری شد تا دستور مخرب از دید کاربر مخفی بماند.

محدودیت‌ها و خطرات

این حمله نیازمند پیش‌نیازهایی مانند مجاز بودن دستورات خاص توسط کاربر است؛ اما مهاجمان می‌توانند در بسیاری از موارد به نتیجه برسند. این نمونه‌ای دیگر از خطرات دستیارهای هوش مصنوعی است که می‌توانند برای استخراج مخفیانه داده‌ها، حتی در هنگام اجرای اقدامات به‌ظاهر بی‌ضرر، فریب داده شوند.

توصیه‌های امنیتی

کاربران Gemini CLI باید به نسخه ۰.۱.۱۴ (آخرین نسخه) ارتقا دهند. همچنین، از اجرای این ابزار روی پایگاه‌های کد ناشناخته یا غیرمورداعتماد خودداری کرده یا تنها در محیط‌های ایزوله (sandboxed) استفاده کنند.

Tracebit اعلام کرد که این روش حمله را روی سایر ابزارهای کدنویسی مبتنی بر هوش مصنوعی، مانند OpenAI Codex و Anthropic Claude، آزمایش کرده است؛ اما به دلیل مکانیزم‌های قوی‌تر لیست مجاز، آن‌ها آسیب‌پذیر نبودند.

منابع:

همچنین ممکن است دوست داشته باشید

پیام بگذارید