SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
Threat Modeling: como
não deixar segurança
apenas para o final?
Ruan Victor
ThoughtWorks: Consultor Desenvolvedor
Made in: Salvador
Twitter: Ruanvictor_
Mais sobre: ruanvictor.dev
ThoughtWorks: Consultora Desenvolvedora
Made in: Brasília
Twitter: ThaiiBraga
Mais sobre: thaiane.github.io
Thaiane Braga
Por que
falar disso?
Impacto
Como geralmente
ocorre nos projetos?
Expectativa
!( Responsabilidade
compartilhada )
!( Conhecimento de SI
aplicado no contexto )
!( Fomentação de
conhecimento de SI )
Equipe separada
!( Priorização de negócio )
Realidade
Segurança preventiva
!=
Apagar fogo
14
Threat Modeling:
modelagem de ameaças
16
Modelagem de Ameaças é...
... um processo pelo qual ameaças potenciais, como
vulnerabilidades estruturais, podem ser identificadas,
enumeradas e priorizadas - tudo do ponto de vista de
um invasor hipotético. - Wikipedia
... trabalha para identificar, comunicar e entender
ameaças e mitigações dentro do contexto de proteção
de algo de valor.
- OWASP
17
Quem participa?
PESSOAS DESENVOLVEDORAS
- Visão técnica da aplicação
- Incentiva desenvolvimento seguro
- Fortalece conhecimento de
vulnerabilidades
- Busca soluções técnicas e automatizadas
PESSOAS DA ÁREA DE NEGÓCIO
- Contexto do negócio
- Priorização do backlog
- Identificação dos riscos
- Melhora contínua do projeto
TIMES SEC, OPS, QA e outros
- Responsabilidade compartilhada
- Quebrar silos
- Visões diferentes
- Visão unificada das ameaças e
mitigações
CLIENTES
- Transparência
- Fortalece a confiança
- Apoio na priorização
- Responsabilidade e riscos
compartilhados
Contexto
example
of graphic
example
of graphic
Identificação
Mitigação
4 Questões
Contexto
1 - O que estamos
construindo?
Identificação
2 - O que estamos
fazendo errado?
Mitigação
3 - O que faremos
sobre isso?
Priorização
4 - Quando faremos?
Contexto
- Entender a função da aplicação, o fluxo
dos dados na aplicação, as informações
manipuladas
- Use diagramas (arquitetura, sequência,
componentes e/ou desenhos)
- Dica: definir tema principal e time-box
✓ Confidencialidade
✓ Integridade
✓ Disponibilidade
✓ Autenticidade
✓ Não repúdio
Esta etapa é
destinada ao
entendimento da
aplicação ou solução,
qual o ser valor para o
negócio do cliente e
qual o aspecto de
segurança mais
importante.
Identificação
Esta etapa é
destinada a entender
aquilo que pode
acontecer de ruim
com a app, quem
pode causar isso e
como pode causar
isso.
- Discuta com o time e liste os principais
atores que podem nos atacar.
- Após identificar os possíveis atacantes
discuta com o time e identifique de que
forma elas podem concretizar os cenários
definidos como nossos objetivos.
- Top 10 OWASP
- STRIDE
Ameaça Propriedade
Violada
Definição
Spoofing Autenticação Representando algo ou outra pessoa
Tampering Integridade Modificando dados ou código
Repudiation Não repúdio Alegando não ter realizado uma ação.
Information
Disclosure
Confidencialidade Expondo informações para alguém
que não tem autorização para ver
Denial of Service Disponibilidade Negar serviços ao usuário
Elevation of Privilege Autorização Obtenha capacidades de
realizar ações sem a devida
autorização
Identificação
Mitigação
Etapa destinada a
identificarmos quais
são os controles que
já possuímos e
quais são os controles
que precisamos
implementar
- Para cada vulnerabilidade realizar a
pergunta:
"Temos algum controle que impeça isso
de acontecer?"
- Se sim, retirar item com referência do
controle.
- Se não, manter o item no diagrama.
Mitigação
Ausência de controle
(vulnerabilidade)
Ameaça
RISCO DE
SEGURANÇA
Ameaça Vulnerabilidade Risco
Interceptação de
comunicação entre
APIs
Ausência de
criptografia ou canal
seguro (HTTPS)
Vazamento de dados
pessoais
Priorização
Esta etapa é
destinada a identificar
os riscos,
probabilidade e
impacto de cada
associados às
ameaças encontradas.
Com isso, priorizá-las.
- Desenhe um matriz de Impacto versus
Probabilidade.
- Defina para cada item qual é quadrante que
ele está. Por exemplo: alto impacto, baixa
probabilidade.
- Derive e priorize tarefas no backlog de
acordo com o risco de cada uma.
RISCO = PROBABILIDADE de ocorrência
     x IMPACTO do dano causado
Priorização
Experiências
E Aprendizados
27
● OWASP Threat Modeling
● Norton LifeLock Cyber Safety Insights Report Global
● ThoughtWorks Threat Modeling
● Dipping Your Toes Into Threat Modeling
● Secure Design with Threat Modelling
● Mapa de segurança
● Lean Model Security and Security Practices
● Sensible Security Conversations
Leia mais sobre em...
Nos ache aqui :)
Até mais
github/ruandev
ruanvictor
ruan@ruanvictor.dev
Ruanvictor_
ruanvictor.dev
github/thaiane
thaianebraga
thaianefbraga@gmail.com
ThaiiBraga
thaiane.github.io

Mais conteúdo relacionado

Semelhante a TM: Como modelar ameaças

7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...
7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...
7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...Alcyon Ferreira de Souza Junior, MSc
 
7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber
 7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber 7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber
7 Segredos sobre o PenTest e Software Livre que Todos deveriam SaberAlcyon Ferreira de Souza Junior, MSc
 
5 isi-riscos, ameacas e vulnerabilidades
5 isi-riscos, ameacas e vulnerabilidades5 isi-riscos, ameacas e vulnerabilidades
5 isi-riscos, ameacas e vulnerabilidadesHumberto Xavier
 
Integridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomwareIntegridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomwareMarcus Botacin
 
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejarGUTS-RS
 
Segurança da Informação: Proteção no ambiente Virtual
Segurança da Informação: Proteção no ambiente VirtualSegurança da Informação: Proteção no ambiente Virtual
Segurança da Informação: Proteção no ambiente VirtualBruno Felipe
 
Site blindado - Como tornar loja virtual mais segura e vender mais
Site blindado  - Como tornar loja virtual mais segura e vender maisSite blindado  - Como tornar loja virtual mais segura e vender mais
Site blindado - Como tornar loja virtual mais segura e vender maisMauro Risonho de Paula Assumpcao
 
Site blindado como tornar loja virtual mais segura e vender mais
Site blindado   como tornar loja virtual mais segura e vender maisSite blindado   como tornar loja virtual mais segura e vender mais
Site blindado como tornar loja virtual mais segura e vender maisSite Blindado S.A.
 
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?TDC2018SP | Trilha Design Thinking - Design thinking e para todos?
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?tdc-globalcode
 
Segurança da informação
Segurança da informaçãoSegurança da informação
Segurança da informaçãoimsp2000
 
Risco aplicado à Privacidade e Proteção de dados
Risco aplicado à Privacidade e Proteção de dadosRisco aplicado à Privacidade e Proteção de dados
Risco aplicado à Privacidade e Proteção de dadosAlexandre Prata
 
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...Symantec Brasil
 

Semelhante a TM: Como modelar ameaças (20)

7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...
7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...
7 Segredos sobre o PenTest e o Softeware Livre que todos deveriam saber - Con...
 
7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber
 7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber 7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber
7 Segredos sobre o PenTest e Software Livre que Todos deveriam Saber
 
5 isi-riscos, ameacas e vulnerabilidades
5 isi-riscos, ameacas e vulnerabilidades5 isi-riscos, ameacas e vulnerabilidades
5 isi-riscos, ameacas e vulnerabilidades
 
Integridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomwareIntegridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomware
 
Palestra alcyon junior - LatinoWare 2016
Palestra alcyon junior - LatinoWare 2016Palestra alcyon junior - LatinoWare 2016
Palestra alcyon junior - LatinoWare 2016
 
Defensive Programming - by Alcyon Junior
Defensive Programming - by Alcyon JuniorDefensive Programming - by Alcyon Junior
Defensive Programming - by Alcyon Junior
 
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 
Segurança da Informação: Proteção no ambiente Virtual
Segurança da Informação: Proteção no ambiente VirtualSegurança da Informação: Proteção no ambiente Virtual
Segurança da Informação: Proteção no ambiente Virtual
 
Pentest
Pentest Pentest
Pentest
 
Seg redes 1
Seg redes 1Seg redes 1
Seg redes 1
 
Site blindado - Como tornar loja virtual mais segura e vender mais
Site blindado  - Como tornar loja virtual mais segura e vender maisSite blindado  - Como tornar loja virtual mais segura e vender mais
Site blindado - Como tornar loja virtual mais segura e vender mais
 
Site blindado como tornar loja virtual mais segura e vender mais
Site blindado   como tornar loja virtual mais segura e vender maisSite blindado   como tornar loja virtual mais segura e vender mais
Site blindado como tornar loja virtual mais segura e vender mais
 
Aula.revisao av2 gsi
Aula.revisao av2 gsiAula.revisao av2 gsi
Aula.revisao av2 gsi
 
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?TDC2018SP | Trilha Design Thinking - Design thinking e para todos?
TDC2018SP | Trilha Design Thinking - Design thinking e para todos?
 
Segurança da informação
Segurança da informaçãoSegurança da informação
Segurança da informação
 
Risco aplicado à Privacidade e Proteção de dados
Risco aplicado à Privacidade e Proteção de dadosRisco aplicado à Privacidade e Proteção de dados
Risco aplicado à Privacidade e Proteção de dados
 
7 segredos sobre o PenTest e software livre - VI Engitec
7 segredos sobre o PenTest e software livre - VI Engitec 7 segredos sobre o PenTest e software livre - VI Engitec
7 segredos sobre o PenTest e software livre - VI Engitec
 
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...
Webinar Be Aware - Evoluindo da tradicional prevenção para rápida detecção e ...
 
Aula 1 - Introdução a Segurança da Informação
Aula 1 - Introdução a Segurança da InformaçãoAula 1 - Introdução a Segurança da Informação
Aula 1 - Introdução a Segurança da Informação
 
Pentest com Kali Linux - LatinoWare 2015
Pentest com Kali Linux  - LatinoWare 2015Pentest com Kali Linux  - LatinoWare 2015
Pentest com Kali Linux - LatinoWare 2015
 

Mais de Thaiane Braga

Segurança: Por onde começar?
Segurança: Por onde começar?Segurança: Por onde começar?
Segurança: Por onde começar?Thaiane Braga
 
Social Coding: Contribuindo, aprendendo e conhecendo pessoas
Social Coding: Contribuindo, aprendendo e conhecendo pessoasSocial Coding: Contribuindo, aprendendo e conhecendo pessoas
Social Coding: Contribuindo, aprendendo e conhecendo pessoasThaiane Braga
 
Rails Girls Porto Alegre - 2017
Rails Girls Porto Alegre - 2017Rails Girls Porto Alegre - 2017
Rails Girls Porto Alegre - 2017Thaiane Braga
 
Desafios de segurança em arquitetura de microsserviços
Desafios de segurança em arquitetura de microsserviçosDesafios de segurança em arquitetura de microsserviços
Desafios de segurança em arquitetura de microsserviçosThaiane Braga
 
Ensinando agilidade de forma efetiva utilizando software livre
Ensinando agilidade de forma efetiva utilizando software livre Ensinando agilidade de forma efetiva utilizando software livre
Ensinando agilidade de forma efetiva utilizando software livre Thaiane Braga
 

Mais de Thaiane Braga (6)

Segurança: Por onde começar?
Segurança: Por onde começar?Segurança: Por onde começar?
Segurança: Por onde começar?
 
Social Coding: Contribuindo, aprendendo e conhecendo pessoas
Social Coding: Contribuindo, aprendendo e conhecendo pessoasSocial Coding: Contribuindo, aprendendo e conhecendo pessoas
Social Coding: Contribuindo, aprendendo e conhecendo pessoas
 
Rails Girls Porto Alegre - 2017
Rails Girls Porto Alegre - 2017Rails Girls Porto Alegre - 2017
Rails Girls Porto Alegre - 2017
 
Desafios de segurança em arquitetura de microsserviços
Desafios de segurança em arquitetura de microsserviçosDesafios de segurança em arquitetura de microsserviços
Desafios de segurança em arquitetura de microsserviços
 
Modelo de Tuckman
Modelo de TuckmanModelo de Tuckman
Modelo de Tuckman
 
Ensinando agilidade de forma efetiva utilizando software livre
Ensinando agilidade de forma efetiva utilizando software livre Ensinando agilidade de forma efetiva utilizando software livre
Ensinando agilidade de forma efetiva utilizando software livre
 

TM: Como modelar ameaças

  • 1. Threat Modeling: como não deixar segurança apenas para o final?
  • 2. Ruan Victor ThoughtWorks: Consultor Desenvolvedor Made in: Salvador Twitter: Ruanvictor_ Mais sobre: ruanvictor.dev
  • 3. ThoughtWorks: Consultora Desenvolvedora Made in: Brasília Twitter: ThaiiBraga Mais sobre: thaiane.github.io Thaiane Braga
  • 6.
  • 7.
  • 8.
  • 11. !( Responsabilidade compartilhada ) !( Conhecimento de SI aplicado no contexto ) !( Fomentação de conhecimento de SI ) Equipe separada !( Priorização de negócio )
  • 14. 14
  • 16. 16 Modelagem de Ameaças é... ... um processo pelo qual ameaças potenciais, como vulnerabilidades estruturais, podem ser identificadas, enumeradas e priorizadas - tudo do ponto de vista de um invasor hipotético. - Wikipedia ... trabalha para identificar, comunicar e entender ameaças e mitigações dentro do contexto de proteção de algo de valor. - OWASP
  • 17. 17 Quem participa? PESSOAS DESENVOLVEDORAS - Visão técnica da aplicação - Incentiva desenvolvimento seguro - Fortalece conhecimento de vulnerabilidades - Busca soluções técnicas e automatizadas PESSOAS DA ÁREA DE NEGÓCIO - Contexto do negócio - Priorização do backlog - Identificação dos riscos - Melhora contínua do projeto TIMES SEC, OPS, QA e outros - Responsabilidade compartilhada - Quebrar silos - Visões diferentes - Visão unificada das ameaças e mitigações CLIENTES - Transparência - Fortalece a confiança - Apoio na priorização - Responsabilidade e riscos compartilhados
  • 18. Contexto example of graphic example of graphic Identificação Mitigação 4 Questões Contexto 1 - O que estamos construindo? Identificação 2 - O que estamos fazendo errado? Mitigação 3 - O que faremos sobre isso? Priorização 4 - Quando faremos?
  • 19. Contexto - Entender a função da aplicação, o fluxo dos dados na aplicação, as informações manipuladas - Use diagramas (arquitetura, sequência, componentes e/ou desenhos) - Dica: definir tema principal e time-box ✓ Confidencialidade ✓ Integridade ✓ Disponibilidade ✓ Autenticidade ✓ Não repúdio Esta etapa é destinada ao entendimento da aplicação ou solução, qual o ser valor para o negócio do cliente e qual o aspecto de segurança mais importante.
  • 20. Identificação Esta etapa é destinada a entender aquilo que pode acontecer de ruim com a app, quem pode causar isso e como pode causar isso. - Discuta com o time e liste os principais atores que podem nos atacar. - Após identificar os possíveis atacantes discuta com o time e identifique de que forma elas podem concretizar os cenários definidos como nossos objetivos. - Top 10 OWASP - STRIDE
  • 21. Ameaça Propriedade Violada Definição Spoofing Autenticação Representando algo ou outra pessoa Tampering Integridade Modificando dados ou código Repudiation Não repúdio Alegando não ter realizado uma ação. Information Disclosure Confidencialidade Expondo informações para alguém que não tem autorização para ver Denial of Service Disponibilidade Negar serviços ao usuário Elevation of Privilege Autorização Obtenha capacidades de realizar ações sem a devida autorização Identificação
  • 22. Mitigação Etapa destinada a identificarmos quais são os controles que já possuímos e quais são os controles que precisamos implementar - Para cada vulnerabilidade realizar a pergunta: "Temos algum controle que impeça isso de acontecer?" - Se sim, retirar item com referência do controle. - Se não, manter o item no diagrama.
  • 23. Mitigação Ausência de controle (vulnerabilidade) Ameaça RISCO DE SEGURANÇA Ameaça Vulnerabilidade Risco Interceptação de comunicação entre APIs Ausência de criptografia ou canal seguro (HTTPS) Vazamento de dados pessoais
  • 24. Priorização Esta etapa é destinada a identificar os riscos, probabilidade e impacto de cada associados às ameaças encontradas. Com isso, priorizá-las. - Desenhe um matriz de Impacto versus Probabilidade. - Defina para cada item qual é quadrante que ele está. Por exemplo: alto impacto, baixa probabilidade. - Derive e priorize tarefas no backlog de acordo com o risco de cada uma. RISCO = PROBABILIDADE de ocorrência      x IMPACTO do dano causado
  • 27. 27 ● OWASP Threat Modeling ● Norton LifeLock Cyber Safety Insights Report Global ● ThoughtWorks Threat Modeling ● Dipping Your Toes Into Threat Modeling ● Secure Design with Threat Modelling ● Mapa de segurança ● Lean Model Security and Security Practices ● Sensible Security Conversations Leia mais sobre em...
  • 28. Nos ache aqui :) Até mais github/ruandev ruanvictor ruan@ruanvictor.dev Ruanvictor_ ruanvictor.dev github/thaiane thaianebraga thaianefbraga@gmail.com ThaiiBraga thaiane.github.io