7.5 Desenvolvimento seguro de aplicações: SDL, CLASP. Flashcards

1
Q

O que é Desenvolvimento Seguro?

A

Desenvolvimento seguro de software refere-se à adoção de práticas, metodologias e frameworks que minimizam vulnerabilidades durante o ciclo de vida do desenvolvimento de um aplicativo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Dois frameworks amplamente usados no desenvolvimento seguro são:

A

1️⃣ SDL (Security Development Lifecycle - Ciclo de Vida de Desenvolvimento Seguro);

2️⃣ CLASP (Comprehensive, Lightweight Application Security Process).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

SDL (Security Development Lifecycle - Ciclo de Vida de Desenvolvimento Seguro) o que é?

A

O SDL, criado pela Microsoft, é um processo que integra segurança em todas as fases do desenvolvimento de software. Ele reduz riscos e vulnerabilidades desde o design até a implementação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Principais fases do SDL:

A

Treinamento – Desenvolvedores aprendem boas práticas de segurança.
Definição de Requisitos – Avaliação de riscos e regulamentos de segurança.
Design Seguro – Modelagem de ameaças para identificar vulnerabilidades antes da implementação.
Implementação – Uso de técnicas seguras de codificação, como validação de entrada e criptografia.
Verificação – Testes de segurança, como análise estática e dinâmico do código.
Lançamento – Revisão final de segurança antes do produto ir para produção.
Resposta a Incidentes – Planos para lidar com falhas e vulnerabilidades descobertas após o lançamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Benefícios do SDL:

A

✔ Reduz a chance de falhas de segurança.
✔ Melhora a conformidade com normas como GDPR, ISO 27001.
✔ Minimiza custos de correção de vulnerabilidades após o lançamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

CLASP (Comprehensive, Lightweight Application Security Process) o que é?

A

O CLASP (Comprehensive, Lightweight Application Security Process) é uma metodologia de desenvolvimento seguro de software orientada a atividades e papéis, que descreve melhores práticas para projetos novos
ou em andamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Principais características do CLASP:

A

Focado em desenvolvedores, tornando a segurança uma parte natural do desenvolvimento.
Integra segurança de forma modular, ou seja, pode ser adaptado a diferentes metodologias ágeis e tradicionais.
Fornece um conjunto de papéis e responsabilidades para cada membro da equipe.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Principais práticas do CLASP:

A

✔ Implementação de verificações de segurança desde a fase de requisitos.
✔ Definição de políticas de controle de acesso e criptografia.
✔ Testes contínuos para identificar e corrigir falhas de segurança.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Diferença entre SDL e CLASP no desenvolvimento seguro:

A

✅ SDL é um processo estruturado, ideal para grandes organizações que precisam de um ciclo de segurança rigoroso.
✅ CLASP é um conjunto de práticas flexível e leve, ideal para equipes de desenvolvimento ágil.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

A estrutura do processo é dividida em cinco perspectivas, denominadas Visões CLASP. Cada Visão, por sua vez, é dividida em atividades, que contém os componentes do processo. São as Visões:

A
  • Visão Conceitual;
  • Visão de Papéis;
  • Visão de Avaliação de Atividade
  • Visão de Implementação de Atividade
  • Visão de Vulnerabilidades.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Visão CLASP: Conceitual

A

A Visão Conceitual apresenta uma visão geral de como funciona o
processo CLASP e como seus componentes interagem. São introduzidas as melhores práticas, a interação entre o CLASP e as políticas de segurança, alguns conceitos de segurança e os componentes do
processo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Visão CLASP: dos Papéis

A

A Visão de Papéis introduz as responsabilidades básicas de cada
membro do projeto (gerente, arquiteto, especificador de requisitos, projetista, implementador, analista de testes e auditor de segurança) relacionando-os com as atividades propostas, além de especificar quais são os requerimentos básicos para que cada função seja desempenhada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Visão CLASP: Avaliação de atividades

A

A Visão de Avaliação de Atividades descreve o propósito de cada
atividade, bem como os responsáveis, contribuidores, a aplicabilidade, o impacto relativo, os riscos em caso de omissão da atividade, a frequência da atividade e sugere uma proximação do valor para homens/hora.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Visão CLASP: Implementação

A

A Visão de Implementação descreve o conteúdo das 24 atividades de segurança definidas pelo CLASP e identifica os responsáveis pela implementação, bem como as atividades relacionadas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Visão CLASP: Vulnerabilidades

A

A Visão de Vulnerabilidades possui um catálogo que descreve 104 tipos de vulnerabilidadades no desenvolvimento de software, divididas em 5 categorias:

  • Erros de Tipo e Limites de Tamanho;
  • Problemas do Ambiente;
  • Erros de Sincronização e Temporização;
  • Erros de Protocolo;
  • Erros Lógicos em Geral.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

No modelo de desenvolvimento SDL, a MICROSOFT criou os princípios de segurança no desenvolvimento conhecido como SD3 + C:

A

a) Secure by Design (Seguro por desenho);
b) Secure by Default (Seguro por padrão);
c) Secure by Deployment (Seguro na Implantação);
d) Communications (Comunicações).

17
Q

SDC3 + C (SDL): Secure by Design (Seguro por Desenho)

A

A arquitetura, o design e a implementação do software devem ser executados de forma a protegê-lo e proteger as informações que ele processa, além de resistir a ataques.

18
Q

SDC3 + C (SDL): Secure by Default (Seguro por Padrão)

A

Na prática, o software não atingirá uma segurança perfeita; portanto,
os designers devem considerar a possibilidade de haver falhas de segurança. Para minimizar os danos que ocorrem quando invasores miram nessas falhas restantes, o estado padrão do software deve aumentar a segurança.
Por exemplo, o software deve ser executado com o privilégio mínimo
necessário, e os serviços e os recursos que não sejam amplamente necessários devem ser desabilitados por padrão ou ficar acessíveis apenas para uma pequena parte dos usuários.

19
Q

SDC3 + C (SDL): Secure by Deployment (Seguro na Implantação)

A

O software deve conter ferramentas e orientação que ajudem os usuários finais e/ou administradores a usá-lo com segurança. Além disso, a implantação das atualizações deve ser fácil.

20
Q

SDC3 + C (SDL): Communications (Comunicações)

A

Os desenvolvedores de software devem estar preparados para a
descoberta de vulnerabilidades do produto e devem comunicar-se de
maneira aberta e responsável com os usuários finais e/ou com os
administradores para ajudá-los a tomar medidas de proteção (como
instalar patches ou implantar soluções alternativas).