Pular para o conteúdo

Detector de segredos

Secret Scanner

Varre código, logs ou um despejo de configuração colados em busca de chaves de API, tokens e chaves privadas, com heurísticas de entropia — detecção por padrão, não garantia.

Chaves acabam em commits, coladas em issues e impressas em logs, e no momento em que isso acontece elas são públicas, tenha alguém notado ou não. Esta ferramenta lê código colado, um despejo de log ou um arquivo de configuração e aponta as strings que parecem credenciais — primeiro pelos formatos conhecidos de cada provedor, depois por entropia para as que não têm formato nenhum.

🔒 Roda inteiramente no seu navegadorsecretsscanapi-keyaudit
Escanear

É escaneado enquanto você digita, num worker, nesta aba.

Detector de alta entropia
4,0 bits/caractere

A prosa em inglês fica perto de 4,0 num documento inteiro, mas abaixo de 3,0 numa palavra só. Hexadecimal é 4,0 por construção, base64 uns 5,5, e um alfabeto aleatório de 62 caracteres chega perto de 5,95.

24

Dezesseis é o piso: mais curto do que isso são códigos de cor e pedaços de UUID, e nenhuma credencial que valha a pena achar é tão curta.

48 padrões de provedor ficam sempre ligados, cobrindo AWS, Google Cloud, GitHub, Slack, Stripe, OpenAI, Anthropic, Twilio, SendGrid, npm, PyPI, chaves privadas, URIs de banco de dados, Kakao, Naver e Toss Payments.

Nada sai desta aba. Em especial, nenhuma chave encontrada aqui é mandada ao provedor dela para checar se está viva — isso seria pegar todas as credenciais do seu código e entregá-las a um terceiro a partir da sua própria máquina, que é exatamente o dano que um escâner de segredos existe para evitar. As checagens offline são aritmética feita aqui: o formato que o provedor publica e, num token do GitHub, a soma de verificação que o GitHub embute nele. Os achados mostram só uma prévia encoberta, então o relatório pode ser colado num chamado sem risco.

Como usar

  1. Cole o texto ou solte o arquivo

    Qualquer coisa textual serve — código-fonte, `.env`, um log de CI, um despejo de configuração. Roda em um worker, então uma colagem grande não trava a página.

  2. Leia primeiro as correspondências por formato

    Um acerto em um prefixo conhecido — `AKIA…`, `ghp_…`, `sk-…`, o cabeçalho de um bloco PEM — é quase certo. Esses são os que devem ser tratados antes de qualquer outra coisa.

  3. Trate os acertos por entropia como candidatos

    Uma string de alta entropia sem forma reconhecida pode ser uma chave, um hash, um UUID, um asset minificado ou uma imagem em base64. A ferramenta diz qual regra disparou, para que você julgue.

  4. Rotacione, depois limpe

    Uma chave vazada está vazada. Apagar o commit ou editar o log não a despublica, então revogue e reemita primeiro e arrume o histórico depois.

Perguntas frequentes

Um resultado limpo significa que não há segredos?

Não, e este é o limite que vale a pena entender. Ela encontra os padrões que conhece e as strings que parecem aleatórias. Um formato de chave interno com entropia baixa, uma senha que se lê como uma palavra, ou uma credencial dividida em duas variáveis passam todos direto.

Ela verifica se a chave ainda funciona?

Não consegue, e nem faria. Verificar uma chave significa usá-la contra o provedor, o que envia a sua credencial a um terceiro — o oposto do propósito desta página. Se uma chave está ativa é algo que só o seu emissor pode dizer.

Meu código é enviado a algum servidor?

Não. A varredura acontece em um worker no seu navegador. Uma ferramenta que pede o arquivo com mais chance de conter os seus segredos não deveria estar também enviando-o para algum lugar.

Tudo no meu bundle minificado é sinalizado.

Saída minificada é densa e parece aleatória por construção, que é exatamente o que a regra de entropia detecta. Faça a varredura nos fontes em vez de nos artefatos de build, ou restrinja às regras baseadas em formato.

Pode receber de

Em seguida

Estas aceitam o que esta ferramenta produz, então o resultado pode ir direto.