Código Gerado por IA: Segurança em primeiro lugar

Código Gerado por IA: Segurança em primeiro lugar

Falando de mais de 20 anos de experiência em desenvolvimento e segurança cibernética, os desenvolvedores precisam usar todas as ferramentas de ponta, que economizam tempo e aumentam a produtividade. É um trabalho meticuloso e demorado para garantir que você se comprometa com código funcional de alta qualidade, e o ciclo de vida do desenvolvimento de software sempre exige mais.

Como tal, hoje em dia, quase todos os desenvolvedores usam alguma forma deCódigo gerado por IA— e eles deveriam absolutamente. Ferramentas de IA facilitam a vida dos desenvolvedores ao alavancar o conhecimento cultivado pela comunidade de desenvolvimento ao longo do tempo e em todo o mundo para superar obstáculos que, embora potencialmente novos e desafiadores para eles, já foram abordados há muito tempo. Eles podem confiar razoavelmente que esse código executará a função que desejam alcançar — e podem testá-lo para ter certeza.

Mas eles podem confiar que esse código é seguro ? Absolutamente não. Com todo esse tempo e trabalho gastos comprometendo código funcional, tanto quanto, se não mais, é gasto navegando no backlog de segurança depois.

O que há de errado com o código gerado por IA?

Plataformas GenAI, como a Copilot, aprendem com códigos postados em sites como o GitHub e têm o potencial de adquirir alguns hábitos ruins ao longo do caminho. Elas buscam e retornam códigos que, antes de tudo, realmente funcionam, mas a segurança é um objetivo secundário (se é que existe). Como você verá mais adiante neste artigo, isso leva a um potencial substancial para vulnerabilidades.

Um par de estudos explorou recentemente o efeito da IA ​​na segurança do código. O primeiro foi um estudo da Universidade de Stanford, " Os usuários escrevem mais código inseguro com assistentes de IA? " e o outro foi um estudo da Universidade de Wuhan, " Explorando as fraquezas de segurança do código gerado pelo copiloto no Github ."

O estudo de Stanford descobriu o seguinte:

  • Os participantes que tiveram acesso a um assistente de IA escreveram códigos significativamente menos seguros do que aqueles sem acesso a um assistente.
  • Os participantes com acesso a um assistente de IA também eram mais propensos a acreditar que escreveram códigos seguros, sugerindo que tais ferramentas podem levar os usuários a ficarem excessivamente confiantes sobre falhas de segurança em seus códigos.
  • Os participantes que investiram mais na criação de suas consultas para o assistente de IA, como fornecer funções auxiliares ou ajustar os parâmetros, tiveram maior probabilidade de oferecer soluções seguras.

O estudo de Wuhan descobriu que quase 30% dos trechos de código gerados pelo Copilot têm falhas de segurança. Focando especificamente em Python, 91 de 277 trechos, ou 33%, continham falhas de segurança; desses 91 trechos, havia 277 instâncias de falhas de segurança. Em outras palavras, o código inseguro era MUITO inseguro.

Como posso proteger meu código?

Neste ponto, não é preciso dizer que, quando se trata de usar GenAI como Copilot para ajudar com seu código, você nunca deve presumir que o que está obtendo é perfeitamente seguro. Você deve abordar o código gerado por IA como aborda o código escrito por humanos com um olhar atento e cético e por meio de protocolos de segurança padrão.

No entanto, com o volume e a prevalência de código de IA potencialmente vulnerável abrindo caminho nos ciclos de vida de desenvolvimento de software, as abordagens reativas tradicionais podem não ser suficientes.

As organizações devem criar e manter uma cultura de segurança que integre a segurança em cada estágio do SDLC e busque identificar vulnerabilidades da forma mais proativa possível. Idealmente, as vulnerabilidades devem ser identificadas conforme os desenvolvedores escrevem o código , garantindo que eles comprometam código seguro e de qualidade, eliminando backlogs para equipes de operações de segurança e tornando todo o ciclo de vida mais eficiente.

Abordar vulnerabilidades dentro do IDE durante a codificação é o ponto final natural das filosofias shift-left e secure-by-design e a maneira mais eficaz e eficiente de integrar a segurança ao ciclo de vida de desenvolvimento de software.

Conteúdo Relacionado

O Rails 8 sempre foi um divisor de águas...
Na era do declínio do império dos Estados Unidos...
Os aplicativos da Web são uma pedra fundamental da...
O mundo da tecnologia tem estado agitado com discussões...
Os desenvolvedores Java enfrentam uma variedade de erros relacionados...
Com várias décadas de experiência, adoro criar aplicativos corporativos...
A escalabilidade é um fator crítico quando se trata...
Ao trabalhar em um projeto de código aberto no...
A Inteligência Artificial (IA) tem se tornado cada vez...
A maioria das organizações enfrenta desafios ao se adaptar...
Quando nós, desenvolvedores, encontramos alguns bugs em nossos logs,...
A cibersegurança é um tópico cada vez mais importante...
A experiência do desenvolvedor (DX) é um tópico cada...
Ao relatar estatísticas resumidas para resultados de testes de...
Explorando as Engrenagens do Kernel Semântico Falei um pouco...
Tillbaka till blogg

Lämna en kommentar

Notera att kommentarer behöver godkännas innan de publiceras.