یه ریپوی تمیز که ایجنت کدنویس رو گول میزنه
خلاصهٔ کاملتر
به گفتهٔ نویسنده، یه ابزار کدنویسی ایجنتیک که مأمور میشه یه ریپوی گیتهابِ بهظاهر بیضرر رو کلون و راهاندازی کنه، میتونه یه پیلود مخرب رو اجرا کنه که برای اسکنرهای امنیتی، ایجنتهای هوش مصنوعی و بازبینهای انسانی نامرئی میمونه.
محققهای شبکهٔ تحقیقاتی روز صفر موزیلا (0DIN) میگن این نفوذ «بدون هیچ کد اکسپلویتی، بدون هیچ هشداری و بدون هیچ دستور مشکوکی که کسی مجبور باشه تأییدش کنه» اتفاق میافته. اونها نشون دادن چطور یه مهاجم میتونه با استفاده از Claude Code برای اجرای یه پروژهٔ کلونشده، یه شل تعاملی روی دستگاه توسعهدهنده بکاره.
روش حمله به سه جزء تکیه داره که هرکدوم جدا از هم هیچ تهدیدی نیستن و شکی برنمیانگیزن. اول، یه ریپوی تمیزِ گیتهاب با دستورالعملهای راهاندازی استاندارد، مثل نصب وابستگیها و مقداردهی اولیهٔ پروژه. دوم، پکیج پایتون عمداً طوری طراحی شده که تا وقتی مقداردهی اولیه نشده اجرا نشه و یه پیام خطا بده که به کاربر میگه دستور راهاندازی رو اجرا کن؛ Claude Code این رو یه مشکل عادیِ راهاندازی میبینه و موقع تلاش برای رفع خطا، خودش اون دستور پیشنهادی رو اجرا میکنه.
سوم، اجرای اون دستور راهاندازی یه اسکریپت شل رو صدا میزنه که مقدار پیکربندی ذخیرهشده تو یه رکورد DNS از نوع TXT (که در کنترل مهاجمه) رو میگیره و همون بهعنوان دستور اجرا میشه. محققهای 0DIN توضیح میدن که این رویکرد به هیچ جزء مخربی تو ریپوی کلونشده نیاز نداره و خودِ ایجنت کل زنجیرهٔ حمله رو، از جمله مرحلهای که شبیه یه خطای رایج کاربره، خودکار پیش میبره.
اگه حمله موفق شه، مهاجم یه شل با دسترسی و امتیازهای خودِ توسعهدهنده به دست میاره؛ یعنی دسترسی به متغیرهای محیطی، کلیدهای API، فایلهای پیکربندی محلی و فرصت برقراری ماندگاری. به نقل از محققها، «Claude Code هیچوقت تصمیم نگرفت شل باز کنه، بلکه تصمیم گرفت یه خطا رو تعمیر کنه»؛ شل معکوس سه قدمِ غیرمستقیم از هرچی که ایجنت واقعاً ارزیابی کرده فاصله داره: یه پیام خطا که بهش اعتماد کرد، یه اسکریپت که یه مقدار رو گرفت، و یه رکورد DNS که اصلاً ندیدش.
نویسنده میگه هرچند این روش فعلاً فقط یه اثبات مفهومه، 0DIN هشدار میده که مهاجمها میتونن راحت همچین ریپوهایی رو از طریق آگهیهای شغلی جعلی، آموزشها، پستهای وبلاگ یا پیام مستقیم پخش کنن. برای جلوگیری، پیشنهاد 0DIN اینه که ایجنتهای هوش مصنوعی باید کل زنجیرهٔ اجرای دستورهای راهاندازی رو، از جمله اسکریپتها و کدی که موقع اجرا بهصورت پویا گرفته میشه، به کاربر نشون بدن.
نکات کلیدی:
- یه ریپوی بدون کد مخرب، ایجنت کدنویس رو وادار به اجرای پیلود میکنه
- ترفند از تلاش ایجنت برای رفع یه خطای عمدی سوءاستفاده میکنه
- دستور راهاندازی، مقدار مخرب رو از یه رکورد DNS کنترلشدهٔ مهاجم میگیره
- نتیجه یه شل معکوس با دسترسی کامل خودِ توسعهدهندهست
- راهکار پیشنهادی: شفافسازی کامل زنجیرهٔ اجرای دستورهای راهاندازی




