Pular para o conteúdo
Skillpedia
Pesquisa48 mil · #3287

hunt-source-leak

Ajuda seu agente a encontrar vazamentos de código-fonte ou arquivos de compilação. Isso é importante para proteger a propriedade intelectual de um software.

O que ela faz

Esta ferramenta procura por informações sensíveis que podem ter sido expostas acidentalmente em sites. Ela busca por arquivos que contêm código-fonte, segredos como senhas e chaves de API, ou detalhes sobre como a API de um site funciona.

Quando usar

  • ✓Quando você é um profissional de segurança testando a proteção de um site.
  • ✓Para verificar se informações confidenciais foram vazadas em um site.
  • ✓Em ambientes de teste controlados para entender como as informações são expostas.

Exemplo do que pedir para a IA

“Procure por vazamentos de código-fonte e segredos no site exemplo.com”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-source-leak/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-source-leak/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta tenta acessar caminhos comuns onde informações sensíveis podem estar. Ela verifica arquivos como '.env' (que podem conter senhas), '.js.map' (que podem revelar o código-fonte completo) e 'swagger.json' (que descreve a API).

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill hunt-source-leak

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/hunt-source-leak/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.

Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:

  1. Peça ao usuário para declarar o URL exato do alvo, IP, conta ou recurso.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
  4. Aguarde a confirmação explícita na conversa atual.

Sem essa confirmação, permaneça somente leitura e forneça apenas orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.

HUNT-SOURCE-LEAK — Vazamento de Código Fonte e Artefatos de Build

Alvos "Crown Jewel"

Mapa de origem expondo código fonte TypeScript = veja todas as rotas de API, lógica de autenticação, segredos. JSON Swagger/OpenAPI = mapa completo da superfície da API.

Descobertas de maior valor:

  • .js.map source maps — reconstrói código fonte completo TypeScript/ES6 → encontra chaves de API codificadas, endpoints internos, desvios na lógica de autenticação
  • swagger.json / openapi.json — especificação completa da API REST com todos os endpoints, parâmetros, esquemas de autenticação e nomes de rotas internas
  • .env / .env.production — APP_KEY, DB_PASSWORD, API_KEY, SECRET_KEY em texto plano
  • Exposição de .git/ — git clone todo o histórico de origem → todos os segredos codificados no passado
  • asset-manifest.json / _next/static/ — todos os caminhos de bundle JS → descoberta sistemática de source maps
  • build-info / info.json — hash de commit git, timestamp de build, versões de dependência → direcionamento de CVE

Fase 1 — Vitórias Rápidas (Executar Primeiro)

# These 10 requests take <30 seconds and often yield Critical findings
for PATH in \
  "/.env" \
  "/.env.production" \
  "/.env.local" \
  "/.git/HEAD" \
  "/swagger.json" \
  "/api/swagger.json" \
  "/v1/swagger.json" \
  "/openapi.json" \
  "/api/openapi.json" \
  "/api-docs"; do
  STATUS=$(curl -s -o /tmp/sl_test -w "%{http_code}" "https://$TARGET$PATH")
  if [ "$STATUS" = "200" ]; then
    echo "[+] HIT: https://$TARGET$PATH"
    head -5 /tmp/sl_test
    echo "---"
  fi
done

Fase 2 — Descoberta de Source Maps

Sempre resolva o hash de build ATUAL antes de testar, e novamente antes de verificar novamente. Os nomes dos arquivos de bundle são com hash de conteúdo, então eles mudam a cada implantação. Um URL de .map registrado ontem pode retornar 404 hoje enquanto o mapa ainda está totalmente exposto sob um novo nome. Um 404 no URL antigo não é remediação — é um novo build.

# ALWAYS derive the hash live, never reuse a recorded URL
HASH=$(curl -s "https://$TARGET/" | grep -oE 'main\.[a-f0-9]+\.js' | head -1)
curl -s -o /dev/null -w '%{http_code} %{size_download} %{content_type}\n' \
  "https://$TARGET/static/js/${HASH}.map"

Lição de um engajamento autorizado. Um grande mapa de produção foi encontrado em main.<hashA>.js.map. Na re-verificação, esse URL retornou um pequeno HTML soft-404 e a descoberta foi quase encerrada como corrigida. O bundle havia mudado para main.<hashB>.js — e o mapa ainda estava publicado em main.<hashB>.js.map, mesmo tamanho. Nada havia sido remediado.

Diga isso explicitamente ao cliente no relatório: reimplantar não corrige a exposição do source map. Apenas GENERATE_SOURCEMAP=false (ou remover .map na implantação) mais um cache purge na CDN o fecha. Uma equipe que reimplantar e verificar o link antigo declarará vitória erroneamente.

A mesma regra se aplica a qualquer artefato com hash de conteúdo: arquivos chunk, maps CSS, asset-manifest.json e equivalentes de staging.

# Passo 1: Obter o manifesto de assets para encontrar todos os caminhos de bundle JS
curl -s "https://$TARGET/asset-manifest.json" | python3 -m json.tool 2>/dev/null
curl -s "https://$TARGET/static/js/main.*.js" 2>/dev/null | head -3

# Next.js
BUILD_ID=$(curl -s https://$TARGET/ | grep -oP '"buildId":"\K[^"]+')
curl -s "https://$TARGET/_next/static/$BUILD_ID/_buildManifest.js" | head -5

# Passo 2: Para cada bundle JS, verificar a referência do source map no final do arquivo
for JS_URL in $(curl -s https://$TARGET/ | grep -oP 'src="[^"]*\.js"' | sed 's/src="//;s/"//'); do
  LAST_LINE=$(curl -s "https://$TARGET$JS_URL" | tail -1)
  echo "$LAST_LINE" | grep -q "sourceMappingURL" && echo "[+] Source map: $JS_URL"
done

# Passo 3: Baixar e reconstruir a origem a partir de arquivos .map

…
Perguntas frequentes

O que são '.js.map' e por que são perigosos?

São arquivos que ajudam os navegadores a depurar código JavaScript. No entanto, eles podem ser usados para reconstruir o código-fonte original (TypeScript/ES6), revelando segredos como chaves de API e lógica interna.

O que é 'swagger.json' ou 'openapi.json'?

São arquivos que descrevem como uma API (interface de programação de aplicativos) funciona. Eles listam todos os 'pontos de entrada' (endpoints), os dados que esperam receber e o que retornam, podendo expor rotas internas e detalhes de autenticação.

Posso usar isso em qualquer site?

Não. O uso desta ferramenta é estritamente para fins educacionais ou avaliações de segurança autorizadas. Você precisa de permissão explícita e por escrito do proprietário do sistema antes de usá-la. O uso indevido é ilegal.

Detalhes

Descrição original do autor

Hunt source code and build artifact leakage

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3287
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas