27.08.2021 | Система на базе ИИ GitHub Copilot примерно в 40% случаев создает уязвимый код |
Ученые из инженерной школой Тандон Нью-Йоркского университета проверили систему на базе искусственного интеллекта 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, код со встроенными учетными данными, код, который передавал ненадежные пользовательские вводимые данные прямо в командную строку, а также код, отображающий более четырех последних цифр номера социального страхования США. |
Проверить безопасность сайта