Pular para o conteúdo
Skillpedia
Segurança48 mil · #4290

supply-chain-attack-recon

Ajuda seu agente a investigar a superfície de ataque de cadeias de suprimentos de software. Ele busca informações externas sobre possíveis vulnerabilidades.

O que ela faz

Esta ferramenta ajuda a encontrar possíveis vulnerabilidades em como uma empresa gerencia seus softwares, especialmente aqueles que dependem de outros softwares. Ela procura por 'pontos fracos' que poderiam ser explorados em ataques.

Quando usar

  • ✓Quando você precisa entender os riscos de segurança de um software que uma empresa usa.
  • ✓Ao investigar como um ataque pode ter começado através de um software de terceiros.
  • ✓Para verificar se a empresa está protegendo bem suas próprias ferramentas internas.

Exemplo do que pedir para a IA

“Verifique os riscos de segurança na cadeia de suprimentos de software da empresa X.”

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/supply-chain-attack-recon/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/supply-chain-attack-recon/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta procura por informações públicas sobre a empresa, como repositórios de código e pacotes de software. Ela analisa esses dados para identificar padrões que podem indicar vulnerabilidades.

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 supply-chain-attack-recon

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/supply-chain-attack-recon/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.

Porta de confirmação obrigatória 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, IP, conta ou recurso exato do alvo.
  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.

Quando usar

Ative quando:

  • O alvo tiver uma organização pública no GitHub (encontrada via OSINT)
  • Pacotes JS referenciam nomes de pacotes com aparência interna (@target-internal/..., target-utils, target-shared)
  • Logs de build, SBOMs ou arquivos package-lock.json estiverem acessíveis publicamente
  • O alvo usa CI/CD que é parcialmente público (GitHub Actions, GitLab CI, Bitrise)
  • Imagens Docker no Docker Hub/GHCR/Quay pertencem à organização alvo
  • Descobertas incluem npmrc/pip.conf/gradle.properties com URLs de registro internos
  • Arquivos .github/workflows/*.yml referenciam ferramentas internas

NÃO use para:

  • Registros de artefatos de rede interna (fora do escopo pela fronteira externa)
  • Publicar pacotes typosquatting / dep-confusion sem um OK explícito
  • Comprometer projetos de código aberto upstream (raio de explosão massivo — ilegal na maioria das jurisdições sem autorização)

O mapa da superfície de ataque da cadeia de suprimentos

Target Org
├── Public GitHub Org → workflow files → secrets exfil opportunities
├── Internal package names in JS/Android bundles → dependency confusion
├── Docker images on public registries → secrets in layers, RCE on pull
├── SBOM / artifact metadata → exact dep versions for known-vuln chaining
├── npmrc / pip.conf in repos → internal registry URL disclosure
├── External package dependencies → typosquat name candidates
└── Build/release pipelines → injection if pull_request_target etc.

Etapa 1 — Descoberta da organização GitHub

TARGET="<brand>"  # set to target brand name

# Direct guesses
for guess in $TARGET "${TARGET}-tech" "${TARGET}corp" "${TARGET}-io" "${TARGET}-eng"; do
  curl -sI "https://github.com/$guess" | grep -E "HTTP|status" | head -1
done

# Via WHOIS / email-domain → GitHub search
gh search users --owner-affiliations=organization --query "$TARGET" --limit 10

# Via employees → reverse from social media + GitHub profile
# Many employees list their employer org on their GitHub profile

Etapa 2 — Enumerar repositórios públicos para artefatos sensíveis

ORG="targetorg"

# List public repos
gh repo list "$ORG" --limit 100 --json name,description,visibility,defaultBranchRef

# Look for high-signal repo names
gh repo list "$ORG" --limit 100 --json name | jq -r '.[].name' | grep -iE "internal|infra|deploy|config|secret|setup|sdk|api"

# Clone all (small org) or selectively
gh repo clone "$ORG/$repo_name"

Etapa 3 — Descoberta de nomes de pacotes internos

A partir de pacotes JS

# JS bundles are the easiest source of internal npm names
curl -sk https://target.com/main.js | grep -oE '@[a-z-]+/[a-z-]+' | sort -u
curl -sk https://target.com/main.js | grep -oE 'require\("[^"]+"\)' | sort -u

# Look for scoped names that are NOT public on npm
for pkg in @target/utils @target-internal/api @companybrand/sdk; do
  status=$(curl -sI "https://registry.npmjs.org/$pkg" | head -1 | awk '{print $2}')
  echo "  $pkg → $status"
  # 404 → name unclaimed on public npm → DEPENDENCY-CONFUSION CANDIDATE
done

A partir de arquivos package.json de repositórios GitHub

# Public repos with package.json that reference internal scopes
for repo in $(gh repo list "$ORG" --limit 50 --json name --jq '.[].name'); do
  pkg=$(gh api "repos/$ORG/$repo/contents/package.json" --jq '.content' 2>/dev/null | base64 -d 2>/dev/null)
  echo "$pkg" | jq -r '.dependencies // {} | keys[]' 2>/dev/null | grep -E '^@[a-z-]+/'
done | sort -u

A partir de projetos Python

# Nomes de pacotes pip internos
for repo in $(gh repo list "$ORG" --limit 50 --json name --jq '.[].name'); do
  gh api "repos/$ORG/$repo/contents/requirements.txt" --jq '.content' 2>/dev/null | base64 -d 2>/dev/null

…
Perguntas frequentes

O que é 'cadeia de suprimentos de software'?

É como uma corrente de montagem para softwares. Um software pode depender de outros softwares, que por sua vez dependem de outros. Um problema em qualquer elo dessa corrente pode afetar o produto final.

O que é 'reconhecimento externo'?

É o ato de coletar informações sobre um alvo a partir de fora, sem acesso direto aos sistemas internos. É como um detetive juntando pistas do lado de fora.

Preciso de permissão para usar esta ferramenta?

Sim, é crucial ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta, pois ela pode ser usada para investigar segurança.

Detalhes

Descrição original do autor

External recon for software supply-chain attack surface

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas