building-devsecops-pipeline-with-gitlab-ci
Faz seu agente construir um sistema de segurança dentro do processo de desenvolvimento. Ele verifica o código e os aplicativos em busca de falhas antes que sejam lançados.
O que ela faz
Esta ferramenta ajuda a configurar verificações de segurança automáticas no seu código usando o GitLab CI. Ela encontra problemas como códigos inseguros, dependências desatualizadas e segredos expostos antes que seu programa seja lançado.
Quando usar
- ✓Ao configurar um novo projeto no GitLab e querer adicionar segurança.
- ✓Ao atualizar um projeto existente para incluir verificações de segurança automáticas.
- ✓Quando você precisa garantir que seu código está livre de vulnerabilidades conhecidas antes de lançá-lo.
Exemplo do que pedir para a IA
“Configure verificações de segurança automáticas para meu projeto no GitLab.”
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
Você adiciona um arquivo de configuração chamado `.gitlab-ci.yml` ao seu projeto. Este arquivo diz ao GitLab para executar várias ferramentas de segurança que analisam seu código, dependências e até mesmo segredos que podem ter sido acidentalmente incluídos.
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 building-devsecops-pipeline-with-gitlab-ciOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/building-devsecops-pipeline-with-gitlab-ci/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.
Construindo Pipeline DevSecOps com GitLab CI
Visão Geral
O GitLab oferece uma plataforma DevSecOps integrada que incorpora testes de segurança diretamente no pipeline CI/CD. Ao alavancar os scanners de segurança nativos do GitLab — SAST, DAST, escaneamento de contêineres, escaneamento de dependências, detecção de segredos e conformidade de licenças — as equipes podem "deslocar a segurança para a esquerda", detectando vulnerabilidades durante o desenvolvimento em vez de após a implantação. O GitLab Duo AI auxilia na detecção de falsos positivos para vulnerabilidades SAST, ajudando as equipes de segurança a se concentrarem em problemas genuínos.
Quando Usar
- Ao implantar ou configurar a construção de pipelines devsecops com capacidades do gitlab ci em seu ambiente
- Ao estabelecer controles de segurança alinhados aos requisitos de conformidade
- Ao construir ou melhorar a arquitetura de segurança para este domínio
- Ao realizar avaliações de segurança que exigem esta implementação
Pré-requisitos
- Licença GitLab Ultimate (necessária para o conjunto completo de scanners de segurança)
- GitLab Runner configurado (compartilhado ou auto-hospedado)
- Familiaridade com a configuração de pipeline
.gitlab-ci.yml - Docker-in-Docker (DinD) ou Kaniko para compilações de contêineres
- Aplicação implantada em um ambiente de staging para escaneamento DAST
Estágios Principais de Escaneamento de Segurança
Teste de Segurança de Aplicação Estática (SAST)
O SAST analisa o código-fonte em busca de vulnerabilidades antes da compilação. O GitLab suporta mais de 14 linguagens usando analisadores como Semgrep, SpotBugs, Gosec, Bandit e NodeJsScan. A inclusão mais simples usa os modelos gerenciados do GitLab.
Teste de Segurança de Aplicação Dinâmica (DAST)
O DAST testa aplicações em execução simulando payloads de ataque contra endpoints HTTP. Ele detecta XSS, SQLi, CSRF e outras vulnerabilidades de tempo de execução que a análise estática não consegue encontrar. O DAST requer uma URL de destino implantada e acessível.
Escaneamento de Contêineres
Usa o Trivy para escanear imagens Docker em busca de CVEs conhecidos em pacotes do sistema operacional e dependências de aplicações. Executa após o estágio de compilação do Docker para validar imagens antes que elas cheguem a um registro.
Escaneamento de Dependências
Inspeciona manifestos de dependências (package.json, requirements.txt, pom.xml, Gemfile.lock) em busca de versões vulneráveis conhecidas. Opera no nível do código-fonte, complementando o escaneamento de contêineres.
Detecção de Segredos
Escaneia commits em busca de credenciais, chaves de API, tokens e chaves privadas acidentalmente commitados usando correspondência de padrões e análise de entropia. Executa em cada commit para evitar que segredos cheguem ao repositório.
Implementação
Configuração Completa do Pipeline
# .gitlab-ci.yml
stages:
- build
- test
- security
- deploy-staging
- dast
- deploy-production
variables:
DOCKER_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
SECURE_LOG_LEVEL: "info"
# Inclui modelos de segurança gerenciados pelo GitLab
include:
- template: Security/SAST.gitlab-ci.yml
- template: Security/Secret-Detection.gitlab-ci.yml
- template: Security/Dependency-Scanning.gitlab-ci.yml
- template: Security/Container-Scanning.gitlab-ci.yml
- template: DAST.gitlab-ci.yml
- template: Security/License-Scanning.gitlab-ci.yml
build:
stage: build
image: docker:24.0
services:
- docker:24.0-dind
variables:
DOCKER_TLS_CERTDIR: "/certs"
script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build -t $DOCKER_IMAGE .
- docker push $DOCKER_IMAGE
rules:
- if: $CI_COMMIT_BRANCH
unit-tests:
stage: test
image: $DOCKER_IMAGE
script:
- npm ci
- npm run test:coverage
coverage: '/Lines\s*:\s*(\d+\.?\d*)%/'
artifacts:
reports:
junit: junit-report.xml
coverage_report:
coverage_format: cobertura
path: coverage/cobertura-coverage.xml
# Sobrescreve SAST para executar no estágio de segurança
sast:
stage: security
variables:
SAST_EXCLUDED_PATHS: "spec,test,tests,tmp,node_modules"
SEARCH_MAX_DEPTH: 10
# Sobrescreve escaneamento de contêineres
container_scanning:
stage: security
variables:
CS_IMAGE: $DOCKER_IMAGE
CS_SEVERITY_THRESHOLD: "HIGH"
# Sobrescreve escaneamento de dependências
dependency_scanning:
stage: security
# Sobrescreve detecção de segredos
secret_detection:
stage: security
# Escaneamento de conformidade de licenças
license_scanning:
stage: security
deploy-staging:
stage: deploy-staging
image: bitnami/kubectl:latest
script:
- kubectl set image deployment/app app=$DOCKER_IMAGE -n staging
- kubectl rollout status deployment/app -n staging --timeout=300s
environment:
name: staging
url: https://staging.example.com
rules:
…
Perguntas frequentes
O que é DevSecOps?
DevSecOps significa integrar práticas de segurança em todas as etapas do desenvolvimento de software, desde o início até o final.
Preciso de alguma licença especial?
Sim, para usar todas as ferramentas de segurança incluídas, você geralmente precisa de uma licença GitLab Ultimate.
O que são SAST e DAST?
SAST (Static Application Security Testing) analisa seu código-fonte sem executá-lo. DAST (Dynamic Application Security Testing) testa seu aplicativo enquanto ele está em execução, simulando ataques.
Detalhes
Descrição original do autor
Configure a GitLab CI/CD pipeline that embeds SAST (Semgrep, SpotBugs, Gosec, Bandit, NodeJsScan), DAST, container scanning, dependency scanning, and secret detection via GitLab's managed security templates. Use when building a shift-left DevSecOps pipeline in GitLab, adding automated vulnerability scanning stages to .gitlab-ci.yml, or triaging scanner findings with GitLab Duo AI before deployment
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5534
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
dashboard-builder
Ajuda seu agente a criar painéis de monitoramento úteis. Ele transforma dados em gráficos que respondem a perguntas importantes sobre o sistema.
affaan-m/ECC
dev-team
Simula uma equipe de desenvolvimento colaborativa, onde diferentes papéis respondem a um problema juntos. É útil para obter múltiplas perspectivas sem trocar de agente manualmente.
affaan-m/ECC
ecc-council
Faz seu agente reunir um conselho de quatro vozes para tomar decisões difíceis. É útil quando há várias opções boas e é preciso debater antes de escolher.
affaan-m/ECC