Usar Inteligência Artificial para codificação pode gerar um problema de segurança

estudo-aponta-que-uso-de-ia-aumenta-a-disposicao-de-correr-riscos

A Inteligência Artificial tem facilitado bastante a vida das pessoas, sobretudo a das pessoas desenvolvedoras, que agora podem contar com ferramentas de codificação que aceleram o professo de desenvolvimento. No entanto, o uso de ferramentas de IA para codificação, pode gerar um problema de segurança.

Andrej Karpathy, que é um ex-cientista pesquisador e membro fundador da OpenAI e ex-diretor sênior de IA da Tesla, revela que ultimamente tem usado o Github Copilot, que aproveita o GPT-3 para gerar código. Ele fez essa revelação no twitter, ode disse:

Boa leitura sobre engenharia reversa do GitHub Copilot. O Copilot acelerou dramaticamente minha codificação, é difícil imaginar voltar à “codificação manual”. Ainda aprendendo a usá-lo, mas já escreve ~ 80% do meu código, ~ 80% de precisão. Eu nem mesmo codifico, eu indico e edito.

usar-inteligencia-artificial-para-codificacao-pode-gerar-um-problema-de-seguranca

Uso de Inteligência Artificial na codificação

Embora o ChatGPT tenha cativado o mundo recentemente, o fato é que a IA generativa tem feito incursões significativas nos últimos anos. Uma área chave para isso foi ajudar no desenvolvimento do código. No entanto, existem alguns problemas com esses sistemas, como vulnerabilidades de segurança. Esta é a conclusão de um artigo de acadêmicos de Stanford. Eles observam:

Descobrimos que os participantes com acesso a um assistente de IA geralmente produziam mais vulnerabilidades de segurança do que aqueles sem acesso, com resultados particularmente significativos para criptografia de string e injeção de SQL … Surpreendentemente, também descobrimos que os participantes que forneceram acesso a um assistente de IA eram mais propensos a acreditar que escreveram código seguro do que aqueles sem acesso ao assistente de IA.

Há algum tempo, IDEs ou Ambientes Integrados de Desenvolvimento, possuem sistemas inteligentes para melhorar a codificação. Alguns dos recursos incluem preenchimento automático, sugestões de código e depuração avançada. Mas o surgimento de grandes modelos de linguagem como GPT-3, Codex, Copilot e ChatGPT foram transformadores.

Ao processar grandes quantidades de conteúdo, os LLMs podem entender e criar códigos sofisticados, como por exemplo, você pode escrever um prompt como “Escreva uma função em Python que calcula a média dos números do banco de dados XYZ”. Além disso, um sistema de codificação baseado em IA também pode fornecer recomendações quando alguém está programando.

Problemas de codificação de IA

Há uma série de problemas com os sistemas de geração de código IA. Eles podem “alucinar”, o que significa que o código pode parecer sólido, mas na verdade tem falhas. Em alguns casos, a criação do código pode parar no meio do fluxo devido à complexidade das funções.

Mas esses problemas não devem ser uma surpresa. Os sistemas de geração de código IA são treinados em grandes quantidades de repositórios públicos, como no GitHub. Alguns dos programas podem não estar bem escritos ou de acordo com os padrões comuns. Isso também pode permitir vulnerabilidades com segurança.

Além disso, os desenvolvedores podem não ter os conjuntos de habilidades para identificar os problemas de segurança. Parte disso se deve à aparência bem estruturada do código.

Independentemente disso, parece que os sistemas de geração de código AI estão aqui para ficar – e terão um grande impacto na TI. A tecnologia vai melhorar a produtividade, democratizar o desenvolvimento e ajudar a aliviar a escassez de desenvolvedores.

“Não acho que as empresas devam proibir esse tipo de ajuda”, disse Ford. “O gênio saiu da garrafa, e as empresas que se sairão melhor neste Admirável Mundo Novo serão aquelas que abraçarem os avanços com cuidado e reflexão, não aquelas que os rejeitarem completamente ou os implantarem de forma imprudente como se fossem uma panacéia. ”