Estratégias de otimização de LLMs para correção de vulnerabilidades de software em múltiplas linguagens de programação
Vulnerabilidades de Software, Large Language Models, Segurança de Software, Correção Automatizada
Large Language Models (LLMs) surgiram como ferramentas poderosas em vários domínios, mostrando grande potencial na realização de tarefas complexas. No contexto da engenharia de software, a capacidade apresentada por LLMs para processar e entender grandes quantidades de código abre novos caminhos para aprimorar a segurança das aplicações desenvolvidas. Este trabalho tem como objetivo explorar o uso de LLMs para automatizar a correção de vulnerabilidades de software em múltiplas linguagens de programação. Utilizando um dataset próprio composto por 2980 vulnerabilidades divididas em nove linguagens de programação, incluindo C, C++, Java, Python e JavaScript, foram avaliados o desempenho de cinco modelos fundacionais — Codestral, Codegemma, Deepseek-Coder, Codellama e Claude Sonnet — em tarefas de correção de vulnerabilidades de software, além de se avaliar o desempenho dos modelos após a utilização de técnicas de otimização baseadas em engenharia de prompt e fine-tuning. Com base nos resultados encontrados, foi possível constatar a incapacidade dos modelos fundacionais em realizar tarefas de correção de vulnerabilidades de software de maneira satisfatória, reforçando a necessidade de se aplicar técnicas adicionais para a otimização do código gerado por LLMs.