این کار مهم تلقی می شود، زیرا به درک بهتر این امکان می دهد که چگونه ابزارهای دستیار هوش مصنوعی در نهایت کاربران را به نوشتن کد ناامن سوق می دهند.
اخیراً این خبر منتشر شد گروهی از محققان از دانشگاه استنفوردd تاثیر استفاده از دستیاران هوشمند را هنگام نوشتن کد مطالعه کرد در مورد ظهور آسیب پذیری ها در کد.
ذکر شده است که در نظر گرفته شدند راه حل های مبتنی بر پلت فرم یادگیری ماشین OpenAI Codex، مانند GitHub Copilot، که به کاربر اجازه می دهد تا بلوک های بسیار پیچیده ای از کد، تا توابع آماده برای استفاده را تشکیل دهد.
شایان ذکر است که تا به امروز هنوز نگرانی وجود دارد که مربوط به این واقعیت است که از آنجایی که کد واقعی از مخازن عمومی GitHub استفاده شده استاز جمله مواردی که حاوی آسیبپذیری هستند، برای آموزش مدل یادگیری ماشین، کد ترکیب شده میتواند خطاها را تکرار کند و کدی را که حاوی آسیبپذیری است پیشنهاد کند، و همچنین نیاز به بررسیهای اضافی را هنگام پردازش دادههای خارجی در نظر نمیگیرد.
این مطالعه شامل 47 داوطلب با تجربیات متفاوت بود در برنامه نویسی، از دانشجو گرفته تا حرفه ای با ده سال تجربه. شرکت کنندگان سآنها به دو گروه آزمایشی تقسیم شدند (33 نفر) و کنترل کنید (14 نفر). هر دو گروه به کتابخانه ها و منابع موجود در اینترنت، از جمله استفاده از نمونه های آماده برای استفاده از Stack Overflow دسترسی داشتند. به گروه آزمایشی فرصت استفاده از دستیار هوش مصنوعی داده شد.
هر شرکت کننده 5 وظیفه مرتبط دریافت کرد با نوشتن کد که در آن به طور بالقوه انجام اشتباهاتی که منجر به آسیب پذیری می شود آسان است. به عنوان مثال، وظایفی برای نوشتن توابع رمزگذاری و رمزگشایی، استفاده از امضای دیجیتال، پردازش دادههای مربوط به تشکیل مسیرهای فایل یا جستجوهای SQL، دستکاری اعداد بزرگ در کد C، پردازش ورودی نمایش داده شده در صفحات وب وجود داشت.
این ابزارها مبتنی بر مدلهایی مانند OpenAI's Codex و Facebook's InCoder هستند که روی مجموعه دادههای بزرگی از کدهای در دسترس عموم (مثلاً از GitHub) از قبل آموزش داده شدهاند و نگرانیهای مختلفی را در مورد استفاده از حق چاپ نویسنده تا پیامدهای آسیبپذیری امنیتی ایجاد میکنند. در حالی که کار اخیر این خطرات را در سناریوهای مصنوعی کوچکتر مورد مطالعه قرار داده است، خطرات امنیتی کد دستیار هوش مصنوعی در زمینه نحوه انتخاب توسعه دهندگان برای استفاده از آنها به طور گسترده مورد مطالعه قرار نگرفته است.
برای در نظر گرفتن تأثیر زبان های برنامه نویسی بر امنیت کدهای به دست آمده با استفاده از دستیارهای هوش مصنوعی، وظایف پایتون، سی و جاوا اسکریپت را پوشش می دهد.
در نتیجه بلهe دریافت که شرکت کنندگانی که از دستیار هوش مصنوعی استفاده می کردند هوشمند مبتنی بر مدل codex-davinci-002 کد به میزان قابل توجهی ایمن کمتر تولید کرد نسبت به شرکتکنندگانی که از دستیار هوش مصنوعی استفاده نکردهاند. به طور کلی، تنها 67٪ از شرکت کنندگان در گروه با استفاده از دستیار هوش مصنوعی توانستند یک کد صحیح و امن ارائه دهند، در حالی که در گروه دیگر این رقم 79٪ بود.
در همان زمان، شاخص های امنیتی (عزت نفس) معکوس شد: شرکتکنندگانی که از دستیار هوش مصنوعی استفاده میکردند معتقد بودند که کد آنها امنتر خواهد بود نسبت به شرکت کنندگان در گروه دیگر. علاوه بر این، مشاهده شد که شرکتکنندگانی که کمتر به جادوگر هوش مصنوعی اعتماد داشتند و زمان بیشتری را صرف تجزیه و تحلیل و ایجاد تغییرات در نکات دادهشده کردند، آسیبپذیریهای کد کمتری ایجاد کردند.
به عنوان مثال: کد کپی شده از کتابخانه های رمزنگاری حاوی مقادیر پارامترهای پیش فرض است امن تر از کد پیشنهاد شده توسط جادوگر هوش مصنوعی. همچنین، هنگام استفاده از دستیار هوش مصنوعی، انتخاب الگوریتم های رمزگذاری کمتر قابل اعتماد و عدم احراز هویت مقادیر بازگشتی برطرف شد. در کار دستکاری اعداد C، کد نوشته شده با جادوگر هوش مصنوعی خطاهای بیشتری داشت که منجر به سرریز اعداد صحیح شد.
علاوه بر این، می توان به مطالعه مشابهی اشاره کرد توسط گروهی از دانشگاه نیویورک، که در ماه نوامبر با شرکت 58 دانشجو برگزار شد، از آنها خواسته شد ساختاری را برای پردازش لیست خرید در C پیاده سازی کنند. نتایج نشان داد که کمک کننده هوش مصنوعی تاثیر کمی بر امنیت کد دارد: کاربرانی که از کمک هوش مصنوعی استفاده میکردند، به طور متوسط حدود 10 درصد خطاهای مرتبط با امنیت بیشتر داشتند.
بالاخره بله شما علاقه مند به دانستن بیشتر در مورد آن هستید، می توانید جزئیات را بررسی کنید در لینک زیر.
اولین کسی باشید که نظر