Questão de Segurança da Informação — Ciclo de Vida de Desenvolvimento Seguro — CESPE / CEBRASPE 2023
- Código
- ce397911
- Banca
- CESPE / CEBRASPE
- Órgão
- DATAPREV
- Ano
- 2023
- Cargo
- Ana TI ( )
- CCerto
- EErrado
GabaritoC — Certo
✅ CERTO. A afirmação está correta: durante a fase de implementação do ciclo de vida de desenvolvimento seguro, são aplicados padrões de codificação segura e realizados testes de segurança. Essa é uma prática consolidada em metodologias como o SDL (Security Development Lifecycle) da Microsoft e em normas como a ABNT NBR ISO/IEC 27002, que dedicam controles específicos à codificação segura e aos testes de segurança em desenvolvimento.
O ciclo de vida de desenvolvimento seguro (Secure Development Lifecycle – SDL) é uma abordagem que integra a segurança em todas as fases do desenvolvimento de software, desde a concepção até a manutenção. Diferentemente do modelo tradicional, em que a segurança era tratada apenas no final, o SDL incorpora práticas de segurança em cada etapa, reduzindo vulnerabilidades e custos de correção.
As fases típicas do SDL incluem: requisitos, design, implementação, testes, implantação e manutenção. Cada fase possui atividades específicas de segurança:
Requisitos: identificação de requisitos de segurança, análise de riscos e definição de critérios de aceitação.
Design: modelagem de ameaças, definição de arquitetura segura e revisão de design.
Implementação: aplicação de padrões de codificação segura, uso de ferramentas de análise estática (SAST) e revisão de código.
Testes: execução de testes de segurança, como análise dinâmica (DAST), testes de penetração e testes de aceitação.
Implantação: configuração segura do ambiente, revisão de configurações e hardening.
Manutenção: monitoramento contínuo, gestão de vulnerabilidades e resposta a incidentes.
A fase de implementação é o momento em que o código é efetivamente escrito. Nessa fase, a segurança é aplicada por meio de:
Padrões de codificação segura: diretrizes que orientam os desenvolvedores a evitar vulnerabilidades comuns, como injeção de SQL, XSS e buffer overflow. Exemplos incluem a validação de entrada, o uso de consultas parametrizadas e a codificação de saída.
Testes: embora os testes sejam mais associados à fase de testes, durante a implementação já são realizados testes unitários e análises estáticas de código (SAST) para identificar problemas precocemente. A norma ISO/IEC 27002, por exemplo, recomenda que os testes de segurança sejam definidos e implementados no ciclo de vida do desenvolvimento.
A banca explora a confusão entre as fases: muitos candidatos associam os testes apenas à fase de testes, mas a implementação também envolve testes contínuos, como testes unitários e revisões de código. Além disso, a aplicação de padrões de codificação é uma atividade típica da implementação, não do design ou da manutenção.
A banca pode tentar induzir o candidato a achar que os testes só ocorrem na fase de testes, mas a implementação já inclui testes unitários e análise estática. Lembre-se: a segurança é contínua, e cada fase tem suas próprias atividades de verificação.
Para questões sobre SDL, memorize as atividades-chave de cada fase. Uma tabela mental ajuda:
Fase | Atividades de segurança |
|---|---|
Requisitos | Análise de riscos, requisitos de segurança |
Design | Modelagem de ameaças, arquitetura segura |
Implementação | Codificação segura, SAST, revisão de código |
Testes | DAST, testes de penetração, testes de aceitação |
Implantação | Hardening, configuração segura |
Manutenção | Monitoramento, gestão de vulnerabilidades |
Gabarito: ✅ CERTO.
Link permanente: /questoes/ce397911