什么是CSRF
跨站请求伪造(Cross-Site Request Forgery,CSRF)
,也称为XSRF、Sea Surf
或Session Riding
,是一种攻击向量,通过欺骗Web浏览器在用户已登录的应用程序中执行不需要的操作。
成功的CSRF
攻击对企业和用户都可能造成巨大破坏。它可能导致客户关系受损、未经授权的资金转移、密码更改和数据窃取,包括被盗的会话cookie
。
CSRF
通常通过恶意社会工程手段进行,比如通过电子邮件或链接欺骗受害者向服务器发送伪造请求。由于在攻击时用户已经通过其应用程
序进行了身份验证,因此无法区分合法请求和伪造请求。
CSRF案例
在执行攻击之前,攻击者通常会研究一个应用程序,以使伪造的请求看起来尽可能合法。
例如,一个典型的用于转账100美元的GET请求可能如下所示:
GET http://netbank.com/transfer.do?acct=PersonB&amount=$100 HTTP/1.1
黑客可以修改这个脚本,使之导致100美元转账到他们自己的账户。现在,恶意请求可能如下所示:
GET http://netbank.com/transfer.do?acct=AttackerA&amount=$100 HTTP/1.1
不