22
Estratégias para Modelagem de Ameaças Nichols Jasper – SafeGuard STI 17º Congresso de Tecnologia – FATEC-SP 06/10/2015

Estratégias para Modelagem de Ameaças

Embed Size (px)

Citation preview

Page 1: Estratégias para Modelagem de Ameaças

Estratégias para Modelagemde Ameaças

Nichols Jasper – SafeGuard STI

17º Congresso de Tecnologia – FATEC-SP

06/10/2015

Page 2: Estratégias para Modelagem de Ameaças

Agenda

• Termos e Definições

• Contextualizando: Star Wars

• Algo do outro mundo? #sqn

• Para que serve

• Metodologia

• Estratégias para modelagem de ameaças

• Armadilhas/erros comuns no assunto

• Dúvidas

• Referências

2

Page 3: Estratégias para Modelagem de Ameaças

Termos e Definições

• Ativo*• Qualquer coisa tangível ou intangível que tem valor para uma

organização ou indivíduo.

• Vulnerabilidade*• Fragilidade de um ativo ou controle de segurança que pode ser

explorada por uma ou mais ameaças.

• Ameaça*• Causa potencial de um incidente indesejado que pode resultar em

dano a um ativo (sistema, pessoas, reputação, etc) ou organização.

• Agente ou Fonte de ameaça**• É autor que intencionalmente ou não explora uma vulnerabilidade e

causa impacto, danos ou prejuízos, nos ativos do alvo explorado.

• Por trás de toda ameaça intencional existe alguma motivação: política,ideológica, financeira, religiosa, emocional, etc.

• * Fonte: ISO/IEC 27000, Information technology – Security techniques – Information security management systems - Overviewand vocabulary

• ** Fonte: NISTIR 7298 Revision 2 Glossary of Key Information Security Terms

3

Page 4: Estratégias para Modelagem de Ameaças

Vídeo – Star Wars

• O Retorno de Jedi (1983)

4

Page 5: Estratégias para Modelagem de Ameaças

Termos e Definições

• Contextualizando....

5Crédito: Leandro Rocha http://pt.slideshare.net/leandroroc/modelagem-ameaas-para-pentester

Ativo

AmeaçaMitigação

Vulnerabilidade (Exaustor Termal)

Page 6: Estratégias para Modelagem de Ameaças

Termos e Definições

• “Modelagem de Ameaças consiste no processo deusar abstrações para identificar e avaliar asameaças de um dado sistema” - Adam Shostack

• Parte do princípio que para se protegeradequadamente é necessário entender bem contrao que ou quem se deseja defender.

• Isto é possível ao examinar os sistemas sob oponto de vista de um adversário em potencial(ameaça), identificando os maiores riscos aos quaisos sistemas estão expostos.

• Como resultado se obtém uma lista das possíveisameaças e opções para tratar o risco de suamaterialização.

6

Page 7: Estratégias para Modelagem de Ameaças

Algo do outro mundo? #sqn

• O ser humano começou a modelar ameaçasdesde o momento em que começou a pensarem se proteger ou evitar que alguma coisadanosa acontecesse.

• Estas atividades fazem parte do cotidiano daspessoas e são aplicadas:

• No projeto de sistemas críticos, como projetos deaviões e de usinas nucleares.

• Na seção de "precauções" nos manuaiseletrodomésticos.

• Nos avisos de capacidade máxima doselevadores.

• Nas bulas de remédios (efeitos colaterais).

• Nas faixas amarelas das estações de metrô.7

Page 8: Estratégias para Modelagem de Ameaças

Algo do outro mundo? #sqn

• Um museu que guarda artefatos,joias e peças de arte raras modelaameaças quando pensa emproteger tais itens de um agentede ameaça que pode causar algumdano a esses ativos, causandoprejuízo à instituição.

• Um professor que quer evitar queseus alunos colem também precisamodelar essa ameaça!

• Enfim, é uma atividade que todosfazemos cotidianamente e nemnotamos! 8

Page 9: Estratégias para Modelagem de Ameaças

Exercício prático: Qual casa é mais fácil de invadir?

• Agente de ameaça: Ladrão de casas perito em abrir fechaduras

A

B9

Page 10: Estratégias para Modelagem de Ameaças

10

Mas mesmo assim tem gente que consegue...

Page 11: Estratégias para Modelagem de Ameaças

Modelagem de Ameaças: Para que serve?

• Há várias razões para modelar ameaças:

1. Encontrar problemas de segurança: se pensamos emconstruir uma casa, algumas decisões irão impactar em suasegurança, como a presença de cercas e a disposição dasjanelas.

2. Ampliar a compreensão dos requisitos de segurança: aopasso que encontramos ameaças e fazemos uma avaliaçãopodemos compreender melhor as proteções necessárias.

3. Projetar e entregar produtos melhores: ao considerarmosas ameaças, requisitos e necessidades de design é possívelreduzir as chances de haver retrabalho e mudançassignificativas no sistema durante seu desenvolvimento.

4. Achar erros que outras técnicas não acham: modelos doque pode dar errado ajudam a criticar as premissas dosistema e descobrir erros, omissões e problemas que astécnicas tradicionais não encontram. 11

Page 12: Estratégias para Modelagem de Ameaças

Metodologia para modelar ameaças

• O que você está construindo?Modelar o

sistema

• O que pode dar errado quando ele estiver construído?

Identificar ameaças

• O que você deveria fazer a respeito dessas coisas que podem dar errado?

Mitigar os riscos associado às

ameaças

• Seu trabalho de análise foi feito com qualidade?Revisão

12

Page 13: Estratégias para Modelagem de Ameaças

Estratégias – Focando nos Ativos

• Envolver identificar três itens:

• O que você quer proteger?

• O cadastro de clientes.

• Fórmula do principal produto daorganização.

• As joias da coroa.

• O que um atacante quer?

• Os usuários e senhas de acesso aosistema de vendas.

• Números de cartão de crédito.

• Deixar o site da sua empresa fora do arna Black Friday.

• Possíveis barreiras entre eles

• Recursos e controles de segurança queseparam os itens acima.

13

Page 14: Estratégias para Modelagem de Ameaças

Estratégias – Focando nos Atacantes

• Envolve a compreensão dos potenciais atacantes e doseu conjunto de habilidades e motivações paraexplorar as vulnerabilidades.

• Normalmente se usam personas, personagens fictícioscriados para representar os diferentes tipos de ameaçaa um dado sistema.

• Pensando num sistema de controle de lançamento deogivas nucleares:

• O que um espião de uma nação inimiga poderia fazer?

• E um administrador de sistema mal intencionado?

• E um funcionário bem intencionado mas sem o treinamentoadequado para operar o sistema?

14

Page 15: Estratégias para Modelagem de Ameaças

Estratégias – Focando nos Softwares

• Foca na decomposição dos sistemas de softwareatravés de diversos modelos que possibilitem enxergaras ameaças relevantes.

• São usados os tradicionais diagramas DFD e UML paraenxergar além do funcionamento “normal” do sistema.

• É a estratégia usada e desenvolvida pela Microsoft,uma das precursoras da modelagem de ameaças emsoftware.

15

Page 16: Estratégias para Modelagem de Ameaças

Estratégias – Focando nos Softwares

16

Requisitos de Segurança

Controles de Segurança

Ameaças

Ameaças ajudam aidentificar requisitosde segurança

Ameaças em potencialviolam os requisitosde segurança de umsistema

Requisitos desegurança sãointegrados aossistemas através decontroles desegurança e visamendereçar asameaças aossistemas.

Page 17: Estratégias para Modelagem de Ameaças

Estratégias – Focando nos Softwares

•DFD

•UML

17

Page 18: Estratégias para Modelagem de Ameaças

Estratégias – O que pode dar errado - STRIDE

18

Categoria DescriçãoPrincípio de

Segurança afetadoImpacto Adverso

no sistema

S – SpoofingOcorre quando um usuário consegue se

passar por outro Autenticação

Acesso Não Autorizado

T – TamperingEnvolve a modificação maliciosa de um

ativoIntegridade

Modificação Da Informação

R – RepudiationEstá associada quando um principal

executa uma ação e depois pode negá-la sem algo que o conteste

Não RepúdioAcesso Não Autorizado

I – Information Disclosure

Relacionada a exposição de informações a indivíduos que não estão autorizados a

ter o acessoConfidencialidade

Divulgação de Informações

D – Denial of Service

Envolve a degradação ou interrupção de um serviço ou ativo aos usuários

legítimosDisponibilidade

Destruição, Negação De Serviço

E – Elevation of Privilege

Ocorre quando um indivíduo obtém privilégios e capacidades maiores do que as que lhe são atribuídas legitimamente

AutorizaçãoAcesso Não Autorizado

Page 19: Estratégias para Modelagem de Ameaças

Estratégias – Qual é a melhor?

• A que funciona!

• A modelagem de software tende a funcionarmelhor em sistemas com vasta documentaçãodisponível e tempo dedicado para análise, oque não ocorre em muitos lugares.

• A modelagem em atacantes está sujeita apreconceitos dos modeladores, o que podelevar a construção de personas irreais ouincompletos, levando a premissas equivocadasdo sistema.

• A modelagem em ativos necessita de um bomconhecimento dos ativos sob análise e maisajuda a priorizar o tratamento das ameaças doque a identifica-las propriamente.

• É melhor pensar nas estratégias comopeças de montar e adequá-las ao tempo,contexto e recursos disponíveis! 19

Page 20: Estratégias para Modelagem de Ameaças

Armadilhas/erros comuns no assunto

1. “Confie na força, Luke” – falta de abordagemestruturada.

2. Modelar ciclicamente, sem entregar resultados.

3. Foco excessivo no “como” fazer.

4. Tratar MA como uma habilidade nata e não passívelde aprendizado.

5. Encontrar ameaças e não realizar seu tratamento.

6. Modelar “no vácuo” – É preciso contar uma históriacom o sistema!

7. Modelar na hora errada – deixar isso para o finalpode dar muita dor de cabeça...

20

Page 21: Estratégias para Modelagem de Ameaças

Dúvidas?

21

Page 22: Estratégias para Modelagem de Ameaças

Referências

• Threat Modeling: Designing for Security -http://www.amazon.com/Threat-Modeling-Designing-Adam-Shostack/dp/1118809998/

• Modelagem de Ameaças de Segurança -https://technet.microsoft.com/pt-br/library/dd569893.aspx

• Desenvolvendo controles de segurança baseados emmodelagem de ameaças e análise de requisitos -http://www.researchgate.net/publication/263469540_Desenvolvendo_controles_de_segurana_baseados_em_modelagem_de_ameaas_e_anlise_de_requisitos

• Microsoft Threat Modeling Tool 2014 -http://blogs.microsoft.com/cybertrust/2014/04/15/introducing-microsoft-threat-modeling-tool-2014/

22