Pular para o conteúdo
Skillpedia
Agentes35 mil · #5715

detecting-supply-chain-attacks-in-ci-cd

Ajuda seu agente a encontrar riscos de segurança em pipelines de CI/CD.

O que ela faz

Esta ferramenta verifica seus sistemas de automação de código (CI/CD) em busca de falhas de segurança que podem ser usadas para atacar sua cadeia de suprimentos de software. Ela procura por ações não seguras, injeção de código e vazamento de informações sensíveis.

Quando usar

  • ✓Ao investigar um possível ataque à sua cadeia de suprimentos.
  • ✓Ao configurar ou reforçar a segurança dos seus processos de automação.
  • ✓Ao verificar se suas ferramentas de monitoramento de segurança estão cobrindo riscos conhecidos.

Exemplo do que pedir para a IA

“Verifique meus fluxos de trabalho do GitHub Actions por riscos de segurança na cadeia de suprimentos.”

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/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/detecting-supply-chain-attacks-in-ci-cd/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/detecting-supply-chain-attacks-in-ci-cd/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta analisa os arquivos de configuração dos seus sistemas de automação. Ela procura por padrões de risco, como o uso de versões de código não fixas ou a possibilidade de inserir comandos maliciosos.

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 mukul975/Anthropic-Cybersecurity-Skills --skill detecting-supply-chain-attacks-in-ci-cd

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/detecting-supply-chain-attacks-in-ci-cd/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.

Detectando Ataques à Cadeia de Suprimentos em CI/CD

Quando Usar

  • Ao investigar incidentes de segurança que exigem a detecção de ataques à cadeia de suprimentos em CI/CD.
  • Ao construir regras de detecção ou consultas de caça a ameaças para este domínio.
  • Quando analistas de SOC precisam de procedimentos estruturados para este tipo de análise.
  • Ao validar a cobertura de monitoramento de segurança para técnicas de ataque relacionadas.

Pré-requisitos

  • Familiaridade com conceitos e ferramentas de operações de segurança.
  • Acesso a um ambiente de teste ou laboratório para execução segura.
  • Python 3.8+ com as dependências necessárias instaladas.
  • Autorização apropriada para quaisquer atividades de teste.

Instruções

Analise arquivos de fluxo de trabalho de CI/CD em busca de riscos na cadeia de suprimentos, analisando o YAML do GitHub Actions, verificando dependências não fixadas (unpinned), vetores de injeção de script e exposição de segredos.

import yaml
from pathlib import Path

for wf in Path(".github/workflows").glob("*.yml"):
    with open(wf) as f:
        workflow = yaml.safe_load(f)
    for job_name, job in workflow.get("jobs", {}).items():
        for step in job.get("steps", []):
            uses = step.get("uses", "")
            if uses and "@" in uses and not uses.split("@")[1].startswith("sha"):
                print(f"Unpinned action: {uses} in {wf.name}")

Principais riscos na cadeia de suprimentos:

  1. GitHub Actions não fixados (usando @main em vez de SHA)
  2. Injeção de script via expressões ${{ github.event }}
  3. Permissões GITHUB_TOKEN excessivamente permissivas
  4. Ações de terceiros com acesso de escrita ao repositório
  5. Confusão de dependência via colisão de nomes de pacotes públicos/privados

Exemplos

# Check for script injection in run steps
for step in job.get("steps", []):
    run_cmd = step.get("run", "")
    if "${{" in run_cmd and "github.event" in run_cmd:
        print(f"Script injection risk: {run_cmd[:80]}")
Perguntas frequentes

O que é um ataque à cadeia de suprimentos de software?

É um ataque onde o invasor compromete um componente legítimo (como uma ferramenta ou biblioteca) que você usa no seu desenvolvimento para, em seguida, infectar seu software ou sistema.

O que significa 'unpinned actions'?

Significa que uma ação (um pequeno script automatizado) está sendo usada sem especificar uma versão exata. Isso pode ser perigoso, pois a ação pode ser atualizada com código malicioso sem que você perceba.

O que é 'dependency confusion'?

É uma técnica onde um atacante cria um pacote malicioso com o mesmo nome de um pacote interno da sua empresa, mas o publica em um repositório público. Se a configuração não for cuidadosa, seu sistema pode baixar a versão maliciosa em vez da correta.

Detalhes

Descrição original do autor

Scans GitHub Actions workflows and CI/CD pipeline configurations for supply chain attack vectors including unpinned actions, script injection via expressions, dependency confusion, and secrets exposure. Uses PyGithub and YAML parsing for automated audit. Use when hardening CI/CD pipelines or investigating compromised build systems. '

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#5715
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas