integrating-dast-with-owasp-zap-in-pipeline
Ajuda seu agente a integrar testes de segurança de aplicações dinâmicos (DAST) em pipelines de CI/CD.
O que ela faz
Esta ferramenta ajuda a verificar se seu site ou API tem falhas de segurança comuns, como ataques de injeção de código (SQLi) ou scripts maliciosos (XSS). Ela faz isso automaticamente quando você envia novas versões do seu código para testes.
Quando usar
- ✓Ao testar sites e APIs que já estão funcionando.
- ✓Quando você precisa garantir que o site está seguro antes de ir para o público.
- ✓Ao querer verificar falhas de segurança que só aparecem quando o site está rodando.
Exemplo do que pedir para a IA
“Verifique meu site em staging.example.com para falhas de segurança.”
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 usa um programa chamado OWASP ZAP para 'navegar' pelo seu site ou API e tentar encontrar problemas. Ela pode ser configurada para fazer verificações rápidas ou mais completas.
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 integrating-dast-with-owasp-zap-in-pipelineOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/integrating-dast-with-owasp-zap-in-pipeline/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.
Integrando DAST com OWASP ZAP em um Pipeline
Quando Usar
- Ao testar aplicações web em execução em busca de vulnerabilidades como XSS, SQLi, CSRF e configurações incorretas.
- Quando SAST sozinho é insuficiente e testes de comportamento em tempo de execução são necessários.
- Quando a conformidade exige testes de segurança dinâmicos de aplicações web antes da produção.
- Ao testar APIs (REST/GraphQL) em busca de falhas de autenticação, autorização e injeção.
- Ao estabelecer varreduras DAST contínuas em ambientes de staging antes da implantação em produção.
Não use para varrer código-fonte (use SAST), para varrer dependências (use SCA) ou para varrer configurações de infraestrutura (use ferramentas de varredura IaC).
Pré-requisitos
- Imagem Docker do OWASP ZAP ou instalada localmente (zaproxy/zap-stable ou zaproxy/action-*)
- Aplicação alvo em execução e acessível a partir do runner de CI/CD (URL de staging ou serviço Docker)
- Configuração das regras de varredura do ZAP (opcional, para ajuste)
- Especificação OpenAPI/Swagger para varredura de API (opcional)
Fluxo de Trabalho
Passo 1: Configurar Varredura Base do ZAP no GitHub Actions
# .github/workflows/dast-scan.yml
name: DAST Security Scan
on:
deployment_status:
workflow_dispatch:
inputs:
target_url:
description: 'Target URL to scan'
required: true
jobs:
zap-baseline:
name: ZAP Baseline Scan
runs-on: ubuntu-latest
services:
webapp:
image: ${{ github.repository }}:${{ github.sha }}
ports:
- 8080:8080
options: --health-cmd="curl -f http://localhost:8080/health" --health-interval=10s --health-timeout=5s --health-retries=5
steps:
- uses: actions/checkout@v4
- name: ZAP Baseline Scan
uses: zaproxy/action-baseline@v0.12.0
with:
target: 'http://webapp:8080'
rules_file_name: '.zap/rules.tsv'
cmd_options: '-a -j'
allow_issue_writing: false
- name: Upload ZAP Report
if: always()
uses: actions/upload-artifact@v4
with:
name: zap-baseline-report
path: report_html.html
Passo 2: Configurar Varredura Completa do ZAP para Testes Abrangentes
zap-full-scan:
name: ZAP Full Scan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ZAP Full Scan
uses: zaproxy/action-full-scan@v0.12.0
with:
target: ${{ github.event.inputs.target_url || 'https://staging.example.com' }}
rules_file_name: '.zap/rules.tsv'
cmd_options: '-a -j -T 60'
- name: Upload Reports
if: always()
uses: actions/upload-artifact@v4
with:
name: zap-full-report
path: |
report_html.html
report_json.json
Passo 3: Configurar Varredura de API com Especificação OpenAPI
zap-api-scan:
name: ZAP API Scan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ZAP API Scan
uses: zaproxy/action-api-scan@v0.12.0
with:
target: 'https://staging.example.com/api/openapi.json'
format: openapi
rules_file_name: '.zap/api-rules.tsv'
cmd_options: '-a -j'
Passo 4: Configurar Regras de Varredura do ZAP
# .zap/rules.tsv
# Rule ID Action (IGNORE/WARN/FAIL) Description
10003 IGNORE # Vulnerable JS Library (handled by SCA)
10015 WARN # Incomplete or No Cache-control Header
10021 FAIL # X-Content-Type-Options Missing
10035 FAIL # Strict-Transport-Security Missing
10038 FAIL # Content Security Policy Missing
10098 IGNORE # Cross-Domain Misconfiguration (CDN)
40012 FAIL # Cross Site Scripting (Reflected)
40014 FAIL # Cross Site Scripting (Persistent)
40018 FAIL # SQL Injection
40019 FAIL # SQL Injection (MySQL)
40032 FAIL # .htaccess Information Leak
90033 FAIL # Loosely Scoped Cookie
Passo 5: Executar o ZAP com Docker Compose para Testes Locais
# docker-compose.zap.yml
version: '3.8'
services:
webapp:
build: .
ports:
- "8080:8080"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 10s
retries: 5
zap:
image: zaproxy/zap-stable:latest
depends_on:
webapp:
condition: service_healthy
command: >
zap-baseline.py
-t http://webapp:8080
-r /zap/wrk/report.html
-J /zap/wrk/report.json
-c /zap/wrk/rules.tsv
-I
volumes:
- ./zap-reports:/zap/wrk
- ./.zap/rules.tsv:/zap/wrk/rules.tsv
…
Perguntas frequentes
O que é DAST?
DAST significa Teste Dinâmico de Segurança de Aplicações. É como um teste de invasão automatizado que verifica um aplicativo em execução.
O que é OWASP ZAP?
OWASP ZAP é um programa gratuito e popular que ajuda a encontrar vulnerabilidades em aplicativos web.
Posso usar isso para verificar meu código fonte?
Não, esta ferramenta é para testar o aplicativo enquanto ele está rodando, não o código em si. Para código, você usaria outra ferramenta chamada SAST.
Detalhes
Descrição original do autor
Integrates OWASP ZAP (Zed Attack Proxy) into GitHub Actions and GitLab CI pipelines, covering baseline, full, and API scan configuration against running applications, ZAP finding interpretation, scan policy tuning, and DAST quality gates. Use when testing running web apps or REST/GraphQL APIs for XSS, SQLi, CSRF, and auth/authz flaws, or when SAST alone is insufficient and runtime DAST is required
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5986
- 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
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC