← Guias
6 min de leitura

Prompts para a IA corrigir falhas de segurança sem quebrar o app

Pedir "deixe seguro" não funciona. Prompts prontos para o Lovable, o Cursor ou o Bolt corrigirem RLS, chave exposta, rota sem login e IDOR — e como conferir.

A IA corrige bem uma falha de segurança quando recebe três coisas: o que exatamente está errado, o que ela NÃO pode mudar e como provar que ficou certo. Sem isso, ela costuma responder "pronto, está seguro" — ou corrigir de um jeito que quebra o app e, na próxima rodada, desfazer a correção.

Tabela aberta no Supabase (RLS)

A tabela public.pedidos está sem RLS: qualquer visitante lê e altera os pedidos de todos.
Ligue a RLS nela e crie políticas separadas de select, insert, update e delete
que só liberem as linhas em que auth.uid() = user_id.
Não use using (true). Não mude colunas nem telas.
No fim, mostre o SQL aplicado.

Chave secreta no front-end

A chave da OpenAI está no código do navegador (src/lib/ia.ts).
Mova a chamada para uma Edge Function que:
- lê a chave de um segredo (nunca do código);
- confere que o usuário está logado antes de chamar a OpenAI;
- limita o tamanho do texto enviado.
O front passa a chamar essa função. Remova a chave de todos os arquivos do front.

Depois de mover, TROQUE a chave no painel da OpenAI. A antiga já foi publicada — tirar do código não a desfaz.

Rota que não pede login

A rota POST /api/pedidos grava no banco sem conferir quem chamou.
No início da rota, confira a sessão do usuário; sem sessão, responda 401 e não faça nada.
Use o id do usuário da SESSÃO para gravar — nunca um user_id que venha no corpo do pedido.

Dados de outro usuário trocando o id (IDOR)

GET /api/pedidos/[id] devolve o pedido de qualquer usuário: basta trocar o id.
Busque o pedido filtrando pelo id E pelo user_id da sessão.
Se não achar, responda 404 (não 403), para não confirmar que o pedido existe.

Como conferir a correção

  1. 1Teste com duas contas: a conta B não pode ver nem mudar nada da conta A.
  2. 2Abra o site em aba anônima e tente as páginas de dentro: devem pedir login.
  3. 3Rode npx vibedefender de novo: o item corrigido sai da lista. Se algo novo aparecer, a correção abriu outra porta.

O VibeDefender entrega um prompt assim para cada problema que encontra, já com o arquivo e a linha — no plano Pro. No gratuito, você vê o que foi encontrado e quantas vezes.

Dicas curtas de segurança para quem cria com IA: siga @npx_vibedefender no Instagram.