DEV Community

Rayane Pimentel
Rayane Pimentel

Posted on

Exercício Prático – Aplicando Conceitos de Segurança desde o Início

Cenário:

Você faz parte de uma equipe que está iniciando o desenvolvimento de uma nova plataforma chamada Voluntariamos, que conecta pessoas voluntárias a eventos sociais e instituições solidárias. A plataforma terá funcionalidades como:

  • Cadastro de pessoas voluntárias
  • Cadastro de eventos
  • Inscrição em eventos
  • Avaliação das ações após a participação

Tarefa 01

Sua tarefa:
Com base no que foi discutido sobre SSDLC, execute as atividades abaixo:

1. Identificação de Dados Sensíveis e Pessoais (Fase: Requisitos de Segurança):
Liste os dados que serão coletados das pessoas usuárias da plataforma. Classifique-os como:

  • Dados pessoais
  • Dados sensíveis (conforme a LGPD)

Ex: Nome completo, CPF, localização, preferências de voluntariado, etc.

2. Ameaças e Riscos Iniciais (Fase: Arquitetura e Design):
Escolha uma funcionalidade da plataforma (por exemplo, o login, ou o cadastro de eventos). Responda:

  • Quais ameaças podem surgir nesse componente?
  • Quais vulnerabilidades podem ser exploradas?
  • Qual o risco se essa vulnerabilidade for explorada?

3. Estratégias de Mitigação (Fase: Arquitetura e Design):
Para as ameaças/vulnerabilidades identificadas acima, proponha ao menos duas estratégias de mitigação utilizando princípios de segurança discutidos:

  • Segurança por design
  • Autenticação e autorização
  • Criptografia
  • Firewalls ou outras barreiras

4. Reflexão Final:

Por que é importante pensar em segurança desde o início do desenvolvimento?

Tarefa 02

1. Identificação de Dados Sensíveis e Pessoais

Liste os dados coletados e classifique-os como pessoais ou sensíveis. Justifique brevemente com base no impacto de um vazamento.

Exemplo: Certificado de vacinação → Sensível (revela estado de saúde).

2. Modelagem de Ameaças com STRIDE

Escolha a funcionalidade de inscrição em eventos. Para cada categoria do STRIDE, identifique:

  • Uma ameaça possível.
  • Vulnerabilidade relacionada.
  • Risco associado.

(S)poofing, (T)ampering, (R)epudiation, (I)nformation Disclosure, (D)enial of Service, (E)levation of Privilege

3. Mitigações Técnicas e Processuais

Para uma das ameaças identificadas, proponha:

  • Uma mitigação técnica (ex: criptografia).
  • Uma mitigação processual (ex: treinamento de usuários).

4. Caso de Teste de Segurança

Projete um teste para validar se a mitigação técnica funciona. Inclua:

  • Ferramenta utilizada (ex: Snyk para verificar dependências, Semgrep/Horusec para analise de vulnerabilidade).
  • Cenário de teste (ex: injeção de SQL no formulário de inscrição).

Top comments (0)