Executando verificação de segurança...
2

3 Problemas de Segurança que Todo App Feito com IA Tem (e Você Nem Sabe)

Nos últimos dias, publiquei sobre vibe coding e recebi dezenas de comentários. Uma frase se repetiu bastante:

"Funcionar não é a mesma coisa que funcionar direito."

Isso me fez ir testar. Pedi para o Cursor e para o Lovable criarem um sistema simples: cadastro de usuários com login e senha. Algo básico que quase todo app precisa.

Em todos os casos, encontrei pelo menos um dos três problemas abaixo.


1. Qualquer pessoa pode ver os dados de todo mundo

Quando você cria um app com banco de dados (tipo o Supabase, que é gratuito e popular), a IA configura tudo pra funcionar. Mas "funcionar" significa que os dados são acessíveis. Pra todo mundo.

Na prática: se você tem um app de agendamento e eu me cadastro como usuário, eu posso ver o nome, email e telefone de TODOS os outros usuários. Não preciso ser hacker. Só preciso saber onde olhar.

Por que isso acontece? O Supabase tem um sistema de proteção chamado "Row Level Security" (RLS). Ele garante que cada pessoa só vê os próprios dados. Mas esse sistema vem desligado por padrão. E a IA quase nunca liga ele sozinha.

O que fazer: Se você usa Supabase, vá nas configurações do seu banco de dados e ative o RLS em todas as tabelas. Se não sabe como, peça pro Cursor: "Ative Row Level Security em todas as tabelas do meu Supabase, garantindo que cada usuário só acesse os próprios dados."


2. Senhas fracas passam sem problema

Testei criar conta no app gerado pela IA usando a senha "123456". Funcionou. Testei "aaa". Também funcionou. Sem nenhum aviso, sem nenhuma restrição.

Isso significa que os usuários do seu app podem usar qualquer senha. E quando (não se, quando) alguém tentar invadir as contas, as senhas fracas vão cair primeiro.

Mas o problema não para na senha. Também faltou:

  • Verificação de email: qualquer pessoa pode se cadastrar com um email que não existe
  • Limite de tentativas de login: um atacante pode tentar milhares de senhas sem ser bloqueado

O que fazer: Peça pro Cursor adicionar validação de senha (mínimo 8 caracteres, pelo menos uma letra e um número). Peça também para adicionar verificação de email e limite de tentativas de login. Essas três coisas juntas já eliminam os ataques mais comuns.


3. As "chaves" do seu app ficam visíveis

Todo app que se conecta a um banco de dados ou serviço externo usa "chaves de acesso". Pense nelas como a senha do seu app para acessar o banco de dados.

O problema: a IA às vezes coloca essas chaves diretamente no código que roda no navegador do usuário. Qualquer pessoa que abrir o "inspecionar elemento" do seu site pode ver essas chaves.

É como ter a chave da sua casa pendurada do lado de fora da porta. Funciona pra você entrar. Mas funciona pra todo mundo também.

O que fazer: Certifique-se de que as chaves sensíveis do seu app ficam apenas no "servidor" (a parte que o usuário não vê), nunca no "frontend" (a parte que aparece no navegador). Se usa Next.js, não coloque secrets em variáveis que começam com NEXT_PUBLIC_.


Não precisa entrar em pânico

Esses três problemas são comuns e têm solução. O ponto não é que vibe coding é perigoso. O ponto é que as ferramentas de IA são otimistas. Elas entregam o que funciona, não necessariamente o que é seguro.

Quem tem experiência técnica sabe disso por instinto. Quem está começando a criar com IA, não tem como saber. E não deveria precisar descobrir sozinho.

A boa notícia: agora você sabe que esses problemas existem. E saber que existem já é metade da solução.


Se você já criou algo com IA e quer saber se está seguro, compartilha nos comentários. Post completo com exemplos de código no blog: https://blog.zilvo.app/posts/3-problemas-seguranca-app-feito-com-ia/

Carregando publicação patrocinada...