🔐 Política de Desenvolvimento Seguro (SDLC)

Template Completo NIS2 | Artigo 21 (2) | ISO 27001:2022 (8.25, 8.28, 8.29) | NIST SSDF | OWASP SAMM

Progresso de Personalização

0%

0 de 365 campos personalizados

ℹ️
Como usar este template:
  1. Clique em "Ativar Modo Edição" para personalizar os campos destacados
  2. Preencha as informações específicas do seu processo SDLC
  3. Complete os checklists de fases, matriz de controlos e rastreamento de evidências
  4. Guarde o progresso regularmente e exporte em PDF quando concluído

📋 1. Âmbito e Objetivos

1.1 Âmbito de Aplicação

Esta política aplica-se a [todos os projetos de desenvolvimento de software da organização], incluindo [aplicações internas, soluções cloud-native, APIs e integrações], e é obrigatória para [equipas de desenvolvimento, DevOps, QA e arquitetura].

1.2 Objetivos de Segurança no SDLC
  • Segurança by Design: Integrar segurança desde [a fase de requisitos até manutenção] através de [threat modeling e security reviews]
  • Redução de Vulnerabilidades: Minimizar falhas de segurança através de [código seguro, testes automatizados e análise estática] com objetivo de [zero vulnerabilidades críticas em produção]
  • Conformidade NIS2: Garantir que [todos os sistemas essenciais] cumprem [Artigo 21 (2) - medidas de cibersegurança]
  • Rastreabilidade: Manter [evidências auditáveis de todas as atividades de segurança] durante [todo o ciclo de vida do software]
1.3 Conformidade Regulamentar

NIS2 Artigo 21 (2): [Medidas para lidar com segurança de sistemas de rede e informação]

ISO 27001:2022:

  • Controlo 8.25: [Ciclo de vida de desenvolvimento seguro]
  • Controlo 8.28: [Codificação segura]
  • Controlo 8.29: [Testes de segurança em desenvolvimento e aceitação]

Frameworks de Referência: [NIST SSDF, OWASP SAMM Level 2, BSIMM]

1.4 Papéis e Responsabilidades

Security Champion: [Presente em cada equipa de desenvolvimento, promove práticas seguras]

CISO/Security Team: [Aprovação de arquitetura, threat modeling, pentesting]

Development Lead: [Responsável por code reviews e qualidade de código seguro]

DevSecOps Engineer: [Implementação de pipeline seguro, automação de testes]

🔄 2. Fases do SDLC Seguro

2.1 Fase 1: Levantamento de Requisitos

Requisitos de Segurança:

  • Identificação de [dados sensíveis (RGPD compliance)] e respetiva [classificação (Público, Interno, Confidencial, Secreto)]
  • Requisitos de autenticação: [MFA obrigatória para acesso administrativo]
  • Requisitos de autorização: [RBAC com princípio de menor privilégio]
  • Requisitos de logging: [Auditoria de acessos e alterações críticas]
  • Requisitos de disponibilidade: [SLA de 99.9% para sistemas críticos]

Artefactos Obrigatórios: [Security Requirements Document, Data Flow Diagram]

Critérios de Aprovação: [Revisão e aprovação pelo Security Team]

2.2 Fase 2: Design e Arquitetura

Threat Modeling:

  • Metodologia: [STRIDE (Spoofing, Tampering, Repudiation, Info Disclosure, DoS, Elevation)]
  • Ferramenta: [Microsoft Threat Modeling Tool, OWASP Threat Dragon]
  • Frequência: [Obrigatório para novos projetos e alterações arquiteturais major]
  • Participantes: [Arquiteto, Security Champion, CISO]

Security Design Principles:

  • Defense in Depth: [Múltiplas camadas de segurança]
  • Fail Secure: [Falhas resultam em estado seguro, não em bypass]
  • Separation of Duties: [Funções críticas requerem múltiplas aprovações]
  • Privacy by Design: [Minimização de dados, pseudonimização]

Artefactos Obrigatórios: [Threat Model Report, Security Architecture Review]

2.3 Fase 3: Desenvolvimento

Práticas de Código Seguro:

  • Seguir [OWASP Secure Coding Practices] e [linguagem-specific guidelines (Java, Python, JavaScript)]
  • Validação de inputs: [Whitelist validation, sanitização de outputs]
  • Gestão de secrets: [Nunca hardcoded, usar HashiCorp Vault/AWS Secrets Manager]
  • Criptografia: [TLS 1.3 para transporte, AES-256-GCM para armazenamento]

Code Review Obrigatório:

  • Processo: [Pull Request com aprovação de 2 revisores, incluindo Security Champion]
  • Checklist de segurança: [Validação de inputs, gestão de erros, logging adequado]
  • Ferramentas: [GitHub Advanced Security, GitLab Security Dashboard]

Análise Estática (SAST): [SonarQube, Checkmarx, executado automaticamente em cada commit]

2.4 Fase 4: Testes

Testes de Segurança Obrigatórios:

  • Unit Tests de Segurança: [Testes de validação de inputs, boundary conditions]
  • DAST (Dynamic Analysis): [OWASP ZAP, Burp Suite Pro em ambiente de staging]
  • SCA (Dependency Scanning): [Snyk, OWASP Dependency-Check para vulnerabilidades conhecidas]
  • Container Scanning: [Trivy, Clair para imagens Docker]
  • Penetration Testing: [Obrigatório para sistemas críticos antes de produção]

Critérios de Aceitação: [Zero vulnerabilidades críticas, máximo 5 de severidade alta com plano de remediação]

2.5 Fase 5: Deployment

Pipeline de Deployment Seguro:

  • Aprovações: [Security sign-off obrigatório para produção]
  • Configuração: [Hardening de servidores, princípio de menor privilégio]
  • Secrets Management: [Rotação automática de credenciais, sem secrets em código]
  • Rollback Plan: [Capacidade de reverter deployment em menos de 15 minutos]

Verificações Pós-Deployment:

  • Smoke tests de segurança: [Verificação de TLS, headers de segurança]
  • Configuração de logging: [Integração com SIEM]
  • Monitoring de segurança: [Alertas para anomalias]
2.6 Fase 6: Operação e Manutenção

Gestão de Patches:

  • Patches críticos: [Aplicados em menos de 48 horas]
  • Patches de segurança: [Aplicados em menos de 7 dias]
  • Patches regulares: [Aplicados mensalmente]

Monitorização Contínua:

  • Vulnerability scanning: [Semanal em produção]
  • Log analysis: [SIEM com detecção de anomalias]
  • Security metrics: [MTTR de vulnerabilidades, coverage de testes]

Decommissioning Seguro: [Remoção de dados, revogação de acessos, documentação de EOL]

⚙️ 3. Práticas DevSecOps

3.1 CI/CD Security Pipeline

Plataforma CI/CD: [Jenkins, GitLab CI/CD, GitHub Actions]

Gates de Segurança Automáticos:

  • Pre-commit: [Git hooks para secrets scanning (TruffleHog, git-secrets)]
  • Build: [SAST (SonarQube), SCA (Snyk), linting de segurança]
  • Test: [Security unit tests, DAST automático]
  • Deploy: [Container scanning, compliance checks]

Política de Break-the-Build: [Pipeline falha se: vulnerabilidades críticas, secrets expostos, testes de segurança < 80%]

3.2 Infrastructure as Code (IaC) Security

Ferramentas IaC: [Terraform, CloudFormation, Ansible]

Scanning de IaC:

  • Ferramentas: [Checkov, tfsec, Terraform Sentinel]
  • Políticas verificadas: [Encriptação habilitada, security groups restritivos, logging ativado]
  • Frequência: [Cada commit, antes de apply]

Gestão de Estado: [State files encriptados, backend remoto (S3 + DynamoDB), versionamento]

Least Privilege IaC: [IAM policies mínimas, sem wildcards em produção]

3.3 Container Security

Registry Seguro:

  • Registry privado: [Harbor, AWS ECR, Azure ACR]
  • Scanning de imagens: [Trivy, Clair executado em push]
  • Assinatura de imagens: [Docker Content Trust, Cosign/Sigstore]

Base Images Aprovadas:

  • Lista permitida: [Alpine 3.18+, Ubuntu 22.04 LTS, Red Hat UBI]
  • Proibidas: [Imagens com :latest tag, não-oficiais sem auditoria]
  • Atualização: [Rebuild mensal de imagens base]

Runtime Security: [Falco para detecção de anomalias, AppArmor/SELinux profiles]

Kubernetes Security:

  • Pod Security Standards: [Restricted policy em produção]
  • Network Policies: [Default deny, allow explícito]
  • RBAC: [Princípio de menor privilégio]
3.4 Secrets Management

Solução de Secrets: [HashiCorp Vault, AWS Secrets Manager, Azure Key Vault]

Política de Secrets:

  • Proibido: Secrets em código, variáveis de ambiente plaintext, ConfigMaps não encriptados
  • Obrigatório: [Rotação automática a cada 90 dias]
  • Acesso: [Baseado em service accounts/IAM roles, não credenciais estáticas]

Scanning de Secrets: [GitGuardian, TruffleHog em pre-commit e CI/CD]

💻 4. Normas de Código Seguro

4.1 OWASP Top 10 - Contramedidas Obrigatórias
Vulnerabilidade Contramedida Verificação
A01 Broken Access Control Validação server-side, RBAC, deny by default Testes de autorização em unit tests
A02 Cryptographic Failures TLS 1.3, AES-256-GCM, bcrypt para passwords SSL Labs scan, code review
A03 Injection Prepared statements, ORMs, input validation SAST, DAST com fuzzing
A04 Insecure Design Threat modeling, security architecture review Design review com CISO
A05 Security Misconfiguration Hardening automático, IaC scanning CIS benchmarks, compliance checks
A06 Vulnerable Components SCA automático, patching regular Snyk, Dependabot, SBOM gerado
A07 Authentication Failures MFA, rate limiting, account lockout Testes de brute-force
A08 Data Integrity Failures Digital signatures, integrity checks Verificação de assinaturas
A09 Logging Failures Logging centralizado, alertas SIEM Log coverage > 90%
A10 SSRF Whitelist de destinos, validação de URLs DAST com payloads SSRF
4.2 Input Validation

Princípio: [Whitelist validation - aceitar apenas o conhecido como válido]

Validação Obrigatória:

  • Tipo de dados: [String, integer, email, UUID]
  • Comprimento: [Máximos definidos para prevenir DoS]
  • Formato: [Regex patterns para formatos específicos]
  • Range: [Min/max values para numéricos]

Sanitização de Output: [Context-aware encoding (HTML, JavaScript, SQL, OS commands)]

4.3 Gestão de Erros e Logging

Tratamento de Erros:

  • Mensagens genéricas ao utilizador: [Sem revelação de stack traces ou detalhes internos]
  • Logging detalhado: [Erros completos no backend com correlationId]
  • Fail secure: [Erro resulta em negação de acesso, não bypass]

Logging de Segurança (eventos obrigatórios):

  • Autenticação: [Login, logout, falhas]
  • Autorização: [Access denied, privilege escalation attempts]
  • Alterações críticas: [CRUD em dados sensíveis, mudanças de configuração]
  • Anomalias: [Rate limiting triggered, input validation failures]

Informação NUNCA em logs: [Passwords, tokens, cartões de crédito, PII sem masking]

4.4 Autenticação e Sessões

Passwords:

  • Hashing: [bcrypt, Argon2id (nunca MD5/SHA1)]
  • Requisitos mínimos: [12 caracteres, complexidade verificada contra listas de passwords comuns]
  • Reset seguro: [Token único, expiração em 1 hora, verificação de email]

Sessões:

  • Tokens: [JWT com RS256, expiração curta (15 min), refresh tokens rotativos]
  • Cookies: [HttpOnly, Secure, SameSite=Strict]
  • Timeout: [Inatividade: 30 min, absoluto: 8 horas]

Multi-Factor Authentication: [Obrigatório para admin, implementar TOTP ou WebAuthn]

4.5 Comunicação Segura

TLS/SSL:

  • Versão mínima: [TLS 1.2, recomendado TLS 1.3]
  • Cipher suites: [Apenas forward secrecy (ECDHE), AES-GCM]
  • Certificados: [Let's Encrypt ou CA pública, renovação automática]
  • HSTS: [max-age=31536000; includeSubDomains; preload]

APIs:

  • Autenticação: [OAuth 2.0 + PKCE, API keys com rate limiting]
  • Rate limiting: [Por IP e por API key, progressive delays]
  • CORS: [Whitelist explícita de origens, sem '*']

🔍 5. Testes de Segurança

5.1 Static Application Security Testing (SAST)

Ferramenta primária: [SonarQube Enterprise]

Ferramentas secundárias: [Checkmarx, Semgrep, Fortify]

Frequência: [Cada commit em PR, scan completo diário]

Linguagens suportadas: [Java, Python, JavaScript/TypeScript, C#, Go]

Critério de aprovação: [Zero críticas, máximo 10 altas com justificação]

Métricas monitorizadas:

  • Code coverage de segurança: [Mínimo 80%]
  • Vulnerabilidades por 1000 LOC: [Objetivo: < 0.5]
  • Mean Time to Remediate: [Objetivo: < 7 dias]
5.2 Dynamic Application Security Testing (DAST)

Ferramenta primária: [OWASP ZAP]

Ferramentas secundárias: [Burp Suite Pro, Acunetix]

Ambientes:

  • Staging: [Scan automático após cada deployment]
  • Produção: [Scan mensal em janela de manutenção]

Testes incluídos:

  • OWASP Top 10: [XSS, SQL Injection, CSRF, etc.]
  • Authentication/Authorization: [Bypass attempts, privilege escalation]
  • Business logic: [Casos específicos da aplicação]

False positive management: [Triagem por Security Team, suppressions documentadas]

5.3 Software Composition Analysis (SCA)

Ferramenta: [Snyk, OWASP Dependency-Check]

Âmbito: [Todas as dependências diretas e transitivas]

Frequência: [Cada build, verificação semanal de novos CVEs]

Política de remediação:

  • Críticas: [Bloqueio de deployment, correção imediata]
  • Altas: [Correção em 7 dias]
  • Médias: [Correção em 30 dias]
  • Baixas: [Próximo sprint]

SBOM (Software Bill of Materials): [Gerado automaticamente em formato CycloneDX/SPDX]

5.4 Penetration Testing

Obrigatório para: [Aplicações expostas à Internet, sistemas críticos NIS2]

Frequência:

  • Antes de produção: [Obrigatório para novos sistemas]
  • Anual: [Aplicações críticas em produção]
  • Após mudanças major: [Alterações arquiteturais significativas]

Metodologia: [OWASP Testing Guide, PTES, OSSTMM]

Tipos:

  • Black box: [Perspetiva de atacante externo]
  • Gray box: [Com credenciais de utilizador normal]
  • White box: [Com acesso a código e arquitetura]

Fornecedor: [Equipa interna ou pentester externo certificado (OSCP, GPEN)]

Relatório: [Executivo + técnico, com PoCs e recomendações de remediação]

5.5 Security Testing em CI/CD

Pipeline de testes automatizados:

  • Stage 1 - Commit: [Pre-commit hooks (secrets), linting]
  • Stage 2 - Build: [SAST, SCA, unit tests de segurança]
  • Stage 3 - Deploy Staging: [Container scan, IaC scan]
  • Stage 4 - Test: [DAST, integration tests]
  • Stage 5 - Prod (manual gate): [Security approval, compliance check]

Relatórios consolidados: [Defect Dojo para agregação de resultados de todas as ferramentas]

🛡️ 6. Gestão de Vulnerabilidades

6.1 Ciclo de Vida de Vulnerabilidades

1. Deteção: [SAST/DAST/SCA automático, bug bounty, disclosure responsável]

2. Triagem: [Security Team valida e prioriza em 24h]

3. Atribuição: [Ticket no Jira atribuído ao dev team]

4. Remediação: [Desenvolvimento e code review]

5. Verificação: [Re-test pela Security Team]

6. Deployment: [Patch em produção]

7. Closure: [Confirmação e documentação]

6.2 SLAs de Remediação
Severidade CVSS Score SLA Remediação Aprovação Exceção
Crítica 9.0 - 10.0 48 horas CISO obrigatório
Alta 7.0 - 8.9 7 dias Security Lead
Média 4.0 - 6.9 30 dias Dev Lead
Baixa 0.1 - 3.9 90 dias Product Owner

Exceções: [Apenas com risk acceptance formal, controles compensatórios, revisão trimestral]

6.3 Patch Management

Inventário de Assets: [CMDB atualizado com versões de software]

Fontes de Informação:

  • CVE feeds: [NVD, vendor security advisories]
  • Threat intelligence: [Feeds de exploits ativos (Recorded Future, ThreatConnect)]
  • Ferramenta de tracking: [Tenable.io, Qualys VMDR]

Processo de Patching:

  • Emergency patches: [Exploits ativos, aplicação imediata em 24h]
  • Patches de segurança: [Teste em staging, deploy em 7 dias]
  • Patches regulares: [Ciclo mensal de patching]

Virtual Patching: [WAF rules como controlo temporário enquanto patch real é preparado]

6.4 Bug Bounty Program

Plataforma: [HackerOne, Bugcrowd, programa privado]

Âmbito: [Aplicações públicas, APIs expostas]

Fora de âmbito: [DoS, phishing, sistemas internos]

Recompensas:

  • Crítica: [€5000 - €10000]
  • Alta: [€1000 - €5000]
  • Média: [€250 - €1000]
  • Baixa: [€50 - €250]

SLA de resposta: [Primeiro contacto em 48h, triagem em 5 dias]

6.5 Métricas de Vulnerabilidades

KPIs monitorizados mensalmente:

  • Número de vulnerabilidades abertas por severidade: [Objetivo: 0 críticas, < 10 altas]
  • Mean Time to Detect (MTTD): [Objetivo: < 1 dia]
  • Mean Time to Remediate (MTTR): [Objetivo: < 7 dias para altas]
  • % dentro do SLA: [Objetivo: > 95%]
  • Vulnerabilidades por release: [Trend decrescente]

Reporting: [Dashboard executivo mensal, relatório detalhado ao Board trimestral]

📂 7. Evidências e Artefactos

7.1 Documentação Obrigatória por Fase
Fase SDLC Artefactos de Segurança Responsável Aprovação
Requisitos Security Requirements Doc, Data Flow Diagram Product Owner + Security Champion Security Team
Design Threat Model, Architecture Security Review Architect + Security Champion CISO
Desenvolvimento Code Review Records, SAST Reports Dev Lead Security Champion
Testes SAST/DAST/SCA Reports, Pentest Report QA Lead + Security Team CISO
Deployment Security Sign-off, SBOM, Hardening Checklist DevOps + Security Team CISO
Manutenção Vulnerability Scan Reports, Patch Records Operations Security Team
7.2 Code Review - Evidências Obrigatórias

Para cada Pull Request:

  • Aprovação de [2 revisores incluindo Security Champion]
  • Security checklist completa: [Input validation, error handling, logging]
  • SAST scan passed: [Zero bloqueantes]
  • Unit tests de segurança: [Coverage mínimo 80%]

Armazenamento: [GitHub/GitLab, auditável via API]

7.3 Scan Outputs - Retenção e Análise

SAST Reports:

  • Frequência: [Cada commit]
  • Retenção: [12 meses no SonarQube]
  • Análise: [Trend analysis mensal]

DAST Reports:

  • Frequência: [Pós-deployment em staging]
  • Retenção: [24 meses]
  • Comparação: [Delta entre scans para tracking de remediação]

SCA Reports:

  • Frequência: [Diária + alertas de novos CVEs]
  • Retenção: [24 meses]
  • SBOM: [Gerado e versionado com cada release]
7.4 SBOM (Software Bill of Materials)

Formato: [CycloneDX JSON]

Geração: [Automática em CI/CD usando Syft, CycloneDX Maven Plugin]

Conteúdo mínimo:

  • Todas as dependências diretas e transitivas
  • Versões exatas: [Sem ranges]
  • Licenças: [Para compliance]
  • Hashes: [SHA-256 de cada componente]
  • Vulnerabilidades conhecidas: [CVEs mapeados]

Armazenamento: [Versionado no Git, assinado digitalmente]

Utilização: [Resposta rápida a novos CVEs, due diligence de auditoria]

7.5 Security Approval Gates

Gate 1 - Design Review:

  • Threat model completo: [Sem ameaças high/critical sem mitigação]
  • Arquitetura review: [Aprovação do CISO]

Gate 2 - Pre-Production:

  • SAST/DAST/SCA passed: [Dentro dos critérios]
  • Pentest (se aplicável): [Sem críticas não remediadas]
  • SBOM gerado e validado

Gate 3 - Production Release:

  • Security sign-off: [Email formal do CISO]
  • Hardening checklist: [100% completo]
  • Runbook de incidentes: [Documentado e testado]

🔗 8. Gestão da Cadeia de Fornecimento de Software

8.1 Avaliação de Fornecedores

Critérios de Seleção:

  • Security posture: [Certificações ISO 27001, SOC 2 Type II]
  • Incident response: [Processo documentado, SLAs de notificação]
  • Vulnerability disclosure: [Política pública, responsible disclosure]
  • Suporte e patching: [SLAs de patches críticos < 48h]

Questionário de segurança: [CAIQ (Consensus Assessments Initiative Questionnaire), SIG]

Revisão contratual: [Cláusulas de responsabilidade, direito a auditoria, notificação de incidentes]

8.2 Gestão de Bibliotecas Open Source

Política de Aprovação:

  • Aprovadas automaticamente: [Top 100 projetos Apache/Eclipse, versões LTS]
  • Requerem aprovação: [Bibliotecas fora da whitelist, licenças copyleft]
  • Proibidas: [Projetos abandonados (sem commits > 2 anos), sem comunidade ativa]

Due Diligence:

  • Licença: [Compatível com uso comercial]
  • Vulnerabilidades conhecidas: [Verificação no NVD]
  • Atividade do projeto: [Commits recentes, issues respondidas]
  • Dependências transitivas: [Análise recursiva]

Atualização de OSS: [Revisão mensal, atualização automática de patches minor]

8.3 Segurança de Repositórios

Package Registries Privados:

  • Ferramentas: [JFrog Artifactory, Nexus Repository]
  • Proxy de registries públicos: [npm, PyPI, Maven Central]
  • Scanning: [Todas as packages escaneadas antes de cache]

Verificação de Integridade:

  • Checksums: [Validação automática de SHA-256]
  • Assinaturas: [Verificação de GPG signatures quando disponíveis]
  • Quarentena: [Packages suspeitas isoladas para análise]

Proteção contra Typosquatting: [Whitelist de packages, alertas para nomes similares]

8.4 Segurança de Bibliotecas Third-Party

Vetting Process:

  • Step 1: Verificação de licença: [Apache 2.0, MIT, BSD aprovadas]
  • Step 2: Scan de vulnerabilidades: [Snyk, OWASP Dependency-Check]
  • Step 3: Análise de código: [Code review se crítico para segurança]
  • Step 4: Aprovação: [Dev Lead + Security Champion]

Monitorização Contínua: [Alertas automáticos de novos CVEs via Snyk, GitHub Dependabot]

Inventário centralizado: [CMDB de todas as bibliotecas em uso, por aplicação]

8.5 Supply Chain Attack Prevention

Proteções Implementadas:

  • Dependency Confusion: [Registries internos prioritários, namespacing]
  • Compromised Dependencies: [File integrity monitoring, hash pinning]
  • Malicious Packages: [Sandbox execution de install scripts]
  • Build Pipeline: [Signed commits, protected branches, audit logs]

Resposta a Incidentes Supply Chain:

  • Deteção: [Monitorização de threat intelligence feeds]
  • Contenção: [Bloqueio imediato em registry interno]
  • Análise: [SBOM para identificar sistemas afetados]
  • Remediação: [Rollback, re-deployment com versão segura]

🛠️ Ferramentas Interativas

📋 Ferramenta 1: Checklist de Fases SDLC

Acompanhe o progresso das atividades de segurança em cada fase do SDLC.

Fase 1: Requisitos

  • Security requirements documentados
  • Data flow diagram criado
  • Classificação de dados definida
  • Aprovação Security Team

Fase 2: Design

  • Threat model completo (STRIDE)
  • Architecture security review
  • Princípios de design aplicados
  • Aprovação CISO

Fase 3: Desenvolvimento

  • Secure coding guidelines seguidas
  • Code reviews com Security Champion
  • SAST executado e passed
  • Secrets management implementado

Fase 4: Testes

  • DAST executado
  • SCA sem vulnerabilidades críticas
  • Penetration test (se aplicável)
  • Critérios de aceitação cumpridos

Fase 5: Deployment

  • Security sign-off obtido
  • Hardening checklist completo
  • SBOM gerado
  • Smoke tests de segurança passed

Fase 6: Manutenção

  • Vulnerability scanning configurado
  • Patch management ativo
  • Logging integrado com SIEM
  • Métricas de segurança monitorizadas

🎯 Ferramenta 2: Matriz de Cobertura de Controlos

Verifique a cobertura dos controlos de segurança NIS2 e ISO 27001:2022.

Controlo Requisito Implementado Ferramenta/Processo
ISO 8.25 Ciclo de vida de desenvolvimento seguro [Esta política + processo SDLC]
ISO 8.28 Codificação segura [SonarQube SAST, Secure Coding Guidelines]
ISO 8.29 Testes de segurança [SAST/DAST/SCA pipeline, pentesting]
NIS2 Art. 21(2) Segurança de sistemas [Hardening, patching, vulnerability mgmt]
Threat Modeling Análise de ameaças [STRIDE methodology, MS Threat Modeling Tool]
Secrets Management Gestão de credenciais [HashiCorp Vault, secrets scanning]
SBOM Inventário de componentes [CycloneDX, geração automática CI/CD]
Supply Chain Security Segurança de fornecedores [Vetting process, dependency scanning]

📁 Ferramenta 3: Rastreamento de Evidências

Documente e rastreie as evidências de compliance para auditorias NIS2.

Artefacto Última Atualização Responsável Localização Status
Threat Model Report [2024-01-15] [Architect + CISO] [SharePoint/Security/ThreatModels/] ✅ Completo
SAST Reports (últimos 3 meses) [2024-01-20] [DevSecOps] [SonarQube Dashboard] ✅ Completo
DAST Reports [2024-01-18] [QA Lead] [OWASP ZAP Reports/] ✅ Completo
Penetration Test Report [2023-10-30] [External Pentester] [SharePoint/Security/Pentests/] ⚠️ Expirado (>90d)
SBOM (todas as aplicações) [2024-01-21] [DevOps] [Git repo: /sboms/] ✅ Completo
Code Review Records [Contínuo] [Dev Leads] [GitHub/GitLab PR history] ✅ Completo
Security Sign-offs (produção) [2024-01-10] [CISO] [Email approval archive] ✅ Completo
Vulnerability Remediation Records [Contínuo] [Security Team] [Jira Security Dashboard] ✅ Completo

Legenda: ✅ Completo | ⚠️ Atenção necessária | ❌ Em falta

`; try { // Convert to Word const converted = htmlDocx.asBlob(htmlContent); // Create download link const url = URL.createObjectURL(converted); const link = document.createElement('a'); link.href = url; link.download = 'Politica-Desenvolvimento-Seguro-SDLC-NIS2.docx'; link.click(); // Cleanup setTimeout(() => URL.revokeObjectURL(url), 100); } catch (error) { alert('Erro ao exportar Word: ' + error.message); console.error('Word export error:', error); } } // Reset template function resetTemplate() { if (confirm('⚠️ Tem a certeza que deseja reiniciar o template?\n\nTodos os dados personalizados serão perdidos.')) { localStorage.removeItem('sdlcPolicyProgress'); location.reload(); } } // Tool 1: Calculate SDLC Progress function calculateSDLCProgress() { const allCheckboxes = document.querySelectorAll('.checklist input[type="checkbox"]'); const checkedBoxes = document.querySelectorAll('.checklist input[type="checkbox"]:checked'); const total = allCheckboxes.length; const completed = checkedBoxes.length; const percentage = Math.round((completed / total) * 100); const result = document.getElementById('sdlc-progress-result'); let html = '

Progresso do SDLC Seguro

'; html += `
${percentage}%
`; html += `

${completed} de ${total} atividades concluídas

`; if (percentage === 100) { html += '
Parabéns! Todas as fases do SDLC estão completas.
'; } else if (percentage >= 75) { html += '
Bom progresso! Continue a completar as atividades restantes.
'; } else if (percentage >= 50) { html += '
⚠️ Metade do caminho! Foque nas fases críticas (Design e Testes).
'; } else { html += '
📋 Início do processo. Priorize Requisitos e Design.
'; } result.innerHTML = html; result.style.display = 'block'; } // Tool 2: Calculate Control Coverage function calculateControlCoverage() { const allControls = document.querySelectorAll('.control-checkbox'); const implementedControls = document.querySelectorAll('.control-checkbox:checked'); const total = allControls.length; const implemented = implementedControls.length; const percentage = Math.round((implemented / total) * 100); const result = document.getElementById('control-coverage-result'); let html = '

Cobertura de Controlos de Segurança

'; html += `
${percentage}%
`; html += `

${implemented} de ${total} controlos implementados

`; if (percentage === 100) { html += '
Compliance Total! Todos os controlos NIS2 e ISO 27001 estão implementados.
'; } else if (percentage >= 75) { html += '
Quase lá! Faltam ' + (total - implemented) + ' controlos para compliance completa.
'; } else { html += '
⚠️ Ação necessária! Priorize a implementação dos controlos críticos (ISO 8.25, 8.28, 8.29).
'; } html += '

Próximos passos:

'; html += ''; result.innerHTML = html; result.style.display = 'block'; }