O Google DeepMind implantou um novo agente de IA projetado para encontrar e consertar autonomamente vulnerabilidades críticas de segurança no código de software. O sistema, com o nome apropriado da CodEMender, já contribuiu com 72 correções de segurança para projetos estabelecidos de código aberto nos últimos seis meses.

Identificar e remendar vulnerabilidades é um processo notoriamente difícil e demorado, mesmo com o auxílio de métodos automatizados tradicionais, como a prega. A própria pesquisa do Google DeepMind, incluindo projetos baseados em IA, como Big Sleep e OSS-Fuzz, se mostrou eficaz na descoberta de novas vulnerabilidades de dia zero em código bem auditado. Esse sucesso, no entanto, cria um novo gargalo: quando a IA acelera a descoberta de falhas, o ônus dos desenvolvedores humanos para corrigi -los se intensifica.

O CodEMender é projetado para abordar esse desequilíbrio. Ele funciona como um agente de IA autônomo que adota uma abordagem abrangente para corrigir a segurança do código. Seus recursos são reativos, permitindo que as vulnerabilidades recentemente descobertas sejam descobertas instantaneamente e proativas, permitindo que ele reescreva o código existente para eliminar classes inteiras de falhas de segurança antes que possam ser exploradas. Isso permite que desenvolvedores humanos e mantenedores de projetos dediquem mais tempo a criar recursos e melhorar a funcionalidade de software.

O sistema opera alavancando os recursos avançados de raciocínio dos recentes modelos de pense profundo Gemini do Google. Essa base permite que o agente depra e resolva problemas complexos de segurança com um alto grau de autonomia. Para conseguir isso, o sistema está equipado com um conjunto de ferramentas que permitem analisar e raciocinar o código antes de implementar quaisquer alterações. O CodEMender também inclui um processo de validação para garantir que quaisquer modificações estejam corretas e não introduzam novos problemas, conhecidos como regressões.

Enquanto os grandes modelos de idiomas estão avançando rapidamente, um erro quando se trata de segurança de código pode ter consequências caras. A estrutura de validação automática do CodEMender é, portanto, essencial. Ele verifica sistematicamente se quaisquer alterações propostas corrigem a causa raiz de um problema, estão funcionalmente corretas, não interrompem os testes existentes e aderem às diretrizes de estilo de codificação do projeto. Apenas patches de alta qualidade que satisfazem esses critérios rigorosos são surgidos para a revisão humana.

Para aprimorar sua eficácia de fixação de código, a equipe DeepMind desenvolveu novas técnicas para o agente da IA. A CodEMender emprega análise avançada do programa, utilizando um conjunto de ferramentas, incluindo análise estática e dinâmica, testes diferenciais, fuzzing e solucionadores de SMT. Esses instrumentos permitem examinar sistematicamente padrões de código, fluxo de controle e fluxo de dados para identificar as causas fundamentais das falhas de segurança e fraquezas arquitetônicas.

O sistema também usa uma arquitetura multi-agente, onde agentes especializados são implantados para resolver aspectos específicos de um problema. Por exemplo, uma ferramenta de crítica baseada em modelo de linguagem grande dedicada revela as diferenças entre o código original e modificado. Isso permite que o agente primário verifique se suas alterações propostas não introduzem efeitos colaterais não intencionais e se auto-corrigem sua abordagem quando necessário.

Em um exemplo prático, o CodEMender abordou uma vulnerabilidade em que um relatório de falha indicava um transbordamento de buffer de heap. Embora o patch final tenha exigido apenas alterar algumas linhas de código, a causa raiz não era imediatamente óbvia. Ao usar um depurador e ferramentas de pesquisa de código, o agente determinou que o verdadeiro problema era um problema incorreto de gerenciamento de pilha com elementos extensíveis de linguagem de marcação (XML) durante a análise, localizada em outras partes da base de código. Em outro caso, o agente desenvolveu um patch não trivial para um problema complexo de vida útil do objeto, modificando um sistema personalizado para gerar código C dentro do projeto de destino.

Além de simplesmente reagir aos bugs existentes, o CodEMender foi projetado para endurecer proativamente o software contra ameaças futuras. A equipe implantou o agente para aplicar -flbounds-segurança Anotações para partes da Libwebp, uma biblioteca de compressão de imagem amplamente usada. Essas anotações instruem o compilador a adicionar verificações de limites ao código, o que pode impedir que um invasor explore um estouro de buffer para executar o código arbitrário.

Este trabalho é particularmente relevante, uma vez que uma vulnerabilidade de transbordamento de buffer de heap no libwebp, rastreada como CVE-2023-4863, foi usada por um ator de ameaças em uma exploração iOS com clique zero há vários anos. O DeepMind observa que, com essas anotações, essa vulnerabilidade específica, juntamente com a maioria dos outros transbordamentos de buffer nas seções anotadas, teria sido inexplicável.

A fixação de código proativo do agente de IA envolve um processo sofisticado de tomada de decisão. Ao aplicar anotações, ele pode corrigir automaticamente novos erros de compilação e falhas de teste que surgem de suas próprias alterações. Se suas ferramentas de validação detectarem que uma modificação quebrou a funcionalidade, o agente se auto-corriga com base no feedback e tenta uma solução diferente.

Apesar desses resultados promissores, o Google Deepmind está adotando uma abordagem cautelosa e deliberada da implantação, com um forte foco na confiabilidade. Atualmente, todo patch gerado pelo CodEMender é revisado por pesquisadores humanos antes de serem enviados a um projeto de código aberto. A equipe está gradualmente aumentando seus envios para garantir alta qualidade e incorporar sistematicamente o feedback da comunidade de código aberto.

Olhando para o futuro, os pesquisadores planejam alcançar os mantenedores de projetos críticos de código aberto com patches gerados pela CodEMender. Ao iterar o feedback da comunidade, eles esperam lançar o CodEMender como uma ferramenta disponível ao público para todos os desenvolvedores de software.

A equipe DeepMind também pretende publicar artigos e relatórios técnicos nos próximos meses para compartilhar suas técnicas e resultados. Este trabalho representa os primeiros passos para explorar o potencial dos agentes de IA para corrigir proativamente o código e aprimorar fundamentalmente a segurança do software para todos.

Veja também: O ataque de privacidade de Camia revela o que os modelos de IA memorizam

Deseja aprender mais sobre IA e Big Data dos líderes do setor? Confira a AI & Big Data Expo em Amsterdã, Califórnia e Londres. O evento abrangente faz parte da TechEx e é co-localizado com outros eventos de tecnologia líder, incluindo a Cyber ​​Security Expo, clique aqui para obter mais informações.

A IA News é alimentada pela Techforge Media. Explore outros próximos eventos e webinars de tecnologia corporativa aqui.

Fontesartificialintelligence

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *