Framework quantitativo mede o risco de segurança do código gerado por ferramentas de IA de desenvolvimento
O Security Risk Assessment Framework (SRF) combina modelagem de ameaças, análise estática (Bandit e Semgrep) e uma pontuação quantitativa de risco baseada na criticidade das vulnerabilidades para comparar ferramentas de IA de geração de código. Aplicado a várias ferramentas em tarefas de programação sensíveis à segurança, o estudo encontra vulnerabilidades em todas elas, com tarefas de processamento de entrada e manipulação de arquivos apresentando risco consistentemente mais alto do que a escolha da ferramenta em si.
A motivação do trabalho é uma lacuna metodológica: já existe bastante pesquisa mostrando que ferramentas de IA para geração de código produzem vulnerabilidades, mas a maior parte foca em detectar essas falhas pontualmente, sem oferecer uma forma padronizada de avaliar e comparar o risco de segurança entre diferentes ferramentas, tarefas e contextos de uso. O SRF tenta preencher essa lacuna combinando três elementos complementares: modelagem de ameaças (para mapear o que pode dar errado em cada tipo de tarefa), análise de segurança estática usando ferramentas estabelecidas como Bandit e Semgrep (para encontrar vulnerabilidades concretas no código gerado), e uma camada de avaliação quantitativa que pondera as vulnerabilidades encontradas pela sua criticidade, produzindo um escore de risco comparável entre execuções.
Ao aplicar esse framework a um conjunto de tarefas de programação relevantes para segurança, usando código gerado por múltiplas ferramentas de IA de desenvolvimento, os autores encontram vulnerabilidades introduzidas por todas as ferramentas avaliadas — nenhuma delas produziu código consistentemente seguro nas tarefas testadas. O achado mais interessante metodologicamente é que o tipo de tarefa importa mais do que a ferramenta escolhida: tarefas de processamento de entrada e manipulação de arquivos (áreas classicamente propensas a injeção, path traversal e validação inadequada) mostraram risco sistematicamente mais alto, enquanto tarefas mais simples permaneceram de baixo risco independentemente da ferramenta usada. As diferenças entre ferramentas existem, mas são menores do que a variação entre categorias de tarefa.
Esse resultado tem uma implicação prática direta para times que adotam assistentes de IA no fluxo de desenvolvimento: a estratégia de mitigação de risco não deveria ser "escolher a ferramenta mais segura" (porque a diferença entre ferramentas é pequena), e sim identificar quais categorias de tarefa merecem revisão de segurança reforçada independentemente de qual assistente gerou o código — priorizando exatamente as áreas que este estudo aponta como estruturalmente mais arriscadas, como parsing de entrada externa e operações de arquivo.
Do ponto de vista de processo, o framework também oferece algo que faltava: uma forma reprodutível de medir se uma mudança de ferramenta, versão de modelo ou prompt de sistema realmente reduz o risco de segurança do código gerado, em vez de depender de impressões qualitativas ou de amostras pequenas de código revisado manualmente. Para organizações que já tratam código gerado por IA como teria tratado uma dependência de terceiros de risco desconhecido, esse tipo de instrumentação quantitativa é o próximo passo natural para incorporar essas ferramentas em pipelines de segurança de aplicação (SAST/DevSecOps) de forma sistemática, e não apenas pontual.