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
Mensagem pronta para colar
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-reconOu 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.mdConteú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:
- Peça ao usuário para declarar o URL, IP, conta ou recurso exato do alvo.
- Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
- Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
- 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.jsonestiverem 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.propertiescom URLs de registro internos - Arquivos
.github/workflows/*.ymlreferenciam 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
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4290
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC