SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
Além do HTTPS
Como (tentar) Aumentar a Segurança
de seu Website e Aplicação Web
jeronimo.zucco@owasp.org
@jczucco
Sobre mim
• Blog: http://jczucco.blogspot.com
• Twitter: @jczucco
• http://www.linkedin.com/in/jeronimozucco
• Membro OWASP Capítulo Porto Alegre
• http://www.owasp.org/index.php/
User:Jeronimo_Zucco
• Algumas certificações na área de segurança
2
3
Fonte: http://www.wsj.com/articles/SB10001424053111903480904576512250915629460
4
5
6
7
Proteção na Camada de Transporte
8
•Confidencialidade
•Autenticidade
•Integridade
TLS
9
SSL
10Fonte: Trustwave
Versões do Protocol SSL/TLS
• SSL v1, SSL v2, SSL v3 - Não usar
• TLS 1.0 - “ok”
• TLS 1.1 - Ataques práticos atualmente não
conhecidos
• TLS 1.2 - Melhor opção atualmente
11
Fonte: AppSec EU15 - Jim Manico
Ataques relevantes ao TLS
• 2011 BEAST
• Atualize para o TLS 1.1
• Use RC4 para protocolos antigos
• 2012 CRIME
• Não use compressão de TLS
• 2013 BREACH
• Baseado no CRIME, mas compressão
HTTP
12
Ataques relevantes ao TLS
• 2014 HeartBleed
• Requisições “heart beat” que
exploravam a memória do servidor
• 2015 Freak, Logjam
• Downgrade e abuso do protocolo
(DHE < 1024)
• OpenSSL 09/Jul/2015
13
Heartbleed
14
Problemas com as ACs
• Comprometidas
• 2010 - Stuxnet (Realtek, JMicron)
• 2011 - DigiNotar, GlobalSign, Comodo
• 2011, 2015 - Duqu 1.0 e Duqu 2.0
• Abusos
• 2012 - Trustwave man-in-the-middle
• 2012 - Turkish CA Gmail impersonation
• 2013 - CA Francesa Gmail impersonation
• 2015 - IBM Superfish, CA abuse
15
Baseline de Certificados
(Chrome 42)
• SHA-1: inseguro
• Use CAs e certificados assinados com >
SHA-256 *
• Certificados restritos até 3 anos de
validade a partir de abril/2015 **
16
Fonte: http://googleonlinesecurity.blogspot.com.br/2014/09/gradually-sunsetting-sha-1.html
https://support.servertastic.com/ssl-certificates-to-be-restricted-to-3-year-validity-from-april-2015/
Certificados são caros
17
TLS é Lento
https://istlsfastyet.com
18
Caches e Filtros
• Uso de CDNs (Content Delivery Network)
com suporte à HTTPS
• Filtros de Next Generation Firewalls ou
Agentes
• Bem vindo ao futuro :-)
19
Chrome irá marcar HTTP como
inseguro em breve
• Seguro (HTTPS válido, outras origens
como (*, localhost, *));
• Duvidoso (HTTPS válido mas com recursos
em HTTP, HTTPS válido com erros
menores no TLS);
• Não seguro (broken HTTPS, HTTP).
• Usuários
20
Fonte: https://www.chromium.org/Home/chromium-security/marking-http-as-non-secure
OK, você venceu:
HTTPS (c/TLS)
21
Um Grande Banco…
22
Além do HTTPS
• Strict Transport Security (HSTS)
• Certificate and Public Key Pinning
• Perfect Forward Secrecy (PFS)
• Diffie Hellman Parameters
• OCSP Stapling
• TLS Security Configuration
• SPDY, HTTP 2
• Secure Cookie Flag
• Cabeçalhos adicionais << BÔNUS :-)
23
Além do HTTPS
• Mantenha seus sistemas atualizados
• Monitoramento da disponibilidade
• Monitoramento de performance
• Histórico de performance
• Dependências
• Tráfego criptografado em todo o caminho
• Desenvolvimento seguro
24
Strict Transport Security (HSTS)
• RFC 6797 Nov/2012
• Usuários tendem a usar HTTP
• Website é acessível somente via HTTPS
• Pode ser pré-embutido no browser *
25
* https://hstspreload.appspot.com
Strict Transport Security (HSTS)
26
Certificate and Public Key Pinning
• Detecta quando um impostor com um CA
falso tenta se passar pelo verdadeiro
• Cópia da chave pública; ou
• TOFU (Trust On First Use): Browser, SSH
• RFC 7469 - HPKP: HTTP Public Key Pinning
extension
27
Certificate and Public Key Pinning
28
Perfect Forward Secrecy (PFS)
• Cada sessão HTTPS possui a sua chave
• Se a chave privada vazar, o tráfego
capturado anteriormente não pode ser
descriptografado
• TLS: ECDHE-RSA (27%), ECDHE-ECDSA
(15%)*
29
Fonte: http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html
Diffie Hellman Parameters
• https://weakdh.org
• Troca de chaves TLS < 1024 bits
• DHE_EXPORT ciphers
# openssl dhparam -out dhparam.pem 2048
nginx: ssl_dhparam /etc/ssl/certs/dhparam.pem;
30
OCSP Stapling
• Online Certificate Status Protocol
• Verifica os status de revogação do
certificado
• Mais eficiente que o CRL
• Já envia para o cliente o status do
certificado assinado pela AC durante o TLS
handshake
31
OCSP Stapling
NGINX:
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate certs/full_chaim.pem;
resolver <IP DNS resolver>;
32
TLS Security Configuration (nginx)
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate certs/full_chaim.pem;
resolver <IP DNS resolver>;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers ‘AES128+EECDH:AES128+EDH:!aNULL';
33
TLS Security Configuration
• https://wiki.mozilla.org/Security/Server_Side_TLS
34
Secure Cookie Flag
• O Cookie só poderá ser transmitido em
canais criptografados
• Use também HttpOnly
35
TLS Maturity Model
• Level 1: Chaos (default)
• Level 2: Configuration
• Level 3: application security (mixed
content, app cookies sec)
• Level 4, commitment (HSTS)
• Level 5: robust security (public key
pinning)
36
Cabeçalhos Adicionais
• X-Frame-Options SAMEORIGIN
• Proteção contra Clickjacking
• X-XSS-Protection ‘1; mode=block’
• Habilita a proteção contra XSS nos
browsers modernos (opção default)
• X-Content-Type-Options nosniff
• IE8 E Chrome previne MIME-sniffing
37
CSP - Content Security Policy
38
CSP - Content Security Policy
• Reduz o risco de XSS
• Declara quais recursos dinâmicos são
permitidos e suas origens
• JavaScript, CSS, HTML frames, fonts,
images, Java applets, ActiveX, audio e
video files.
• Content-Security-Policy
• Content-Security-Policy-Report-Only
39
CSP - Content Security Policy
40
CSP - Content Security Policy
41
42Fonte: SSLLabs https://www.ssllabs.com/ssltest/clients.html
O que fazer?
• Se prepare para um mundo HTTPS-only
• Atualize seu servers
• Implemente HSTS
• Use Perfect Forward Secrecy
• Configure o TLS de forma segura (ciphers,
OCSP
• Use Certificate Pinning
43
O que fazer?
• Não use RC4 e RSA
• Avalie os Browsers utilizados por seus
usuários
• Implemente cabeçalhos adicionais
• Implemente CSP
• SPDY -> HTTP 2
• Desenvolvimento Seguro = OWASP
44
PERGUNTAS?
OBRIGADO!
JERONIMO.ZUCO@OWASP.ORG
@JCZUCCO

Contenu connexe

Tendances

Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia Ladislau
Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia LadislauMonitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia Ladislau
Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia LadislauPatricia Ladislau Silva
 
Monitorando ativos com Zabbix
Monitorando ativos com ZabbixMonitorando ativos com Zabbix
Monitorando ativos com ZabbixZabbix BR
 
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do Interior
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do InteriorPrimeiros passos com a API do Zabbix - 3º Zabbix Meetup do Interior
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do InteriorZabbix BR
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbixRafael Gomes
 
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0aristotelesaraujo
 
Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2Jose Augusto Carvalho
 
Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...
 Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In... Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...
Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...Zabbix BR
 
Apresentacao zabbix
Apresentacao zabbixApresentacao zabbix
Apresentacao zabbixDaniel Peres
 
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SPMonitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SPZabbix BR
 
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2SNMP/Zabbix - Vulnerabilidades e Contramedidas 2
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2Aécio Pires
 
Monitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixMonitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixRenato Batista
 
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...Werneck Costa
 
Monitoramento Inteligente utilizando o ZABBIX
Monitoramento Inteligente utilizando o ZABBIXMonitoramento Inteligente utilizando o ZABBIX
Monitoramento Inteligente utilizando o ZABBIXLuiz Andrade
 
Integração do Zabbix com Grafana
Integração do Zabbix com GrafanaIntegração do Zabbix com Grafana
Integração do Zabbix com GrafanaAécio Pires
 
Gerenciamento de Redes com Zabbix
Gerenciamento de Redes com ZabbixGerenciamento de Redes com Zabbix
Gerenciamento de Redes com ZabbixAndré Déo
 
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP Brasília
 
Projeto Zabbix: Conhecendo a ferramenta
Projeto Zabbix: Conhecendo a ferramentaProjeto Zabbix: Conhecendo a ferramenta
Projeto Zabbix: Conhecendo a ferramentaAécio Pires
 
Meu Cliente não permite DevOps. E agora?
Meu Cliente não permite DevOps. E agora?Meu Cliente não permite DevOps. E agora?
Meu Cliente não permite DevOps. E agora?Everton Tavares
 
Monitoramento de Redes com Zabbix
Monitoramento de Redes com ZabbixMonitoramento de Redes com Zabbix
Monitoramento de Redes com ZabbixThiago Finardi
 

Tendances (20)

Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia Ladislau
Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia LadislauMonitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia Ladislau
Monitoramento e Gerenciamento de Infraestrutura com Zabbix - Patrícia Ladislau
 
Monitorando ativos com Zabbix
Monitorando ativos com ZabbixMonitorando ativos com Zabbix
Monitorando ativos com Zabbix
 
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do Interior
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do InteriorPrimeiros passos com a API do Zabbix - 3º Zabbix Meetup do Interior
Primeiros passos com a API do Zabbix - 3º Zabbix Meetup do Interior
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbix
 
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
 
Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2Monitoração avançada com Zabbix 2
Monitoração avançada com Zabbix 2
 
Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...
 Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In... Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...
Zabbix?!? Sou Dev, o que eu tenho a ver com isso?!? - 3º Zabbix Meetup do In...
 
Apresentacao zabbix
Apresentacao zabbixApresentacao zabbix
Apresentacao zabbix
 
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SPMonitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
 
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2SNMP/Zabbix - Vulnerabilidades e Contramedidas 2
SNMP/Zabbix - Vulnerabilidades e Contramedidas 2
 
Monitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixMonitoramento Opensource com Zabbix
Monitoramento Opensource com Zabbix
 
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
 
Monitoramento Inteligente utilizando o ZABBIX
Monitoramento Inteligente utilizando o ZABBIXMonitoramento Inteligente utilizando o ZABBIX
Monitoramento Inteligente utilizando o ZABBIX
 
Integração do Zabbix com Grafana
Integração do Zabbix com GrafanaIntegração do Zabbix com Grafana
Integração do Zabbix com Grafana
 
Gerenciamento de Redes com Zabbix
Gerenciamento de Redes com ZabbixGerenciamento de Redes com Zabbix
Gerenciamento de Redes com Zabbix
 
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
 
Projeto Zabbix: Conhecendo a ferramenta
Projeto Zabbix: Conhecendo a ferramentaProjeto Zabbix: Conhecendo a ferramenta
Projeto Zabbix: Conhecendo a ferramenta
 
Palestra Zabbix no 12 Geinfo (2013)
Palestra Zabbix no 12 Geinfo (2013)Palestra Zabbix no 12 Geinfo (2013)
Palestra Zabbix no 12 Geinfo (2013)
 
Meu Cliente não permite DevOps. E agora?
Meu Cliente não permite DevOps. E agora?Meu Cliente não permite DevOps. E agora?
Meu Cliente não permite DevOps. E agora?
 
Monitoramento de Redes com Zabbix
Monitoramento de Redes com ZabbixMonitoramento de Redes com Zabbix
Monitoramento de Redes com Zabbix
 

En vedette

[Cluj] Turn SSL ON
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ONOWASP EEE
 
[Austria] ZigBee exploited
[Austria] ZigBee exploited[Austria] ZigBee exploited
[Austria] ZigBee exploitedOWASP EEE
 
A NSA me segue (e a CIA também!)
A NSA me segue (e a CIA também!)A NSA me segue (e a CIA também!)
A NSA me segue (e a CIA também!)Anchises Moraes
 
No Easy Breach DerbyCon 2016
No Easy Breach DerbyCon 2016No Easy Breach DerbyCon 2016
No Easy Breach DerbyCon 2016Matthew Dunwoody
 

En vedette (6)

Owasp top 10 2013
Owasp top 10 2013Owasp top 10 2013
Owasp top 10 2013
 
Implementing ossec
Implementing ossecImplementing ossec
Implementing ossec
 
[Cluj] Turn SSL ON
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ON
 
[Austria] ZigBee exploited
[Austria] ZigBee exploited[Austria] ZigBee exploited
[Austria] ZigBee exploited
 
A NSA me segue (e a CIA também!)
A NSA me segue (e a CIA também!)A NSA me segue (e a CIA também!)
A NSA me segue (e a CIA também!)
 
No Easy Breach DerbyCon 2016
No Easy Breach DerbyCon 2016No Easy Breach DerbyCon 2016
No Easy Breach DerbyCon 2016
 

Similaire à Além do HTTPS: Como Aumentar a Segurança de seu Website

Mule pe salesforce mule security
Mule pe   salesforce mule securityMule pe   salesforce mule security
Mule pe salesforce mule securityJeison Barros
 
Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Euler Neto
 
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...Deep Tech Brasil
 
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosLuis Cipriani
 
Explicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkExplicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkEuler Neto
 
Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Jeff Prestes
 
HTTPS com TLS em Modo RSA
HTTPS com TLS em Modo RSAHTTPS com TLS em Modo RSA
HTTPS com TLS em Modo RSARudá Moura
 
PHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIsPHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIsiMasters
 
Autenticacao em APIs com SSL
Autenticacao em APIs com SSLAutenticacao em APIs com SSL
Autenticacao em APIs com SSLMarcelo Milhomem
 
http https Professor Marlon Sales
http https Professor Marlon Saleshttp https Professor Marlon Sales
http https Professor Marlon Salesmarloninternet
 
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2Rodrigo Cândido da Silva
 
TDC 2015 - Segurança em Recursos RESTful com OAuth2
TDC 2015 - Segurança em Recursos RESTful com OAuth2TDC 2015 - Segurança em Recursos RESTful com OAuth2
TDC 2015 - Segurança em Recursos RESTful com OAuth2Rodrigo Cândido da Silva
 
Apresentação VII Secomp e 3º Seel - Jataí - GO
Apresentação VII Secomp e 3º Seel - Jataí - GOApresentação VII Secomp e 3º Seel - Jataí - GO
Apresentação VII Secomp e 3º Seel - Jataí - GOFernando Soares
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Jeronimo Zucco
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Clavis Segurança da Informação
 
Joomla!, SSL e um pouco sobre segurança
Joomla!, SSL e um pouco sobre segurançaJoomla!, SSL e um pouco sobre segurança
Joomla!, SSL e um pouco sobre segurançaFernando Soares
 
Certificados Digitais x509
Certificados Digitais x509Certificados Digitais x509
Certificados Digitais x509Natanael Fonseca
 

Similaire à Além do HTTPS: Como Aumentar a Segurança de seu Website (20)

Mule pe salesforce mule security
Mule pe   salesforce mule securityMule pe   salesforce mule security
Mule pe salesforce mule security
 
Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)
 
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
 
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
 
Explicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkExplicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando Wireshark
 
Segurança em Angular SPA
Segurança em Angular SPASegurança em Angular SPA
Segurança em Angular SPA
 
Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6
 
HTTPS com TLS em Modo RSA
HTTPS com TLS em Modo RSAHTTPS com TLS em Modo RSA
HTTPS com TLS em Modo RSA
 
PHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIsPHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIs
 
Autenticacao em APIs com SSL
Autenticacao em APIs com SSLAutenticacao em APIs com SSL
Autenticacao em APIs com SSL
 
Certificados SSL e Let's Encrypt
Certificados SSL e Let's EncryptCertificados SSL e Let's Encrypt
Certificados SSL e Let's Encrypt
 
Aula 1
Aula 1Aula 1
Aula 1
 
http https Professor Marlon Sales
http https Professor Marlon Saleshttp https Professor Marlon Sales
http https Professor Marlon Sales
 
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2
JavaOne LATAM 2015 - Segurança em Recursos RESTful com OAuth2
 
TDC 2015 - Segurança em Recursos RESTful com OAuth2
TDC 2015 - Segurança em Recursos RESTful com OAuth2TDC 2015 - Segurança em Recursos RESTful com OAuth2
TDC 2015 - Segurança em Recursos RESTful com OAuth2
 
Apresentação VII Secomp e 3º Seel - Jataí - GO
Apresentação VII Secomp e 3º Seel - Jataí - GOApresentação VII Secomp e 3º Seel - Jataí - GO
Apresentação VII Secomp e 3º Seel - Jataí - GO
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
 
Joomla!, SSL e um pouco sobre segurança
Joomla!, SSL e um pouco sobre segurançaJoomla!, SSL e um pouco sobre segurança
Joomla!, SSL e um pouco sobre segurança
 
Certificados Digitais x509
Certificados Digitais x509Certificados Digitais x509
Certificados Digitais x509
 

Além do HTTPS: Como Aumentar a Segurança de seu Website

  • 1. Além do HTTPS Como (tentar) Aumentar a Segurança de seu Website e Aplicação Web jeronimo.zucco@owasp.org @jczucco
  • 2. Sobre mim • Blog: http://jczucco.blogspot.com • Twitter: @jczucco • http://www.linkedin.com/in/jeronimozucco • Membro OWASP Capítulo Porto Alegre • http://www.owasp.org/index.php/ User:Jeronimo_Zucco • Algumas certificações na área de segurança 2
  • 4. 4
  • 5. 5
  • 6. 6
  • 7. 7
  • 8. Proteção na Camada de Transporte 8 •Confidencialidade •Autenticidade •Integridade
  • 11. Versões do Protocol SSL/TLS • SSL v1, SSL v2, SSL v3 - Não usar • TLS 1.0 - “ok” • TLS 1.1 - Ataques práticos atualmente não conhecidos • TLS 1.2 - Melhor opção atualmente 11 Fonte: AppSec EU15 - Jim Manico
  • 12. Ataques relevantes ao TLS • 2011 BEAST • Atualize para o TLS 1.1 • Use RC4 para protocolos antigos • 2012 CRIME • Não use compressão de TLS • 2013 BREACH • Baseado no CRIME, mas compressão HTTP 12
  • 13. Ataques relevantes ao TLS • 2014 HeartBleed • Requisições “heart beat” que exploravam a memória do servidor • 2015 Freak, Logjam • Downgrade e abuso do protocolo (DHE < 1024) • OpenSSL 09/Jul/2015 13
  • 15. Problemas com as ACs • Comprometidas • 2010 - Stuxnet (Realtek, JMicron) • 2011 - DigiNotar, GlobalSign, Comodo • 2011, 2015 - Duqu 1.0 e Duqu 2.0 • Abusos • 2012 - Trustwave man-in-the-middle • 2012 - Turkish CA Gmail impersonation • 2013 - CA Francesa Gmail impersonation • 2015 - IBM Superfish, CA abuse 15
  • 16. Baseline de Certificados (Chrome 42) • SHA-1: inseguro • Use CAs e certificados assinados com > SHA-256 * • Certificados restritos até 3 anos de validade a partir de abril/2015 ** 16 Fonte: http://googleonlinesecurity.blogspot.com.br/2014/09/gradually-sunsetting-sha-1.html https://support.servertastic.com/ssl-certificates-to-be-restricted-to-3-year-validity-from-april-2015/
  • 19. Caches e Filtros • Uso de CDNs (Content Delivery Network) com suporte à HTTPS • Filtros de Next Generation Firewalls ou Agentes • Bem vindo ao futuro :-) 19
  • 20. Chrome irá marcar HTTP como inseguro em breve • Seguro (HTTPS válido, outras origens como (*, localhost, *)); • Duvidoso (HTTPS válido mas com recursos em HTTP, HTTPS válido com erros menores no TLS); • Não seguro (broken HTTPS, HTTP). • Usuários 20 Fonte: https://www.chromium.org/Home/chromium-security/marking-http-as-non-secure
  • 23. Além do HTTPS • Strict Transport Security (HSTS) • Certificate and Public Key Pinning • Perfect Forward Secrecy (PFS) • Diffie Hellman Parameters • OCSP Stapling • TLS Security Configuration • SPDY, HTTP 2 • Secure Cookie Flag • Cabeçalhos adicionais << BÔNUS :-) 23
  • 24. Além do HTTPS • Mantenha seus sistemas atualizados • Monitoramento da disponibilidade • Monitoramento de performance • Histórico de performance • Dependências • Tráfego criptografado em todo o caminho • Desenvolvimento seguro 24
  • 25. Strict Transport Security (HSTS) • RFC 6797 Nov/2012 • Usuários tendem a usar HTTP • Website é acessível somente via HTTPS • Pode ser pré-embutido no browser * 25 * https://hstspreload.appspot.com
  • 27. Certificate and Public Key Pinning • Detecta quando um impostor com um CA falso tenta se passar pelo verdadeiro • Cópia da chave pública; ou • TOFU (Trust On First Use): Browser, SSH • RFC 7469 - HPKP: HTTP Public Key Pinning extension 27
  • 28. Certificate and Public Key Pinning 28
  • 29. Perfect Forward Secrecy (PFS) • Cada sessão HTTPS possui a sua chave • Se a chave privada vazar, o tráfego capturado anteriormente não pode ser descriptografado • TLS: ECDHE-RSA (27%), ECDHE-ECDSA (15%)* 29 Fonte: http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html
  • 30. Diffie Hellman Parameters • https://weakdh.org • Troca de chaves TLS < 1024 bits • DHE_EXPORT ciphers # openssl dhparam -out dhparam.pem 2048 nginx: ssl_dhparam /etc/ssl/certs/dhparam.pem; 30
  • 31. OCSP Stapling • Online Certificate Status Protocol • Verifica os status de revogação do certificado • Mais eficiente que o CRL • Já envia para o cliente o status do certificado assinado pela AC durante o TLS handshake 31
  • 32. OCSP Stapling NGINX: ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate certs/full_chaim.pem; resolver <IP DNS resolver>; 32
  • 33. TLS Security Configuration (nginx) ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate certs/full_chaim.pem; resolver <IP DNS resolver>; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_ciphers ‘AES128+EECDH:AES128+EDH:!aNULL'; 33
  • 34. TLS Security Configuration • https://wiki.mozilla.org/Security/Server_Side_TLS 34
  • 35. Secure Cookie Flag • O Cookie só poderá ser transmitido em canais criptografados • Use também HttpOnly 35
  • 36. TLS Maturity Model • Level 1: Chaos (default) • Level 2: Configuration • Level 3: application security (mixed content, app cookies sec) • Level 4, commitment (HSTS) • Level 5: robust security (public key pinning) 36
  • 37. Cabeçalhos Adicionais • X-Frame-Options SAMEORIGIN • Proteção contra Clickjacking • X-XSS-Protection ‘1; mode=block’ • Habilita a proteção contra XSS nos browsers modernos (opção default) • X-Content-Type-Options nosniff • IE8 E Chrome previne MIME-sniffing 37
  • 38. CSP - Content Security Policy 38
  • 39. CSP - Content Security Policy • Reduz o risco de XSS • Declara quais recursos dinâmicos são permitidos e suas origens • JavaScript, CSS, HTML frames, fonts, images, Java applets, ActiveX, audio e video files. • Content-Security-Policy • Content-Security-Policy-Report-Only 39
  • 40. CSP - Content Security Policy 40
  • 41. CSP - Content Security Policy 41
  • 43. O que fazer? • Se prepare para um mundo HTTPS-only • Atualize seu servers • Implemente HSTS • Use Perfect Forward Secrecy • Configure o TLS de forma segura (ciphers, OCSP • Use Certificate Pinning 43
  • 44. O que fazer? • Não use RC4 e RSA • Avalie os Browsers utilizados por seus usuários • Implemente cabeçalhos adicionais • Implemente CSP • SPDY -> HTTP 2 • Desenvolvimento Seguro = OWASP 44