Skip to main content

A IA leva a AppSec ao inferno ou ao paraíso?

Escrito por
blog feature ai blue

3 de outubro de 2023

0 minutos de leitura

O uso da inteligência artificial em todas as áreas da vida — da redação de trabalhos à manutenção de infraestruturas críticas e à fabricação de produtos — é um tema controverso. Enquanto algumas pessoas se animam com as possibilidades das tecnologias de IA e ML, outras sentem receio e relutam em adotá-las. Essas opiniões divergentes levantam uma questão fundamental: a IA vai transformar a sociedade atual em uma utopia ou em uma distopia?

Essas discussões também levantam uma questão mais específica para o nosso setor: usar IA para criar e proteger aplicações é uma boa ideia ou vai levar ao desastre? Ravi Maira, vice-presidente de marketing de produto, e Randall Degges, líder de DevRel e comunidade, conversaram sobre o uso de IA em AppSec durante uma live no LinkedIn, em junho de 2023.

Continue lendo para conferir alguns destaques da conversa, incluindo como a IA pode ajudar as empresas, em quais pontos é preciso ter cautela com suas falhas inerentes e o que esperar da IA no futuro do desenvolvimento e da segurança de aplicações. 

Por que a IA é importante para as empresas hoje

Quando usada corretamente, a inteligência artificial pode aumentar a produtividade e impulsionar a inovação no desenvolvimento. Veja algumas maneiras como a IA aprimora a programação, a segurança e a produtividade:

A IA multiplica a produtividade

A IA pode acelerar significativamente a produtividade de desenvolvedores e profissionais de segurança, oferecendo respostas mais precisas e conectando informações durante pesquisas. 

Randall deu um exemplo real de como usar IA para pesquisar: “Ontem à noite, eu estava trabalhando em um projeto. Baixei um episódio de um dos nossos podcasts… Mas o arquivo era grande demais para a ferramenta que eu estava usando… Meu primeiro impulso foi pesquisar no Google: ‘O que posso usar para dividir este arquivo MP3 em arquivos menores?’ Eu poderia abrir um daqueles programas completos de edição de áudio. Mas isso dá muito trabalho. Então, simplesmente fiz a pergunta no ChatGPT. Ele me devolveu um comando de linha de comando do FFmpeg que eu podia executar para gerar todo o resultado. Eu levaria um tempo para descobrir como fazer isso.”

Desenvolvedores podem programar melhor com IA

Além de usar IA para pesquisas, os desenvolvedores podem recorrer a ferramentas com IA para entender códigos complexos. Quando usam um mecanismo de busca para encontrar código novo, precisam se esforçar para entendê-lo — um processo árduo que consome bastante tempo e energia. Em contrapartida, uma solução como Beto usa IA para explicar cada linha de código aos desenvolvedores, facilitando muito a compreensão e o trabalho com código novo.

A IA está por trás de algumas das ferramentas de AppSec mais poderosas da atualidade

A IA também pode fortalecer as iniciativas de segurança de aplicações. Embora esteja claro que um único modelo de LLM não é avançado o bastante para funcionar isoladamente, ele se torna uma solução poderosa quando combinado com outras tecnologias. Ravi afirmou: “É a ideia de não usar apenas um modelo, mas aplicar diferentes métodos de aprendizado de máquina e IA no momento certo, com um objetivo específico.”  

Os riscos do uso de IA em AppSec

Embora a IA possa ser útil, é importante não se deixar levar demais pelo entusiasmo com essa nova tecnologia. Quando usada de forma inadequada, ela pode causar muitos danos. Ravi e Randall mencionaram alguns riscos que surgem ao usar IA na segurança e no desenvolvimento de aplicações.

Alucinações

Alucinação — termo usado para descrever casos em que uma IA gera informações falsas — pode causar problemas em qualquer área em que as pessoas usem IA, inclusive na programação e nas práticas de segurança. Por isso, desenvolvedores e profissionais de segurança devem ter muito cuidado ao usar IA para gerar respostas de pesquisa, código e outros conteúdos. 

Esse nível de falta de confiabilidade significa que as equipes ainda precisam fazer suas próprias pesquisas, treinamentos e compartilhar conhecimento. Também significa que devem adotar a mentalidade de “confie, mas verifique”. As informações geradas por uma ferramenta de IA precisam ser corroboradas por pesquisas feitas por pessoas ou por outros recursos, como ferramentas de segurança. 

Entradas de baixa qualidade para a IA

Ravi e Randall também mencionaram que a qualidade das respostas da IA depende da qualidade das entradas. Randall explicou: “Uma das regras fundamentais para usar LLMs é: quanto mais contexto você fornecer, melhor será a resposta. Se você abrir uma sessão vazia no ChatGPT e disser ‘Oi, crie uma função em Python que faça isto’, com uma definição muito vaga, provavelmente vai receber algum tipo de resposta aleatória, independentemente de como ajustar as configurações de temperatura dos modelos subjacentes. [Em vez disso], forneça mais contexto, como: ‘Olha, tenho este arquivo inteiro ou este diretório de arquivos.’” 

Mas, mesmo que você escreva um prompt bem específico (o que pode ser difícil), não há garantia de que os resultados serão perfeitos. A qualidade dos resultados gerados por IA depende das amostras usadas no treinamento do modelo. Segundo Ravi: “[A IA] aprende com código inseguro. Então, quando você pergunta se o ChatGPT vai simplesmente resolver o problema do código inseguro… a resposta é: ainda não… Ele aprendeu com código inseguro; por isso, gera código inseguro.” 

Além disso, devido à forma como os grandes modelos de linguagem (LLMs) funcionam, as entradas para IA envolvem várias questões de segurança. Alguns riscos são a injeção de prompt (em aplicações voltadas aos usuários) e problemas mais complexos relacionados a entradas “direcionadoras” e enganosas. Por exemplo, se você fornecer um trecho de código ao ChatGPT e pedir que identifique possíveis problemas de segurança, mas o código tiver nomes de variáveis ou classes enganosos, é provável que receba resultados inesperados e informações equivocadas devido aos modelos generativos.

O futuro da IA no desenvolvimento de aplicações

À medida que a IA se torna cada vez mais presente no nosso mundo, especialmente no desenvolvimento e na segurança de aplicações, Ravi e Randall observam algumas tendências. Primeiro, eles preveem que a IA vai capacitar “programadores comuns”: pessoas sem experiência prévia em desenvolvimento que criam código com essas ferramentas. 

Eles também preveem que a demanda por ferramentas robustas de segurança de aplicações continuará crescendo — especialmente por ferramentas que aproveitem a IA de forma inteligente. As ferramentas que se destacarão nesse setor em constante evolução vão usar a IA para inovar, mas também recorrer a pessoas ou a tecnologias adicionais para verificar cada afirmação gerada por IA.

Para saber mais sobre IA em AppSec, confira a conversa completa de Ravi e Randall no LinkedIn. 

Publicado em:

Leia mais

Blog

Modelos de ponta encontraram as vulnerabilidades. Só o atacante encontrou as cadeias.

A análise estática encontrou as falhas, mas só os testes de ataque em aplicações ativas provaram como elas poderiam ser encadeadas para causar invasões. Uma comparação entre Evo COS, Claude Security e Claude Code Security.

feature insights context
Blog

Os ataques autônomos já chegaram. A defesa precisa acompanhar o ritmo.

Os atacantes autônomos estão reduzindo o tempo disponível para a defesa. Saiba como a descoberta, a correção, a validação e a prevenção contínuas ajudam as equipes de segurança a acompanhar esse ritmo.

Blog

Por que agentes de programação com IA continuam criando falhas de controle de acesso

Agentes de programação com IA podem gerar uma lógica de autorização que compila e passa pela revisão, mas permite que um tenant acesse os dados de outro. Saiba por que é difícil detectar falhas de controle de acesso e como evitá-las.