// DOCS

Documentação

Como funciona um scan, como liberar scans profundos para os sites que você possui e os limites que mantêm o serviço gratuito.

Como funciona um scan

Informe qualquer URL pública e o Watchpost a analisa por fora, exatamente com a mesma visão de um invasor. Um scan padrão é passivo e somente leitura: carrega sua página inicial e o JavaScript dela, faz um handshake TLS, consulta o DNS e solicita uma pequena lista de caminhos conhecidos, como /.env ou /.git/config.

Ele nunca envia formulários, nunca tenta fazer login e nunca envia payloads de exploração. A maioria dos scans termina em menos de um minuto. Os resultados de um mesmo host são reaproveitados por 24 horas, então scans repetidos não sobrecarregam seu servidor novamente.

Veja todas as verificações que executamos no catálogo de verificações.

Scans passivos e profundos

  • Passivo: qualquer pessoa pode executar em qualquer site público. Ele só lê o que já é público.
  • Profundo: apenas para donos logados que verificaram o domínio. As verificações profundas testam ativamente a configuração, por exemplo, se tabelas do Supabase ou bancos do Firebase podem ser lidos com a chave pública incluída no seu site.

As verificações profundas registram apenas contagens e nomes (por exemplo, "tabela profiles: 1.204 linhas legíveis"), nunca os dados em si. Os relatórios de scans profundos são visíveis apenas para o dono do site.

Verifique seu domínio

Adicione o site pelo seu painel. Você recebe um token; publique-o usando qualquer um destes métodos e clique em Verificar:

  1. Registro TXT de DNS em _watchpost-verify.your-domain: watchpost-verify=<token>
  2. Arquivo em https://seu-dominio/.well-known/watchpost-verify.txt contendo o token
  3. Meta tag no <head> da sua página inicial: <meta name="watchpost-verify" content="<token>">

A propriedade é verificada novamente antes de um scan profundo quando tem mais de 30 dias. Se o token não estiver mais lá, os scans profundos são bloqueados novamente até você verificar de novo.

Limites

  • Scans anônimos: 5 por minuto e 50 por dia por endereço IP.
  • Os resultados de um mesmo host ficam em cache por 24 horas.
  • Sites que você possui: um reescaneamento passivo a cada 5 minutos e um scan profundo por hora.
  • Até 20 sites por conta.

Pontuações e notas

Todo scan começa com 100 pontos. Cada achado subtrai pontos conforme a severidade: crítico 40, alto 15, médio 5, baixo 1. A pontuação corresponde a uma nota: A 90+, B 75+, C 60+, D 40+, F abaixo de 40. Qualquer achado crítico limita a nota a D.

Uma nota boa significa que não encontramos nada dentro do escopo das nossas verificações. Não é um teste de intrusão nem uma garantia de que um site é seguro.

Quem pode ver um relatório

Os relatórios de scans anônimos não são listados: qualquer pessoa com o link pode abri-los, mas eles ficam fora dos mecanismos de busca. Os relatórios dos sites da sua conta, passivos ou profundos, são visíveis apenas para você.

API pública

Os mesmos endpoints usados pelo site são abertos, respeitando os limites acima:

  • POST /api/v1/scans com {"url": "https://example.com"} retorna {"id": "…"}
  • GET /api/v1/scans/<id> retorna status, nota e achados
  • GET /api/v1/checks retorna o catálogo de verificações

Identifique sua integração com um User-Agent descritivo.