SlideShare uma empresa Scribd logo
1 de 25
AULA 05
O objetivo deste curso é capacitar os treinandos em Codificação
Segura – Fundamentos, com habilidades e conhecimento em
Secure Programming - Foundation.
Objetivo do Curso
“A revolução começa com a informação e termina
com o resultado."
(Bernardo Morais)
Público-Alvo
 Todos que desejam ter conhecimento em Fundamentos de Programação
Segura
 Todos que tenham interesse no desenvolvimento de softwares seguros e
auditores que irão trabalhar com o Framework Secure Software.
Alcyon Junior
Gestor de Segurança da
Informação no
SEBRAE
Três graduações
Redes de
Computadores
Pós em Redes pela
Cisco | MBA em
Governança de TI |
Pós em
CyberSecurity
Mestrado em
Segurança
Cibernética
Autor de livros
sobre Segurança
Cibernética
EHF | ISO27002
| ITILF | CNAP |
CEH | MVM |
LPIC-1
Instrutor
credenciado
pela EXIN e
Líder da OWASP
BSB
#WHOAMI
Autor do capítulo 19
Configurações de segurança
DISCLAIMER
The information contained in this document may be privileged
and confidential and protected from disclosure. If the reader of
this document is not the intended recipient, or an employee
agent responsible for delivering this document to the
intended recipient, you are hereby notified that any
dissemination, distribution or copying of this communication is
strictly prohibited.
MÓDULO
CRIPTOGRAFIA
Objetivos
Explicar a importância do Princípio de Kerckhoff, Manejo de Chaves e
Aleatoriedade.
Descrever a criptografia de chave pública, ataques de homem do meio e
certificados.
Reconhecer as ameaças a SSL/TLS/HTTPS.
Aplicar HTTPS corretamente.
Princípio de Kerckhoff
Um bom algoritmo de criptografia não deve depender do sigilo do próprio algoritmo.
A única parte que precisa ser secreta é a chave.
Auguste Kerckhoffs, 1883
Criptografia de chave pública
HTTPS
Revisão
Criptografia Simétrica e Assimétrica
Chave pública e chave privada
Ataque Homem-do-Meio ou Man-In-The-Midde
Certificado Digital
HTTPS
HSTS
Exercício
Como aplicar corretamente o HTTPS? Escolha uma das alternativas:
A. Utilizar sempre a criptografia mais forte possível (CIPHER – CIFRA);
B. Permitir tanto o uso do HTTP quanto do HTTPS;
C. Implementar a verificação do certificado, verificar se a autoridade que emitiu
o certificado não está comprometida, se a chave não está comprometida, se
o certificado não foi revogado;
D. Ignorar os alertas e mensagens de certificado inválido;
MÓDULO
ENGENHARIA DE SOFTWARE SEGURO
Objetivos
Identificar requisitos de segurança em falta.
Reconhecer ambiguidades e pressupostos ocultos em determinadas condições e
contextos.
Reconhecer ameaças que são inerentes a uma arquitetura específica.
Reconhecer soluções adequadas a ameaças e as imperfeições nessas soluções.
Reconhecer o escopo, objetivo e vantagens da revisão de código para as práticas
de desenvolvimento.
Lembrar diferentes métodos para testes de segurança.
Reconhecer o melhor teste para um determinado cenário.
Identificar formas de melhorar o desenvolvimento de software e processos de
testes, incorporando resultados de testes.
Requisitos de segurança
• Sua Importância
• STRIDE
#DICA – STRIDE para Requisito de Seg
S Forjamento de Identidade / Requisito de Segurança Autenticação, uso de senhas
T Adulteração de Dados / Requisito de Segurança Integridade, manipulação ou validação de entrada
R Rejeição / Requisito de Segurança Não rejeição, registro
I Divulgação de Informações / Requisito de Segurança Confidencialidade, criptografia
D Recusa de Serviço / Requisito de Segurança Disponibilidade, limitar o consumo de recursos
E Elevação de Privilégios / Requisito de Segurança Autorização, realizar verificações de autorização
Design Seguro
Group
member
Group
member
Group
administrator
Group
administrator
Web
server
Web
server
Mobile
app
Mobile
app
System administratorSystem administrator
Mobile
app
Mobile
app
GUI
events
GUI
events
SOAP
HTTP
responses
HTTP
requests
SOAP
SQL
AgentAgent
ProcessProcessDatabase
Data store
Data flow
Codificação Segura
• Enumeração das Fraquezas Comuns de Projetos
• Revisões de Código
• Ferramentas de Análise Estática
Testes de Segurança
Testes de penetração;
Testes de abuso;
Varreduras de vulnerabilidade;
Fuzzing;
Testes de Feedback;
Revisão
Requisitos de Segurança
Design Seguro
Codificação Segura
Testes de Segurança
Exercício
Quais destes é uma técnica de Teste de Segurança que pode gerar uma
grande quantidade de dados de testes, executar os testes a partir dos
dados gerados, monitorar os resultados e reestabelecer o sistema em
caso de falha?
A. Teste de Penetração
B. Teste de Abuso
C. Teste de Feedback
D. Fuzzing
VAMOS PENSAR UM POUCO?
“- aquele que conhece o inimigo e a si mesmo,
lutará cem batalhas sem perigo de derrota;
- para aquele que não conhece o inimigo, mas
conhece a si mesmo, as chances para a
vitória ou para a derrota serão iguais;
- aquele que não conhece nem o inimigo e
nem a si próprio, será derrotado em todas as
batalhas.”
Sun Tzu (A arte da Guerra)
REVISÃO E SIMULADO
Estou pronto?
• Simulado de prova – será disponibilizado no Telegram
• Grupo de dúvidas – t.me/devsecica

Mais conteúdo relacionado

Mais procurados

Man in the middle attack .pptx
Man in the middle attack .pptxMan in the middle attack .pptx
Man in the middle attack .pptxPradeepKumar728006
 
Application Security | Application Security Tutorial | Cyber Security Certifi...
Application Security | Application Security Tutorial | Cyber Security Certifi...Application Security | Application Security Tutorial | Cyber Security Certifi...
Application Security | Application Security Tutorial | Cyber Security Certifi...Edureka!
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on itWSO2
 
Web Application Security and Awareness
Web Application Security and AwarenessWeb Application Security and Awareness
Web Application Security and AwarenessAbdul Rahman Sherzad
 
OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)TzahiArabov
 
OWASP Top 10 - The Ten Most Critical Web Application Security Risks
OWASP Top 10 - The Ten Most Critical Web Application Security RisksOWASP Top 10 - The Ten Most Critical Web Application Security Risks
OWASP Top 10 - The Ten Most Critical Web Application Security RisksAll Things Open
 
Segurança da informação - Forense Computacional
Segurança da informação - Forense ComputacionalSegurança da informação - Forense Computacional
Segurança da informação - Forense ComputacionalJefferson Costa
 
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoDesenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoClavis Segurança da Informação
 
Cyber Kill Chain Deck for General Audience
Cyber Kill Chain Deck for General AudienceCyber Kill Chain Deck for General Audience
Cyber Kill Chain Deck for General AudienceTom K
 
Zero Trust Model
Zero Trust ModelZero Trust Model
Zero Trust ModelYash
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backendAPIsecure_ Official
 
Security operation center (SOC)
Security operation center (SOC)Security operation center (SOC)
Security operation center (SOC)Ahmed Ayman
 
Learn intrusion detection: Using Zeek and Elastic for incident response
Learn intrusion detection: Using Zeek and Elastic for incident responseLearn intrusion detection: Using Zeek and Elastic for incident response
Learn intrusion detection: Using Zeek and Elastic for incident responseInfosec
 
Secure code practices
Secure code practicesSecure code practices
Secure code practicesHina Rawal
 

Mais procurados (20)

Man in the middle attack .pptx
Man in the middle attack .pptxMan in the middle attack .pptx
Man in the middle attack .pptx
 
Application Security | Application Security Tutorial | Cyber Security Certifi...
Application Security | Application Security Tutorial | Cyber Security Certifi...Application Security | Application Security Tutorial | Cyber Security Certifi...
Application Security | Application Security Tutorial | Cyber Security Certifi...
 
Bsides SP 2022 - EPSS - Final.pptx
Bsides SP 2022 - EPSS - Final.pptxBsides SP 2022 - EPSS - Final.pptx
Bsides SP 2022 - EPSS - Final.pptx
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on it
 
Web Application Security and Awareness
Web Application Security and AwarenessWeb Application Security and Awareness
Web Application Security and Awareness
 
OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)
 
OWASP Top 10 - The Ten Most Critical Web Application Security Risks
OWASP Top 10 - The Ten Most Critical Web Application Security RisksOWASP Top 10 - The Ten Most Critical Web Application Security Risks
OWASP Top 10 - The Ten Most Critical Web Application Security Risks
 
Secure Code Review 101
Secure Code Review 101Secure Code Review 101
Secure Code Review 101
 
API Security Fundamentals
API Security FundamentalsAPI Security Fundamentals
API Security Fundamentals
 
Segurança da informação - Forense Computacional
Segurança da informação - Forense ComputacionalSegurança da informação - Forense Computacional
Segurança da informação - Forense Computacional
 
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoDesenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
 
Cyber Kill Chain Deck for General Audience
Cyber Kill Chain Deck for General AudienceCyber Kill Chain Deck for General Audience
Cyber Kill Chain Deck for General Audience
 
Application security
Application securityApplication security
Application security
 
Red Team P1.pdf
Red Team P1.pdfRed Team P1.pdf
Red Team P1.pdf
 
Broken Authentication and Authorization(1).pptx
Broken Authentication and Authorization(1).pptxBroken Authentication and Authorization(1).pptx
Broken Authentication and Authorization(1).pptx
 
Zero Trust Model
Zero Trust ModelZero Trust Model
Zero Trust Model
 
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
2022 APIsecure_Method for exploiting IDOR on nodejs+mongodb based backend
 
Security operation center (SOC)
Security operation center (SOC)Security operation center (SOC)
Security operation center (SOC)
 
Learn intrusion detection: Using Zeek and Elastic for incident response
Learn intrusion detection: Using Zeek and Elastic for incident responseLearn intrusion detection: Using Zeek and Elastic for incident response
Learn intrusion detection: Using Zeek and Elastic for incident response
 
Secure code practices
Secure code practicesSecure code practices
Secure code practices
 

Semelhante a Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon Junior

Como se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareComo se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareAlcyon Ferreira de Souza Junior, MSc
 
Explorando 5 falhas graves de segurança que os programadores sempre cometem
Explorando 5 falhas graves de segurança que os programadores sempre cometemExplorando 5 falhas graves de segurança que os programadores sempre cometem
Explorando 5 falhas graves de segurança que os programadores sempre cometemAlcyon Ferreira de Souza Junior, MSc
 
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
Qa test   roadsec-bh - testes de segurança, não comece pelo fim!Qa test   roadsec-bh - testes de segurança, não comece pelo fim!
Qa test roadsec-bh - testes de segurança, não comece pelo fim!Welington Monteiro
 
Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Alcyon Ferreira de Souza Junior, MSc
 
[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
 
Katana Security - Consultoria em Segurança da Informação
Katana Security - Consultoria em Segurança da InformaçãoKatana Security - Consultoria em Segurança da Informação
Katana Security - Consultoria em Segurança da InformaçãoMagno Logan
 
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureGlobal Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureRubens Guimarães - MTAC MVP
 
Validando a Segurança de Software
Validando a Segurança de SoftwareValidando a Segurança de Software
Validando a Segurança de SoftwareJeronimo Zucco
 
Analista de Defesa Cibernética (link).pdf
Analista de Defesa Cibernética (link).pdfAnalista de Defesa Cibernética (link).pdf
Analista de Defesa Cibernética (link).pdfLucianoDejesus15
 
Lista de desejos de um Chief Security Officer
Lista de desejos de um Chief Security OfficerLista de desejos de um Chief Security Officer
Lista de desejos de um Chief Security OfficerAmazon Web Services LATAM
 
Projeto de Avaliação de Segurança de TI
Projeto de Avaliação de Segurança de TIProjeto de Avaliação de Segurança de TI
Projeto de Avaliação de Segurança de TIMessias Dias Teixeira
 
Webinar Segurança de DevOps
Webinar Segurança de DevOpsWebinar Segurança de DevOps
Webinar Segurança de DevOpsTenchi Security
 
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWARE
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWAREQUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWARE
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWAREFabiano Souza
 
Como começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day FatecComo começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day FatecJoas Antonio dos Santos
 
Sunlit technologies portfolio produtos & serviços agosto2016
Sunlit technologies   portfolio produtos & serviços  agosto2016Sunlit technologies   portfolio produtos & serviços  agosto2016
Sunlit technologies portfolio produtos & serviços agosto2016Antonio Carlos Scola - MSc
 
Gestão De Riscos Com Base No Monitoramento De Ameaças
Gestão De Riscos Com Base No Monitoramento De AmeaçasGestão De Riscos Com Base No Monitoramento De Ameaças
Gestão De Riscos Com Base No Monitoramento De AmeaçasLeandro Bennaton
 

Semelhante a Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon Junior (20)

Como se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareComo se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de Software
 
Java security
Java securityJava security
Java security
 
Explorando 5 falhas graves de segurança que os programadores sempre cometem
Explorando 5 falhas graves de segurança que os programadores sempre cometemExplorando 5 falhas graves de segurança que os programadores sempre cometem
Explorando 5 falhas graves de segurança que os programadores sempre cometem
 
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
Qa test   roadsec-bh - testes de segurança, não comece pelo fim!Qa test   roadsec-bh - testes de segurança, não comece pelo fim!
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
 
Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem
 
[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
 
Katana Security - Consultoria em Segurança da Informação
Katana Security - Consultoria em Segurança da InformaçãoKatana Security - Consultoria em Segurança da Informação
Katana Security - Consultoria em Segurança da Informação
 
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureGlobal Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
 
Validando a Segurança de Software
Validando a Segurança de SoftwareValidando a Segurança de Software
Validando a Segurança de Software
 
Analista de Defesa Cibernética (link).pdf
Analista de Defesa Cibernética (link).pdfAnalista de Defesa Cibernética (link).pdf
Analista de Defesa Cibernética (link).pdf
 
Segurança de código
Segurança de códigoSegurança de código
Segurança de código
 
Segurança em Desenvolvimento de Software
Segurança em Desenvolvimento de SoftwareSegurança em Desenvolvimento de Software
Segurança em Desenvolvimento de Software
 
Lista de desejos de um Chief Security Officer
Lista de desejos de um Chief Security OfficerLista de desejos de um Chief Security Officer
Lista de desejos de um Chief Security Officer
 
Projeto de Avaliação de Segurança de TI
Projeto de Avaliação de Segurança de TIProjeto de Avaliação de Segurança de TI
Projeto de Avaliação de Segurança de TI
 
Webinar Segurança de DevOps
Webinar Segurança de DevOpsWebinar Segurança de DevOps
Webinar Segurança de DevOps
 
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWARE
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWAREQUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWARE
QUALIDADE, SEGURANÇA E CONFIABILIDADE DE SOFTWARE
 
Como começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day FatecComo começar na área de PenTest - Womcy Security Day Fatec
Como começar na área de PenTest - Womcy Security Day Fatec
 
Sunlit technologies portfolio produtos & serviços agosto2016
Sunlit technologies   portfolio produtos & serviços  agosto2016Sunlit technologies   portfolio produtos & serviços  agosto2016
Sunlit technologies portfolio produtos & serviços agosto2016
 
Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017Ethical Hacking - Campus Party Brasília 2017
Ethical Hacking - Campus Party Brasília 2017
 
Gestão De Riscos Com Base No Monitoramento De Ameaças
Gestão De Riscos Com Base No Monitoramento De AmeaçasGestão De Riscos Com Base No Monitoramento De Ameaças
Gestão De Riscos Com Base No Monitoramento De Ameaças
 

Mais de Alcyon Ferreira de Souza Junior, MSc

SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...
SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...
SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...Alcyon Ferreira de Souza Junior, MSc
 
7 segredos para a criação de malware - Campus Party Brasil 2018
7 segredos para a criação de malware - Campus Party Brasil 20187 segredos para a criação de malware - Campus Party Brasil 2018
7 segredos para a criação de malware - Campus Party Brasil 2018Alcyon Ferreira de Souza Junior, MSc
 
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...Alcyon Ferreira de Souza Junior, MSc
 
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
 

Mais de Alcyon Ferreira de Souza Junior, MSc (20)

Defensive programming - MindTheSec São Paulo 2019
Defensive programming - MindTheSec São Paulo 2019Defensive programming - MindTheSec São Paulo 2019
Defensive programming - MindTheSec São Paulo 2019
 
Defensive Programming - by Alcyon Junior
Defensive Programming - by Alcyon JuniorDefensive Programming - by Alcyon Junior
Defensive Programming - by Alcyon Junior
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Dica 01 - Hash de Senhas e sua utilização Segura
Dica 01 - Hash de Senhas e sua utilização SeguraDica 01 - Hash de Senhas e sua utilização Segura
Dica 01 - Hash de Senhas e sua utilização Segura
 
Mapa mental de Desenvolvimento seguro de software
Mapa mental de Desenvolvimento seguro de softwareMapa mental de Desenvolvimento seguro de software
Mapa mental de Desenvolvimento seguro de software
 
A nova onda da Segurança Cibernética e seus times coloridos
A nova onda da Segurança Cibernética e seus times coloridosA nova onda da Segurança Cibernética e seus times coloridos
A nova onda da Segurança Cibernética e seus times coloridos
 
Como hackear tudo! na Campus Party BSB 2
Como hackear tudo! na Campus Party BSB 2Como hackear tudo! na Campus Party BSB 2
Como hackear tudo! na Campus Party BSB 2
 
SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...
SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...
SEGURANÇA DA INFORMAÇÃO​ E A TRANSFORMAÇÃO DIGITAL: COMO SOBREVIVER NESTE NOV...
 
7 segredos para a criação de malware - Campus Party Brasil 2018
7 segredos para a criação de malware - Campus Party Brasil 20187 segredos para a criação de malware - Campus Party Brasil 2018
7 segredos para a criação de malware - Campus Party Brasil 2018
 
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
 
PenTest com Kali linux - VI Engitec
PenTest com Kali linux - VI EngitecPenTest com Kali linux - VI Engitec
PenTest com Kali linux - VI Engitec
 
Google hacking e SQL Injection: Tudo junto e misturado!
Google hacking e SQL Injection: Tudo junto e misturado!Google hacking e SQL Injection: Tudo junto e misturado!
Google hacking e SQL Injection: Tudo junto e misturado!
 
Red Teaming and Alternative Analysis
Red Teaming and Alternative AnalysisRed Teaming and Alternative Analysis
Red Teaming and Alternative Analysis
 
PenTest com Kali Linux - Palestra na UPIS 2014
PenTest com Kali Linux - Palestra na UPIS 2014PenTest com Kali Linux - Palestra na UPIS 2014
PenTest com Kali Linux - Palestra na UPIS 2014
 
Segurança da Informação na era do software livre - Volday III
Segurança da Informação na era do software livre - Volday IIISegurança da Informação na era do software livre - Volday III
Segurança da Informação na era do software livre - Volday III
 
Pentest com Kali Linux - LatinoWare 2015
Pentest com Kali Linux  - LatinoWare 2015Pentest com Kali Linux  - LatinoWare 2015
Pentest com Kali Linux - LatinoWare 2015
 
Palestra alcyon junior - LatinoWare 2016
Palestra alcyon junior - LatinoWare 2016Palestra alcyon junior - LatinoWare 2016
Palestra alcyon junior - LatinoWare 2016
 
7 segredos para a criação de malware - LatinoWare 2017
7 segredos para a criação de malware - LatinoWare 20177 segredos para a criação de malware - LatinoWare 2017
7 segredos para a criação de malware - LatinoWare 2017
 
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...
Segurança cibernetica na era do software livre utilizando o BackTrack - Debi...
 
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...
 

Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon Junior

  • 2. O objetivo deste curso é capacitar os treinandos em Codificação Segura – Fundamentos, com habilidades e conhecimento em Secure Programming - Foundation. Objetivo do Curso “A revolução começa com a informação e termina com o resultado." (Bernardo Morais) Público-Alvo  Todos que desejam ter conhecimento em Fundamentos de Programação Segura  Todos que tenham interesse no desenvolvimento de softwares seguros e auditores que irão trabalhar com o Framework Secure Software.
  • 3. Alcyon Junior Gestor de Segurança da Informação no SEBRAE Três graduações Redes de Computadores Pós em Redes pela Cisco | MBA em Governança de TI | Pós em CyberSecurity Mestrado em Segurança Cibernética Autor de livros sobre Segurança Cibernética EHF | ISO27002 | ITILF | CNAP | CEH | MVM | LPIC-1 Instrutor credenciado pela EXIN e Líder da OWASP BSB #WHOAMI
  • 4. Autor do capítulo 19 Configurações de segurança
  • 5.
  • 6. DISCLAIMER The information contained in this document may be privileged and confidential and protected from disclosure. If the reader of this document is not the intended recipient, or an employee agent responsible for delivering this document to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited.
  • 8. Objetivos Explicar a importância do Princípio de Kerckhoff, Manejo de Chaves e Aleatoriedade. Descrever a criptografia de chave pública, ataques de homem do meio e certificados. Reconhecer as ameaças a SSL/TLS/HTTPS. Aplicar HTTPS corretamente.
  • 9. Princípio de Kerckhoff Um bom algoritmo de criptografia não deve depender do sigilo do próprio algoritmo. A única parte que precisa ser secreta é a chave. Auguste Kerckhoffs, 1883
  • 11. HTTPS
  • 12. Revisão Criptografia Simétrica e Assimétrica Chave pública e chave privada Ataque Homem-do-Meio ou Man-In-The-Midde Certificado Digital HTTPS HSTS
  • 13. Exercício Como aplicar corretamente o HTTPS? Escolha uma das alternativas: A. Utilizar sempre a criptografia mais forte possível (CIPHER – CIFRA); B. Permitir tanto o uso do HTTP quanto do HTTPS; C. Implementar a verificação do certificado, verificar se a autoridade que emitiu o certificado não está comprometida, se a chave não está comprometida, se o certificado não foi revogado; D. Ignorar os alertas e mensagens de certificado inválido;
  • 15. Objetivos Identificar requisitos de segurança em falta. Reconhecer ambiguidades e pressupostos ocultos em determinadas condições e contextos. Reconhecer ameaças que são inerentes a uma arquitetura específica. Reconhecer soluções adequadas a ameaças e as imperfeições nessas soluções. Reconhecer o escopo, objetivo e vantagens da revisão de código para as práticas de desenvolvimento. Lembrar diferentes métodos para testes de segurança. Reconhecer o melhor teste para um determinado cenário. Identificar formas de melhorar o desenvolvimento de software e processos de testes, incorporando resultados de testes.
  • 16. Requisitos de segurança • Sua Importância • STRIDE
  • 17. #DICA – STRIDE para Requisito de Seg S Forjamento de Identidade / Requisito de Segurança Autenticação, uso de senhas T Adulteração de Dados / Requisito de Segurança Integridade, manipulação ou validação de entrada R Rejeição / Requisito de Segurança Não rejeição, registro I Divulgação de Informações / Requisito de Segurança Confidencialidade, criptografia D Recusa de Serviço / Requisito de Segurança Disponibilidade, limitar o consumo de recursos E Elevação de Privilégios / Requisito de Segurança Autorização, realizar verificações de autorização
  • 18. Design Seguro Group member Group member Group administrator Group administrator Web server Web server Mobile app Mobile app System administratorSystem administrator Mobile app Mobile app GUI events GUI events SOAP HTTP responses HTTP requests SOAP SQL AgentAgent ProcessProcessDatabase Data store Data flow
  • 19. Codificação Segura • Enumeração das Fraquezas Comuns de Projetos • Revisões de Código • Ferramentas de Análise Estática
  • 20. Testes de Segurança Testes de penetração; Testes de abuso; Varreduras de vulnerabilidade; Fuzzing; Testes de Feedback;
  • 21. Revisão Requisitos de Segurança Design Seguro Codificação Segura Testes de Segurança
  • 22. Exercício Quais destes é uma técnica de Teste de Segurança que pode gerar uma grande quantidade de dados de testes, executar os testes a partir dos dados gerados, monitorar os resultados e reestabelecer o sistema em caso de falha? A. Teste de Penetração B. Teste de Abuso C. Teste de Feedback D. Fuzzing
  • 23. VAMOS PENSAR UM POUCO? “- aquele que conhece o inimigo e a si mesmo, lutará cem batalhas sem perigo de derrota; - para aquele que não conhece o inimigo, mas conhece a si mesmo, as chances para a vitória ou para a derrota serão iguais; - aquele que não conhece nem o inimigo e nem a si próprio, será derrotado em todas as batalhas.” Sun Tzu (A arte da Guerra)
  • 25. Estou pronto? • Simulado de prova – será disponibilizado no Telegram • Grupo de dúvidas – t.me/devsecica

Notas do Editor

  1. Page 1
  2. Page 2
  3. Objetivos Explicar a importância do Princípio de Kerckhoff, Manejo de Chaves e Aleatoriedade. Descrever a criptografia de chave pública, ataques de homem do meio e certificados. Reconhecer as ameaças a SSL/TLS/HTTPS. Aplicar HTTPS corretamente.
  4. Especificação 6.1.1 Explicar a importância do Princípio de Kerckhoffs, do Gerenciamento de Chave e da Aleatoriedade. Discutir o princípio de Kerckhoffs. Ver a seção 6 do workbook. Explicar os termos de Criptografia - Confidencialidade - Integridade - Autenticação - Não Repúdio - Assinatura Digital
  5. Especificação: 6.2.1 Descrever a Criptografia de Chave Pública, Ataque do Homem-do-Meio e Certificados. Discutir a simetria e assimetria criptográfica. Ver as seções 6.1 e 6.2 do Workbook. - Explicar as Diferenças da Criptografia Simétrica e Assimétrica - Explicar as Diferenças entre chave secreta e chave pública - Algoritmo de criptografia. - Ataque Homem-do-Meio ou Man-In-The-Middle - Certificado Digital, Assinatura Digital e Autoridade Certificadora
  6. Especificação: 6.3.1 Reconhecer as ameaças ao SSL/TLS/HTTPS. 6.3.2 Aplicar corretamente o HTTPS . Discutir o HTTPS como uma medida contra acesso não autorizado. Mostrar exemplos de certificados HTTP e discutir autoridades confiáveis. Veja a seção 6.3 do Workbook. - Explicar a diferença entre HTTP e HTTPS. - HTTPS é um protocolo para criptografar uma conexão e autenticar a parte remota, baseado em chave pública. - Erros do HTTPS
  7. HSTS - HTTP Strict Transport Security, recorda um certificado de servidor e recusa qualquer comunicação se aquele servidor não for usado.
  8. Especificação: 6.3.2 Aplicar corretamente o HTTPS. Completar o treinamento com uma atribuição que permite que os candidatos possam mostrar que eles podem aplicar corretamente o HTTPS. Resposta - C
  9. Objetivos Identificar requisitos de segurança em falta. Reconhecer ambiguidades e pressupostos ocultos em determinadas condições e contextos. Reconhecer ameaças que são inerentes a uma arquitetura específica. Reconhecer soluções adequadas a ameaças e as imperfeições nessas soluções. Reconhecer o escopo, objetivo e vantagens da revisão de código para as práticas de desenvolvimento. Lembrar diferentes métodos para testes de segurança. Reconhecer o melhor teste para um determinado cenário. Identificar formas de melhorar o desenvolvimento de software e processos de testes, incorporando resultados de testes.
  10. Especificações 7.1.1 Identificar requisitos de segurança que estão faltando. missing security requirements. 7.1.2 Reconhecer suposições ocultas e ambiguidades em determinados requisitos e contextos. Discutir que os requisitos de segurança geralmente não são solicitados pelo cliente, mas ainda assim são importantes. Explicar as fases de Engenharia de Software Seguro: Requisitos de Software Seguro, fase em que os requisitos de segurança são esquecidos Projeto Implementação Verificação Discutir utilizando STRIDE para encontrar requisitos de segurança necessários. S - Forjamento de Identidade / Requisito de Segurança: Autenticação, uso de senhas T – Adulteração de Dados / Requisito de Segurança: Integridade, manipulação ou validação de entrada R – Rejeição / Requisito de Segurança: não rejeição, registro I – Divulgação de Informações / Requisito de Segurança: confidencialidade, criptografia D – Recusa de Serviço / Requisito de Segurança: disponibilidade, limitar o consumo de recursos E – Elevação de Privilégios / Requisito de Segurança: Autorização, realizar verificações de autorização
  11. Especificações 7.1.1 Identificar requisitos de segurança que estão faltando. missing security requirements. 7.1.2 Reconhecer suposições ocultas e ambiguidades em determinados requisitos e contextos. Discutir que os requisitos de segurança geralmente não são solicitados pelo cliente, mas ainda assim são importantes. Explicar as fases de Engenharia de Software Seguro: Requisitos de Software Seguro, fase em que os requisitos de segurança são esquecidos Projeto Implementação Verificação Discutir utilizando STRIDE para encontrar requisitos de segurança necessários. S - Forjamento de Identidade / Requisito de Segurança: Autenticação, uso de senhas T – Adulteração de Dados / Requisito de Segurança: Integridade, manipulação ou validação de entrada R – Rejeição / Requisito de Segurança: não rejeição, registro I – Divulgação de Informações / Requisito de Segurança: confidencialidade, criptografia D – Recusa de Serviço / Requisito de Segurança: disponibilidade, limitar o consumo de recursos E – Elevação de Privilégios / Requisito de Segurança: Autorização, realizar verificações de autorização
  12. Especificações: 7.2.1 Reconhecer as ameaças que são inerentes à determinada arquitetura. 7.2.2 Reconhecer soluções apropriadas para ameaças e as imperfeições dessas soluções. Discutir sobre o diagrama de fluxo de e os limites de confiança como parte do design seguro. Veja a seção 7.2 do Workbook. Explicar o exemplo do DFD – Diagrama de Fluxo de Dados Retangulo Setas Circulo
  13. Especificação 7.3.1 Identificar o escopo, objetivos e vantagens da revisão de código como prática de desenvolvimento. Discutir os princípios de codificação segura. Ver a seção 7.3 do Workbook. Enumeração das Fraquezas Comuns de Projeto - CWE - CAPEC – ataque comum padrao de enumeração e classificação, possui mais de 500 padrões de ataque Revisões de Código - Padrão de Codificação Segura Ferramentas de Análise Estática Verificam o fluxo de dados Precisam de personalização
  14. Especificações: 7.4.1 Relembrar os diferentes métodos para testes de segurança. 7.4.2 Reconhecer o melhor teste para um determinado cenário. 7.4.3 Identificar meios para melhorar o processo de desenvolvimento e testes de software para incorporar descobertas dos testes. Discutir medidas de teste para o desenvolvimento seguro de software. Ver a seção 7.4 do Workbook. Teste de Penetração ou PenTest Tentar atacar o sistema antes dos invasores tentarem Teste de Abuso - Teste de segurança específico de um aplicativo, com um especialista naquela tecnologia do sistema Varredura de Vulnerabilidade Uso de ferramentas para identificar ou escanear as vulnerabilidades Escaneamento para endurecimento e para cross-site-scripting Economizam tempo, porém não detecta todas as vulnerabilidades, é preciso combinar com outros tipos de testes de segurança Fuzzing Recebe uma entrada para ver o comportamento do aplicativo A entrada de teste pode ser gerada por um gerador, tem um mecanismo para garantir que o sistema processe a entrada Tem um monitor que observa como o sistema responde Tem um agente que pode reiniciar o sistema ou recuperar após um incidente Pode executar por muito tempo e executar muitos casos de teste Testes de Feedback - Fornecem redes seguras em diferentes ponto no processo de desenvolvimento de software
  15. Revisar em grupo todos os assuntos e termos deste módulo.
  16. Resposta - D
  17. Revisar de forma estruturada todos os tópicos previstos (dias 1 e 2) Aplicar e corrigir o simulado (debater os não-acertos e dúvidas)