scanfull
sem cadastro · sem cartão · o primeiro scan é grátis

A IA te entregou um site pronto.
E a chave do banco no navegador.

A Scanfull abre o seu site publicado como um visitante qualquer, encontra o que ficou exposto e prova cada falha. Depois entrega o prompt pronto para o seu assistente consertar — e volta para confirmar que acabou.

Sem cadastro e sem cartão. A análise leva alguns minutos — é um navegador de verdade abrindo o seu site.

Use apenas em aplicações suas ou com autorização. Não coloque senha ou token na URL.

chromium · meu-app.lovable.app/assets/index-4f2b.jslendo
1281import { createClient } from "@supabase/supabase-js"1282// gerado automaticamente — não editar1283const url = "https://xyzcompany.supabase.co"1284const db = createClient(url, "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")1285// role: service_role · ignora toda a RLS
críticochave service_role exposta

Analisamos o site publicado — a ferramenta que gerou o código não importa

LovableCursorBolt.newv0Claude CodeReplitWindsurfFirebase StudioBase44Next.jsSupabaseVercel
Claude CodeCursorLovableWindsurfGitHub CopilotChatGPTGeminiReplit Agent

O site abriu. O login funcionou. Falta uma pergunta.

O que um estranho consegue fazer além do que você planejou?

Crítico

A chave que deveria ficar no servidor foi junto no deploy.

Quando uma credencial privada entra no código que o navegador baixa, ela deixa de ser sua. Quem abrir o arquivo passa a gastar na sua conta.

GET /assets/index-4f2b.js → 200 · sk_live_4eC3••••

Crítico

Entrar no site não deveria dar acesso ao banco inteiro.

Com a Row Level Security desligada, a mesma chamada que traz os seus pedidos traz os de todo mundo. O site funciona igual — o vazamento é silencioso.

GET /rest/v1/orders (sem sessão) → 200 · 3.418 linhas

Alto

O deploy levou mais do que a versão nova.

Arquivos de ambiente, backups e diretórios de código continuam servidos pelo servidor porque ninguém disse para bloqueá-los.

GET /.env → 200 · 1,2 KB

Médio

Seu domínio manda e-mail em seu nome. E o de qualquer um também.

Sem SPF e DMARC publicados, um terceiro envia phishing assinando com o seu domínio. Quem paga a conta da confiança é o seu cliente.

TXT _dmarc.seu-dominio.com → não encontrado

Ninguém vai invadir o seu site.
Um robô já está passando por ele.

Quase ninguém acorda decidido a atacar o seu sistema. O que existe é varredura automática, o dia inteiro, procurando o mesmo punhado de descuidos em todo endereço que responde. Você não precisa ser alvo — basta estar no ar.

230 milhões

de alvos varridos por uma única campanha

Uma operação de extorsão coletou arquivos .env de cerca de 110 mil domínios e usou as máquinas invadidas para varrer a internet atrás de mais. Ninguém escolheu essas vítimas: elas apenas responderam.

Unit 42, Palo Alto Networks · 2024

22 minutos

entre a falha virar pública e a primeira tentativa

Foi o intervalo medido entre a publicação de uma prova de conceito e o primeiro ataque real usando ela. Não é tempo de reagir depois — é tempo de já estar fechado antes.

Cloudflare, State of Application Security · 2024

170 de 1.645

sites da vitrine do próprio Lovable com o banco aberto

Um pesquisador varreu a galeria oficial e achou 10% com a proteção de linha do banco desligada. Dava para ler nome, e-mail, telefone, endereço e valor de dívida de gente real.

CVE-2025-48757 · Matt Palmer

O que um estranho faz com o banco aberto, na prática

  • Lê a tabela de usuários

    Nome, e-mail, telefone e endereço dos seus clientes, de uma vez, com uma requisição que qualquer navegador faz.

  • Escreve nela

    Sem regra de linha, ler e escrever são a mesma permissão. Dá para mudar o próprio registro e virar assinante sem passar pelo pagamento.

  • Gasta na sua conta

    Com a chave de API no bundle, o consumo é dele e a fatura é sua — e você só descobre no fim do mês.

Nenhuma dessas exige talento. Exige que a porta esteja aberta — e a varredura que encontra a porta é a mesma para todo mundo. É por isso que fechar essa camada tira o seu site do alvo automático, que é de onde vem quase todo incidente em aplicação nova.

Achar é fácil. Provar é o trabalho.

Qualquer scanner encontra uma chave parecida com chave. A pergunta que decide se você precisa acordar às três da manhã é outra: ela funciona?

Scanner de superfície

“Encontramos uma credencial que parece ser privada. Validade não verificada. Confiança: a confirmar.”

Você recebe uma suspeita e o trabalho de investigar sozinho.

Scanfull

“Usamos a chave. Ela abriu 3 tabelas sem autenticação e devolveu 3.418 registros — incluindo e-mail e endereço de clientes.”

Você recebe um fato, com a lista das tabelas que abriram.

O teste que interage de verdade com o seu sistema só roda depois que você prova que o domínio é seu. Sem isso, seria teste de invasão em site alheio — e a gente não faz isso nem quando pedem.

Da URL ao “acabou”.

Quatro passos. O terceiro é de graça e o quarto é o que quase ninguém entrega.

  1. 01

    Cole o endereço

    Sem cadastro, sem cartão, sem instalar nada. Só a URL pública do seu site.

  2. 02

    Um navegador de verdade abre seu site

    Não é um curl olhando cabeçalho. É Chromium percorrendo até 120 páginas, lendo os bundles, o storage, os cookies e o DNS do domínio. Leva alguns minutos, e é por isso que acha o que acha.

  3. 03

    Você vê a nota e as falhas na hora

    De graça, com o plano de ação priorizado: o que atacar hoje, quanto tempo leva e quanto do risco sai.

  4. 04

    Corrige e prova que corrigiu

    O relatório completo abre onde está cada falha e o prompt pronto. Depois, o reteste confirma no ar — e isso vem incluso.

Veja o relatório antes de digitar qualquer coisa.

O achado, a prova que o sustenta, a correção e a confirmação — nessa ordem, porque é a ordem em que você precisa agir.

relatório · meu-app.lovable.app · escopo públiconota 0 / 100

Veredito

Três achados críticos deixam o banco e a conta de API ao alcance de qualquer visitante — e três críticos zeram a nota. O site está no ar e funcionando: é isso que faz ninguém perceber.

3
Crítico
1
Alto
3
Médio
0
Baixo
0
Info

Plano de ação: o primeiro bloco leva ~1 h 40 e remove 89% do risco.

Abrir o relatório de exemplo completo7 achados · plano de ação · prompts de correção

O que a gente encontra

67 tipos de checagem em 13 famílias, cada um classificado por OWASP Top 10 e CWE. Cada tipo roda contra cada página, cada arquivo e cada cabeçalho que o seu site entrega — o seu relatório mostra quantas verificações foram executadas de fato.

Segredos no frontend

Stripe, OpenAI, Anthropic, AWS, Google, GitHub, chaves PEM — e a service_role do Supabase, que ignora toda a RLS.

Banco público (RLS)

Teste ativo: tentamos ler suas tabelas sem autenticação. Se vier linha, o banco está aberto — e a gente conta quantas.

Arquivos expostos

.env, .git e backups de configuração servidos publicamente. Segredo a um clique, sem técnica nenhuma.

Cabeçalhos e cookies

CSP, HSTS, clickjacking, nosniff, Referrer-Policy, e as flags do cookie de sessão.

HTTPS, TLS e conteúdo misto

Redirect faltando, certificado vencendo, TLS obsoleto e recurso HTTP dentro de página HTTPS.

CORS e Web Storage

Origem coringa (com e sem credenciais) e token de sessão guardado onde qualquer script alcança.

DNS de e-mail

SPF e DMARC ausentes — o buraco que quase nenhum scanner de site olha, e que vira phishing no seu nome.

Bibliotecas com falha conhecida

jQuery, lodash, axios, Handlebars e outras: cruzamos a versão que o seu site carrega com falhas públicas já corrigidas.

Classificação e prioridade

Cada achado sai com OWASP Top 10, CWE, esforço estimado e sinalização de LGPD quando há dado pessoal em risco.

“Não dá para eu pedir isso para a minha IA?”

Para metade das coisas, dá — e a gente não vai fingir o contrário. Se o relatório disser que falta um cabeçalho de segurança, cole no seu assistente e ele resolve. É por isso que o scan e a lista de falhas são de graça.

O que ele não consegue é olhar o seu site publicado. Ele não sabe qual chave vazou nem em que arquivo dentro de um bundle de um megabyte. Não sabe quais tabelas do seu banco respondem sem autenticação. E, principalmente, não tem como confirmar que a correção pegou no ar — ele acha que consertou, o que não é a mesma coisa.

Essa é a diferença que a gente cobra: a prova de onde está, e a prova de que acabou.

Um preço por profundidade. Sem letra miúda.

Você paga pelo quão fundo quer ir — cada nível inclui o anterior. Pagamento único, sem plano, sem assinatura.

Scan grátis · US$ 0 sem cadastro, sem cartão

Nota de 0 a 100 do seu site · Lista completa das falhas, por gravidade · Classificação OWASP, CWE e sinal de LGPD · Plano de ação priorizado, com tempo estimado

Disponível

Público

US$ 19,90 / site

A home e todas as páginas públicas — mais tudo que o navegador baixa (bundles, configs). É onde a maioria dos vazamentos de site feito com IA aparece.

  • Onde está cada falha — arquivo, linha, endpoint
  • Causa, impacto e código antes/depois
  • Prompt de correção por assistente (Claude Code, Cursor, Lovable, Windsurf)
  • Reteste incluído por 7 dias
  • Relatório exportável em Markdown e PDF
Em breve

+ Usuário

US$ 49,90 / site

Tudo do Público + a área logada de usuário. Você cria uma conta de teste; a gente roda numa sessão isolada e apaga depois.

  • Tudo do nível Público
  • Páginas e ações do usuário logado
  • Dados de um usuário acessíveis por outro (IDOR)
  • Falhas de permissão dentro da conta
Em breve

+ Admin

US$ 99,90 / site

A auditoria completa: tudo dos níveis anteriores + o painel de admin e o teste mais valioso de todos.

  • Tudo dos níveis Público e Usuário
  • Painel de admin e ações privilegiadas
  • Escalada de privilégio: usuário comum chegando no que é só do admin
  • Quebra de permissão entre papéis

O primeiro scan é grátis — você só paga se quiser a prova e a correção.

Sem cadastro e sem cartão. A análise leva alguns minutos — é um navegador de verdade abrindo o seu site.

Quando vale rodar

Antes de mostrar para alguém

O momento em que o site deixa de ser só seu é o momento em que a superfície passa a valer alguma coisa para um estranho.

Depois de mexer em login ou banco

Permissão, sessão e integração são exatamente onde o assistente de código improvisa quando você não olha.

Na entrega para um cliente

Um relatório com evidência e reteste muda a conversa: você entrega software com laudo, não com promessa.

A cada deploy que importa

A superfície muda junto com o código. O que estava fechado semana passada pode ter reaberto ontem.

Dúvidas

Escopo, segurança, correção e cobrança — sem letra miúda.

Preciso instalar alguma coisa ou dar acesso ao meu código?

Não. A Scanfull olha o site publicado, de fora, como qualquer visitante faria: abre as páginas num navegador de verdade, lê os arquivos que o site entrega e consulta o DNS do domínio. Sem plugin, sem SDK, sem acesso ao repositório e sem mudar uma linha do seu projeto.

O scan mexe no meu site? Pode derrubar alguma coisa?

Não escreve nada. As checagens de superfície apenas observam respostas. As checagens que interagem de verdade com o sistema — como o teste de RLS — só rodam depois que você prova que o domínio é seu, e ainda assim são de leitura.

Meu site foi feito no Lovable / Cursor / Bolt / v0. Funciona?

Funciona, e é justamente o caso para o qual a Scanfull foi feita. Como analisamos o que está publicado, a ferramenta que gerou o código não importa. O que muda é a saída: o prompt de correção vem no formato do assistente que você usa.

Se o relatório mostra os problemas, não dá para minha IA consertar sozinha?

Para os problemas fáceis, dá — e tudo bem, o scan grátis existe para isso. O que a sua IA não consegue é olhar o site publicado: ela não sabe qual chave vazou nem em que arquivo, não sabe quais tabelas do banco estão abertas, e não tem como confirmar que a correção pegou no ar. É isso que a gente vende.

O que exatamente vem no relatório completo?

A localização de cada falha com a evidência, a causa-raiz e o impacto, o código antes e depois, o prompt de correção para o seu assistente, a instrução de como verificar que acabou, o reteste incluído e o relatório exportável em Markdown ou PDF.

Como funciona o reteste?

Depois de corrigir, você dispara a segunda passada no mesmo endereço. A gente compara achado por achado pela impressão digital de cada um e diz o que saiu da lista, o que continua e o que apareceu depois. Está incluído no que você pagou, dentro de sete dias.

Vocês guardam as chaves que encontram?

Nunca em texto claro. Assim que um segredo é detectado, ele é mascarado antes de qualquer coisa ser gravada — o que fica no banco é a versão mascarada e um hash, que serve para reconhecer a mesma chave num scan futuro. Isso é regra do produto, verificada por teste automatizado e por restrição no próprio banco de dados.

Posso escanear o site de um cliente meu?

Só com autorização dele. A parte de superfície é o que qualquer visitante enxerga, mas as checagens que interagem com o sistema exigem verificação do domínio justamente para que ninguém teste o que não pode. Se você é agência ou software house, verifique o domínio junto com o cliente e o relatório sai pronto para entregar.

Descobrir agora custa alguns minutos.

Descobrir depois costuma custar o cliente que confiou em você.

Sem cadastro e sem cartão. A análise leva alguns minutos — é um navegador de verdade abrindo o seu site.

scanfull

Scanfull — auditoria de segurança para sites feitos com IA