Vou fazer a verificação de segurança do seu app Lovable ou bolt supabase antes de você lançar


Sobre este Serviço
Tradução automática
Construído com Lovck clean, eu vou te dizer. Lovable, Bolt ou Cursor. Funciona. Essa nunca foi a questão.
A questão é o que um estranho que possui sua chave anônima pode ler dela.
Essas ferramentas geram políticas rapidamente, e geralmente parecem corretas. Mas RLS é uma camada. Por baixo, está o sistema de concessões do Postgres, acima dele está o PostgREST, e os vazamentos vivem nas costuras.
Eu gerencio um POS multi-inquilino no Supabase - 90 migrações, dinheiro real diariamente. Três revisões de segurança encontraram seis falhas reais, todas além das políticas que estavam, como escrito, corretas.
O QUE EU VERIFICO
- Tabelas com RLS desligado ou ligado sem política
- - Funções que o anon pode executar (revogar do anon sozinho NÃO fecha isso)
- - Views que bypassam RLS, e aquelas que o PostgREST silenciosamente tornou graváveis
- - Concessões a nível de tabela, e a assimetria que ninguém espera:
- uma nova coluna é NEGADA para leitura até que você conceda
- uma nova coluna é PERMITIDA para escrita até que você revogue
COMO EU COMPROVO
Eu faço login como um usuário de baixa privilégio do seu projeto, executa a consulta e te mostro a resposta. Cada achado acompanha sua consulta e sua saída. Após a correção, a mesma consulta é executada novamente e retorna algo diferente.
O script de leitura que uso é público - execute você mesmo
Conheça mais sobre Basel Draz
Supabase RLS and privilege audits
- A partir deEgito
- Membro desdefev. de 2024
- Responde em aprox.:11 horas
Idiomas
Árabe, Inglês
Tradução automática
Meu portfólio
Perguntas frequentes
Tradução automática
Você precisa da minha database de produção?
Não. Uma função de leitura, ou uma cópia de staging com o mesmo esquema, é suficiente. As verificações leem catálogos, não suas linhas. Eu não quero sua chave de role de serviço e vou pedir que você não envie ela. Apenas o pacote de Auditoria e Correção precisa de acesso de escrita, e somente para as migrações listadas no relatório.
Eu não escrevi o código, a IA fez. Isso é um problema?
De jeito nenhum, e você não precisa entender SQL para usar o relatório. No topo, ele está escrito em linguagem simples para quem aprova, e as consultas e migrações ficam abaixo para quem aplica. Se for você também, eu te explico cada uma.
E se você não encontrar nada?
Então o relatório diz isso, e você tem uma linha de base documentada mais a lista de tudo que foi testado. Execute o script público antes de pedir. Se estiver limpo, me envie uma mensagem e eu te digo honestamente que você não precisa disso.
Isso é só para Supabase?
As verificações são simples Postgres e funcionam em qualquer banco de dados Postgres 15+ usando row level security. O Supabase é onde elas são mais necessárias, porque o papel de anon e o PostgREST expõem coisas que as pessoas não esperam. Também assino um NDA sob solicitação, e suas descobertas nunca aparecem na minha escrita pública.

