ChatGPT и DeepSeek пропускают от 40 до 50% уязвимостей в приложениях на Java и Python
ChatGPT и DeepSeek пропускают 40–50% уязвимостей в коде на Java и Python, а точность исправлений не превышает 62%. Локальные модели, работающие в закрытом контуре, показали результат выше 80%. Использование облачных LLM в безопасной разработке требует обязательной проверки результатов специалистом и создает дополнительные риски утечки кода.
В ГК «Солар» рассказали SecPost о результатах изучения эффективности применения больших языковых моделей (LLM) для верификации (триажа) и исправления уязвимостей в коде приложений на языках Java и Python. Исследование проводилось на базе 20 софтверных проектов, каждый объемом более 100 тысяч строк кода. С помощью SAST-анализа в приложениях было выявлено около 12 тысяч уникальных срабатываний, из которых почти 20% пришлось на уязвимости высокой критичности.
Эксперты Solar appScreener оценивали точность работы нескольких LLM, включая облачные версии ChatGPT, DeepSeek, GigaChat, а также модели, предназначенные для развертывания во внутреннем контуре (on-premise). Моделям предлагалось проанализировать фрагменты кода с описанием уязвимостей для определения их истинности (триаж) и генерации исправлений (кодфикс).
На этапе верификации уязвимостей в проектах на Java точность ChatGPT составила 60,9%, DeepSeek — около 50%. В приложениях на Python, согласно результатам исследования, DeepSeek показал точность более 80%, тогда как ChatGPT — 52,7%. Среди моделей, работающих в закрытом контуре, наиболее высокие показатели (свыше 80% для обоих языков) продемонстрировала специализированная LLM DerTriage/DerCodeFix.
При оценке возможностей моделей по исправлению уязвимостей ChatGPT на Java показал точность 61,8%, а DeepSeek — 45,5%. Для Python эти показатели составили 46,6% и 44,8% соответственно. On-premise модель DerCodeFix, как сообщается в материалах компании, справилась с задачей с точностью 78,2% для Java и 83,1% для Python.
Аналитики Solar appScreener отмечают, что использование облачных LLM в процессах безопасной разработки создает дополнительные риски. Помимо пропуска уязвимостей из-за недостаточной точности моделей, существует угроза утечки исходного кода. В связи с этим эксперты рекомендуют применять специализированные модели, развернутые в закрытом контуре, с обязательной последующей проверкой результатов AppSec-инженером.
Ранее SecPost писал о том, что искусственный интеллект и автоматизация процессов расширили поверхность атак и увеличили риски.

