SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
O Poder dos X-­‐Headers. 
U/lizando Headers HTTP para proteção Contra 
vulnerabilidades em WEB APP. 
By 
William 
Costa
William Costa 
Consultor 
em 
Segurança 
da 
Informação. 
CISSP, 
C|EH, 
E|CSA, 
CPT, 
CEPT, 
LPI.
TOP 10 OWASP 
• OWASP 
Top 
10 
– 
2013 
• A1 
– 
InjecJon 
• A2 
– 
Broken 
AuthenJcaJon 
and 
Session 
Management 
• A3 
– 
Cross-­‐Site 
Scrip0ng 
(XSS) 
• A4 
– 
Insecure 
Direct 
Object 
References 
• A5 
– 
Security 
MisconfiguraJon 
• A6 
– 
SensiJve 
Data 
Exposure 
• A7 
– 
Missing 
FuncJon 
Level 
Access 
Control 
• A8 
– 
Cross-­‐Site 
Request 
Forgery 
(CSRF) 
• A9 
– 
Using 
Known 
Vulnerable 
Components 
• A10 
– 
Unvalidated 
Redirects 
and 
Forwards
Headers HTTP/1.1 
Cliente 
Servidor
RFC 6648 
O 
Uso 
do 
X 
no 
inicio 
de 
alguns 
Headers 
idenJficam 
que 
são 
cabeçalhos 
não 
padronizados.
Nossos X-­‐Headers 
Response 
Headers 
(Server 
> 
Client) 
• X-­‐Frame-­‐OpJons 
• X-­‐XSS-­‐ProtecJon 
• Strict-­‐Transport-­‐Security 
• X-­‐Content-­‐Security-­‐Policy 
• X-­‐Content-­‐Type-­‐OpJons 
Request 
Headers 
(Client 
> 
Server) 
• Referer 
• X-­‐?
X-­‐Frame-­‐Op/ons vs. Clickjacking 
• O 
cabeçalho 
de 
resposta 
HTTP 
X-­‐ 
Frame-­‐OpJons 
é 
usado 
para 
indicar 
ou 
não 
ao 
navegador 
se 
deve 
ser 
autorizado 
a 
carregar 
a 
página 
dentro 
de 
um 
<frame>, 
<iframe> 
ou 
<object>. 
Podendo 
assim 
evitar 
um 
ataque 
de 
Clickjacking 
• DENY 
• SAMEORIGIN 
• ALLOW-­‐FROM 
uri 
Suportado 
por:
X-­‐XSS-­‐Protec/on vs. XSS 
• Este 
cabeçalho 
permite 
habilitar 
o 
filtro 
de 
Cross-­‐site 
scripJng 
(XSS) 
incorporado 
na 
maioria 
dos 
navegadores. 
Geralmente 
é 
aJvado 
por 
padrão, 
então 
o 
papel 
deste 
cabeçalho 
é 
re-­‐aJvar 
o 
filtro 
para 
este 
site 
específico 
se 
ele 
foi 
desaJvado 
pelo 
usuário. 
• 0 
(Disable) 
• 1 
(Enable) 
• 
1; 
mode=block 
(Não 
carrega 
o 
script) 
Suportado 
por:
Strict-­‐Transport-­‐Security vs. Man-­‐in-­‐the-­‐middle 
• Este 
cabeçalho 
força 
a 
comunicação 
entre 
cliente 
e 
servidor 
sempre 
via 
HTTPS, 
HSTS 
também 
desaJva 
a 
capacidade 
do 
usuário 
de 
ignorar 
os 
avisos 
de 
negociação 
SSL. 
• max-­‐age 
(durante 
esse 
periodo 
só 
vai 
aceitar 
conexões 
hrps) 
• includeSubDomains 
Suportado 
por:
(X)-­‐Content-­‐Security-­‐Policy vs. Code Injec/on, 
XSS 
• Content 
Security 
Policy 
(CSP) 
hoje 
já 
é 
um 
Header 
padrão 
e 
uma 
camada 
extra 
de 
segurança 
que 
ajuda 
e 
miJgar 
o 
impacto 
de 
certos 
Jpos 
de 
ataques, 
incluindo 
Cross 
Site 
ScripJng 
(XSS) 
e 
ataques 
de 
injeção 
de 
dados. 
• script-­‐src 
• object-­‐src 
• style-­‐src 
• img-­‐src 
• media-­‐src 
• frame-­‐src 
• font-­‐src 
• … 
Suportado 
por:
X-­‐Content-­‐Type-­‐Op/ons vs. Mime AXacks XSS 
• X-­‐Content-­‐Type-­‐OpJons 
informa 
ao 
browser 
para 
não 
tentar 
adivinhar 
o 
Jpo 
de 
arquivo 
baseado 
no 
conteúdo. 
• nosniff 
Suportado 
por:
Referer vs. CSRF 
• Referer 
é 
um 
cabeçalho 
enviado 
pelo 
browser 
informando 
de 
onde 
originou 
a 
requisição. 
• ( 
absoluteURI 
| 
relaJveURI 
) 
Suportado 
por: 
Send 
in 
Request
X vs. X-­‐Vulnerability 
• Podemos 
uJlizar 
um 
Header 
Request 
para 
proteção 
de 
várias 
vulnerabilidades, 
como 
validar 
um 
token 
de 
CSRF 
... 
... 
• ? 
Suportado 
por:
Conclução 
• Os 
cabeçalhos 
do 
HTTP 
podem 
ser 
usados 
não 
como 
unica 
fonte 
de 
miJgar 
as 
vulnerabilidades 
WEBs, 
mas, 
são 
uma 
ferramenta 
para 
dificultar 
a 
exploração 
de 
uma 
falha.
<script>alert(String(/Perguntas?/).substr(1,10) ); </script> 
william.costa arroba gmail.com 
hXps://twiXer.com/willcosta

Weitere ähnliche Inhalte

Ähnlich wie Proteção contra vulnerabilidades usando X-Headers HTTP

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
 
Apresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazApresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazOWASP Brasília
 
OWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP Brasília
 
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoS
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoSArquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoS
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoSDiogo Guedes
 
Melhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingMelhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingDaniel Checchia
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesClavis Segurança da Informação
 
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (..."Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...WeOp - The Operations Summit
 
Mule pe salesforce mule security
Mule pe   salesforce mule securityMule pe   salesforce mule security
Mule pe salesforce mule securityJeison Barros
 
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Bruno Castelucci
 
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
 
Técnicas de Programação para a Web
Técnicas de Programação para a WebTécnicas de Programação para a Web
Técnicas de Programação para a WebLuiz Cláudio Silva
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...Cleber Dantas
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsHoracio Ibrahim
 

Ähnlich wie Proteção contra vulnerabilidades usando X-Headers HTTP (20)

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...
 
Apresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazApresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio Braz
 
OWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHA
 
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
 
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoS
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoSArquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoS
Arquitetura de Segurança utilizando Computação em Nuvem - Proteção DDoS
 
Mulesoft Meetup Latam Summit Brazil
Mulesoft Meetup Latam Summit BrazilMulesoft Meetup Latam Summit Brazil
Mulesoft Meetup Latam Summit Brazil
 
Melhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingMelhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud Computing
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
 
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (..."Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
 
Mule pe salesforce mule security
Mule pe   salesforce mule securityMule pe   salesforce mule security
Mule pe salesforce mule security
 
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
 
Site invadido
Site invadidoSite invadido
Site invadido
 
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
 
Java Web, o Tutorial
Java Web, o TutorialJava Web, o Tutorial
Java Web, o Tutorial
 
Técnicas de Programação para a Web
Técnicas de Programação para a WebTécnicas de Programação para a Web
Técnicas de Programação para a Web
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Hardening Unix
Hardening UnixHardening Unix
Hardening Unix
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_ics
 

Proteção contra vulnerabilidades usando X-Headers HTTP

  • 1. O Poder dos X-­‐Headers. U/lizando Headers HTTP para proteção Contra vulnerabilidades em WEB APP. By William Costa
  • 2. William Costa Consultor em Segurança da Informação. CISSP, C|EH, E|CSA, CPT, CEPT, LPI.
  • 3. TOP 10 OWASP • OWASP Top 10 – 2013 • A1 – InjecJon • A2 – Broken AuthenJcaJon and Session Management • A3 – Cross-­‐Site Scrip0ng (XSS) • A4 – Insecure Direct Object References • A5 – Security MisconfiguraJon • A6 – SensiJve Data Exposure • A7 – Missing FuncJon Level Access Control • A8 – Cross-­‐Site Request Forgery (CSRF) • A9 – Using Known Vulnerable Components • A10 – Unvalidated Redirects and Forwards
  • 5. RFC 6648 O Uso do X no inicio de alguns Headers idenJficam que são cabeçalhos não padronizados.
  • 6. Nossos X-­‐Headers Response Headers (Server > Client) • X-­‐Frame-­‐OpJons • X-­‐XSS-­‐ProtecJon • Strict-­‐Transport-­‐Security • X-­‐Content-­‐Security-­‐Policy • X-­‐Content-­‐Type-­‐OpJons Request Headers (Client > Server) • Referer • X-­‐?
  • 7. X-­‐Frame-­‐Op/ons vs. Clickjacking • O cabeçalho de resposta HTTP X-­‐ Frame-­‐OpJons é usado para indicar ou não ao navegador se deve ser autorizado a carregar a página dentro de um <frame>, <iframe> ou <object>. Podendo assim evitar um ataque de Clickjacking • DENY • SAMEORIGIN • ALLOW-­‐FROM uri Suportado por:
  • 8. X-­‐XSS-­‐Protec/on vs. XSS • Este cabeçalho permite habilitar o filtro de Cross-­‐site scripJng (XSS) incorporado na maioria dos navegadores. Geralmente é aJvado por padrão, então o papel deste cabeçalho é re-­‐aJvar o filtro para este site específico se ele foi desaJvado pelo usuário. • 0 (Disable) • 1 (Enable) • 1; mode=block (Não carrega o script) Suportado por:
  • 9. Strict-­‐Transport-­‐Security vs. Man-­‐in-­‐the-­‐middle • Este cabeçalho força a comunicação entre cliente e servidor sempre via HTTPS, HSTS também desaJva a capacidade do usuário de ignorar os avisos de negociação SSL. • max-­‐age (durante esse periodo só vai aceitar conexões hrps) • includeSubDomains Suportado por:
  • 10. (X)-­‐Content-­‐Security-­‐Policy vs. Code Injec/on, XSS • Content Security Policy (CSP) hoje já é um Header padrão e uma camada extra de segurança que ajuda e miJgar o impacto de certos Jpos de ataques, incluindo Cross Site ScripJng (XSS) e ataques de injeção de dados. • script-­‐src • object-­‐src • style-­‐src • img-­‐src • media-­‐src • frame-­‐src • font-­‐src • … Suportado por:
  • 11. X-­‐Content-­‐Type-­‐Op/ons vs. Mime AXacks XSS • X-­‐Content-­‐Type-­‐OpJons informa ao browser para não tentar adivinhar o Jpo de arquivo baseado no conteúdo. • nosniff Suportado por:
  • 12. Referer vs. CSRF • Referer é um cabeçalho enviado pelo browser informando de onde originou a requisição. • ( absoluteURI | relaJveURI ) Suportado por: Send in Request
  • 13. X vs. X-­‐Vulnerability • Podemos uJlizar um Header Request para proteção de várias vulnerabilidades, como validar um token de CSRF ... ... • ? Suportado por:
  • 14. Conclução • Os cabeçalhos do HTTP podem ser usados não como unica fonte de miJgar as vulnerabilidades WEBs, mas, são uma ferramenta para dificultar a exploração de uma falha.
  • 15. <script>alert(String(/Perguntas?/).substr(1,10) ); </script> william.costa arroba gmail.com hXps://twiXer.com/willcosta