Defeating Cross-Site Request Forgery Attacks with Browser-Enforced Authenticity Protection

  • Authors:
  • Ziqing Mao;Ninghui Li;Ian Molloy

  • Affiliations:
  • Department of Computer Science, Purdue University, West lafayette 47906;Department of Computer Science, Purdue University, West lafayette 47906;Department of Computer Science, Purdue University, West lafayette 47906

  • Venue:
  • Financial Cryptography and Data Security
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

A cross site request forgery (CSRF) attack occurs when a user's web browser is instructed by a malicious webpage to send a request to a vulnerable web site, resulting in the vulnerable web site performing actions not intended by the user. CSRF vulnerabilities are very common, and consequences of such attacks are most serious with financial websites. We recognize that CSRF attacks are an example of the confused deputy problem, in which the browser is viewed by websites as the deputy of the user, but may be tricked into sending requests that violate the user's intention. We propose Browser-Enforced Authenticity Protection (BEAP), a browser-based mechanism to defend against CSRF attacks. BEAP infers whether a request reflects the user's intention and whether an authentication token is sensitive, and strips sensitive authentication tokens from any request that may not reflect the user's intention. The inference is based on the information about the request (e.g., how the request is triggered and crafted) and heuristics derived from analyzing real-world web applications. We have implemented BEAP as a Firefox browser extension, and show that BEAP can effectively defend against the CSRF attacks and does not break the existing web applications.