Capítulo 4 — Arquitetura e engenharia de segurança: métodos centrais
Mapa da aula
Aula 04 publicada. Mapa, exemplo, EX016.
flowchart TD
N0["4.1 Modelar o serviço de reparos"]
N1["4.2 Aplicar o STRIDE"]
N2["Laboratório — Ordenação das ameaças dos reparos por"]
N3["4.3 Ordenar"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4
N4 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX016"]
Desenho lógico
flowchart LR
N0["4.1 Modelar o serviço de reparos"]
N1["4.2 Aplicar o STRIDE"]
N2["Laboratório — Ordenação das ameaças dos reparos por"]
N3["4.3 Ordenar"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX016"]
[4.1 Modelar o serviço de reparos]
|
v
[4.2 Aplicar o STRIDE]
|
v
[Laboratório — Ordenação das ameaças dos reparos por]
|
v
[4.3 Ordenar]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX016]
Objetivos de aprendizagem
Você vai (1) modelar os fluxos de dados de um serviço; (2) aplicar o STRIDE para encontrar ameaças; (3) ordenar as ameaças para tratamento.
4.1 Modelar o serviço de reparos
Owen modela o serviço de reparos: os inquilinos relatam reparos pelo portal ou pela central de atendimento; o sistema de reparos cria as ordens de serviço; as ordens vão para as empresas contratadas por um portal de fornecedores; os contratados atualizam as ordens pelo celular; os inquilinos recebem atualizações por mensagem de texto. Ele rotula os dados de cada fluxo, incluindo nomes, endereços e telefones dos inquilinos e anotações de acesso, como os códigos de cofres de chaves (key safes). Ele marca as fronteiras de confiança entre a Thornbury e os contratados e entre a Thornbury e o provedor de mensagens. O modelo leva duas horas com a equipe de imóveis e se torna a base da análise.
4.2 Aplicar o STRIDE
Owen aplica o STRIDE de Shostack (2014). Spoofing: um ex-funcionário de um contratado ainda poderia entrar no portal de fornecedores. Tampering: as anotações das ordens poderiam ser alteradas para esconder visitas não realizadas. Repudiation: os contratados poderiam negar ter recebido ordens se não houver registro. Information disclosure: os códigos dos cofres de chaves ficam visíveis para todos os contratados, e não só para o designado. Denial of service: o portal de fornecedores não tem contingência. Elevation of privilege: as contas dos contratados conseguem ver as ordens de outros contratados. Ele lista cada ameaça com o elemento que ela afeta.
Laboratório — Ordenação das ameaças dos reparos por probabilidade e impacto
# Rank repairs-service threats by likelihood x impact (1-3 scales, synthetic ratings).
threats = {"key safe codes visible to all contractors": (3, 3), "former contractor accounts still active": (2, 3),
"contractors see other contractors' jobs": (3, 2), "job notes altered to hide missed visits": (2, 2),
"no record of job receipt": (2, 1), "supplier portal outage without fallback": (1, 3)}
for i, (t, (l, imp)) in enumerate(sorted(threats.items(), key=lambda x: -x[1][0] * x[1][1]), 1):
print(f"{i}. {t}: likelihood {l} x impact {imp} = {l * imp}")
Execute com python3 lab_rank.py. Saída verificada:
1. key safe codes visible to all contractors: likelihood 3 x impact 3 = 9
2. former contractor accounts still active: likelihood 2 x impact 3 = 6
3. contractors see other contractors' jobs: likelihood 3 x impact 2 = 6
4. job notes altered to hide missed visits: likelihood 2 x impact 2 = 4
5. supplier portal outage without fallback: likelihood 1 x impact 3 = 3
6. no record of job receipt: likelihood 2 x impact 1 = 2
4.3 Ordenar
Owen classifica cada ameaça em probabilidade e impacto numa escala de um a três com a equipe de imóveis, seguindo a estrutura do NIST SP 800-30 Rev. 1, e as multiplica para obter uma ordem simples. O laboratório ordena as ameaças. A divulgação dos códigos dos cofres de chaves fica em primeiro, porque é provável e poderia permitir que alguém entrasse na casa de um inquilino vulnerável. As contas de ex-funcionários dos contratados ficam em segundo. Ele apresenta a ordenação com os motivos, observando que notas simples orientam a ordem do trabalho, mas não devem ser tratadas como medições precisas.
Exemplo resolvido
Owen modela o serviço de reparos, encontra seis ameaças com o STRIDE e as ordena com a equipe de imóveis, colocando em primeiro a exposição dos códigos dos cofres de chaves.
Caso sintético. O serviço e as classificações são sintéticos; Shostack (2014) e o SP 800-30 Rev. 1 são reais.
Erros e limites
Notas multiplicadas sugerem uma falsa precisão. Os modelos deixam de fora canais informais, como celulares pessoais.
Exercícios
-
EX016 — Anotação sensível. Que dado sensível aparecia nas anotações de acesso dos reparos? Rubrica: 3 = códigos dos cofres de chaves;; 2 = códigos;; 1 = vago;; 0 = nenhuma.
-
EX017 — Ameaça de divulgação. Que ameaça de divulgação o STRIDE encontrou? Rubrica: 3 = códigos dos cofres de chaves visíveis para todos os contratados;; 2 = códigos;; 1 = vago;; 0 = nenhuma.
-
EX018 — Primeiro lugar. Que ameaça ficou em primeiro no laboratório, e com que nota? Rubrica: 3 = divulgação dos códigos dos cofres de chaves, 9;; 2 = códigos;; 1 = indisponibilidade do portal;; 0 = nenhuma.
-
EX019 — Cautela com as notas. Que cautela Owen fez sobre as notas? Rubrica: 3 = orientam a ordem, mas não são medições precisas;; 2 = ordenação;; 1 = vago;; 0 = nenhuma.
-
EX020 — Segundo lugar. Que ameaça ficou em segundo no laboratório? Rubrica: 3 = contas de ex-funcionários dos contratados ainda ativas, 6;; 2 = contas antigas;; 1 = vago;; 0 = nenhuma.
Síntese
A modelagem, o STRIDE e uma classificação simples transformam um serviço em uma lista priorizada de ameaças.
Continue estudando — aula 04 (capítulo 04 de 12)
← Capítulo 03 · Índice das aulas · Capítulo 05 →
Continue para a próxima aula já escrita.