Backslash Security: популярные ИИ-модели по умолчанию создают уязвимый код

Backslash Security: популярные ИИ-модели по умолчанию создают уязвимый код

Изображение: Om siva Prakash (unsplash)

Команда Backslash Security представила исследование, в котором была проверена способность генеративных языковых моделей справляться с задачей создания безопасного программного кода. Специалисты изучили поведение семи актуальных версий LLM от OpenAI, Anthropic и Google. Проверку проводили при помощи разных формулировок запросов, от самых простых до ориентированных на соблюдение признанных практик безопасной разработки.

По итогам тестирования выяснилось, что даже известные и широко применяемые ИИ-системы создают код с критичными изъянами. Особенно это проявлялось в случаях, когда запросы были составлены без уточнений, касающихся защиты данных или предотвращения типичных уязвимостей. Но даже если авторы запросов специально акцентировали внимание на необходимости соответствия стандартам безопасности, LLM по-прежнему генерировали небезопасные решения.

В отчёте указано, что речь идёт о распространённых уязвимостях: внедрение системных команд, XSS-уязвимости как на стороне сервера, так и в пользовательском интерфейсе, незащищённая обработка загружаемых файлов и возможность обхода указанных путей. Все протестированные модели хотя бы в одном из вариантов демонстрировали такие ошибки, даже если запрос был сформулирован в соответствии с рекомендациями OWASP.

Технический директор и сооснователь компании, Йосси Пик, отметил, что ИИ-инструменты для генерации кода могут представлять серьёзную проблему для специалистов по безопасности. По его словам, даже при внешне корректной работе такие системы генерируют большое количество нового кода, в котором могут скрываться плохо предсказуемые дефекты. Особенно это касается феномена «галлюцинаций», когда модель уверенно предлагает несуществующие или ошибочные решения, а также её чрезмерной чувствительности к нюансам формулировки запросов.

Журналисты подчёркивают, что особую тревогу вызывает тот факт, что уязвимости появляются даже в тех случаях, когда запрос формулируется как призыв к созданию защищённого программного решения. Это подтверждает, что разработчики, активно использующие LLM для ускорения написания кода, рискуют получить продукт с серьёзными изъянами в безопасности, не замечая их на этапе генерации.

В компании пояснили, что наибольшее количество уязвимостей проявлялось при использовании простых запросов без уточнений по вопросам защиты. Эти «наивные» формулировки приводили к коду, в котором присутствовали уязвимости как минимум из четырёх категорий, входящих в десятку наиболее распространённых по классификации CWE.

Артем
Автор: Артем
Представитель редакции CISOCLUB. Пишу новости, дайджесты, добавляю мероприятия и отчеты.
Комментарии: