اگر امروز از دستیارهای هوش مصنوعی برای پیشنهاد کتابخانههای کدنویسی استفاده میکنید، ممکن است بدون آنکه بدانید در حال باز کردن درِ پشتی سیستم خود برای هکرها باشید. یک دستور ساده از یک مدل زبانی میتواند کل محیط توسعه شما را به خطر بیندازد.
سرگی آسائل شیندر (Serguey Asael Shinder)، توسعهدهنده نرمافزار، در ۲۶ سپتامبر ۲۰۲۶ هشدار داد که مدلهای زبانی بزرگ (LLM) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن کتابها جواب میدهد — مدام نام وابستگیهایی را پیشبینی میکنند که در واقعیت وجود ندارند. همانطور که در تحلیلهای قبلی ما دربارهی توهمات مدلهای زبانی اشاره کردیم، این مدلها بر اساس احتمال مینویسند، نه بر اساس حقیقت. این عدم قطعیت در خروجیها، چالشهای متعددی ایجاد میکند؛ برای مثال، توسعهدهندگان برای حذف خطاهای ساختاری مانند باگهای JSON در خروجیهای مدلهای زبانی از روشهای لایهبندی شده استفاده میکنند تا دقت پاسخها را افزایش دهند.
تصور کنید از یک AI میخواهید یک فرمت تاریخ پیچیده را تجزیه کند. مدل یک راهکار سه خطی و تمیز پیشنهاد میدهد که به یک بسته خاص نیاز دارد. چون مدل نامی را پیشبینی میکند که احتمالاً یک برنامهنویس از آن استفاده میکند، نامی کاملاً حرفهای و رسمی ابداع میکند، حتی اگر آن بسته هرگز ساخته نشده باشد.
طبق گزارش شیندر، این وضعیت یک بردار حمله پیشبینیپذیر ایجاد میکند. مهاجمان میتوانند این نامهای پرتکرار و توهمزده را جمعآوری کرده و آنها را در مخازن عمومی ثبت کنند. وقتی شما دستور نصب را اجرا میکنید، فقط یک کتابخانه اضافه نمیکنید؛ بلکه یک اسکریپت نصب را اجرا میکنید که به توکنهای محیطی لپتاپ شما دسترسی دارد. این نوع آسیبپذیریها یادآور خطرات تزریق کد است که در آن استفاده از بردارهای ثابت argv میتواند راهکاری برای توقف تزریق کد در عاملهای هوش مصنوعی باشد.
شناسایی تلههای نرمافزاری
به نقل از مستندات امنیتی، خواندن منطق کد کافی نیست، چون خطر در فرآیند نصب است، نه در منطق برنامه. برای محافظت از سیستم، وابستگیهای جدید را مستقیماً در مخزن بررسی کنید:
- سن بسته را چک کنید (مراقب بستههایی باشید که فقط چند هفته عمر دارند).
- تعداد نسخهها و نگهدارندگان را بررسی کنید.
- تعداد وابستگیها و مخزن متصل به آن را بازبینی کنید.
- مطمئن شوید مخزن یک پروژه واقعی است و نه یک «لباس مبدل» برای فریب کاربر.
این تغییر در ماهیت ریسک یعنی برنامهنویسان باید از اعتماد به دستیار، به سمت اعتماد به مخزن حرکت کنند. در واقع، برای عبور از دوران «کدنویسی بر اساس حس» و رسیدن به استانداردهای مهندسی، چارچوبهایی مانند Four-Leaf Tree تلاش میکنند تا لاگهای فنی را جایگزین حدس و گمان در توسعه AI کنند. اثر ثانویه این موضوع، نیاز به امنیت ساختاری است؛ مثلاً نصب انحصاری از طریق lockfileها در خط لولههای تولید و بررسی امنیتی هر وابستگی جدید به عنوان یک تغییر مستقل.
گام بعدی شما
- استفاده از دستیارهای AI برای کشف بستههای جدید را متوقف کنید.
- هر کتابخانه پیشنهادی را پیش از نصب با مستندات رسمی یا لیستهای تاییدشده جامعه برنامهنویسان تطبیق دهید.
- محیطهای توسعه خود را ایزوله کرده و دسترسی اسکریپتهای نصب به توکنهای حساس را محدود کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو