SlideShare uma empresa Scribd logo
1 de 17
Falsificação de 
solicitação entre 
sites - CSRF 
CROSS-SITE REQUEST FORGERY 
RAFAEL TAVARES ANDRADE TOLEDO
Agenda 
 Historia 
 Conceito 
 Funcionamento 
 Possibilidades de Ataques 
 O Ataque – Exemplo 
 Politica de mesma origem – Same-origin policy 
 A Solução 
 Referências
Historia 
 Primeiros casos 2001. 
 Cerca de 18 milhões de usuários do eBay na Coréia perdeu a 
informação pessoais em fevereiro de 2008. 
 Os clientes de um banco em México foram atacados no início 
de 2008 com uma tag de imagem em e-mail. O link da tag de 
imagem mudou a entrada DNS para o banco em seu roteador 
ADSL para apontar para um site malicioso se passando pelo 
banco
Conceito 
 O Cross-site request forgery é um tipo de exploração 
maliciosa de um website pelo qual comandos não 
autorizados são transmitidos para um site malicioso. Ao 
contrário do XSS, que explora a confiança de um usuário 
para um site particular, o CSRF explora a confiança que um 
site tem no navegador do usuário.
Funcionamento – CSRF
Possibilidades de Ataques 
 Tags 
<img src=“https://bank.com/fn?param=1”> 
<iframe src=“https://bank.com/fn?param=1”> 
<script src=“https://bank.com/fn?param=1”> 
 Posts automáticos em forms 
<body onload="document.forms[0].submit()"> 
<form method="POST" action=“https://bank.com/fn”> 
<input type="hidden" name="sp" value="8109"/> 
</form> 
 XmlHttpRequest 
 Sujeito a politica de mesma origem
O Ataque 
 Alice deseja transferir R$ 100,00 a João usando banco.com.br. 
O pedido gerado por Alice será semelhante ao seguinte: 
 No entanto, percebe que Maria da mesma aplicação web irá executar a 
mesma transferência usando parâmetros de URL da seguinte forma:
O Ataque 
 Maria decide agora para explorar esta vulnerabilidade de 
aplicações web usando Alice como sua vítima. Maria primeiro 
constrói a seguinte URL, que vai transferir R$ 100.000,00 da conta de 
Alice à sua conta: 
 Agora que seu pedido mal-intencionado é gerado, Maria tem 
truque para apresentar o pedido. O método mais básico é o de 
enviar um e-mail HTML para Alice contendo o seguinte:
O Ataque 
 Supondo que Alice esta autenticada com a aplicação, quando 
ela clica no link, a transferência de R$ 100.000 para a conta de 
Maria irá ocorrer. 
 No entanto, Maria percebe que se Alice clica no link, em seguida, 
Alice vai notar que a transferência ocorreu. 
 Por isso, Maria decide esconder o ataque em uma imagem de zero 
bytes:
O Ataque 
 Se essa tag de imagem for incluída no e-mail, Alice só vê uma 
pequena caixa que indica que o navegador não pode processar a 
imagem. No entanto, o navegador continua a enviar a solicitação 
para banco.com.br sem qualquer indicação visual de que 
atransferência tenha ocorrido.
A Solução 
 A solução para o problema de CSRF é gerar uma chave única quando o 
usuário visita a página com o formulário. 
 Vamos definir esta chave na $_SESSION, bem como um campo hidden 
no formulário. 
 Quando o formulário for enviado, vamos verificar a chave armazenada 
na sessão e a chave enviada pelo formulário. Se eles são os mesmos 
então nós sabemos que o usuário submeteu nosso formulário. Se eles não 
são iguais (ou a $_SESSION está vazia), então sabemos que algo nocivo 
está acontecendo e nós podemos seguramente redirecionar o usuário 
(e não tomar nenhuma ação).
Solução
Solução 
 Podemos acrescentar um nível adicional de segurança, certificando-se 
o usuário veio a partir da página que contém o formulário.
Funcionamento – Politica de 
mesma origem 
 A política de mesma origem restringe como um documento ou script 
carregado a partir de uma origem pode interagir com um recurso de 
outra origem.
Funcionamento – Politica de 
mesma origem 
 Mozilla considera duas páginas para ter a mesma origem, se o protocolo, porta (se 
informado), e o host/domínio são os mesmos para ambas as páginas. Para ilustrar, esta 
tabela dá exemplos de comparações origem para o URL 
http://store.company.com/dir/page.html .
Solução 
 RequestPolicy
Referências 
 https://www.w3.org/Security/wiki/Same_Origin_Policy 
 http://www.owasp.org/index.php/Cross-Site_Request_Forgery 
 http://www.cgisecurity.com/articles/csrf-faq.shtml 
 http://www.darkreading.com/document.asp?doc_id=107651&WT.svl 
=news1_2 
HTTP://RAFAELTAVARES.CO/APRESENTACOES

Mais conteúdo relacionado

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Falsificação de solicitação entre sites csrf.html

  • 1. Falsificação de solicitação entre sites - CSRF CROSS-SITE REQUEST FORGERY RAFAEL TAVARES ANDRADE TOLEDO
  • 2. Agenda  Historia  Conceito  Funcionamento  Possibilidades de Ataques  O Ataque – Exemplo  Politica de mesma origem – Same-origin policy  A Solução  Referências
  • 3. Historia  Primeiros casos 2001.  Cerca de 18 milhões de usuários do eBay na Coréia perdeu a informação pessoais em fevereiro de 2008.  Os clientes de um banco em México foram atacados no início de 2008 com uma tag de imagem em e-mail. O link da tag de imagem mudou a entrada DNS para o banco em seu roteador ADSL para apontar para um site malicioso se passando pelo banco
  • 4. Conceito  O Cross-site request forgery é um tipo de exploração maliciosa de um website pelo qual comandos não autorizados são transmitidos para um site malicioso. Ao contrário do XSS, que explora a confiança de um usuário para um site particular, o CSRF explora a confiança que um site tem no navegador do usuário.
  • 6. Possibilidades de Ataques  Tags <img src=“https://bank.com/fn?param=1”> <iframe src=“https://bank.com/fn?param=1”> <script src=“https://bank.com/fn?param=1”>  Posts automáticos em forms <body onload="document.forms[0].submit()"> <form method="POST" action=“https://bank.com/fn”> <input type="hidden" name="sp" value="8109"/> </form>  XmlHttpRequest  Sujeito a politica de mesma origem
  • 7. O Ataque  Alice deseja transferir R$ 100,00 a João usando banco.com.br. O pedido gerado por Alice será semelhante ao seguinte:  No entanto, percebe que Maria da mesma aplicação web irá executar a mesma transferência usando parâmetros de URL da seguinte forma:
  • 8. O Ataque  Maria decide agora para explorar esta vulnerabilidade de aplicações web usando Alice como sua vítima. Maria primeiro constrói a seguinte URL, que vai transferir R$ 100.000,00 da conta de Alice à sua conta:  Agora que seu pedido mal-intencionado é gerado, Maria tem truque para apresentar o pedido. O método mais básico é o de enviar um e-mail HTML para Alice contendo o seguinte:
  • 9. O Ataque  Supondo que Alice esta autenticada com a aplicação, quando ela clica no link, a transferência de R$ 100.000 para a conta de Maria irá ocorrer.  No entanto, Maria percebe que se Alice clica no link, em seguida, Alice vai notar que a transferência ocorreu.  Por isso, Maria decide esconder o ataque em uma imagem de zero bytes:
  • 10. O Ataque  Se essa tag de imagem for incluída no e-mail, Alice só vê uma pequena caixa que indica que o navegador não pode processar a imagem. No entanto, o navegador continua a enviar a solicitação para banco.com.br sem qualquer indicação visual de que atransferência tenha ocorrido.
  • 11. A Solução  A solução para o problema de CSRF é gerar uma chave única quando o usuário visita a página com o formulário.  Vamos definir esta chave na $_SESSION, bem como um campo hidden no formulário.  Quando o formulário for enviado, vamos verificar a chave armazenada na sessão e a chave enviada pelo formulário. Se eles são os mesmos então nós sabemos que o usuário submeteu nosso formulário. Se eles não são iguais (ou a $_SESSION está vazia), então sabemos que algo nocivo está acontecendo e nós podemos seguramente redirecionar o usuário (e não tomar nenhuma ação).
  • 13. Solução  Podemos acrescentar um nível adicional de segurança, certificando-se o usuário veio a partir da página que contém o formulário.
  • 14. Funcionamento – Politica de mesma origem  A política de mesma origem restringe como um documento ou script carregado a partir de uma origem pode interagir com um recurso de outra origem.
  • 15. Funcionamento – Politica de mesma origem  Mozilla considera duas páginas para ter a mesma origem, se o protocolo, porta (se informado), e o host/domínio são os mesmos para ambas as páginas. Para ilustrar, esta tabela dá exemplos de comparações origem para o URL http://store.company.com/dir/page.html .
  • 17. Referências  https://www.w3.org/Security/wiki/Same_Origin_Policy  http://www.owasp.org/index.php/Cross-Site_Request_Forgery  http://www.cgisecurity.com/articles/csrf-faq.shtml  http://www.darkreading.com/document.asp?doc_id=107651&WT.svl =news1_2 HTTP://RAFAELTAVARES.CO/APRESENTACOES

Notas do Editor

  1. Esta política também se aplica a XMLHttpRequests a menos que o servidor forneça um cabeçalho Access-Control-Allow-Origin (CORS)
  2. Este exemplo, pode ocorrer em qualquer aplicação que não possua tratamento no controle de formulários e/ou outros meios de entrada de dados.
  3. Este exemplo, pode ocorrer em qualquer aplicação que não possua tratamento no controle de formulários e/ou outros meios de entrada de dados.
  4. Este exemplo, pode ocorrer em qualquer aplicação que não possua tratamento no controle de formulários e/ou outros meios de entrada de dados.
  5. Este exemplo, pode ocorrer em qualquer aplicação que não possua tratamento no controle de formulários e/ou outros meios de entrada de dados.
  6.  Netscape Navigator 2 em 1995.