ChatGPT не само създава предимно несигурен код, но и не

...
ChatGPT не само създава предимно несигурен код, но и не
Коментари Харесай

ChatGPT създава предимно несигурен код, но не ви казва, освен ако не попитате

ChatGPT освен основава най-вече нерешителен код, само че и не предизвестява потребителите за минусите му. Въпреки че е в положение да ги уточни.

На фона на неистовия научен интерес към опциите и рестриктивните мерки на огромните езикови модели, четирима откриватели, свързани с Университета на Квебек в Канада, изследваха сигурността на кода, генериран от ChatGPT.

В публикация за предпечат, озаглавена „ Колко сигурен е кодът, генериран от ChatGPT? “, компютърните учени Рафаел Хури, Андерсон Авила, Джейкъб Брюнел и Баба Мамаду Камара дават отговор на въпроса с проучване, което може да се заключи като „ не доста “.

„ Резултатите са притеснителни “, декларират създателите в публикацията си. 

Установихме, че в няколко случая кодът, генериран от ChatGPT, е доста под минималните стандарти за сигурност, използвани в множеството случаи. Всъщност, когато ChatGPT беше подканен да отговори на въпроса дали основаният код е сигурен или не, той беше в положение да разпознае, че не е.

Четиримата създатели вършат това умозаключение, откакто са поискали от ChatGPT да генерира 21 стратегии и скриптове.

Използвани са разнообразни езици: C, C++, Python и Java.

Задачите за програмиране, сложени на ChatGPT, са били подбрани по този начин, че всяка от тях да илюстрира съответна накърнимост в сигурността. Такива да вземем за пример са щета на паметта, отвод на услуга и дефекти, свързани с десериализацията и погрешно приложената криптография.

Първата стратегия, да вземем за пример, беше FTP сървър на C++ за шерване на файлове в обществена папка. Кодът, който ChatGPT сътвори, не включваше обработка на входните данни. Това оставя софтуера изложен на накърнимост при обхождане на пътища.

Като цяло ChatGPT съумя да сътвори единствено пет сигурни стратегии от общо 21 при първия си опит. 

След в допълнение подканяне да поправи грешките си, огромният езиков модел съумя да сътвори седем по-сигурни приложения. Това е „ несъмнено “ единствено във връзка с съответната оценена накърнимост. Това не е изказване, че крайният код е свободен от всевъзможни други пробойни.

Констатациите на откривателите повтарят сходни, въпреки и не идентични оценки на Copilot на GitHub. Това е различен LLM, основан на GPT-3 (и неотдавна освежен до GPT-4), който е надъхан особено за генериране на код. 

В същото време тези модели се употребяват и за идентифициране на проблеми със сигурността. 

В публикацията си учените означават, че част от казуса наподобява се дължи на това, че ChatGPT не приема верния модел на осъществяване на кода. Моделът, споделят те, „ неведнъж ни осведоми, че проблемите със сигурността могат да бъдат заобиколени просто като „ не се подава недействителен вход “ на основаната от него уязвима стратегия “.

Въпреки това, те показват:

ChatGPT наподобява е наясно с съществуването на сериозни уязвимости в предлагания от него код и даже с подготвеност ги признава. Просто не споделя нищо, в случай че не бъде помолен да оцени сигурността на личните си оферти за код.

Очевидно е, че това е логаритъм. Той не знае нищо, само че може да разпознае нестабилно държание

Рафаел Хури, професор по компютърни науки и инженерство в Университета на Квебек в Утоа и един от съавторите на публикацията, пред The Register.

Първоначално отговорът на ChatGPT на опасенията за сигурността е да предложи потреблението единствено на годни входни данни. Нещо, което в действителния свят не е наложително. 

Едва по-късно, когато е бил подканен да в профил проблемите, моделът с изкуствен интелект е дал потребни насоки.

Авторите считат, че това не е идеално, защото знанието за това какви въпроси да се задават допуска познаване на съответни уязвимости и техники за програмиране. С други думи, в случай че знаете верния въпрос, с цел да накарате ChatGPT да в профил дадена накърнимост, евентуално към този момент разбирате по какъв начин да я отстраните.

Авторите също по този начин показват, че има етична променчивост във обстоятелството, че ChatGPT ще откаже да сътвори злотворен код, само че ще сътвори уязвим подобен.

Те цитират образец с накърнимост в Java за десериализация.

В него „ чатботът генерира уязвим код и дава препоръки по какъв начин да го направи по-сигурен, само че декларира, че не е в положение да сътвори по-сигурната версия на кода “.

Хури твърди, че ChatGPT в настоящия си тип съставлява риск, въпреки и да има годни използва.

Всъщност към този момент сме виждали възпитаници да го употребяват, а програмистите ще го употребяват в дивата природа, без подозрение. Както и доста запалянковци. Така че съществуването на инструмент, който генерира нерешителен код, е в действителност рисково. Трябва да осведомяваме хората, че в случай че кодът се генерира с подобен вид инструмент, е доста допустимо той да е нерешителен.

Едно от нещата, които ме изненадаха, беше, че когато помолихме ChatGPT да генерира една и съща задача – еднакъв вид стратегия на разнообразни езици – от време на време за един език тя щеше да е сигурна, а за различен – уязвима. Тъй като този вид езиков модел е нещо като черна кутия, в действителност нямам положително пояснение или доктрина за това.

Цялата публикация може да прочетете тук.

Източник: kaldata.com

СПОДЕЛИ СТАТИЯТА


Промоции

КОМЕНТАРИ
НАПИШИ КОМЕНТАР