برنامه نویسی در سال 2025 در مورد زحمت کشیدن بیش از قطعات یا صرف ساعات طولانی برای اشکال زدایی نیست. این یک پرشور کامل است. کد تولید شده توسط AI به نظر می رسد اکثر کد در محصولات آینده است و به یک ابزار اساسی برای توسعه دهنده مدرن تبدیل شده است. شناخته شده به عنوان “برنامه نویسی VIBE” ، استفاده از کد تولید شده توسط ابزارهایی مانند Github Copilot ، Amazon Codewhisperer و Chat GPT یک هنجار خواهد بود و در کاهش زمان ساخت و افزایش کارایی نیز از این قاعده مستثنی نیست. اما آیا راحتی کد تولید شده توسط AI تهدیدی تاریک تر دارد؟ آیا هوش مصنوعی مولد آسیب پذیری ها را در معماری امنیتی افزایش می دهد یا روش هایی برای توسعه دهندگان برای “کد VIBE” در ایمنی وجود دارد؟
Sanket Saurav ، بنیانگذار Deepsource ، گفت: “حوادث امنیتی در نتیجه آسیب پذیری در کد تولید شده AI یکی از کمترین موضوعات مورد بحث امروز است.” “هنوز کدهای زیادی توسط سیستم عامل هایی مانند Copilot یا CHAT GPT ایجاد شده است که بررسی انسانی نمی شوند ، و نقض امنیت می تواند برای شرکت هایی که تحت تأثیر قرار می گیرند فاجعه بار باشد.”
Saurav استناد به توسعه دهنده یک بستر منبع باز که از تجزیه و تحلیل استاتیک برای کیفیت و امنیت کد استفاده می کند هک Solarwinds در سال 2020 به عنوان نوع “رویداد انقراض” که شرکت ها می توانند در صورت استفاده از کد تولید شده AI ، نگهبان های امنیتی مناسب را نصب نکرده باشند. Saurav گفت: “تجزیه و تحلیل استاتیک شناسایی الگوهای کد ناامن و شیوه های کدگذاری بد را امکان پذیر می کند.”
از طریق کتابخانه حمله کرد
تهدیدهای امنیتی برای کد تولید شده توسط AI می تواند فرم های مبتکرانه ای به خود بگیرد و می تواند به کتابخانه ها هدایت شود. كتابخانه ها در برنامه نویسی كد قابل استفاده مجدد هستند كه توسعه دهندگان برای صرفه جویی در وقت هنگام نوشتن از آنها استفاده می كنند.
آنها غالباً وظایف برنامه نویسی منظم مانند مدیریت تعامل پایگاه داده را حل می کنند و به برنامه نویسان کمک می کنند تا مجبور شوند کد را از ابتدا بازنویسی کنند.
یکی از این تهدیدات در برابر کتابخانه ها به عنوان “توهم” شناخته می شود ، جایی که کد AI-Generative با استفاده از کتابخانه های داستانی آسیب پذیری را نشان می دهد. یکی دیگر از حملات اخیر به کد تولید شده توسط AI “Slopsquatting” نامیده می شود که مهاجمان می توانند مستقیماً کتابخانه ها را برای نفوذ به یک بانک اطلاعاتی هدف قرار دهند.
پرداختن به این تهدیدها ممکن است نیاز به ذهن آگاهی بیشتری از آنچه ممکن است با اصطلاح “برنامه نویسی vibe” پیشنهاد شود ، نیاز داشته باشد. پروفسور رافائل خوری در سخنرانی از دفتر خود در Université du Québec en Outaouais ، از نزدیک پیروی از تحولات امنیت کد تولید شده توسط AI است و اطمینان دارد که تکنیک های جدید ایمنی آن را بهبود می بخشد.
در یک مقاله 2023، پروفسور خوری در مورد نتایج درخواست چتگپ برای تولید کد بدون هیچ زمینه و اطلاعات بیشتر ، عملی که منجر به کد ناامن شد ، تحقیق کرد. این روزهای ابتدایی چت GPT بود و خوری اکنون نسبت به جاده پیش رو خوش بین است. خوری گفت: “از آن زمان تاکنون تحقیقات زیادی در دست بررسی انجام شده است و آینده به دنبال استراتژی برای استفاده از LLM است که می تواند به نتایج بهتری منجر شود.”
خوری در ادامه به توصیف یک مطالعه امیدوار کننده جایی که آنها کد تولید کردند و سپس این کد را به ابزاری ارسال کردند که آن را برای آسیب پذیری ها تجزیه و تحلیل می کند. روشی که توسط ابزار استفاده می شود به عنوان ناهنجاری های خط با AI تولید کننده (یا پرچم کوتاه) گفته می شود.
وی گفت: “این ابزارها پرچم هایی را ارسال می کنند که ممکن است آسیب پذیری را در خط 24 شناسایی کنند ، به عنوان مثال ، که یک توسعه دهنده می تواند سپس با اطلاعات به LLM ارسال کند و از آن بخواهد که به آن نگاه کند و مشکل را برطرف کند.”
خوری اظهار داشت که این عقب و جلو ممکن است برای اصلاح کدی که در برابر حمله آسیب پذیر است بسیار مهم باشد. “این مطالعه نشان می دهد که با پنج تکرار ، می توانید آسیب پذیری ها را به صفر کاهش دهید.”
به گفته این ، روش پرچم بدون مشکلات آن نیست ، به ویژه که می تواند باعث مثبت کاذب و منفی کاذب شود. علاوه بر این ، در طول کدی که LLMS می تواند ایجاد کند نیز محدودیت هایی نیز وجود دارد و عمل پیوستن به قطعات با هم می تواند لایه دیگری از خطر را اضافه کند.
نگه داشتن انسان در حلقه
برخی از بازیکنان در “برنامه نویسی VIBE” کد تکه تکه شدن را توصیه می کنند و اطمینان حاصل می کنند که انسان در سمت راست و مرکز در مهمترین ویرایش های یک پایگاه کد قرار دارد. کوین هو ، رئیس مهندسی محصول در Windsurf گفت: “هنگام نوشتن کد ، از نظر تعهدات فکر کنید.”
وی افزود: “یک پروژه بزرگ را به تکه های کوچکتر تقسیم کنید که به طور معمول تعهد می شود یا درخواست های خود را می کشند. آیا عامل در مقیاس کوچکتر ، یک ویژگی جدا شده در هر زمان ایجاد می کند. این می تواند اطمینان حاصل کند که خروجی کد به خوبی آزمایش شده و به خوبی درک شده است.”
در زمان نوشتن ، Windsurf به بیش از 5 میلیارد خط کد تولید شده توسط AI (از طریق نام قبلی Codeium) نزدیک شده است. هو گفت مهمترین سؤالی که آنها به آنها پاسخ می دادند این بود که آیا توسعه دهنده از این روند آگاهی دارد یا خیر.
“هوش مصنوعی قادر است به طور همزمان ویرایش های زیادی را در بسیاری از پرونده ها انجام دهد ، بنابراین چگونه می توانیم اطمینان حاصل کنیم که توسعه دهنده در واقع درک و بررسی آنچه اتفاق می افتد به جای اینکه فقط کورکورانه همه چیز را بپذیرد؟” هو پرسید ، و افزود که آنها به شدت در UX Windsurf سرمایه گذاری کرده اند “با یک تن از راه های شهودی برای ماندن کامل در مرحله قفل با آنچه AI انجام می دهد ، و انسان را به طور کامل در حلقه نگه دارد.”
به همین دلیل به عنوان “برنامه نویسی“جریان اصلی تر می شود ، انسانهای موجود در این حلقه باید نسبت به آسیب پذیری های خود محتاط تر باشند.
ابزارهای نوظهور مانند تجزیه و تحلیل استاتیک ، روشهای پالایش تکراری مانند پرچم و طراحی UX متفکر نشان می دهد که امنیت و سرعت لازم نیست که متقابل باشند.
نکته اصلی در کنترل ، آگاه سازی و کنترل توسعه دهندگان است. با نگهبان های مناسب و یک ذهنیت “اعتماد اما تأیید” ، برنامه نویسی با کمک هوش مصنوعی می تواند هم انقلابی و هم مسئول باشد.