GitHub lança ferramenta de correção automática com tecnologia de IA para ajudar os desenvolvedores a corrigir falhas de segurança
![GitHub lança ferramenta de correção automática com tecnologia de IA para ajudar os desenvolvedores a corrigir falhas de segurança GitHub lança ferramenta de correção automática com tecnologia de IA para ajudar os desenvolvedores a corrigir falhas de segurança](https://i0.wp.com/blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgha6J17PBjMlZmCOcg1I-lTr7rM8MurscrQk2Twx22VRJntGNMvOVKULSGL7ZpR3BsGq2zEqX7wUpY9ts08-AooVmzdAdsDFxuObWx3wnlsKmKeEvMB_i0mar3yZzaMisqkTl0udAopzdcud62CF6sdzbmM5-dkzjUUkJxT-z-QSe5P9HwKFux1sWWdODo/s728-rw-e365/github.jpg?resize=728%2C380&ssl=1)
![Ferramenta de correção automática com tecnologia de IA Ferramenta de correção automática com tecnologia de IA](https://i0.wp.com/blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgha6J17PBjMlZmCOcg1I-lTr7rM8MurscrQk2Twx22VRJntGNMvOVKULSGL7ZpR3BsGq2zEqX7wUpY9ts08-AooVmzdAdsDFxuObWx3wnlsKmKeEvMB_i0mar3yZzaMisqkTl0udAopzdcud62CF6sdzbmM5-dkzjUUkJxT-z-QSe5P9HwKFux1sWWdODo/s728-rw-e365/github.jpg?w=780&ssl=1)
O GitHub anunciou na quarta-feira que está disponibilizando um recurso chamado correção automática de verificação de código em versão beta pública para todos os clientes de Segurança Avançada para fornecer recomendações direcionadas em um esforço para evitar a introdução de novos problemas de segurança.
“Desenvolvido por GitHub Copilot e CodeQL, o autofix de varredura de código cobre mais de 90% dos tipos de alerta em JavaScript, Typescript, Java e Python e fornece sugestões de código que comprovadamente corrigem mais de dois terços das vulnerabilidades encontradas com pouca ou nenhuma edição, ” Pierre Tempel e Eric Tooley do GitHub disseram.
O recurso, apresentado pela primeira vez em novembro de 2023, aproveita uma combinação de CodeQL, APIs Copilot e OpenAI GPT-4 para gerar sugestões de código. A subsidiária da Microsoft também disse que planeja adicionar suporte para mais linguagens de programação, incluindo C# e Go, no futuro.
A correção automática de verificação de código foi projetada para ajudar os desenvolvedores a resolver vulnerabilidades à medida que codificam, gerando possíveis correções e fornecendo uma explicação em linguagem pure quando um problema é descoberto em uma linguagem suportada.
![Cíber segurança](https://i0.wp.com/blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdKpsEk81OwnOikxTKgpp0fKbGZ8sQlNdSutORGiIEXk9d78hZvEjybZ6zrdTr1E7zwHJVO7UGpf4_43SChOFcGBzABAYAbQwH8FEP-ZRNRH9Ik3ir0NSuFJVjuXV6rXxAIlVoF1myDrQoCsLZxwXdXv1Q_PfzZiXxNdXvhk6hfq1slZqAtCfryyb9Wz8T/s728-e365/app-d.png?resize=727%2C90&ssl=1)
Essas sugestões podem ir além do arquivo atual para incluir alterações em vários outros arquivos e nas dependências que devem ser adicionadas para corrigir o problema.
“A correção automática de verificação de código reduz a barreira de entrada para desenvolvedores, combinando informações sobre práticas recomendadas com detalhes da base de código e alertas para sugerir uma correção potencial para o desenvolvedor”, disse a empresa.
“Em vez de começar com uma busca por informações sobre a vulnerabilidade, o desenvolvedor começa com uma sugestão de código que demonstra uma solução potencial para sua base de código.”
Dito isto, cabe ao desenvolvedor avaliar as recomendações e determinar se é a solução certa e garantir que não se desvie do comportamento pretendido.
O GitHub também enfatizou as limitações atuais das sugestões de código de correção automática, tornando imperativo que os desenvolvedores revisem cuidadosamente as alterações e as dependências antes de aceitá-las –
- Sugerir correções que não sejam alterações de código sintaticamente corretas
- Sugerir correções que sejam código sintaticamente correto, mas sugeridas no native incorreto
- Sugerir correções que sejam sintaticamente válidas, mas que alterem a semântica do programa
- Sugerir correções que não conseguem resolver a causa raiz ou introduzir novas vulnerabilidades
- Sugira correções que resolvam apenas parcialmente a falha subjacente
- Sugira dependências não suportadas ou inseguras
- Sugerir dependências arbitrárias, levando a possíveis ataques à cadeia de abastecimento
“O sistema tem conhecimento incompleto das dependências publicadas no ecossistema mais amplo”, observou a empresa. “Isso pode levar a sugestões que adicionam uma nova dependência de software program malicioso que os invasores publicaram sob um nome de dependência estatisticamente provável”.