Система на базе ИИ GitHub Copilot примерно в 40% случаев создает уязвимый код

Система на базе ИИ GitHub Copilot примерно в 40% случаев создает уязвимый код

Alexander Antipov

Сгенерированный помощником по программированию код в лучшем случае содержит ошибки, а в худшем — потенциально уязвим к атакам.

image

Ученые из инженерной школой Тандон Нью-Йоркского университета проверили систему на базе искусственного интеллекта GitHub Copilot с точки зрения безопасности и обнаружили , что примерно в 40% случаев сгенерированный помощником по программированию код в лучшем случае содержит ошибки, а в худшем — потенциально уязвим к атакам.

Согласно статье An Empirical Cybersecurity Evaluation of GitHub Copilot’s Code Contributions («Эмпирическая оценка кибербезопасности вклада кода GitHub Copilot»), исследователи создали для Copilot 89 сценариев по разработке кода, в результате чего было создано 1692 программы. Как оказалось, около 40% решений содержали уязвимости или конструктивные недостатки, которые могут быть использованы злоумышленником.

Copilot доступен для частного бета-тестирования в качестве расширения Microsoft Visual Studio Code. Система позволяет разработчикам описывать функциональные возможности в строке комментариев, а затем пытается сгенерировать код, соответствующий описанию. Copilot также может предсказать по именам переменных и функций и другим подсказкам, что разработчик собирается написать дальше.

Исследователи рассмотрели три отдельных аспекта результатов Copilot: степень, в которой он генерирует код, отображающий список 25 наиболее часто встречающихся уязвимостей; вероятность того, что различные подсказки генерируют уязвимости внедрения SQL-кода; и как он обрабатывает предложения кода для менее популярных языков (например, Verilog).

По словам специалистов, в ряде случаев Copilot создавал на языке C, использующий указатели из malloc (), не проверяя, что они не равны NULL, код со встроенными учетными данными, код, который передавал ненадежные пользовательские вводимые данные прямо в командную строку, а также код, отображающий более четырех последних цифр номера социального страхования США.


Мы рассказываем о самых актуальных угрозах и событиях, которые оказывают влияние на обороноспособность стран, бизнес глобальных корпораций и безопасность пользователей по всему миру в нашем Youtube канале.


Источник: Securitylab