17 августа 2026 года — Компания Veracode опубликовала масштабный отчет «GenAI Code Security Report 2026», который ставит под сомнение безопасность кода, генерируемого искусственным интеллектом. Несмотря на то, что современные модели демонстрируют почти безупречные результаты в синтаксических тестах, их способность писать безопасный код остается критически низкой. Исследование выявило тревожный парадокс: код, который компилируется и выполняет поставленную задачу, может содержать фундаментальные уязвимости, незаметные при стандартном функциональном тестировании.

Разрыв между функциональностью и безопасностью

В ходе исследования было протестировано более 100 моделей генерации кода в четырех различных срезах. Результаты показали, что в среднем модели достигают лишь 56% успешных результатов по критериям безопасности — показатель, который практически не изменился по сравнению с аналогичным тестированием годом ранее. При этом в синтаксических тестах модели демонстрируют результат, близкий к 100%. Это означает, что ИИ способен создавать код, который выглядит правильным и работает, но при этом использует небезопасные паттерны реализации.

Тестирование проводилось на стандартизированных заданиях по генерации кода на различных языках программирования. Важно отметить, что в запросы к моделям не включались специальные инструкции по соблюдению мер безопасности. В таких условиях, имитирующих реальную работу разработчика без дополнительных ограничений, примерно в 44% случаев сгенерированный код не проходил проверку безопасности. Это подтверждает тезис о том, что скорость генерации рабочего кода не заменяет необходимость строгого контроля качества.

Размер и специализация моделей не решают проблему

Одним из ключевых выводов отчета стало то, что увеличение вычислительной мощности или специализация модели на задачах программирования не гарантируют повышения безопасности. Специализированные модели для написания кода показали средний результат в 51%, что лишь на 1% меньше, чем у универсальных моделей (52%). Размер модели также практически не повлиял на итоговый балл: крупные модели набрали в среднем 53%, а средние и малые — 51%.

Единственным заметным преимуществом обладали модели с режимом рассуждений (reasoning mode), которые показали результат в 56% против 51% у остальных. В рейтинге Veracode лидером стала модель GPT-5.5 с результатом 68%, однако 6 из 11 представленных в тесте моделей показали результат в диапазоне от 50% до 53%. Это свидетельствует о том, что даже передовые на рынке решения не обеспечивают надежной защиты от уязвимостей «из коробки».

Языковые особенности и риски для Java

Анализ результатов выявил значительную разницу в безопасности кода в зависимости от используемого языка программирования. Python показал лучший средний результат — 63%, что может быть связано с более зрелыми библиотеками и практиками безопасности в экосистеме этого языка. В то же время Java оказался на последнем месте с результатом всего 30%, хотя эксперты отмечают, что его показатели демонстрируют тенденцию к улучшению по сравнению с предыдущими периодами.

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

Рекомендации для индустрии

Veracode настоятельно рекомендует относиться к ИИ-сгенерированному коду как к непроверенному и потенциально опасному. Компания призывает разработчиков и компании пропускать весь сгенерированный код через строгие проверки безопасности до его объединения с основной кодовой базой. Это включает в себя анализ зависимостей, статический анализ самого сгенерированного кода и проверку человеком.

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