به گزارش خبرگزاری آگاه؛ ابزار برنامهنویسی مبتنی بر هوش مصنوعی کلود کد که توسط آنتروپیک توسعه یافته، با مشکلی در نحوه ذخیرهسازی تنظیمات کاربران مواجه شده است که میتواند اطلاعات حساس رایانهها و سرویسهای متصل به آنها را در معرض دسترسی عمومی قرار دهد. پژوهشگران شرکت امنیتی Apiiro با بررسی مخازن عمومی گیتهاب متوجه شدهاند فایلهایی که کلود کد برای نگهداری مجوزهای اجرای دستورات استفاده میکند، گاهی همراه با کدهای پروژه در اینترنت منتشر میشوند. این فایلها ممکن است شامل دستوراتی باشند که رمزهای عبور، کلیدهای دسترسی به سرویسهای آنلاین و سایر اطلاعات محرمانه مستقیماً در متن آنها نوشته شده است. مشکل زمانی اهمیت بیشتری پیدا میکند که کاربران بدون اطلاع از محتوای این فایلها، پروژه خود را در یک مخزن عمومی قرار میدهند و اطلاعاتی که قرار بوده فقط روی رایانه شخصی باقی بمانند، در اختیار سایر کاربران گیتهاب قرار میگیرند.
گزینه تأیید دائمی دستورات چگونه اطلاعات را افشا میکند؟
کلود کد برای انجام فعالیتهای برنامهنویسی میتواند دستوراتی را در محیط خط فرمان رایانه اجرا کند؛ قابلیت مهمی که امکان نصب ابزارها، اجرای برنامهها، بررسی فایلها و انجام بسیاری از کارهای تکراری توسعه نرمافزار را فراهم میکند. این ابزار پیش از اجرای برخی دستورات از کاربر اجازه میگیرد و گزینهای با عنوان «Yes, and don’t ask again» در اختیار وی قرار میدهد که به معنای تأیید دستور و جلوگیری از نمایش دوباره درخواست مجوز برای دستورات مشابه است. هنگامی که کاربر این گزینه را انتخاب میکند، کلود کد مجوز مربوط به دستور را در فایلی با مسیر.claude/settings.local.json ذخیره میکند تا در دفعات بعد بتواند بدون درخواست تأیید مجدد، دستور مجاز را اجرا کند.
مشکل اصلی به نحوه ثبت این دستورات در فایل تنظیمات مربوط میشود. در بعضی موارد، کلود کد بهجای ذخیره یک الگوی کلی برای تشخیص دستورهای مجاز، متن کامل دستور را در فایل قرار میدهد. اگر دستور اولیه شامل رمز عبور پایگاه داده، توکن احراز هویت یا کلید API باشد، همان اطلاعات محرمانه نیز در فایل ذخیره میشوند. برای مثال، برنامهنویسی که دستوری را همراه با اطلاعات دسترسی به یک سرویس آنلاین اجرا میکند، ممکن است با انتخاب تأیید دائمی باعث شود کلود کد نسخه کامل آن دستور را برای استفادههای بعدی نگه دارد. این اطلاعات تا زمانی که فایل روی رایانه شخصی باقی بماند، لزوماً در معرض دسترسی عمومی نیستند، اما انتشار همان فایل در گیتهاب میتواند اطلاعات حساس را برای دیگران قابل مشاهده کند.
بیش از ۱۰۰ هزار فایل تنظیمات در گیتهاب منتشر شدهاند
پژوهشگران Apiiro در بررسی مخازن عمومی گیتهاب بیش از ۱۰۰ هزار مورد انتشار فایل تنظیمات محلی کلود کد را شناسایی کردهاند. از میان این موارد، حدود ۱۱۰۰ فایل متعلق به ۶۳ سازمان مختلف حاوی اطلاعات محرمانه بودهاند. دادههای کشفشده شامل رمزهای عبور پایگاههای داده، توکنهای API، کلیدهای خصوصی و اطلاعات دسترسی با سطح مدیریتی یا ریشه سیستم هستند. این آمار به معنای افشای اطلاعات در تمام فایلهای منتشرشده نیست، زیرا بخش بزرگی از فایلهای تنظیمات شناساییشده ظاهراً اطلاعات حساس نداشتهاند. با این حال، وجود بیش از هزار مورد حاوی دادههای محرمانه، خطر انتشار ناخواسته اطلاعات دسترسی از طریق فایلهای تنظیمات ابزارهای برنامهنویسی را برجسته کرده است.
نکته مهم دیگر آن است که حذف فایل از مخزن عمومی لزوماً تمام آثار انتشار اطلاعات را از بین نمیبرد. گیتهاب تاریخچه تغییرات پروژهها را نگهداری میکند و ممکن است نسخه قبلی فایل همچنان در سوابق ثبتشده قابل دسترسی باشد. همچنین سایر کاربران میتوانند نسخهای مستقل از مخزن ایجاد کنند که در گیتهاب با نام Fork شناخته میشود. اگر اطلاعات محرمانه پیش از حذف شدن در چنین نسخههایی کپی شده باشند، پاک کردن فایل اصلی برای جلوگیری از دسترسی به آنها کافی نخواهد بود. به همین دلیل، در موارد افشای رمز عبور یا کلید API، تنها حذف فایل منتشرشده راهکار کاملی محسوب نمیشود و معمولاً لازم است اطلاعات دسترسی مربوط نیز باطل یا جایگزین شوند.
چرا گیتهاب جلوی انتشار فایلهای محرمانه را نگرفته است؟
کلود کد برای جلوگیری از انتشار فایل تنظیمات محلی، مسیر آن را به فهرست سراسری فایلهای نادیدهگرفتهشده گیت اضافه میکند. این فهرست که با عنوان.gitignore شناخته میشود، به ابزار مدیریت نسخه گیت مشخص میکند کدام فایلها نباید هنگام ثبت تغییرات یا ارسال پروژه به مخزن، بهصورت معمول در نظر گرفته شوند. با این حال، فهرست سراسری روی رایانه کاربر ذخیره میشود و برخلاف فایل تنظیمات مخصوص هر پروژه، لزوماً همراه با مخزن به دستگاه دیگری منتقل نمیشود. همین تفاوت میتواند شرایطی ایجاد کند که فایل محرمانه روی رایانه اصلی نادیده گرفته شود، اما پس از انتقال پروژه به دستگاه دیگر یا ایجاد مخزن جدید، بدون وجود تنظیمات محافظتی مناسب در میان فایلهای قابل انتشار قرار بگیرد.
پژوهشگران همچنین مواردی را شناسایی کردهاند که خود کلود کد تغییرات فایل تنظیمات را بدون دخالت مستقیم کاربر در مخزن ثبت کرده است. در چنین شرایطی، برنامهنویس ممکن است تصور کند فایلهای محلی حساس از فرایند انتشار کنار گذاشته شدهاند، اما اجرای خودکار دستورات ثبت تغییرات باعث شود اطلاعات محرمانه وارد تاریخچه پروژه شوند. این مسئله بهویژه در ابزارهای برنامهنویسی مبتنی بر ایجنت اهمیت دارد، زیرا آنها میتوانند علاوه بر تولید و اصلاح کد، برخی فعالیتهای مربوط به مدیریت فایلها و مخازن را نیز انجام دهند. در نتیجه، خطر افشای اطلاعات فقط به اشتباه دستی کاربر محدود نیست و نحوه عملکرد خودکار ابزار نیز میتواند در ایجاد آن نقش داشته باشد.
آنتروپیک در حال بررسی راهکار رفع مشکل است
گزارشهای مربوط به این رفتار از مدتها قبل مطرح شده بودند و دستکم در مردادماه سال گذشته، یکی از کاربران کلود کد مشکل ذخیرهسازی و انتشار احتمالی اطلاعات حساس را در سامانه ثبت خطاهای این پروژه گزارش کرده بود. گزارشهای دیگری نیز به اضافه نشدن صحیح فایل تنظیمات به فهرست فایلهای نادیدهگرفتهشده یا ذخیره اطلاعات محرمانه در فایلهای دیگری اشاره داشتند که از انتشار در گیت محافظت نمیشدند. با این حال، این گزارشها پس از گذشت ۶۰ روز بدون فعالیت تازه بسته شدند و اصلاح مشخصی برای آنها ارائه نشد.
بوریس چرنی، یکی از اعضای تیم توسعه کلود کد، در واکنش به یافتههای جدید گفته است که توسعهدهندگان در حال بررسی روشهایی برای جلوگیری از انتشار چنین اطلاعاتی هستند. وی تأکید کرده فایلهای تنظیمات محلی اساساً نباید وارد مخازن مدیریت نسخه شوند و به نظر میرسد برخی موارد افشا با ایجاد یا ثبت دستی این فایلها ارتباط داشتهاند. چرنی استفاده از حالت خودکار یا Auto Mode را نیز پیشنهاد کرده است؛ قابلیتی که برای مدیریت درخواستهای معمول مجوز از سامانههای تشخیص هوشمند استفاده میکند و نیاز به تعریف دستی تعداد زیادی از قوانین اجازه یا ممنوعیت اجرای دستورات را کاهش میدهد.
با این حال، یکی از کاربران در پاسخ به این پیشنهاد توضیح داده که حتی هنگام استفاده از حالت خودکار نیز ممکن است دستورهای حاوی اطلاعات حساس در فایلهای تنظیمات ذخیره شوند. چرنی این نکته را پذیرفته و گفته است تیم توسعه در حال بررسی راهکارهای بهبود این رفتار است. به همین دلیل، فعال کردن حالت خودکار در شرایط فعلی تضمینی برای جلوگیری کامل از ذخیره اطلاعات محرمانه محسوب نمیشود و کاربران همچنان باید مراقب محتوای فایلهایی باشند که همراه با پروژههای خود منتشر میکنند.
ابزارهای شناسایی اطلاعات محرمانه هم تمام موارد را پیدا نمیکنند
یکی از راهکارهای پیشنهادی برای مقابله با این مشکل، استفاده از ابزارهای اسکن اطلاعات محرمانه است که فایلهای پروژه را برای شناسایی رمزهای عبور، توکنها و کلیدهای دسترسی بررسی میکنند. با این حال، یافتههای Apiiro نشان میدهد این ابزارها نیز همیشه قادر به تشخیص تمام موارد نیستند. از میان حدود ۱۱۰۰ مورد افشای شناساییشده، ۲۱۵ مورد توسط ۲ ابزار شناختهشده Gitleaks و TruffleHog تشخیص داده نشده بودند. این مسئله اهمیت زیادی دارد، زیرا توسعهدهندگان ممکن است پس از اجرای چنین ابزارهایی تصور کنند مخزن آنها هیچ اطلاعات حساسی ندارد، در حالی که برخی دادههای محرمانه همچنان در فایلهای تنظیمات باقی مانده باشند.
تیم کلود کد در حال بررسی امکان اضافه کردن قابلیت شناسایی اطلاعات محرمانه به خود ابزار است تا پیش از ثبت یا انتشار فایلها، احتمال وجود رمزهای عبور و سایر دادههای حساس بررسی شود. با این حال، هنوز زمان مشخصی برای ارائه چنین قابلیتی اعلام نشده است. کاربران تا زمان ارائه اصلاحات میتوانند فایل.claude/settings.local.json و سایر تنظیمات محلی را پیش از انتشار پروژه بررسی کنند، مسیرهای حساس را در فایل.gitignore مخصوص همان پروژه قرار دهند و از ثبت مستقیم رمزهای عبور و توکنها در دستورات قابل ذخیره خودداری کنند. همچنین در صورت انتشار ناخواسته اطلاعات دسترسی، باطل کردن کلیدها و تغییر رمزهای مربوط اهمیت بیشتری از حذف ساده فایل دارد.
افشای اطلاعات از طریق کلود کد تنها نمونه نگرانیهای امنیتی مرتبط با ابزارهای ایجنتمحور نیست. ماه گذشته نیز متا پس از کشف مشکلی در قابلیت اشتراکگذاری ایجنت هوش مصنوعی میوز، این ویژگی را موقتاً غیرفعال کرد؛ زیرا پژوهشگران متوجه شده بودند آدرس لینکهای اشتراکگذاری را میتوان بهآسانی حدس زد. در مورد کلود کد، هنوز شواهدی درباره سوءاستفاده گسترده از اطلاعات افشاشده منتشر نشده است، اما یافتههای جدید اهمیت بررسی فایلهای تنظیمات و محدود کردن دسترسی ابزارهای هوش مصنوعی به اطلاعات محرمانه را برای توسعهدهندگان و سازمانها افزایش داده است.
انتهای خبر/288042/
- تسریع در روند توسعه اقتصادی؛ محور نشست مشترک مدیرعامل بانک تجارت و نمایندگان مجلس
- سندرز: مردم آمریکا دیگر وعده و اصلاحات نمایشی نمیخواهند/ ثروتمندان برنده اقتصاد ترامپ هستند
- تأکید ایران و ویتنام بر تقویت ارتباط مستقیم میان بنگاههای اقتصادی
- از استثناگرایی تا سلطه اقتصادی؛ چهار محور اصلی در تبیین ماهیت استکبار جهانی
- اقتصاد کشور به قرارگاه عملیاتی نیاز دارد/ حذف ارز ترجیحی فشار سنگینی بر معیشت مردم وارد کرد
- عارف: باید از «جانبازان اقتصادی جنگ» حمایت کنیم
- پکن با حفظ اهرم فشار تعرفهای، توپ را به زمین واشنگتن انداخت/ سیاستهای تعرفهای ترامپ همچنان مانع ثبات اقتصادی است
- تأکید ایران و چین بر توسعه همکاریهای اقتصادی و سرمایهگذاری
- بازخوانی تابآوری انرژی از منظر اقتصاد رفتاری و حکمرانی همیارانه
- فرودگاه ریاض زیر فشار حملات موشکی یمن/ خسارتهای سنگین، توقف پروازها و تهدید برنامههای اقتصادی عربستان
- بهجای محرومکردن کودکان از شبکههای اجتماعی، غولهای فناوری را مهار کنید
- ۸ ماه انتظار داروخانهها برای دریافت مطالبات از تأمین اجتماعی / وعدهوعیدها مشکل صنعت دارو را حل نمیکند
- انسجام اجتماعی؛ رمز اقتدار ملی و ضامن امنیت و پیشرفت پایدار
- واکنش تأمیناجتماعی به اختلال در نسخه نویسی الکترونیک
- ظفرقندی: توسعه خدمات سلامت علوی باید به تقویت سرمایه اجتماعی منجر شود
- اجرای برنامههای جدید رفاهی برای بازنشستگان تأمیناجتماعی
- مستندسازان در جنگ و روایت مسائل اجتماعی توانمندی خود را اثبات کردهاند
- شورای فرهنگ عمومی؛ قرارگاه هماهنگی و کانون اصلاح آداب و رسوم نادرست / ضرورت برخورد آگاهانه با دغدغههای اجتماعی در راستای اصلاح سبک زندگی
- انفاق و همدلی اجتماعی از نیازهای مهم جامعه امروز است
- قرآن؛ نقشه راه عبور از بحرانهای اخلاقی و اجتماعی جهان امروز است

