از زمان راهاندازی ChatGPT و هجوم بعدی گزینههای هوش مصنوعی مولد، صحبتهای زیادی در مورد اینکه چگونه یکی از اصلیترین کارهایی که انجام میدهد «دموکراتیزه کردن» چندین صنعت – از جمله کدنویسی و برنامهنویسی – است.
معنی آن این است که به افرادی که هیچ تجربه ای در یک زبان برنامه نویسی ندارند اجازه می دهد تا از هوش مصنوعی مولد به عنوان جایگزینی برای یادگیری یا مهارت استفاده کنند. این به آنها امکان میدهد کد و برنامهها را به هر زبانی بنویسند – البته نه لزوماً بدانند درست است یا چرا کار میکند یا اگر اینطور نیست چه کاری انجام دهند.
این نقطه ضعف بالقوه دموکراسی دیجیتال است – از دست دادن مجموعه مهارت ها و استانداردهایی که برنامه نویسان و برنامه نویسان طی دهه ها در طول یک یا دو نسل از «کدنویسان شهروند» توسعه دادند.
ما با کوین بوک، معاون اکوسیستم و جامعه در Venafi، شرکتی که در مدیریت هویت ماشین و جلوگیری از قطع برنامهها تخصص دارد، صحبت کردیم تا بپرسیم که آیا ما در مورد جنبه منفی دموکراسی دیجیتال خیلی غمگین هستیم – یا واقعاً یک جنبه منفی وجود دارد. در نهایت به آینده ای از کدنویسی دمکراتیک شده توسط هوش مصنوعی.
THQ:
بنابراین – خطر کدنویسی مولد هوش مصنوعی چیست؟ بیا به آن، وجود دارد خطری برای کدنویسی مولد هوش مصنوعی؟
KB:
قبلاً اینطور بود که اگر میخواستید کدی را توسعه دهید، دقیقاً مانند یادگیری هر زبانی نیاز به تخصص دارید. اگر قرار بود یک زبان ماشینی یاد بگیرید، باید تخصص و مقداری یادگیری داشته باشید.
و به احتمال زیاد، زمانی که در حال توسعه کد بودید، اگر بخشی از یک کسبوکار بودید، بخشی از یک تیم توسعهدهنده سازمانیافته بودید. در آن زمان، 100٪ کاری بود که من انجام می دادم، می نشستم و معماری می کشیدم، سپس کد می نوشتم. و من در جاوا تخصص خاصی داشتم.
راهش همین است دارد بوده.
خطر را به من نشان بده!
و در تجارت، میتوانید یک توسعهدهنده Go، یک توسعهدهنده جاوا باشید، حتی ممکن است یک دانشمند داده متخصص در کدنویسی پایتون باشید.
ظهور هوش مصنوعی مولد که میتواند کد بنویسد، چه چیزی مانند ChatGPT یا GitHub Copilot، به این معنی است که میتوانید با دستورات کد بنویسید. من می توانم توضیح دهم که برای نوشتن چه چیزی به ChatGPT نیاز دارم، و آن را انجام می دهد. میتوانم از GitHub Copilot در ویژوال استودیو بپرسم، میتوانم به زبانی که هرگز به آن کدنویسی نکردهام، و چیزی که نمیدانم چگونه انجام دهم، اضافه کنم و بگویم «کدی به این زبان برای من بنویس، باید این کار را انجام دهد. آن و دیگری.» و خواهد شد.
و نکته ای که در مورد کدگذاری دموکراتیک شده وجود دارد این است هر کسی می تواند این کار را انجام دهد. تقریباً یک تازهکار میتواند از ChatGPT بخواهد که یک اسکریپت PowerShell برای آنها بنویسد تا، به عنوان مثال، برخی از انواع سرویسهایی را که تیمشان استفاده میکند، ایجاد کند.
این امر نه تنها جهان را به روی یک دسته کد بیشتر، بلکه یک دسته کامل از کدگذاران بیشتر باز می کند.
خطر کجاست؟
THQ:
ما فقط می خواستیم این را بپرسیم.
KB:
من خوشحالم. یک دسته کامل کد بیشتر به این معنی است که شما چند امتیاز خطر اضافی دریافت می کنید. کدنویس شهروند ممکن است واقعاً نیت خوبی داشته باشد، اما الف) ممکن است ندانند که واقعاً چه هستند در حال انجام با آن کد، و ب) که با ChatGPT و همچنین با Copilot می دانیم – به شما پاسخ های اشتباه می دهد. و آنها را با اعتماد به نفس و قانع کننده به شما می دهد.
اشتباه مطمئن می تواند منجر به کدهایی شود که آنچه شما می خواهید انجام نمی دهد یا کد ناقص.
THQ:
و ناگهان احساس می شود که ده دقیقه به فیلمی از مایکل کرایتون نزدیک شده ایم.
KB:
مسئله این است که قبلاً کد را کپی و پیست می کردم. یک مهندس خوب می تواند کد را کپی و پیست کند، اما من باید می دانستم کاری که من انجام می دادم با این بلوک های کد مختلف.
اکنون، هر کسی می تواند این کار را انجام دهد، اما بدون نیاز به دانستن آنچه انجام می دهد. معنی آن این است که میتوانید کدهایی دریافت کنید که مستعد خطا هستند. کدی که رکیک یا زمخت است. و، که نقطه نهایی، کدی است که می تواند عمدی یا تصادفی مخرب باشد.
آیا ChatGPT یا GitHub Copilot و سایرین که آنلاین می شوند، می توانند برای معرفی آسیب پذیری ها آموزش ببینند؟
و دوباره، اگر شما یک کدنویس غیرمتخصص هستید، خواه کدنویس آخر هفته باشد یا کسی که مطلقاً از چیستی کد اطلاعی ندارد. فرض می شود به نظر می رسد، شما نمی خواهید تفاوت را بدانید. بنابراین شروع به ایجاد مجموعه های جدیدی از خطرات می کند.
موضوع اعتماد
THQ:
چگونه میتوانیم به کد و برنامههایی که اجرا میکنیم، اعتماد دوباره به دست آوریم، بدون اینکه بخواهیم به طور غیرممکنی یک جن را در بطری آن بازگردانیم؟
KB:
واقعا چقدر مزیت رقابتی در بسیاری از صنایع این روزها توسط کدها و توسعه دهندگانی است که آنها را می نویسند.
کاری که ما باید انجام دهیم – کاری که کسب و کارها تاکنون در انجام آن خوب نبوده اند – احراز هویت کدهایی است که ماشین ها در حال اجرا هستند. و این یک فرصت است، زیرا ما تمام تکنیک های مورد نیاز برای انجام این کار را داریم.
در سازمانهای پیچیده، جایی که تیمهای توسعه پیچیدهای دارید، این کاری است که آنها انجام میدهند و کد را تأیید میکنند. بنابراین، به عنوان مثال، ما در مورد امضای کد هنگام عبور از خطوط لوله آنها صحبت می کنیم، یا حتی، این روزها، امضای کانتینرها قبل از اجرای آنها. این چیزی است که آنها می دانند، این توسعه دهندگان پیچیده با تیم های سازمان یافته خود.
اما کسی که اکنون رفته است و یک اسکریپت PowerShell دریافت کرده است، و می تواند آن را اجرا کند، و شاید بتواند عملکردی را در یک متعادل کننده بار یا نوعی از سرویس تجزیه و تحلیل علم داده تغییر دهد – این کاملا جدید است. بنابراین این یک مجموعه کاملاً جدید از ریسک است. و ما باید از آن اطمینان حاصل کنیم همه کد زمانی که در کسب و کار اجرا می شود احراز هویت می شود، چه کسی در دسکتاپ او باشد، چه کسی که از کد استفاده می کند و اجرا می کند شاید سعی در تغییر Salesforce.com داشته باشد، باید مطمئن شویم که این کد همیشه احراز هویت و اینکه امضا شده است، و البته، زمانی که با هر سرویس دیگری که برای تعامل ساخته شده است صحبت می کند، هویت دارد.
عامل احراز هویت
این چیزی است که تیمهای امنیتی مختلف ممکن است بر روی آن تمرکز کرده باشند، از نظر برخی از پرخطرترین برنامهها، برخی از تیمهای توسعه واقعاً پیچیده. شاید داشته باشند، شاید هم نداشته اند. اما اکنون ما یک سطح تهدید بسیار بزرگتر و فرصت بسیار بزرگتری برای حمله داریم.
به همین دلیل است که کدنویسی مولد هوش مصنوعی می تواند یک خطر باشد. این چیزی است که وقتی با متخصصان و تحلیلگران امنیتی صحبت میکنم، فوراً آشکار نمیشود، زیرا وقتی آنها به هوش مصنوعی مولد فکر میکنند، و به نوشتن کد فکر میکنند، به این فکر میکنند که به من به عنوان یک توسعهدهنده با تجربه کمک میکند. سریعتر حرکت کن.
که اتفاقاً کاملاً انجام می دهد. هوش مصنوعی مولد نمیتواند کدنویسهای حرفهای را از کار بیاندازد، اما آنها را سریعتر و کارآمدتر میکند.
اما خطر بالقوه در این است که چه کاری می تواند برای همه آن دسته از افراد دیگر انجام دهد نیستند توسعه دهندگان حرفه ای به آنها می دهد فرصت خطرناک بودن
THQ:
یعنی در قدیم بی اطلاعی از کدنویسی به این معنی بود که نمی توانستید کدنویسی کنید. و اکنون، ناآگاهی از کدنویسی به این معنی است که شما می توانید توسط پروکسی کدنویسی کنید – بدون اینکه لزوماً سرنخی در مورد آن داشته باشید. چی شما انجام می دهید، فقط در نتیجه نهایی که می خواهید به آن برسید؟ یعنی جنبه منفی دموکراسی دیجیتال؟
آیا خبر خوب را شنیده اید؟
KB:
تقریبا. هر چند یک خبر خوب وجود دارد.
THQ:
که تسکین است.
KB:
خبر خوب این است که این چیزی است که اکنون در رایانههای رومیزی، لپتاپها، سرورها، Kubernetes بومی ابری تعبیه شده است. ما در حال ایجاد قابلیت احراز هویت کد هستیم. اما همیشه به صورت پیش فرض روشن نیست. بنابراین، به عنوان مثال، هنگامی که یک برنامه جدید را در ویندوز نصب می کنید، به طور پیش فرض، سیستم عامل قرار است کد را تأیید کند. اما بهطور پیشفرض، دسکتاپ یا سرور ویندوز شما قرار نیست بگوید «آن اسکریپت PowerShell که در حال اجراست؟ که آن را ساخته؟ و آیا ما احراز هویت می کنیم که چه کسی آن را ساخته است؟ آیا میخواهیم به آن کد اجازه اجرا دهیم؟»
در مورد کانتینرها هم همینطور است. کانتینرها بهطور پیشفرض برای احراز هویت به محض ورود فعال نمیشوند. در واقع چه کسی آنها را ساخته است؟ آیا آنها تغییر کرده اند؟ خبر خوب این است که این چیزی است که میتوانید آن را روشن کنید – اما بهطور پیشفرض روشن نیست و واقعاً باید روشن شود.
به طور پیش فرض روشن است.
اینجاست که باید آگاهی بسیار بیشتری وجود داشته باشد – ما باید به نقطه ای برسیم که احراز هویت در همه جا به طور پیش فرض انجام شود.
هنگامی که احراز هویت کد به طور پیشفرض عادی شد، نقطه ضعف شما از دموکراسی دیجیتال به میزان قابل توجهی کاهش مییابد.
در ایالات متحده، دولت بایدن پنج نقطه استراتژی امنیت سایبری خود را ایجاد کرده است که پیشرفت بزرگی است – و یکی از تمرکزهای این استراتژی این است که مسئولیتپذیری کد را به توسعهدهندگان نرمافزار هدایت کند، نه فقط افراد یا مشاغلی که نرمافزار را اجرا میکنند. . این روندی است که من فکر میکنم که ما فقط شاهد بازی بیشتر خواهیم بود.
THQ:
خاموش کردن جنبه منفی؟ خوب پس – ما حدس می زنیم که اجازه می دهیم دموکراسی زنده بماند.
فعلا…
در حالی که او را روی صندلی داشتیم، از کوین چند سؤال امنیتی مهم دیگر در آن روز پرسیدیم. در مقاله بعدی خود با او، به احراز هویت بومی ابری و استراتژیهای هویت میپردازیم.